向量化回测引擎:用 NumPy 广播把万次模拟压进一次矩阵运算
for 循环回测一根 K 线一根 K 线地跑,参数扫描时慢到让人放弃——十万根 K 线、两百组参数,循环版可能跑几分钟。向量化换个思路:把信号、持仓、收益全部写成 NumPy 数组运算,让 C 层的广播一次性算完所有 K 线甚至所有参数组合,同样的活压进一次矩阵乘法,实测提速 300~500 倍。本文从零手写一个向量化回测引擎:先讲循环版慢在哪,再用累积和算移动均线、用布尔数组生成信号、用 shift 严守次日执行不偷看未来、用三维广播一次算出 200 组参数的 Sharpe 热图,最后跑 2000 条蒙特卡洛路径压力测试。附速度换内存的取舍分析——向量化不是免费午餐,参数组合爆炸时内存会先崩(中阶)。