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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → 请问老师如何实现模型组合后的交易次数

   

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


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

主题:请问老师如何实现模型组合后的交易次数

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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2014/2/17 9:08:18 [显示全部帖子]

variable:num=0;// 全局变量,控制交易次数,没开仓一次把这个值加1。

 

if holding=0 and cc1>0 and num<2 then

begin

buy(1,1,limitr,o);

num:=num+1;

end

 

if holding=0 and cc1<0 and num<2 then

being

buyshort(1,1,limitr,o);

num:=num+1;

end


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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2014/2/17 11:32:38 [显示全部帖子]

因为num到2之后就不会再开仓了,你得加上个条件什么时候把num重置为0


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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2014/2/17 13:50:59 [显示全部帖子]

if time=closetime(0) then num:=0;//  在代码后加上这句当time等于收盘时num重置为0

你开仓语句里加上一个开仓历时的判断ENTERBARS>0,这样如果当前k线出现开仓信号那么ENTERBARS=0,之后的开仓语句不会执行。


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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2014/2/17 13:56:54 [显示全部帖子]

尤其是模型2同根K都开2次仓的,请老师怎样才能阻止这种同根K开2次仓呢。

你这里是希望一根k线即使条件成立也只有一个开仓信号吗?那就用开仓历时那个函数做下限制啊


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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2014/2/17 14:52:30 [显示全部帖子]

阻止这种同根K开2次仓呢,你这句话什么意思解释下。是一个k只允许出现一个开仓信号?

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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2014/2/18 9:19:51 [显示全部帖子]

buy(ENTERBARS!=0 and c>o,1,marketr);
buy(ENTERBARS!=0 and c>o,1,marketr);

这个简单的例子你放图上和没有ENTERBARS!=0的情况做下对比很容易看得出加上条件限制一根k上只会有一个信号。


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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2014/2/18 11:27:45 [显示全部帖子]

你要写2条buy语句才会有区别啊。首先你要明白同一根k可以执行2条不同的开仓语句的,而你得意思是只执行一条所以我说用ENTERBARS!=0 这个做下判断,

因为当跟k线如果有过开仓信号了那么这个值就是0之后的开仓语句则不起作用。


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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2014/2/18 13:57:45 [显示全部帖子]

variable:模型1下单:=0,模型2下单:=0;  //设2个全局变量来控制模型1和模型2的平仓操作,分别当各自的模型开仓后这个全局变量条件成立。

 

//模型1

if cond1 then

begin

buy(1,1,marketr);

模型模型1下单:=1;

end

sell(模型1下单=1,1,marketr);

 

//模型2同理

if cond2 then

begin

buy(1,1,marketr);

模型模型2下单:=1;

end

sell(模型2下单=1,1,marketr);


 回到顶部