把研发说成是“我们编成EA,测试这个规律和历史数据的拟合程度如何,如果拟合的好,复盘就是盈利的”这个说法其实是似是而非的!所谓“找规律”绝不是盲目拟合,这样拟合通常都是用来骗上级外行领导、骗研发经费的。
计算机领域针对任何一个策略的研发,除了用于研究的数据集合之外,还会有“一大半数据集合”分割给另外做测试,它要求“绝不允许被事先拟合”。例如有10万数据,那么可能不到5万数据给研发部门用于寻找规律,而另外5万以上“完全意外的数据”用来只能秘密掌握在测试部门手中,用于排除过拟合。
测试部门进行测试绝不是判断模型跟测试数据是否“拟合得很好”。测试为了证伪,而非证实。如果把测试目的歪曲了,做出来的东西就很容易是偏差的。真正的研发能够最终落地,重点在于排除过拟合。只有能够排除过拟合的策略,才是能够实盘的策略。
在计算机系统研发中,从来都不承认那些只知道书本理论的“半桶水”的教条。研发的目的根本不是为了发布产品,研发的目的是为了通过测试。而设计和进行“广泛、深入、随时回归的”测试,才是为了发布产品。
现在的所谓“神经网络”,其实不等于5、60年前的那种“基于逻辑推理和信息系统发展学说的人工智能”,而是其实7、80年前已经建立起来的“多元统计学”,只不过几十年前计算机不够发达,那个时候可能顶多只能进行几万个变量的方程计算,无法进行几十亿个变量的方程计算。实际上“神经网络”并不复杂,只是多种很简单的统计方程的嵌套。这就好比如说陈景润用一生来研究“1+2定理”问题,而现在的人走另外一个极端,认为可以用计算机直接测试验证到无穷大的数据都符合这个定理、而无需推导。
推到交易策略上来说,就是,我们遇到的绝大多数简单的交易策略,往往都未经实践检验,甚至只是胡乱猜测。 |