OP_BUY the same on Instant Execution and Market Execution?

 

Last week I got an email from one of the brokers I use, stating that they would switch from Instant Execution to Market Execution on the 29th of June. It also mentioned that you can’t set SL and TP directly when using a market order. You have to wait for the order to be opened and then modify the SL and TP.

 

I had heard about this before but never experienced it. So I wanted to try some stuff out before changing my EA. I send an order for EUR/USD to my broker using the OP_BUY type with the SL and TP set to certain values. I was expecting the order to be rejected with some error messages about incorrect stops. To my surprise the order was accepted and it showed the SL and TP I had asked for.

 

I sent an email to my broker asking if the change really had gone through because I could still immediately set the SL and TP on the ordersend.  They replied that the change had been implemented and that everything was working as intended and expected. No word about the fact that I could still set the SL and TP on the ordersend.

 

Am I missing something? Do Instant Execution and Market Execution have different order types?

 

By the way, one other small question. You can also set the maximum slippage you find acceptable on the ordersend. Is that still used when using Market Execution, or is it ignored?

 

 
Just noticed something strange. If I try to enter an order manually than indeed I can't set the SL and TP. But I can set them from my EA. Is my broker simply lying about using Market Execution?
 

With Market execution :

For a manual order you can't set the SL/TP at the same time as the order. You have to place SL/TP after the order will be placed.

Historically you can't place SL/TP with EA neither, but more than 1 year ago (build 500 I think but not sure), mql4 was modified and allow you to place SL/TP at the same time as the order.

Slippage is ignored with market execution.

 

This is interesting.

Do you maybe know what will happen if market price moves so that SL or TP are not valid any more? 

Would it open order without SL and TP or would it return error like "requote"? 

 
drazen64:

This is interesting.

Do you maybe know what will happen if market price moves so that SL or TP are not valid any more? 

Would it open order without SL and TP or would it return error like "requote"? 

Don't know sorry. Difficult to test as it can only happen on a real account.
 
drazen64:

This is interesting.

Do you maybe know what will happen if market price moves so that SL or TP are not valid any more? 

Would it open order without SL and TP or would it return error like "requote"? 


IMHO you will get error 130 but as angevoyageur have written "Difficult to test..."

 

G*DD*MN... I had been searching for an answer on Google but the only information that came up was outdated apparently. Angevoyageur, after your answer I found this thread: https://www.mql5.com/en/forum/146808

It is bloody annoying that there is no clear documentation one a vital change like that. >:-|


But thank you very much angevoyageur, you saved me a lot of time that would have been spend on redesigning my order functions! :-)

Reason: