Input Outlier Guards Before the Model
A live trading model should check its incoming data for impossible or extreme values before making a decision on it, since a single bad tick fed straight into a model can produce a wildly wrong trade with total confidence.
A trading model that consumes live market data has no built-in sense that a number is absurd — if a feed briefly reports a price of $0.01 or a 1000x volume spike due to a bad tick or an exchange glitch, a model that isn't checking for this will treat it as real information and can generate a large, confidently wrong trade in response. An input outlier guard is a simple check placed between the raw data feed and the model itself, rejecting or flagging values that fall outside sane bounds before they ever reach the decision logic.
A practical guard might reject any price that moves more than, say, 10 standard deviations from a short rolling average in a single tick (a threshold chosen to be far outside plausible normal moves but well within range of an obvious data error), or flag any volume figure that's implausibly larger than the recent maximum. When a value is flagged, the safest default is usually to hold the last known-good value and pause new decisions on that instrument, rather than passing the bad data through and hoping downstream logic handles it gracefully.
This is a cheap, unglamorous control, but it guards against one of the more common causes of live trading incidents: not model error in the statistical sense, but a garbage input treated as if it were real, which no amount of sophisticated modeling protects against on its own.
A live model should validate every input against sane bounds before acting on it — a single bad tick fed through an otherwise correct model produces a confidently wrong decision, and a simple outlier guard is the cheapest defense against it.
Related concepts
Further reading
- Chan, Machine Trading, ch. on live system risk controls