Bonjour
je pense que pour votre EA reconnaisse ce que fait le court je vous conseillerais
d'utiliser une base de temps et de calculer la différence a l'ouverture de la bougie ... ou plus simplement avec une simple moyenne mobile ...
Code:
pixcourant=iMA(NULL,0,15,0,MODE_SMA,PRICE_MEDIAN,0);
prixpasser=iMA(NULL,0,15,0,MODE_SMA,PRICE_MEDIAN,1);
quand a votre martingale il me semble indispensable de rechercher dans l'historique des ordres clos afin de déterminer l'incrémentation des lots
avec un code du genre
Code:
void derniertrade()
{
int i=OrdersHistoryTotal()-1;
if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY) )
{
RefreshRates();
if ((OrderProfit()<0) && (etage<maxetage))
{
etage++;
}else {etage=1;}
}
}
Ce n'est qu'un exemple et pas vraiment un code fonctionnel tel quelle mais j'espère que cela vous donne des idées.