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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → [求助]后台交易多品种问题

   

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


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

主题:[求助]后台交易多品种问题

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


加好友 发短信
等级:新手上路 帖子:47 积分:630 威望:0 精华:0 注册:2012/4/29 16:17:21
[求助]后台交易多品种问题  发帖心情 Post By:2012/5/30 17:07:42    Post IP:221.232.219.128[只看该作者]

请教下各位老师,

后台交易里,示例:

var1:=stkindi('CU00','ypm.zd',2,1,-1);
var2:=stkindi('RU00','ypm.zd',2,1,-1);

 

COND1:=MAX(VAR1,VAR2);

 

//建立多头的进场条件
if  conda1 then
     begin 
     tsellshort(TSELLHOLDING(1) > 0,TSELLHOLDING(1),lmt);
     tbuy(TBUYHOLDING(1) = 0, 1,lmt);
     end
//平多仓
if (not(conda1) )   then
 begin
 tsell(TBUYHOLDING(1) > 0, TBUYHOLDING(1), lmt);
 end  

 

问题,如上段代码,用后台交易,我指定了 铜连续与 胶连续 2个品种一个策略模型交易  

【怎么样定义出CONDA1 满足时,模型下单的品种】,

我在图表中测试时,多个品种同时 开仓了 ,无法判断出 (当时最大的那个品种交易)


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


加好友 发短信 czt
等级:蜘蛛侠 帖子:1445 积分:6114 威望:0 精华:3 注册:2012/1/16 10:31:19
  发帖心情 Post By:2012/5/31 8:54:10    Post IP:58.246.57.26[只看该作者]

最后一个stock,就是指定品种

用法:TBUY(COND,V,[Type,P1,P2,AC,STOCK]);表示当最后的一个周期的COND条件成立时,
买入V股(手)当前品种,TYPE表示开仓类型,
LMT限价 MKT市价 STP止损 STPLMT限价止损
P1表示开仓价格,当TYPE为LMT和STP,STPLMT时为指定限价和止损价格,其他情况填0
P2为止损限价,当TYPE为STPLMT时,必须指定P2的止损限价,其他情况填0,当P1止损价触发时按照P2价格止损操作.
当TYPE参数省略时,为市价开仓。AC为帐户ID或者帐户分组名称,为空时为系统默认帐户,否则将下单到指定帐户中
STOCK为品种代码或者篮子名称,比如'SH600215',为空或者不填时为当前品种


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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2012/5/31 9:07:58    Post IP:58.246.57.26[只看该作者]

 

if  conda1 and var1>var2 then tbuy(1,1,mkt,0,0,'','sqcu00');

if conda1 and not(var1>var2 ) then tbuy(1,1,mkt,0,0,'','sqru00');

满足conda1的情况下,对引用的数值较大的合约下单



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

客户服务部

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

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

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


加好友 发短信
等级:新手上路 帖子:47 积分:630 威望:0 精华:0 注册:2012/4/29 16:17:21
  发帖心情 Post By:2012/5/31 9:38:58    Post IP:221.232.219.128[只看该作者]

火箭老师,

满足conda1的情况下,对引用的数值较大的合约下单  我就是这个意思

 

但是我这边不止2个品种,我有10个以上  你那个办法我想过,太复杂了编写 模型运算也很吃力

 

有没简单点的办法?

[此贴子已经被作者于2012-5-31 9:42:50编辑过]

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


加好友 发短信
等级:新手上路 帖子:47 积分:630 威望:0 精华:0 注册:2012/4/29 16:17:21
  发帖心情 Post By:2012/5/31 9:46:59    Post IP:221.232.219.128[只看该作者]

a1:=max(var1,var2);
a2:=max(var3,var4);
a3:=max(var5,var6);
a4:=max(var7,var8);
a5:=max(var9,var10);
a6:=max(var11,var12);
a7:=max(var13,var14);
a8:=max(var15,var16);
a9:=max(a1,a2);
a10:=max(a3,a4);
a11:=max(a5,a6);
a12:=max(a7,a8);
a13:=max(a9,a10);
a14:=max(a11,a12);
a15:=max(a13,a14);
conda1:=a15;

 

这是我求最大值的16个合约 (var1-var16) ,求出 conda1只是一个值,并不是指定的那个合约。

 

在线求解······

[此贴子已经被作者于2012-5-31 10:00:51编辑过]

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


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
  发帖心情 Post By:2012/5/31 10:15:27    Post IP:113.105.135.34[只看该作者]

tbuy(TBUYHOLDING(1) = 0, 1,lmt);

这个语法有问题,lmt是限价委托指令,后面必须要指定一个价格的

 

tbuy(TBUYHOLDING(1) = 0, 1,lmt,close);



金字塔—专业程序化软件提供商

金字塔-技术部

-----------------------------------------------------------------------------------------------------

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
jinzhe
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


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

一个很傻瓜但是很直接的办法
a1:=max(var1,max(var2,max(var3,max(var4,max(var5,max(var6,max(var7,max(var8,max(var9,max(var10,max(var11,max(var12,max(var13,max(var14,max(var15,var16)))))))))))))));
a2:=if(a1=var1,'if00',if(a1=var2,'ru00',if(a1=var3,'cu00',if(a1=var4,'rb00'........一直比较到var16以及所对应的品种合约代码))))
然后a2就是所要的品种合约代码


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

客户服务部

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

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

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


加好友 发短信 czt
等级:蜘蛛侠 帖子:1445 积分:6114 威望:0 精华:3 注册:2012/1/16 10:31:19
  发帖心情 Post By:2012/5/31 10:45:38    Post IP:58.246.57.26[只看该作者]

你可以再对应一个相对的变量,记录品种

var1:stkindi('CU00','ypm.zd',2,1,-1);
var1-1:=1;
var2:stkindi('RU00','ypm.zd',2,1,-1);
var2-2:= 2;
zuida:if(var1>var2,var1-1,0);

 

不就可以知道是哪个品种了


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


加好友 发短信
等级:新手上路 帖子:47 积分:630 威望:0 精华:0 注册:2012/4/29 16:17:21
  发帖心情 Post By:2012/5/31 10:47:22    Post IP:221.232.219.128[只看该作者]

各位老师,如果我用 a:=TINSORT('自选股','ypm.zd',0); 板块指标升序排列
                          b:=TINSORT('自选股','ypm.zd',1); 板块指标降序排列
此函数引用比较简单,但是我不知道怎么使用,

 

谢谢火箭哥 呵呵


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


加好友 发短信
等级:新手上路 帖子:47 积分:630 威望:0 精华:0 注册:2012/4/29 16:17:21
  发帖心情 Post By:2012/5/31 10:54:07    Post IP:221.232.219.128[只看该作者]

8楼老师,能多写几个吗,完整点 ,谢谢
[此贴子已经被作者于2012-5-31 11:15:47编辑过]

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