Spread making strong jumps every second - how to get the low spread?

 

spread of my broker is sometimes jumping every second between 7 and 25 or similar, and when i place an order i mostly end up with a high spread. 

is there a way to order with maximum spread or to make sure order only triggers with low spread?

 

yes you can use a filter if spread < lower then order.

but it requires usage of an ea with gui.
 
Marco vd Heijden:

yes you can use a filter if spread < lower then order.

ok thanks! but problem is that spread jumps every second between 8 and 25, so i guess it wouldn't be so efficient.

i guess best option is to make a buy limit order? well no doesnt effect spreads..

 

No you set the max spread then when you click buy or sell on the EA's gui it will start to monitor spread and order when it drops under the pre defined setting.

It's also a good idea to add a time span say a minute then it will try for a minute and if spread stays too high the request will time out and it will just give up.

You bigger worry is the speed of your connection you have to be fast otherwise it might still slip into the expensive domain.
 
bosslife:

spread of my broker is sometimes jumping every second between 7 and 25 or similar, and when i place an order i mostly end up with a high spread. 

is there a way to order with maximum spread or to make sure order only triggers with low spread?

use deviation paramerer to OrderSend() - in MqlTradeRequest struct (this is the max spread allowed in points, not sure it works on ECN - haven't tried)

 
Amir Yacoby:

use deviation paramerer to OrderSend() - in MqlTradeRequest struct (this is the max spread allowed in points, not sure it works on ECN - haven't tried)

 ulong   deviation;        // Maximal possible deviation from the requested price 

Max slippage from the requested price, not max spread.

That one is for when you have a slow connection and market price has changed while the order was in it's way.

 
I'd use a different broker. Plain and simple.
 
Marco vd Heijden:

Max slippage from the requested price, not max spread.

That one is for when you have a slow connection and market price has changed while the order was in it's way.

Isn't it the same as max spread if you set it to 10 points and you know the current price then in fact it will not allow price to flunctuate more then 10 points, which is the OP's request

 
Amir Yacoby:

Isn't it the same as max spread if you set it to 10 points and you know the current price then in fact it will not allow price to flunctuate more then 10 points, which is the OP's request

Slippage is ignored with market orders.

 
Enrique Dangeroux:

Slippage is ignored with market orders.

Yes, I understand that. The purpose is for the user to see the price and request the order in that price, allowing maximum deviation (without requote to reconfirm). With market order nothing is sure anyway, not the slippage nor the price itself.

* Maybe a clarification is needed here: I am talking about execution type of the symbol, not of the order. A market order can still be executed with SYMBOL_TRADE_EXECUTION_REQUEST if the symbol allows, which allows deviation.
 
Marco vd Heijden:

Max slippage from the requested price, not max spread.

That one is for when you have a slow connection and market price has changed while the order was in it's way.

Actually, the requested price is Ask or Bid, and they both include the spread. So slippage from requested price includes the max spread.
Reason: