I use 3-5 year averages to develop my projections but I don't have a magic mathematical formula that pops out golden eggs.
What I do is a create a profile of each hitter based on three year averages. What I mean by a profile is a matchup of the stats with the player's age and experience while producing those stats.
Using the Lahman database I then (this is automated) compare that profile against every player who has ever played looking for matching profiles. A matching profile doesn't neccesarily have the same stats but it does have the same trends, meaning that the two players compared matured in a similar way.
All the matches are then compared to find the average trend for each player that matches the profile. I then apply that trend to the players stats from last year. I can't take credit for this system I copied it from another source but you will find (at least I have) that this system is much more accurate than projection formulas.
Does that make sense? If not I will try to explain it better LOL.