A couple of legendary names gives their thoughts on when to buy:
"I become a buyer as soon as a stock makes a new high, after having had a normal reaction" - Jesse Livermore, from How to Trade in Stocks.
"If I were buying, my point would be above the market. I try to identify a point at which I expect the market momentum to be strong in the direction of the trade, so as to reduce my probable risk." - Ed Seykota, from his Market Wizards interview.
The point here is that, at no point, do they try and anticipate a top or a bottom in a market. They wait for the price action to tell them when a potential new trend is likely to start. In the case of Livermore, he used his pivot points as identified by his meticulous written records. In the case of Seykota and other classical trend followers, this would be when price breaks out to new highs as identified by price channels. However you choose to do it, be patient and let price action tell you when to open a position.