Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共8 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:请教2个策略叠加的写法

1楼
daviwang 发表于:2016/12/28 10:14:41
思路是2个策略叠加,分别用开多条件1,开多条件2等,我想2个策略各开各的仓位,互相不影响,这样写有没有问题?为什么这样运行后总的开仓数量不等于2个策略开仓数量的和,开仓数量比单个策略里开仓数量稍多的那个还少?

VARIABLE:holding1=0,HOLDINGd=0;

开多条件2:=**;

平多条件2:=**;

开空条件2:=**;

平空条件2:=c** ;

多仓止损条件2:=**;

空仓止损条件2:=**;


if   holdingd=0 and 开多条件2=1  THEN BEGIN;

buy(1,1,MARKETR);

holdingd:=1;

end;


if   holdingd=0 and  开空条件2=1 THEN BEGIN;

BUYSHORT(1,1,MARKETR);

holdingd:=-1;

end;


if  holdingd=1 and (平多条件2=1 or 多仓止损条件2=1) THEN BEGIN;

sell(1,1,MARKETR);

HOLDINGd:=0;

end;


if  holdingd=-1 and (平空条件2=1 or 空仓止损条件2=1) THEN BEGIN;

SELLSHORT(1,1,MARKETR);

HOLDINGd:=0;

end;

开多条件1:=**;

平多条件1:=c**;

开空条件1:=c**;

平空条件1:=** ;

多仓止损条件1:=c**;

空仓止损条件1:=c**;


if holding1=0 and 开多条件1=1  THEN BEGIN;

buy(1,1,MARKETR);

Holding1:=1;

end;


if holding1=0 and  开空条件1=1 THEN BEGIN;

BUYSHORT(1,1,MARKETR);

holdingh:=-1;

end;


if  holding1=1 and (平多条件1=1 or 多仓止损条件1=1) THEN BEGIN;

sell(1,1,MARKETR);

Holding1:=0;

end;


if  holding1=-1 and (平空条件1=1 or 空仓止损条件1=1) THEN BEGIN;

SELLSHORT(1,1,MARKETR);

Holding1:=0;

end;




2楼
jinzhe 发表于:2016/12/28 10:20:47
有多又有空的两个策略加一起能难实现你要的。因为当策略1出开多信号而策略2出开空信号时,是做不到即开多又开空的
3楼
daviwang 发表于:2016/12/28 10:29:11

那这样写,除了开仓后未平仓前无法反向开仓,还有别的可能存在的冲突吗?

4楼
jinzhe 发表于:2016/12/28 10:34:04

if   holdingd=0 and 开多条件2=1  THEN BEGIN

这样句子,每句都要加上holding判断

 

if   holdingd=0 and 开多条件2=1 and holding=0  THEN BEGIN

 

毕竟holdingd不是实际的信号持仓,要用holding来限定住实际的信号持仓,根据我上面讲的,一旦出现双向开仓的情况,holdingd的值是会有误差的

5楼
daviwang 发表于:2016/12/28 10:42:26

开仓时都增加了holding=0,改成如下后,未平仓前就不会再开仓了,最多持有1手。按之前的写法可以同时持仓2手。之前的写法测试结果会更好。

if   holdingd=0 and holding=0 and 开多条件2=1  THEN BEGIN;

6楼
daviwang 发表于:2016/12/28 10:48:25

您说出现双向开仓的情况,holdingd的值是会有误差 ,您指的双向开仓是1个策略开多,另外1个策略开空吗?这种情况在测试中没有发生。

 

用全局变量holdingd来限定持仓,在1个策略开多,另外1个策略也开多的情况下会出现误差吗?

7楼
jinzhe 发表于:2016/12/28 11:14:48

开多holding判断写成holding>=0

开空holding判断写成holding<=0

8楼
daviwang 发表于:2016/12/28 11:19:34

明白,谢谢

共8 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.04688 s, 3 queries.