错误、漏洞、问题 - 页 97

 
EvgeTrofi:

如果返回有很多括号 - 它开始变得混乱!?

例如,这里是一个从 "klsfd Step 2 "这样的字符串中返回一个数字的函数。

它与这个有什么不同呢?

第二种会导致编译时问题,而第一种则不会。

试试这个

int GetStep(string text){
   string Right;
   int U = StringFind(text, "Step ");
   int End;
   if(U>=0){
      U=U+5;
      Right = StringSubstr(text, U);
      End = StringFind(Right, ".");
      return((int)(MathRound(StringToDouble(StringSubstr(text, U, End-U)))));
   }
   return(0);
}
 
Interesting:

你需要明确地将结果转换为int类型。

PS

但据我所知,这个警告原则上可以忽略不计...

好吧,这很清楚,但从逻辑上讲,这是不正确的!在等号右边的表达式应该返回int类型!

 
EvgeTrofi:

嗯,这是可以理解的,但从逻辑上讲,这是不对的!等号右边的表达式应该返回int类型?

对于SYMBOL_TRADE_STOPS_LEVEL 来说,它是int,但该函数也可能返回其他类型。

识别器

描述

财产类型

符号_SELECT

表示该符号在市场观察中被选中。

bool

SYMBOL_VOLUME

成交量 - 最后一笔交易的成交量

符号_高容量

当天的最大成交量

符号_音量低

全天最低成交量

符号_卷标

当前竞价中的成交量

符号_体积任务

在当前的问询中的数量

SYMBOL_TIME

最后报价时间

日期时间

符号_数字

小数点后的数字

䵮䵮

SYMBOL_SPREAD

点差大小,以点计

䵮䵮

符号_spread_float

浮动价差的标志

bool


PS

此外,正如我在上面已经写过的,如果你能确定代码是正确的,这个警告可以被 "忽略"。

 
你能告诉我如何关闭自动更新 吗?我的工作单位一个月只给我200MB。再有一次更新,流量就会下降 :(
 
EvgeTrofi:
你能告诉我如何关闭自动更新吗?我的工作单位一个月只给我200MB。再有一次更新,流量就会被毁掉 :(
标准方式是不可能的,至少现在还不可能......
 

"更新 "到最新的版本--结果是,每次你连接到互联网时,客户端先是消耗60mb,然后没有反应,被迫关闭了

客户端通过任务管理器,打开了 "磁盘碎片整理 "程序。驱动器的这一部分(安装客户端的地方)非常零散,碎片整理

仍然没有帮助,目录中的文件(终端MQL-5安装的地方)仍然是零散的。

 
我把我的EA 从MQL4重写成 MQL5。编译时--不出现任何错误或注释。在测试期间--没有一笔交易。我在哪里可以找到这个结果的原因?我应该首先寻找什么?
 
EvgeTrofi:
我把我的EA从MQL4重写成MQL5。编译时--不出现任何错误或注释。在测试期间--没有一笔交易。我在哪里可以找到这个结果的原因?首先应该寻找什么?
我可以在策略测试器中看到专家顾问的日志吗(最好是一个文件)?
 
可以说,该日志是空白的。我已经习惯了MQL4的写法,如错误的批次或错误的停止....
 
EvgeTrofi:
可以说,该日志是空白的。我已经习惯了MQL4的写法,如错误的批次或错误的停止....。

这是测试员的日志,并标明了在哪里可以看到代理的日志

MN      0       Tester  13:42:54        log file "C:\Program Files\MetaTrader 5\Tester\Agent-127.0.0.1-3000\logs\20100817.log" written
原因: