Darwinex slippage – explained

This post answers the inordinate amount of  complaints and occasional abuse (“you guys are a bucket-shop”) we get for situations when slippage is NOT our fault.

In it, we :

  1. Cover the text-book definition of slippage,
  2. Explain what causes it,
  3. Describe situations in which it can get particularly bad.

It does NOT cover technical issues which result in sub-optimal fills: in those (exceedingly rare) cases our policy is to compensate for the loss.

Also, we hope this triggers debate!

What is slippage?

According to investopedia, slippage is:


… a definition introducing the notion of an “expected” fill of a trade.

WTF “the expected price of a trade”?

To “expect” a price is to get price-discovery backwards. Prices are the result of matching:

  1. Liquidity providers with limit orders (they either get filled at the limit price, or not at all)
  2. Liquidity takers with market orders (filled at whatever price results from available liquidity)

Crucially, when it comes to orders, you can’t have it both ways;

  1. If you fix the price others may not choose to fill you (limit order), OR
  2. If you want the liquidity, you can’t fix the price (market order)

Because the price is not set, “desired” and  “actual” fill price may differ – slippage only applies to market orders, owing to:

  1. Market liquidity being a rival good in economic terms (first guy gets the best fill, second guy takes second best, etc.), and/or
  2. Latency

The (finite) order-book

(If you know how an order book works, feel free to skip straight to the next section.)

A DMA MT4 displays the Top of Book spread resulting from order-matching in the interbank spot foreign exchange market.

Screen Shot 2015-07-31 at 13.28.13In the above snapshot, you could take the liquidity with a market order to either:

  1. Sell 2.0M EURUSD at 1.09402, or
  2. Buy 1.5M EURUSD at 1.09406

Because LPs provide limit orders (volume at a given prize) – there’s not one one, but several “spreads” at any point in time.  As above, a market order to sell 4.5 MM would clear:

  1. The first 2.0 M @ 1.09402
  2. The next 2.5 M @ 1.09401
  3. For a volume weighted average price (VWAP) for 4.5 MM of 1.0914444

(1.09402 -1.0914444) is “real time capitalism”, the liquidity premium you pay LPs for them to take your 4.5 MM there and then.

MT4 & (not) providing liquidity

Still here? Just checking 🙂

Of course if you’re not happy paying the slippage premium, you could provide limit orders… alas not on MT4.

MT4 clears on price, not orders. MT4 dealers provide liquidity (they publish a price-feed) and as an MT4 user (a trader) you take it. The dealer either fills at that price, or he doesn’t (re-quote) – but the concept of order matching with market-depth is alien to standard MT4.

Darwinex (and other brokers) expand MT4 with an MT4 bridge, a piece of software that transforms MT4 price requests into market orders compatible with an LP order-book. E.g. whenever you enter a stop-loss (a limit order!) into a DMA MT4, it gets stored in MT4 server, with a trigger-price. If/when the market Top of Book prize hits your limit price, a market order is sent via the bridge to the order-book, which gets filled at the best at that moment.

This has upside (no re-quotes, no stop-hunting, if you wish to learn more on the topic, here’s a webinar).

But it has the downside that MT4 “limit” orders are actually “on trigger” market orders – and thus subject to slippage.

Internet latency

The other factor contributing to slippage is latency.

By the time you “see” the (Top of the) order book on MT4, it’s history: the price-feed took 0.1-0.2 seconds to reach you. When you send your market order, it takes 0.1-0.2 seconds back to the order book. In volatile conditions, the market price moves in 0.2-0.4 seconds – which is not necessarily bad: it can move for you as well as against you.

Your call, not Darwinex’s

Slippage IS the market. It’s a fact of (trading) life, so next time you’re upset about it, remember that if markets didn’t move (i.e. SLIP), you could NOT trade.

Of course, at times there’s too much volatility for your comfort (Non-Farm-Payroll, etc.). If you’re not comfortable with this, the solution is:

  1. Don’t be in the market in the first place, or
  2. Trade limit orders (which you can’t do on MT4)
  3. Trade with a dealer, not a broker –  but know that this has side-effects which, in our opinion are far worse than slippage

If you absolutely need market liquidity at those times, remember that Darwinex has every incentive to 1) get you the best liquidity subject to 2) what’s available in the market at any given point in time, but we DON’t make the market, we merely provide you access to it. 

At times, this means that you get slipped – but hopefully by now you know better than to call us a “bucket-shop”.

0 replies

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published. Required fields are marked *