This is the hands-on, terminal-first version of backtesting — useful if you’re evaluating the engine locally before wiring anything into your own code. See Backtest & Tier Routes for the HTTP equivalent.

Run the whole tier 6–10 layer once

--dry flags mean exactly that: these print what would be computed without writing anything to state/. Use them freely while you’re evaluating.

Run an actual backtest

Or the equivalent over HTTP once your instance is running — see the full parameter reference and the biased flag explanation in Backtest & Tier Routes.

What to expect on a fresh install

With no closed, priced signals on record yet, this is the honest baseline:
  • decay_tracker reports unknown for every kind — not zero, not a placeholder score.
  • deprecation holds every kind at hypothesis — nothing has been running long enough to prove or disprove itself.
  • ranker --dry publishes no model rather than an undertrained one.
This is the designed behavior. Let the copy-trading engine and edge signals run for real (python -m ghostcopy, left running) for at least a few weeks before expecting these numbers to say anything. A backtest run against an empty history isn’t a bug report — it’s the same honesty rule the whole product follows: missing data is N/A, never a free score.

Run the test suite

If you’re evaluating the engine’s own correctness rather than a specific signal’s history:
Two tests cross-check the conviction breakdown against the real scorer over 2,000 randomized signal sets — useful if you’re modifying the ensemble and want a fast sanity check that the pieces still sum to the displayed score.
Scienter publishes impersonal market signals of general and regular circulation. Nothing here is investment, legal, or tax advice, or a recommendation to buy, sell, or hold any asset. Scienter is not a registered investment adviser or broker-dealer. Trading digital assets can result in the total loss of your funds — see Disclaimers for the full text.