Documentation

dotQuant

Documentation · Section 4 of 6

Strategies: Idea to Live Signals

Write a strategy in plain English, backtest it honestly, run it live on closing bars, and route its signals to a broker or a webhook behind an explicit enable.

Writing a Strategy

Plain-English trading ideas, compiled and testable.

Open a symbol and switch the view toggle to Strategies. Describe a trading idea in plain English — for example: "Buy when the 20-day average crosses above the 50-day average, with a 5% stop loss."

Press Review: dotQuant compiles your prose into a precise, machine-readable strategy spec.

- The compiled spec is yours to inspect — view it pretty-printed, copy it, reuse it.
- The review tells you plainly whether your idea became runnable entry and exit rules.
- If it can't be compiled, you get a clear explanation rather than a silent failure.

Anonymous visitors can review strategies; running backtests requires an account.

Learn: From trading idea to testable rules

Running a Backtest

Test the reviewed strategy on real market data.

After a successful strategy review, set a trade quantity and press Backtest this in the strategy sheet.

- The backtest runs over the visible chart range — change the chart window to test a different period.
- Entry and exit markers are drawn on the price chart and stay visible when the sheet closes.
- Results stream back live; on desktop the strategy sheet docks beside the chart so nothing is covered.

Reading Backtest Results

Honest numbers, not a flattering simulation.

dotQuant's backtester is deliberately conservative:

- Signals fill at the next bar's open — never at the price that generated the signal (no look-ahead).
- Max drawdown is marked to market, measured on every bar, not only on closed trades.
- Open positions are reported as unrealized P/L, separate from realized P/L.
- Trading costs are charged on every fill.
- Stop losses execute during the run, not just in the spec.

The summary card reports realized and unrealized P/L, costs, win rate, max drawdown, and a buy-and-hold comparison over the same window. If an idea only works in a frictionless simulation, you'll see it here first.

Learn: What to check before trusting a backtest

Running a Strategy Live

The chart legend's play button — evaluation on every closing bar.

A backtested strategy can be run live: press the play button in the chart legend. From then on the platform evaluates the strategy whenever the feed closes a bar and records every buy/sell transition as a signal — drawn on the chart and kept in the signal history.

- Signal-only by design: running a strategy never places an order by itself. Where its signals go is a separate, per-destination decision — see Signal Routing below. The legend badge tells you which mode you are in: SIGNAL-ONLY (no enabled broker route) or LIVE (at least one).
- Pause stops evaluation without losing the configuration; play resumes it. The bin removes the strategy from the chart and retires its routes.
- The running state is durable — it survives reloads and lives on your account, not in the browser.

For agents: the same lifecycle is the run-a-strategy-live workflow — configure-algorithm, then run-algorithm / pause-algorithm / remove-algorithm, with decisions readable via the list-algorithm-signals query.

Signal Routing

Fan a strategy's signals out to your broker or webhooks — behind an explicit enable.

Signal Routing decides where each running strategy's signals flow. A route connects one strategy to one destination:

- Broker route: signals become orders on the named broker connection. You set the entry quantity; exits close what the route holds, capped by the account's real position — never a short. Sells are sized against a fresh position read, and a signal with no position to close is recorded as skipped, not traded.
- Webhook route: signals are delivered to your own HTTPS endpoint, HMAC-signed with the webhook's secret — for your own automation, journaling, or downstream systems.

The enable is the gate. Configuring a route never starts it: signals only flow after you explicitly enable the route (broker routes ask for a danger-style confirmation — real orders, capital at risk). Disable pauses the flow keeping the configuration; archive retires it. A re-created route always comes back disabled.

Every signal's execution outcome is recorded per route — dispatched, order placed, skipped, failed — and shown in the signal history, so you can audit exactly what each signal did.

For agents: configure-signal-routeenable-signal-route (high-impact, confirm with the user first) → outcomes on list-algorithm-signals; routes are listed by list-signal-routes.
How to inspect strategy rules on dotQuant, judge a backtest by costs and drawdowns, and keep research, market data and broker execution apart. Watch on YouTube · Pressing play loads YouTube's player.

Read the guide: From trading idea to testable rules: strategy specs and honest backtesting

All of Documentation

BETA