- Coding help
- help with this close all open order once order is modified
- Help with trailing stop !!
Hi and good morning,
the line with the print statement will be executed every time, because it depends not on the result of the if statement. You should
modify it like this:
double price = OrderOpenPrice(); if (!OrderModify(TicketNumber,price,price-(StopLoss*pips),price+(TakeProfit*pips),0,clrGreen))//if order isnt modify run error message { err=GetLastError(); Print("Could not modify the order due to ", err," ",ErrorDescription(err)); }
I hope, this helps you.
Best regards
double price = OrderOpenPrice();
You buy at the Ask and sell at the Bid. Pending Buy Stop orders become market orders when hit and open at the Ask.
-
Your buy order's TP/SL (or Sell Stop's/Sell Limit's entry) are triggered when the Bid / OrderClosePrice reaches it. Using Ask±n, makes your SL shorter and your TP longer, by the spread. Don't you want the specified amount used in either direction?
-
Your sell order's TP/SL (or Buy Stop's/Buy Limit's entry) will be triggered when the Ask / OrderClosePrice reaches it. To trigger close to a specific Bid price, add the average spread.
MODE_SPREAD (Paul) - MQL4 programming forum - Page 3 #25 -
The charts show Bid prices only. Turn on the Ask line to see how big the spread is (Tools → Options (control+O) → charts → Show ask line.)
Most brokers with variable spreads widen considerably at end of day (5 PM ET) ± 30 minutes. My GBPJPY shows average spread = 26 points, but average maximum spread = 134 (your broker will be similar).
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use