← 文档库
📄 文档learn/量化工程优化/纳指ETF溢价获取方案.md
🌱 创建于2026-06-27 01:04
✏️ 修改于2026-06-27 01:04
👁️ 浏览量—
🔗 短链接/~learn/s/4b179b58
🔐 可见性

纳指ETF官方溢价数据获取方案

> 日期: 2026-06-01 > 背景: 之前使用 QQQ 美股 ETF 作为基准的间接计算法存在系统性偏差(低估约 5%),现已接入官方净值 API。

---

一、问题回顾

1.1 旧方案(QQQ 基准法)

溢价率 = (ETF市价 - QQQ × 校准比率) / (QQQ × 校准比率) × 100%

1.2 偏差原因

因素 影响
------------
基金管理费 (0.80%/年) QQQ 基准不扣费,导致公允价偏高
QDII 额度约束 A股 ETF 存在结构性溢价,美股 QQQ 不存在
汇率摩擦 QQQ 以美元计价,ETF 以人民币计价,汇率不完全同步
跟踪误差 QQQ 与纳指 100 指数本身有微小偏差

1.3 交叉验证证据

数据源 日期 净值 市价 溢价率
--------------------------:---:
广发基金官方公告 2026-05-29 IOPV=1.5445 1.6940 9.69%
天天基金 API 2026-05-28 dwjz=1.5445 1.6940 9.69%
QQQ 基准法(旧) 2026-05-29 fair=1.6191 1.6940 4.63%

官方公告与 API 数据完全吻合,QQQ 基准法低估 5.06 个百分点。

---

二、新方案(双源对比)

2.1 数据源架构

┌─────────────────────────────────────────────────┐
│           ETF 溢价率计算(双源)                    │
├─────────────────────────────────────────────────┤
│                                                   │
│  源1: 官方净值法 (用于实时决策)                      │
│    └─ 天天基金 API                                 │
│       fundgz.1234567.com.cn/js/{code}.js          │
│       → dwjz(单位净值) + jzrq(净值日期)             │
│       溢价 = (市价 - 净值) / 净值 × 100%             │
│                                                   │
│  源2: QQQ基准法 (用于历史回测)                       │
│    └─ QQQ美股 ETF 日线 + 季度校准比率               │
│       数据源: Alpha Vantage → CSV缓存 → 新浪兜底     │
│       溢价 = (市价 - QQQ×校准比) / (QQQ×校准比)      │
│                                                   │
│  API 免费,无需 Key,国内可直连                       │
└─────────────────────────────────────────────────┘

2.2 天天基金 API 调用

# 获取指定 ETF 的最新官方净值
import requests, re

url = 'https://fundgz.1234567.com.cn/js/159941.js'
r = requests.get(url, headers={'Referer': 'https://fund.eastmoney.com/'})
m = re.search(r'jsonpgz\((\{.*\})\)', r.text)
data = json.loads(m.group(1))

# data = {
#     'fundcode': '159941',
#     'name': '纳指ETF广发',
#     'jzrq': '2026-05-28',      # 净值日期
#     'dwjz': '1.5445',           # 单位净值 (= IOPV)
#     'gsz': '1.5498',            # 估算值
#     'gszzl': '0.34',            # 估算涨跌幅
# }

2.3 历史净值获取(东方财富 API)

# 获取历史净值(可用于回测)
url = 'https://api.fund.eastmoney.com/f10/lsjz'
params = {
    'callback': 'jQuery',
    'fundCode': '159941',
    'pageIndex': 1, 'pageSize': 20,
    'startDate': '2026-05-01', 'endDate': '2026-05-30',
}
# 返回: FSRQ(日期), DWJZ(单位净值), LJJZ(累计净值), JZZZL(增长率)

---

三、代码位置

文件 职责
------------
quant/data_process/nasdaq_premium_calculator.py 核心计算器,含 _fetch_official_nav_latest()
quant/data_process/market_data_processer.py 推送消息中展示双源溢价 + 仓位建议
quant/check_premium.py 快速查看脚本(双源对比)
quant/utils/eastmoney_us_util.py 东方财富美股 K 线(备用数据源)
quant/utils/forex_loader.py 汇率加载器(备用,当前使用东方财富 USDCNH)

运行方式

# 快速查看当前所有纳指/标普 ETF 溢价
.venv/bin/python -m adata.aohan.quant.check_premium

# 综合回测(溢价分布 + 策略阈值 + 买最便宜分析)
.venv/bin/python -m adata.aohan.quant.chart_test.premium_comprehensive_backtest

# 多 ETF 对比分析
.venv/bin/python -m adata.aohan.quant.chart_test.nasdaq_multi_etf_analysis

---

四、对历史回测结论的影响评估

4.1 回测用的方法

所有历史回测(premium_comprehensive_backtest.py、nasdaq_multi_etf_analysis.py)均使用 QQQ 基准法 计算溢价。该方法:

4.2 回测结论是否有效?

有效。 理由:

`` QQQ 基准法 官方净值法 ──────────────────────────────────────── 折价 > 4% 买入 (P~1%) → 折价 > ?% 买入 溢价 > 7% 卖出 (P~95%) → 溢价 > ?% 卖出 `

4.3 后续工作

  • 接入东方财富历史净值 API,用官方净值重跑完整回测
  • 建立 QQQ 基准法 → 官方净值法的阈值翻译表
  • 回测报告中的「最优折溢价阈值」添加「官方净值等效值」列

---

五、相关文档

文档 位置
------------
溢价率综合回测报告 learn/溢价率回测分析/report.txt
多 ETF 对比分析 learn/溢价率回测分析/ (运行时生成)
截面选基方案 learn/ETF轮动/选基策略引擎-截面方案设计.md
数据缓存工程优化 learn/2026-05-26-数据缓存分离工程优化/`

▶ 📜 变更历史(1 次提交)

4616ca62026-06-27 01:04docs: 同步 learn/ 文档 & 工作区改动
🍃quant 知识库
by 伊甸园和枫

🔊 播放设置

勾选音源后调节配比,总和自动归一化
已选 0 个 · 合计:0%
合成中...
00:00/00:00
1.0x