关于跨周期问题 [文华财经]
-
咨询内容:
1.日线反手模型(收盘价一个信号),把满足条件引入到5分钟周期交易(日线ma30>REF(ma30,1),BPK;<REF(MA30,1),SPK;)
并且时间要求time=1500、按道理结果应该和日线结果相同吧、但是没有信号、把时间要求为TIME=1455 有成交信号、但是和日线回测结果相差很大、什么原因?怎么才能和日线结果一样?
2.分钟周期反手模型有夜盘的品种要求:当天有平仓信号的可以再发出信号、当天如果没有平仓信号则只能发出一次信号 怎么写?
3.分钟周期反手模型有夜盘的品种要求:当天bpk、spk信号各自最多2次怎么写?
4.如果在5分钟周期使用CLOSEKLINE(1,10);要求最后一根k线发出信号、怎么弄?
5.日线使用CLOSEKLINE(1,10);对价委托 、如果未能成交、怎么自动在下一根开盘继续发出委托
来源:程序化99
-
文华技术人员:
1.和您编写有关,小周期中TIME不可能等于1500的,您要当天最后一根k线出信号,请用ISLASTKLINE函数判断
而且小周期中一般日期数据少,数据问题也会影响您测试结果,请右键补充历史数据》把小周期数据补充完整后
右键设定信号计算起止时间,调整回测开始时间后看下
2、3问题修改需要依据模型来看,您上传您的模型给您添加下,理论性修改问题会很多的
4.当天最后一根出信号,请用ISLASTKLINE函数判断
5.趋势模型判断不了子账户成没成交的,建议您设置追价下单,如SETSIGPRICETYPE(BK,TRACING_ORDER);
注:追价下单首次下单委托价格参数设置->程序化参数->追价设置的价格方式执行来源: WWW.CXH99.COM
-
文华客服:
2、3问题修改需要依据模型来看,您上传您的模型给您添加下,理论性修改问题会很多的 ......
E0:EMA(C,80);
EN:EMA(C,20);
BB0:=E0>REF(E0,1);
SS0:=E0<REF(E0,1);
BBN:=EN>REF(EN,1);
SSN:=EN<REF(EN,1);
DT:=BB0;
KT:=SS0;
//-----------------------------------------------------------以上被引用命名E0RZNLN //---------下面是跨合约日线模型沪锌使用.但是下面模型使用到分钟(1. 5...)模型.添加 ISLASTKLINE;//当天最后一根k线、理论上回测结果应该基本一样、实际差别很大(可能我写的错误).求老师纠正现在的.并且写分钟周期正确的
#CALL_PLUS[4113,DAY,1,E0RZNLN] AS VAR//XLME锌
DT:=VAR.DT;
KT:=VAR.KT;
#IMPORT [ DAY, 1,E0RZNLN ] AS VAR1
BB:=VAR1.BBN;
SS:=VAR1.SSN;DD:=DT+BB,NODRAW;//多头两条件
KK:=KT+SS,NODRAW;//空头两条件TM:= IF(PERIOD <8,ISLASTKLINE,1) ;//是否错误??
BKVOL=0&&BB&&TM,BPK;
BKVOL=0&&DT&&TM,BPK;SKVOL=0&&SS&&TM,SPK;
SKVOL=0&&KT&&TM,SPK;BKVOL>0&&SS&&KT&&TM,SPK;
SKVOL>0&&BB&&DT&&TM,BPK;
(BKVOL>0&&DD<2&&C>BKPRICE+30)&&TM,SP;
(SKVOL>0&&KK<2&&C<SKPRICE-30)&&TM,BP;//CLOSEKLINE(1,10);//当天最后k线分钟使用
//TRADE_OTHER('AUTO');
AUTOFILTER; -
网友回复:
1.您代码语法是没问题的,但您每个条件都写了收盘执行的判断,所以都只会在收盘最后一根出信号
您这里应该是不满足您思路的,您根据自己思路,删除即可
2.您1楼2.3问题和3楼的代码没有什么联系,因此只给您理论修改方法
第二个问题,反手条件添加以下判断
A:=EXIST(TIME=2100,DAYBARPOS)&&COUNTSIG(BP,DAYBARPOS)+COUNTSIG(SP,DAYBARPOS)<=1||EXIST(TIME=2100,DAYBARPOS)=0;
第三个问题,反手添加以下判断
B:=COUNTSIG(BPK,DAYBARPOS)<=1;CC:=COUNTSIG(SPK,DAYBARPOS)<=1;
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 511411198 进行 有偿 编写!(不贵!点击查看价格!)
相关文章
-
没有相关内容