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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → 多平仓条件的问题

   

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


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

主题:多平仓条件的问题

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


加好友 发短信
等级:新手上路 帖子:10 积分:0 威望:0 精华:0 注册:2015/1/16 14:12:01
  发帖心情 Post By:2015/1/16 16:19:00 [只看该作者]

两段日志,10点45有两个模型平仓,有问题的是那个RB_PAII_15MIN 的模型,在10点58的时候又平仓一次,10点45到10点58是一根K线,第一次平仓应该是信号平仓,第二次平仓是固定止损,此问题以前也出现过,不止在这一个模型上,今天想整明白这个问题

 回到顶部
帅哥哟,离线,有人找我吗?
小马过河1
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:10 积分:0 威望:0 精华:0 注册:2015/1/16 14:12:01
  发帖心情 Post By:2015/1/16 16:20:47 [只看该作者]

一个框架里面放了9个模型

 回到顶部
帅哥哟,离线,有人找我吗?
小马过河1
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:10 积分:0 威望:0 精华:0 注册:2015/1/16 14:12:01
  发帖心情 Post By:2015/1/16 16:26:42 [只看该作者]

H会有问题?我就是跑在15分钟上,H就是最新周期的最高价,这个会影响holding?

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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2015/1/16 16:40:38 [只看该作者]

代码顺序的问题,你先平的是42那个代码。平仓的结果是不影响前面31行的holding判断的,代码是从上到下运行,后面的计算结果不会影响前面的代码
2015-01-16 10:45:01.844    2015.01.16 10:45:01【图表】框架:RB 触发下单 SELL 品种 RB13 下单K线 2015.01.16 11:00:00 公式:RB_PAII_15MIN 窗格ID:7 代码行:42

 

2015-01-16 10:58:33.038    2015.01.16 10:58:33【图表】框架:RB 触发下单 SELL 品种 RB13 下单K线 2015.01.16 11:00:00 公式:RB_PAII_15MIN 窗格ID:7 代码行:31

 

打个比方,这里ho永远是返回1的,不会因为你下面平仓代码条件成立就变成0

buy();

ho:holding;

sell();

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
小马过河1
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:10 积分:0 威望:0 精华:0 注册:2015/1/16 14:12:01
  发帖心情 Post By:2015/1/16 17:03:42 [只看该作者]

那是不是我把这两个代码的顺序换下就解决了?,我用的程序化交易运行模式是固定时间间隔,间隔时间为1秒,这样程序应该每秒刷一遍代码,当一个平仓条件执行以后从下一秒开始holding就变成0了,是不是这么理解?如果不是,那holding是依据什么改变的?可否详细的说明下,非常感谢!!!

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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2015/1/16 17:34:59 [只看该作者]

你换过来也有可能发生下面的平仓先执行,上面的后执行这种情况。

首先你要理解,holding的值是代码从上到下计算的结果,你下面的开平信号不会影响之前的holding值。如果你能确定的话把优先会满足条件的平仓语句放在前面,那就没问题了

 

不行的话看下EXTGBDATASET这个函数控制,例子如下,比较复杂你自己测试看看。可以考虑转后台通过账户实际持仓以及是否有未成交来做判断。

 

if 平仓1 and EXTGBDATA( 's')=0 then

begin

sell();

EXTGBDATASET('s',1);

end

 

if 平仓2 and EXTGBDATA( 's')=0 then

begin

sell();

EXTGBDATASET('s',1);

end

 

另外还要加个variable:num=0;

if datacount>num then

begin

num:=datacount;

EXTGBDATASET('s',0);                 //每当有新k生成时,将平仓控制开关s置为0.

end

[此贴子已经被作者于2015/1/16 17:35:15编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
小马过河1
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:10 积分:0 威望:0 精华:0 注册:2015/1/16 14:12:01
  发帖心情 Post By:2015/1/16 18:40:01 [只看该作者]

明白了,非常感谢图片点击可在新窗口打开查看

 回到顶部
总数 17 上一页 1 2