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

 
MixanM #:

Eh bien oui, c'est ce que je voulais dire - qu'il ne renvoie des données que pour un ordre "sellstop". J'ai ajouté ceci au vôtre, juste pour le vérifier visuellement :

Tout fonctionne correctement


 

En tant que nouveau venu, pouvez-vous me dire si l'opérateur return renvoie le contrôle à la boucle for ou à la fonction OnTick ?

void OnTick()
{
  for (выражение)
    {
        if (выражение)
         {
            .....
            ....
            return;
         }
    }
}
 
Олег Иванов l'opérateur de retour renvoie le contrôle à la boucle for ou à la fonction OnTick ?

Retour de la fonction OnTick

 
Олег Иванов l'instruction return transfère le contrôle à la boucle for ou à la fonction OnTick ?

L'opérateur continue renvoie le contrôle au début de l'instruction externe while, do-while ou for la plus proche.

 
Tretyakov Rostyslav #:

L'instruction continue transfère le contrôle au début de l'instruction externe while, do-while ou for la plus proche.

Dans mon exemple, le retour de l'opérateur. Je l'ai demandé.

 
JRandomTrader #:

Quitte la fonction OnTick

Comment sortira-t-il de OnTick si cette sous-routine circule constamment dans l'EA ?
 
Олег Иванов #:
Comment va-t-il sortir de OnTick si cette sous-routine circule constamment dans l'EA?

C'est ce qui ressortira de la série actuelle (comme si elle était arrivée à son terme). Au prochain tic, il y aura un nouvel appel.

 
JRandomTrader #:

C'est ce qui ressortira de la série actuelle (comme si elle était arrivée à son terme). Au prochain tic, il y aura un nouvel appel

C'est à dire qu'il retournera au début de OnTick. Merci, j'ai compris.

 
Олег Иванов #:

C'est-à-dire qu'il reviendra au début du OnTick. Merci, j'ai compris.

Il reviendra quand la nouvelle tique arrivera. Vous pouvez l'attendre longtemps dans les non-liquides.

OnTick n'est pas une boucle de type forever, mais plutôt une opération d'interruption.
 

Bon après-midi à tous. Veuillez m'aider à réécrire le code du script. Maintenant le script traduit tous les graphiques ouverts à la période n1. Comment puis-je réécrire le code de sorte que le script applique un modèle avec le nom spécifié à tous les graphiques ouverts ?

//| Script program start function                                    |
//+------------------------------------------------------------------+
/********************Script program start function*******************/
void OnStart()
 {
  long prevChart = ChartFirst();
  while(prevChart >= 0)
   {
    if(ChartPeriod(prevChart) != PERIOD_H1)
      ChartSetSymbolPeriod(prevChart, ChartSymbol(prevChart), PERIOD_H1);
    prevChart = ChartNext(prevChart);
   }
 }/******************************************************************/
/*****************************End program****************************/

//+------------------------------------------------------------------+