Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 1590

 
законопослушный гражданин:

J'ajuste comme suit :

1.je clique une fois sur le curseur, puis la souris peut être déplacée, l'essentiel est de ne pas cliquer dans d'autres espaces

2.je l'ajuste en appuyant sur les flèches du clavier - plus vite plus lentement

P.S., sur le testeur de stratégie MT4 intégré

Eh, ce serait un conte de fées si vous pouviez cliquer sur un graphique et que l'effet des touches de raccourci ne soit pas réinitialisé. Mais c'est mieux que rien.
 

Une question s'est posée. Est-il judicieux de déclarer des variables statiques dans la portée globale ?

Dans le local, je comprends, pas de visibilité en dehors du corps de la fonction et sauvegarde des valeurs de l'appel précédent.

Et quel serait l'intérêt d'en avoir une globale ?

 
Valeriy Yastremskiy:

Une question s'est posée. Est-il judicieux de déclarer des variables statiques dans la portée globale ?

Dans le local, je comprends, pas de visibilité en dehors du corps de la fonction et sauvegarde des valeurs de l'appel précédent.

Et quel serait l'intérêt d'un système mondial ?

Seulement s'il peut être changé en différentes fonctions

 
MakarFX:

Seulement s'il peut changer dans différentes fonctions

Je ne comprends pas) La variable globale change également dans les différentes fonctions. Dans ce cas, la variable stat.n'est pas différente de la variable globale habituelle. Et la mémoire est située dans le pool global. De la référence :

Variables

Il existe trois classes de mémoire : static, input et extern. Ces modificateurs de classe de mémoire indiquent explicitement au compilateur que les variables correspondantes sont allouées dans une zone de mémoire prédéfinie, appelée pool global.

Il m'arrive de rencontrer des variables statiques déclarées dans la portée globale du code. Je ne comprends pas la logique des auteurs.

 
Valeriy Yastremskiy:

Je ne comprends pas) Global change aussi dans les différentes fonctions. Dans ce cas, ce n'est pas différent d'une variable globale ordinaire. Et la mémoire est située dans le pool global. De la référence :

Variables

Il existe trois classes de mémoire : static, input et extern. Ces modificateurs de classe de mémoire indiquent explicitement au compilateur que les variables correspondantes sont allouées dans une zone de mémoire prédéfinie, appelée pool global.

Il m'arrive de rencontrer des variables statiques déclarées dans laportée globale du code. Je ne comprends pas la logique des auteurs.

Oui, vous avez raison et il n'y a pas de logique. C'est juste la façon dont l'auteur du code le voit.

Mon message précédent n'était pas réfléchi.

 

Valeriy Yastremskiy:

Je ne comprends pas la logique des auteurs.

Il n'y a pas de logique, seulement de la schizophrénie. L'expression "huile de beurre" est une définition si polie de la "schizophrénie".

 
MakarFX:

Oui, vous avez raison et il n'y a aucune logique. C'est juste la façon dont l'auteur du code le voit.

Alexey Viktorov:

Il n'y a pas de logique, seulement de la schizophrénie. L'expression "huilé" est une définition si polie de la "schizophrénie".

Merci, il est parfois difficile de trouver la logique de l'auteur à travers le code)))).

 
MakarFX:
oui

Pourriez-vous me conseiller

Comment retourner le lot de départ -Lot, (pour ouvrir l'ordre suivant), après l'exécution de cette partie de la fonction :

if(GetProfitFromStart()>CountProfit || GetProfitFromStart()<CountLoss*-1)
     {
      if (IsTesting()) 
        {
         CloseOrder(); ObjectSetInteger(0,"lab_Button",OBJPROP_STATE,false);
        }
      else
        {
         CloseOrder();
        }
     }
Dossiers :
 
законопослушный гражданин:

Pourriez-vous me conseiller

comment retourner le lot de départ -Lot, (pour ouvrir l'ordre suivant), après l'exécution de cette partie de la fonction :

après

CloseOrder();
ajouter
Start = TimeCurrent();
 

avec static dans mql tout est en marche et plein d'erreurs. Le code est toujours construit/compilé comme un tout, sans obj intermédiaire et la déclaration de static est juste un hommage à la tradition.

Si l'on utilise du statique dans mql - c'est presque 100% du monde C/C++/C# ; ou alors on a jeté un coup d'œil et on a ridiculement imité :-)

mais il y a aussi __thread__ :-)