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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → 如何控制开仓次数

   

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


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

主题:如何控制开仓次数

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


加好友 发短信
等级:论坛游侠 帖子:388 积分:0 威望:0 精华:0 注册:2014/11/22 18:13:16
如何控制开仓次数  发帖心情 Post By:2020/11/20 15:58:45 [显示全部帖子]

开仓次数  发帖心情 Post By:2018/4/4 9:13:52 [只看该作者]

我想请问一下
金字塔一句buy语句只能执行一次。
因为每次重新启动程序化的,语句都会重置,或者单根K线采用固定间隔时间轮询时,会应为tick数据反复出现而满足开平仓条件就会不停开平仓。
那有没有办法来限制开仓的次数?

采用以下方法,使用GETREGVAL()EXTGBDATASET()

mholding:=GETREGVAL'mholding');
IF HOLDING=0 THEN BEGIN //若持仓为0
 IF ENTRYLONGCOND&&mholding=0 THEN BEGIN //且满足开多条件
    mholding:=mholding+1;
    EXTGBDATASET('mholding',mholding);
    BUY(1,手数,LIMITR,KDL),IGNORECHECKPRICE;//开多单  KPJ:=MAX(OPEN,UPPERBAND);
 END   
END
这样在5分钟K线下,即使采用固定1秒轮询(Tick)下反复满足ENTRYLONGCOND,也会因为开一次仓后mholding>=1而在一根K线下开一次仓!谢谢

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


加好友 发短信
等级:论坛游侠 帖子:388 积分:0 威望:0 精华:0 注册:2014/11/22 18:13:16
  发帖心情 Post By:2020/11/20 16:16:27 [显示全部帖子]

开仓次数  发帖心情 Post By:2018/4/4 9:13:52 [只看该作者]

或者单根K线采用固定间隔时间轮询时,会应为tick数据反复出现而满足开平仓条件就会不停开平仓。
那有没有办法来限制开仓的次数?

采用以下方法,使用GETREGVAL()SETREGVAL()

mholding:=GETREGVAL('J8','mholding',0);
IF HOLDING=0 THEN BEGIN //若持仓为0
 IF ENTRYLONGCOND&&mholding=0 THEN BEGIN //且满足开多条件
    mholding:=mholding+1;
    SETREGVAL('J8','mholding',mholding);
    BUY(1,手数,LIMITR,KDL),IGNORECHECKPRICE;//开多单  KPJ:=MAX(OPEN,UPPERBAND);
 END   
END
这样在5分钟K线下,即使采用固定1秒轮询(Tick)下反复满足ENTRYLONGCOND,也会因为开一次仓后mholding>=1而在一根K线下开一次仓!谢谢


老师,我问的是5分钟K线,信号采用的是固定间隔1秒轮询下,而不是走完K。所以经常出现反复开仓,现在我才用上面的方法,老师看看能不能控制开仓次数。
[此贴子已经被作者于2020/11/20 16:18:00编辑过]

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


加好友 发短信
等级:论坛游侠 帖子:388 积分:0 威望:0 精华:0 注册:2014/11/22 18:13:16
  发帖心情 Post By:2020/11/20 16:33:44 [显示全部帖子]

那就有点奇怪了,为何我的实盘反复会开仓呢?金字塔版本5.21,我用IF HOLDING=0 THEN BEGIN //若持仓为0在K线走完模式下保证只能信号只要出现一次,不管以后K线出现多少次同向信号都只开一次仓,但是在固定轮询下却反复开仓呢?所以才想到限制
 IF ENTRYLONGCOND&&mholding=0 THEN BEGIN //且满足开多条件

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


加好友 发短信
等级:论坛游侠 帖子:388 积分:0 威望:0 精华:0 注册:2014/11/22 18:13:16
  发帖心情 Post By:2020/11/20 16:45:12 [显示全部帖子]

我是实盘喔,老师,我用的是holding=0限制只开一手,棉花同向开了24手!难道固定轮询holding起不了作用!

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


加好友 发短信
等级:论坛游侠 帖子:388 积分:0 威望:0 精华:0 注册:2014/11/22 18:13:16
  发帖心情 Post By:2020/11/20 18:51:03 [显示全部帖子]

谢谢老师提醒采用simnow模拟交易。但是为何holding=0在固定轮询中限制不了开仓呢?求解!

 回到顶部