You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
I have got an EA that opens order at signals . It is working with Moving Averages , and opens 2 orders at the same time . The first EA opens the first order and the second EA opens the second order BUY_STOP or SELL_STOP with the previous order .
When opening the second order , the Modify Order EA does not modify the order .
Here is the EA :
if(OS0102L[g] == OS0102L[g] )
{
if (OS0102L[g] == "GBPUSDi" || OS0102L[g] == "EURUSDi" || OS0102L[g] == "EURJPYi" || OS0102L[g] == "AUDUSDi"|| OS0102L[g] == "EURCHFi" || OS0102L[g] == "USDJPYi" || OS0102L[g] == "EURGBPi" || OS0102L[g] == "NZDUSDi" || OS0102L[g] == "USDCADi"
|| OS0102L[g] == "USDCHFi")
{
b12[g] = 400 ;
b12b[g] = 400 ;
b16[g] = 800 ;
b16b[g] = 1200 ;
}
if (OS0102L[g] == "GBPJPYi" || OS0102L[g] == "GBPCHFi" )
{
b12[g] = 600 ;
b12b[g] = 600 ;
b16[g] = 1200 ;
b16b[g] = 1800 ;
}
if (OS0102L[g] == "AUDCADi" || OS0102L[g] == "AUDCHFi" || OS0102L[g] == "NZDCADi" || OS0102L[g] == "NZDCHFi"|| OS0102L[g] == "CHFJPYi" || OS0102L[g] =="CADCHFi" || OS0102L[g] == "AUDNZDi" || OS0102L[g] == "NZDJPYi" || OS0102L[g] == "AUDJPYi"
|| OS0102L[g] == "CADJPYi" || OS0102L[g] == "CHFJPYi")
{
b12[g] = 450 ;
b12b[g] = 450 ;
b16[g] = 900 ;
b16b[g] = 1350 ;
}
if (OS0102L[g] == "GBPCADi" || OS0102L[g] == "GBPAUDi" || OS0102L[g] == "GBPNZDi" || OS0102L[g] == "EURCADi"|| OS0102L[g] == "EURAUDi" || OS0102L[g] == "EURNZDi" )
{
b12[g] = 800 ;
b12b[g] = 800 ;
b16[g] = 1600 ;
b16b[g] = 2400 ;
}
if (OTYPE0102L[g] == 1 )
if( OrderM0102L[g] == 40000 || OrderC0102L[g] == 40000 || OrderM0102L[g] == 41000 || OrderC0102L[g] == 41000 || OrderM0102L[g] == 45000 || OrderC0102L[g] == 45000 || OrderM0102L[g] == 46000 || OrderC0102L[g] == 46000
|| OrderM0102L[g] == 40010 || OrderC0102L[g] == 40010 || OrderM0102L[g] == 41010 || OrderC0102L[g] == 41010 || OrderM0102L[g] == 45010 || OrderC0102L[g] == 45010 || OrderM0102L[g] == 46010 || OrderC0102L[g] == 46010
|| OrderM0102L[g] == 42000 || OrderC0102L[g] == 42000
|| OrderM0102L[g] == 25100 || OrderC0102L[g] == 45100 || OrderM0102L[g] == 46100 || OrderC0102L[g] == 46100
|| OrderM0102L[g] == 45200 || OrderC0102L[g] == 45200 || OrderM0102L[g] == 46200 || OrderC0102L[g] == 46200
|| OrderM0102L[g] == 45110 || OrderC0102L[g] == 45110 || OrderM0102L[g] == 46110 || OrderC0102L[g] == 46110 )
{
if(MathAbs(OOP0102L[g] - OSL0102L[g]) < b12[g] + MarketInfo( OS0102L[g] ,MODE_SPREAD) * MarketInfo( OS0102L[g] ,MODE_POINT) + 10 * MarketInfo( OS0102L[g] ,MODE_POINT))
{
if(MarketInfo(OS0102L[g],MODE_BID) > iMA(OS0102L[g],PERIOD_M15,20,0,MODE_SMA,PRICE_CLOSE,0) )
OrderModify(OrderT0102L[g], OOP0102L[g], NormalizeDouble(MMHighR[g]+ b12b[g]* MarketInfo( OS0102L[g] ,MODE_POINT) + MarketInfo( OS0102L[g] ,MODE_SPREAD) * MarketInfo( OS0102L[g] ,MODE_POINT),5),OTP010L[g] ,0,clrNONE);
else OrderModify(OrderT0102L[g],OOP0102L[g] ,NormalizeDouble(iMA(OS0102L[g],PERIOD_M15,20,0,MODE_SMA,PRICE_CLOSE,0)+ b12b[g]* MarketInfo( OS0102L[g] ,MODE_POINT)+ MarketInfo( OS0102L[g] ,MODE_SPREAD) * MarketInfo( OS0102L[g] ,MODE_POINT),5) , OTP010L[g] ,0,clrNONE);
}
else {
OrderModify(OrderT0102L[g], OOP0102L[g], NormalizeDouble(OOP0102L[g]+ b12[g]* MarketInfo( OS0102L[g] ,MODE_POINT) + MarketInfo( OS0102L[g] ,MODE_SPREAD) * MarketInfo( OS0102L[g] ,MODE_POINT),5),OTP010L[g] ,0,clrNONE);
}
}
}
}
}
How to get the order modified for the Buy Stop orders after opening ?