Le problème se situe dans la variable CAND à la ligne 22 du code de trailing stop que tu as posté. Cette valeur est nulle ou négative à un certain moment et tu l’utilises dans l’instruction HIGHEST. Pour t’assurer que cette valeur soit au moins égale à 1, tu peux la changer comme ceci :
1
CAND=max(1,BarIndex-TradeIndex)
Je n’ai pas vérifier la logique de ce code de trailing stop, c’est la première fois que je vois cette variante.