Je semble avoir "nettoyé" le code, mais sur cette ligne for(int j=iBarShift(OrderSymbol(),OrderOpenTime(),PERIOD_M1) ; j>=0;j--) l'avertissement apparaît :
Je semble avoir nettoyé le code, mais sur cette ligne for(int j=iBarShift(OrderSymbol(),OrderOpenTime(),PERIOD_M1) ; j>=0;j--) l'avertissement apparaît :
Je n'arrive pas à comprendre ce qui ne va pas... Puis-je attacher cette "chose" à mon conseiller expert et l'exécuter à travers le testeur de stratégie avec la sortie des informations dans le rapport de test ?
Celui-ci part de l'indice zéro, c'est-à-dire du début.
Celui-ci cherche à partir de l'index zéro, c'est-à-dire depuis le début.
Celui-ci part de l'indice zéro, c'est-à-dire du début.
Ahh... Maintenant, tout s'explique, merci.
for(int i=OrdersTotal()-1;i>=0;i--) {
if (! OrderSelect(i,SELECT_BY_POSITON,MODE_TRADES)) continue;
double prosad=DBL_MIN;
if (OrderType()!=OP_BUY && OrderType!=OP_SELL) continue;
for(int j=iBarShift(OrderSymbol(),OrderOpenTime(),PERIOD_M1); j>=0;j--) {
double delta=( OrderType()==OP_BUY? OrderOpenPrice()-iLow(OrderSymbol(),PERIOD_M1,j) : iHigh(OrderSymbol(),PERIOD_M1,j)-OrderOpenPrice() );
delta /= MarketInfo(OrderSymbol(),MODE_POINT);
if (delta>prosad) prosad=delta;
}
PrintFormat("Максимальная просадка по ордеру %d = %d пунктов , %f денег",OrderTicket(),(int)(prosad),prosad*OrderLots()*MarketInfo(OrderSymbol(),MODE_TICKVALUE);
}
écrit "à la main", non testé, plein d'erreurs :-) adaptez-le à vos besoins et utilisez-le
dites-moi ce que signifie - " !" dans votre code ?
je ne le comprends pas encore très bien
ou peut-être que quelqu'un d'autre que l'auteur peut me l'expliquer ?
dites-moi, s'il vous plaît, ce que signifie -" !" dans votre code ?
Je ne le comprends pas encore vraiment.
ou quelqu'un d'autre que l'auteur peut-il me l'expliquer ?
! - c'est une négation booléenne, PAS
if { !OrderSelect() } se traduit par "si OrderSelect ne réussit pas".
!= respectivement "PAS égal"
! - est une négation booléenne, NOT
if { !OrderSelect() } se traduit par "si PAS de succès OrderSelect".
!
merci
for(int i=OrdersTotal()-1;i>=0;i--) {
if (!OrderSelect(i,SELECT_BY_POSITON,MODE_TRADES)) continue;
double prosad=DBL_MIN;
if (OrderType()!=OP_BUY && OrderType!=OP_SELL) continue;
for(int j=iBarShift(OrderSymbol(),OrderOpenTime(),PERIOD_M1); j>=0;j--) {
double delta=( OrderType()==OP_BUY? OrderOpenPrice()-iLow(OrderSymbol(),PERIOD_M1,j) : iHigh(OrderSymbol(),PERIOD_M1,j)-OrderOpenPrice() );
delta /= MarketInfo(OrderSymbol(),MODE_POINT);
if (delta>prosad) prosad=delta;
}
PrintFormat("Максимальная просадка по ордеру %d = %d пунктов , %f денег",OrderTicket(),(int)(prosad),prosad*OrderLots()*MarketInfo(OrderSymbol(),MODE_TICKVALUE);
}
écrit "à la main", non vérifié, comporte beaucoup d'erreurs :-) adaptez-le à vos besoins et utilisez-le
J'ai peut-être "nettoyé" le code, mais cette ligne présente un avertissement for(int j=iBarShift(OrderSymbol(),OrderOpenTime(),PERIOD_M1) ; j>=0;j--)
perte éventuelle de données due à la conversion de type
Vous ne trouvez pas ce qui ne va pas ?
Je semble avoir "nettoyé" le code, mais sur cette ligne for(int j=iBarShift(OrderSymbol(),OrderOpenTime(),PERIOD_M1) ; j>=0;j--) l'avertissement apparaît :
perte éventuelle de données due à la conversion de type
Je n'arrive pas à comprendre ce qui ne va pas ?
J'ai mélangé les paramètres... c'est un problème courant lorsqu'il est écrit "à la volée" directement dans le forum sans passer par le terminal.
iBarShift(OrderSymbol(),PERIOD_M1,OrderOpenTime()) doit être
Paramètres mélangés... confusion courante lors de l'écriture "à la volée" directement dans le forum en contournant le terminal.
iBarShift(OrderSymbol(),PERIOD_M1,OrderOpenTime()) doit être
merci
Je semble avoir nettoyé le code, mais sur cette ligne for(int j=iBarShift(OrderSymbol(),OrderOpenTime(),PERIOD_M1) ; j>=0;j--) l'avertissement apparaît :
perte éventuelle de données due à la conversion de type
Je n'arrive pas à comprendre ce qui ne va pas ?
Je n'arrive pas à comprendre ce qui ne va pas... Puis-je attacher cette "chose" à mon conseiller expert et l'exécuter à travers le testeur de stratégie avec la sortie des informations dans le rapport de test ?
Est-ce que ça va marcher ?
Des conseils sur la façon de gérer cela ?
Dans le testeur sur l'historique, une simple ouverture de commande provoque parfois une erreur...
ERR_INVALID_TRADE_PARAMETERS - qu'est-ce que c'est et qu'est-ce que cela signifie ?