Back to Community
Hedged Martingale HFT Market Making For US Treasury Futures

Considering U.S. Treasuries don't move very much, I was thinking that a martingale strategy that was perpetually hedged on the same asset in a separate account, could work. There would be a limit to how many times it could double down on any given trade, say twice. Starting from 1 contract this would be a maximum of a 4 contract order and a total of 7 contracts open at any given time (1+2+4). This strategy would trade on a minute-by-minute basis, not to confuse high frequency trading with ultra high frequency trading (nano and milliseconds).
(Orders will be placed as limits unless specified to the algorithm.)
Scenario 1:
The strategy would work like this. Example: Bid = 120.60 Ask = 120.61. The long account would place an order of 1 at 120.60, if it's filled it will then place an order of 1 to sell on the ask. If this fills to it has successfully captured the spread of .01. Now, the short account would do the opposite, placing an order of 1 on the ask and then on the bid assuming it's filled. Assuming both orders are filled each in their respective separate accounts, the position would be market neutral.
Scenario 2:
Now let's say the price moves down to 120.59, 120.60 (bid, ask) without filling the order to sell one at the 120.61 ask in the previous example. In the long account the algorithm would place a buy of 2 at 120.59 (bid). If the price moves back up to 120.60, 120.61 without filling the order, it will be cancelled and will then attempt to sell (1) on the ask in example one. If the price doesn't go back up and the order is filled, there are now 3 contracts open at an average of 120.5933. Again the algorithm attempts to sell the 3 contracts on the ask of 120.60. This process will continue one more time to 2 double-downs. Once it reaches 2 double-downs the bid-ask in this example will be 120.58, 120.59 and the average for the 7 contracts will be 120.5857. At this point the algorithm will market-sell all contracts at the 120.58 bid leading to a loss of roughly .04. The exact opposite of this process will happen in the short-account. It will not be hedged perfectly 1:1 all of the time, but having this feature helps to mitigate the drawdown of a non-hedged martingale strategy. Also since bonds often range-trade this could be profitable over the long-term. Please let me know what you all think and if it could be implemented into an algorithm on Quantopian.

Edit: Obviously this could not be executed in an individual account because of broker fees. This is meant for a hedge fund that has special direct-to-market access and pays very little fees directly to the exchange, no broker involved (this is what HFTs do).

1 response

Your hypothesis could work in theory due to bid ask bounce. But in the real world, HFTs would eat you for lunch. They have the speed, pricing, and data advantage. HFTs can see your order(ie. they have better order book data). Also there is a high probability that all of your limit orders don't get filled and if the orders get filled the treasuries are probably moving against your position. Plus you have have broker and exchange fees. You would have to buy a membership to CBOT and be registered as market maker to get zero fees. Even if you get near zero fees, what you are trying to do is a crowded trade.