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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → 如何让1根K线只执行1个信号?

   

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


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

主题:如何让1根K线只执行1个信号?

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


加好友 发短信
等级:超级版主 帖子:4994 积分:0 威望:0 精华:0 注册:2016/9/1 10:46:51
  发帖心情 Post By:2017/11/10 8:34:18 [显示全部帖子]

可以参考函数TYPEBAR,在开仓条件中判断下平仓信号距离当前K线大于1个周期满足开仓条件才进行开仓。例如TYPEBAR(1,2);//倒数第一个平多信号距离当前的周期数

也可以使用函数TEXITBARS。在开仓时判断下平仓历时。

例如:

if 开仓条件 and TEXITBARS>0 then buy(1,1,market);

[此贴子已经被作者于2017/11/10 8:41:15编辑过]

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


加好友 发短信
等级:超级版主 帖子:4994 积分:0 威望:0 精华:0 注册:2016/9/1 10:46:51
  发帖心情 Post By:2017/11/10 13:47:30 [显示全部帖子]

不好意思,多写了个T,用exitbars来判断,语句中平仓语句要写再开仓语句前面。

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


加好友 发短信
等级:超级版主 帖子:4994 积分:0 威望:0 精华:0 注册:2016/9/1 10:46:51
  发帖心情 Post By:2017/11/10 15:23:01 [显示全部帖子]

如果你用的是market、limit这种次周期指令,那在平仓信号出现后的当根K线上exitbars返回的就是-1,若用的是marketr、limitr这种本周期指令,那返回的就是0,所以你在开仓条件中加入exitbars>=0或exitbars>0,例如,以5分钟周期为例:

if time=140000 then buy(1,1,marketr);
if time=145500 then sell(1,1,marketr);
if time=145500 and exitbars>0 then buy(1,1,marketr);

这样就需要平仓语句写在开仓语句前面了,因为只有先执行了平仓语句,exitbars的值才会改变过来。


 回到顶部