以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  关于HOLDING的问题  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=86657)

--  作者:青风
--  发布时间:2015/10/27 11:06:38
--  关于HOLDING的问题

你好。

我在模型语句里看到通常是这样的:

开多:BUY(KD AND HOLDING=0,HOLDING,THISCLOSE);

开多:BUY(KD AND HOLDING=0,1,THISCLOSE);

 

平多:SELL(PD AND HOLDING>0,HOLDING,THISCLOSE);

 

我看关于HOLDING的说明是:返回当前账户的持仓量,多为正数,空为负数。

请问:是否如果我持有两手空仓,返回的值就是-2,五手空仓返回值就是-5?

 

假设是这样。

那么,我是否可以在我的策略中这样处理:

开多:BUY(DK AND HOLDING<=1,1,THISCLOSE);

这样写的目的是:第一次开多后,如果在随后没有发生平多信号,而是又一次发生了开多信号,那么,就再买一手。如果在买了两手后还是

没有出现平多信号而是又一次出现了开多信号,就不再开仓了(因为此时,HOLDING<=2的条件不满足了)。


--  作者:青风
--  发布时间:2015/10/27 11:12:27
--  

开多:BUY(KD AND HOLDING=0,HOLDING,THISCLOSE);

这个写错了。

应该是:

平多:SELL(PD AND HOLDING>0,HOLDING,THISCLOSE);

在这样的平多语句里是否意思是:HOLDING是多少值,那么就平掉多少手?


--  作者:jinzhe
--  发布时间:2015/10/27 11:13:09
--  
是,平掉当前的持仓
--  作者:青风
--  发布时间:2015/10/27 12:34:48
--  

如果我的开多语句是这样的

开多:BUY(KD AND HOLDING<=1,1,THISCLOSE);

这样写的目的是:第一次开多后,如果在随后没有发生平多信号,而是又一次发生了开多信号,那么,就再买一手(因为,此时持仓手数只是一手,符合HOLDING<=1这个条件)。如果在买了两手后还是

没有出现平多信号而是又一次出现了开多信号,就不再开仓了(因为此时持仓已经是两手,HOLDING<=1的条件不满足了)。

请问是否会达成这样的目的?


--  作者:jinzhe
--  发布时间:2015/10/27 13:04:38
--  
可以,虚拟持仓就是这样用的,判断理论上的持仓