Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Je ne comprends pas pourquoi, mais si dans le code de dessin des lignes verticales :
line_counter++ ;
TimeToStruct(time[i],str) ;
StringConcatenate(line_name,IntegerToString(str.hour,2,'0')," :",IntegerToString(str.min,2,'0'),"_N",line_counter) ;
SetVLine(line_name,time[i],line_colour) ;
remplace la dernière ligne par la suivante :
SetVLine(IntegerToString(str.hour,2,'0')+" : "+IntegerToString(str.min,2,'0')+"_N "+IntegerToString(line_counter),time[i],line_color);
tout fonctionne alors comme il se doit.
Lors de l'impression par Print de la variable line_name après la ligne avec StringConcatenate - le nom des lignes est écrit correctement sur le terminal.
Pour une raison quelconque, lorsque l'on substitue cette variable obtenue dans StringConcatenate dans la fonction SetVLine, les lignes ne sont pas tracées, seul le calcul direct du nom de la ligne dans le code de l'appel de la fonction de dessin fonctionne.
Et cela apparaît exactement après le build 3021.
P.S. J'ai démarré la dinde, mais des "cafards" vivent dans le terminal.
Merci aux développeurs d'avoir corrigé un bogue dans la fonction StringConcatenate dans la version 3090.
https://www.mql5.com/ru/forum/380121
L'indicateur fonctionne maintenant correctement dans le code original.