1994issue C021-14
Mechanical timing with out-of-sample and filter checks
A mechanical trading system writes buy, sell, and abstention rules as one testable algorithm. This article follows a reliability sequence that locks a weekly percent-swing rule, then asks whether the same procedure still holds on unseen periods, neighboring settings, and a nonprice confirmation filter.
- Write buy, sell, and stay-out rules as one mechanical trading system so the whole timing procedure can be tested together.
- Treat curve-fitting as the main reliability risk: a historically tidy rule set can fail once it no longer represents a general process.
- Use an out-of-sample test and a parameter-sensitivity check on the locked rules before adding any extra constraint.
- Apply a trend filter as monetary confirmation so a percent-swing signal is taken only when an interest-rate condition agrees with the intended direction.
One testable timing procedure
A mechanical timing procedure is presented as an alternative to discretionary judgment because its buy, sell, and abstention rules can be written as one testable algorithm. In that form, a mechanical trading system turns market state and rule inputs into buy, sell, or stay-out actions without discretionary override.
Reliability is the design problem
The source treats future reliability as the central design problem. It identifies curve-fitting as the main way a historically tidy rule set can fail in later use. Curve-fitting means over-tuning a procedure to past data so that it no longer represents a general trading process.
System optimization is used here in a narrow sense. It means checking how a locked procedure behaves when its inputs are varied or when extra confirmation constraints are added, rather than hunting for a single best historical fit.
Three checks in one sequence
Three reliability checks are specified as one construction sequence. Formulate the rules on a limited history. Retest those already-fixed rules on a different segment. Reject settings that work only in a narrow parameter band.
The second step is an out-of-sample test: the rules are applied to a period that was not used to formulate them. The third step is a parameter-sensitivity check: neighboring values of the same rule inputs are tested to see whether results depend on one narrow setting.
A locked weekly swing rule
The starting rule is a weekly percent-swing signal on a broad unweighted index. A buy is taken after a cumulative rise of a stated percent from a prior weekly low. A sell is taken after a cumulative drop of that same stated percent from a prior weekly high. The trigger is reset if a new extreme is made first.
The source describes a trend-following property in this construction. Sustained moves are not missed even when individual signals are often losers.
Unseen periods and neighboring settings
The same swing rules were examined on periods both later and earlier than the original published window. The source treats that out-of-sample persistence as evidence that the logic is not confined to the first sample.
Parameter sensitivity was checked by testing every long and short swing size in a stated range, producing a full set of combinations over the sample. That grid is the check on whether the procedure depends on one narrow setting.
Monetary confirmation as a trend filter
A nonprice monetary confirmation is then added so that a swing entry is taken only when an interest-rate condition agrees with the intended direction. The source presents this as a way to reduce deceptive price-only signals.
In the method language used here, that overlay is the trend filter. It allows a price-swing signal only when an independent market-state condition agrees with the intended direction. Adding the filter reduced activity to a much smaller set of accepted signals.
A later search over many swing sizes and interest-rate cutoffs was treated as a confidence exercise rather than a first-pass search. Nearby settings still produced only a small number of trades.
One executable timing process
The buy, sell, and abstention rules remain one algorithm throughout. The out-of-sample test, the parameter-sensitivity check, and the monetary confirmation are acceptance tests for that same procedure, not a second timing system.
Editorial reading: only after those stages still describe the same actions should the construction be treated as one executable timing process.
All readings on this track · 23 readings
- 1984Evaluating mechanical systems beyond net profit
- 1987Mechanical systems need more than pretty charts
- 1987Evaluating silver moving averages and RSI by scoring rule
- 1988Simple systems over optimized complexity
- 1988Cycle rule inputs until the parameter search stops
- 1990Split-sample tests for stochastic parameter grids
- 1993Four-subsystem trading system construction
- 1993Randomized price paths for stock system parameters
- 1994Mechanical timing with out-of-sample and filter checks
- 1995Evaluating asymmetric percent-reversal trading rules
- 1996Evaluating a daily volume-strength and new-high new-low timing procedure
- 1997Rule-based intraday system design with genetic search
- 1997Evolving three-rule systems with genetic templates
- 1997Audit the holdout and the exposure before the fitted entries
- 2001Inner weights are part of the candlestick signal
- 2003Mechanical short-term rules for news-sensitive rallies
- 2004Band construction as a testable trading procedure
- 2006Layered day-session automation from brackets to rules
- 2006Why mechanical rules must be retuned per security
- 2006A linear-regression next-bar forecast needs a searchable cutoff
- 2015Construct if-then rules, then backtest and optimize
- 2015Mechanical system design as a critique of discretion
- 2025Joint channel design with a trend filter and stop-loss orders