[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 743

 
Infinity:

Alors comment je fais, par exemple, si j'attrape un coefficient de 1 point, le RSI a dépassé 50 points sur mon échelle, il s'avère qu'il a dépassé 50 points et qu'en fait c'était un flat. Et la bougie a 2 points. Dans ce cas, comment déterminer

Le prix a augmenté d'un pip. Certains calculs ont été effectués dans le RSI. Sa valeur a été modifiée par X. Le prix a encore augmenté. La valeur de l'indicateur doit changer à nouveau par la même valeur x. Essayez de l'imprimer - il devrait en être ainsi.
 
xrust:

Je comprends qu'un signal de transaction doit se produire lorsque la ligne de l'indicateur croise la ligne de tendance, et non l'inverse, mais vous avez le beurre et l'argent du beurre. Stockez les valeurs précédentes de la position de la ligne de tendance dans les variables statiques et si elles n'ont pas changé - vérifiez le croisement, si la ligne de tendance a changé de position - réinitialisez...

Merci, Rustam. Bonne idée ! On le dit bien : une tête c'est bien, mais le corps c'est mieux... :)
 
artmedia70:
Merci, Rustam. Bonne idée ! C'est vrai ce qu'on dit : une tête c'est bien, mais un corps c'est mieux... :)

Bonjour, pourriez-vous me dire comment visualiser les logs dans MT4 ?
 
LAIT123:

Bonjour, pourriez-vous me dire comment visualiser les données TFG TFG dans MT4 ?

Je suppose que j'en ai vraiment besoin... :) Ou ma souris est coincée...

Dossier d'emplacement MT4/logs

Dossier d'emplacement des MT4\tester\logs

Je l'ai juste ici :

D:\Program Files\MetaTrader - E-Global TFG account-1654729/logs

D:\Program Files/MetaTrader - Compte E-Global TFG-1654729\tester/logs

 

dites-moi pourquoi les données ne sont pas remises à zéro lorsque l'ordre est déclenché ? ai-je écrit correctement la condition if(tic1>0) pour vérifier si l'ordre est ouvert et si je dois remettre les variables à zéro?

int NewOrder1(int Cmd,double Lot)
{double TP=0; //тейкпрофит
double SL=0; //стоплосс
double PR=0; //Цена
double LT=0; //Лот
while(!IsTradeAllowed()) Sleep(100);
if(Cmd==OP_BUYLIMIT)
   {PR=Ask-Point*h;
    if(TakeProfit>0) TP=PR+TakeProfit*Point;
    if(StopLoss>0) SL=PR-StopLoss*Point;
    if(Lot>0) LT=3*Lot;}
int tic1=OrderSend(Symbol(),Cmd,LT,PR,3,SL,TP,0,mag,0,CLR_NONE);
//-----------
if(tic1<0) Print(GetLastError());

if(tic1>0){
   bool b=0,s=0, //соответственно бай или селл  
bs=0,// если закрытие по стоплоссу ордера бай
ss=0,// если закрытие по стоплоссу ордера sell
bt=0,
st=0;//      то же по ТП
double bl=0,sl=0; // лоты соответсвенно для бай и селл
}
//-----------
return(tic1);}
 
FoxUA:

dites-moi pourquoi les données ne sont pas remises à zéro lorsque l'ordre est déclenché ? ai-je écrit correctement la condition if(tic1>0) pour vérifier si l'ordre est ouvert et si je dois remettre les variables à zéro ?

Si ma mémoire est bonne, ces variables ont déjà été déclarées au niveau global...

Et vous les re-déclarez à l'intérieur de la fonction.

bool b=0,s=0, //соответственно бай или селл  
bs=0,// если закрытие по стоплоссу ордера бай
ss=0,// если закрытие по стоплоссу ордера sell
bt=0,
st=0;//      то же по ТП
double bl=0,sl=0; // лоты соответсвенно для бай и селл
Ils ne seront visibles qu'à l'intérieur de la fonction. Lorsque vous quittez la fonction, leurs valeurs seront perdues et celles déclarées globalement resteront inchangées,
c'est-à-dire que vous avez déclaré de nouvelles variables à l'intérieur de la fonction, mais celles que vous voulez modifier restent à l'extérieur de celle-ci.
Retirez bool et double de votre code ci-dessus.
 
artmedia70:
Si ma mémoire est bonne, ces variables ont déjà été déclarées globalement...

Et vous les redéclarez à l'intérieur de la fonction.

Ils ne seront visibles qu'à l'intérieur de la fonction. Lorsque vous quittez la fonction, leurs valeurs seront perdues et celles déclarées globalement resteront inchangées,
c'est-à-dire que vous avez déclaré de nouvelles variables à l'intérieur de la fonction, mais celles que vous voulez modifier restent à l'extérieur de celle-ci.
Enlevez bool et double du morceau de votre code ci-dessus.

Je les ai enlevés et j'obtiens beaucoup d'erreurs quand je compile

à ces variables.

',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (143, 4)
'=' - affectation attendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (143, 2)
',' - point-virgule attendu C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (143, 4)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (143, 4)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (143, 8)
'=' - affectation attendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (143, 6)
',' - point-virgule attendu C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (143, 8)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (143, 8)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (144, 5)
'=' - affectation attendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (144, 3)
',' - point-virgule attendu C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (144, 5)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (144, 5)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (145, 5)
'=' - affectation attendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (145, 3)
',' - point-virgule attendu C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (145, 5)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (145, 5)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (146, 5)
'=' - affectation attendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (146, 3)
',' - point-virgule attendu C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (146, 5)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (146, 5)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (148, 5)
'=' - affectation attendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (148, 3)
',' - point-virgule attendu C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (148, 5)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (148, 5)

 
FoxUA:

enlevé et quand il est compilé il donne un tas d'erreurs

à ces variables

',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (143, 4)
'=' - affectation attendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (143, 2)
',' - point-virgule attendu C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (143, 4)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (143, 4)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (143, 8)
'=' - affectation attendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (143, 6)
',' - point-virgule attendu C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (143, 8)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (143, 8)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (144, 5)
'=' - affectation attendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (144, 3)
',' - point-virgule attendu C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (144, 5)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (144, 5)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (145, 5)
'=' - affectation attendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (145, 3)
',' - point-virgule attendu C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (145, 5)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (145, 5)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (146, 5)
'=' - affectation attendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (146, 3)
',' - point-virgule attendu C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (146, 5)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (146, 5)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (148, 5)
'=' - affectation attendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (148, 3)
',' - point-virgule attendu C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (148, 5)
',' - symbolique inattendue C:\Program Files\Deltabank Trader 4\experts\test5.mq4 (148, 5)

Les avez-vous déclarés globalement en dehors de votre fonction ? Oui et mettez des virgules à la place ; Vous n'avez sûrement pas changé les virgules en points-virgules...
 

Citoyens !

Pouvez-vous me dire comment accéder aux données en dehors de la fenêtre du graphique dans l'Expert Advisor ?

Le problème est que, par exemple, si le nombre maximum de barres dans la fenêtre est fixé à 300, alors :

La fonction iBarShift("EURUSD",60,TimeBar,false) s'obstine à ne pas vouloir donner des valeurs supérieures à 300 pour toute valeur de "TimeBar".

2. iOpen("EURUSD",60,i) donne des zéros si i>300.

etc.

Existe-t-il un moyen de surmonter ce problème ?

 

Veuillez me donner le code de la fonction qui mettra un stop une fois au niveau du breakeven, lorsque le profit sera par exemple de 20 pips.

Merci d'avance pour la réponse :)