sector-rotation-monitor · git:20261103.b2d79fa · 2026-11-03 · sha256 b1d3adec56e023c1
sector-rotation-monitor git:20261103.b2d79faA
Immutable. This exact content never changes and is served at /api/v1/blob/b1d3adec56e023c1.
--- name: sector-rotation-monitor description: > MUST USE when 定时分析港股“金融 vs 科技”轮动、恒指风格切换,或监控相对强弱/ 美债利率/人民币/南向资金并生成告警。触发词:轮动/金融科技/恒指风格/定时分析/ 监控/告警/金融跑赢/科技跑输/rotation monitor。只做状态监控,不预测涨跌, 不构成交易建议。 --- # 金融 vs 科技轮动监控技能 > 目标:把“金融和科技会不会轮动”变成**每天可复算的状态表**,而不是拍脑袋。 > 一句话:**先定口径,再看相对强弱,最后看宏观触发;表格里每个数字都必须写清含义。** ## 何时用 - 每日/每周定时分析港股金融与科技的相对强弱; - 回答“现在是不是该从金融切科技 / 科技切金融”; - 监控美债 10Y、USD/CNY、HIBOR、南向资金是否出现轮动触发; - 给邮件/报告生成“金融 vs 科技”监控段落。 不适用:个股基本面(走 `equity-analysis`);策略显著性/回测(走 `hypothesis-validation`); 指数权重/归因(走 `market-diagnostics`)。 ## 快速运行 ```bash python3 scripts/rotation_monitor.py python3 scripts/rotation_monitor.py --alert python3 scripts/rotation_monitor.py --out output/rotation_monitor/latest.md ``` - `--alert`:有强标记时 exit 1,便于 cron/CI 发告警。 - 输出:`output/rotation_monitor/YYYY-MM-DD.md` + `.json`。 - 代码:`scripts/rotation_monitor.py`。 ## 输出硬要求(用户指定) **所有数字必须放在表格里,并同步解释含义。** 不允许只给一串数字。 必须至少有三张表: ### 1. 相对强弱 | 指标 | 数值 | 含义 | 当前读法 | |---|---:|---|---| | 金融篮子累计 | 例:+108.6% | 2020 以来等权金融股累计涨跌 | 金融长期占优 | | 科技篮子累计 | 例:+53.3% | 2020 以来等权科技股累计涨跌 | 科技落后 | | 20/60/120/252d 相对 | 例:+11.9% | 金融相对科技的超额 | 金融/科技/持平 | | 相对强弱分位 | 例:100% | 当前相对强弱在 2020 以来历史位置 | 极值高位/中性/低位 | | 60d 相关性 | 例:0.47 | 两篮子日收益同步度;越低越分散 | 低/中/高相关 | ### 2. 宏观与资金 | 指标 | 数值 | 含义 | 当前读法 | |---|---:|---|---| | 美债 10Y | 5.26% | 全球无风险利率锚;上行压科技估值 | 20d +51bp,利率上行 | | USD/CNY | 6.654 | 人民币汇率;数值升=人民币贬 | 20d −0.8%,大致稳定 | | HIBOR 3M | 3.21% | 香港短期资金成本;升=流动性收紧 | 20d −2.9bp,成本下降 | | 南向 20d | −9.3 HK$bn | 南向估算净买入;正=流入 | 流出,承接力偏弱 | ### 3. 状态标记 | 标记 | 触发条件 | 当前是否触发 | 解释 | |---|---|---|---| | `FIN_CROWDED` | 1y 相对 ≥+50% 且分位 ≥90 | 是/否 | 金融拥挤,赔率下降 | | `TECH_WEAK` | 1y 相对 ≥+30% | 是/否 | 科技相对弱,等催化 | | `CORR_LOW` | 60d 相关 <0.45 | 是/否 | 分散度上升,轮动迹象 | | `RATE_UP` | 美债 10Y 20d ≥+30bp | 是/否 | 科技估值受压,银行 NIM 受益 | | `RATE_DOWN` | 美债 10Y 20d ≤−30bp | 是/否 | 反向 | | `CNY_WEAK` | USD/CNY 20d ≥+1% | 是/否 | 外资/科技风险偏好受压 | | `CNY_STRONG` | USD/CNY 20d ≤−1% | 是/否 | 利好外资/科技 | | `SOUTHBOUND_OUT` | 南向 20d ≤−20bn | 是/否 | 港股承接力下降 | | `SOUTHBOUND_IN` | 南向 20d ≥+20bn | 是/否 | 港股承接力上升 | 最后必须有一句**条件化结论**,例如: > 金融相对拥挤且美债利率上行:这是“金融仍强、科技继续受压”的组合; > 轮动到科技需要利率见顶或科技盈利超预期,当前未确认。 ## 口径(写死,不要改) - 金融篮子:HSBC、工行、建行、招行、平安、友邦、中行、中银香港、港交所,**等权**。 - 科技篮子:腾讯、阿里、小米、美团、网易、中芯、京东、百度、快手、联想,**等权**。 - 相对强弱 = 金融累计净值 ÷ 科技累计净值。 - 收益:前复权、日频;不计成本、股息、成分变化。 - 历史起点:2020-01-02;分位按 2020 以来。 - 这是**自建篮子**,不是官方行业指数。 ## 数据源 | 数据 | 文件 | 更新 | |---|---|---| | 金融/科技股价 | `data/hk_broad/snapshot/*.pkl` | 每日快照 | | 美债 10Y | `data/us_market_snapshot/treasury_yield.pkl` | 每日快照 | | USD/CNY | `data/cnh_hibor/usdcny.csv` | 每日 | | HIBOR 3M | `data/cnh_hibor/hibor_hkd.csv` | 每日 | | 南向持股 | `data/southbound_holdings/southbound_long.csv` | 每日/周 | | 银行 NIM/NPL/CET1 | `data/bank_reports/bank_metrics.csv` | 季/年 | | 科技盈利/AI 资本开支 | 年报/季报 | 季 | | 中国社融/信贷 | akshare 宏观接口 | 月 | ## 定时调度 每个交易日港股收盘后跑一次(HKT 17:30 左右): ```bash 30 9 * * 1-5 cd /data/fortune && python3 scripts/rotation_monitor.py --alert ``` - exit 1 时触发邮件/CI 告警; - 周报:每周五跑一次,附上 20/60/120/252d 相对强弱; - 月报:加中国社融、银行 NIM/NPL、科技财报; - 告警只提醒“状态变化”,不自动下单。 ## 基本面补充(不要日频硬编) - **银行**:NIM、NPL、拨备覆盖、CET1、分红率;季/年更新。 - **科技**:营收/经营利润、AI 资本开支、游戏/广告增速;季度更新。 - **中国信用**:社融、信贷、地产销售;月度更新。 - 基本面数据没有更新时,报告中必须写“未更新”,不得用旧值假装当期。 ## 硬规则 ``` G1 只给数字、不解释含义 → FAIL G2 用日频价格代替基本面判断 → FAIL(只能做状态,不做价值结论) G3 把监控标记当买卖信号 → FAIL G4 不写口径(等权/起点/复权/成本) → FAIL G5 不写数据缺口(NPL/CET1/财报未更新) → FAIL G6 取单一窗口最好结果当结论 → FAIL G7 结论无“适用范围” → FAIL ``` ## 限制 - 自建等权篮子 ≠ 官方行业指数; - 阈值是监控规则,不是回测出来的 alpha; - 只有 2020 以来样本,不能据此预测下次轮动日期; - 未计交易成本、股息、成分调整; - 不构成买卖建议。 ## 文件 - 脚本:`scripts/rotation_monitor.py` - 输出:`output/rotation_monitor/YYYY-MM-DD.md` / `.json` - 相关技能:`market-diagnostics`(权重/归因)、`hypothesis-validation`(显著性)、`equity-analysis`(个股基本面)