.png&w=828&q=75)
Refusal Rails is an autonomous options agent on a dedicated Alpaca paper account (PA3PZGSB3W2E, $100,000), running unattended on Cloudflare Workers and Containers on a cron. The name is the thesis: most of the engineering is not about finding trades but the machinery that refuses them. AI LOGIC. Candidates are scored across independent signals and must clear a corroboration threshold. A full AI council reviews every opening action with a skeptic pass, triage and self-consistency checks. It fails CLOSED: a reviewer that crashes or times out causes a reject or defer, never a silent auto-approve. Spend is capped per tick and per month. RISK GATES. A book identity handshake requires config, storage bucket and broker path to agree before a tick starts, else it aborts. Orders are gated on Alpaca's own market clock rather than local time, so the guard cannot be wrong about a holiday or half day, and an unreadable clock counts as closed. The broker refuses at construction to run against any non-paper host. Order POSTs are never auto-retried: a retry on an ambiguous response turns one intended contract into two filled ones. Drawdown halts and PDT caps complete it. ALPACA INFRASTRUCTURE. Both transports, split by strength. REST owns orders, account and clock, since MCP option orders are market/limit only and this strategy needs the wider order-type surface. The official Alpaca MCP server owns options market data: chain discovery and snapshot enrichment. Chains are fetched over REST then asked of MCP, both answers recorded, so the integration is visible not asserted. STRATEGY. Several defined-risk sleeves on one risk budget: short-dated directional options (long single-leg, 1-3 DTE, delta 0.30-0.55, entries 10:00-11:30 ET); put credit spreads on a gross-profitability floor; cash-secured puts and rolls; equity momentum needing catalyst corroboration; and post-earnings drift. RESULT. Closed at $108,456 from the $100,000 seed, up 8.46%, with 564 refusals across 16 ticks.
4 Sep 2026