Spec-driven strategiesAuthor strategies as plain JSON-shaped TacticalSpecs. Same spec drives backtests today and live execution tomorrow — no rewrites.
Pluggable runtimeDataFeed, Executor, Calendar, and FeatureCache are interfaces. Reference impls ship in the box. Swap any layer without touching strategy code.
Content-addressed featuresIndicators are keyed by (spec, asset, date). Cache hits across runs. MemoryFeatureCache for in-process; bring your own for cross-process.
Faithful exchange calendarsNYSE (1885+) and LSE (1801+) calendars ported from pandas_market_calendars — era-varying weekmasks, special closes, royal events, the lot.
Parity-testedA 5.5-year regression gate proves the v0.4 dialect emits identical target weights to the v0.3 fluent API on the canonical SPY/QQQ/IEF strategy.
Type-safe end to endStrict TypeScript, ES modules, no untyped escape hatches. Strategies, features, and orders all carry their generic shape through the runtime.