It's true that the major run occurs after the halving but you can't go wrong buying a year in advance. The 2016 halving happened July 9, 2016. The price was $660. A year prior, July 9, 2015 it was $420.
2020 a tad different since there were more ups and downs but jumping in any time a year before the halving to halving can add to profits.
I wasn't around prior to the 2012 halving but jumped in early 2013.