What value do you get for MarketInfo(Symbol(), MODE_STOPLEVEL)
![MQL5 - Language of trade strategies built-in the MetaTrader 5 client terminal](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Hello,
I am new to the world of expert advisors. For last 2 days, I am working on an EA, and something doesn't seem to be right.
I open a BUYSTOP or SELLSTOP order using following code.
SetOrder(OP_BUYSTOP,EntryPrice,0,0); // Entry price is 10 pips above close of last BUY order
SetOrder(OP_SELLSTOP,EntryPrice,0,0); // Entry price is 10 pips below close of last SELL order.
void SetOrder(int op, double pp, double ldStop, double ldTake)
{
string lsComm = "Krrish.mq4";
if (op == OP_BUYSTOP)
ldStop = pp - 100* Point;
if (op == OP_SELLSTOP)
ldStop = pp + 100 * Point;
OrderSend(Symbol(),op,Lots,pp,Slippage,ldStop,ldTake,lsComm,MAGIC,0,Blue);
int err = GetLastError();
if(err != ERR_NO_ERROR)
Print("Error in Sending Order: ",ErrorDescription(err));
}
Now, as the price moves down, I want to modify BUYSTOP order. As the price moves up, I want to modify my SELLSTOP order.
//check open order type.
case OP_BUYSTOP:
Print("Modifying OP_BUYSTOP order", OrderTicket());
if (Bid < OrderOpenPrice() - 10 * Point) // if BID is moving down, revise BUYSTOP order. New Entry price should be 10 pips above BID.
{
EntryPrice = Bid + 10 * Point;
OrderModify(OrderTicket(),EntryPrice,OrderStopLoss(),OrderTakeProfit(),0,Yellow);
}
break;
case OP_SELLSTOP:
Print("Modifying OP_SELLSTOP order", OrderTicket());
if (Ask > OrderOpenPrice() + 10 * Point) // if ASK is moving up, revise SELLSTOP order. New Entry Price should be 10 pips below ASK.
{
EntryPrice = Ask - 10 * Point;
OrderModify(OrderTicket(),EntryPrice,OrderStopLoss(),OrderTakeProfit(),0,Yellow);
}
break;
Both these Modify orders give 130 error code. (invalid stops). When I modify orders, I don't want to specify any stoploss or takeprofit.
Your help is deeply appreciated.
Thanks,
Jay.
jay.p.narayan@gmail.com