以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (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=9295)

--  作者:miluse
--  发布时间:2011/12/8 22:47:13
--  标准版中多策略的问题

请教下,在标准版中要怎么实现单品种多策略的交易评测呢

策略1:

5日线金叉10日线开多,反之开空,日内开仓,一天只开一次单,开仓量1手

策略2:

开多:创前3根K线新高开多,以开多后出现的最高点回撤10点止损

开空:创前3根K线新低开空,以开空后出现的最低点回撤10点止损

日内开仓,一天只开一次单,开仓量1手

 

如上,怎么在标准版中把这2个策略组合起来呢?

 

 


--  作者:26327756l
--  发布时间:2011/12/9 9:31:24
--  
问题正在解决中
--  作者:26327756l
--  发布时间:2011/12/9 9:48:11
--  

仅供参考

14点58分 自动平仓

 

variable:cont=0,kk=0,kd=0;
ma5:=ma(c,5);
ma10:=ma(c,10);

if date<>ref(date,1) then cout:=0;

if cout=0 then
  begin
    cout:=1;
     if ma5>ma10 then buy(holding=0,1,market);
     if ma5<ma10 then buyshort(holding=0,1,market);
 
      if c>ref(hhv(c,3),1) then  buy(holding=0,1,market);
      if c<ref(llv(c,3),1) then 
      begin
        buyshort(holding=0,1,market);
        kk:=c;
      end
   end
   //平仓
   if holding=1 then kd:=if(c>kd,c,kd);
   if holding=-1 then kk:=if(c>kk,kk,c);
   if holding=1 and (kd-c)/mindiff<10 then
      begin
        sell(1,0,market);
        kd:=0;
      end
     
    if holding=-1 and (c-kk)/mindiff>10 then
       begin
         sellshort(1,0,market);
         kk:=0;
       end
      
  if time>145800 then
  begin
   sell(holding>0,0,market);
   sellshort(holding<0,0,market);
  end


--  作者:阿火
--  发布时间:2011/12/9 16:19:20
--  

天啊。我辛辛苦苦发表的技术,居然没人会用

http://www.weistock.com/bbs/dispbbs.asp?BoardID=10&ID=8765&replyID=&skin=1

 


--  作者:蔡宛宏
--  发布时间:2011/12/19 16:40:30
--  
这个code是不是没有完全实现相关的思想啊