Spec notes

Spec notes

Eleven notes on how execution is modelled. Each one describes behaviour specified in EXECUTION_SPEC.md, the document that ships in the Reamer Research evaluation kit, so you can verify any claim here against the kit itself.

Why Execution Modeling MattersA backtest can be deterministic and well-validated and still be measuring the wrong thing, if the fill price underneath it doesn't reflect how an order actually gets filled. Execution modeling is the layer everything else depends on.What Is an Execution Specification?The code does whatever the code does" isn't a definition of behavior. It's an admission that behavior hasn't actually been defined. A written execution specification is the difference between a claim that can be checked and a black box that has to be trusted.Modeling Bid/Ask CorrectlyA buy pays the ask and a sell receives the bid, making spread a directional cost paid on every round trip. Getting the data's own bid/ask/midpoint convention wrong silently biases every fill the same way.How Limit Orders Really BehaveA limit order isn't a market order with a nicer price attached. It waits for a specific level to be crossed, might never fill at all, and modeling it any other way changes what a strategy's results actually mean.Stop Orders, Gaps, and RealityA limit order guarantees a price. A stop order only guarantees a trigger. Once crossed, it fills at whatever the market gives, which can be meaningfully worse than the stop level itself when price gaps through it.Bracket Orders Done CorrectlyA take-profit exit is easy to assume fills at exactly the target price, like a limit order. It uses the same slippage-inclusive formula as a stop-loss exit, and when both are close together, which one actually triggers first is a real question with a real answer.Practical Research WorkflowsOrder Lifetime: IOC, GTD, and Why It MattersAn order fills, or stops being eligible to fill, at some point. Treating every order as though it waits indefinitely quietly tests a more patient strategy than the one that was actually written.Why Replay MattersA finished backtest result is a final-stage view: trades, fills, a summary. When something in that result looks wrong, a few outsized losses, an order that seemingly should have filled and didn't, replay is the deterministic re-run and per-order diagnosis that finds the exact moment and shows why.EngineeringWhy Synthetic Ticks Instead of Stored TicksAn OHLCV bar gives four prices, not the path between them. reamer_py answers the question of what happened inside a bar with a deterministic, seeded synthetic tick path — not with stored tick data most researchers can't afford or don't need.Execution ModelingSpread and Slippage Widen at the OpenA single spread number and a single slippage number are two constants. Real fills are noisier than that — wider right after a bar opens, calmer toward its close, and scaled by how volatile the bar actually was. Reamer Research models that noise instead of averaging it away.Practical Research WorkflowsTesting Earnings Strategies with Exogenous DataAn earnings backtest is only honest if the data becomes visible on the date it was actually announced, not the date it happened to land in a spreadsheet. Exogenous data's point-in-time resolution is what makes that distinction real instead of assumed.
Request evaluation kitWe reply with the kit and an evaluation key.