Walk-Forward AnalysisFolds & Visualizations

Folds & Visualizations

The center column of the WFA panel is split into two areas: the Fold Table (top) and a tabbed chart area (bottom) containing the Fold Gantt, IS vs OOS Bar Chart, Equity Curve, and Parameter Stability views.

Fold Table

The fold table lists every completed fold with its key metrics. Rows appear incrementally as each fold finishes — you can already inspect early folds while later ones are still running.

Columns

ColumnKeyDescriptionDefault Width
#foldIndexFold number (1-based). Sequential across the run.30px
TraintrainRangeBar range used for in-sample optimisation, e.g. 0–499.80px
TesttestRangeBar range used for out-of-sample validation, e.g. 500–599.80px
Best ParamsbestParamsLabelHuman-readable summary of the winning parameter combination selected during IS sweep.120px
OOS P&LoosPnLNet profit/loss on the out-of-sample window with the best params. Green = positive, red = negative.70px
WFE %wfePer-fold Walk-Forward Efficiency. OOS return / IS return × 100.60px

Interactions

Row Selection
Click any row to select it. The selected fold is highlighted in blue and its data is sent to the Fold Inspector in the right column. All charts also highlight the selected fold.
Sorting
Click any column header to sort ascending. Click again to sort descending. Default sort is foldIndex ascending. Non-numeric columns (Train, Test, Best Params) sort alphabetically.
Column Resizing
Drag the vertical divider at the right edge of each column header to resize it. Minimum column width is 30px.
Auto-scroll
When you select a fold programmatically (e.g. by clicking on a chart), the table scrolls the corresponding row into view using scrollIntoView with smooth behavior.
Export CSV
An Export CSV button at the top of the table downloads all fold data (fold number, train range, test range, best params, OOS P&L, WFE) as a comma-separated file.
Color Coding
OOS P&L cells are colored green for positive values and red for negative values. WFE cells follow the same coloring.

Fold Gantt Chart

The Gantt chart (accessible via the Gantt tab in the bottom chart area) provides a horizontal timeline view of all folds. Each fold is shown as a pair of color-coded bars representing its training and test windows.

Training Bar (Blue)
Spans from trainRange[0] to trainRange[1]. In rolling mode these shift forward. In anchored mode they always start at bar 0 and grow taller.
Test Bar (Yellow)
Spans from testRange[0] to testRange[1]. Always immediately follows the training window. Selected folds are rendered more opaque.
X-axisBar index (0 to totalBars). Up to 10 vertical grid lines with bar number labels at the bottom.
Y-axisFold rows, one row per fold (row height = 22px). Row label at the left shows fold number (#1, #2, …).
ClickClicking on a fold row selects that fold across the whole panel (table, inspector, charts).
Canvas sizingCanvas uses devicePixelRatio for crisp rendering on HiDPI displays. Height grows to fit all folds (minimum = container height).

IS vs OOS Bar Chart

The IS vs OOS tab shows a grouped bar chart comparing in-sample and out-of-sample net P&L for every fold side by side. This is the primary visual tool for spotting overfitting.

ElementColor (dark / light)Meaning
IS barBlue (70% opacity / 90% when selected)In-sample net P&L — the result the optimiser chose.
OOS barYellow (70% opacity / 90% when selected)Out-of-sample net P&L — the real robustness test.
Zero lineWhite 15% / Black 15%Reference line at P&L = 0. Bars below this line are losses.
Grid linesWhite 6% / Black 6%Horizontal guides at 5 evenly spaced P&L values.
Y-axis labelsMuted textP&L scale. Values ≥ 1000 are abbreviated as $xk.
Reading the chart:Healthy WFA results show OOS bars that are consistently positive and roughly proportional to IS bars. If IS bars are tall and OOS bars are near zero or negative, the strategy is likely overfitting to the training data.
ClickClick on a bar group to select that fold.
Y-rangeAutomatically scaled to the min/max of all IS and OOS values with ±10% padding.
Group gap30% of group width is gap between fold groups; 2px gap between the IS and OOS bars within each group.