1677 字
8 分钟
《量化交易入门》第 12 章:从零到一的行动清单——量化之路怎么走

《量化交易入门》第 12 章:从零到一的行动清单——量化之路怎么走#

系列最后一章,不讲任何新概念。概念在书上睡一百年也变不成钱,这章只解决一个问题:关掉教程之后,你具体按什么顺序动手。

12.1 先看清全貌:四个阶段#

量化入门不是线性学习,是四级台阶,每一级都有明确的”过关标准”,达不到就别往上跳。

阶段目标时间预算过关标准
一、模仿者跑通别人的代码2–4 周能在自己电脑上取到真实行情、跑出回测报告
二、独立回测自己复现一个简单策略1–2 月独立写出数据→信号→回测→报告全流程,含手续费
三、模拟盘让策略实时跑但不用真钱至少 3 个月实盘行情下信号、日志、风控全部自动运行
四、小资金实盘用亏光也不心疼的钱6 个月起实盘结果与回测、模拟盘的偏差你能解释清楚

注意第四阶段的标准不是”赚钱”,是”解释得清偏差”。新手实盘第一年的目标只有一个:活下来,并看懂自己为什么赚、为什么亏。

12.2 最小流水线:你要亲手重写的骨架#

整个系列的技术内容,压缩到底就是下面这几十行:数据 → 信号 → 回测 → 绩效。这个例子只用标准库、用模拟数据,复制即可运行;你阶段一的作业,就是把它逐行读懂,阶段二的作业,是把模拟数据换成真实行情。

# -*- coding: utf-8 -*-
"""最小量化流水线:数据 → 信号 → 回测(含手续费)→ 绩效"""
import random
random.seed(7)
# ① 数据:没有 API 时先用模拟数据练手(真实项目换成行情接口)
prices = [100.0]
for _ in range(240):
prices.append(max(1.0, prices[-1] * (1 + random.gauss(0.0004, 0.02))))
def ma(data, n):
out = [None] * len(data)
for i in range(n - 1, len(data)):
out[i] = sum(data[i - n + 1:i + 1]) / n
return out
# ② 信号:双均线金叉买入、死叉卖出
fast, slow = ma(prices, 5), ma(prices, 20)
signals = [0] * len(prices)
for i in range(1, len(prices)):
if fast[i] and slow[i] and fast[i - 1] and slow[i - 1]:
if fast[i - 1] <= slow[i - 1] and fast[i] > slow[i]:
signals[i] = 1
elif fast[i - 1] >= slow[i - 1] and fast[i] < slow[i]:
signals[i] = -1
# ③ 回测:全仓买卖,扣万三手续费
cash, position, equity_curve = 100000.0, 0.0, []
fee_rate = 0.0003
trades = []
for i, sig in enumerate(signals):
if sig == 1 and position == 0:
position = cash * (1 - fee_rate) / prices[i]
cash = 0.0
trades.append(("买", i, prices[i]))
elif sig == -1 and position > 0:
cash = position * prices[i] * (1 - fee_rate)
position = 0.0
trades.append(("卖", i, prices[i]))
equity_curve.append(cash + position * prices[i])
# ④ 绩效:总收益、交易次数、最大回撤
total_ret = equity_curve[-1] / 100000.0 - 1
peak, max_dd = equity_curve[0], 0.0
for e in equity_curve:
peak = max(peak, e)
max_dd = max(max_dd, (peak - e) / peak)
print(f"交易次数: {len(trades)}")
print(f"总收益率: {total_ret:.2%}")
print(f"最大回撤: {max_dd:.2%}")
print("前五笔交易:", [(a, b, round(c, 2)) for a, b, c in trades[:5]])

运行结果:

交易次数: 16
总收益率: -4.91%
最大回撤: 15.52%
前五笔交易: [('买', 31, 101.63), ('卖', 41, 98.3), ('买', 59, 99.91), ('卖', 66, 91.45), ('买', 85, 91.25)]

是的,它亏钱。这是这个例子最重要的部分:跑通流水线和赚钱之间隔着整条 series——数据质量、参数稳健性、样本外检验、成本冲击、纪律执行。一个能正常输出”亏损 4.91%“的程序,比十个回测年化 50% 的黑箱值钱:前者你知道它在哪错,后者你只知道它迟早错。

12.3 每周怎么安排时间#

不用辞职,每周 6–8 小时,坚持半年就超过 95% 半途而废的人:

  • 工作日各 30–40 分钟:读数据、跑程序、记录一个”今天搞懂的问题”。重在不断,不在时长;
  • 周末一个半天(2–3 小时):做本周的主作业——接一个接口、复现一个指标、完成一段回测;
  • 准备一个研究日志(一个 markdown 文件就行):每个想法记四行——假设、检验方法、结果、结论。半年后这本日志就是你最值钱的资产,它能防止你把同一个失败策略换个名字再试一遍。

12.4 到什么程度可以花真钱#

四条同时满足,再考虑阶段四:

  1. 策略在训练集之外的样本上仍然有效,且参数邻近区间表现稳定(第 11 章);
  2. 模拟盘连续跑满至少一个完整季度,经历过你策略”最不适应”的行情(震荡、急跌、缩量);
  3. 止损、仓位、异常停机全部自动化并被实测触发过——没被触发过的风控等于没有;
  4. 投入的钱亏光,不影响你的生活和心态。建议初始资金不超过流动资产的 10–20%。

12.5 劝退信号:什么时候该承认不适合#

坚持是美德,固执不是。出现下面的情况,认真考虑把量化当爱好而不是事业:

  • 你发现自己沉迷”找圣杯参数”,而不是研究市场结构;
  • 连续亏损后第一反应是加资金翻本;
  • 不看策略逻辑,只信回测曲线;
  • 这件事让你长期失眠、影响家庭和本职工作。

量化不保证任何人财富自由,但它确定能给你一套看待世界的方式:用数据检验直觉、用概率接受不确定、用纪律对抗情绪。哪怕最终不做交易,这套训练在工作和生活里都会反复派上用场。

12.6 系列完结:十二章地图#

从 K 线、数据、均线、趋势,到回测、因子、风控、成本、模拟盘、实盘、机器学习——十二章走下来,你已经见过一个量化系统的全貌。接下来没有下一章了,剩下的章节要靠你自己用代码写:第一个接口报错的夜晚,第一次看懂回测曲线的下午,第一次模拟盘信号在真实行情里亮起的瞬间。

市场永远在,不急这一天。打开编辑器,从那几十行骨架开始,把它换成你自己的数据。

祝你在市场里,活得久,看得清,走得远。


📚 《量化交易入门》系列全 12 章到此完结:从零基础到小资金实盘的完整路线,每章一个主题 + 可运行 Python 示例。收藏目录页,随时回来复习;动手过程中卡住了,带着你的研究日志和报错信息回来查。

《量化交易入门》第 12 章:从零到一的行动清单——量化之路怎么走
https://021028.xyz/posts/default/142/
作者
021028
发布于
2026-10-15
许可协议
CC BY-NC-SA 4.0