辰东那本书最好看:决策交易系统公式编程(公式优化与测试平台)
来源:百度文库 编辑:中财网 时间:2024/04/29 18:14:50
第五章 公式优化与测试平台
指标公式的优化
条件选股公式的优化
交易系统公式的优化
无论是指标、条件选股,或者交易系统的编制,都是一个循序渐进的过程。这一点在交易系统中表现得尤为突出,从一个方案的提出,到量化,编制公式,然后在以后的不断的检验--历史数据下的静态检验,当前数据下的动态检验,实战检验,任何其中的一个环节如果发现有不合理的,不准确的的地方都需要我们对整个公式系统进行修改,使之更加完美,也许可以将之称为“优化”。
在金字塔决策交易系统1.90的版本中,突出了这个功能的实现,可以通过测试平台对所有的公式化分析工具或者交易工具进行全方位的测评,并提交一份翔实可信的测试报告,在以下的几节中,我们将通过融合测试平台的使用对指标、条件选股以及交易系统的公式进行优化。
5.1 测试平台的基本内容和架构
在金字塔决策交易系统中为技术指标、条件选股以及交易系统建立了统一的测试平台。在【交易】栏中选“程式化交易评测”,或按Ctrl + F7
假设我们选择了技术指标当中的MA进行测试,在设定好一定的买入条件和卖出条件以及测试的市场模型之后即可对任意的指标、公式等进行测试。金字塔决策交易系统中提供了两种不同的测试模型,一种是针对全部信号的单个股票测试,另外一种是为了最佳的模拟真实的买入和卖出条件,以及参与市场的投资策略的测试模型,具体的内容和区别请后面的说明。
买入条件设定
测试时段,也即测试的时间区间,金字塔决策交易系统默认的区间为20000101到当前。
买入规则,在金字塔决策交易系统中有以下的买入规则,如果默认的买入规则无法满足您的要求,您可以在条件选股当中编制您的买入条件。
介入时机与价位,针对交易系统的4种信号,指定买卖的介入时机与价位。
平仓条件
金字塔决策交易系统提供以上7种平仓条件,涵括卖出指令和止损指令:
目标周期为终点,到时自动平仓,20周期以后的收盘价平仓;
目标利润为终点,到时自动平仓,10%帐面盈利以后的收盘价平仓;
五类止损平仓:分别设定不同类型下的规避风险条件
交易费用:按证券和期货,根据成交额和成交量计算佣金;
市场模型:金字塔决策交易系统提供两类市场模型供测试分析
5.2 测试和公式优化的示例
例一:MA均线指标参数优化和测试
MA均线指标是我们较为常用的一个技术指标,我们通过测试平台来初步检验一下该指标的使用效果,当然我们所能做到的是假设我们在历史的某一天计算机提示了一个买入点,并且我们按照这个提示在当时进行了买入的操作--在一段时间之后的行情将会检验我们在此之前的操作的合理与否!
参数名 最小 最大 缺省
N1 0 300 5
N2 0 300 10
MA5:MA(CLOSE,N1);
MA10:MA(CLOSE,10);
因为不同的均线周期数应用了不同的分析市场中有不同的反映,根本的原因在于每一个合理的市场都存在自己的运行周期,所以个股的表现也紧紧地和市场联系在一起,体现在指标分析当中,就效果较好的指标参数可以比较准确地描述和预测股票运行的方向。以下我们利用测试平台来检验和寻找理想的MA均线参数。
第一步:在测试平台中选择MA均线指标
第二步:点击下一步,设定测试时段和交易规则
在上例中,我们选择了从20000101-20070226这一时间段,并且选定了买入规则为指标线MA1向上穿过了MA2的时候使用全部的资金买入。
第三步:设定相应的卖出条件和停损条件,并且选定测试的股票数量和对象,我们假设使用整个沪市的股票进行测试!
市场模型:
注意这里为了检测真实的全市场的信号状况,我们选择了单品种测试;
10万资金,我们是针对的出现的所有的信号都按照20天10%的测评条件进行测试,无论信号出现的时间、次序,是否可以成为真实的买入点;现在提供另外的全市场测试,允许我们模拟真实的10万资金在一段时间内按照规定好的条件连续的买入和卖出,最终统计在一定的时间内的一个模拟帐户的交易收益!
第四步:在浏览了整个测试的结构和条件之后,金字塔决策交易系统提供了参数优化的模型--或者您可以直接略过参数优化直接进入到结果测试当中去。
为了简单起见,我们选用了对两条指标线的参数进行优化测试,一条是短期均线;另外是一条长期均线,短期均线的优化步长设定为5,长期为10,整个优化的次数不得超过10000次。
测试的结果分别在以下用两种表达方式分别用图表形象地列出:
分析:通过以上的两图一表,我们可以发现以下的特征:在列表结果中,所有的成功率集中在50%-60%的窄区间内,说明参数周期的长短没有对结果产生太大,太剧烈的影响,在图形方式中,可以观察到参数范围(5,20)-( 15,20)之间的颜色为红色,也就是说净利润最高;
假定以第一个参数为序列递增,信号的数量相反下降,从15367个信号降到了3000个,可见参数对信号的多寡有很大的影响,在实际投资中产生的交易机会的把握会同样有影响;
现在可以解释为什么我们通常会使用5、10、20、30等几个参数作为MA均线的原因了!在保障几乎相当的成功率的前提下,选择最多的信号密集区是我们在实战当中必要的客观技术要求下的环境,也正是这一点促使产生这样的参数,并且被很多的投资者认可,我们通过测评系统的计算,得出了结论!同样我们可以通过这个测评系统得到其它的所有公式、指标等等其相关的最佳参数集,从而完成了公式优化的第一大步!
例二:MA均线交叉的条件选股测试和条件优化
测试:
承接上面的例子,我们结合市场的普通使用状况和我们的优化表中的数据采用其中一组合适的参数作为测试的对象,来分析市场广为流传的均线买入卖出法进行测试。
输入MA均线的公式,并且使用参数5,10进行测试:
注意这里为了模拟真实的10万资金在一段时间内按照规定好的条件连续的买入和卖出,最终统计在一定的时间内的一个模拟帐户的交易收益!我们选择了全市场测试:
从20000101-20060226我们测试了所有的上海市场的A股得出了以上的结论,总共的交易信号数量达到4656个,其中信号的优劣各占5成,但是年收益率为1.72%,就是说条件MA5向上交叉MA10日均线的利润几乎为0!
优化:
既然借助计算机和金字塔决策交易系统的我们已经测得“如果只是简单的使用MA均线,即便改变使用最佳的参数,而不考虑其他的因素的话,从概率的角度上讲,基本是两平微亏的局面......所以为了更好的利用计算机的作用帮助我们寻找更高更好的交易策略,需要对原来的条件进行更改或者加以限制,过滤掉多余的错误的信号”。
在优化的过程中,我们需要分析全部的各个信号出现时当天的具体状况,然后剔除比较恶劣的条件......尽量保留真实有效的信号!
以下是我们随机寻找了一个补充条件,当天出现大阳线和MA均线配合使用:
则现在的测试条件变为:
A1:=MA(CLOSE,5);
A2:=MA(CLOSE,10);
AA:=CROSS(A1,A2);
B1:=CLOSE/REF(CLOSE,1)>1.07;
B2:=CLOSE=HIGH;
AA AND B1 AND B2
再用以同样的条件下进行测试,我们得到了以下的图标,可以见到收益有了较为明显的提高!这样一来,说明新的公式所描述的选股条件较原来的条件更有意义,在实际操作中的参考价值也相对要高。
收益率:61.29% 交易数量:48 胜率: 75%
事实上每一个公式都是通过这样的测试,不断的完善之后才会交给到正式的市场去再检验,如果您承认市场是可以找到这样的规律,它们确实存在,那么这个公式才会有意义,您才会去不断的改良它!作为技术分析的前提,也正是我们金字塔决策交易系统公式发挥作用的前提!
例三:一个简单交易系统的测评和优化
一个简单的交易系统
“如果在一个KD强势的市场中,如果股价从下方穿过了30日均线,并且当天的成交量有比较明显的放大,我会买入;我的卖出条件是股价跌下10日均线之下立即抛出,当股价跌出买入价的5%时候主动止损”。
在我们前面的介绍中,曾经介绍过一个朋友的最简单的交易系统,交易系统是在不断的重复改良,辩证和创新中得以升华的--现在就这个简单的交易系统,我们来做一下系统的综合评测,让历史上的数据来判断吧!
原来的公式系统为:
MA5:=MA(CLOSE,5);
MA10:=MA(CLOSE,10);
//先平后开的原则
EXITLONG:CROSS(MA10,MA5);
EXITSHORT:CROSS(MA5,MA10);
ENTERLONG:CROSS(MA5,MA10);
ENTERSHORT:CROSS(MA10,MA5);
交易系统在卖出条件上与其他的公式系统测试有所不同,其他的都是使用同一个测试平台,都是一样的,我们可以先简单地将交易系统看作是条件选股的扩展,区别是交易系统的卖出条件更加的丰富,可以自己根据实际的经验来编写;而条件选股的公式在这个测试平台上,只能遵守强制卖出和止损的固化的条件。
5.3 图表程式化交易的启动和运行
1、首先将准备执行程式化交易的公式,放到图表上显示。
2、选择【交易】---》【图表程式化交易】,将出现用以设置图表程式化交易的界面。
3、进行一些必要的设置以后,单击“启动交易”按钮即可。