I have a very small live account with MB Trading that I use to make a market. I had a simple theory on making markets to amplify returns at the same level of risk: only offer (sell) on currencies that I expect to decline over the next few months. The return should outweigh the buy and hold return due to earning commissions from limit orders.
My account is currently up 32% over 34 days, which is when I began running this particular EA. The trade size uses 9:1 account leverage on two currency pairs, EURUSD and USDJPY. EURUSD accounts for the overwhelming bulk of the returns. I suspect that is due to the higher demand and higher volatility. USDJPY doesn’t seem to jump around enough to make it very worthwhile.
The strategy is not a panacea; you still have to correctly anticipate the long term direction of the market. I expect the euro to dissolve to the banking crisis, which makes it relatively easy for me to speculate on the euro’s future direction – down. If you do not get the broad direction correct, then the strategy will obviously lose money.
Mainting low leverage is critical to ensure that the drawdowns are tolerable. Notice on the account report how the yellow and red lines clearly spread out for most of August when the EURUSD direction remained ambiguous. As EURUSD broke strongly to the downside in September, the realized account equity begins walking with increasingly smaller divergence from the realized balance.
I started running the EA on the EURUSD on August 9, 2011 at 1.4386, which was in the middle of the daily trading range. As you go through the account statement, notice that the EA occasionally improves the replacement executions. In theory, as the price goes down, the EA should continually sell at a lower and lower price. What happens, however, is that traders don’t always take the opposite side of my order. I maintain a set distance from the bid price, which allows my order to walk up with the market. Maintaining a set distance in the spread improves the execution price and refills the short order.
Say that the current price of a currency is 100-102 (the industry convention is to read the quoted spread as “100 at 102”). 100 represents the bid and 102 represents the ask. If I expect the pair to decline, I run the market making strategy to only sell by posting limit orders as the ask. I start by selling when the price is 100-102. That means that I get short at 102 – someone has to buy my sell, and the “price taker” hits me, the “price maker”, at 102. I try to immediately exit by buying. That requires that I post a limit buy order at the current bid, which is 100.
If nobody decides to buy at 100 and the price declines to 101-100, I then walk my limit order down with the dropping asking price. My changed order makes the current spread 101-99. Assuming that someone now takes the other side of my trade at 99, I make 3 pips (102-99 = 3).
Now it’s time to refill the order. The current spread is 99-101. I post my limit sell order at 101, which nobody seems to want. The bid increases to 100. I move my sell limit to maintain the spread distance, changing the spread back to the original 100-102. My limit order “walked up” to my original price, allowing me to potentially catch the same move twice.
Another consequence, this time a negative one, is that trades don’t get filled at every price during sharp drops. Just as orders walk up with the price, they also walk down when the market moves quickly. There are occasional lengthy periods where trades get stuck with trades near the bottom of a move. Say that my first trade exited when the spread was 99-101 and the market sharply fell to 90-92. My limit order would walk down with it, causing me to miss 7 pips of the move.
This isn’t entirely bad. Sometimes I get stuck with these types of orders that have been open for more than a day, which give strong indications of support and resistance. One great feature at myfxbook is that you can click Custom Analysis in the top right corner. If you run a report on my trades held for more than 1 day since August 9, 2011, then compare those executed prices to a chart, you will notice how well they line up with traditional support and resistance concepts. Getting filled on a small order is like getting additional information about key price levels. I might consider in the future exiting my small losing order at market but opening a large order in the reverse direction with that key level as my stop.
I did a quick analysis of my EURUSD returns compared to a buy and hold return since Aug 9. If I sold and held one micro lot from 1.4386 to the current price of 1.3669, I would have a profit of $71.70. Instead, I profited $94.10 owing to my orders walking along with the price. In addition, MB Trading paid me a further $28 in commissions for offering prices to their customers. I earned an extra 70% off of my return simply by making a market instead of sticking with the original order. It seems that I’m off to a promising start!
One caveat is that I increased my position size when the EURUSD moved against me 350 pips. I expected that it was at the top of the trading range. I took the big loss in the middle with the intention of replacing it with a double sized market making order. I have not yet teased out how much of the outsized performance effect comes from the change in my position size.
It's a same that it doesn't appear to work. I read through your post before looking at your statement and thought you may be onto something here. I wonder if you tried it with an ECN account – makes sense that with the right latency this could actually work our with the right broker. Would love to give it a try.
Hi Steve,
Yes, I tried it with an ECN account at MB Trading. The account statement looks messed up b/c most of the profit came from an error on MB Trading’s part. They posted a $993 credit a few months ago, so the total return on the account is something like 200%. I withdrew those profits into a separate testing account that I use with NinjaTrader.