Anyway, I did some math myself
And I have to agree with Iwanow, that Gallope in 99% cases is better
Will not write all the math, just say that +2Fire will add maximum +3,6 to average damage
while +1Shock will add minimum +9,6 to average damage
(considering 27 level: Fire modif = 0.3, Shock modif = 4; disc=100% and infantry opponents of 20-30 levels)
Which is why Latin Caracolle while it is good at level 22, it is crap at level 27. And also good thing to remember - defensive fire is more usefull to cavalry than offensive fire.