以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  本周期只开仓一次的请教  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=64115)

--  作者:aim
--  发布时间:2014/4/18 14:45:18
--  本周期只开仓一次的请教

//开多
IF   kdtj    THEN
  BEGIN
    sellshort(holding<0,holding, THISCLOSE);//T检查是否有空单,若有,市价平掉已有空单   THISCLOSE   MARKET   MARKETR
  buy(holding=0,1,THISCLOSE);
 END

//开空

kktj:= H1<ref(H1,60) AND H3<REF(H3,60) AND close<ref(H1,60) {and gg2};

IF kktj  THEN
  BEGIN
   SELL(holding<0,holding,THISCLOSE);
   BUYSHORT(holding=0,1,THISCLOSE);
END

 

在一个周期内只开多或者开空一次,然后等待下次信号。在这上面有办法加上解决嘛?今天又亏了啊,请多指教 谢谢


--  作者:jinzhe
--  发布时间:2014/4/18 14:54:19
--  

variable:n=0;

variable:m=0;

IF   kdtj    and n=0 THEN
  BEGIN
    sellshort(holding<0,holding, THISCLOSE);//T检查是否有空单,若有,市价平掉已有空单   THISCLOSE   MARKET   MARKETR
  buy(holding=0,1,THISCLOSE);

  n:=1;
 END

//开空

kktj:= H1<ref(H1,60) AND H3<REF(H3,60) AND close<ref(H1,60) {and gg2};

IF kktj   and m=0 THEN
  BEGIN
   SELL(holding<0,holding,THISCLOSE);
   BUYSHORT(holding=0,1,THISCLOSE);

   m:=1;
END


IF   kdtj     and n=1 THEN
  BEGIN
    sellshort(holding<0,holding, THISCLOSE);//T检查是否有空单,若有,市价平掉已有空单   THISCLOSE   MARKET   MARKETR
  buy(enterbars>0 and holding=0,1,THISCLOSE);
 END

//开空

kktj:= H1<ref(H1,60) AND H3<REF(H3,60) AND close<ref(H1,60) {and gg2};

IF kktj and m=1  THEN
  BEGIN
   SELL(holding<0,holding,THISCLOSE);
   BUYSHORT(enterbars>0 and holding=0,1,THISCLOSE);
END

 

加了点东西,你看看成不成


--  作者:aim
--  发布时间:2014/4/18 15:21:38
--  
谢谢老师,我也不会啊,我慢慢看看学学,谢谢,请多帮忙啊,我把退休的钱全都亏到里面了。还搞得身体不适啊!
--  作者:aim
--  发布时间:2014/4/18 15:55:48
--  


图片点击可在新窗口打开查看此主题相关图片如下:1111.jpg
图片点击可在新窗口打开查看

 

 

你好老师,刚才的加上去看了一下,只有两次开仓,理论上应该还有多次的今天。是不是开关没有在过了一个周期之后回复到能再开仓的条件,再执行到第二个周期的操作啊。麻烦你在帮忙看看好吗?


--  作者:jinzhe
--  发布时间:2014/4/18 16:16:32
--  
你再看看,有没有漏的,如果没有漏那么就是你的策略在添加一个当前k线不重复开仓的条件后,信号就会变成这样
--  作者:aim
--  发布时间:2014/4/18 16:33:44
--  

老师,这个执行的过程是怎样的?能告诉我吗?谢谢

 

我的理解是:在开仓条件满足的情况下,先用n=0的开仓,当再次满足的时候,因为n不等于零了就不开了,是这样的嘛?


--  作者:jinzhe
--  发布时间:2014/4/18 16:45:50
--  

第一次开仓n=0,后续开仓n=1,但是增加了一个enterbars的判断条件,

这样写不能直接在判断条件里面加enterbars,所以要写个全局变量来控制第一次开仓和后续开仓