01
回溯测试基础
什么是回溯测试、为什么需要、核心挑战:生存偏差·过拟合·前瞻偏差
概念风险
02
环境搭建
Python环境配置 · 安装gym/stable-baselines3/pandas/numpy/matplotlib · 验证
工具入门
03
金融数据获取
yfinance获取历史数据 · 清洗预处理 · 缺失值与异常值处理
数据yfinance
04
自定义强化学习环境
继承gym.Env · 状态/动作空间 · step与reset方法实现
gym环境
05
交易逻辑实现
模拟订单簿 · 买卖信号 · 持仓盈亏 · 交易成本与滑点
交易逻辑
06
状态空间设计
技术指标(MA/RSI/MACD) · 价格归一化 · 多维度特征
特征指标
07
动作空间设计
离散动作(买/卖/持有) · 连续动作(仓位比例) · 约束与映射
动作离散/连续
08
奖励函数设计
PnL变化 · 夏普比率 · 稀疏与密集奖励权衡
奖励风险调整
09
策略模型选择
DQN/PPO/A2C简介 · 适用场景 · 基线模型选择
算法对比
10
Stable-Baselines3入门
安装导入 · 创建模型 · 策略网络(MLP/LSTM)配置
SB3网络
11
模型训练流程
学习率/批次大小/时间步长 · 启动训练 · 监控日志
训练参数
12
训练可视化
TensorBoard奖励曲线 · 损失函数 · 策略收敛性分析
可视化TensorBoard
13
模型保存与加载
保存/加载模型 · 推理 · 断点续训技巧
持久化断点
14
回溯测试引擎设计
事件驱动架构 · 时间循环 · 数据馈送机制
引擎架构
15
性能评估指标
累计收益率 · 最大回撤 · 夏普/卡玛比率 · 胜率盈亏比
评估指标
16
回测结果可视化
净值曲线 · 交易信号 · 持仓变化 · 回撤图
图表分析
17
过拟合检测
训练/测试集划分 · 滚动窗口验证 · 交叉验证
过拟合验证
18
参数敏感性分析
超参数网格搜索 · 学习率/网络层数影响分析
调参网格搜索
19
多品种回测
多股票/期货同时回测 · 组合风险 · 相关性分析
多品种组合
20
交易成本建模
佣金 · 滑点 · 冲击成本 · 固定与比例成本
成本滑点
21
风险管理模块
止损止盈 · 凯利公式仓位 · 最大回撤控制
风控仓位
22
市场冲击模拟
订单簿深度 · 大单拆单 · 流动性评估
冲击流动性
23
策略比较框架
基准策略(买入持有) · RL策略对比 · 统计显著性检验
比较基准
24
实盘模拟对接
模拟交易API · 延迟模拟 · 撮合引擎对接
实盘模拟
25
日志与审计系统
交易记录日志 · 决策过程 · 异常告警
审计日志
26
策略优化
进化策略调参 · 贝叶斯优化 · 遗传算法
优化进化
27
多时间框架分析
日线/小时线/分钟线融合 · 多分辨率状态编码
多周期融合
28
对抗性测试
黑天鹅模拟 · 压力测试 · 鲁棒性评估
压力鲁棒性
29
策略部署流水线
回测到实盘流程 · 差异分析 · 持续监控
部署流水线
30
案例实战
基于PPO的沪深300指数增强 · 数据获取到回测报告
实战PPO