下载MetaTrader 5

关于---MqlTick结构和 SymbolInfoTick 函数

要添加评论,请登录注册
市场有超过400个指标。试试其中任何一个!
chunhua Zhao
654
chunhua Zhao 2013.11.26 11:10 

    如果你的EA 使用了 SymbolInfoTick() 这个函数  和  MqlTick  价格结构   ,一定要做好防范措施,我前期运行良好的EA无缘无故的频繁操作,百思不解,经仔细查试原来

 经纪商的服务器屏蔽了成交量和最后成交价,而EA中使用了这两函数和结构。 当你通过 调用 SymbolInfoTick()函数在获取MqlTick的数据时,即使---MqlTick 结构内部数据长时间为零也不会报错,就是如果此

结构的成员值为零,它就始终成功返回零。 而经纪商的服务器可以屏蔽这个结构的:   last  上次成交价    、   volume   上次价格交易量; 

 

见下图:

 成交量

    最好避免使用 MqlTick 结构的上次成交价  和 成交量;如不得已,前置检测条件。 

enbo lu
版主
1947
enbo lu 2013.12.07 15:59  
说实话,没看明白你的意思。
chunhua Zhao
654
chunhua Zhao 2013.12.08 06:13  
luenbo:
说实话,没看明白你的意思。

  

  struct MqlTick

  {
   datetime     time;          // 价格更新的最近时间
   double       bid;           // 当前买入价
   double       ask;           // 当前卖出价
   double       last;          // 上一次交易价格 (Last)
   ulong        volume;        // 上一次价格交易量

  }; 

 

    这个结构中的 volume  是 订单号的交易量,是真实成交量,不是报价量,你看到上面那张图表的成交量柱线没有,后面的没有提供。几天后经纪商的网站报告了个新闻,说是对其MT5服务器加装了个软件。 

 

    你可以打开你的MT5客户端,按 “Ctrl+k” 试试 ,这个就是真实成交量(每根柱线);  另, 按“Ctrl+L” 是报价量 

chunhua Zhao
654
chunhua Zhao 2013.12.08 06:21  

      这家经纪商不仅把自己服务器的成交量设为零,也把这个结构的最后成交价  “last ” 设为零,乖乖,不知道他整了个啥软件附加到自己的MT5服务器上了  

Jinsong Zhang
15606
Jinsong Zhang 2013.12.09 04:40  
应该是tick跳动的次数
chunhua Zhao
654
chunhua Zhao 2013.12.09 08:01  
song_song:
应该是tick跳动的次数

 

        不管这家平台的“volume”提供的数据来源含义是什么,只要他提供就能被利用和分析,但他保护起来你就走不了这条路了

enbo lu
版主
1947
enbo lu 2013.12.09 16:05  

个人认为分析交易量意义不大。

你只能获取你所在经纪商的交易量。

要添加评论,请登录注册