欢迎光临
我们一直在努力

期货程序化敏感性测试模型是什么意思?赢智wh8期货

wenhuacaijing阅读(1106)

敏感性测试了解模型脾性

模型的效果受很多因素影响,如滑点、手续费、杠杆倍数等,我们将模型的这种特性称之为模型的敏感性。敏感性小的模型是更稳定、更好的模型。

我们将模型的敏感性绘制成图表,就可更直观的分析出模型的优劣。例如在分析滑点对模型收益率的影响时,用横坐标表示滑点,纵坐标表示收益率,很明显滑点对收益率影响小的模型是更优的模型。

(一)案例:盈利的模型就是好模型么?

如下图所示,这是一个盈利的模型,也许40.92%的胜率和8.44%的最大回撤会让我们觉得这个模型还算可以,但这一定是一个好模型么?

让我们从一个二维关系去审视这个模型,看一下滑点和收益之间的关系:从下图可很明显的看出,滑点每增大一点,收益率就会大幅下降;当滑点为2个最小变动价位的时候模型已经失去了盈利能力。而实际交易的时候,我们很难做到0滑点,这个模型也就很难盈利。

分析报告得到的是各衡量指标的独立数据,而敏感性测试可告诉我们一些重要指标的变化对盈利、胜率等的影响,让我们深度了解模型的脾性。

(二)进行敏感性测试的操作方法

如下图所示,是如何进行敏感性测试

期货程序化里模型好坏怎么检测?赢智wh8期货

wenhuacaijing阅读(1098)

回测报告分分钟检验模型好坏

对一个模型进行测试时,我们需要计算每一次历史交易的盈亏、回撤等来得出收益率、最大回撤、胜率等我们需要的数据,但这些数据如果全靠手动计算几乎是现实不了的。程序化交易软件充分利用了计算机强大的运算能力,可针对测试的模型瞬间出具一份含有众多参考数据的详细报告,分分钟就能检验模型好坏。

(一)案例:利用分析报告360度检测模型

下图是一个分析报告的一部分,图中②、③指标是我们通常最关注的数据,很多人会认为盈利率高,胜率高的模型就是好模型,真的是这样的么?让我们再来看看图中的①、④衡量指标。

报告显示该模型在效果测试中最大回撤高达153860,最大回撤比已经逼近了50%,这就意味着该模型并不是一个稳定的模型,如此大的回撤一方面会在实盘中带来权益的锐减,另一方面会使交易者的心态受到严重的影响。再看④指标,空头交易的平均盈利/平均亏损测算结果是0.88,这就说明该模型的空头交易绝大多数是亏损的,实盘中,做空的操作很可能成为模型的短板。

所以在衡量一个模型的好坏时,我们要充分利用软件提供的测算报告,根据各个测算指标全面考量模型。

(二)案例:效果测试结果的升级应用

很多经典理论为我们提供了一些计算交易数据的公式,而“分析报告”可帮助我们计算出这些公式中所需要的数值。

例如著名的凯利公式,可通过胜率和盈亏比计算出开仓的最佳资金比例;凯利公式f*=(b*p-(1-p))/b,其中f*为开仓最佳资金比例、b为模型的平均盈利/平均亏损、p为胜率,在测试报告中,平均盈利/平均亏损和胜率均已经算出,我们只需要把这些数据代入公式中就能得到模型最优的开仓比例,如下图。

(三)进行收益率测算的操作方法

如下图所示是如何进行模型的回测:

(四)相关常见问题解答

1、如何修改回测时初始资金等相关参数?

:使用新参数重新回测按钮,当修改回测参数,如起止时间、初始资金等时,点击该按钮,会按照新参数对模型进行回测。测试进行时点击该按钮可以暂停测试。

:查看回测报告

2、“资金曲线”中的两种资金曲线显示模式是什么含义?

答:如下图所示:

全局缩略:软件会自动显示加载起止时间所有的数据,以及完整的资金曲线形态,投资者可清晰看到软件资金曲线的整体情况。

局部细节:显示模型的局部细节信息,在“回测“的k线图上单击鼠标右键,可在这两种模式下设置显示信号、显示信号连线。

3、赢智V8.3是否支持逐笔回测?

答:支持;模型中写入CHECKSIG或MULTSIG函数时,支持逐笔回测。

注:公式条件单不支持写入信号执行方式函数,不支持逐笔回测,默认以“K线走完确认信号下单”为回测形式。

4、效果测试指标项说明:

注:对于盈利、亏损的计算,带有*的是都是以从开仓到持仓为0算一次交易计算盈亏,未标注*的是按照一开一平来计算盈亏。

5、图表分析各图表项说明

收益/风险:

(1)损益曲线图

(2)权益曲线图

(3)盈亏分布图

(4)连续亏损次数

浮动盈亏:

(1)权益面积图

(2)浮盈面积图

(3)浮亏面积图

(4)浮盈分布图

(5)浮亏分布图

阶段统计:

(1)月度统计

(2)日统计

效率分析:

(1)总效率分布图

(2)建仓效率分布图

(3)平仓效率分布图

盈亏分析:

(1)胜率分析

(2)盈利分析

(3)亏损分析

(4)回撤分析

什么是期货海量数据监测模型?赢智wh8期货程序化

wenhuacaijing阅读(971)

海量数据检测模型

当模型编写好后,通常需要对这个模型做测试,检验这个模型在历史k线图上的运行效果,但如果测试的数据不够多,那么测试结果会由于样本少不能涵盖较全面的行情而片面不客观,导致程序化的执行效果和预期相差甚远。因此,历史数据的多少从一定程度上决定了测试平台价值高低。嬴智WH8提供海量历史数据,并且能够灵活选择测试起止时间,让模型效果测试真正做到有实际参考意义。

(一)案例:国内合约提供从开市至今的全部历史数据

由于趋势模型通常要加载在较大的周期上,因此在进行效果测试的时候需要更长的时间历史数据作为测试样本,如果测试数据不够多,则无法达到检测模型的目的。赢智WH8中提供各合约从上市开始的数据,下图是对股指加权合约上市至今的全部数据进行的效果测试。

(二)申请海量历史数据的操作方法

通过在主图点击鼠标右键的方式申请数据

如下图所示,是如何通过在主图点击鼠标右键来申请合约数据:

(三)相关常见问题解答

1、因为网络断线或其他原因,存在错误的数据,如何将错误数据更正?

答:当您发现K线数据存在错误时,可通过k线图右键->补充历史数据,在弹出界面选择清除当前周期数据,这样错误数据就会被删除,然后在重新补充数据。

2、为什么在【补充数据】中找不到想补充的合约周期。

答:加载列表中所列出的合约周期是基础数据;其他周期的数据由这些基础数据合成,因此,在申请数据的时候只对基础数据做申请。

合成原则:

用tick合成的数据:秒周期,自定义秒周期以及逐笔回测数据。

1秒合成的数据:5s,10s,15s,30s,以及自定义秒周期。5s,10s,15s,30s,以及自定义秒周期。

1分钟合成的数据:30min以下的周期,以及自定义分钟周期。

15分钟合成的周期:30min,1h,2h,3h,4h,自定义小时周期。

日线合成的周期:日线及以上周期。

3、为什么申请IF1408的数据只能申请最近一年的但IF加权却可以申请更多。

答:软件申请数据时会按照合约进行申请,即申请IF1408合约就是申请14年股指08月份合约数据,因此它的数据是一年的IF1408数据。股指加权合约是连续、不换月合约,因此它的数据是股指上市以来多年的。

如果想看1308的数据,可以在k线图上右键->选择历史年度合约,选择IF1308。

股票程序化的选股回测是什么意思?赢智wh8期货

wenhuacaijing阅读(1251)

选股回测

公式选股可以帮我们选出交易思路下优秀的股票,但却不能判断这些股票在当前思路下的具体表现是否真的优秀。选股回测功能可以对选出的股票进行历史回测,检验选出的股票是否真的适合使用当前策略交易。

(一)案例

利用选股回测功能,选出指定历史时间段中每天符合选股条件的股票,并且逐日查看股票明细及K线图。如:选出满足5日内阳线根数多于阴线的股票

选股公式:COUNT(ISDOWN,5)<COUNT(ISUP,5),SELECT;

除此之外还可以做进一步筛选,在之前选出的股票基础上,筛选成交量连续三个周期放量的各股。

选股公式:

B:=VOL>REF(VOL,1);

COUNT(B,3)=3,SELECT;

股票程序化公式预警是什么意思?赢智wh8期货

wenhuacaijing阅读(1120)

公式预警

当通过公式选股找出可能有交易机会的股票后,就需要确定入场点了,入场机会转瞬即逝,如果抓不住,就会错失很多利润。在技术分析中,投资者常常有自己的交易策略,什么样的条件进场、什么样的条件出场,如果我们有赚钱的交易策略,但由于不能及时知道,而错失机会,就太让人懊恼了!

(一)案例

案例1、公式预警监测多只股票

公式预警可以同时监测多只股票,发现有满足公式条件的股票及时提醒你,让你不错失一点利润。

如:某只股票满足下面公式时,给出提醒

MA5:MA(C,5);//定义5周期均线

MA10:MA(C,10);//定义10周期均线

MA30:MA(C,30);//定义30周期均线

C>MA30&&CROSS(MA5,MA10),SELECT;//最新价在30均线之上,且5周期均线上穿10周期均线,报警

如下图所示,是满足公式时弹出的提醒界面。

案例2、多窗口分钟周期公式预警

可以在自设多窗口页面中加载预警模型,实现分钟周期预警。满足条件时,软件会自动弹出预警列表窗口。如下图所示:

注:多窗口分钟周期公式预警只需直接将预警模型加载到K线图即可。切换页面,预警自动失效,再次回到页面预警重新启动。

(二)调用方法

通过软件右上方菜单【系统工具】->公式预警,按照下图所示方式设置。

(三)常见问题

1.如何编写预警公式

答:通过软件右上方菜单【编写】—>编写趋势跟踪模型建立预警公式,注意预警的公式,源码后面必须要加SELECT;如:ISUP,SELECT;

2.公式预警在软件开启时自动加载吗?

答:是的,软件关闭时自动保存,软件启动时自动加载;

3.如何设置预警频率?

答:软件右上方菜单【个性化设置】->其它设置->公式预警计算间隔,可控制公式预警计算频率

例:如果设置10秒计算一次,连续预警,预警条件为:ISUP,SELECT;

则如果当日k线一直为阳线,10秒出一次预警

4.合约满足条件为什么没有预警?

答:当公式预警后,只对当时选择的板块(如自选一)中的合约进行预警。如再此之后再对自选一进行添加合约,后添加的合约不在预警的范围内,您需要重新设置公式预警。

什么是公式选股?股票公式选股,赢智wh8期货

wenhuacaijing阅读(2071)

公式选股

股票总数已经达到三千只,散户通常无从下手,把股票全部翻一遍也要好几个小时,如果还要研究、查找资料、个人的精力和时间是远远不够的,迫切需要一个可以帮助投资者迅速找到合适交易合约的方法,而公式选股可以将指标作为条件。设定指标后,可以将符合条件的股票全部选出来,并加到自选中,再去慢慢研究,优中选优。

(一)案例

案例1:

根据以往的经验,连续两日都没有下影线的股票可能预示着将有一波行情出现。我们可以这个思路编写成选股公式,利用公式选股将这类股票从选出来,下图为从3000只股票中选出的符合连续两日都呈光脚阳线的股票。

案例2:

在技术分析的诸多工具中,乖离率(BIAS)是最常用的参考指标之一,通常当股价与十日平均线乖离率达-8%以下为超卖现象,是买入时机,我们可以通过编写选股公式将出现超卖现象的股票选出,下图为利用上述乖离率策略选出的出现超卖现象的股票。

(二)公式选股编写规则

选股公式里需编写SELECT语句,SELECT语句语法如下:

(1)COND1,SELECT;

选出最后一根K线满足COND1条件的合约

(2)COND1,SELECT;

COND2,SELECT;

选出最后一根K线满足COND1条件或COND2条件的合约

(3)COND1,SELECT;

COND2,SELECT;

COND1,BK;

COND2,SP;

AUTOFILTER;

选出最后一根K线满足COND1条件或COND2条件的合约

例:选出最后一根K线满足MA1上穿MA2或MA1下穿MA2的合约

MA1:MA(CLOSE,5);

MA2:MA(CLOSE,10);

CROSSUP(MA1,MA2),SELECT;

CROSSDOWN(MA1,MA2),SELECT;

(三)调用方法

通过软件右上方菜单【编写】->公式选股,按下图所示方法,选出符合上述条件的股票。

(四)相关常见问题解答

1.选股公式是在什么周期上进行筛选的?

答:日线周期,筛选出来的选股数据是截止到点计算那个时间的日线数据,盘中不会再更新数据,根据最后一根日线是否满足条件决定合约是否能被选出,注:可在个性化设置–其他设置–选股k线样本范围后设置回测时间范围。

期货程序化的算法交易是什么意思?赢智wh8期货

wenhuacaijing阅读(1596)

算法交易实现高频策略及个性化下单

这部分是在原算法交易模型功能扩展而来的。

很多成功的程序化交易投资者每年算一笔账,在滑点上的损失比交的手续费还要多。随着投资者对程序化交易的认识不断提高,投资者之间将逐渐从交易策略的较量转变为下单精细化控制的博弈上来。算法交易模型可对程序化委托的每个环节进行精细化控制,达到降低交易成本的目的,如何减小滑点成本,减小交易的摩擦成本是他们的着力点。

(一)案例1:追价算法交易模型确保成交

模型满足开仓条件发出委托信号后,因行情变动快,加之下单手数多等原因,可能无法快速成交。通过绑定自己编写的追价算法交易模型,可及时将没有成交的部分进行自动撤单,然后自动按照编写的价格方式重新发出委托,如果出现价差过大或长时间无法成交等则放弃本次交易。下图为算法交易模型策略部分源码。

 算法交易模型执行效果如下图所示,在第一次委托没有成交时,算法交易模型对委托进行了撤单,撤单后重新追价,确保了委托的成交。

(二)案例2:分批下单,实现大单拆分

大客户由于资金量大,满足模型条件时如果一次下单手数过多很可能无法成交或直接将价格打穿。通过绑定自己编写的分批算法交易模型,可在下单时由系统自动拆分成合适的小单分批委托,也可由算法交易模型监测价差过大时是否放弃后续委托。下图为算法交易模型策略部分源码。

算法交易模型执行效果如下图所示,利用算法交易模型,将20手委托拆分成4批委托,每批5手。

(三)案例3:实现自己的止盈止损策略

软件中会提供几种默认止赢止损策略,但有时还是无法完全满足用户的多样性需要,算法交易模型的函数可取到盘口价格和持仓合约的信息(持仓价格、数量、和盈亏等),通过编写算法交易模型可定制属于您自己的止损止盈策略。

跟踪止盈是软件默认提供的策略,但如果希望在盈利达到一定值时在启动跟踪止盈策略,就无法实现了,下图为按照此需求编写的独立运行的算法交易模型的部分源码(盈利达到3个点后启动跟踪止损策略)。那么在开仓后,独立运行的算法交易模型就会开始取盘口价格和持仓价格实时监测,满足了条件会自动发平仓委托。

(四)算法交易模型的建立和运行

1、建立算法交易模型:

如下图所示是如何建立算法交易模型:

2、运行算法交易模型:

如下图所示,是如何运行算法交易模型。

(五)相关常见问题解答

1、算法交易模型的编写语法在哪里可以找到?

答:如下图所示,点击软件上方菜单的【编写】—>编写算法交易模型,在弹出的窗口中点击【帮助】—>基本语法,即可弹出算法交易模型编写语法的网页。

2、算法交易模型可以使用策略模型的函数么?

答:模型和算法交易模型的函数库是相互独立的,不能互相引用的。

3、手动开仓的单子可用算法交易模型平仓么?如何平仓?

答:手动开仓的单子可使用独立运行的算法交易模型平仓。在算法交易模型中可利用发出委托函数(T_Deal)指定平仓的合约。

4、算法交易模型能否取到模组信号?

答:算法交易模型可以取到模组信号,并通过这种方式实现对指定模组的下单精细控制。

方法:

VAR Modname;

Modname=”模型名”;

算法交易模型中,指令状态函数与Modname关联即可,例如Modname.F_Sig()==BK

注:想要使用算法交易模型取到模型信号,模型需要在编写时加入SETMODRUNTYPE函数。

5、算法交易模型能否识别具体模组的具体信号?

答:可根据行数来判断,使用F_SigPos()函数判断当前信号在模型中是第几个有指令的语句。

6、算法交易模型可以进行效果测试么?

答:可以,如下图所示,是如何进行算法交易模型模型回测

7、程序化自动下单一定要使用算法交易模型么?

答:也可以不编写算法交易模型的;软件自带的精细控制功能也可使用。

期货程序化多模式组合是什么意思?赢智wh8期货

wenhuacaijing阅读(865)

多模型组合分散交易风险

很多投资者在寻找一种模型可分辨趋势行情和震荡行情,因为一个在趋势行情中表现不错的模型到了震荡行情可能损失惨重,甚至反盈为亏。而使用多模型组合可将震荡模型和趋势模型同时加载到一个合约中,当行情震荡时,震荡模型的盈利可冲抵趋势模型的亏损。而当趋势行情到来的时候,这种多模型组合可共振盈利。

(一)案例

下图是一个适用于螺纹钢的趋势模型,我们从图中的白色资金曲线走势可看出,在单边下跌行情中,资金曲线不断增长,但当震荡行情到来时,大量获利资金回吐,资金曲线不断下降。试想,如果这样的震荡行情持续下去,我们还能在市场中坚持多久?如果为了先活下来而暂时从市场中出来,我们又是否能在下一次趋势行情到来的时候准确判断及时回到市场?

通常在市场处于趋势行情下,获利是一件相对比较容易的事情,趋势策略的程序化模型往往能够收到不错的回报。但在震荡行情中,趋势策略由于不能适应频繁波动的行情又使得获利的资金回吐甚至反盈为亏。能否找到一个模型可让我们在震荡行情中保住固有资金,在趋势行情到来的时候又能及时参与到市场中?答案是否定的,但我们可通过组合投资来解决这个问题。

下图是一组针对螺纹钢设计的投资组合,我们并没有让趋势模型孤军奋战,而是为它配备3分钟周期日内波段模型和15分钟周期波段模型。从图中可看出,当趋势模型遇到震荡行情资金回吐时,震荡模型却是盈利的。这些盈利恰好冲抵了趋势模型的亏损。而当趋势行情到来,三个周期的模型会呈现同时盈利的共振局面,实现财富的增长。

下图可直观的揭示投资组合的优势。组合的形式起到了削峰填谷的作用。为的是追求资金曲线平滑稳定的增长,避免资金的大幅回撤所导致的交易风险。

(二)对组合策略进行测试

1、如下图①-③所示是如何对组合策略进行测试:

(三)相关常见问题解答

1、已经进行过测试的组合,能否保存起来以便于下一次直接调出?

答:可以,可通过下图所示的方法对当前组合进行保存。再次打开点击【打开现有组合文件】即可。

2、为什么添加组合成员后“进度”中显示的是未计算?

答:这是由于在添加组合成员时没有勾选【添加后自动计算】;选中未计算的组合成员,点击下方【更新】按钮即可,如下图:

3、组合成员的资金曲线颜色可修改么?

答:可修改,如下图所示是如何修改资金曲线颜色:

4、已经添加的组合成员如何修改合约参数?

答:选中要修改的组合成员,点击组合测试界面下方的【编辑】按钮,即可对组合成员参数进行修改。

5、为什么组合测试界面的【回测】中,有左右两个纵坐标,分别代表什么?

答:左侧纵坐标为各策略组合后的资金曲线坐标,右侧纵坐标为各个策略的资金曲线坐标。

6、组合测试界面的【阶段总结】中,权益增长速度如何计算?

答:权益增长速度=(本期净利润-上期净利润)/本期期初权益。

7、回撤贡献度得分越高越好么?

答:是的,回撤贡献度分数越高说明回撤小,贡献大。

贡献度分数算法:

1)策略1和策略2每个时点上比较,回撤小的得2分,回撤大的得1分,总分就是每个时点得分之和,比如在某一个时点上,策略1的回撤小,策略2的回撤大,那么策略1就得2分,策略2就得1分,此时总分是3分。每个时点上都会计算得分,然后把策略1和策略2的得分分别加起来就是各自的得分。得分高说明策略的回撤小,贡献就大。

2)回撤比贡献度以每个时点的最大回撤比做比较计算各个点的得分之后加起来计算总得分。

8、如何实现快速将同一模型加载至不同合约进行测试?

答:如下图所示,利用合约篮子功能可实现该想法。

1)在组合测试界面点击菜单栏中的【合约组合】—>【回测一篮子合约】

2)在弹出的窗口中选择要加载的自选页面,就可以对自选页面的合约进行测试。

3)选好回测的模型、周期等参数后,点击确定按钮保存即可。

9、如何实现快速将同一合约同一周期加载不同模型进行测试?

答:如下图所示,利用模型篮子功能可实现该想法。

1)在组合测试界面点击菜单栏中的【模型篮子】—>【新建篮子】

2)在弹出的窗口中选择选择一些要加载的模型。

3)点击“模型篮子”中的【加载模型篮子】,在弹出窗口中设置一些选项,点击【加载】,可实现快速对同一合约同一周期加载不同模型进行测试。

期货程序化加减仓模型是什么?赢智wh8期货

wenhuacaijing阅读(2517)

加减仓模型实现加仓、资金管理策略

一开一平信号过滤模型是开平对应的,开仓后只能是与之对应的平仓操作。可有时我们想实现加减仓等策略,显然一开一平信号过滤模型无法实现,而加减仓模型开仓后可继续加仓,实现了自由加减仓以及更高级的资金管理策略。

(一)案例1:利用加减仓模型实现波段突破加仓策略

下图是基于长短周期波段突破思想编写的策略模型,在行情有效突破周期指定价格时开仓入场,入场后继续判断行情,若行情继续向有利方向做有效突破,策略执行加仓动作,若行情向不利方向发展并满足出场条件,清仓出场。

上图是该波段突破加仓模型的信号效果,图中的指标线形是我们的突破判断标准,当行情有效突破时,软件会自动开仓和加仓。

(二)案例2:利用加减仓模型实现资金管理策略

资金管理在交易中是一个非常重要的思想,我们常用控制资金使用率、按资金的固定百分比下单等方式来控制交易的风险。这些策略都可通过加减仓模型的编写来实现。

1、控制资金使用率思想:

交易思路:在已经有1手持仓的情况下,控制做多开仓交易的资金使用率不超过资金的百分之30

编写方法:BKVOL>=1&&A&&BARSBK>1&&MONEYRATIO<0.3,BK(1);(其中A为开仓条件,红色为资金控制部分代码,MONEYRATIO表示资金使用率)

2、按资金的固定百分比下单思想:

交易思路:在已经有1手持仓的情况下,每次加仓手数按照可用资金的20%计算

编写方法:BUYVOL>=1&&A&&BARSBK>1,BK(MONEY*0.2/(C*MARGIN*D+FEE));(其中A为开仓条件,红色为资金控制部分代码,MONEY表示模组资金余额)

注:

MONEY*0.2/(C*MARGIN*D+FEE)解析:

用可用资金的百分之二十除以每一手开仓所需资金即可计算出下单手数。其中“每一手开仓所需资金”可用“(最新价*合约保证金比例*合约交易单位)+合约手续费算出”,D为合约的交易单位。

(三)加减仓模型编写规则

1、源码中不能有AUTOFILTER一开一平信号过滤函数。

2、不支持不带手数的开平仓指令(如,BK;)和反手指令(如,BPK、SPK)。

3、支持的指令BK(N)、BP(N)、SK(N)、SP(N)、SPK(N)、BPK(N)、CLOSEOUT;支持指令分组。

(四)相关常见问题解答

1、什么是加减仓模型?

答:加减仓模型,允许连续出开仓信号或者连续出平仓信号,可实现加仓、减仓。下图为编写示范及运行效果。

2、加减仓模型有哪些作用?

答:对于需要进行加、减仓操作的交易者,在策略执行的时候希望开仓后的下一个动作依然可以是开仓,或者能够连续分批平仓。如果是一开一平信号过滤模型,开仓后只能是与之对应的平仓操作,这样就无法实现加仓、减仓策略。加减仓模型允许连续出开仓信号或者连续出平仓信号,可解决这个问题。

3、加减仓模型编写时需要注意的问题有哪些?

答:A、加仓模型中,加仓语句需要判断是否是第一次开仓

方法:可利用判断当前是否有持仓或判断上一个信号是否是相同信号的方法确定是否是第一次开仓。如,加仓条件&&BKVOL>0,BK(N);或者加仓条件&&ISLASTBK=1,BK(N);

B、减仓模型中,减仓语句需要判断当前是否有可平持仓

方法:可利用BKVOL或SKVOL这样的函数来判断持仓情况。如,平仓条件&&BKVOL>0,SP(BKVOL);

C、要注意考虑前一信号的方向防止锁仓

方法:在开仓语句中加入判断前一信号方向的函数。如,开仓条件&&ISLASTBK=0,SK(N);

4、为什么加减仓模型编写时指令后面一定要有手数?

答:由于加减仓模型中可进行加仓,或者减仓,每笔交易的手数可能会不一样,所以需要具体指定。

5、为什么我的加减仓模型不加仓?

答:在加减仓模型运行时“一个指令行,在一次“开仓->平仓”交易过程中只发一次信号”。如果想让加减仓模型的同一行开仓或平仓指令重复执行可在模型中加入TRADE_AGAIN(N)函数。

例:

CLOSE>OPEN,BK(1);

CLOSE<OPEN,SP(1);

TRADE_AGAIN(5);

注:有TRADE_AGAIN(N)函数的模型支持同一指令连续发,因此能够实现加减仓。

6、加减仓模型在程序化运行过程中的规则请参照下方链接

答:http://www.wenhua.com.cn/popwin/feiguolvmx2.htm

什么是程序化趋势跟踪?赢智wh8期货

wenhuacaijing阅读(1314)

一开一平信号过滤实现趋势跟踪策略

很多做趋势交易和波段交易的投资者有一套自己的交易策略,这些策略通常周期较长,因此在观察K线或者技术分析指标的时候不易发现微小的变化,而当变化足够明显时又可能已经错过了最佳进场时机。一开一平信号过滤模型的全自动程序化交易系统,由电脑监控趋势跟踪策略,软件监控到入场时机时会立即出现信号并按照信号执行方式确认后自动下单交易。

(一)案例:利用一开一平信号过滤模型实现经典唐吉安通道策略

唐吉安通道是一个经典的趋势策略,其核心是三条轨道线,即上轨、中轨和下轨,我们可使用麦语言按照唐吉安通道的思想编写出一套趋势追踪的策略模型。下图中,AA、BB、DD分别是唐吉安通道的上中下轨道,在行情上行于中轨和上轨之间时,模型会自动监测并发出做多信号。

当行情由中轨之上转向运行于中轨和下轨之间时,模型会敏锐的发现这一转折行情的变化,及时调整策略,平掉多单反手开空单。如果不是程序化的观察我们可能要迟一两个小时甚至一两天才能发现行情的这一变化,错过了出场的最佳时机。如下图:

(二)一开一平信号过滤模型编写规则

1、模型的最后一句以AUTOFILTER结尾。

2、一开一平信号过滤模型支持的指令:BK、BP、BPK、SK、SP、SPK、CLOSEOUT;支持指令分组,不支持BK(5)等带手数的指令。如下图所示:

(三)相关常见问题解答

1、什么是一开一平信号过滤模型?

答:如下图所示,一开一平信号过滤模型不允许连续出开仓信号或者连续出平仓信号,有多个开仓信号都满足条件的时候,取第一个信号作为有效信号,后面k线上的同样信号将被过滤掉。出信号的顺序是开-平-开-平-开…..

2、过滤模型有什么用途?

答:对于不需要进行加仓操作的交易者,在策略执行的时候希望开仓后的下一个动作是平仓,如果是加减仓模型,那么当模型中多个开仓条件连续满足时软件会连续开仓,无法保证开仓后的下一个动作是平仓。一开一平信号过滤模型本身自带的过滤机制可解决这个问题,软件会取第一个信号作为有效信号,后面K线上的同样信号将被过滤掉。

3、一开一平信号过滤模型指令后面不能写手数,那么开平仓手数如何设置?

答:开仓信号:下单手数按照参数设置中的默认开仓手数执行(如下图所示)。

4、一开一平信号过滤模型在程序化运行过程中的规则请参照下方链接

答:http://www.wenhua.com.cn/popwin/guolvmx2.htm

文华财经交易软件 更专业 更方便

常见问题软件下载