.png&w=828&q=75)
The Refuser is an autonomous options agent for the Alpaca paper trading environment. It sells put credit spreads (21 to 35 DTE, short-leg delta 0.15 to 0.25, $1 to $5 wide) on a fixed universe of eight liquid names, sizing every ticket at 0.75% of equity read from the account at decision time. The differentiator is what it refuses. Every candidate passes nine deterministic gates: duration, short delta, width and credit, liquidity, underlying price, calendar and earnings (an unknown earnings date is a refusal), IV regime, portfolio shape, and net delta. All gates run on every candidate and every failure is recorded. There is no language model in the decision path. In the judged week the income strategy evaluated 204 candidates, took none, and refused all 204 across eight underlyings. The binding gate was width_credit on every single one: the credit on offer never paid for the width of the spread. Separately, one deliberate event trade was taken by a different driver under a different gate, seq 205, a five-contract SPY straddle filled at 3.93, and it is disclosed here rather than in a footnote. Orders are limit only, repriced with Black-Scholes off the live IEX underlying because free-tier option quotes are 15 minutes stale, and placed as multi-leg orders through Alpaca's REST Trading API. Exits: 50% GTC target placed at fill, delta stop, 21-DTE time exit, loss stop, Friday and event flatten. Every session, gate evaluation, ticket, fill and exit scan is appended to a hash-chained JSONL log. One command checks it: python3 verify.py reports CHAIN OK over 206 records, and the hosted demo runs the same verifier in the browser. 170 offline checks run with zero network and no API keys. Judged account: PA3YVMJ3YVDZ. AI-assisted development is disclosed.
4 Sep 2026