链上数据量化回测与策略优化实战
📚 共计 30 章节
01
课程导论与数据源
什么是链上数据?为什么它对量化交易重要?主流数据源(Dune、Glassnode、CoinMetrics)介绍与API接入。
数据源
API
02
环境搭建与工具链
Python环境配置、Jupyter Notebook、Pandas、Numpy、Web3.py、Requests库安装与基础使用。
Python
Web3.py
03
区块数据解析
理解区块结构(Block Header、Transactions),使用Web3.py获取最新区块与交易详情。
区块
Web3
04
交易数据清洗
处理原始交易数据,提取Gas Price、Value、Input Data,处理缺失值与异常值。
清洗
Gas
05
代币转账事件解析
理解ERC-20 Transfer事件,使用Web3.py监听并解析代币转账日志。
ERC-20
日志
06
去中心化交易所(DEX)数据
从链上获取Uniswap V2/V3的Swap事件,计算交易对价格与流动性。
Uniswap
DEX
07
借贷协议数据
从Aave或Compound获取存款、借款、清算事件,理解利率模型。
Aave
借贷
08
链上指标构建
计算活跃地址数、交易次数、Gas消耗、大额转账(Whale Alert)等基础指标。
指标
Whale
09
MVRV与SOPR指标
从链上实现MVRV(市值与已实现价值比)和SOPR(花费产出利润率)的计算逻辑。
MVRV
SOPR
10
NVT与梅特卡夫估值
实现NVT(网络价值与交易量比)和基于梅特卡夫定律的估值模型。
NVT
估值
11
资金费率与未平仓量
从中心化交易所API获取永续合约资金费率与未平仓量数据,与链上数据结合。
资金费率
OI
12
数据存储与特征工程
使用SQLite或Parquet存储历史数据,构建时间序列特征(滚动均值、标准差、Z-Score)。
特征工程
SQLite
13
策略回测框架设计
设计一个基于Pandas的回测引擎,包含信号生成、仓位管理、交易执行与绩效统计。
回测
Pandas
14
简单均线策略回测
基于链上活跃地址数的移动均线金叉死叉策略,编写回测代码并评估。
均线
金叉
15
MVRV阈值策略
当MVRV低于1时买入,高于3.5时卖出,回测该策略在历史数据上的表现。
MVRV
阈值
16
NVT极值策略
当NVT处于历史低位时买入,高位时卖出,结合布林带进行信号过滤。
NVT
布林带
17
多因子信号合成
将MVRV、NVT、资金费率等因子标准化,合成综合信号,回测多因子策略。
多因子
合成
18
风险控制与仓位管理
实现凯利公式、固定比例、波动率调整等仓位管理方法,对比回测结果。
凯利
仓位
19
过拟合与交叉验证
理解回测中的过拟合问题,实现时间序列交叉验证(Walk-Forward Analysis)。
过拟合
Walk-Forward
20
策略绩效评估指标
计算夏普比率、最大回撤、卡玛比率、胜率、盈亏比,并绘制权益曲线。
夏普
回撤
21
参数优化基础
使用网格搜索对策略参数(如均线周期、阈值)进行优化,寻找最优参数组合。
网格搜索
优化
22
遗传算法参数优化
引入遗传算法(DEAP库)进行参数优化,对比网格搜索的效率与效果。
遗传算法
DEAP
23
贝叶斯优化
使用Hyperopt或Optuna进行贝叶斯参数优化,理解概率代理模型与采集函数。
贝叶斯
Optuna
24
稳健性检验
对优化后的参数进行蒙特卡洛模拟与压力测试,评估策略在不同市场环境下的表现。
蒙特卡洛
压力测试
25
实盘模拟与延迟模拟
在回测中引入滑点、手续费与交易延迟,模拟更真实的交易环境。
滑点
延迟
26
事件驱动回测
设计一个事件驱动的回测引擎,处理非连续数据与异步事件(如清算、巨鲸转账)。
事件驱动
异步
27
机器学习特征构建
从链上数据中构建机器学习特征(如地址聚类、网络图谱),为ML策略做准备。
特征
图谱
28
简单ML策略
使用随机森林或XGBoost预测价格涨跌,基于预测信号构建交易策略并回测。
随机森林
XGBoost
29
LSTM时序预测
使用LSTM模型预测链上指标或价格,将预测结果作为策略信号。
LSTM
时序
30
课程总结与未来展望
回顾核心知识点,讨论链上量化的未来趋势(如MEV、意图交易、全链游戏)。
MEV
全链游戏