My height, as predicted by my genetics, is 156 cm whereas my actual height is 172 cm. What could be the reasons for this substantial discrepancy? Does it just mean I had very good nutrition as a child?
Sources of phenotypic variance
There is phenotypic variance in height in the human population. This phenotypic variance is in part explained by genetic variation, but there are also non-genetic variations, incl environmental variation (what you eat, your physical activity among many other things). See this post for more information.
On top of that, those measures of "genetic height" are based upon a limited number of SNPs and a limited number of individuals sampled. There is therefore a bit of room for a little bit of sampling error here. Note sampling error is not a mistake. It is just the fact that parameters estimated from a sample don't necessarily match perfectly the population parameters.
Training data set
Finally, the estimate is based upon correlation made from previous people. There might have a generational gap in height, typically present in countries that have recently largely changed their diets, such as many Asian countries.
For all of the above reasons, there might have a gap between your actual height and what has been predicted by some genetic testing. In short, yes your nutrition might part of the reason for this gap.