以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  策略编写求助区  (http://222.73.7.161/bbs/list.asp?boardid=11)
----  [求助]请高手帮忙分析下,这个策略怎么实现比较好  (http://222.73.7.161/bbs/dispbbs.asp?boardid=11&id=25209)

--  作者:bigbear
--  发布时间:2012/9/4 17:53:33
--  [求助]请高手帮忙分析下,这个策略怎么实现比较好

请高手帮忙分析下,这个策略怎么实现比较好:


共有6个开仓条件, A,B,C(多头)           D,E,F(空头)

 

空仓状态只在初始状态下存在。

 

【状态0】空仓
【状态1】多单持仓 忽略后续开多条件
【状态2】空挡持仓 忽略后续开空条件

 

从初始状态开始运行,如果先触发  多头条件:

初始空仓【状态0】

----->  A or B or C----->  开多(开多后,在平仓前,忽略后续 A,B,C的开仓条件)【状态1】

------>D or E or F----->  平多仓,同时开空(开空单后,在平仓前,忽略后续 D,E,F的开仓条件)【状态2】

----->A or B or C---->【状态1】.........循环.........


从初始状态开始运行,如果先触发 空头条件:


【状态0】------>D or E or F------->【状态2】------>A or B or C----->【状态1】---->D or E or

F---->【状态2】........循环........

 

 

[此贴子已经被作者于2012-9-4 17:54:40编辑过]

--  作者:xian_0_9
--  发布时间:2012/9/5 7:42:37
--  

开仓条件加上HOLDING=0就忽略了后续开多条件。

比如

if a or b or c then

begin

if holding<0 then sellshort(1,holding,limitr,c);

if holding=0 then buy(1,1,limitr,c);

end


--  作者:bigbear
--  发布时间:2012/9/5 20:51:33
--  

感谢楼上高手答复,谢谢,谢谢。

接着问一下:

 

if a or b or c then

begin

if holding<0 then sellshort(1,holding,limitr,c)    这里是不是要加上一个开多单 buy(1,1,limitr,c)? 还是下面这句会在平空仓后自动判断持仓为0,就开了多单?;

if holding=0 then buy(1,1,limitr,c);

end

 

if d or e or f then

begin

if holding>0 then sell(1,holding,limitr,c);

 

if holding=0 then buyshort(1,1,limitr,c);

end


--  作者:jinzhe
--  发布时间:2012/9/6 8:55:22
--  

if a or b or c then begin

sellshort(holding<0,);

buy(holding=0,);

end