The loop
1
Characterize the idea
Before a backtest, the Agent studies how your entry signal has behaved on history: how often price moved your way, how far, and how far against you. A weak history is flagged early.
2
Run the backtest
You see trades, equity, drawdown, costs and the days or conditions where the setup does poorly. Commission and slippage are included and shown, so a gross profit that costs eat is visible.
3
Search for a better filter
The Agent scores candidate filters from a catalog against your own trades. A suggestion is shown only when it passes statistical checks. A weak baseline gets new directions instead of a filter that would hide the weakness.
4
Apply or revert
Accept a change and the Agent reruns it; revert it and you are back to the earlier version. Every version is kept.
5
Validate
Check the result outside the sample you tuned on before you trust it.
Validation checks
- Walk-forward: tune on one stretch, test on the next, repeat.
- Deflated Sharpe: discounts a result for the number of variations you tried.
- Parameter stability: does the result survive small changes to the numbers, or does it live on one lucky setting?
- Edge decay: is the edge shrinking over time?
- Capacity: could this size trade without moving the market?
check if this holds up out of sample.
Sweeps and decomposition
Run the same strategy across assets or timeframes, or break a result down by session, day type, regime, timing and how far trades ran for and against you. These show where the edge lives.Bring a strategy from elsewhere
Describe a setup, or import one from source code, and the Agent turns it into an explicit, versioned specification. Anything it cannot apply exactly is listed, not skipped.Take it with you
Export a strategy as NinjaScript or as a report.What a result tells you honestly
- The data window and the number of trades are always named.
- A sample too small to judge is called out; the Agent does not call it an edge.
- A position that carried past the end of a day or a contract roll is reported.