2015issue C1128-33
Constructing mechanical systems for walk-forward tests
Editorial view: treat construction as a two-model bench. Freeze entry, exit and abstention into one mechanical procedure that walk-forward analysis can score on later unused slices, and keep position size off the signal so a deteriorating trade sequence can shrink or halt without rewriting the rules.
- Price-series choice comes before rule search, because a series that is too violent leaves no safe mechanical procedure and a series that is too quiet lacks usable opportunity.
- A mechanical procedure is assembled by inspecting history, proposing rules and testing data that were not used to form those rules, so signals replace discretionary judgment.
- Walk-forward analysis selects rules and parameters on in-sample data by an objective-function score, tests them on a later unused slice and treats the concatenated unused-slice trades as the working estimate of later behavior.
- Position size stays outside the signal model so a second model can shrink exposure, or set size to zero, when the trade sequence deteriorates.
The system is one testable procedure
A mechanical trading system is a fully specified procedure that turns rule inputs, market state and execution constraints into entry, exit and abstention signals over the system holding period, so the whole loop can be tested as one object.
In the archive workflow, a system is the joint of model, rules and parameters, and data series. The procedure is assembled by inspecting history, proposing rules and testing data that were not used to form those rules, so signals and quantified risk and opportunity estimates replace discretionary judgment.
Risk on hypothetical, backtested, walk-forward or live trades is checked by asking whether every signal could have been taken with available capital. Most such combinations cannot.
Choose the series before the rules
Price-series choice comes before rule search. Series that are too violent leave no safe mechanical procedure. Series that are too quiet lack usable opportunity.
Two- or three-times leveraged funds were rejected as too risky to host the system.
Both windows have to persist
Pattern persistence must cover both the in-sample construction window and a later out-of-sample window. In-sample data is the history used to discover patterns and to keep adjusting rules and parameters until the fit looks acceptable. Out-of-sample data is later history, preferably the same series and more recent, that was not used to form the rules and is the first check that the fit is not only noise.
Relatively short recent spans are preferred because stale or incorrect data is treated as worse than having no data.
Stationarity is stability of the series and of the system’s result distribution across the research window and the later test window. Fitting methods that assume stationary data are treated as failing once that stationarity ends. Folding position size into the signal model or simply trading through drawdowns both rest on that assumption.
Complexity and holding time
Extra rule complexity overfits the construction sample. A stated construction preference is frequent, accurate, short-hold trades because adverse excursion is described as growing with the square root of holding time. Stripping the worst losses from a trade set is treated as more important than keeping the best wins.
In-sample search is incomplete
Historical backtesting is required to see what was profitable on past data and is the usual in-sample search. Stopping development there supplies no estimate of later performance.
System optimization is that in-sample search among alternative rules and parameters, ranked by an objective-function score. It is incomplete until later unused data is applied. The objective function is the scoring rule that names which candidate is best at each in-sample step of a walk-forward run.
Walk-forward scoring
Walk-forward analysis is a stepped validation cycle that selects rules and parameters on an earlier window, tests them on a later unused window, then advances both windows through time. It repeatedly picks rules and parameters on in-sample data by an objective-function score, tests them on a later unused slice, then advances the pair by the out-of-sample length.
The concatenated unused-slice trades are used as the working estimate of later behavior. Each step is treated as practice for leaving development.
Write every path, then size the tape
After a system is chosen, every entry and every exit path must be written as a rule with no subjective exits. Impulse signals are events that open or close a position, such as buy, sell, short or cover. State signals name the next-bar stance, long, flat or short, including every bar between an entry impulse and the matching exit. With end-of-day mark-to-market, that stance is the intended position for the following day.
A second model takes the trade sequence as data and outputs position size. Position size is kept outside the signal model so live trade-sequence quality can still be observed. The size rule described here is anti-martingale sizing: it raises exposure after acceptable results and cuts exposure after poor results, including a zero-size halt when the profit estimate falls below other uses of the same funds.
In the archive workflow, among systems examined none supported a size above zero when holding exceeded two weeks.
All readings on this track · 50 readings
- 1990Three-window walk-forward system evaluation
- 1990Building the construction layer of a mechanical trading system
- 1991Constructing walk-forward neural trading rules
- 1991Constructing neural trading systems from facts to walk-forward
- 1992Walk-forward evaluation of stop overlays on average crossovers
- 1992Audit mechanical system tests for fills and regimes
- 1993Walk-forward evaluation of monthly yield and real-rate forecasts
- 1993Constructing walk-forward forecasts with linear and moving-average baselines
- 1993Walk-forward hybrid rules for intermarket forecast stacks
- 1994Neural-net construction as a mechanical trading-system problem
- 1995Constructing an intermarket neural net trading system
- 1996Weekly market breadth as one procedure on an unused window
- 1996Walk-forward evaluation of gold-index bond-fund rules
- 1996Evaluating weekday-in-month filters for index day trades
- 1996Require both a trend filter and a cycle oscillator before entry
- 1997Walk-forward windows as a diagnostic of parameter instability
- 1997Walk-forward validation of a market-breadth timing rule
- 1997Sunspot spikes and walk-forward evaluation of an adaptive cycle rule
- 1997A walk-forward check for bond-breadth timing
- 1998Walk-forward audit of regression trend forecasts
- 1998Evaluating a cubic least-squares currency trend with walk-forward segments
- 1998Walk-forward evaluation of recursive yen trend signals
- 1999Personal system design under crowd psychology
- 1999Walk-forward evaluation of a polynomial price forecast
- 2000Walk-forward optimization of regression-slope-angle rules
- 2001Construct a winter seasonal window as one procedure
- 2001Inspectable rules when system write-ups dry up
- 2002Evaluating mechanical systems before position sizing
- 2003Walk-forward construction of rule-based market-position systems
- 2007Evaluating metal seasonal windows across regimes
- 2007Evaluating mechanical timing systems against hold baselines
- 2011Walk-forward reoptimization as a system design gate
- 2011Evaluate generated systems on holdouts, then add stops
- 2012Walk-forward analysis and out-of-sample tests for a mechanical trading system
- 2012Personality-first trading system design
- 2012Scorecard-first mechanical system construction
- 2012Constructing an advancer-decliner moving average for market breadth
- 2012Formula search as mechanical system construction
- 2013Identity-first system construction
- 2013Construct a swing system from bias rules to walk-forward
- 2014Evaluate mechanical stock systems with stops and walk-forward
- 2014Walk-forward velocity filters on noisy intraday trends
- 2015Event-predictability versus position-constrained rules
- 2015Constructing mechanical systems for walk-forward tests
- 2016When a tested system must be retired
- 2016Walk-forward metric filters and chance-level checks for selected inputs
- 2018Evaluate mechanical trading systems without catalog rankings
- 2019Phased stop construction from entry risk to trailing exit
- 2020Stockpiling simple ideas for mechanical system construction
- 2020A pretty first draft is not a walk-forward waiver