最近有好几次,又有人问我,那种直接给提示买卖指令,并且声称是利用“人工智能、机器学习”等尖端科技研发的程序化交易系统,能不能买,靠不靠谱啊!
网上随便一搜,确实现在多如牛毛的广告,宣称自己的自动提示买卖点的指标如何牛逼。不过阳光下无新鲜事。其实这个程序化买卖点提示,也算不上新鲜事物。在上世纪八九十年代,随着个人PC电脑的发展普及,美国金融交易界就出现了大量的计算机交易系统的买卖。当时人们将这类交易系统称为“3000系统”,因为这些系统大都定价3000美元一套。
至于靠不靠谱?一般来说,我们只要稍微理性点思考一下:能赚钱的策略,人家根本不会卖,凡是你能买到的策略,一定都赚不到钱。
但是依然有很多人,在看了那些策略宣传的历史数据测试之后,被那高胜率、高收益、近乎45度斜向上的资金曲线震撼到,决定要试一试。
但是试,毕竟也是要成本的。通常来说,第一步买这个所谓的程序化策略服务,就要被割一刀,后面如果真实盘跟着做了,那还不知道有多大坑等着我们呢!
那么今天,我就做跟大家揭露一下这些牛逼的资金曲线到底是怎么做出来的。
交易成本
交易成本,包括两方面:手续费和滑点。公开销售的系统,一般都只提供一定时期的回测结果,我的曲线和直线生活作文,少数有实盘业绩展示,且往往持续时间也不长。一个严谨的回测报告,必须计入手续费和滑点成本。
交易成本,包括两方面:手续费和滑点。公开销售的系统,一般都只提供一定时期的回测结果,少数有实盘业绩展示,且往往持续时间也不长。一个严谨的回测报告,必须计入手续费和滑点成本。
线元法(也称为微元法)和圆曲线是两个不同的概念。线元法是一种用微小线元来逼近曲线或曲面的方法,用于数学和物理等领域中的积分、微分等计算。而圆曲线是一种弧度恒定的曲线,在道路、铁路、隧道等建设设计中常常使用。
用一个大家都非常熟悉的MACD金叉死叉策略对螺纹日线级别的历史数据做一个回测。
JD坐标+JD到计算点距离(JD至曲线起点段)*方位角±90*左右边桩距离=直线段边桩坐标。用这个公式90°*L/(π*R),L代表曲线长,用这个公式算出来的度数加ZH点方位角就可以。对于等级较高的路线,在直线和圆曲线之间要插。
左边是没有设置手续费和滑点成本,右边是设置了5元手续费和1个滑点成本的。仅仅是这么正常的交易成本的引入,就能看到资金曲线明显的变化,右图明显就没有那么吸引人了吧!
偷 价
1 缓和段特征曲线几何设计计算 1.1 缓和曲线的坐标、切线角 对缓和曲线(桥中线)上任一点M(x,y),如图1所示,相应的坐标、切线角β为 (1) 式中:l为任意点M至原点0(即ZH点)的曲线长;R为缓和曲线终点的曲率半径;。
或有意或无意,程序化交易策略的开平仓价格上可能会出现偷价。主观上的偷价,属于人品问题,非主观的偷价,多半是技术问题。
而所谓偷价就是用一个盘中无法实现,而回测过程中却可以被记录下来的价格发单。
比如这样一组TB代码:open<high[1] && high>high[1];buy(1,open);意思是如果今天开盘价低于昨天最高价,在盘中今天市场价格突破了昨日高点之后买入开仓。
同样,用回测图做对比就更直观了,左图是有偷价的,右图是没有偷价的。价格一偷,曲线立马上天,标准45度斜向上。
测试样本数是否充足
系统化的交易策略,之所以能实现最终的盈利,是因为其具备统计上的优势。那么在归纳这种优势的时候,统计样本数是否充足,至关重要。
一、JD坐标+JD到计算点距离(JD至曲线起点段)*方位角±90*左右边桩距离=直线段边桩坐标。PS:计算公式:①、X=x1±D*cosα,Y=y1±Dsinα;②、X=x1±D*cosα±Dcosβ;Y=y1±Dsinα±Dsinα;③、如果需要放坡。
这点其实和我们以前所聊到的小数定理是差不多的意思:人们很容易会只通过少量的数据样本就归纳出所谓的规律。
刚接触期货技术分析的时候,在看了红(阴)三兵的技术形态后,观察了几天,发现连着看了几个,都是成立的。于是对这个形态做过程序化回测,用的规则是:出现3连阳(阴)后,第四根K线的开盘价买入(卖出),止损设置在前一根k线的最低点下一跳(或最高价上一跳),使用跟踪止盈,最后在很多品种上做了历史数据回测,一部分品种上并不能实现正收益,另一部分可以,但是资金曲线却也非常的曲折,并不适合实盘。
同样,如果是一个趋势策略,只在过去的一个月里,对豆二这种走出强势空头行情的品种做测试,那么测试结果一定不会差,因为这个月豆二走出了很流畅的空头趋势。但是并不能就此就说这个策略是好的,因为我们通过仅仅一个月的测试结果,无法得知该策略在牛市、在震荡市、或者是在不那么流畅的趋势行情中的表现如何?
是否过度拟合
过度拟合可以是参数的过度优化,也可能是对过去某个特定的行情走势设计针对性的规则以获取最大化收益。
参数优化这个事比较复杂,大家只记住参数优化是有必要的,但是不能过度。这是因为参数优化是针对过去已有的数据,未来的数据是变化的,对过去优化越好的参数,对未来行情的适应度就越低。
而对过去某个特定的行情走势设计针对性的规则,这个事呢,更像是自欺欺人了,纯粹就是为了测试曲线好看,未来能够用到这个规则的概率极低。
下次我们要是忍不住还想试一试的时候,最好先就这几个方面跟卖方好好聊聊,再做决定。
最后想说的是,与其抱着走捷径、不劳而获的想法去选购交易系统,不如自己多花点时间深入研究一下系统交易。