Objective · baselines · walk-forward · retirement
Best Indicators for 6Z: A Walk-Forward Test, Not a Ranking
RSI, a moving-average crossover and a momentum oscillator can all agree because they are transformations of the same price history. Agreement is not independent confirmation, and a familiar indicator is not automatically useful in 6Z. “Best” should mean incremental out-of-sample value for a declared decision after costs—not the highest backtest selected from a long menu.
- Comparison
- Simple baselines
- Validation
- Walk-forward
- Costs
- Order-specific
- Universal winner
- Not claimed
An indicator needs a job
Name the Decision Before Choosing the Tool
Define whether the candidate filters entries, classifies volatility, estimates direction, limits trading during poor liquidity or manages an existing position. Specify the prediction horizon, target, update time, allowed position states and loss function. An indicator that helps one task need not help another.
Target
What is predicted?
Signed return, tail event, spread state or another field observable at the evaluation horizon.
Action
What changes?
Enter, abstain, reduce, exit or change order style under explicit permissions.
Horizon
When is it scored?
Fixed event-time or clock-time endpoint with no overlapping-label ambiguity.
Loss
What counts as better?
Net utility, calibration, shortfall or risk-adjusted objective declared before testing.
Point-in-time or fail
Freeze the Information Set at Decision Time
Construct features from data available when the hypothetical order is decided. Lag settlements until their official availability, preserve revised macro releases by vintage where used, and define bar completion precisely. Maintain dated 6Z contracts plus a documented roll series.
| Input family | Examples | Audit question |
|---|---|---|
| Price | Returns, range, moving averages, breakouts | Was the bar complete and tradable before the decision? |
| Volatility | Lagged realized measure, range percentile | Were thresholds trained without holdout data? |
| Liquidity | Spread, depth, quote age, volume | Does the licensed feed support the stated metric? |
| Macro | Official releases, rates, event flags | Is the exact release vintage and timestamp preserved? |
| Contract | Days to termination, active-month flag | Did roll selection use future volume or open interest? |
Complexity must earn its place
Compare Against Simple, Honest Alternatives
Every candidate must beat the relevant no-skill and low-complexity baselines on the same observations, costs and decision frequency. If the target is direction, include always-flat, unconditional sign, and a simple lagged-return rule. If it is a filter, compare with taking every otherwise eligible setup.
Reveals whether apparent risk-adjusted performance merely rewards low exposure.
Uses the training-sample base rate without technical features.
Tests whether added indicators improve beyond a transparent price transform.
Preserves trade count and holding period to expose favorable market drift.
Separates signal failure from execution failure but is never the final verdict.
Uses spread, slippage, fees, missed fills and whole-contract constraints.
Families, not brand names
Run a Registered Candidate Matrix
Test a small set of economically distinct feature families. Parameter grids, transformations and interactions all count toward the search budget. Use nested walk-forward evaluation: tune only inside each training window, freeze the selected rule, then score the next untouched interval.
| Family | Candidate question | Primary failure mode |
|---|---|---|
| Trend | Does lagged directional persistence add net value? | Whipsaw and parameter mining |
| Mean reversion | Does an extreme normalize at the declared horizon? | Catching structural repricing |
| Volatility state | Should risk permission change? | State identified after the move |
| Liquidity filter | Should the order be delayed or reduced? | Displayed liquidity disappears |
| Event filter | Should scheduled windows be separated? | Event labels or timestamps leak |
inner train: tune
→
freeze
→
next window: score once
→
roll forward
Most false edges enter through time
Block Look-Ahead, Survivorship and Overlap
Keep preprocessing, feature selection, scaling and threshold fitting inside the training fold. Purge or embargo observations when labels overlap training and validation boundaries. Use the contract that could actually have been selected then, not today’s cleaned symbol history.
- No future bar high, low, close or settlement enters an earlier decision.
- No full-sample normalization or volatility threshold is reused in a fold.
- Release revisions are not substituted for the first available value.
- Roll decisions rely only on lagged point-in-time information.
- Overlapping returns do not masquerade as independent observations.
- Every tried parameter, feature and model remains in the experiment ledger.
A model needs an exit rule
Retire What Stops Adding Value
Predefine minimum coverage, net improvement over baseline, calibration or risk limits, tail-loss ceiling and consecutive review windows. Monitor the same metrics used for acceptance. A candidate is retired, not “temporarily trusted,” when data drift, execution degradation or validation failure breaches the rule.
Promote
Incremental net value
Walk-forward results beat baselines with usable uncertainty, stability and capacity.
Shadow
Evidence incomplete
Record live predictions without granting trading permission.
Retire
Rule breached
Performance, calibration, data quality or execution cost fails the frozen gate.
Reject
No independent value
Candidate duplicates simpler features or fails after costs and search correction.
Worked comparison
Test a momentum candidate without rewarding extra activity
Suppose the candidate uses a lagged return over one lookback and trades for one fixed horizon. The research record must include every tried lookback, threshold and holding period. Inside each walk-forward training window, select parameters under the declared objective, estimate the cost model from information then available and freeze both. Score the next window once. Compare with always-flat, unconditional-direction and randomized-timing baselines using identical eligibility, exposure limits and order assumptions.
Report gross and net results, turnover, exposure time, drawdown, tail loss, trade count, missed-fill assumptions and uncertainty across independent periods. A higher gross return is not incremental value if it comes from greater market exposure or an unrealistically generous fill. Repeat with one-tick and adverse-liquidity cost stresses, purge overlapping labels at fold boundaries and inspect whether one event week dominates. Promote only if the candidate improves the registered net objective across multiple forward windows without breaching risk gates. Otherwise shadow or reject it; do not rescue it by selecting a new parameter on the failed validation window.
Store every prediction before its outcome is known. A timestamped shadow log exposes implementation differences, missing signals and silent model changes that a reconstructed backtest can conceal.
No original result is reported. This page publishes no 6Z indicator backtest, ranking, parameter set or profitable strategy; it defines how a candidate could earn and lose permission.
Sources, methods and editorial disclosure — reviewed August 25, 2026
- CME Rulebook Chapter 259 for 6Z contract identity.
- CME DataMine for official historical-data product categories.
- SARB MPC announcements and Federal Reserve FOMC calendars for candidate point-in-time event labels.
Sources were reviewed August 25, 2026. This unsponsored article is an evaluation protocol, not an indicator endorsement or completed performance study.