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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 请教后台交易的问题

   

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


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

主题:请教后台交易的问题

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


加好友 发短信
等级:论坛游民 帖子:127 积分:145 威望:0 精华:0 注册:2011/9/29 17:10:38
请教后台交易的问题  发帖心情 Post By:2013/6/21 0:20:12    Post IP:61.171.166.144[只看该作者]

我在后台交易中使用2个策略,同时对一个品种进行监控,并启用多核多策略CPU支持,我现在碰到的问题是:当A策略开仓后,就会被B策略所平掉,基本上是刚开仓就平掉了。我在A策略里设了 全局变量数据库,当A策略开仓后会在变量数据库里设为1,而B策略去读取这个值,当为1时就不平仓。但是实盘交易中,A策略开仓后,变量数据库的值仍为0,不知道是何原因?请问和使用 “多核多策略CPU支持有关吗?要如何解决这个问题?谢谢!


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


加好友 发短信
等级:论坛游侠 帖子:252 积分:1001 威望:0 精华:0 注册:2010/2/15 16:47:58
  发帖心情 Post By:2013/6/21 8:22:43    Post IP:222.128.10.143[只看该作者]

1、与多核多CPU无关

2、应该与程序写法有关系,贴代码吧


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


加好友 发短信
等级:论坛游民 帖子:127 积分:145 威望:0 精华:0 注册:2011/9/29 17:10:38
  发帖心情 Post By:2013/6/21 9:53:01    Post IP:180.168.89.54[只看该作者]

 A策略
//建立多头进场条件
IF CURRENTTIME<=090000 THEN EXTGBDATASET('THD' ,0);
IF CURRENTTIME<=090000 THEN EXTGBSTRINGSET('开多1' , '000');

if ISLASTBAR AND 开仓条件 Tholding=0 AND THD1=0 then BEGIN
Tbuy(1, KCS, lmt, C+T2);
EXTGBDATASET('THD' , 1);
IF THD1=1 THEN extgbstringset('开多1', stklabel);
END;


B策略:取全局变量的值,若为A策略开的品种就不平仓
IF strcmp(extgbstring('开多1'),stklabel)=0 THEN JSKD1:=0;
ELSE JSKD1:=1;
IF ISLASTBAR and JSKD1 AND tholding>0 AND L<REF(L,1) THEN TSELL(1,0,lmt, C-T4);

请帮我看下这个代码有何问题?谢谢
[此贴子已经被作者于2013/6/21 9:53:24编辑过]

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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2013/6/21 10:01:19    Post IP:58.246.57.26[只看该作者]

THD1这个是哪里进行定义的?


金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:论坛游民 帖子:127 积分:145 威望:0 精华:0 注册:2011/9/29 17:10:38
  发帖心情 Post By:2013/6/21 10:02:08    Post IP:180.168.89.54[只看该作者]

THD1:=EXTGBDATA('THD');

刚才漏了



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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2013/6/21 10:29:44    Post IP:58.246.57.26[只看该作者]

平仓代码哪里能体现出和THD相关的?


金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:论坛游民 帖子:127 积分:145 威望:0 精华:0 注册:2011/9/29 17:10:38
  发帖心情 Post By:2013/6/21 10:47:42    Post IP:180.168.89.54[只看该作者]

我现在A策略开的仓被B策略平仓条件给平掉了。THD只是控制只开仓一次。问题在于全局变量“开多1",当A策略开仓后,我会设全局变量“THD”为1,然后判断THD为1时,就设全局变量“开多1"为开仓品种的代码。
然后在B策略中判断全局变量“开多1"的品种代码和当前监控品种一致时,就不平仓。

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


加好友 发短信
等级:论坛游民 帖子:127 积分:145 威望:0 精华:0 注册:2011/9/29 17:10:38
  发帖心情 Post By:2013/6/21 11:31:19    Post IP:180.168.89.54[只看该作者]

会不会是因为开仓后设全局变量THD为1时,速度比较慢,还没有改变全局变量的值,所以这时去取全局变量THD时取到的仍为0。不过,在实盘中开仓被平仓后,全局变量THD仍显示为0,EXTGBDATASET('THD' , 1); 这句话没起作用。

 回到顶部