
AeroQuant separates trading into three layers with a strict one-way boundary between them. A deterministic quant engine pulls live Alpaca stock and options data, computes momentum (EMA cross + 20-bar momentum), realized/implied volatility, expected move, and 25-delta skew, then builds an exact whitelist of tradeable option contracts (DTE 7–21, |delta| 0.45–0.70, spread ≤5% of mid, quote age ≤30s). An LLM reasoning layer (Trend, Volatility, News/Earnings agents feeding a Technical Manager and a Strategy Decision Agent) reads that whitelist plus news context and either picks one exact candidate_id or returns WAIT — it can never invent a contract. A deterministic Python layer then re-validates everything (candidate membership, single BUY leg, quantity, direction) before a separate Risk Manager recomputes exposure, max loss, and buying-power limits independently of the LLM's numbers, with a qualitative LLM sanity check as an advisory (non-overriding) layer on top. Executable strategies today are LONG_CALL and LONG_PUT on liquid, high-volume underlyings — no naked or multi-leg structures reach the broker. Safety controls include a hard paper-trading assertion that halts the process if the account isn't paper mode, an account-identity check before every entry cycle, idempotent order submission with client order IDs, broker-confirmed-fill reconciliation on every restart, a kill switch after 5 consecutive rejections or a 5%-equity daily loss, and TP/SL exits evaluated off the broker's own executable bid, not a theoretical midpoint. As of the latest audit (Sept 4, 2026), the system has run 71 symbol-level decisions across 15 logged cycles with zero orders submitted — the majority were WAIT, REJECTED, or blocked by the kill switch, which we read as the fail-safe design working as intended rather than a defect. We have not yet accumulated a closed-trade sample, so this submission does not claim a proven trading edge.
4 Sep 2026