Lol you are thinking of EVs. IVs are determined as soon as the pokemon is caught, and each stat has a maximum of 31 possible IVs in each stat.
Every extra IV adds an extra stat onto you're pokemon.
Magikarp [adamant] has good IVs, 31 in atk and 29 in speed i believe.
Considering he is shiny and a very good nature, he can achieve maximum attack possible, if ev trained correctly.
However I have a Gyarados with near-perfect IVs, and don't need it.
I hope you understood this, and if you did I hope it helped!