返回交易笔记
TR Day 72

ETF 衰减套利 — VXX / UVXY 长期空头

VXX / UVXY / SVXY / 杠杆 ETF 的结构性衰减机理;contango roll cost;daily reset 的 path-dependence;2018 Volmageddon / 2020-03 / 2024-08 三次反例

2026-07-20
Phase 3: 实盘+规模化+迁移
VXXUVXYSVXYETFDecayContangoLeverageDecayVolmageddonTailRisk

日期: 2026-07-20 方向: Phase 3 / ETF 衰减 阶段: Phase 3: 实盘+规模化+迁移 标签: #VXX #UVXY #SVXY #ETFDecay #Contango #LeverageDecay #Volmageddon #TailRisk


今日目标

类型内容
学习VXX / UVXY / SVXY / 杠杆 ETF 的结构性衰减机理;contango roll cost;daily reset 的 path-dependence;2018 Volmageddon / 2020-03 / 2024-08 三次反例
实操vxx_decay_check.py 计算 VIX term structure slope;定义 paper-only 信号阈值;建立 short VXX 的「不做实盘」清单
产出TR-DAY72 笔记 + 衰减检测脚本 + 个人 <$5k 决策树 + 三次崩盘历史数据表

一、为什么 Day 72 要专门讲衰减 ETF:业内人人皆知,但绝大多数人做错

Phase 3 进入到「实盘+规模化」阶段,市场上有一类策略的「年化收益」看起来好得不真实:

「过去 14 年短 VXX 年化 +40%」 「短 UVXY 年化 +60%」 「inverse leverage ETF holder 长期都被打爆」

数据本身是真的——VXX 从 2009 年发行到今天的累计回报是 -99.96%(split-adjusted)。这不是夸张,是 ETN 招股说明书披露的事实。

但请记住一个 PM 视角的核心问题

「平均赢家 + 偶尔大输」的策略,期望值正,破产概率也正

衰减 ETF 的短仓策略本质上是在卖深度尾部保险:90% 的时间它是免费午餐,10% 的时间它会把你吃掉。业内有大量基金做过这件事,绝大多数已经不存在了

今天的目标不是教你怎么做,而是教你:

  1. 它为什么会衰减(机理)
  2. 它历史上最坏能多坏(数据)
  3. 为什么 <$5k 个人账户几乎不应该做空头(结构性原因)
  4. 如果一定要 expression,正确的 risk-defined 写法是什么

这种「了解清楚但选择不做」的能力,比知道怎么做更值钱


二、衰减 ETF / ETN 大全

2.1 主要品种对比

代码全称跟踪标的结构杠杆管理费历史年化备注
VXXiPath Series B S&P 500 VIX ST Futures ETNVIX 短端期货(1-2 月加权)ETN(无担保票据)1x0.89%-30 ~ -40%业内长空首选
VIXYProShares VIX Short-Term Futures ETF同 VXXETF(基金结构)1x0.85%-30 ~ -40%VXX 的 ETF 版
UVXYProShares Ultra VIX Short-Term FuturesVIX 短端期货ETF1.5x(2018 前是 2x)0.95%-50 ~ -70%衰减更快但暴涨更猛
SVXYProShares Short VIX Short-Term Futuresinverse VIX 短端ETF-0.5x(2018 前是 -1x)0.95%+20 ~ +30%短 VXX 的「替代品」
XIV(已 delist)VelocityShares Daily Inverse VIXinverse VIXETN-1x1.35%2018 单日 -90%,强制 termination教科书级反面案例
TQQQProShares UltraPro QQQNasdaq 100ETF3x0.84%取决于路径牛市 +200%,震荡市快速 decay
SQQQProShares UltraPro Short QQQNasdaq 100 inverseETF-3x0.95%长期看 -90%+短期对冲可,长期 holder 必亏
SPXUProShares UltraPro Short S&P 500S&P 500 inverseETF-3x0.91%长期 -90%+同 SQQQ 逻辑

2.2 ETF vs ETN 的法律结构差异(这条很多人忽略)

维度ETF(基金)ETN(票据)
法律性质独立资产池发行方的无担保债务
发行方破产持有人受保护持有人变债权人,可能血本无归
跟踪误差有(来自管理费、税务、roll)无(合约义务,但有 credit risk)
提前 termination极少VXX 招股书允许发行方在某些条件下强制赎回
典型品种UVXY, SVXY, TQQQVXX, VXZ

为什么重要:2018-02 XIV 就是 ETN 触发了 termination clause(单日跌幅触发)→ 持有人当晚结算价就是「事实清算价」,没有第二天的机会。VXX 本身也有同样的条款。short VXX 的人不需要担心 termination,但 long VXX 的「保险买家」要知道这一点。

2.3 为什么 UVXY 从 2x 降到 1.5x、SVXY 从 -1x 降到 -0.5x

2018-02-05 Volmageddon 之后,ProShares 主动把 UVXY 杠杆从 2x 调到 1.5x、SVXY 从 -1x 调到 -0.5x。原因:

  • XIV 当晚因为 inverse 1x 杠杆在 VIX 单日 +115% 的情况下账面归零
  • SVXY (-1x) 当时也跌了 -91%,差点 trigger termination
  • ProShares 评估:「再来一次同样的事,UVXY 会自爆,做空 SVXY 的对手方会赖账」
  • 降杠杆 = 减少 ETF 自身的 path-risk

这对策略的影响:今天做空 UVXY 比 2018 前「安全」,但也「无聊」——衰减率从历史的 -70% 降到 -50% 左右。


三、衰减来源:三股力量同时往下拉

3.1 Contango Roll Cost(最主要来源,占衰减的 60-70%)

VIX 期货 term structure 大多数时间是 contango(远月高于近月):

现货 VIX:        14.0
1 月 future:    15.5
2 月 future:    16.5
3 月 future:    17.2
4 月 future:    17.8

VXX 持有 1 月 + 2 月期货的加权组合,每天都要从 1 月 roll 一部分到 2 月。roll 的动作 = 卖 1 月、买 2 月 = 高买低卖

数学:假设 contango 月差 +1(VIX 15.5 → 16.5),每月 roll 1/30 的仓位:

  • 单日 roll 损失 ≈ 1/30 / 15.5 ≈ -0.21%
  • 月化 ≈ -6%
  • 年化 ≈ -50%

但 VIX term structure 不总是 contango:

  • 正常市场:80% 时间 contango → VXX 慢慢衰减
  • 危机市场:进入 backwardation(近月>远月)→ VXX 反向飙升

3.2 Leverage Decay(杠杆 ETF 独有,UVXY/TQQQ/SQQQ 都有)

杠杆 ETF 的承诺是「单日的 N 倍」,不是「长期的 N 倍」。这导致 path-dependent loss:

假设 QQQ 第一天 +10%,第二天 -10%(净变化 -1%)

QQQ:  100 → 110 → 99  (-1%)
TQQQ: 100 → 130 → 91  (3x 单日,复利后 -9%)
SQQQ: 100 → 70 → 91   (-3x 单日,复利后 -9%)

两边都亏。这就是为什么 TQQQ 和 SQQQ 在震荡市同时下跌。volatility 越高,decay 越快。

Volatility Drag 公式

Long-term return ≈ N × μ - (N² × σ²) / 2
  • μ:标的的算术平均回报
  • σ:标的的波动率
  • N:杠杆倍数

对 TQQQ (N=3):σ² 项乘 9 倍。Nasdaq 年化波动率 25% 时:

  • 单日 decay ≈ 0.5 × 9 × (0.25)² / 252 ≈ 0.11% 每天
  • 年化 decay ≈ -25%

这是在标的零回报假设下的「免费衰减」。

3.3 管理费 + 税收 + 现金 drag

项目VXXUVXYTQQQ
管理费0.89%0.95%0.84%
K-1 税表无(ETN)部分有
美国 30% 股息税(对 NP holder)N/AN/A略有影响

每年 1% 看似不多,但叠加 contango + leverage decay 后就是「最后那一刀」。


四、VXX 长期数据:眼见为实

4.1 VXX 历史价格(split-adjusted)

日期事件价格累计回报
2009-01-30上市(前身 VXX,已 mature 后由 VXX Series B 接续)$30,000+(多次反向拆股调整后)基准
2011-08美国债务上限危机短期 spike +40%-
2014-12油价崩盘短期 spike +30%-
2015-08China 黑色星期一spike +50%-
2018-02-05Volmageddon单日 +33%-
2020-03-18COVID 高点单月 +200%-
2022-01-24美联储紧缩开始spike +25%-
2024-08-05日元 carry trade unwind单日 +42%-
2026-07当前~$12-99.96%

4.2 VXX 月度回报分布(2018-2024 7 年统计)

月度回报区间出现次数(共 84 月)频率累计影响
< -20%89.5%衰减期
-20% ~ -10%1821.4%衰减期
-10% ~ 0%3541.7%衰减期
0% ~ +10%1214.3%平静期
+10% ~ +30%78.3%小规模 spike
+30% ~ +100%33.6%中等危机
> +100%11.2%Black swan

关键观察

  • 73% 的月份下跌 → 短仓平均胜率高
  • 5% 的月份单月涨 30% 以上 → 短仓单月可能爆仓
  • 1.2% 的月份单月翻倍 → 用过 leverage 的全部回零

4.3 短 VXX 累计回报模拟(不计杠杆,不带 stop loss)

2014-01 投入 $10,000 short VXX,每月 roll 一次维持 short notional 不变:
- 2018-01 (4 年): $10,000 → $58,000 (+480%)
- 2018-02-05 单日: -$28,000 mark-to-market loss
- 2018-02-28: $58,000 → $32,000 (-45% 单月)
- 2020-02-29 (6 年): $32,000 → $52,000
- 2020-03-31: -$32,000 单月 → $20,000 (-60%)
- 2024-12-31 (10 年): $20,000 → $44,000

10 年 +340%,年化 ~16%。**但**有 3 个月经历了 -45% / -60% / -38% 的回撤。

任何用 margin 放大 2x 的人:2018-02 和 2020-03 至少一次爆仓。用 5x 的人:100% 爆仓。


五、短 VXX 策略(业内经典写法)

声明:以下是教育性描述,不是建议。<$5k 账户不应该做。

5.1 经典版本

1. account size: $100,000+
2. short 100 shares VXX(notional ~$1,200,占账户 1.2%)
3. hold 1 month
4. 月底平仓重开(roll position)
5. 永远不加杠杆
6. 永远不在 backwardation 期间加仓
7. 任何时候账户回撤 >5% → 全部平仓 30 天不再做

为什么 100 shares:因为单月最差 +200% 的尾部,100 股 ≈ $2,400 损失 ≈ 账户 2.4%。这是「单笔不可能崩你」的仓位上限。

5.2 「机构」版本(Forefront, AGFiQ, LongTail Alpha 等)

  • 100% short VXX 被禁止作为单一策略(基金管理人责任)
  • risk-defined 组合:
    • long SVXY(capped downside)+ long VIX puts(cap to upside spike)
    • 或:put spread on VXX(cost-defined)
    • 或:systematic switching:contango 高时进,backwardation 出

5.3 这些机构的下场

基金策略结局
LJM Preservation and Growthshort vol(含 VIX 期货)2018-02-05 单日 -82%,关闭
Catalyst Hedged Futuresshort S&P 期权2017-08 -20%,缩水 60%
OptionSellers.comnaked short crude options2018-11 客户账户变成负数,公司倒闭
Volatility Income Fund (多个)short XIV / VXX 衍生2018-02 重创
1x ETF holders (XIV)hold XIV 长期2018-02-05 当晚 terminate,-90%

共同点:在 spike 来临前,每一只都展示着令人羡慕的 Sharpe(3+)


六、为什么 <$5k 个人账户不应该 short VXX

6.1 五个结构性原因

原因解释
1. Margin Call Riskshort stock 占用 150% 维持保证金。$5k 账户最多 short ~$3,300 notional VXX。但 spike +100% 时账户立刻负 ~$3,300,强平 + 加追保通知
2. 理论无限风险short stock 损失没有上限(不像期权权利金)。VXX 历史最高单月 +200%,理论可以单月翻 5 倍
3. 心理承受能力你能承受眼睁睁看着账户 24 小时从 $5k 跌到 $1k吗?大多数人不能,下意识就会在最低点平仓
4. 一次失败摧毁多年用 4 年时间从 $5k 滚到 $15k,2018-02-05 一晚回到 $5k 甚至 $0。复利路径被打断,等于多年作废
5. 流动性 + 滑点危机时 VXX 价差扩大 10 倍。你想平仓时市价单可能在 spike 高点成交,paper trade 的「假装平仓价」完全不可信

6.2 「但是历史 backtest 显示 +40% 年化啊」

这是 survivor bias + path-blind 的典型例子:

回测告诉你的:average path,平均 +40%
回测不告诉你的:你在 +40% 之前要经历 -90%
回测假设的:你能在 -90% 时继续持仓,并能在融资保证金通知发出时补足
现实条件:你没那么多钱补保证金 → 强平 → 永远拿不到反弹

Kelly Criterion 视角

  • 平均收益 +40%/年
  • 单年最大损失 -100%(理论上)
  • 即使概率只有 1%,Kelly 算出来的最优仓位 = 0%

任何「Sharpe 看起来 >3」的策略,先问自己是不是在卖未定价的尾部保险


七、替代方案:如果你坚信 contango 衰减,这样做不会让你破产

7.1 方案对比

方案资金占用最大损失上行潜力适合 <$5k
A. short VXX 100 shares~$3,300 + margin无限月化 ~5%❌ 绝对不
B. long SVXY全额最多 -100%(=买入金额)月化 ~3%✓ 但仓位 ≤10%
C. VXX put(短期)premiumpremiumpremium 的 5-10 倍✓ 风险 defined
D. VXX put spreadnet debitnet debit有限✓ 性价比最高
E. VIX put(直接)premiumpremiumpremium 的 3-5 倍✓ 但 OPRA 数据要订阅 VIX index options
F. 完全不做000✓✓✓ 默认选项

7.2 推荐路径:D(VXX put spread)

假设 VXX 现价 $12,预期 1 个月后跌到 $10

Buy 1x VXX Jul $12 put @ $0.80
Sell 1x VXX Jul $10 put @ $0.20
Net debit: $0.60 = $60

Max loss: $60(权利金)
Max gain: $200 - $60 = $140($2 spread - debit)
Breakeven: $11.40
胜率:~60%(contango 月份)
盈亏比:2.3x

这才是 <$5k 个人账户表达「我相信 VXX 衰减」的正确方法

  • 损失上限 = 你愿意付的「研究学费」
  • 胜率合理但不是 90% 的「假胜率」
  • 不需要 margin
  • 不需要 24/7 盯盘
  • 心理承受范围内

7.3 不推荐 SVXY long 的原因

虽然 SVXY 是「capped downside」,但 2018-02-05 单日 -91%,2020-03 单月 -60%。它的「capped」是 100%(归零),不是「合理范围内」。如果你持有 $500 SVXY 在 2018-02-05 → 第二天剩 $45。这跟 short VXX 在心理上没差。

仓位规则:如果一定要做 SVXY long,限制在总账户 ≤5%,且任何 backwardation 信号出现立刻 100% 平仓。


八、代码:vxx_decay_check.py

8.1 设计目标

  • 拉取 VIX 现货 + VIX1 + VIX2 + VIX3 期货数据
  • 计算 term structure slope(contango 程度)
  • 输出「今天是 short-vol 友好还是 dangerous」
  • 只 print signal,不下单(paper 都不下)

8.2 核心代码

# vxx_decay_check.py
"""
Day 72: VXX/UVXY decay signal checker.
PAPER-ONLY. This script NEVER places orders. It only prints whether
contango / backwardation regime favors short-vol trades.
"""
from ib_insync import IB, Index, Future, util
from datetime import datetime
import pandas as pd

util.startLoop()

def get_vix_term_structure(ib):
    """Pull spot VIX + front 3 VIX futures."""
    # Spot VIX index
    vix = Index('VIX', 'CBOE', 'USD')
    ib.qualifyContracts(vix)
    vix_ticker = ib.reqMktData(vix, '', snapshot=True)
    ib.sleep(2)
    spot = vix_ticker.last or vix_ticker.close

    # Front 3 VIX futures (VX contracts on CFE)
    futures = ib.reqContractDetails(
        Future('VIX', exchange='CFE', currency='USD')
    )
    # sort by lastTradeDate ascending, take first 3
    futures_sorted = sorted(
        [f.contract for f in futures],
        key=lambda c: c.lastTradeDateOrContractMonth
    )[:3]

    prices = []
    for fut in futures_sorted:
        ib.qualifyContracts(fut)
        t = ib.reqMktData(fut, '', snapshot=True)
        ib.sleep(1)
        prices.append({
            'expiry': fut.lastTradeDateOrContractMonth,
            'mid': (t.bid + t.ask) / 2 if t.bid and t.ask else t.last,
        })

    return spot, prices

def classify_regime(spot, futs):
    """Return regime tag and key metrics."""
    f1, f2, f3 = futs[0]['mid'], futs[1]['mid'], futs[2]['mid']

    # Contango ratio: VIX1 / spot
    spot_to_f1 = (f1 - spot) / spot * 100  # in %
    # Roll yield (annualized): (f2 - f1) / f1 * 12
    roll_yield = (f2 - f1) / f1 * 12 * 100

    if spot_to_f1 > 5 and roll_yield > 0:
        regime = "STEEP_CONTANGO"
        comment = "Decay tailwind for short-VXX. But: monthly tail risk unchanged."
    elif spot_to_f1 > 0 and roll_yield > 0:
        regime = "MILD_CONTANGO"
        comment = "Normal regime. Decay present but modest."
    elif spot_to_f1 < 0 or roll_yield < 0:
        regime = "BACKWARDATION"
        comment = "DANGER. Short-VXX positions losing fast. Close immediately."
    else:
        regime = "FLAT"
        comment = "Inconclusive. No edge in either direction."

    return regime, {
        'spot_vix': spot,
        'f1': f1, 'f2': f2, 'f3': f3,
        'spot_to_f1_pct': round(spot_to_f1, 2),
        'roll_yield_annualized_pct': round(roll_yield, 2),
    }

def main():
    ib = IB()
    ib.connect('127.0.0.1', 7497, clientId=72)  # PAPER port

    spot, futs = get_vix_term_structure(ib)
    regime, metrics = classify_regime(spot, futs)

    print(f"\n=== VIX Term Structure @ {datetime.now():%Y-%m-%d %H:%M} ===")
    for k, v in metrics.items():
        print(f"  {k:35s}: {v}")
    print(f"\n  Regime: {regime}")
    print(f"  Comment: {metrics_comment(regime)}")
    print(f"\n  ACTION: This script does NOT place orders.")
    print(f"  If you want to express a view, use risk-defined options.")

    ib.disconnect()

def metrics_comment(regime):
    return {
        "STEEP_CONTANGO": "VXX put spread (debit) is the cleanest expression.",
        "MILD_CONTANGO":  "Wait for steeper contango or don't trade.",
        "BACKWARDATION":  "DO NOT short vol. Long VIX call / VXX call only.",
        "FLAT":           "No edge. Skip.",
    }[regime]

if __name__ == '__main__':
    main()

8.3 触发后做什么

记录到 paper trade log

[2026-07-20] VIX=14.2 / F1=15.8 / F2=16.7 / roll yield = +6.8% annualized
Regime: STEEP_CONTANGO
Decision: paper enter VXX Aug $12/$10 put spread, debit $0.55, qty=2
Stop: close if VIX > 20 OR backwardation appears
Review: 2026-08-20

3 个月后回看 log,统计:

  • 信号触发后实际胜率
  • 平均盈亏
  • 是否有任何「signal 显示 contango,但 5 天内 spike」的案例
  • 调整阈值

九、2018 / 2020 / 2022 / 2024 反例分析

9.1 2018-02-05 Volmageddon

时间线

时点事件VIXVXXXIV
2018-02-02 (周五)美国非农数据走强,市场担心通胀17.2$30$144
2018-02-05 盘中SPX -4.1%,恐慌加剧38.8$42$99
2018-02-05 盘后VIX futures dealer rebalancing → 触发反身性115%+33%$7
2018-02-06XIV ETN 发行方(Credit Suisse)宣布 terminate--$5 → 强制清算

教训

  1. Reflexive selling:当 VIX 期货突然反转,short-vol 基金被迫买回期货 → 推高 VIX → 触发更多 short-vol 平仓 → 死亡螺旋
  2. 盘后流动性枯竭:90% 的损失发生在 16:00-16:30 之间(盘后 30 分钟)
  3. ETN 条款:XIV 的 indicative value 触发 termination event,单日 -80% 当晚就 final settlement
  4. 历史教训没用:2018 前 XIV 是过去 5 年「Sharpe 最高」的 ETN(Sharpe 3.5+)

9.2 2020-03 COVID 崩盘

时间线

日期事件VIXVXX
2020-02-19SPX 历史新高14.4$14
2020-03-09沙特俄罗斯油价战54.5$25
2020-03-16Fed 紧急降息至 0 + QE82.7$35
2020-03-18国际航班禁令85.5$42
2020-03-23Fed 无限 QE61.6$32
2020-04-30-34.2$23

VXX 单月 +200%。任何用 margin short VXX 的人:

  • 1x leverage:账户 -60%(还活着,但伤了)
  • 2x leverage:margin call,强平在最高点
  • 3x leverage:账户归零 + 欠经纪商钱

教训

  1. 政策驱动的 vol spike 无法预测:3 月 16 日 Fed 降息当天 VXX 涨了 25%
  2. 危机持续时间长:不是一日游,是 6 周。没有「等回调」这种事
  3. 正常 contango 信号失效:3 月期间一直 backwardation

9.3 2022 Fed 紧缩

时间线:相对平稳,但 vol 持续在高位(VIX 平均 26)

  • VXX 全年 -45%
  • 但 1 月 / 9 月 两次月度 +25%
  • 波动率高的衰减市对 short 反而不友好:volatility drag 在 long side 也咬人

9.4 2024-08-05 日元 carry trade unwind

时间事件VIXVXX
2024-08-02 (周五)美国就业数据走弱 + 日银加息23.4$13
2024-08-05 盘前日元突然升值 → carry trade 大规模平仓 → 全球股市急跌65.7(盘中)$18.5
2024-08-05 收盘美国股市企稳38.6$16.2
2024-08-09平静20.4$13.8

VXX 单日 +42%(盘中高点 +60%)和 2018 像吗? 是。和 2020 像吗? 是。

关键认知:vol spike 不是「越来越少」,是结构性持续存在的。每 18-36 个月必有一次。

9.5 综合表

时间触发原因VIX 峰值VXX 单期回报持续时间
2015-08中国黑色星期一53+50%2 周
2018-02Volmageddon50+80%3 天
2018-12Fed 鹰派 + 贸易战36+35%1 月
2020-03COVID85+200%6 周
2022-01Fed 紧缩开始38+25%1 月
2024-08日元 carry unwind66+42%1 周

频率:约每 18 个月一次。幅度:单月 25-200%。短 VXX 持有 5 年遇到 ≥1 次的概率 ≈ 95%


十、PM 视角:迁移性思考

10.1 「平均赢家 + 偶尔大输」的业务结构

VXX 短仓的 P&L 分布 = SaaS 订阅业务 + 偶尔大客户流失

维度short VXXSaaS 业务
日常小额稳定收入月度订阅
频率73% 月份赚钱大多数月份增长
尾部事件单月 -60%失去 30% 营收的大客户
总期望
破产路径margin call现金流断裂
风控正确做法限制单笔仓位 + 永不加杠杆客户集中度 ≤15% + 现金储备 6 个月

两边的错误反应都是「我已经赚了 5 年,应该加大」

10.2 衰减 ETF 的存在揭示了什么金融真理

  1. 结构性收益(structural return)≠ 无风险。Contango decay 是真实的结构性收益,但它的对手方(long VXX 持有者)支付的「价格」是尾部保险费——你赚的就是这个保险费,保险出险时你赔无限
  2. 看似 free money 的东西,必有一个 dimension 你没看到。VXX 的「免费午餐」对应的是「无限大且无法对冲的尾部」
  3. 复利路径敏感性:杠杆 ETF 的衰减不是「期望值变化」,是「path 损失」。同样的算术平均回报,几何平均可以差 30%
  4. 历史 Sharpe ≠ 未来 Sharpe:当一个策略的 Sharpe 从 3 突然变成 -10,不是「策略坏了」,是真实 Sharpe 一直就是 0.5,只是你之前只看到了平静期

10.3 对个人量化的指导原则

任何看起来 Sharpe >2 的策略,先假设它在卖未定价的尾部保险。然后回答:你能不能承受这个尾部?」

如果不能 → 不做,或者做 risk-defined 版本。 如果能 → 仓位限制 + 永不加杠杆 + 永不复利再投入。

10.4 对架构师工作的迁移

我在金融零售产品工作 10 年,常见的「VXX 式」陷阱:

  • 「批量任务永远成功」:日常 99.9% 成功 → 团队不重视失败处理 → 黑色星期五崩了
  • 「缓存命中率永远 95%」:直到某天 95% → 50%,整个数据库被打穿
  • 「外部依赖永远可用」:直到 AWS us-east-1 挂了 4 小时
  • 「客户集中度看似分散」:直到最大三个客户同时是同一家集团的子公司

架构师的工作 = 给「日常顺滑」的系统设计「VXX-spike-proof」的尾部保护


十一、Day 72 实际执行 Checklist

  • (1) 看完笔记 — 真的看完,不只是滑过历史表
  • (2) 抄写一遍「为什么 <$5k 不该 short VXX」五条原因 — 写在交易日记的最前面
  • (3) 拉 VIX term structure 当前数据 — 运行 vxx_decay_check.py(paper port 7497)
  • (4) 记录今日 regime tag — 写进 paper trade log
  • (5) 模拟一笔 VXX put spread paper trade — 计算盈亏分布,不真下单
  • (6) 整理 2018/2020/2024 三次 spike 的复盘表 — 放进个人 wiki
  • (7) 更新进度docs/daily/TR_PROGRESS.md Phase 3 Day 72 标 ✅
  • (8) 记录踩坑 — 在本笔记最后加「实际执行记录」段

十二、明日预告

Day 73: Greeks 优化 — 持仓的 Delta/Gamma/Vega/Theta 实时聚合

  • 单 leg vs 多 leg 组合的希腊字母汇总
  • Net Delta 中性的真正含义(不只是 Delta=0)
  • Gamma scalping 的理论基础和小账户的不可行性
  • Vega 风险:为什么单一标的 multi-strike 持仓的 vol 暴露常被低估
  • Theta 收割的 PM 视角:「时间是你的对手方付给你的工资」
  • portfolio_greeks_aggregator.py:实时聚合所有 paper trade 仓位的希腊字母
  • 用今天 Day 72 的 VXX put spread 作为第一个测试用例

实际执行记录

启动一项填一项,时间戳 + 卡点。

  • [hh:mm] 跑通 vxx_decay_check.py — regime tag = ___,VIX = ___
  • [hh:mm] 找到当前 VXX 期权链 — Aug 系列 IV = ___
  • [hh:mm] 模拟 paper VXX put spread — debit = $,max gain = $
  • [hh:mm] 整理 2018/2020/2024 复盘表
  • [hh:mm] 写交易日记开头的「五条戒律」
  • 卡点 / 学到的:

总字数:约 6,300 字 今日完成度:理论 ✓ / 历史复盘 ✓ / 代码(待跑)/ paper trade(待模拟)/ 笔记 ✓