Methodology

How the Paper Trading Agent Decides: the Gate

By Rohan Fernandes, Founder, Optionscanner · Updated 2026-09-22 · Educational reference, not investment advice

The paper trading agent does not ask a model whether to trade. Its confidence score is a deterministic weighted blend of seven auditable subscores, liquidity, volatility regime, structure fit, event risk, portfolio fit, tape fit and directional bias, with weights that sum to one. A set of blocking flags, such as an earnings date before expiry or a bid-ask spread wider than the limit, forces a reject regardless of the blend. A candidate below 50 is journaled and rejected, one at 75 or above sits in the approve band, and everything between waits for a human. Full automation exists only on paper; in a production account every order needs a click.

How these pages were written: from the engine source as deployed in September 2026, with thresholds quoted as the code holds them. Thresholds change with releases and the changelog records each change. This is a description of arithmetic, not advice about what to trade.

Source module: strategy/auto_agent.py, function confidence_score and the CONFIDENCE_WEIGHTS table.

What are the seven subscores and their weights?

Each subscore is 0-100 and the blend is a weighted sum:

SubscoreWeightWhat it reads
Liquidity0.18Bid-ask width as a share of mid, open interest and volume on the short leg
Volatility regime0.18Implied-volatility rank and NVRP against the entry floors
Structure fit0.18Credit received per dollar of width, probability of profit, and skew against the side
Event risk0.14Earnings and scheduled macro events inside the holding window
Portfolio fit0.09The open-risk budget and per-symbol concentration the entry would leave
Tape fit0.13Strike placement against the chart, on its own page
Directional bias0.10Whether the agent's own directional read opposes the vertical

The weights are not equal, and the reason is recorded in the code: liquidity, structure fit and portfolio fit gave up weight when tape fit joined, because their floors are already hard-enforced elsewhere by the entry filters and the risk budget, so they carry less marginal information than the one signal nothing else in the pipeline sees. Directional bias was carved out of the other six proportionally rather than added on top, so the weights still sum to one.

What are the blocking flags?

A blocking flag forces a reject no matter how the blend scores. The flags are: bid-ask too wide, implied-volatility rank unavailable, NVRP unavailable, credit below the minimum credit-to-width, debit above the maximum debit-to-width, an earnings date before expiry, a critical macro event within a day, and a chain that is not real time. Two of these are worth a second look. "Unavailable" is a block, not a pass: the agent never treats a number it could not compute as if it had come back favorable. And "chain not real time" blocks because the spread-based checks are only valid on a live quote; a delayed feed reads spreads three to five times wider than they are.

What are the entry filters the subscores read against?

The house defaults, each of which the user can change in the agent settings and which the agent surface records as an adopted rule set: 25 to 50 days to expiry, a short-strike delta of 0.15 to 0.25, implied-volatility rank of at least 35, NVRP of at least 0.10, at least 250 open interest and 50 contracts of volume on the short leg, an average leg bid-ask width of no more than 25 percent of mid, a credit of at least 20 percent of width, and a quiet period of 15 minutes after the open before any entry. Risk limits sit beside them: a maximum loss per trade of 6 percent of agent capital, total open risk of 40 percent, and a daily loss stop of 5 percent, realized plus unrealized.

What happens at each confidence level?

A second, statistical opinion can sit on top: when a meta-label model is trained, full-auto entries additionally require its probability to clear a floor. An absent model degrades to confidence-only gating, never to no gating, and the dual gate can only subtract from what full-auto would do, never add to it or block the human-approval path.

Why does production always need a click?

Because the split is enforced in code, not configuration. Unattended submission is refused outside the paper planes regardless of settings: a production order needs a human approval and a typed confirmation that is passed end to end and checked again inside the order path. An action staged by the AI assistant always requires the deliberate confirm in the queue, however well it scores, and a spoken "yes" is not a confirmation. The one unattended production path is a standing authorization for entries below a dollar limit the user has typed in, and that path exists for entries only. The agent's rejections are audited on their own page, and the agent review describes what the first months of paper trading showed.

Frequently asked questions

How does the paper trading agent decide whether to enter?

With a deterministic weighted blend of seven 0-100 subscores: liquidity 0.18, volatility regime 0.18, structure fit 0.18, event risk 0.14, portfolio fit 0.09, tape fit 0.13 and directional bias 0.10. Blocking flags force a reject regardless of the blend, a score below 50 is rejected, 75 and above is the approve band, and the range between waits for a human.

What blocks a candidate outright?

A bid-ask spread wider than the limit, an implied-volatility rank or NVRP that could not be computed, a credit below the minimum credit-to-width or a debit above the maximum, an earnings date before expiry, a critical macro event within a day, or a chain that is not real time.

Can the agent place a live order on its own?

No. Unattended submission is refused outside the paper planes in code, regardless of settings. A production order needs a human approval and a typed confirmation that is checked again inside the order path; the one exception is a standing authorization for entries below a dollar limit the user has typed in.

Sources

More in Methodology: how the engine computes: How Exit Rules Are Applied to Open Positions · How the Conviction Score Is Computed · How a Structure Is Chosen: Signal, Volatility, VIX

Educational reference. Optionscanner is a software tool. It is not a broker-dealer, an investment adviser, or a fiduciary, and nothing on this page is investment advice or a recommendation to buy or sell any security. Options involve risk and are not suitable for every investor; read the Characteristics and Risks of Standardized Options before trading. Examples use hypothetical numbers for illustration only.