Three parts. Nothing hidden.
We build the models. You run the engine. Your broker holds your money. Here's exactly what each part does — and what it can never do.
We build the models
Our cloud ingests market data — order books, options flow, sector moves — and our ML models compress that noise into simple directional signals. Every strategy is backtested, signed, and published to the library where anyone can inspect it. Community authors can publish too; the same checks apply to their models as to ours.
You run the engine
The engine is a small program you download and run on your own machine. It receives signals, decides what to trade, and places orders — locally. You decide what runs, when it runs, and when it stops. There is no remote kill-switch, and safety limits you set are enforced by your machine, not by our promise.
Your broker holds your money
Orders execute through your own Alpaca or Interactive Brokers account, using API keys you paste into a config file on your machine. We never see your credentials, your positions, or your funds. If we disappeared tomorrow, your money would be exactly where it is today — with your broker.
One node, many bots
People mix these up, so here's the difference:
The engine itself. One process, one connection to market data. It does the heavy lifting once, no matter how many strategies you run.
Lightweight strategy profiles running inside your node. Each one gets its own tickers, sizing, and limits — and its own paper or live equity curve you can track.
How you know a bot is honest
Every bot can carry a verification card — a signed backtest that draws the cone of results it should produce. Once it's running, we plot live results against that cone and tell you plainly whether it's on track, below expectation, or suspiciously above it. No card, no spin: the bot is labeled unverified and the leaderboard ignores it.
See a live reality-gap report →Signals travel one way: cloud → your node. Nothing about your account travels back. Portfolio weights use Hierarchical Risk Parity with per-bot caps; crowding detection throttles entries when too many nodes chase the same trade; order slicing uses variance-scheduled child orders so the swarm's flow looks like ordinary retail flow.
Full parameter docs live in the API reference, and the engine itself is open for inspection — fork it, read it, change it.
Ready to run your first node?
Free to start. Ten minutes from signup to first signal.