---
run_id: 22
date: "2026-03-11 15:49:28 UTC"
question: "sell QQQ/SPY put credit spread or naked put, optimal DTE 6-80 days, optimal delta, profit target, stop loss"
total_hypotheses: 35
confirmed: 0
rejected: 0
pending: 35
rounds: 10
---

# 研究迴圈報告 — Run #22

> 研究主題：sell QQQ/SPY put credit spread or naked put, optimal DTE 6-80 days, optimal delta, profit target, stop loss
> 產生時間：2026-03-11 15:49:28 UTC

## 執行摘要

本次研究迴圈共進行 **10** 輪，產生 **35** 個假說。
最高信心假說（confidence=0.9200）：
> SMA200 trend filter is the single most powerful regime filter: only sell QQQ naked puts when price is above the 200-day simple moving average. This filter improves Sharpe from 0.297 to 0.971 (3.3x imp...

## 各輪摘要

| 輪次 | Agent 數 | 假說數 | 持續時間 | Token 用量 |
|------|----------|--------|----------|------------|
| R1 | 3 | 10 | — | — |
| R2 | 3 | 5 | — | — |
| R3 | 3 | 5 | — | — |
| R4 | 3 | 5 | — | — |
| R5 | 3 | 5 | — | — |
| R6 | 3 | 5 | — | — |
| R7 | 2 | 0 | — | — |
| R8 | 2 | 0 | — | — |
| R9 | 2 | 0 | — | — |
| R10 | 2 | 0 | — | — |

## 輪次評分（Keep/Discard Gate）

| 輪次 | 綜合分數 | Sharpe | Drawdown | 樣本量 | 決策 | 改善% |
|------|----------|--------|----------|--------|------|-------|
| R1 | 0.1596 | 0.0000 | 0.5000 | 0.0000 | KEEP | — |
| R1 | 0.1596 | 0.0000 | 0.5000 | 0.0000 | KEEP | — |
| R2 | 0.1365 | 0.0000 | 0.5000 | 0.0000 | DISCARD | -14.47% |
| R3 | 0.1607 | 0.0000 | 0.5000 | 0.0000 | KEEP | 0.69% |
| R4 | 0.1956 | 0.0000 | 0.5000 | 0.0000 | KEEP | 21.72% |
| R5 | 0.1464 | 0.0000 | 0.5000 | 0.0000 | DISCARD | -25.15% |
| R6 | 0.1645 | 0.0000 | 0.5000 | 0.0000 | DISCARD | -15.90% |
| R7 | 0.1250 | 0.0000 | 0.5000 | 0.0000 | DISCARD | -36.09% |
| R7 | 0.1250 | 0.0000 | 0.5000 | 0.0000 | DISCARD | -36.09% |
| R8 | 0.1250 | 0.0000 | 0.5000 | 0.0000 | DISCARD | -36.09% |
| R9 | 0.1250 | 0.0000 | 0.5000 | 0.0000 | DISCARD | -36.09% |
| R10 | 0.1250 | 0.0000 | 0.5000 | 0.0000 | DISCARD | -36.09% |

## 假說清單

### Round 1

- ⏳ **[None]** (confidence=0.0000)
  Selling puts at 30-45 DTE and closing at 50% profit yields higher risk-adjusted returns than 7-14 DTE or 60-80 DTE strategies, because theta decay accelerates most in the 30-45 DTE window while gamma risk remains manageable.
- ⏳ **[None]** (confidence=0.0000)
  Selling puts at 5-8% OTM (strike/spot ≈ 0.92-0.95, ~0.20 delta proxy) provides the best risk/reward tradeoff compared to deeper OTM (10-15%, ~0.10 delta) or closer ATM (2-5%, ~0.30 delta).
- ⏳ **[None]** (confidence=0.0000)
  Buying a protective put $5 (QQQ) or $5 (SPY) below the short strike reduces max loss by 70-85% while only reducing premium by 25-40%, resulting in superior risk-adjusted returns.
- ⏳ **[None]** (confidence=0.0000)
  Closing at 50% of max profit yields the best Sharpe ratio by reducing time in trade (and therefore gamma/gap risk), even though it leaves premium on the table.
- ⏳ **[None]** (confidence=0.0000)
  QQQ short puts generate 15-25% higher premium than SPY at equivalent moneyness due to higher implied volatility, but SPY provides better risk-adjusted returns due to broader diversification and lower tail risk.
- ⏳ **[None]** (confidence=0.0000)
  Selling puts at 30-45 DTE and closing at 50% profit yields higher risk-adjusted returns than 7-14 DTE or 60-80 DTE strategies, because theta decay accelerates most in the 30-45 DTE window while gamma risk remains manageable.
- ⏳ **[None]** (confidence=0.0000)
  Selling puts at 5-8% OTM (strike/spot ≈ 0.92-0.95, ~0.20 delta proxy) provides the best risk/reward tradeoff compared to deeper OTM (10-15%, ~0.10 delta) or closer ATM (2-5%, ~0.30 delta).
- ⏳ **[None]** (confidence=0.0000)
  Buying a protective put $5 (QQQ) or $5 (SPY) below the short strike reduces max loss by 70-85% while only reducing premium by 25-40%, resulting in superior risk-adjusted returns.
- ⏳ **[None]** (confidence=0.0000)
  Closing at 50% of max profit yields the best Sharpe ratio by reducing time in trade (and therefore gamma/gap risk), even though it leaves premium on the table.
- ⏳ **[None]** (confidence=0.0000)
  QQQ short puts generate 15-25% higher premium than SPY at equivalent moneyness due to higher implied volatility, but SPY provides better risk-adjusted returns due to broader diversification and lower tail risk.

### Round 2

- ⏳ **[strike_selection]** (confidence=0.7500)
  For QQQ/SPY 30-45 DTE put selling, the 5-8% OTM strike zone delivers the highest risk-adjusted returns (Sharpe > 1.0) compared to 2-5% OTM (too much gamma risk) and 10-15% OTM (insufficient premium after transaction costs). The 5-8% zone sits at the liquidity/premium sweet spot: avg bid $4.78, avg s...
- ⏳ **[strike_selection]** (confidence=0.7000)
  For put credit spreads, $5-10 wide spreads on QQQ (approximately 1.5-3% of underlying) maximize return-on-risk because the long put at this width costs only 20-30% of the short put premium while capping max loss at $500-1000. Wider spreads ($20-50) show declining credit/width ratio (12.7% vs 19.0%) ...
- ⏳ **[strike_selection]** (confidence=0.5500)
  Selecting strikes based on highest open interest/volume concentration (rather than fixed % OTM) improves fill quality and reduces slippage by 30-50%, resulting in 0.3-0.5 higher Sharpe ratio vs fixed-distance methods. Market makers provide tighter spreads at volume-concentrated strikes.
- ⏳ **[strike_selection]** (confidence=0.6000)
  A regime-adaptive strike selection that widens OTM distance during high-VIX regimes (use put premium as VIX proxy: when 30DTE ATM put costs >4% of underlying, shift from 5% to 10% OTM) reduces max drawdown by 40-60% while sacrificing only 15-20% of annual return, because extreme premium environments...
- ⏳ **[strike_selection]** (confidence=0.5000)
  SPX weekly options (5-7 DTE) at 2-3% OTM deliver higher premium per unit of risk than QQQ monthly options (30-45 DTE) at 5-8% OTM, due to SPX's superior liquidity, $0.05 tick size, and faster theta decay in the final week, despite higher intraday gamma risk.

### Round 3

- ⏳ **[expiration_choice]** (confidence=0.8200)
  21 DTE is the optimal sweet spot for QQQ put selling: highest risk-adjusted Sharpe proxy (0.318) with 89% win rate, best premium-per-sqrt(DTE) efficiency, and manageable tail risk (P5 = -$6.49 vs -$33.92 for 60 DTE)
- ⏳ **[expiration_choice]** (confidence=0.8800)
  7 DTE weekly puts have the highest win rate (96.6%) but worst risk-adjusted returns due to extreme negative skew: occasional catastrophic losses (-$34.51 worst) dwarf the tiny average premium ($0.47)
- ⏳ **[expiration_choice]** (confidence=0.7500)
  50% profit target exit on 30 DTE puts dramatically improves capital efficiency: 93% of trades hit 50% profit within median 9 days, effectively converting a 30-day trade into a 9-day trade with halved risk exposure
- ⏳ **[expiration_choice]** (confidence=0.8000)
  Friday expirations offer superior liquidity (avg volume 666 vs 325-425 for other days) and tighter effective spreads (4.03% vs 4.13-6.35%), making them optimal for put selling entry/exit
- ⏳ **[expiration_choice]** (confidence=0.8500)
  60+ DTE puts are suboptimal for selling: lowest Sharpe proxy (0.091), lowest win rate (82.1%), and worst tail risk (P5=-$33.92), despite collecting highest absolute premium ($6.48). The variance risk premium decays faster than theta at longer tenors.

### Round 4

- ⏳ **[position_sizing]** (confidence=0.7800)
  Quarter-Kelly (f*/4) position sizing with 21 DTE 5-8% OTM QQQ naked puts delivers superior risk-adjusted returns (Sharpe > 1.2) compared to fixed fractional sizing, because full Kelly oversizes given the negative skew of option selling (occasional 5-10x losses vs typical 0.3-0.5x gains). With empiri...
- ⏳ **[position_sizing]** (confidence=0.7200)
  Volatility-scaled position sizing (reduce allocation by 50% when ATM put premium exceeds 2x its 60-day median) reduces max drawdown by 40-60% while sacrificing only 10-20% of CAGR, because high-premium environments (VIX spikes) signal elevated tail risk that is not adequately compensated by the extr...
- ⏳ **[position_sizing]** (confidence=0.8000)
  Limiting maximum concurrent positions to 3-5 (instead of allowing unlimited overlapping entries) improves risk-adjusted returns by preventing portfolio-level correlation blow-ups. With 21 DTE trades closing in median 9 days (at 50% PT), a systematic daily entry could accumulate 5-10 overlapping shor...
- ⏳ **[position_sizing]** (confidence=0.5500)
  Anti-martingale sizing (increase allocation by 25% after each consecutive win, reset to base after any loss) outperforms fixed sizing by 15-30% CAGR because put selling has 85-90% win rates, creating long winning streaks (5-15 consecutive wins) where geometric compounding amplifies returns. The asym...
- ⏳ **[position_sizing]** (confidence=0.6500)
  Margin-regime-aware sizing (using Reg-T margin rules: naked put margin = max(20% of underlying - OTM amount, 10% of strike) + premium) reveals that the effective capital requirement is 3-5x higher than premium-based sizing suggests, making the true return-on-capital for naked put selling 5-8% annual...

### Round 5

- ⏳ **[exit_rules]** (confidence=0.8200)
  H1: A combo exit rule (50% profit target + 2x premium stop loss + close at 7 DTE remaining) applied to 21 DTE 5% OTM QQQ/SPY naked puts will achieve Sharpe > 1.2 and reduce max drawdown by 50-70% vs hold-to-expiry, because each component addresses a distinct risk: the profit target captures theta de...
- ⏳ **[exit_rules]** (confidence=0.7200)
  H2: VIX-regime-conditional exit rules (tighter stops when implied volatility is elevated: 1.5x stop when ATM put premium > 2x its 60-day median, vs 2.5x stop in normal regimes) will improve Sharpe by 0.2-0.4 vs fixed stops, because elevated IV regimes produce both larger premiums AND larger adverse ...
- ⏳ **[exit_rules]** (confidence=0.6200)
  H3: A trailing stop mechanism (after 40% of premium is captured, set a floor at 25% profit — i.e., if the position moves from 40% profit back to only 25% profit, close immediately) will outperform a fixed 50% profit target by capturing more premium on positions that decay quickly while protecting ga...
- ⏳ **[exit_rules]** (confidence=0.7000)
  H4: Rolling losing positions to the next monthly expiry (when a 21 DTE put is at a loss with 7 DTE remaining, close and re-sell at 21 DTE at the same or wider OTM distance) destroys risk-adjusted returns compared to simply taking the loss and re-entering fresh, because rolling locks in a loss AND re...
- ⏳ **[exit_rules]** (confidence=0.5800)
  H5: For the 50% profit target exit rule, the optimal implementation uses mid-price (bid+ask)/2 rather than bid for the exit trigger, improving fill accuracy. But more importantly, adding a 'time decay floor' — never close before day 3 even if 50% target is hit on day 1-2 — will improve Sharpe by fil...

### Round 6

- ⏳ **[regime_filter]** (confidence=0.9200)
  SMA200 trend filter is the single most powerful regime filter: only sell QQQ naked puts when price is above the 200-day simple moving average. This filter improves Sharpe from 0.297 to 0.971 (3.3x improvement), raises win rate from 88.6% to 94.0%, and reduces max loss from -30.2% to -12.6%. In 2022,...
- ⏳ **[regime_filter]** (confidence=0.8800)
  The optimal composite regime filter combines SMA200 + 20-day momentum > -8%: Sharpe=0.964, WR=93.9%, excluding only 25.6% of days. Adding ATM premium thresholds (1.5x or 2x of 60-day median) provides negligible incremental benefit because the SMA200 filter already captures most regime shifts. The mo...
- ⏳ **[regime_filter]** (confidence=0.7200)
  February is the single worst calendar month for put selling (Sharpe=-0.334, mean PnL=-2.58%), driven by Feb 2020 crash (-18.2% mean loss) and Feb 2022/2025 drawdowns. A seasonal overlay that avoids February when QQQ is below SMA200 eliminates the worst tail events with minimal opportunity cost. Howe...
- ⏳ **[regime_filter]** (confidence=0.8200)
  ATM put premium as a vol regime proxy: when ATM premium exceeds 2x its 60-day median, expected PnL is strongly negative (Sharpe=-0.479, WR=64.4%). This captures VIX-spike-equivalent events using options-market data directly. However, this filter fires too rarely (only 3.9% of days) to be a primary f...
- ⏳ **[regime_filter]** (confidence=0.8500)
  The 2022 bear market was fundamentally untradeable for naked put selling regardless of filters — even the 11 days QQQ was above SMA200 in early Jan 2022 had Sharpe=-0.968 because the 21-day forward returns were negative. This confirms that regime filters work by AVOIDING entire bear market periods, ...

## 負面結果（已排除的方向）

- **R2** [strike_selection] For QQQ/SPY 30-45 DTE put selling, the 5-8% OTM strike zone delivers the highest risk-adjusted returns (Sharpe > 1.0) compared to 2-5% OTM (too much g...
  失敗原因：Composite score 0.1365 below baseline
  分數：0.1365，交易數：0
- **R5** [exit_rules] H1: A combo exit rule (50% profit target + 2x premium stop loss + close at 7 DTE remaining) applied to 21 DTE 5% OTM QQQ/SPY naked puts will achieve S...
  失敗原因：Composite score 0.1464 below baseline
  分數：0.1464，交易數：0
- **R6** [regime_filter] SMA200 trend filter is the single most powerful regime filter: only sell QQQ naked puts when price is above the 200-day simple moving average. This fi...
  失敗原因：Composite score 0.1645 below baseline
  分數：0.1645，交易數：0
- **R7** [volatility_surface] Round 7 research on volatility_surface
  失敗原因：Composite score 0.1250 below baseline
  分數：0.1250，交易數：0
- **R7** [volatility_surface] Round 7 research on volatility_surface
  失敗原因：Composite score 0.1250 below baseline
  分數：0.1250，交易數：0
- **R8** [correlation] Round 8 research on correlation
  失敗原因：Composite score 0.1250 below baseline
  分數：0.1250，交易數：0
- **R9** [entry_timing] Round 9 research on entry_timing
  失敗原因：Composite score 0.1250 below baseline
  分數：0.1250，交易數：0
- **R10** [strike_selection] Round 10 research on strike_selection
  失敗原因：Composite score 0.1250 below baseline
  分數：0.1250，交易數：0

## 錯誤日誌摘要

- **backtest_crash**: 2 次

最近錯誤：

- [backtest_crash] Script r22_position_sizing_qqq_puts.py failed (rc=1): Traceback (most recent call last):
  File "/home/francis/project/b
- [backtest_crash] Script r22_strike_selection_qqq_puts.py failed (rc=1): Traceback (most recent call last):
  File "/home/francis/project/

## 方法評分

| Agent | 方法 | 成功率 | 提出數 | 確認數 | 樣本數 |
|-------|------|--------|--------|--------|--------|
| researcher | general | 0.00% | 5 | 0 | 5 |
| researcher | general | 0.00% | 10 | 0 | 10 |
| researcher | strike_selection | 0.00% | 5 | 0 | 5 |
| researcher | expiration_choice | 0.00% | 5 | 0 | 5 |
| researcher | position_sizing | 0.00% | 5 | 0 | 5 |
| researcher | exit_rules | 0.00% | 5 | 0 | 5 |
| researcher | regime_filter | 0.00% | 5 | 0 | 5 |

## 建議與後續行動

- 35 個假說仍待驗證，可增加輪次或手動檢視。
- 最常見錯誤類型為 **backtest_crash**（2 次），建議優先修復。
