Strategy backtesting
Replay a strategy on historical price bars and inspect the trades behind the result.
Each run reports the trades behind its metrics.
Pyon replays a visual strategy against historical market data and reports its equity curve, trades, return, drawdown, Sharpe ratio, win rate, profit factor, and fees. Price aggregates are requested with split and dividend adjustments. The available history depends on the symbol, timeframe, and data provider coverage.
Commission and percentage slippage settings are available when you configure a run. They default to zero, so a backtest without a fee configuration is frictionless. Trained ML Lab models can be replayed with walk-forward predictions; ordinary indicator strategies do not automatically receive that validation. A two-parameter sweep helps compare nearby settings rather than relying on one chosen value.
Adjusted price bars
Historical aggregates use adjusted prices. Coverage varies by symbol and timeframe.
Strategy metrics
Examine return, drawdown, Sharpe, win rate, profit factor, trade counts, and fees.
ML walk-forward replay
Backtests with a trained ML model use point-in-time prediction series when available and warn when they are missing.
Parameter sweep
Sweep two numeric settings to inspect a grid of returns, Sharpe ratios, and trade counts.
Frequently asked questions
How far back can I test?
The engine requests historical aggregates for the symbols and timeframe in your strategy. The usable window depends on data-provider coverage and the asset's trading history. Pyon does not construct a survivorship-free historical universe.
What metrics does a strategy backtest return?
It reports total return and P&L, maximum drawdown, win rate, trade and order counts, profit factor, Sharpe ratio, best and worst trade, and total fees. Sortino and VaR belong to Pyon's separate portfolio simulation tear sheet.
Are trading costs included?
You can set per-trade commission, a percentage commission, and percentage slippage. All three default to zero if no fee configuration is supplied, so set them explicitly when testing cost sensitivity.