Backtesting
On Q Forecast, select a stock ticker or one Kalshi/Polymarket US contract, then choose Backtest beside Run forecast. The full-screen builder selects the forecast models, weights, quantiles and horizon before stacking entry, take-profit, stop-loss and trailing-stop blocks. Its default long strategy enters when the observed close crosses upward through forecast P10, takes profit at P50 and stops at P01. You can combine 1–4 entry blocks with ALL or ANY logic and 1–6 exit blocks; exit blocks use OR logic. A quantile used in a rule must be among the requested, model-supported forecast quantiles. The worker runs bounded walk-forward forecasts from observed bars available at each cutoff. A signal uses only the completed close and previously produced ensemble quantiles for that timestamp. A simulated entry or exit fills at the next observed bar’s open; a final open position is liquidated at the last observed close. If several exits signal together, stop-loss takes precedence, then trailing stop, then take-profit. Up to 2,000 genuine bars may be fetched; each of up to eight windows uses 2–500 prior context bars. Missing intervals are not filled. For prediction-market contracts, the next observed display quote is a research proxy, not a verified executable bid or ask; do not interpret simulated P&L as live fills.API
Use a Firebase session or a Quantura API key.backtests:run plus current workspace forecast.create permission is required to run; backtests:read plus forecast.read is required to read. Free access remains subject to the plan’s monthly backtest allowance. Workspace membership is rechecked on each read.
data.backtest_id, data.status: "queued", data.status_url and data.result_url. Poll the result endpoint for per-window progress. Once completed, it contains only final ensemble quantiles, matched observations, simulated trades, an equity curve, metrics, assumptions, and a SHA-256 data_hash of the input bars. Individual model prediction arrays are not published. Use:
GET /api/v1/backtests/strategy-schemafor the versioned JSON Schema and defaults.GET /api/v1/backtests?workspace_id=...for recent authorized runs.GET /api/v1/backtests/{id}for status, progress, or an authorized completed result.GET /api/v1/backtests/{id}/strategyfor a reusable JSON configuration.
live_eligible is false; it contains no exchange credentials, order authorization or deployment switch. A live system must separately review the market, fill model, risk controls and user approval. Backtest returns are historical simulations, not guarantees.