加减仓模型编写问题 (文华财经WH8赢智V8.2)

投资者咨询:加减仓模型编写问题 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2019-4-13 11:03
比如, 当A成立时 就开空1手,然后可以同方向连续开即TRADE_AGAIN(100);
然后, 当每次开空时就计算该信号前面3个K线的最高价 然后作为该空单止损价  简称为X1,如果同方向继续开空就会有X1  X2  X3.........  
当行情反弹时 根据上穿X1  X2  X3 分别执行止损平仓。不管X1  X2  X3 谁大谁小,反正只要行情上穿其中某一个就执行一次止损, 请问老师如何写呢?
技术人员回复
日期:2019-4-13 17:20
 需要用全局变量如下

VARIABLE:HH:=0;

IF BARSSK=1&&REF(SKVOL=0,1) THEN
BEGIN
HH:=HV(H,3);
END
IF BARSSK=1&&REF(SKVOL>0,1)&&HV(H,3)<HH THEN
BEGIN
HH:=HV(H,3);
END
C>HH,BP(SKVOL);

投资者咨询:加减仓模型编写问题 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2019-4-13 11:03
感谢老师回复  请老师帮我再完善一下:

目前老师写的存在一个问题:    就是进过多次开空后, HH 好像只是定格在最后一次开仓时计算的HH。当行情继续上涨   回到更早时期的HH时  也需要照样止损平仓  ,因为我这里不是一次性全部止损所有仓位的。 相当于 X1   X2   X3  都能被分别记录下来,而不是覆盖。

请老师帮我完善一下,  大致效果如下图:

图片点击可在新窗口打开查看
   


VARIABLE:HH:=0;
IF BARSSK=1&&REF(SKVOL=0,1) THEN
BEGIN
HH:=HV(H,3);
END
IF BARSSK=1&&REF(SKVOL>0,1)&&HV(H,3)<HH THEN
BEGIN
HH:=HV(H,3);
END

SS:HH;

CZ:=ABS(H-L);
JCZ:=MA(CZ,A);
SKVOL>=0&& C<REF(C,1)&&CZ>X*JCZ,SK(1);
SKVOL>=0&& C>REF(C,1)&&CZ>X*JCZ,BP(SKVOL);//出现开多条件就全平
SKVOL>=0&& CROSS(C>=HH,0.5),BP(1);
TRADE_AGAIN(100);
技术人员回复
日期:2019-4-13 20:43
分析了下,这个平仓思路编写起来非常复杂,论坛现在已经不提供复杂模型编写了,需要付费购买程序化授权购买后会有专门的金融工程师给您编写。

参考置顶帖


https://help.wenhua.com.cn/dispbbs.asp?boardid=14&Id=571777


但有个比较方法,就是一一判断,根据持仓把所有情况书写出来,如下


A:=HV(H,3);

N1:=ENTRYSIG_PLACE(1);

BKVOL=1&&C>REF(A,ENTRYSIG_PLACE(1)),SP(1);

BKVOL=2&&C>REF(A,ENTRYSIG_PLACE(1)),SP(1);

BKVOL=2&&C>REF(A,ENTRYSIG_PLACE(2)),SP(1);


BKVOL=3&&C>REF(A,ENTRYSIG_PLACE(1)),SP(1);

BKVOL=3&&C>REF(A,ENTRYSIG_PLACE(2)),SP(1);

BKVOL=3&&C>REF(A,ENTRYSIG_PLACE(3)),SP(1);