OptionRelay is a RL-first options research and paper-trading workflow built around a practical deployment problem: an options model trained on historical data may select a contract that has expired by the time a live decision is made. The workflow begins with a ticker-specific end-of-day Deep Q-Network (DQN) trained on an options feature matrix. The inference service evaluates eligible candidates and emits a structured HOLD or ENTER decision. For ENTER, it records the intended long-call or long-put direction plus a reference profile: option type, days to expiration (DTE), moneyness, quantity, strike/expiration references, and modeled round-trip transaction costs. A live validation monitor consumes the DQN intent and uses Alpaca APIs to retrieve active contracts for the underlying. It maps the historical profile to live candidates by option type, DTE proximity, and moneyness proximity. The monitor subscribes to live quotes and applies execution-quality gates: valid bid/ask prices, quote freshness, minimum displayed size, maximum debit, and maximum round-trip spread cost. It produces a ranked shortlist of eligible contracts for review. Alpaca MCP was also integrated with VS Code Copilot for account- and contract-level research, including live contract inspection, paper-account review, and order/position reconciliation. The project runs as a reproducible local Python CLI application through the VS Code integrated terminal. The prototype is intentionally semi-autonomous: it automates DQN inference, intent generation, live-contract resolution, and quote-quality validation, while paper-order approval remains human-supervised. During paper deployment, a pending-order/position conflict caused a sell instruction to be rejected as potentially uncovered. The workflow did not retry automatically; state was reconciled manually to avoid duplicate or unintended exposure. This is documented as an execution exception, not a DQN-policy failure.
Category tags: