Make the Spread Survive Execution

Make the Spread Survive Execution

The moment it clicked was embarrassingly simple: the spread I was watching was not the spread I could trade. By the time both legs were filled, the apparent edge had been eaten by movement, fees, and the small delays I had mentally rounded down to zero.

That changed the whole season. I stopped asking whether an opportunity looked large enough on a screen and started asking a harsher question: after the first leg, the second leg, the fee schedule, and the transfer or settlement friction, is there still a trade?

My first attempts failed at the handoff between those two questions. I had a clean-looking difference between venues, enough balance on paper, and a plan that depended on the market staying still while I acted. The plan was not ridiculous; it was simply priced at the observation stage rather than the execution stage.

The decision that mattered

There were three options on the table. I could keep capital on both sides and execute quickly. I could move funds only when a spread appeared, accepting that the opportunity might disappear. Or I could make the process more selective: fewer attempts, a larger buffer, and no trade unless the second leg could plausibly be completed under worse conditions than the quote suggested.

I chose the third. At the time, the compromise felt conservative. In hindsight, it was mainly a way to make the decision measurable. The useful threshold was not “the spread is 1%.” It was closer to: “the spread still works if slippage doubles, the fee is charged on the larger notional, and the second price moves against me before confirmation.”

That rule also exposed the edge cases I had been calling bad luck. A thin book can make the displayed price irrelevant at the size you need. A fast first fill can leave you holding the riskier leg. A failed or delayed transaction is not just an inconvenience if the hedge is moving. And a balance that is technically available may not be available in the account, network, or asset form the next action requires.

The practical setup became boring: pre-position what I could, decide the maximum size before looking at the quote, and treat every unfilled second leg as an active position rather than an unfinished task. I logged the expected net result and the realized one. The gap between them was more educational than any winning trade.

The lesson I kept was not to chase the biggest visible difference. It was to demand a spread with enough room to survive the moment it becomes real, while accepting that some apparently attractive trades are only attractive because their hardest costs have not happened yet.

If you are checking the mechanics before deciding whether your own buffer is wide enough, arbswap is the reference I would open at this point: the place to verify the current setup before applying the execution test.

Leave a Reply

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