【原创】我有一个目标,做一个交易“圣杯”(一)
作者:李为
常听人们说,交易市场不可能存在“圣杯”,就像不可能存在“永动机”一样,但我本人不信邪,我这辈子在交易市场有个目标,就是要做“圣杯”。
既然和大家聊这个话题,我先对我所谓的“圣杯”,做一个定义,我所谓的圣杯,指的是:只要程序加载,就不需要再做任何关注或手动干涉等行为。即一种全自动,无干涉的状态。
目前来看,我离这个目标状态越来越近了,今天和对程序化交易有兴趣的朋友做一点心得分享。
“圣杯”(全自动交易模型)的必要条件:
1.模型(程序)能够实时识别并反映当前市场状态。
先不考虑高频交易的情况,模型需要做到每一秒(每个tick)检测一次你所交易的市场。并实时将得到的信息反馈出来。
程序化交易业内其实有这么个观点,就是大家不敢用k0的信号,觉得k0的信号会闪烁,所以往往都是采用k1的信号作为确认。
可能有人不知道我这里所谓的 k0,k1是什么意思,为了方便理解,画图进行说明:
展开全文
所谓k0,指的就是蜡烛图里当前图表最新的那个k线,这个k线会随着价格的上下变动而上下变动。所谓k1就是指的前一根k线,它已经收盘了,所以不会随着价格的变动而变动,然后从后往前,依次为k1,k2,k3.....
现在大家可能明白为啥一般的模型往往采用k1信号,而不采用k0的信号,因为k0还在不停变化。如果我是一个均线金叉死叉的模型,假如价格在k0不停地金叉,死叉,忽视的话错过行情,重视的话来回打脸,你让我该怎么办?
所以大家基本上都是采用k1的信号,前一根k线金叉和死叉是已经确认的,那么这个信号也是确认的,不会再来回闪烁。但所有的事情都需要一分为二去看待,k1确实保证了确认性,但却忽视了及时性。
及时性对于开仓环节来讲,问题还不大,无非就是可能错过一些行情机会,但对于出场环节的影响会很大。如果你用k1去出场,面对突发的,各种妖娆的行情,可能面临极大的潜在亏损。
为什么必要条件需要实时识别市场状态,就是为了能够在面临“意外”的时候,能够根据市场状态及时作出对应举措,这个我们后面细聊。
我们需要先聊一下,当前市场状态应该展示哪些要素,这个话题也比较大,我尽量把问题缩小化:
第一个模型要素:主体,如果你的模型是单品种的,比如xauusd(黄金/兑美元),那么主体就是这一个,如果你的模型是同时关注“直系货币+间接货币对”,那么你的主体就是28个货币对,我目前开发程序就是这种(见下图)。
第二个模型要素:方向,你需要对你关注的主体一个定性分析结果,定性无非就是两种情况:“多头”,“空头”,这是从方向角度的一个定性,你不需要预测市场是要涨,还是要跌,我个人也是不相信行情是可以被预测的。当然如果从波动率的角度,你还可以定性分为:“趋势”,“震荡”这两个维度。
还是以上图为例,我模型里面的正数代表“多头”,“负数”代表空头。
第三个模型要素:程度,也就是在定性的基础上更深一层分析,代表一种多空程度,这个应该也不难理解,识别出“多头”来是不够的,我需要知道它是“微涨”,“小涨”,“大涨”,还是“暴涨”状态?
以我的模型为例的话,我通过绝对值从0-10,对“多头”级别进行了一个程度划分,做到了实时识别并反映当前市场状态。
如果说整个流程是做一道菜的话,以上我们已经了完成了“食材”的准备阶段,后面就是要对食材进行处理,加工,制作等等环节了。
材料的准备环节看起来是很轻松,但我光完成以上材料的准备就花了半年以上的时间,包括理论的构建,指标的编写等等。我之前在汇商琅琊榜一次线下沙龙有讲过,我把“交易”是当成是一门学科在研究,如果不是对交易有着无限的热爱,我相信自己也很难坚持下来。
我希望以后有更多机会和大家交流我在“全自动程序化交易”模型方面的一些研究。目前该模型已进入模拟盘测试环节,就像我说的,一经加载,无需再做任何人为干涉。
目前来看,随便配置的不同参数(不存在拟合)“刷单型”,“标准型”,“谨慎型”账户都是盈利状态,当然还需要不断观察,寻找潜在风险点并完善。关于“圣杯”全自动交易模型的必要条件还有其他,未完待续。
评论