3sec/2ma23333什么意思思?

1、为什么原来的模型语法无法通过,8.2版删除和修改了8.1版哪些函数?
答:1)原来的模型语法检测无法通过?
&&&(1)#IMPORT跨周期模型语法检测无法通过
&&&& 原因:#IMPORT函数语法修改吗,只能引用同一合约不同周期数据,三个参数做了修改。
&&&&&新的编写形式:
&&&&&#IMPORT [PERIOD,N,FORMULA] AS VAR
&&&&&引用当前合约,PERIOD参数为N的周期,指标FORMULA的数据。
&&&&&CC:REF(C,1);//定义一个周期前的收盘价
&&&&&保存指标,命名为AA
&&&&&#IMPORT[DAY,1,AA] AS VAR
&&&&&CC:VAR.CC;//跨周期引用昨天的收盘价
&&&(2)#IMPORT跨合约模型语法检测无法通过
&&&& 原因:删除了#IMPORT跨合约引用的功能,增加#CALL跨合约引用函数
&&&& 新的编写形式:
&&&& #CALL [CODE, FORMULA] AS VAR
&&&&&引用CODE合约的指标FORMULA的数据。
&&&&&CC:REF(C,1);//定义一个周期前的收盘价
&&&&&保存指标,命名为AA
&&&&&#CALL[1201,AA] AS VAR
&&&&&CC:VAR.CC;//跨合约引用豆粕1501昨天的收盘价
&&&(3)F_Sig()函数语法检测无法通过
原因:8.2版取消了绑定模组的概念,取模组信号、持仓、指标值的函数,需前缀加上模组名称。
&&&& 新的编写形式:
&&&& AA.F_Sig();
&&&& 返回AA模型当前的信号是什么类型(BK|SK|BP|SP|BPK|SPK|CLOSEOUT)
&&&& VAR M
&&&&&VOID MAIN()
&&&&&&& Modname=&AA&;//模型名
&&&&&&&&IF(AA.F_Sig()==BPK
&& AA.F_SigValid()==1) //如果信号是BPK 且不是信号消失状态
&& &&&&&&&&{
&&&&&&&&&&&&&&&&
&&&&&&&&&&&&}
&&& &&注:F_DealCode()、F_SigPrice()等函数同理。
&&&& 2)为什么有些函数在8.2中无法找到,用什么函数替代?
&&&&(1)MONO_SIGNAL限制信号函数由TRADE_AGAIN(N) 函数替代
&&&&&&新的编写形式:
&&&&&&TRADE_AGAIN(N)
&&&&&&同一指令行可以连续出N个信号。
&&&&&&例:
&&&&&&C&O,BK(1);//K线为阳线,买开1手
&&&&&&C&O,SP(BKVOL);//K线为阴线,卖平多头持仓
&&&&&&TRADE_AGAIN(3);//同一指令行可以连续执行3次(如连续三根阳线,则连续三次买开仓)
&&&&(2)SETSIGMAXNUM限制一根K线最大信号个数函数由MULTSIG_SEC、MULTSIG_MIN替代
新的编写形式:
&&&&& MULTSIG_SEC(Sec1,Sec2,N)
&&&&&&设置信号复核确认方式,开仓信号出信号Sec1秒下单不复核,平仓信号出信号Sec2秒下单不复
核,一根K线上最大的信号个数为N。回测的基础数据为TICK数据。
&&&&&&例:
&&&&&&C&REF(H,1),BK;//价格大于上一根k线最高价,开多仓
&&&&&&C&BKPRICE-3*MINPRICE,SP;//亏损3点止损
&&&&&&MULTSIG_SEC(3,0,3);//设置信号复核确认方式为开仓信号,出信号后3秒下单,不复核;
平仓信号出信号立即下单,不复核。一根K线上最大信号个数为3
&&&&&&AUTOFILTER;
&&&&&&MULTSIG_MIN(Sec1,Sec2,N)
&&&&&&设置信号复核确认方式,开仓信号出信号Sec1秒下单不复核,平仓信号出信号Sec2秒下单不复
核,一根K线上最大的信号个数为N。回测的基础数据为1分钟数据。
&&&&&&例:
&&&&&&C&REF(H,1),BK;//价格大于上一根k线最高价,开多仓
&&&&&&C&BKPRICE-3*MINPRICE,SP;//亏损3点止损
&&&&&&MULTSIG_MIN(3,0,3);//设置信号复核确认方式为开仓信号,出信号后3秒下单,不复核;
平仓信号出信号立即下单,不复核。一根K线上最大信号个数为3
&&&&&&AUTOFILTER;
&&&&(3)下单组件中所有高频函数(除量能周期函数)由Offer()函数替代
&&& &新的编写形式:
&&&&&&以前的L2_ASK1现在写为Offer(&IF1409&,&ask1&);
&&&&&&这样编写更灵活,可以在一个组件里同时取得多个合约的五档数据。
&&&&&&VAR bid1;
&&&&&&bid1=Offers(&m1009&,&bid1&);//bid1为豆粕1009的当前买1价
2、赢智8.2版新增了哪一些函数?
&&&历史数据引用函数&点击展开
&&&行情报价函数&点击展开
&&&TICK数据函数&点击展开
&&&数学函数&点击展开
&&&逻辑判断函数&点击展开
&&&时间函数&点击展开
&&&绘图函数&点击展开
&&&未来函数&点击展开
&&&计算控制函数&点击展开
&&&信号记录函数&点击展开
&&&信号控制函数&点击展开
&&&信号执行函数&点击展开
&&&模组头寸函数&点击展开
&&&加密输出函数&点击展开
3、如何回测模型?
答:模型回测共两步,第一步要将模型加载到主图计算,第二步查看回测报告。
&&&&方法:在趋势模型编写平台中,点击工具条上的和回测按钮完成主图计算、查看回测报告。
&&&&具体操作方法可参看下面链接:
4、如何设置回测参数里的初始资金、保证金参数?
答:在趋势模型编写平台中,点击工具条上的按钮重设回测参数。如下图所示:
5、如何进行指令价回测?
答:新版提供了信号控制函数&CHECKSIG_SEC、MULTSIG_SEC(基础数据为TICK数据)&
和&CHECKSIG_MIN、MULTSIG_MIN(基础数据为1分钟数据)&,
带有这四个函数的模型,回测和运行自动变为指令价形式。
&&&&C&O,BK;
&&&&C&O,SP;
&&&&CHECKSIG_MIN(BK,'A',5,'D',0);//设置BK信号,出信号5分钟后确认下单,K线走完复核。
&&&&CHECKSIG_MIN(SP,'A',0,'C',0);//设置SP信号,出信号立即下单,不复核。
&&&&AUTOFILTER;
&&&&C&REF(H,1),BK;//价格大于上一根k线最高价,开多仓
&&&&C&BKPRICE-3*MINPRICE,SP;//亏损3点止损
&&&&MULTSIG_SEC(3,0,3);//开仓信号,出信号后3秒下单,不复核;平仓信号出信号立即下
&&& 单,不复核。一根K线上最大信号个数为3
&&&&AUTOFILTER;
6、如何用更多的数据进行回测?
答:方法一、通过在主图点击鼠标右键的方式申请数
&&&&如下图所示,是如何通过在主图点击鼠标右键来申请合约数据:
&&&&方法二:通过点击【系统工具】&&【数据管理】,在程序化数据管理器中申请数据
如下图所示,是如何在程序化数据管理器中申请合约数据:
&&&&申请后,在进行&回测&时,我们便可使用更多的数据对模型进行效果测试,如下图所示:
&&&&&&系统工具&&个性化设置&&程序化交易处可以设置补充数据是,点一次下载按钮的下载量,如下图所示:
7、为什么现在的合约数据那么少,只有不到1年的数据?
答:赢智8.2按照申请当前合约数据的规则进行数据申请,例如IF1409最早只能申请到日,&&& 之前的合约为IF1309合约。
&&&&指数、主连、当月等连续合约,可以申请到服务器上所有的数据,客户端不做限制。
&& &如何查看之前的合约数据? &&&
在K线图上单击鼠标右键&&选择历史年度合约,可以选择之前的合约进行测试。
8、如何多窗口做半自动程序化?
答:赢智8.2仅是不支持自设页面,但支持多窗口模型进行监控。
&&&&模型加载到主图计算后,在主图单击鼠标右键&&【加入页面盒子,后台运行】,在电脑内存足够大
&&& 的情况下,可以加载一百个页面盒子。加载后点击【平铺窗口】设置平铺窗口个数,再单击盒子
即可实现多窗口平铺。
&&&&注:双击盒子可以直接单窗口放大显示当前盒子。
9、页面盒子可以全自动运行么?
答:告知可以,如下图所示是如何设置页面盒子全自动运行。
10、页面盒子的模型如何删除?
答:如下图所示,是将页面盒子删除的方法。
11、页面盒子是否可以同时显示报价窗口?
答:可以,在【系统工具】&&【个性化设置】&&【程序化交易】&&【盒子平铺带报价窗口】处
&&& 进行设置即可。
12、如何保存模型页面对模型做深度研究?
答:在k线图上单击鼠标右键&&收藏页面,保存以后可以随时调出来继续研究。
&&&&锁定合约页面:此种页面收藏后,再打开查看时不可以切换合约。
&&&&开放页面:此种页面收藏后,再打开查看时可以通过PgUp/PgDn键更改合约,以查看不同品种在该模
&&&&&&&&&&&&& 型下的表现。
13、为什么不同的模型加载在同一合约、同一周期上数据会不同?
答:这是由于逐笔回测模型和非逐笔回测模型在加载时,数据的合成方式不同。
&&&(1)未加载模型或未加载逐笔回测的模型(即模型中不含有CHECKSIG_SEC、CHECKSIG_MIN或
MULTSIG_SEC、MULTSIG_MIN函数)则当前周期数据根据以下规则进行申请:
&&&①秒周期、自定义秒周期由TICK数据合成
&&&②15分钟以下分钟周期、自定义周期由1分钟数据合成
&&&&③15分钟、30分钟、小时周期、自定义小时周期由15分钟数据合成
&&&④日线及日线以上周期由日线周期合成
&&&(2)加载逐笔回测的模型(模型中含有CHECKSIG_SEC、CHECKSIG_MIN或MULTSIG_SEC、
&&&&&&&&MULTSIG_MIN函数), 则当前周期数据根据以下规则进行申请:
&&&&①按照系统工具&&个性化设置&&程序化交易&&&设置模型信号计算起始时间&来判断信号
计算起始时间。
&&&&②信号计算起始时间之后使用TICK数据进行逐笔回测,信号计算起始时间之前按照以下规则
&&&&&&&&&&合成。
&&&&&&&&基础数据:
&&&&&&&&1分钟~10分钟,自定义分钟周期使用1分钟数据合成
&&&&&&&&15分钟~小时周期,自定义小时周期使用15分钟数据合成
&&&&&&&&日线及日线以上周期使用日线数据合成
&&&&&&注:如果测试周期的数据不足时,补充数据时补充对应的基础数据即可
14、为什么明明有数据但申请数据时会提示服务器无数据?
答:(1)填写的日期为周六周日 &&&
(2)填写的日期为法定节假日 &&
&(3)服务器确实没有数据,已经申请下该合约最大数据量
&&&&&&注:如果申请数据过多时,建议分段申请,在申请过程中如果遇到网络不好的情况,则申请中止,即使网络状态
&&&&&&&&& 恢复,数据申请也不能恢复。
15、赢智8.2如何设置模型回测精度?
答:含有CHECKSIG和MULTSIG函数可以对模型回测精度进行设置
&&&&CHECKSIG (SIG,MODE1,TIME1,MODE2,TIME2,INTERVAL):SIG为信号,MODE1为信号确认方式,TIME1
&&&&信号确认时间,MODE2信号复核方式,TIME2信号复核时间,INTERVAL数据时间间隔。
&&&&MULTSIG(Sec1,Sec2,N,INTERVAL):设置信号复核确认方式,开仓信号出信号Sec1秒下单不复核,
&&& 平仓信号出信号Sec2秒下单不复核,一根K线上最大的信号个数为N,INTERVAL为数据时间间隔。
&&&&通过调整INTERVAL参数,模型可设置不同数据快照频率进行回测
&&&&INTERVAL代表数据时间间隔
&&&&1)支持0、3、5、10四个值。
&&&&2)回测中,当参数为0时等同于CHECKSIG_SEC,使用Tick逐笔函数做计算;当参数为3、5、10分
&&&&&&&别代表用每隔3秒、5秒、10秒,计算一次模型
&&&&3)回测中,当参数为0回测精准,但是计算量大,每一天就要计算几万笔,速度会慢很多,回测
&&&&& &精准;当参数为3、5、10 ,回测速度可提升3-10倍,回测精度稍差
&&&&4)实盘运行中,不管参数设置为任何值,等同于CHECKSIG_SEC,每笔Tick计算模型
&&&&5)一个模型中只能写入一个INTERVAL值
&&&&C&O,BK;
&&&&C&O,SP;
&&&&CHECKSIG_SEC(BK,'A',5,'D',3);//设置BK信号,出信号5秒后确认下单,K线走完复核,回测的基
&&& 础数据为3秒内的TICK数据。
&&&&CHECKSIG_SEC(SP,'A',0,'C',10,3);//设置SP信号,出信号立即下单,下单后10秒复核,回测的
&&& 基础数据为3秒内的TICK数据。
&&& AUTOFILTER;
16、赢智8.2如何设置模型回测时间?
答:(1)信号开始时间的设定
&&&& &&& 赢智8.2中回测中的数据是拷贝主图的计算结果,需要在主图中单击鼠标右键&&补充数据,同
&&&&&&&& 时可以在主图中单击鼠标右键&&设定信号计算的起止时间。
&&&&(2)信号结束时间的设定 &
&&&&&&&& 赢智8.2默认根据设定的开始时间到当前时间进行测算,测试完成后可以使用分段报告功能设
&&&&&&&& 定K线结束时间。
17、资金管理函数可以加载到主图回测么?
答:赢智8.2可以将带有资金管理函数的模型加载到主图回测。
&&&&初始资金可以在加载了模型的主图上点击鼠标右键&&【重设回测参数】中设置。
18、组合测试为何不能设置数据起始时间?
答:赢智8.2中,组合测试不能设置数据起始时间,完全拷贝主图数据测试。
19、组合测试中如有单根K线多个信号的模型,是否支持多信号测试?
答:赢智8.2组合测试支持多信号,单测试结果与组合测试结果相符,更准确的测试组合效果。
20、赢智8.2如何进行高频交易?
答:赢智8.2的程序化运行模组直接支持秒周期模型,加载模型时,在【周期】的下拉菜单中提供秒周期
选项,自选周期也可设置秒周期。
21、模组运行K线图上的黄白线是什么?
答:黄白线分别为理论资金曲线和实际资金曲线&&&&&&&&&&&&&&&
&&& 理论资金曲线(白线):
&&& 根据信号指令价计算的子账号起始资金运行到当前的剩余可用资金
&&& 实际资金曲线(黄线):
&&& 未加载模组前,实际资金曲线为子账号起始资金
&& &模组运行后,实际资金曲线=起始资金+模组实际平仓盈亏+模组实际浮动盈亏&手续费成本
&&&&模组持续运行,实际资金曲线可以记录模组的实际盈亏情况,理论资金曲线与实际资金曲线的对比,
&&& 可以了解模组的滑点成本。
22、如果不在电脑前,但想知道模型的运行情况怎么办?
答:可以使用【日志邮件】功能,该功能可以帮助您接收到模型运行动态的邮件,人不在电脑前一样
&&& 可以监控自己的程序。
23、赢智8.2对页面盒子的加载有什么要求?
答:1、含有CHECKSIG_SEC、CHECKSIG_MIN函数的模型不能加载到页面盒子
&&&&2、带有资金管理函数的模型不能加载到页面盒子
24、赢智8.2的页面盒子功能可以全自动么?
答:赢智8.2的页面盒子功能既可以选择全自动下单也可以选择半自动下单。
& (1)全自动下单:无需手动确认,根据模型编写的信号执行方式和价格方式直接委托(手数为默认下
&&&&&& 单手数或模型编写的手数)
&&(2)半自动下单:根据模型编写的信号方式,满足信号确认条件时弹出下单确认框,根据弹出框中设
&&&&&& 置的价格及手数进行委托
&&&&注:使用该功能需要购买程序化权限
25、赢智8.2中如何实现多账号程序化?
答:赢智8.2的页面盒子可以对多账号运行,全自动的页面盒子既可以绑定帐号也可以绑定组。
&&&页面盒子多账号下单:
&&&页面盒子可以实现多账号下单和多账号组下单,即除了能分别关联不同账号外,还可以将设置的组关联到盒子,程序委托时会对该组合约进行下单。如下图所示是如何将多账号关联到页面盒子。
&&&&&&&&&&&&&&&
&&&运行模组多账号下单:
&&&运行模组可以实现多账号下单,每个模组可以绑定不同的账号,程序委托时会按照各个模组帮组的账号一一对应下单。如下图所示是如何设置运行模组。
26、如何限制一根K线上的指令个数?
答:使用MULTSIG_SEC(Sec1,Sec2,N)、MULTSIG_MIN(Sec1,Sec2,N),可限制一根K线上的信号数量。
&&&&例(MULTSIG_SEC,基础数据基于TICK数据):
&&&&&&&C&REF(H,1),BK;//价格大于上一根k线最高价,开多仓
&&&&&&&C&BKPRICE-3*MINPRICE,SP;//亏损3点止损
&&&&&&&MULTSIG_SEC(3,0,3);//开仓信号,出信号后3秒下单,不复核;平仓信号出信号立即下
&&& &&&单,不复核。一根K线上最大信号个数为3
&&&&&&&AUTOFILTER;
&&&&例(MULTSIG_MIN,基础数据基于1分钟数据):
&&&&&&&C&REF(H,1),BK;//价格大于上一根k线最高价,开多仓
&&&&&&&C&BKPRICE-3*MINPRICE,SP;//亏损3点止损
&&&&&&&MULTSIG_MIN(3,0,3);//开仓信号,出信号后3分钟下单,不复核;平仓信号出信号立即下
&&& &&&单,不复核。一根K线上最大信号个数为3
&&&&&&&AUTOFILTER;
&&&&&1、含有该系列函数的模型,满足条件后Sec秒出信号立即下单,并且此信号固定,不随之后行情是否满足条件而
&&&&&&&&变化。其中,Sec=0,出信号立即下单不复核;Sec&0 出信号Sec秒下单不复核。
&&&&&2、出信号后如果未到Sec秒K线已经走完,则提前确认信号下单。
&&&&&3、该函数支持一根K线上多个信号,最大的信号个数为N。N取值范围为1-60,超过这个范围,N值按照1计算
&&&&&4、MULTSIG_SEC、MULTSIG_MIN、CHECKSIG_SEC和CHECKSIG_MIN函数不能同时出现在一个模型中。
&&&&&5、模型中含有该函数,效果测试中模型信号价位为模型满足条件时候行情的最新价。
&&&&&6、模型中不含有该函数,信号执行方式默认为K线走完确认信号下单
&&&&7、MULTSIG_MIN函数加载秒周期回测的基础数据为TICK数据
27、如何设定同一指令连续发出N个信号?
答:使用TRADE_AGAIN(N)函数,可以设定同一指令连续发出N个信号。
&&&&& C&O,BK(1);//K线为阳线,买开1手
&&&&&&C&O,SP(BKVOL);//K线为阴线,卖平多头持仓
&&&&&&TRADE_AGAIN(3);//同一指令行可以连续执行3次(如果连续三根阳线,则连续三次买开仓)
&&&&1、该函数只适用于非过滤模型
&&&&2、模型中写入该函数,一根K线只支持一个信号。不可以和TRADE_RIGHT_AWAY函数同时使用。
&&&&3、N个信号必须连续执行,如果期间出现其他信号,则N从新计算。
28、如何编写设置信号执行方式?
答:使用MULTSIG_SEC、MULTSIG_MIN、CHECKSIG_SEC和CHECKSIG_MIN编写设置信号执行方式。
&& (1)未编写信号执行方式函数
&&&&&& &K线走完确认信号下单
&&&(2)CHECKSIG_SEC设置信号确认与复核方式(基础数据为TICK数据)
&&&&&&&&CHECKSIG_SEC(SIG,MODE1,TIME1,MODE2,TIME2);
&&&&&&& SIG为信号,MODE1为信号确认方式,TIME1信号确认时间,MODE2信号复核方式,TIME2信号复核时间
&&&&&&&&①一根K线一个信号(即使编写了不复核的信号执行方式,在一根K线上也只能出现一个信
&&&&&&&&&&
&&&&&&&&②CHECKSIG、MULTSIG、MULTSIG_SEC、MULTSIG_MIN、CHECKSIG_SEC和CHECKSIG_MIN函数不能
&&&&&&&&& 同时出现在一个模型中
&&&&&&&&③该函数只允许在模组中使用,不支持加载到页面盒子。
&&&&&&&&④MODE1位置为信号确认方式,有A和B两种:
&&&&&&&&&&A:出信号N秒确认信号下单。N在TIME1位置设置,N&0为出信号N秒确认信号下单,N=0为出
&&&&&&&&&&&& 信号立即下单。
&&&&&&&&&&B:K线走完前N秒确认信号下单。N在TIME1位置设置,N&0为K线走完前N秒确认信号下
&&&&&&&&&&&& 单,N=0为K线走完确认信号下单。
&&&&&&&&⑤MODE2位置为信号复核方式,有C,D,E和F四种:
&&&&&&&&&&C:下单后N秒进行信号复核。N在TIME2位置设置,N&0为下单后N秒进行信号复核,N=0为不
&&&&&&&&&&&& 复核。
&&&&&&&&&&D:K线走完前N秒进行信号复核。N在TIME2位置设置,N&0为K线走完前N秒进行信号复
&&&&&&&&&&&& 核,N=0为K线走完复核。
&&&&&&&&&&E:每一个小节(包括:商品合约10:15-10:30休盘、11:30-13:30休市;股指合约11:30
&&&&&&&&&&&& -13:00休市)最后一根K线提前N秒复核。N在TIME2位置设置,N&0为每一个小节最后一
&&&&&&&&&&& 根K线提前N秒进行信号复核,N=0为不复核。其他非小节最后一根K线是K线走完复核。
&&&&&&&&&&F:每天收盘前最后一根K线提前N秒复核。N在TIME2位置设置,N&0为每天收盘前最后一根K
&&&&& &&&&&&&线提前N秒进行信号复核,N=0为不复核。其他非收盘前最后一根K线是K线走完复核。
&&&&&&&&⑥如果用该函数设置了信号复核,复核时产生了信号消失,会进行信号消失处理。
&&&&&&&&& 信号消失的处理方式:
&&&&&& &&&还没有成交时的信号消失处理&&撤单
&&&&&& &&&BK、SK信号消失处理&&平仓
&&&&&&&&& BPK、SPK信号消失处理&&平仓+恢复建仓
&&&&&& &&&BP、SP信号消失处理&&恢复建仓
&&&&&&&&几种典型的信号复核确认方式对应的写法举例:
&&&&&&&&&CHECKSIG_SEC(SIG,'B',0,'D',0);//K线走完确认信号下单。
&&&&&&& &CHECKSIG_SEC(SIG,'A',0,'D',0);//出信号立即下单,K线走完复核
&&&&&&&&&CHECKSIG_SEC(SIG,'A',N,'D',0);//出信号N秒确认信号下单,K线走完复核
&&&&&&&&&CHECKSIG_SEC(SIG,'A',N,'C',0);//出信号N秒确认信号下单,不进行复核
&&&&&&&&&CHECKSIG_SEC(SIG,'B',N,'D',0);//K线走完前N秒确认信号下单,K线走完复核
&&&&&&&&&CHECKSIG_SEC(SIG,'B',N,'C',0);//K线走完前N秒确认信号下单,不复核
&&&(2)CHECKSIG_MIN设置信号确认与复核方式(基础数据为1分钟数据)
&&&&&&&&CHECKSIG_MIN(SIG,MODE1,TIME1,MODE2,TIME2);
&&&&&&& SIG为信号,MODE1为信号确认方式,TIME1信号确认时间,MODE2信号复核方式,TIME2信号复核时间
&&&&&&&&①一根K线一个信号(即使编写了不复核的信号执行方式,在一根K线上也只能出现一个信
&&&&&&&&&&
&&&&&&&&②使用该函数时,加载1分钟及以上周期回测的基础数据为1分钟数据。
&&&&&&&&③该函数加载秒周期回测的基础数据为TICK数据。
&&&&&&&&④CHECKSIG、MULTSIG、MULTSIG_SEC、MULTSIG_MIN、CHECKSIG_SEC和CHECKSIG_MIN函数不能
&&&&&&&&& 同时出现在一个模型中
&&&&&&&&⑤该函数只允许在模组中使用,不支持加载到页面盒子。
&&&&&&&&⑥SIG位置为交易指令,包括BK\SK\BP\SP\BPK\SPK\CLOSEOUT所有指令。
&&&&&&&&⑦MODE1位置为信号确认方式,有A和B两种:
&&&&&&&&&&A:出信号N分钟确认信号下单。N在TIME1位置设置,N&0为出信号N分钟确认信号下单,N=0
&&&&&&&&&&&&&为出信号立即下单。
&&&&&&&&&&B:K线走完前N分钟确认信号下单。N在TIME1位置设置,N&0为K线走完前N分钟确认信号下
&&&&&&&&&&&&&单,N=0为K线走完确认信号下单。
&&&&&&&&⑧MODE2位置为信号复核方式,有C,D,E和F四种:
&&&&&&&&&&C:下单后N分钟进行信号复核。N在TIME2位置设置,N&0为下单后N分钟进行信号复核,N=0
&&&&&&&&&&&&&为不复核。
&&&&&&&&&&D:K线走完前N分钟进行信号复核。N在TIME2位置设置,N&0为K线走完前N分钟进行信号复
&&&&&&&&&&&&&核,N=0为K线走完复核。
&&&&&&&&&&E:每一个小节(包括:商品合约10:15-10:30休盘、11:30-13:30休市;股指合约11:30
&&&&&&&&&&&&&-13:00休市)最后一根K线提前N分钟复核。N在TIME2位置设置,N&0为每一个小节最后一
&&&&&&&&&&&&&根K线提前N分钟进行信号复核,N=0为不复核。其他非小节最后一根K线是K线走完复核。
&&&&&&&&&&F:每天收盘前最后一根K线提前N分钟复核。N在TIME2位置设置,N&0为每天收盘前最后一
&&&&&&&&&&&&&根K线提前N分钟进行信号复核,N=0为不复核。其他非收盘前最后一根K线是K线走完复核
&&&&&&&&⑨如果用该函数设置了信号复核,复核时产生了信号消失,会进行信号消失处理。
&&&&&&&&& 信号消失的处理方式:
&&&&&& &&&还没有成交时的信号消失处理&&撤单
&&&&&& &&&BK、SK信号消失处理&&平仓
&&&&&&&&& BPK、SPK信号消失处理&&平仓+恢复建仓
&&&&&& &&&BP、SP信号消失处理&&恢复建仓
&&&&&&&&几种典型的信号复核确认方式对应的写法举例:
&&&&&&&&CHECKSIG_MIN(SIG,'A',0,'D',0);//出信号立即下单,K线走完复核
&&&&&&&&CHECKSIG_MIN(SIG,'A',N,'D',0);//出信号N分钟确认信号下单,K线走完复核
&&&&&&&&CHECKSIG_MIN(SIG,'A',N,'C',0);//出信号N分钟确认信号下单,不进行复核
&&&&&&&&CHECKSIG_MIN(SIG,'B',N,'D',0);//K线走完前N分钟确认信号下单,K线走完复核
&&&&&&&&CHECKSIG_MIN(SIG,'B',N,'C',0);//K线走完前N分钟确认信号下单,不复核
&&&&&&&&CHECKSIG_MIN(SIG,'B',0,'C',N);//K线走完确认信号下单
&&&&&&&&CHECKSIG_MIN(SIG,'B',0,'D',0);//K线走完确认信号下单
&&&&&&&&CHECKSIG_MIN(SIG,'A',0,'C',0);//出信号立即下单,不复核
&&&&&&&&CHECKSIG_MIN(SIG,'A',0,'F',10);//出信号立即下单,收盘前最后一根K线提前10分钟复核。
&&&&(3)MULTSIG_MIN(Sec1,Sec2,N)设置一根K线多信号的指令价方式(逐分钟回测)
&开仓信号出信号min1分钟下单不复核,平仓信号出信号min2分钟下单不复核,一根K线
&&&&& &上最大的信号个数为N。
&&&&& &&①支持一根K线上多个信号,最大的信号个数为N。N取值范围为1-60,超过这个范围,N值按
&&&&&&&& &照1计算。
&&&&& &&②CHECKSIG、MULTSIG、MULTSIG_SEC、MULTSIG_MIN、CHECKSIG_SEC和CHECKSIG_MIN函数不能
同时出现在一个模型中。
&&&&& &&③使用该函数对模型中编写的所有信号有效。
&&④该函数既可以加载在模组中使用,也可以加载到页面盒子。
&&&&& &&⑤含有该函数的模型,满足条件后min分钟出信号立即下单,并且此信号固定,不随之后行情
&是否满足条件而变化。其中,min=0,出信号立即下单不复核;min&0 出信号min分钟下单
&&&&&&&&& 不复核。
&&&&& &&⑥模型中含有该函数,效果测试中模型信号价位为模型满足条件时候行情的最新价。
&&&&& &&⑦该函数加载秒周期回测的基础数据为TICK数据
&&&&(4)MULTSIG_SEC(Sec1,Sec2,N)设置一根K线多信号的指令价方式(TICK逐笔回测)
&&&&&& 开仓信号出信号Sec1秒下单不复核,平仓信号出信号Sec2秒下单不复核,一根K线上最
&&&&&& 大的信号个数为N
&&&&& &&①支持一根K线上多个信号,最大的信号个数为N。N取值范围为1-60,超过这个范围,N值按
&&&&&&&& &照1计算。
&&&&& &&②CHECKSIG、MULTSIG、MULTSIG_SEC、MULTSIG_MIN、CHECKSIG_SEC和CHECKSIG_MIN函数不能
&&&&&&&&& 同时出现在一个模型中。
&&&&& &&③使用该函数对模型中编写的所有信号有效。
&&④该函数既可以加载在模组中使用,也可以加载到页面盒子。
&&&&& &&⑤含有该函数的模型,满足条件后Sec秒出信号立即下单,并且此信号固定,不随之后行情是
&&&&&&&&& 否满足条件而变化。其中,Sec=0,出信号立即下单不复核;Sec&0 出信号Sec秒下单不复
&&&&&&&& &核。
&&&&& &&⑥模型中含有该函数,效果测试中模型信号价位为模型满足条件时候行情的最新价。
&&&&& &&⑦出信号后如果未到Sec秒K线已经走完,则提前确认信号下单。
29、如何编写设置委托价格形式?
答:赢智8.2取消了模组中对信号价格的设置,通过模型的编写来实现
&&& 1、未编写委托价格函数,模组默认为对价委托
&&&&2、SETSIGPRICETYPE(SIG,PRICE),不同的信号设置不同的委托方式。
&&&&&&&SETALLSIGPRICETYPE(PRICE),设置模型中所有信号用相同委托方式。
&&&&&&&SIG位置为交易指令,包括BK\SK\BP\SP\BPK\SPK\CLOSEOUT所有指令。
&&&&&&&PRICE位置为委托方式,包括以下十种:
&&&&&&&1、NEW_ORDER 最新价
&&&&&&&2、PASSIVE_ORDER 排队价
&&&&&&&3、ACTIVE_ORDER 对价
&&&&&&&4、TRACING_ORDER 自动连续追价
&&&&&&&5、CMPETITV_ORDER 超价
&&&&&&&6、LIMIT_ORDER 市价
&&&&&&&7、SIGPRICE_ORDER 指令价
&&&&&&&8、SIGIMPROVED_ORDER
&&&&&&&9、CANCEL_ORDER N秒不成交自动撤单
&&&&&&&&&&A、委托价格和N参数,在手动下单界面-参数设置-自动撤单中进行设置
&&&&&&&&&&B、BP、SP、BPK、SPK、CLOSEOUT信号不支持CANCEL_ORDER价格方式
&&&&&&&10、指定价 &可以为具体的数值,也可以为表达式,即支持如下的写法:
&&&&&&&A:HHV(H,3);//定义A为3个周期内的最高价
&&&&&&&SETSIGPRICETYPE(BK,A);//BK信号按照3个周期的最高价委托
&&&&3、模型编写中未使用上述两个函数设置指令委托价格方式,默认按照交易参数中设置的程序化默
&&&&& &&认下单方式进行委托。
&&&&4、SETSIGPRICETYPE函数,一种指令只能设置一种价格方式。
&&&&5、SETALLSIGPRICETYPE不能和SETSIGPRICETYPE同时使用。
&&& 6、该函数可以用于模组运行,也可以用于页面盒子运行(仅对全自动下单的页面盒子有效)。
&&&&&例1:
&&&&&C&HV(H,20),BK;//价格大于前20周期高点买开仓
&&&&&C&LV(L,20),SK;//价格小于前20周期低点卖开仓
&&&&&C&HV(H,10),BP;//价格大于前10周期高点平空仓
&&&&&C&LV(L,10),SP;//价格小于前10周期低点平多仓
&&&&&SETSIGPRICETYPE(BK,SIGPRICE_ORDER);//买开的委托以指令价委托
&&&&&SETSIGPRICETYPE(SK,REF(C,1));//卖开的委托以上一周期的收盘价委托
&&&&&SETSIGPRICETYPE(BP,TRACING_ORDER);//买平的委托以自动连续追价委托
&&&&&SETSIGPRICETYPE(SP,TRACING_ORDER);//卖平的委托以自动连续追价委托
&&&&&AUTOFILTER;
&&&&&例2、
&&&&&C&HV(H,20),BK;//价格大于前20周期高点买开仓
&&&&&C&LV(L,20),SK;//价格小于前20周期低点卖开仓
&&&&&C&HV(H,10),BP;//价格大于前10周期高点平空仓
&&&&&C&LV(L,10),SP;//价格小于前10周期低点平多仓
&&&&&SETALLSIGPRICETYPE(SIGPRICE_ORDER);//该模型中所有信号以指令价委托
&&&&&AUTOFILTER;
30、如何编写设置模型运行方式?
答:使用SETMODRUNTYPE(N);可以设置模型运行方式
&& (1)N=0,按模型中编写的信号执行方式出信号并下单
(2)N=1,按模型中编写的信号执行方式出信号,由算法交易运行池中的模型来控制
&&&&&&&(相当于以前的设置信号执行方式后绑定组件)
(3)N=2,由算法交易运行池中的模型接管所有信号,控制出信号和下单。
&&&&&&&(相当于以前的组件接管所有信号)
31、算法交易的【运行模式设置】是什么意思?
答:当我们需要对程序进行远程监控或者一个团队间需要通过远程来互通信号有无时,就可以利用远
程监控功能。
&&&&在软件中,模型运行的方式有三种:普通模式、客户端和服务器。
&&&&1、普通模式:这是我们最常用的一种模式,自己做程序化交易,不需要和其他人做远程信号沟通
的可以使用这种模式。
&&&&2、客户端模式:这是相对于服务器端而言的,在客户端设置好IP地址后就可以连接到相应服务器
&& 上,客户端可以同步监控到服务器端模型发出的信号指令。
&&&&&&&&&&&&&&&&&&
&&& 3、服务器模式:服务器是发出指令的一方,客户端可以实时接受到服务器端模型出现的指令,服
&&务器端需要设置的是查看密码,这个密码是客户端连接到该服务器端的唯一口令。
&&&&&&&&&&&&&&&&&&&
&&&远程监控设置:
&&&&假如交易员想把自己A电脑上的模组运行状态同步到B电脑上监控
&&&&第一步:A电脑设置服务器端
&&&&在上面的例子中,由于要把A电脑的模组运行状态同步到B电脑上监控,因此A电脑为服务器。
&&& 打开软件后,点击菜单栏的【运行】&&【运行模式设置】,在弹出的设置框中按照下图的标号顺
&&& 序设置服务器密码,设置后点击确定。
&&&&&&&&&&&&&&&&&&&
&&注意:打开软件后,第一件事就是设置运行模式,不要打开盘口模型运行池和运行模组。盘口模型运行池及运行
&&&&&模组根据设置的模式运行,运行之后模式不可修改!
&&&&第二步:B电脑设置客户端
&&&&在上面的例子中,由于要用B电脑监控A电脑的模组运行状态,因此B电脑为客户端。
&&&&打开软件后,点击菜单栏的【运行】&&【运行模式设置】,在弹出的设置框中输入A电脑的IP地
&&&&址及A电脑刚刚设置的密码,设置后点击确定,这时B电脑就已经连接到了A电脑上,可以接受信息了
&&&&&&&&&&&&&&&&&&&
&&&&第三步:
A电脑打开运行模组或盘口模型运行池,这时当B电脑也打开运行模组或盘口模型运行池
&&&&时就能在自己的客户端上看见A电脑上运行的情况了。
32、算法交易模型可以回测么?
答:赢智8.2中如果算法交易模型是取盘口数据的,可以进行回测。取模型数据的,由于模组信号和指
标值不能同步回放所以不能回测。如下图所示是如何对取盘口数据的算法交易模型进行回测。

我要回帖

更多关于 o2o是什么意思 的文章

 

随机推荐