Entered IS versus OOS rates

Walk-Forward Efficiency Calculator

A walk-forward efficiency calculator compares aggregate out-of-sample result per entered period with aggregate in-sample result per entered period. It preserves negative out-of-sample values and discloses every window. The ratio does not run an optimization, verify a testing process, assign a pass grade or predict future strategy performance.

Chronological windowsDuration-adjusted ratioNo robustness grade

Enter aligned walk-forward windows

Enter 1 to 50 rows as IS result, IS periods, OOS result, OOS periods. Use one result unit and one period unit throughout.

Entered

One row per chronological window: IS result, IS periods, OOS result, OOS periods.

Comparison boundary: Efficiency is undefined when aggregate in-sample result per period is zero or negative. A positive ratio cannot validate parameter selection, independence, execution or future robustness.

Aggregate OOS versus IS rate

Entered Strategy Robustness 1.0.0.

Derived
No walk-forward comparison calculated yetEnter at least one complete window, or load the audited 50% efficiency example.

How walk-forward efficiency is calculated

Aggregate IS rate = Total IS result ÷ Total IS periods
Aggregate OOS rate = Total OOS result ÷ Total OOS periods
Efficiency = Aggregate OOS rate ÷ Aggregate IS rate × 100

Version 1.0.0 receives already separated in-sample and out-of-sample results. It does not select parameters, reconstruct trades or decide which observations belong in either window.

The calculator first adds all entered IS results and durations, then does the same for OOS. Dividing each total result by its total periods prevents unequal window lengths from receiving the same weight simply because they occupy one row.

The OOS rate is divided by the strictly positive IS rate. A common annualization factor would cancel when both durations use the same entered period unit, so the page does not invent trading days, weeks or calendar conventions.

Worked example from the audited fixture

The audited fixture enters one window with an IS result of 120 across 12 periods and an OOS result of 30 across 6 periods.

  1. The entered IS rate is 120 ÷ 12 = 10 per period. The entered OOS rate is 30 ÷ 6 = 5 per period.
  2. Efficiency is 5 ÷ 10 × 100 = 50%. The page reports the ratio without calling it passing, robust, adequate or predictive.

Reproduce it: select “Load audited example” above. The engine retains full precision and rounds only visible output.

How to interpret the result

  • A 50% result means the entered aggregate OOS result rate is half the entered aggregate IS result rate.
  • A value above 100% means the entered OOS rate exceeds the entered IS rate. It does not prove improvement will persist.
  • A negative value preserves an entered aggregate OOS loss rate relative to a positive IS rate and must not be hidden or clamped.
  • Window rows help identify concentration and sign changes, but the calculator does not test whether windows are independent or whether one exceptional result dominates the process.

Assumptions and limits

  • The calculator cannot verify chronological separation, look-ahead bias, parameter leakage, re-optimization rules or whether test windows were selected after seeing results.
  • Result units can be money, percentage points, pips or R only when the same unit and cost convention is used in every row.
  • Linear result-per-period comparison is not CAGR and does not compound unequal returns.
  • A ratio alone omits trade count, variance, drawdown, costs, parameter stability and multiple-testing effects.
  • No 50% rule, pass/fail status, robustness score, optimization setting, forecast, signal or recommendation is generated.

Monte Carlo vs bootstrap vs walk-forward efficiency

These tools answer separate questions. Monte Carlo summarizes hypothetical resampled paths, bootstrap estimates uncertainty around one entered statistic, and walk-forward efficiency compares entered IS and OOS rates. None substitutes for audited records, a documented test design or execution evidence.

Comparison of strategy robustness calculations, inputs, questions and boundaries
MeasureEvidence enteredQuestion answeredMain boundary
Monte Carlo equityEntered percentage returnsSeeded terminal-equity and drawdown path distributionNot a forecast or exhaustive loss boundary.
Bootstrap expectancyEntered signed outcomesPercentile interval for resampled arithmetic meansNot a next-trade prediction interval.
Walk-forward efficiencyEntered IS and OOS window resultsAggregate OOS result rate divided by aggregate IS result rateNot an optimisation or robustness verdict.
Risk of ruinAssumed win rate, payoff and fixed riskFinite-horizon threshold-hit estimateA separate parametric two-outcome model.

Frequently asked questions

  • Version 1.0.0 divides aggregate entered out-of-sample result per period by aggregate entered in-sample result per period and multiplies by 100.
  • Duration adjustment prevents unequal windows from receiving identical weight solely because each occupies one entered row.
  • It means the aggregate entered out-of-sample result rate is half the aggregate entered in-sample result rate; the page does not label that passing or failing.
  • Yes. A negative aggregate out-of-sample result rate divided by a positive in-sample rate remains negative and is not hidden or clamped.
  • A zero denominator is undefined, while a negative in-sample rate makes the conventional efficiency ratio unsuitable for the disclosed interpretation.
  • No. It receives already separated IS and OOS results and does not select parameters, windows, strategies or settings.
  • Use one result unit and one duration unit throughout all rows, with the same gross-or-net cost convention.
  • No. It cannot verify chronology, look-ahead bias, leakage, parameter stability, cost completeness or future performance and assigns no robustness grade.

Sources and methodology

The immutable implementation contract fixes the seed, resampling count, quantile convention, duration weighting, invalid states and permanent exclusions so later copy or layout edits cannot silently alter the arithmetic.

Verify the execution records behind your sample

Before treating any return, outcome or window result as net and comparable, confirm which spread, commission, financing, conversion and execution conventions apply to the broker entity and account used. These browser calculations do not retrieve statements or certify that entered records are complete.

XM

Review the applicable account pricing, statements and execution terms.

Check XM terms

FBS

Confirm instrument costs and account-history conventions for your region.

Check FBS terms

FXOpen

Verify statement fields, charges and execution records before entering results.

Check FXOpen terms

Risk and affiliate disclosure: Leveraged forex and CFD trading can result in substantial losses. These are affiliate links, so ForexMT4Indicators.com may receive compensation if you register or trade through them, at no additional cost to you. Availability and terms vary by jurisdiction and broker entity.

Disclaimer: The results from this tool are estimates for educational and informational purposes only and may differ from your broker's figures. This is not financial or investment advice. Trading forex and CFDs carries a high level of risk and can result in the loss of all your capital. Always verify calculations with your broker and trade within your risk tolerance.