Skushno posted this question in the Introductory thread, but I think it's important enough to create a separate thread for discussion.
Thanks for the post Skushno. Long reply so I apologize in advance, but sometimes these things aren't simple. I've answered the below questions in bits and pieces on multiple forums, so it'll be good to combine it all into one post....
Sure, I’ll go into more detail about how the No Dealing Desk (NDD) works. You’ll often hear NDD also referred to as Straight Through Processing (STP). First, I’ll explain how the quotes are determined, and second, how trades are offset.
How are the quotes determined?
FXCM receives pricing and liquidity from 10 banks. So there are 10 separate prices being quoted on the bid side (sell price) and 10 separate prices being quoted on the ask side (buy price). The execution engine on our backend shorts the prices and displays the best bid/ask on the trading platform. Here’s a short example using two banks and without fractional pips to make things simple.
Let’s suppose Bank A and Bank B are each quoting prices for GBP/USD. Here’s what each bank is quoting.
Bank A: 1.5025 x 1.5027
Bank B: 1.5024 x 1.5026
The best price being offered by the banks on the sell side (you sell and bank buys) is at 1.5025 by Bank A, and the best price being offered by the banks on the buy side (you buy and bank sells) is at 1.5026 by Bank B. Therefore the bid/ask is 1.5025/1.5026. There’s a 1 pip spread between the buy and sell price. FXCM then adds a fixed mark-up which is our compensation. Assuming there is a pip added to the bid/ask means the final price displayed on the FX Trading Station is 1.5024/1.5027. You then see a 3 pip spread.
This process is occurring very quickly and with 10 separate feeds to sort through. It’s mind-boggling sometimes to think of how fast it occurs. To give you an idea, take a look at a tick chart from Marketscope showing tick history in EUR/USD over a 3 second period. In the screenshot below, there were 18 separate price updates.
This is also why the spread is variable. As banks compete for the best price, spreads will fluctuate. Whoever has the best price, gets the volume.
How does NDD work when placing a trade?
Continuing with the previous GBP/USD example, let’s say you want to buy GBP/USD and decide to click on the price 1.5027. When you submit the order, the order is sent to FXCM for the price 1.5027 and FXCM routes the order to Bank A offering to sell at the price 1.5026. If the order is accepted, Bank A has a short position at the price 1.5026, you have a long position at the price 1.5027, and FXCM has gained 1 pip in revenue. Each order is offset in this fashion individually to be offset. The trades are not aggregated like you would have with a market maker so at no point is FXCM taking on the risk of trading against clients as a market maker or dealing desk would take.
What if there is slippage?
We can take the example one step further. If multiple orders are submitted or are waiting for the same price, there is then a queu for the orders to be executed. There is also a limited amount of liquidity at each point. For example, Bank A may be offering to sell 1 million notional amount of GBP/USD at the price 1.5026. If there is 1.2 million notional of traders orders waiting to be executed, that means 200k worth of orders will be slipped or cancelled depending on whether the trade is setup At Best or Market Range order. For this example, let’s say the order is submitted as an At Best market order. Your order arrives at Bank A, but the price 1.5026 is no longer available. The order is then re-submitted at the next best available price which happens to be 1.5027 from Bank B. The trade is executed so Bank B has a short position at 1.5027, you have a long position at 1.5028, and FXCM has gained 1 pip in revenue. Despite the slippage on the trade, FXCM’s revenue remains the same.
If the market continues to rise, your long position becomes more profitable and the banks short position turns into a loss, and viceversa. If you close the trade at a $200 profit, the bank is booked with a $200 loss. If you have a $200 loss, the bank has a $200 profit. Your profit/loss doesn’t have an impact on FXCM’s bottom line. NDD eliminates the risk of traders being profitable, and eliminates the conflict of interest whereby it’s in the best interest of a dealing desk for its clients to lose.
Is FXCM the counterparty to my trade?
In retail trading, the broker will be the counterparty to your trade whether using NDD or dealing desk execution. The reason for this is because you don’t have credit lines setup with the banks. If something goes wrong or there’s a problem to settle, the bank will come to FXCM rather than knocking on your door. The forex market is decentralized so everything is based on creditworthyness and relationships.
What matters in terms of your counterparty is how then manages that risk (how the trade is offset). Is the broker taking the other side of the position and thereby running the risk or trading against clients, or is the broker offsetting trades immediately eliminating the risk and becoming neutral to a trader being profitable.
NDD also gives you the benefit of being anonymous. Why do you get re-quotes or order restrictions through a dealing desk but not with NDD? A dealing desk can identify individual traders and change tactics accordingly. On NDD, all orders goto the banks labelled as submitted by FXCM so they can’t single out individual orders or traders. Everyone plays by the same rules.
I know it’s a long post, so thanks for reading. If anything is unclear or you have additional questions. Please feel free to let me know.
Additional Note: For full disclosure, FXCM Micro accounts are currently executed through FXCM's dealing desk. Reason for this is because only 2 of 10 banks were previously accepting micro lots via NDD execution. This will be changing to NDD in the upcoming months.