欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 策略没有开仓信号

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有3029人关注过本帖树形打印复制链接

主题:策略没有开仓信号

帅哥哟,离线,有人找我吗?
chyhao
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:159 积分:0 威望:0 精华:0 注册:2014/10/23 15:05:10
策略没有开仓信号  发帖心情 Post By:2014/10/28 13:25:57    Post IP:183.28.177.22[显示全部帖子]

BUY(C>O&&EXITBARS>0&&HOLDING=0,1,THISCLOSE);
sell(C=LLV(C,3)&&HOLDING>0,HOLDING,THISCLOSE);
BUYSHORT(C<O&&EXITBARS>0&&HOLDING=0,1,THISCLOSE);
SELLSHORT(C=HHV(C,3)&&HOLDING<0,HOLDING,THISCLOSE);

 

简单写了个测试策略,限定一根K线只能够出一个信号,但是加载到主图没有信,麻烦老师们帮忙看看什么问题,谢谢


 回到顶部
帅哥哟,离线,有人找我吗?
chyhao
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:159 积分:0 威望:0 精华:0 注册:2014/10/23 15:05:10
  发帖心情 Post By:2014/10/28 14:28:51    Post IP:183.28.177.22[显示全部帖子]

老师能否解释下为什么上边要用到全局变量,谢谢

 回到顶部
帅哥哟,离线,有人找我吗?
chyhao
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:159 积分:0 威望:0 精华:0 注册:2014/10/23 15:05:10
  发帖心情 Post By:2014/10/28 14:53:25    Post IP:183.28.177.22[显示全部帖子]

哈哈,明白了,谢谢

 回到顶部
帅哥哟,离线,有人找我吗?
chyhao
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:159 积分:0 威望:0 精华:0 注册:2014/10/23 15:05:10
  发帖心情 Post By:2014/10/28 14:54:46    Post IP:183.28.177.22[显示全部帖子]

LLV 函数在逐K线模式下不能直接在IF控制语句之内引用。请参阅帮助公式部分的解决方案。

 

上边的策略出现这个问题,请问该怎么解决?


 回到顶部
帅哥哟,离线,有人找我吗?
chyhao
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:159 积分:0 威望:0 精华:0 注册:2014/10/23 15:05:10
  发帖心情 Post By:2014/10/29 17:42:02    Post IP:183.27.205.113[显示全部帖子]

我增加一个条件,平多后超过5个周期才能开空,平空后超过5个周期才能开多,代码如下:

 

variable:n=0;

l3:=llv(c,3);

h3:=hhv(h,3);

D1:=VALUEWHEN(EXITBARS=0&&HOLDING=0,REF(HOLDING,1))>0 and EXITBARS>5;//平多后超过5个周期才开空
D2:=VALUEWHEN(EXITBARS=0&&HOLDING=0,REF(HOLDING,1))<0 and EXITBARS>5;//平空后超过5个周期才开多

if n=0 and holding=0 and c>o then begin

    buy(1,1,market);

    n:=1;

end

if n=0 and holding=0 and c<o then begin

    buyshort(1,1,market);

    n:=1;

end

if n=1 then begin

  BUY(C>O&&EXITBARS>0&&HOLDING=0&&D2,1,THISCLOSE);
  sell(C=l3 and HOLDING>0,HOLDING,THISCLOSE);
  BUYSHORT(C<O&&EXITBARS>0&&HOLDING=0&&D1,1,THISCLOSE);
  SELLSHORT(C=h3 and HOLDING<0,HOLDING,THISCLOSE);

end

 

但是加载在主图上没有信号,是不是哪里写错了,麻烦老师检查一下,谢谢


 回到顶部
帅哥哟,离线,有人找我吗?
chyhao
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:159 积分:0 威望:0 精华:0 注册:2014/10/23 15:05:10
  发帖心情 Post By:2014/10/30 13:08:27    Post IP:183.27.205.113[显示全部帖子]

上边的这种写法,只是平仓后超过5个周期才开仓,并没有区分平多或者平空啊

 


 回到顶部
帅哥哟,离线,有人找我吗?
chyhao
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:159 积分:0 威望:0 精华:0 注册:2014/10/23 15:05:10
  发帖心情 Post By:2014/10/30 15:53:00    Post IP:183.27.207.233[显示全部帖子]

D1:=VALUEWHEN(EXITBARS=0&&HOLDING=0,REF(HOLDING,1))>0 and EXITBARS>5;//平多后超过5个周期才开空
D2:=VALUEWHEN(EXITBARS=0&&HOLDING=0,REF(HOLDING,1))<0 and EXITBARS>5;//平空后超过5个周期才开多

 

我写了这个,但是好像是错的,如果要区分,正确的写法应该是怎样呢,谢谢


 回到顶部
帅哥哟,离线,有人找我吗?
chyhao
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:159 积分:0 威望:0 精华:0 注册:2014/10/23 15:05:10
  发帖心情 Post By:2014/10/30 16:30:30    Post IP:183.27.207.233[显示全部帖子]

我的意思是,出现平多后超过5周期才能开空,但是5个周期内可以开多,出现平空后超过5个周期才能开多,但是5个周期内可以开空,用exitbars没有区分是多平还是空平,仅是指所有平仓;

如上,第一幅图,开多,出现平多后,如果再开多就不限制他,但是如果开空,就要过5个周期;

         第二幅图,开空,出现平空后,如果再开空就不限制他,但是如果开多,就要过5个周期,因此我的意思是限制第二幅图的开多,要他过5个周期后符合条件才能开。

假如直接用EXITBARS>5,那并没有区分多平空平啊?用这个函数,第一幅图后边接着开多的信号就出不了。

 

麻烦老师再帮忙一下,谢谢


图片点击可在新窗口打开查看此主题相关图片如下:未命名1.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:未命名2.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2014/10/30 16:32:11编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
chyhao
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:159 积分:0 威望:0 精华:0 注册:2014/10/23 15:05:10
  发帖心情 Post By:2014/10/30 16:55:29    Post IP:183.27.207.233[显示全部帖子]

上次开多,开空价格,请问有这个函数吗?
[此贴子已经被作者于2014/10/30 16:55:41编辑过]

 回到顶部