两个量化系列的完整代码与实测产物 预览图

两个量化系列的完整代码与实测产物

两个量化系列 17 篇博文的全部生成脚本与 11 份实测 JSON,2194 个数字可逐字段对账

源码/项目包 v1.0 # Python# 量化回测# 完整代码

量化回测勘误 · 完整代码包

这个包是什么

「启迪宽客」两个量化博文系列的全部生成脚本与实测产物,0 元,无需登录、无需下单,点下载直接拿到 zip。

写这两个系列时最大的抱怨对象是我自己:文章里贴的都是片段,读者看完知道"哪里会错",却拿不到"怎么验"。这个包补上这一步——文章里出现的每一个数字,都能在这里找到产生它的那一行代码和那一份 JSON。

  • 《币安 15m 回测勘误》9 篇 → binance-15m/(8 个脚本 + 公共回测器)
  • 《Python 本地量化》8 篇 → python-quant/(4 个脚本)
  • 两边实测产物 → metrics/(11 份 JSON)

里面有什么

README.md               怎么装依赖、放数据、跑脚本,以及两个系列的共同约定
binance-15m/
  btx.py                公共回测器:成交时点 / 单边扣费 / 比例止盈止损 三个开关
  run_b1.py             数据体检、索引对齐验证、极端单根统计
  run_b2.py             慢线周期扫描(EMA_100 实为 span=130)、成交时点、手续费
  run_b3.py             布林带 ddof 口径、RSI 简单均值 vs Wilder
  run_b4.py             固定中心价网格的失效区间;"买入条件其实是动量"的检验
  run_b5.py             三种止盈止损写法(含崩溃复现)与夏普/胜率口径
  run_b6.py             末根未收盘 K 线、drop_duplicates 误删、缺口影响
  run_b7.py             把 notebook 原样重跑,与其保存的输出逐位对账
  run_b8.py             手续费塌陷曲线与盈亏平衡费率(二分法)
python-quant/
  run1.py               A 股日线数据体检与"不复权"判据
  run2.py               双均线向量化、参数网格与样本内外、参数分布
  run3.py               动量、均值回归、框架等价、quantstats 口径复现
  run4.py               RSI 播种差异、事件驱动对账、跳空与覆盖度
metrics/                上述脚本的实测产物,文章数字一律取自这里

核心亮点

  • 脚本自己就是证据:metrics/ 里的产物是用本包脚本跑出来的,不是另存的旧结果。发布前做过逐字段对账,2194 个叶子值与文章引用值一致(唯一差异是我后加的一个说明字段)。
  • 对账做到了原作者头上:run_b7.py 把工程里那份 notebook 的 cell 原样拼接重跑,与它自己保存的输出比对,7 项指标(276050 行 / 309.96 USDT / 209.96% / Sharpe -5.07 / Win Rate 59.08% / 止盈 118 / 止损 442)与 9 行年报逐位复现。
  • 一次只改一个开关:btx.run_loop() 把成交时点、买入侧是否扣费、止盈是否查仓位做成参数。所以"网格改成复利反而更差"这类反直觉结果才可能被单独看见,而不是被一个混合数字盖住。
  • 复刻优先于正确:公共回测器忠实保留了原代码"买入不扣手续费""期末按盯市值不强制平仓"两个行为,绝对值才能和原作者输出对齐,差异全部归因到你显式打开的那个开关。
  • 不藏自己的错:run_b1.py 里有一段专门用来验证我"年报错位一根"假设的代码,实测证明没有错位,第 09 篇按实测收回了这个说法。

效果预览

跑完你会拿到与文章表格逐项对得上的 JSON,例如:

数字 出处 值
EMA_100 用 span=130 与 100 的收益差 第 02 篇 BTC −2248.93pp,DOGE +1207.71pp(方向相反)
两边都扣 0.1% 后的收益 第 04 篇 BTC +314.45%(原文口径 +3918.52%)
盈亏平衡单边费率 第 04 篇 BTC 0.1500%,DOGE 0.1084%
网格落在区间外的 K 线比例 第 07 篇 98.7%,2020-03-16 后 5.31 年零成交
代码自己算的夏普 vs 正确年化 第 09 篇 −3.7305 vs +1.187(符号相反)

你将学到

  • 怎么把"我觉得这里有问题"变成一个可运行的对照实验,并且允许自己被数据否证;
  • 成交时点、手续费记法、指标平滑方式这三类"不像策略逻辑"的细节,各自能值多少收益;
  • 为什么参数面要整片扫、结论要跨资产看方向——单点比较几乎必然在挑噪声;
  • 一份回测报表里,夏普、胜率、逐年收益各自的口径该怎么定义才算说得清。

需要你自己具备的条件(重要)

  • 行情数据不在这个包里,要自己取:币安 15m K 线(datetime,open,high,low,close,volume)或 A 股日线 CSV。README 里写了取法与必须注意的口径(币安那个 datetime 是 openTime、UTC 无时区)。
  • 环境:Python ≥ 3.10,pandas / numpy / matplotlib;画中文图表需要中文字体,Linux 上把脚本里的 Microsoft YaHei 换成你自己的字体名。
  • 会读 pandas 代码。这个包的脚本按"能读懂、能改"来写,不是一个可复用的回测框架。

适合谁

  • 自己写过回测、但对"跑出来的收益能不能信"没有判断手段的人;
  • 想看看一个策略从取数到报表,哪些环节各自会吃掉多少收益的人;
  • 教课时想给学员一份"错法标本"的人——这里面每个 bug 都真实存在于同一份工程里。

许可:自定义。供学习与研究自由使用、修改、转发,不构成投资建议。 关于免费:这个包 0 元、直接下载,不需要下单也不需要登录。它不参与任何销售,也不承诺能赚钱——恰恰相反,包里的脚本量出来的结论是:这些策略在扣掉真实手续费后大多不成立。

Python
pandas
numpy
matplotlib

购买评价(0)

暂无评价,购买后第一个来评价吧
相关商品
🍪 隐私提示 我们仅收集提供服务所必需的信息(详见《隐私政策》),不出售、不追踪。
免费
↓ 免费下载