It looks like the biggest uncertainties will be resolved this Friday, July 21st. With far above 80% support for SegWit2x, August 1st should not matter anymore (as BIP 148 will not trigger).
That would mean between now and Thursday should be the best time to buy.
On the other hand, August 1st is passed around everywhere as the "day of doom." Many uninformed people out there. So maybe wait till July 31st to buy? And will there be any risks left after Segwit is activated later this week?
The key question is: How much FUD will be left in the market after Friday...?
The price is already recovering, hitting the $2800 limit. You should have bought when the FUD really affected bitcoin holders and panic sold even with a loss. But there might be another round of price dipping a few days or a day before August 1. That would be another buying time.