Backtesting methodology

Strategy Evaluation Pipeline

Strategy files go through several validation and processing steps before results appear in the dashboards.

1. Lookahead Bias Detection

Strategy files are first tested for lookahead bias.

If a strategy shows lookahead behaviour, it is discarded and not included in further evaluation.


2. Recursive Bias Adjustment

Strategies are then tested for recursive bias.

If recursive bias is detected, the startup_candle_count parameter is automatically adjusted until the deviation disappears.


3. Modular Backtests

Backtests are executed in monthly segments to keep the dataset modular and manageable.

Because of this structure, all open trades are closed at the end of each month.

This design allows the platform to:

  • process large numbers of strategies
  • recompute datasets efficiently
  • aggregate results consistently across strategies

4. Strategy Identifiers

Each strategy run is represented by a strategy identifier (e.g. [identifier example]).

To simplify terminology across the platform, these are referred to as identifiers.

Identifiers encode information such as:

Example identifier: github_hippocritical_strategies__SMAOffset_Hippocritical_dca__20230805_200550_binance_spot_EUR_5m_5Trades

  • if applicable [source]_[user]_[repository] (github_hippocritical_strategies)
  • strategy name (A1, smaoffset, …)
  • date of publishing in form yyyyMMdd_hhmmss => 20230805_200550 would be 20h:05m:50s of the 5. of August ,2023
  • exchange (binance, kucoin, bybit, …)
  • market (spot/futures)
  • currency (EUR, USDT, USDC, …)
  • timeframe (5m, 1h, 15m, …)
  • 5Trades (max_open_trades = 5)

5. Data Aggregation

Once all backtests are completed, the raw results are processed by a conversion pipeline.

The pipeline transforms the results into SQL tables containing:

  • monthly performance data
  • daily data points
  • derived performance metrics

This aggregation allows large datasets to be presented efficiently.


6. Data Presentation

Results are exposed through several levels of visualization.

Summary chart

A high-level overview of aggregated backtest performance.
backtest results summary

Detailed analysis

Charts showing broader behaviour such as price progression and aggregated metrics.
backtest results monthly datapoints