Skip to content
Trader Console

Strategies

Code that scoresbars, checked beforeit is believed

A strategy here is a function over a series: given the bars up to now, produce a score. That shape is deliberately narrow, because it is the shape a machine can audit for the one bug that makes every strategy look profitable.

What the shape buys you

It can be truncated

Because the strategy is a function of the series, the platform can run it against the series cut short and compare. If the score at a given bar changes when later data is removed, the code read the future — and it is refused, not annotated. You cannot get this property from a strategy that is an arbitrary program with its own data access.

It reads the platform’s series, not its own

The same computed indicators the screener and the backtester use, with the same warm-up. A strategy that fetched its own data would be tested against numbers the live system does not produce, and the difference would show up as unexplained live divergence months later.

It runs sandboxed

In a container with no network and a bounded lifetime, with its output collected as artifacts. Anything sized by the data has to be an artifact rather than printed: standard output is capped and the excess is discarded silently, which is a very effective way to lose the half of a result you needed.

It cannot promote itself

A strategy that backtests well is backtested, and that is all it is. Moving it toward live is a human act with a scope attached, against a risk policy that was in force at the time. Nothing here has a path from "scored well" to "trading your money".

Questions about writing strategies

What can the code import?

A numeric and data-analysis runtime, prepared as an image. No network. If your idea needs an external service at scoring time, it is not a strategy the platform can audit or reproduce.

Can I use a machine-learning model?

Yes, and there is a separate contour for it — training as a job, the model stored and referenced, and a parity check that the model reproduces its own predictions through the inference path. A swapped column moves probabilities enough to matter, so that check is not ceremony.

How much history can it see?

Around two years, deepening over time, and that is a real ceiling on what can be tested rather than a setting. A strategy that needs a decade is not testable here and the honest answer is to say so.

What happens if my code crashes?

The run fails with the traceback as an artifact. A failed run is a failed run — it is not reported as a strategy with no signals, which is the version of this that wastes a week.

Bring a strategy you already trust

Run it against the audit and see whether it still looks the same.