I’m afraid it’s more complicated than that!!!
In the simple situation where you have not made any contributions it’s fairly simple:
Return = (end value – start value)/start value
To get the annualized return you then take he nth root as jambalaya describes
But you’ve made I assume monthly contributions so for each month the return is
Monthly Return = (end value – start value – monthly contribution)/start value
The total return is then given by
Return = (1+R1)*(1+R2)*….(1+RN)-1
Where R1 is the return in month 1 etc.
This again needs to be annualized
But the problem is that you won’t have monthly values for your pension so as an approximation your annual return for each year is
Annual Return = (end value – start value – monthly contribution*0.5)/start value
In my day job I sell systems that do this sort of thing so hopefully I understand the mates behind it! And to any CFAs I’ve made some simplifications I know, but given the amount of data the OP probably has its the best I can do!