Standards
The non-negotiable contracts every bot conforms to. If a bot doesn't implement these, it doesn't ship.
The product model
Polytraders is a non-custodial platform where users author the bots that trade, we supply the guardrails that keep them safe, and an AI layer helps users decide, place, and monitor. These five pages define that boundary. Read them before the mechanical contracts — they explain what the contracts are protecting.
What you are building
The product model. Three actors, one trust boundary, four invariants. Read this before any other standard.
User bots
Users author the bots that trade. The narrower UserStrategy contract, sandbox budgets, and the rules.yaml authoring format.
RiskGate
Exactly one code path signs an order. The mandatory guardrail chain every intent passes, and what a user may not switch off.
Non-custodial signing
Where keys live, what a session-key grant may authorise, and how grant, revoke, and signature refusal behave.
AI assist
Trade determination, placement assistance, and position monitoring. All advisory, all through the chain, never Trade authority.
Bot contracts
The mechanical standards every bot we supply conforms to.
Bot interface
The canonical Bot<I,O> contract every bot implements. Same shape, different internals.
Typed schemas
MarketSnapshot, OrderIntent, RiskVote, ExecutionPlan, ReportEnvelope and seven more — TypeScript + JSON Schema, downloadable.
Reason-code registry
Single source of truth for every reason code emitted by every bot. Reporting and dashboards depend on this.
Config & defaults
Naming rules, environment handling, override precedence, version pinning.
Live modes
off · shadow · advisory · enforced · quarantine — what each mode is allowed to do, and how to promote between them.
Test pack
Unit / integration / property / failure-injection — what every bot must ship before promotion.