请老师帮编个公式 (文华财经WH8赢智V8.2)

投资者咨询:请老师帮编个公式 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-8-28 20:54

 请老师帮编个公式:

①开盘前半小时内进行窄幅震荡,范围在0.5%;

②以30分钟内最高价和最低价定为箱体的上轨和下轨;

③半小时后,当价格突破箱体上轨开多,突破下轨开空;

④止损:持多单时,当价格反转回撤到箱体并突破下轨时平仓;持空单时,当价格反转回撤到箱体并击穿上轨时平仓止损。

⑤当日收盘前10分钟无论盈亏均全部平仓。但是若此时价格处于涨跌停时则留仓,此时进行动态止盈,当价格回撤2倍的真实波幅(ATR)时止盈。

 

谢谢老师!

技术人员回复
日期:2018-8-28 20:55

此时价格处于涨跌停时则留仓”是指收盘前10分钟那根?还是收盘前10分钟内的价格?

 

如果是收盘前10分钟都判断的话,清仓时修改为收盘前N秒清仓?

 

其余部分编写参考:

 

N:=BARSLAST(TIME=2130)+1;
TJ1:=(REF(HHV(H,DAYBARPOS),N)-REF(LLV(L,DAYBARPOS),N))/REF(LLV(L,DAYBARPOS),N)<0.005;
HH:=REF(HHV(H,DAYBARPOS),N);
LL:=REF(LLV(L,DAYBARPOS),N);
N>1&&CROSS(C,HH),BK;
N>1&&CROSSDOWN(C,LL),SK;
BKVOL>0&&CROSSDOWN(C,LL),SP;
SKVOL>0&&CROSS(C,HH),BP;
CLOSEMINUTE<=10,CLOSEOUT;
CLOSEKLINE(1,10);
AUTOFILTER;

投资者咨询:请老师帮编个公式 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-8-28 20:54

 

 

 

 

谢谢老师的辛勤付出!我在您编的公式后面标了下我的理解,不知道对不对。

请问我第五条的涨停留仓并2倍ATR值动态止盈如何编写,再有我只做白盘,开盘的时间如何调整。给老师增麻烦了!!

 

 N:=BARSLAST(TIME=2130)+1;//开盘半小时
TJ1:=(REF(HHV(H,DAYBARPOS),N)-REF(LLV(L,DAYBARPOS),N))/REF(LLV(L,DAYBARPOS),N)<0.005;//箱体震荡
HH:=REF(HHV(H,DAYBARPOS),N);//上轨
LL:=REF(LLV(L,DAYBARPOS),N);//下轨
N>1&&CROSS(C,HH),BK;//买开
N>1&&CROSSDOWN(C,LL),SK;//卖开
BKVOL>0&&CROSSDOWN(C,LL),SP;//多头下穿下轨卖平
SKVOL>0&&CROSS(C,HH),BP;//空头上穿上轨买平
CLOSEMINUTE<=10,CLOSEOUT;//10分钟前清仓
CLOSEKLINE(1,10);
AUTOFILTER;

技术人员回复
日期:2018-8-29 9:21
您的理解是对的

N:=BARSLAST(TIME=2130)+1;
TJ1:=(REF(HHV(H,DAYBARPOS),N)-REF(LLV(L,DAYBARPOS),N))/REF(LLV(L,DAYBARPOS),N)<0.005;
HH:=REF(HHV(H,DAYBARPOS),N);
LL:=REF(LLV(L,DAYBARPOS),N);
N>1&&CROSS(C,HH),BK;
N>1&&CROSSDOWN(C,LL),SK;
BKVOL>0&&CROSSDOWN(C,LL),SP;
SKVOL>0&&CROSS(C,HH),BP;
AA:C=GETPRICE( 'RISELIMIT');
BB:C=GETPRICE( 'FALLLIMIT');
CLOSEMINUTE=10&&NOT(AA)&&NOT(BB),CLOSEOUT;
TR : =MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));
ATR := MA(TR,26),COLORYELLOW;
BKVOL>0&&CLOSEMINUTE<=10&&EXIST(AA,BARSLAST(CLOSEMINUTE=10))&&C<GETPRICE( 'RISELIMIT')-2*ATR,SP;
SKVOL>0&&CLOSEMINUTE<=10&&EXIST(AA,BARSLAST(CLOSEMINUTE=10))&&C>GETPRICE( 'FALLLIMIT')+2*ATR,SP;
CLOSEKLINE(1,10);

AUTOFILTER;

改为白盘这样:

N:=BARSLAST(TIME=0930)+1;
TJ1:=(REF(HHV(H,BARSLAST(TIME=0900)),N)-REF(LLV(L,BARSLAST(TIME=0900)),N))/REF(LLV(L,BARSLAST(TIME=0900)),N)<0.005;
HH:=REF(HHV(H,BARSLAST(TIME=0900)),N);
LL:=REF(LLV(L,BARSLAST(TIME=0900)),N);
N>1&&CROSS(C,HH),BK;
N>1&&CROSSDOWN(C,LL),SK;
BKVOL>0&&CROSSDOWN(C,LL),SP;
SKVOL>0&&CROSS(C,HH),BP;
AA:C=GETPRICE( 'RISELIMIT');
BB:C=GETPRICE( 'FALLLIMIT');
CLOSEMINUTE=10&&NOT(AA)&&NOT(BB),CLOSEOUT;
TR : =MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));
ATR := MA(TR,26),COLORYELLOW;
BKVOL>0&&CLOSEMINUTE<=10&&EXIST(AA,BARSLAST(CLOSEMINUTE=10))&&C<GETPRICE( 'RISELIMIT')-2*ATR,SP;
SKVOL>0&&CLOSEMINUTE<=10&&EXIST(AA,BARSLAST(CLOSEMINUTE=10))&&C>GETPRICE( 'FALLLIMIT')+2*ATR,SP;
CLOSEKLINE(1,10);

AUTOFILTER;


投资者咨询:请老师帮编个公式 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-8-28 20:54

您好老师,回测了几个合约都没有数值,不知道是哪的问题。



图片点击可在新窗口打开查看
技术人员回复
日期:2018-8-29 14:12
源码中使用的跌停与涨停的直接引用是不支持回测的

我们用编写的方式这样看下,涨跌停比例需要手动修改:

N:=BARSLAST(TIME=2130)+1;
TJ1:=(REF(HHV(H,DAYBARPOS),N)-REF(LLV(L,DAYBARPOS),N))/REF(LLV(L,DAYBARPOS),N)<0.005;
HH:=REF(HHV(H,DAYBARPOS),N);
LL:=REF(LLV(L,DAYBARPOS),N);
N>1&&CROSS(C,HH),BK;
N>1&&CROSSDOWN(C,LL),SK;
BKVOL>0&&CROSSDOWN(C,LL),SP;
SKVOL>0&&CROSS(C,HH),BP;

Z:=0.05;//涨跌停版比例
X:=MINPRICE;//合约的最小变动价位
NN:=BARSLAST(DATE<>REF(DATE,1))+1;
涨停价:=-CEILING(-REF(SETTLE,NN)*(1+Z),X);
跌停价:=-CEILING(-REF(SETTLE,NN)*(1-Z),-X); 

AA:=C>=涨停价;
BB:=C<=跌停价;
CLOSEMINUTE=10&&NOT(AA)&&NOT(BB),CLOSEOUT;
TR : =MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));
ATR := MA(TR,26),COLORYELLOW;
BKVOL>0&&CLOSEMINUTE<=10&&EXIST(AA,BARSLAST(CLOSEMINUTE=10))&&C<涨停价-2*ATR,SP;
SKVOL>0&&CLOSEMINUTE<=10&&EXIST(AA,BARSLAST(CLOSEMINUTE=10))&&C>跌停价+2*ATR,BP;
CLOSEKLINE(1,10);

AUTOFILTER;