ONE ENGINEER · 869 TESTS · 14 DAYS

The system.

Every component was specified in writing, adversarially reviewed, and test-gated before it touched the server. This page is the machine with the case off.

POLYMARKET KALSHI HYPERLIQUID SCANNER books · funding · rules MATCHER fingerprints · tiers SHADOW BOOK fees · depth · lanes THE JOURNAL · every decision, fill, skip, and rule edit, in one ledger

Six components, one bias.

REFUSAL BY DEFAULT
Scanner daemon
Three venue integrations polled continuously with per-venue budgets and failure accounting. When a lane goes quiet, the ledger says so out loud instead of going silent.
Resolution matcher
Fingerprints each market's settlement rules: sources, dates, operators, thresholds. A cross-venue pair trades only when every conjunct matches. Anything less is evidence, not a position.
Shadow book
A simulated bankroll priced against real fee curves, observed depth, and per-lane caps. It exists to earn the right to touch money, on the record.
Risk rails
Position caps, drawdown auto-halt, per-lane exposure limits, kill files the code cannot argue with, and a dead-man heartbeat that pages when the machine goes quiet.
Execution plumbing
Two-leg engine with an intent journal and verify-effects clients. Shipped deliberately disarmed: dry-run on, live keys absent, an arming checklist a human walks through.
Phosphor dashboard
A read-only ledger view on a private network. It renders what the journal says, never what marketing wants. Watch-only records can never show green.
UNDER THE HOODproduction
  • Python, asyncio, one process
  • SQLite ledger in WAL mode, ~300 MB
  • 869 automated tests on every merge
  • Adversarial review before every deploy
  • systemd units under hard memory caps
  • Runs on a $12 per month server
  • Dashboard reachable over Tailscale only
  • No LLM anywhere in the trade loop

Everything here is arithmetic.

KEYS AND FAILURE DISCIPLINE

There is no narrative layer in the machine. Fee curves are priced per leg at observed asks. Matching is a strict conjunction over settlement rules. Sizing is a minimum over bankroll caps and depth actually seen in the book. If the arithmetic does not clear, nothing else gets a vote.

And it is built to fail safely, because failure is the normal case in this domain:

KeysThe main key never leaves the operator's hardware. The server holds a restricted agent key that cannot withdraw.
ArmingExecution ships disarmed: dry-run on, live keys absent. A human walks a written checklist to arm anything.
HaltsKill files and a drawdown auto-halt the code cannot argue with. Position and lane caps bind at once.
WatchA dead-man heartbeat pages when the machine goes quiet. Silence is treated as failure, never as calm.

Built like it handles money, because one day it will.

PROCESS

Basis went from empty repository to a machine running unattended in fourteen days: venue behavior documented first, every component specified in writing, implemented test-first, and attacked in adversarial review before deploy. The speed is a product of the discipline, not a shortcut around it.

The same process is for hire, and it is not trading-specific: the identical spec-first, test-gated pipeline ships data platforms, internal dashboards, and operations tooling. Your venue, your strategy, your rails.

Request a build