TB开拓者公式编写常见问题1【期货程序化】

2020/9/1 9:22:52点击:

中信建投期货深圳分公司第七届期货实盘正在报名中『附奖品介绍』

期货程序化

  上一篇文章《期货程序化软件有哪些》介绍了目前期货程序化常用的一些软件平台,本文介绍TB开拓者公式编写中一些出现频率比较高的问题,以Q&A形式整理,以供参考。

  Q1:为什么公式的开平仓不受条件的限制,每一个 K 线上都有开、平仓的动作?
  A1:在 if( ......)条件判断语句的后面不小心加上分号,就会导致后面的执行不受条件的控制了。注意一定要把 if(......); 后面这里的“;”去掉。
  Q2:自己建的公式没有编译,但在公式编辑器中不能编译,编译按钮是灰色的?
  A2:您只需要在公式代码中任意位置加入一个空格,然后再删掉这个空格,就可以进行编译了。这是因为该公式以前被保存过,只有代码被修改过之后,才能进行编译保存。
  Q3: AverageFC 和 Average 有什么区别?
  A3: 您可以从以下三个方面了解这两个函数的区别:
  1、Average 和 AverageFC 都是内建的用户函数,目的都是用来求 N 个 Bar 以来的平均值,软件内可以直接看到实现的代码。
  2、AverageFC 是指 FastCalculate,即快速计算。当这两个函数的第二个参数,即 N 个 Bar 是常量时,使用 AverageFC,可以提高计算效率;当 N 是不确定的变量时,则必须使用 Average,否则会出现计算问题。
  3、系统里面类似的用户函数还有 Summation 和 SumamtionFC,Highest 和 HighestFC,Lowest和 LowestFC 等。
  Q4:为什么出现最终目标文件编译错误?

  A4:有以下几种情况会导致这个问题出现:

  1、有中文字符的存在,特别是一些细节的不容易发现的中文标点符号。

  2、公式管理器中存在未通过编译的,有严重逻辑错误的公式,需删掉这些有错误的公式。

  3、使用了一些 C++的关键字来命名变量,比如 switch,case,int,Public等,可以考虑在此基础上加上一些前缀,比如 My****,就可以通过编译了。

  Q5:报“锁定编译目标文件超时”是什么原因?

  A5:有两种可能:

  1、已经打开的图表调用了技术指标或交易指令,并且行情更新较快,导致编译时覆盖旧文件失败。这个时候,您可以先关闭所有的图表窗体再试试看。

  2、可能是公式的写法有问题,是系统现在还不能识别的错误。您可以另外写一个简单的公式看看能不能编译通过,如果能通过,那就证明是这个公式有问题。(您可以考虑导出您自己的公式,然后删掉安装目录下 User 目录下您所在用户名的 formula,然后再复制一个干净的 formula 进去。)

  相关阅读:
  期货程序化软件有哪些
  以上就是关于TB开拓者公式编写过程中经常遇到问题的介绍,如您在期货程序化交易过程中有遇到问题,或者想要具体了解期货,可添加客户经理具体咨询,QQ/微信:381006527,联系电话:0755-33373369

  中信建投期货有限公司深圳分公司提示您:期市有风险,入市需谨慎!

  版权申明:本网所有内容文字、图片和音视频资料,如无特殊说明,版权均属中信建投期货有限公司深圳分公司所有,任何媒体、网站或个人未经本网协议授权不得转载、链接、转贴或以其他方式复制发布/发表。已经本公司协议授权的媒体、网站,在下载使用时必须注明"稿件来源:中信建投期货有限公司深圳分公司",违者本公司将依法追究责任。

期货开户流程