Plugin Ecosystem · open source

Connect
Everything

Extend StratCraft with exchange connectivity, advanced optimization, and systematic quant patterns: without touching the core engine.

100+
exchanges
3
plugins live
6
community

Plugin Architecture : extend, don't fork.

StratCraft plugins follow a clean interface contract. Add new data sources, optimization algorithms, or execution adapters by implementing a standard plugin interface. The core engine remains unchanged.

StratCraft CoreC++23 · deterministicplugin contract: v1— PLUGIN INTERFACE —DataSourceCCXT · Polygon · IBOptimizerFrankWolfe · MeanVarSignalEnricherSimons · ensembleExecutionAdapterNexusFIX · paperRiskFilterVaR · DD · limitsyour pluginimplement & ship

The plugin contract
: five methods.

Implement one Python class against the typed Plugin protocol. The core registers it on startup; you get a slot in the Network graph for free.

plugins/my_signal_source.py
PYTHON 3.12
# Implement one class. Register it. Done.
from stratcraft.plugin import Plugin, PluginKind, Bars, Signal

@Plugin.register(kind=PluginKind.SignalSource)
class MySignal(Plugin):
    name    = "my-signal"
    version = "0.1.0"

    def setup(self, cfg: dict) -> None:
        self.window = cfg.get("window", 20)

    def on_bar(self, bars: Bars) -> Signal | None:
        zscore = (bars.close[-1] - bars.close[-self.window:].mean())
        return Signal(strength=zscore, ttl=bars.bar_seconds)

    def teardown(self) -> None: ...

Community Plugins plugins.

All plugins are open source. Browse the community repository, fork existing plugins, or contribute your own. The plugin ecosystem grows with every contributor.

Build a plugin in an afternoon.

The SDK ships with type stubs, a local registry, a hot-reload dev server, and golden test fixtures for every plugin kind.

Start Your Signal Factory

Free tier includes the C++ backtest engine, regime detection, and YFinance + Dukascopy data: everything you need to start building at scale.