Cela se passe comme ça sur la première barre, mais la flèche n'apparaît pas en temps réel, seulement après avoir basculé lef. Qu'est-ce qui ne va pas ?
Dans OnInit() - ArraySetAsSeries() pour BufferUP et BufferDN, dans OnCalculate() - ArraySetAsSeries() pour high et low
Quel est le problème avec le code ? Essayer d'attraper la fin du test
void MyHistory()
{
//--- select history for access//HistorySelect(0,TimeCurrent());HistorySelect(0,TimeTradeServer());
//---int orders=HistoryDealsTotal(); // total history dealsint losses=0; // number of losses orders without a breakfor(int i=orders-1;i>=0;i--)
{
ulong ticket=HistoryDealGetTicket(i);
if(ticket==0)
{
Print("HistoryDealGetTicket failed, no trade history");
break;
}
//--- check symbolif(HistoryDealGetString(ticket,DEAL_SYMBOL)==_Symbol)
continue;
//--- check profitstring deal_comment=HistoryDealGetString(ticket,DEAL_COMMENT);
if(deal_comment=="end of test")
{
Print("!!!!!!!!!!!!!!! END TEST !!!!!!!!!!!!!!!!");
break;
}
/*
if(deal_comment!="end of test")
{
return;
}
*/
}
//---return;
}
Merci.
Igor Makanu:...ne devrait mettre la flèche que là où la condition est remplie...
Cependant, il le met sur la deuxième barre.
Vérifiez la direction d'indexation du tampon indicateur.
Vérifiez la direction d'indexation du tampon indicateur.
Que vérifier, ce code doit mettre la flèche sur quelle barre ?
{ //--- int limit=rates_total-prev_calculated; if(limit>1 || prev_calculated==0) { limit=rates_total-2; ArrayInitialize(BufferUP,EMPTY_VALUE); ArrayInitialize(BufferDN,EMPTY_VALUE); } for(int i=limit; i>=0; i--) { if(fabs(high[i+1]-high[i])<=_Point*(double)Pips) BufferDN[i]=high[i]; else BufferDN[i]=EMPTY_VALUE; } //--- return value of prev_calculated for next call return(rates_total); }Que dois-je vérifier, ce code doit mettre la flèche sur quelle barre ?
BufferUP et BufferDN : quelle est l'indexation ?
BufferUP et BufferDN : quelle est l'indexation ?
Je l'ai fait dans l'autre sens.
le met toujours sur la deuxième barre.
Je l'ai fait dans l'autre sens.
Ça le met toujours sur la deuxième barre.
Toutes les matrices doivent être dans la même direction
Toutes les matrices doivent être dans la même direction
Alors la première option est correcte, quel est le problème ?
Alors la première option est correcte, quel est le problème ?
Le problème est que vous ne pouvez pas voir la liste complète de l'indicateur.
Cela se passe comme ça sur la première barre, mais la flèche n'apparaît pas en temps réel, seulement après avoir basculé lef. Qu'est-ce qui ne va pas ?
Dans OnInit() - ArraySetAsSeries() pour BufferUP et BufferDN, dans OnCalculate() - ArraySetAsSeries() pour high et low
si(limite>1)
{
}
Pas besoin de prev_calculated==0
Dans OnInit() ArraySetAsSeries() pour BufferUP et BufferDN, dans OnCalculate() ArraySetAsSeries() pour high et low
Merci.
Quel est le problème avec le code ? Essayer d'attraper la fin du test