How can I have a pending order execute at an exact price without the spread difference?

 

I am having a problem with executing of pending orders in MT4.
I want the order to be executed ONLY if it TOUCHES that exact price.
But because of the spread, the order is executed earlier.
How can I solve that?


Thank you 

 
icman:

I am having a problem with executing of pending orders in MT4.
I want the order to be executed ONLY if it TOUCHES that exact price.
But because of the spread, the order is executed earlier.
How can I solve that?


Thank you

You Sell at the Bid  Buy at the Ask

I assume you are buying,  the chart price is bid   so if you place an order at 1.50  and spread is 0.05 then your order will fill when the chart Bid price is at 1.45

To get it to fill when the bid price is 1.50  add the spread to your order price  so 1.55  your order will fill at 1.55 ask when your chart is 1.50 bid 

 
Paul Anscombe:

You Sell at the Bid  Buy at the Ask

I assume you are buying,  the chart price is bid   so if you place an order at 1.50  and spread is 0.05 then your order will fill when the chart Bid price is at 1.45

To get it to fill when the bid price is 1.50  add the spread to your order price  so 1.55  your order will fill at 1.55 ask when your chart is 1.50 bid 

Got it. Thank  you for the good explanation!

 
icman:

I am having a problem with executing of pending orders in MT4.
I want the order to be executed ONLY if it TOUCHES that exact price.
But because of the spread, the order is executed earlier.
How can I solve that?

The order will always execute at that exact price you specify (±slippage,) not earlier.

You buy at the Ask and sell at the Bid.

  1. Your buy order's TP/SL (or Sell Stop's/Sell Limit's entry) are triggered when the Bid / OrderClosePrice reaches it. Using the Ask±n, makes your SL shorter and your TP longer, by the spread. Don't you want the specified amount used in either direction?

  2. 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 at a specific Bid price, add the average spread.
              MODE_SPREAD (Paul) - MQL4 programming forum - Page 3 #25

  3. 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.)

Humans can't watch the screen 24/7 so they use pending orders; EAs can, so no need for pending orders, have it wait until the market reaches the trigger price and open an order.