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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → 关于比例下单语句,求解

   

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


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

主题:关于比例下单语句,求解

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


加好友 发短信
等级:黑侠 帖子:755 积分:6 威望:0 精华:0 注册:2013/5/16 5:52:00
关于比例下单语句,求解  发帖心情 Post By:2016/6/28 21:42:44 [显示全部帖子]

比例下单手数,我用的如下代码:SS:INTPART(((BJ*(BL/100))/(ref(c,1)*MULTIPLIER*TACCOUNT(41)))),linethick0; 
其中BJ代表本金,BL代表下单比例。设了这两个参数后,我就可以任意根据当时的账户实际资金来调整下单数量。但实盘中发现一个问题:
就是当平仓的时候,经常平不干净,总会留那么几手不平,这是因为随着行情上涨,ref(c,1)数值变大,计算出来的SS手数变小,到高位平仓时的下单手数小于低位开仓时的手数。
我不明白的是,平仓语句中我用的是holding,系统并没有自动判断出开仓时的手数,而是重新按ref(c,1)来计算持仓的手数,这样计算出来的持仓与实际持仓是有差距的,因为ref(c,1)的值不一样了。
请问有什么解决之道?谢谢

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


加好友 发短信
等级:黑侠 帖子:755 积分:6 威望:0 精华:0 注册:2013/5/16 5:52:00
  发帖心情 Post By:2016/6/29 8:31:08 [显示全部帖子]

我不太确定荐贴中的情况与我是否同一回事。烦请进一步解惑:
SS:INTPART(((BJ*(BL/100))/(ref(c,1)*MULTIPLIER*TACCOUNT(41)))),linethick0;
sell(翻空信号 and holding>0,holding,thisclose),pertrader;   
1. 上述语句中,平仓语句中加了pertrader控制符后,就能确保全部平干净所持仓位?(在价格高位时平掉低位时买进的仓位)
2. 这个pertrader控制符的内在原理是什么,是代表着会在下单时实时扫描账户的实际持仓吗?


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


加好友 发短信
等级:黑侠 帖子:755 积分:6 威望:0 精华:0 注册:2013/5/16 5:52:00
  发帖心情 Post By:2016/6/29 8:49:49 [显示全部帖子]

了解了0的作用。我上述第一个问题的答案是YES吗?
如果用0,我可能有一个麻烦,那就是我多策略同时值守交易,如果填0应会把别的策略的持仓都给平掉吧?

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


加好友 发短信
等级:黑侠 帖子:755 积分:6 威望:0 精华:0 注册:2013/5/16 5:52:00
  发帖心情 Post By:2016/6/29 8:52:47 [显示全部帖子]

我希望的是能准确判断策略中的持仓,并准确平掉该策略的实际持仓。如何能做到?

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


加好友 发短信
等级:黑侠 帖子:755 积分:6 威望:0 精华:0 注册:2013/5/16 5:52:00
  发帖心情 Post By:2016/6/29 9:15:16 [显示全部帖子]

这就回到我一开始的问题了:写holding时无法平干净,总会留那么几手,就因为价格变动之后计算的结果变了,我一直以为holding会自动判断开仓时所计算出来的手数,目前来看似乎是在平仓时重新按当前价位计算手数……有没有什么好建议解决这个问题?

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


加好友 发短信
等级:黑侠 帖子:755 积分:6 威望:0 精华:0 注册:2013/5/16 5:52:00
  发帖心情 Post By:2016/6/29 9:29:13 [显示全部帖子]

这个对我来说有点复杂了。而且全局变量会导致运行效率下降的吧?



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


加好友 发短信
等级:黑侠 帖子:755 积分:6 威望:0 精华:0 注册:2013/5/16 5:52:00
  发帖心情 Post By:2016/6/29 9:41:12 [显示全部帖子]

下面这个方法是否可行?
SS:INTPART(((BJ*(BL/100))/(open*MULTIPLIER*TACCOUNT(41)))),linethick0;
PS:INTPART(((BJ*(BL/100))/(ref(open,enterbars)*MULTIPLIER*TACCOUNT(41)))),linethick0;
再加个变量PS,计算手数时指定按上次开仓时的开盘价来计算,然后在平仓语句中填PS:
sell(翻空信号and holding>0,PS,thisclose);  
这样是否可行?

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


加好友 发短信
等级:黑侠 帖子:755 积分:6 威望:0 精华:0 注册:2013/5/16 5:52:00
  发帖心情 Post By:2016/6/29 9:57:40 [显示全部帖子]

理解了。就是因为计算机能力一般,才寻求简单易懂的处理方式。才需要请教哦。
请对我上面对开平参数分别设定的方法是否可行给与评价


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


加好友 发短信
等级:黑侠 帖子:755 积分:6 威望:0 精华:0 注册:2013/5/16 5:52:00
  发帖心情 Post By:2016/6/29 10:12:04 [显示全部帖子]

使用pertrader是不是就意味着在开仓和平仓语句里必须同时加perrader控制符?
另外,使用pertrader是不是就意味着策略里的默认本金是无效的,交易会按照账户里的实际资金来下单开仓和平仓?

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


加好友 发短信
等级:黑侠 帖子:755 积分:6 威望:0 精华:0 注册:2013/5/16 5:52:00
  发帖心情 Post By:2016/6/29 10:41:45 [显示全部帖子]

像pertrader, orderqueue这类下单控制符,有没有集中专门放在某个地方,或者说专门的分类说明,可以查看学习?尤其是可以看到除这些之外还有哪些下单控制符,可以系统地了解。
软件说明里的公式函数分类索引里没有这个分类。


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