It's still recommended to buy not yet late but the biggest opportunity was last year when Bitcoin was trading at $6000 to $7000 level, but like what I said it's not yet late as long as you are buying before halving you are in a good profit after the halving, that is if you can hodl your portfolio and sell it at the right time.
It's never too late to buy Bitcoins, even after the halving. I do not expect the price to skyrocket after the halving, but Bitcoin is unpredictable and all we can do is speculate. But I do not sell the idea that by simply buying before the halving you're going to profit.
You pointed out selling at the right time and that I believe is the best quality of a trader or hodler. Timing is the all important factor in trading; long or short term.