You shouldn’t think of the term in months or years. That’s a mistake most investors make. When you buy an On Sale stock, you should hold it and keep buying more as long as the stock remains On Sale. As soon as the stock changes from On Sale to Watch or Overpriced is when you should sell or set a trailing stop loss as long as the price is higher than the price you bought it for.
If the share price is now lower than what you bought it for, I recommend you hold it. I refuse to lose money. I will keep the stock in my portfolio and watch it go back up over time.