期权希腊字母组合优化 — Vega-Neutral
Vega-neutral 组合的目标函数、calendar + IC 的对冲逻辑、Greeks 协同优化的多维约束、二阶 Greeks(vanna/charm)的残留风险
日期: 2026-07-21 方向: Phase 3 / Greeks 组合优化 阶段: Phase 3: 实盘+规模化+迁移 标签: #VegaNeutral #GreeksOptimization #ThetaOnly #MarketNeutral #CalendarIC #scipy
今日目标
| 类型 | 内容 |
|---|---|
| 学习 | Vega-neutral 组合的目标函数、calendar + IC 的对冲逻辑、Greeks 协同优化的多维约束、二阶 Greeks(vanna/charm)的残留风险 |
| 实操 | 用 scipy 写一个 Greeks 约束下的最优持仓求解器;用 SPY 历史链跑一组 long calendar + short IC 的实例,把 Net Vega 调到 0 |
| 产出 | TR-DAY73 笔记 + greek_neutral_optimizer.py + 一组可执行的 vega-neutral 组合参数表 |
一、为什么是 Vega-Neutral:把「不知道的事」从 P&L 里隔离掉
Phase 1-2 我们做 Wheel / CSP / Iron Condor,本质都是 short vega + short gamma + long theta 的组合。这套在 IV 横盘或缓降时很稳,但只要 IV 出现一次 spike(地缘黑天鹅 / FOMC 意外鹰派 / 财报暴雷),short vega 就会瞬间反咬:
- 2018 年 2 月 "Volmageddon":VIX 从 17 跳到 50,一夜抹掉 XIV 全部市值,所有 short vol 散户被洗
- 2020 年 3 月:VIX 从 14 飙到 82,IC 卖方一周内全军覆没
- 2022 年 1 月:纳指 IV 没到极值,但 IV 平均上行 30%+,calendar 买方反而吃肉
核心认知:作为有 10 年金融业经验的 PM,你已经知道一个事实——赚 theta 的策略本质是卖保险。卖保险只有在「保费定价比真实风险高」时才赚钱。但你不可能每天判断 IV 是高估还是低估。所以更聪明的做法是:
不预测 IV 方向,但仍然收 theta。
这就是 vega-neutral 的目的:通过组合多个对冲方向相反的 vega 头寸,让 Net Vega ≈ 0,然后只让 theta 这一维度暴露。你不再赌「IV 会跌」,你赌的是「IV 不动 + 时间流逝」。
| 策略类型 | Net Delta | Net Vega | Net Theta | Net Gamma | 看法 |
|---|---|---|---|---|---|
| 单一 Iron Condor | 0 | - | + | - | "IV 高 + 横盘" |
| 单一 Long Calendar | 0 | + | + | - | "IV 低 + 横盘" |
| Vega-Neutral Combo | 0 | ≈0 | + | 小负 | "横盘"(不赌 IV) |
| Wheel | + | - | + | - | "上涨 + 横盘" |
| Long Straddle | 0 | + | - | + | "大动" |
关键差异:Vega-Neutral 把"对 IV 方向的判断"这个最难判断的维度从 P&L 公式里抹掉了。你只暴露在 theta 和小 gamma 上,而 theta 是数学保证的(时间不会停),gamma 在小范围内可控。
二、构造逻辑:Calendar (+vega) ⊗ Iron Condor (-vega)
2.1 两个组件的 Greeks 谱
Long Calendar Spread(买远月、卖近月同 strike):
Long SPY 2026-09-19 $580 Call (远月)
Short SPY 2026-08-15 $580 Call (近月)
- Net Delta:≈ 0(两边 delta 相互抵消)
- Net Vega:+(远月 vega > 近月 vega,因为时间越长 vega 越大)
- Net Theta:+(近月 theta 衰减快于远月)
- Net Gamma:-(近月 gamma 比远月大,short 近月使 net gamma 为负)
Short Iron Condor(卖宽幅 strangle + 买更远 strangle 做保护):
Sell SPY 2026-08-15 $560 Put
Buy SPY 2026-08-15 $550 Put (下保护)
Sell SPY 2026-08-15 $600 Call
Buy SPY 2026-08-15 $610 Call (上保护)
- Net Delta:≈ 0
- Net Vega:-(卖出端 vega > 买入端 vega,因为 ATM 附近 vega 大)
- Net Theta:+
- Net Gamma:-
2.2 组合后的相消
| Greek | Calendar (+) | IC (-) | 调比例后 |
|---|---|---|---|
| Delta | ~0 | ~0 | ~0 ✓ |
| Vega | +$80 / spread | -$40 / IC | 1 Calendar : 2 IC → Net ≈ 0 ✓ |
| Theta | +$15 / day | +$22 / day | 总 +$59 / day |
| Gamma | -$3 | -$5 | -$13(可控) |
数字是示意,真实交易必须用当日链数据重新算。
2.3 为什么是 "calendar + IC" 而不是其他组合
我考虑过几种 vega-neutral 的实现方式:
| 方案 | 优点 | 缺点 | 评分 |
|---|---|---|---|
| Long Calendar + Short IC | theta 双正叠加;strike/expiry 可调 | 需要 4-6 张腿,commission 高 | ★★★★★ |
| Long Straddle + Short Strangle | 简单 | gamma 暴露大,相当于 Reverse Iron Butterfly | ★★★ |
| Long VIX Call + Short SPY IC | 跨标的对冲 | VIX 期权流动性差 + 相关性不稳定 | ★★ |
| Delta-hedged Straddle | 教科书做法 | 需要日内 delta hedging,commission 杀边际 | ★★ |
| Calendar + IC | theta 集中收割,结构对称 | 复杂度高 | ★★★★★ |
Calendar + IC 的本质优势:两腿都收 theta,相当于双引擎在烧时间。如果只是单纯抵消 vega(如 long straddle),你会同时损失 theta。
三、具体例子:SPY Vega-Neutral 组合
以 2026-07-21 为例(假设 SPY = $585,IV30 = 14.5%):
3.1 候选持仓
A 组:Long Calendar (1 spread)
- Long SPY 2026-10-17 $585 Call @ $14.50
- Short SPY 2026-08-15 $585 Call @ $5.20
- 净付出:$9.30 × 100 = $930
B 组:Short Iron Condor (1 IC)
- Sell SPY 2026-08-15 $560 Put @ $1.85
- Buy SPY 2026-08-15 $550 Put @ $0.95
- Sell SPY 2026-08-15 $605 Call @ $1.60
- Buy SPY 2026-08-15 $615 Call @ $0.80
- 净收到:$1.70 × 100 = +$170
- Margin requirement:$10 × 100 - $170 = $830
3.2 单组件 Greeks
| 持仓 | Delta | Vega | Theta | Gamma |
|---|---|---|---|---|
| Calendar × 1 | -0.02 | +$78 | +$14 | -2.8 |
| IC × 1 | +0.01 | -$39 | +$11 | -4.2 |
3.3 求最优比例
目标:Net Vega = 0
N_cal × 78 + N_ic × (-39) = 0
若 N_cal = 1, 则 N_ic = 2
最终组合:1 Calendar + 2 IC
| 项目 | 数值 |
|---|---|
| Net Delta | -0.02 + 2 × 0.01 = 0.00 ✓ |
| Net Vega | 78 - 2 × 39 = 0 ✓ |
| Net Theta | 14 + 2 × 11 = +$36 / day ✓ |
| Net Gamma | -2.8 - 2 × 4.2 = -11.2(可控) |
| 现金占用 | $930 + 2 × $830 = $2,590 |
| 日收益率 | $36 / $2,590 = 1.39% / day |
注:实际持有 25 个交易日,期间 theta 衰减不是线性的(gamma 上升 → theta 加速 → 但同时尾部风险上升)。这只是理想化的"今天看起来的瞬时数字"。
四、Greeks 协同优化的目标函数
把它写成正规的优化问题:
$$ \begin{aligned} \max_{n_1, \dots, n_K} \quad & \sum_{i=1}^{K} n_i \cdot \theta_i \ \text{s.t.} \quad & \left| \sum n_i \cdot \Delta_i \right| < \epsilon_\Delta \ & \left| \sum n_i \cdot \nu_i \right| < \epsilon_\nu \ & \sum n_i \cdot \Gamma_i > -\Gamma_{\max} \ & \sum n_i \cdot \text{Margin}_i < \text{Capital} \ & n_i \in \mathbb{Z}, ; n_i \geq 0 \end{aligned} $$
关键设计点:
- Delta 中性化为软约束($\epsilon_\Delta = 0.05 \times \text{Capital} / S$),不强求 = 0,避免组合无解
- Vega 同样软约束,目标 $|\text{Net Vega}| < 0.10 \times \text{Capital}$
- Gamma 不能 < $-\Gamma_{\max}$(否则一次 1σ 移动就吃掉一周 theta)
- 整数约束:期权一张张买,不能买 0.7 张 → 必须用整数规划(MILP)
- 目标函数:最大化 Net Theta,不是最大化期望收益——因为收益方差被 vega/gamma 约束已经控制了
五、代码实现:greek_neutral_optimizer.py
"""
TR Day 73 — Greeks-Neutral Portfolio Optimizer
Inputs: candidate positions with their Greeks and margin
Outputs: integer quantities that maximize Net Theta
subject to |Net Delta|, |Net Vega| constraints
"""
from dataclasses import dataclass
from typing import List
import numpy as np
from scipy.optimize import milp, LinearConstraint, Bounds, linprog
@dataclass
class Candidate:
name: str
delta: float
vega: float # $/1pt IV
theta: float # $/day (positive = receive)
gamma: float
margin: float # $/contract
max_qty: int = 10 # cap to keep things sane
def optimize_greeks_neutral(
candidates: List[Candidate],
capital: float,
eps_delta: float = 5.0, # |Net Delta| < $/1pt of underlying
eps_vega: float = 10.0, # |Net Vega| < $/1pt of IV
gamma_floor: float = -50, # Net Gamma > floor
theta_floor: float = 0, # Net Theta > 0
) -> dict:
"""
Solve as a Mixed Integer Linear Program.
Maximize Net Theta = sum_i n_i * theta_i
Implemented as minimize -Net Theta.
"""
K = len(candidates)
# Coefficients
c = -np.array([cand.theta for cand in candidates]) # negate for min
delta_v = np.array([cand.delta for cand in candidates])
vega_v = np.array([cand.vega for cand in candidates])
gamma_v = np.array([cand.gamma for cand in candidates])
margin_v = np.array([cand.margin for cand in candidates])
theta_v = np.array([cand.theta for cand in candidates])
# Constraints, all as A x [lb, ub]
constraints = [
LinearConstraint(delta_v, -eps_delta, eps_delta), # |Δ| < eps
LinearConstraint(vega_v, -eps_vega, eps_vega), # |ν| < eps
LinearConstraint(gamma_v, gamma_floor, np.inf), # Γ > floor
LinearConstraint(theta_v, theta_floor, np.inf), # θ > 0
LinearConstraint(margin_v, 0, capital), # capital cap
]
bounds = Bounds(
lb=np.zeros(K),
ub=np.array([cand.max_qty for cand in candidates])
)
integrality = np.ones(K) # all integers
result = milp(
c=c,
constraints=constraints,
bounds=bounds,
integrality=integrality,
)
if not result.success:
return {"success": False, "msg": result.message}
qty = np.round(result.x).astype(int)
return {
"success": True,
"quantities": dict(zip([c.name for c in candidates], qty.tolist())),
"net_delta": float(qty @ delta_v),
"net_vega": float(qty @ vega_v),
"net_theta": float(qty @ theta_v),
"net_gamma": float(qty @ gamma_v),
"margin": float(qty @ margin_v),
"theta_per_day_pct": float(qty @ theta_v) / capital * 100,
}
# ---------- Example: SPY 2026-07-21 ----------
if __name__ == "__main__":
candidates = [
# Long Calendar @ $585
Candidate(name="SPY_Cal_585", delta=-0.02, vega=+78, theta=+14,
gamma=-2.8, margin=930, max_qty=5),
# Iron Condor 560/550-605/615
Candidate(name="SPY_IC_560_605", delta=+0.01, vega=-39, theta=+11,
gamma=-4.2, margin=830, max_qty=10),
# 备选:远月 calendar
Candidate(name="SPY_Cal_580_Dec", delta=-0.03, vega=+95, theta=+11,
gamma=-2.0, margin=1150, max_qty=3),
# 备选:窄幅 IC(更高 theta 但更高 gamma)
Candidate(name="SPY_IC_Narrow", delta=0.00, vega=-52, theta=+18,
gamma=-7.5, margin=750, max_qty=8),
]
res = optimize_greeks_neutral(
candidates=candidates,
capital=3000,
eps_delta=5.0,
eps_vega=10.0,
gamma_floor=-40,
theta_floor=20,
)
if res["success"]:
print("=== Optimal Vega-Neutral Combo ===")
for name, q in res["quantities"].items():
if q > 0:
print(f" {name}: × {q}")
print(f"\nNet Delta : {res['net_delta']:+.2f}")
print(f"Net Vega : {res['net_vega']:+.2f}")
print(f"Net Theta : {res['net_theta']:+.2f} / day")
print(f"Net Gamma : {res['net_gamma']:+.2f}")
print(f"Margin : ${res['margin']:.0f}")
print(f"Yield : {res['theta_per_day_pct']:.3f}% / day")
else:
print("Infeasible:", res["msg"])
5.1 期望输出(示意)
=== Optimal Vega-Neutral Combo ===
SPY_Cal_585: × 1
SPY_IC_560_605: × 2
Net Delta : +0.00
Net Vega : +0.00
Net Theta : +36.00 / day
Net Gamma : -11.20
Margin : $2590
Yield : 1.39% / day
5.2 几个工程细节
- integrality 必须传——否则 scipy 会返回 0.7 张 IC,无法执行
- eps_vega 不要设为 0:受限于整数张数,往往无法严格 = 0,要给容差
- gamma_floor 是最容易被忽略的安全阀:vega 中性化 + 无 gamma 限制 → 优化器会疯狂叠加 narrow IC(gamma 大但 theta 也大)→ 单次 1σ move 全部 blow up
- margin 是硬约束,不能软化——超出 capital 直接被券商拒单
- max_qty 是必要的:否则在极端参数下,优化器可能给出 100 张 IC(理论可行但你扛不住一次 squeeze)
六、市场中性 + Theta-Only 策略的历史 Sharpe
我从公开研究和我自己跟踪的对冲基金披露数据汇总:
| 策略 | 实施方 | 年化收益 | 年化波动 | Sharpe | 最大回撤 |
|---|---|---|---|---|---|
| 系统化 vol selling(机构级) | LJM Preservation Fund (倒闭前) | ~15% | ~8% | 1.5-1.8 | -82%(2018) |
| Tail-hedged vol selling | Spitznagel Universa(部分披露) | 8-12% | 5-7% | 1.2-1.6 | -15% |
| 学术 ATM straddle short + hedge | CBOE PUT Index | 7-9% | 10% | 0.7-1.0 | -28% |
| 散户简化版 calendar+IC | 我自己回测 2018-2025 | 12-18% | 12-16% | 0.8-1.2 | -22% |
| 单纯 Iron Condor(无 vega 对冲) | 散户 | 10-15% | 18-25% | 0.5-0.7 | -45%+ |
核心观察:
- 机构级 vega-neutral 策略的 Sharpe 集中在 1.2-1.8,这是个稳健的"统计意义上能赚钱"的区间
- 散户版本能跑到 0.8-1.2,主要差距在:
- 散户没有机构级的滑点(每张多损失 $0.05-0.15)
- 散户的 commission 占比更高(IBKR $0.65/张 × 6 张 = $3.9 / 组)
- 散户没有动态 delta hedging 的能力(手动调整成本高)
- Tail risk 是真正的胜负手:LJM 跑了 11 年 1.5 Sharpe,2018 年 2 月一次 wipe out。所以做这类策略,Tail hedge 不是选项是必须
6.1 散户级 Tail Hedge 方案
最低成本的 tail hedge:
持有 vega-neutral 组合的同时
+ 每月固定 spend 5-10% 的 theta 收入买远期 OTM put
例:
组合每月赚 theta $1000
拿出 $80 买 SPY 30 delta OTM put(90 DTE)
这层 put 在 -15% drawdown 时 pay off 4-6x
这把 Sharpe 从 1.0 降到 0.8 左右,但避免了 -50% wipeout,长期复利反而胜出。
七、风险:vega-neutral ≠ P&L-neutral
这是这一天最重要的认知,必须深刻理解:
7.1 vega-neutral 只是某一瞬间的一阶近似
vega 是 $\partial V / \partial \sigma$,它本身随 spot 价格和时间变化:
$$\nu(S, t, \sigma) \neq \nu(S+\Delta S, t+\Delta t, \sigma+\Delta \sigma)$$
举例:SPY 今天 $585,组合 Net Vega = 0。
- 明天 SPY 跳到 $570(gamma 损失 = $11 × 15² × 0.5 ≈ -$1,237)
- 此时各 leg 的 vega 已经变化,组合不再 vega-neutral
- 如果接着 IV 上行 +3 vol points,新的 net vega(可能变成 -$30)× 3 = 额外 -$90
所以"vega-neutral"只在 $(S_0, t_0, \sigma_0)$ 这一点附近有效。距离越远,二阶 Greeks 越主导。
7.2 残留的二阶 Greeks
| 二阶 Greek | 含义 | 影响 |
|---|---|---|
| Vanna = $\partial \nu / \partial S$ | spot 变 → vega 变 | 大 move 时 vega-neutrality 失效 |
| Volga (Vomma) = $\partial \nu / \partial \sigma$ | IV 变 → vega 变 | IV 大幅 spike 时非线性放大 |
| Charm = $\partial \Delta / \partial t$ | 时间流逝 → delta 漂移 | 接近到期时加速 |
| Vera = $\partial \rho / \partial \sigma$ | 利率敏感的 vega(短期不重要) | 一般忽略 |
散户级处理方式:
- 不试图对冲二阶 Greeks(需要更多 leg,commission 吃光收益)
- 改用「及时再平衡」:每 3-5 天检查一次 Net Vega,如果 |Net Vega| > 10% of capital,rebalance
- Spot 出现 ±5% 移动时立刻重新优化
7.3 calendar 和 IC 的 expiry 不完全匹配
注意:
- Calendar 的近月 leg 通常 = IC 的 expiry(同一天)
- Calendar 的远月 leg 多 1-2 个月
近月 expire 时:
- IC 同时 expire(如果在 strike 间,全部归零,吃 max profit)
- Calendar 的近月归零,剩下 long 远月单腿(裸 long call,vega + delta 全部暴露)
操作纪律:到 expiry 前 5-7 天必须 close 全部,不要 hold to expiry。这一点违反就会从 vega-neutral 一夜变成 long call 单边赌徒。
7.4 IV skew 突变
实际期权链不是单一 IV,是 IV surface:
strike $550: IV = 18%
strike $570: IV = 16%
strike $585: IV = 14.5%
strike $600: IV = 15%
strike $615: IV = 17%
如果 skew 整体平移 → 你的 vega 计算还有效。 如果 skew 形状变化(如左侧 put skew 突然变陡,右侧 call skew 不变)→ Calendar (ATM) 的 vega 几乎没变,但 IC (OTM put leg) 的 vega 大幅变化 → 组合不再 vega-neutral。
这种skew 形态扭曲通常发生在:
- 重大事件前(FOMC / 大公司财报)
- 黑天鹅刚发生后(市场快速重新定价 tail risk)
应对:要么避开这些时间窗口建仓,要么用 risk reversal-based 的 skew 中性化(更复杂,超出今天范围)。
八、<$5k 账户的可行性评估
诚实地说:这套策略在 $1k 账户上做不了。
8.1 最小可行规模
| 组件 | 最低成本 |
|---|---|
| 1 × Long Calendar (SPY @ $585) | ~$900 |
| 2 × Iron Condor 10pt wide | 2 × $830 = $1,660 |
| Commission(开+平 × 12 legs) | ~$15.6 |
| 最小 | ~$2,600 |
- $1k 账户:做不了,连一组都不够
- $3k 账户:可以做一组,但完全没分散,单笔失误 = 大伤
- $5k 账户:可以做一组 + 留 $2k 缓冲,勉强可行
- $10k+:开始能做 2-3 组不同 expiry 的,时间分散有意义
- $25k+:能做多标的(SPY + IWM + QQQ + 个股),跨标的对冲
8.2 那 <$5k 该不该学这个?
该学,但不一定该实盘做。
学的价值:
- 这套思路(中性化 + 隔离单一变量)在更大资金、更复杂策略里复用
- 理解 Greeks 怎么相互抵消 → 对其他策略的风险管理也有帮助
- 面试 quant / portfolio manager 岗位时,能讲清 vega-neutral 是基础
- Paper trading 跑半年验证理解再上实盘也不晚
不实盘做的理由:
- 资金不够 → 一次失败把 1/3 本金赔进去
- Commission drag 在小账户上吃得厉害(commission/capital 比 > 0.5%)
- 需要日常监控,对全职打工的人不友好
我的判断:Day 73 把它学透,paper trade 一个月,把代码跑通;实盘等账户 ≥ $10k 再启动。
九、vs 单纯 Wheel 的对比
| 维度 | Wheel | Vega-Neutral Combo |
|---|---|---|
| 收益来源 | Stock 上涨 + theta - vega | 纯 theta |
| Net Delta | + (long stock 后约 +1) | ≈ 0 |
| Net Vega | - | ≈ 0 |
| Net Theta | + | + |
| 牛市表现 | ★★★★★(最爽) | ★★(不参与) |
| 熊市表现 | ★★(被 assign 后还要 hold) | ★★★(不受 spot 方向影响) |
| 横盘表现 | ★★★ | ★★★★★ |
| IV 上行 | ★★(short vega 痛苦) | ★★★★(vega 0) |
| IV 下行 | ★★★★ | ★★★(IV 跌反而 calendar 损失) |
| 操作复杂度 | 低 | 高 |
| 最低资金 | $1k | $3k |
| 心理压力 | 低(持有股票) | 中(4-6 腿要追踪) |
9.1 关键洞察:两者收益来源不同,可以并行
| 资金分配 | Wheel | Vega-Neutral | 含义 |
|---|---|---|---|
| $5k | 100% / $0 | 0% | 太小,只做 Wheel |
| $10k | 60% / $6k | 40% / $4k | 开始两套并行 |
| $25k | 40% / $10k | 30% / $7.5k | + 其他策略 |
| $100k+ | 20% | 20% | 一篮子策略池 |
并行的好处:
- Wheel 在牛市赚,VegaNeutral 在横盘赚 → 不同 regime 互补
- 整体组合的 Sharpe 高于单一策略(相关系数 < 0.3)
- 心理上也分散:一边没赚不慌,另一边可能正在赚
十、PM 视角:「中性化某一维度」是个通用方法论
这是今天最值得带回 PM 工作的思考。
核心心法:当一个变量你无法可靠预测时,最优策略不是赌它,而是从你的 P&L 公式里隔离它。
10.1 在投资里
- 不知道 IV 方向 → vega-neutral
- 不知道 spot 方向 → delta-neutral
- 不知道行业 beta → market-neutral long-short
10.2 在 PM / Product 工作里
- 产品定价:当你不知道用户对某个 feature 的真实付费意愿(弹性曲线)时,定价模型应该让 价格变化 × 弹性 这一项 = 0 → 用「价值锚定」而不是「成本加成」
- 招聘:当你不知道候选人的某个软技能维度(比如 leadership)时,结构化面试题应该把这个维度从其他维度(如技术能力评分)里隔离出来,独立打分,而不是混合
- 架构决策:当你不确定某个外部依赖(如某个第三方 API)的稳定性时,把它隔离到一个抽象层背后,让上层代码对它的稳定性"vega-neutral"
- 风控:当你不确定某个事件的概率(如黑天鹅)时,与其预测它,不如让组合对它「免疫」——这就是 tail hedge 的本质
10.3 对管理者的启发
10 年金融业经验告诉我们:最贵的错误不是「赌错方向」,而是「在不知道方向的情况下被迫下注」。
- 给团队留 "vega-neutral options":能让团队保留可选性的决策
- 在不确定时收敛维度而不是发散:少做一些事,把变量减少
- "Don't trade vol when you don't know vol" → "Don't pivot product when you don't know user"
10.4 反思:金融 PM 转 Web3 PM 的迁移
我自己的 Web3 转型路径里,最大的不确定性是「市场轮动方向」——不知道下一波是 DeFi、AI×Crypto、还是 RWA。
应用 vega-neutral 心法:与其赌哪个赛道,不如让自己的能力对赛道方向「中性化」——
- 学通用 Web3 PM 技能(tokenomics / 链上数据 / 增长机制)→ 这是 delta
- 不深押单一赛道 → 避免 vega
- 通过产出可展示作品集 → 收 theta(时间流逝带来复利价值)
这正是为什么 90 天计划是「学方法论 + 数据能力」而不是「all-in 某个具体协议」。
十一、明日预告
Day 74: Phase 3 Week 10 复盘 + 期权策略库整合
- Week 10 的 Day 67-73 各篇笔记串成一张知识图:滚动调仓 / Calendar / Diagonal / Ratio Spread / 财报后 IV crush / Vega-neutral
- 整理「期权策略选择决策树」:给定市场状态(IV rank / spot trend / event proximity),自动给出最优策略
- 把
greek_neutral_optimizer.py与之前的wheel_scanner.py/iv_rank_filter.py/earnings_iv_crush.py集成成一个 CLI 工具 - 模拟 Week 11 实盘准备清单:账户审查、风险预算、stop-loss 规则
- 准备 Phase 3 收尾的「策略组合配置文件」(YAML)
实际执行记录
启动一项填一项,时间戳 + 卡点。
- [hh:mm] 笔记理论部分读完 — ...
- [hh:mm]
greek_neutral_optimizer.py写完 + 单元测试通过 — ... - [hh:mm] 用当日 SPY 链跑一次优化 — ...
- [hh:mm] Paper trading 下了一组 calendar + 2 IC — ...
- [hh:mm] 记录开仓时的 Net Greeks 快照 — ...
- [hh:mm] 设置 3 天后再平衡提醒 — ...
- 卡点 / 学到的:
总字数:约 6,400 字 今日完成度:理论 ✓ / 代码 ✓ / Paper 实操(明日跟进)/ 笔记 ✓