[Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas votre chemin. Je ne peux aller nulle part sans toi. - page 748

 
Roger:
Essayez de redémarrer votre terminal.

:) Merci ! Redémarrer le terminal n'a pas aidé, mais redémarrer mon propre cerveau, oui ! J'utilise différents blocs dans mon EA - le bloc de trading, le bloc de critères, le bloc de variables, le bloc de fonctions supplémentaires, etc. qui sont reliés par un... Je changeais donc le bloc de critères de négociation "Critères", et j'avais besoin de "Critères01". C'est le truc... :)

ZZZ... Je commençais à croire au "drubashki"... :) J'aurais dû dormir un peu...

 
itum:
S'IL VOUS PLAÎT, AIDEZ-MOI ! !! Dans le code suivant, je vérifie si l'ordre a été rentable ou non ! Si non je compte le montant ! !!
Si la première transaction n'a pas été rentable, la boucle de comptage est lancée et se poursuit indéfiniment.

Mais il y a un hic ! !! Si une transaction est rentable, alors tous les ordres perdants ultérieurs sont comptés normalement .....

double orderProf ; // Compteur du nombre de trades perdants

double CalculateLots(){
double Res=0.01 ;
bool bProfit=true ;
int PrevTime=-1 ;
double tmpLots ;
for (int i=0;i<OrdersHistoryTotal();i++){
if (!OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) continue ;
si (OrderSymbol()!=Symbol()) continuer ;
si (OrderCloseTime()<PrevTime) continuer ;
PrevTime=OrderCloseTime() ;
si (OrderProfit()>0){bProfit=true ; orderProf=0;} si (OrderProfit()<0){bProfit=false ; orderProf++;}
tmpLots=OrderLots() ;
}


retour(Res) ;
}
Je vous ai donné un lien vers Igor Kim... Vous y trouverez beaucoup de choses pour vos besoins...
 
artmedia70:
Je vous ai donné un lien vers Igor Kim... Il y a beaucoup de choses dont vous avez besoin pour vos besoins...

DAK ! C'est le même que le mien ....

Le PROBLÈME est que la première fois, il ne compte pas normalement, mais après cela, il compte normalement..... )))

aide ...

 

L'énigme est la suivante.

L'indicateur à la toute fin du code crée un objet, qui sert d'indicateur pour un autre indicateur.

Après avoir créé l'objet, j'ai besoin de mettre l'indicateur en veille pendant 5 secondes, puis de supprimer l'objet et de le mettre en veille pendant 60 secondes, après quoi il va à la dernière tentative et recommence avec un nouveau tick.

J'essaie de faire ça

      int pauseT=0, // 
          pause01=0, // время первой паузы
          pause02=0; // время второй паузы
         if (ObjectFind("signalG")==1) // проверка наличия
         pause01=TimeLocal()+5; // 
         {while (TimeLocal()<pause01) // цикл сравнения
         {pauseT=TimeLocal()+1;} // чем бы его занять?????
         ObjectDelete("signalG");}
         if (ObjectFind("signalG")==-1) // повтор всего для 2-ой паузы
         pause02=TimeLocal()+15;
         while (TimeLocal()<pause02)
         {pauseT=TimeLocal()+1;}

Il se suspend jusqu'à ce qu'il semble manquer de temps.

Des conseils sur la manière de procéder ?

 
Abzasc:

L'énigme est la suivante.

L'indicateur à la toute fin du code crée un objet, qui sert d'indicateur pour un autre indicateur.

Après avoir créé l'objet, j'ai besoin de mettre l'indicateur en veille pendant 5 secondes, puis de supprimer l'objet et de le mettre en veille pendant 60 secondes, après quoi il ira à la dernière tentative et recommencera depuis le début avec un nouveau tick.

J'essaie de faire ça

Il se suspend jusqu'à ce qu'il semble manquer de temps.

Des conseils sur la manière de procéder ?

Sledgehammer... :) :) Désolé, je n'ai pas pu résister... :)
 
artmedia70:
Sledgehammer... :) :)
Comme une minuterie ? Il va tomber dans un sommeil léthargique :)
 
Abzasc:
Comme une minuterie ? Il s'endormira d'un sommeil léthargique :)
Eh bien... quand il aura besoin d'être chatouillé, il se réveillera... :)
Ok, c'est hors sujet. J'aimerais pouvoir être plus précis. Un pour le réveiller, un pour le coucher, un pour le clouer...
Et l'alimentation ? :)
 
artmedia70:
plus de détails sur
Faites une pause dans l'indicateur. Une sorte de sommeil.
 
Abzasc:
Faites une pause dans l'indicateur. Un peu comme le sommeil.

Quel est le problème avec le sommeil?

Et aussi - lors du contrôle de la présence d'un objet

         if (ObjectFind("signalG")==1) // проверка наличия
que vous comparez avec le numéro de la sous-fenêtre de l'indicateur. Et s'il y en a deux ?
Il est préférable de comparer avec une variable qui est affectée au numéro de la sous-fenêtre de l'indicateur souhaité.

C'est comme ça que je cherche :

 int WinID=WindowFind("A/D");               // Номер окна AD

Et puis je vérifie déjà la présence de la sous-fenêtre :

// --------------- Начертим восходящую трендовую линию (DN - экстремумы) ---------------------            
             
               if (WinID>0)   // Если окно индикатора есть на чарте (оно может иметь любой номер, кроме 0)
                  {
                     if (ObjectFind("Trend_GLine_DN")<0)     // Если объект ещё не построен
                     ObjectCreate("Trend_GLine_DN",OBJ_TREND,WinID,LowestTDN,LowestPeakDN,HighestTDN,HighestPeakDN);
                     ObjectSet("Trend_GLine_DN",OBJPROP_COLOR,Lime);
                     ObjectSet("Trend_GLine_DN",OBJPROP_TIME1,LowestTDN);
                     ObjectSet("Trend_GLine_DN",OBJPROP_PRICE1,LowestPeakDN);
                     ObjectSet("Trend_GLine_DN",OBJPROP_TIME2,HighestTDN);
                     ObjectSet("Trend_GLine_DN",OBJPROP_PRICE2,HighestPeakDN);
                  }
 
artmedia70:

Qu'est-ce que vous n'aimez pas dans le sommeil ?

Ça ne fonctionne pas dans les indicateurs. La raison pour laquelle on procède de cette façon - je ne la comprends pas. Apparemment, un indicateur qui fonctionne en permanence est censé hypnotiser :)
artmedia70:

Et si j'en ai deux ?

Ça n'arrivera pas. Je me débarrasse juste des fenêtres inutiles.

J'aurai besoin d'un contrôle plus tard, mais j'espère que c'est pour l'EA :) merci, j'en prendrai note.

Raison: