Bonjour,
Je débute en mql4, je souhaiterai créer un expert advisor qui lorsque toutes les conditions sont réunies ouvre un trade et le ferme lorsque les conditions de cloture sont réunies
Les conditions pour prendre un trade :
- Bougie ouvre sous EMA7 + EMA26 et clôture au dessus EMA7 + EMA26
- EMA 7 haussière
- EMA26 haussière
- Histogramme macd positif
Si toutes les conditions sont réunis : prendre un trade à l'achat
Sortie de position : Bougie ouvre et cloture sous EMA7
J'ai créé le code suivant j'aimerai votre avis :
int start()
{
{
int result=0;
if((Open[0]<iMA(NULL,0,7,0,MODE_EMA,PRICE_CLOSE,0))
&&(Open[0]<iMA(NULL,0,26,0,MODE_EMA,PRICE_CLOSE,0))
&&(Close[0]>iMA(NULL,0,26,0,MODE_EMA,PRICE_CLOSE,0))
&&((Close[0]>iMA(NULL,0,7,0,MODE_EMA,PRICE_CLOSE,0)) &&(iMA(NULL,0,7,0,MODE_EMA,PRICE_CLOSE,0)>iMA(NULL,0,7,0,MODE_EMA,PRICE_OPEN,0)) &&(iMA(NULL,0,26,0,MODE_EMA,PRICE_CLOSE,0)>iMA(NULL,0,26,0,MODE_EMA,PRICE_OPEN,0))
&&(iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,0)>0))
{
result=OrderSend(Symbol(),OP_BUY,Lots,ask,slippage,0,0);
return(0);
}
{
if(OrderType()==OP_BUY)
{
if((Open[0]<iMA(NULL,0,7,0,MODE_EMA,PRICE_OPEN,0))&&(Close[0]<iMA(NULL,0,7,0,MODE_EMA,PRICE_CLOSE,0)))
OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),slippage,Red);
}
}
{
if((Open[0]>iMA(NULL,0,7,0,MODE_EMA,PRICE_OPEN,0))&&(Close[0]>iMA(NULL,0,7,0,MODE_EMA,PRICE_CLOSE,0)))
{
OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),slippage,Red);
}
}
return(0);
Merci d'avance !!
Je débute en mql4, je souhaiterai créer un expert advisor qui lorsque toutes les conditions sont réunies ouvre un trade et le ferme lorsque les conditions de cloture sont réunies
Les conditions pour prendre un trade :
- Bougie ouvre sous EMA7 + EMA26 et clôture au dessus EMA7 + EMA26
- EMA 7 haussière
- EMA26 haussière
- Histogramme macd positif
Si toutes les conditions sont réunis : prendre un trade à l'achat
Sortie de position : Bougie ouvre et cloture sous EMA7
J'ai créé le code suivant j'aimerai votre avis :
int start()
{
{
int result=0;
if((Open[0]<iMA(NULL,0,7,0,MODE_EMA,PRICE_CLOSE,0))
&&(Open[0]<iMA(NULL,0,26,0,MODE_EMA,PRICE_CLOSE,0))
&&(Close[0]>iMA(NULL,0,26,0,MODE_EMA,PRICE_CLOSE,0))
&&((Close[0]>iMA(NULL,0,7,0,MODE_EMA,PRICE_CLOSE,0)) &&(iMA(NULL,0,7,0,MODE_EMA,PRICE_CLOSE,0)>iMA(NULL,0,7,0,MODE_EMA,PRICE_OPEN,0)) &&(iMA(NULL,0,26,0,MODE_EMA,PRICE_CLOSE,0)>iMA(NULL,0,26,0,MODE_EMA,PRICE_OPEN,0))
&&(iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,0)>0))
{
result=OrderSend(Symbol(),OP_BUY,Lots,ask,slippage,0,0);
return(0);
}
{
if(OrderType()==OP_BUY)
{
if((Open[0]<iMA(NULL,0,7,0,MODE_EMA,PRICE_OPEN,0))&&(Close[0]<iMA(NULL,0,7,0,MODE_EMA,PRICE_CLOSE,0)))
OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),slippage,Red);
}
}
{
if((Open[0]>iMA(NULL,0,7,0,MODE_EMA,PRICE_OPEN,0))&&(Close[0]>iMA(NULL,0,7,0,MODE_EMA,PRICE_CLOSE,0)))
{
OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),slippage,Red);
}
}
return(0);
Merci d'avance !!