错误、漏洞、问题 - 页 1628 1...162116221623162416251626162716281629163016311632163316341635...3184 新评论 fxsaber 2016.08.03 20:16 #16271 HistoryOrderGetInteger(OrderTicket,ORDER_TIME_DONE_MSC) - 在测试者中返回0! A100 2016.08.03 22:05 #16272 审查员打开文件时出错。例如,如果1. 删除 "一些不相关的代码"(见下文)。2. 或删除 ::Sleep(1000)没有错误//Test.mq5 #import "Test001.ex5" string f( string file ); #import string __Period() { return StringSubstr( EnumToString((ENUM_TIMEFRAMES)Period()), 7 ); } void OnInit() { Print( Symbol(), ",", __Period(), ", результат=", f( "test.txt" )); } 行动的顺序。1.创建一个新的配置文件(如 "测试")。2.打开两个新的图表,将Test.ex5专家顾问附在两个图表上(见图)。4.选择任何其他现有的配置文件5.选择 "测试 "配置文件结果。Test001.mq5看起来像这样。//Test001.mq5 #property library //--- //здесь некий код не имеющий отношения к делу //--- string f( string file ) export { ::ResetLastError(); int hFile = ::FileOpen( file, FILE_READ | FILE_SHARE_READ | FILE_TXT | FILE_ANSI | FILE_COMMON ); if ( hFile == INVALID_HANDLE ) return ::StringFormat( "Error(%d): Не был открыт файл: %s", ::GetLastError(), file ); ::Sleep( 1000 ); ::FileClose( hFile ); return "OK"; } 附加的文件: Test001.ex5 16 kb A100 2016.08.03 23:02 #16273 test.txt文件本身没有附在信息中,但看起来像这样附加信息:在FILE_COMMON 意义上要打开的文件的位置 - 不影响错误的发生 Alexey Navoykov 2016.08.04 05:25 #16274 Andrey Barinov:这就是代码优化。 如果在metaeditor.ini的[Experts]字段中写上OPTIMIZE=0,那么编译速度就会像4中那样。我有一些项目在20秒内完成编译,有些则进入了无限的优化循环:) 哇,谢谢你,伙计你之前在哪里!?)而我们在这里苦苦挣扎......。最奇怪的是,开发商对这个选项只字未提 Alexey Da 2016.08.04 07:24 #16275 Alexey Navoykov: 哇,谢谢你,伙计!你以前去哪里了!?)而在这里,我们正在遭受......。奇怪的是,开发人员对这个选项保持沉默。并非无声无息。论坛上有一个 18页的主题 ,其中刚刚描述了这个选项。顺便说一下,在为调试而编译时,不启用优化。 Тестирование нового компилятора MQL5 для x64 платформ - ускорение расчетов от 2 до 10 раз! www.mql5.com Форум трейдеров MQL5.community Anatoli Kazharski 2016.08.04 07:26 #16276 Andrey Barinov:这就是代码优化。 如果在metaeditor.ini的[Experts]字段中写上OPTIMIZE=0,那么编译速度就会像4中那样。我有一些项目在20秒内完成编译,而有些则进入了无限的优化循环:)正是如此!也就是说,我前段时间自己把它设置为1,只是忘记了。))阿列克谢-纳沃伊科夫。...而我们仍然在这里挣扎......。奇怪的是,开发人员对这个选项只字未提该主题得到了详细的讨论:测试x64平台的新MQL5编译器--速度提升2至10倍!>>>>> 我把它忘了。)我一开始甚至没有这个优化工作。也就是说,在某些情况下编译会失败。但后来我设法找到了原因。后来它被修复了,我在一个终端中把参数设置为1,就把它忘了。昨天我坐在那里想,为什么在一个MT5编辑器中,编译速度比另一个MT5编辑器快得多。//---现在,如果我把它设置为0,编译的速度就会快25倍。0 error(s), 0 warning(s), compile time: 668 msec 1 1 Renat Fatkhullin 2016.08.04 08:17 #16277 Anatoli Kazharski:当然,我在MetaTrader 5 中最复杂的项目也需要很长的时间来编译。它甚至需要长达11 秒的时间。完全相同的版本,但在MetaTrader 4 中可以快达25 倍。 在MT5中,编译器更加先进,优化了代码,使其运行速度比MT5快10倍。我们以前写过关于它的文章,也解释过它。 MQL5编译器必须创建两份代码以实现兼容--用于旧的32位版本(没有完全优化)和用于64位的最大优化版本。MQL5的全部威力只在64位中显现。 Anatoli Kazharski 2016.08.04 08:22 #16278 Renat Fatkhullin:MT5的编译器更先进,它优化了代码,使其运行速度比MT5快10倍。此外,编译器还必须创建两份代码副本以实现兼容--用于旧的32位版本(没有完全优化)和64位的最大优化版本。MQL5的全部力量只在64位中显现。谢谢你。我已经刷新了我对讨论这一切的主题的记忆。 在开发的时候,我会把它设置为0,因为我经常要进行编译,等待10 秒钟是非常令人厌烦的。而在最终汇编前的最终产品,我将把1。 coderex 2016.08.04 09:57 #16279 Renat Fatkhullin:在MT5中,编译器更加先进,优化了代码,使其运行速度比MT5快10倍。我们以前曾写过并解释过这一点。 MQL5编译器必须创建两份代码以实现兼容--用于旧的32位版本(没有完全优化)和用于64位的最大优化版本。MQL5的全部威力只在64位中显现。 如果在MetaEditor运行时改变OPTIMIZE 参数,到底需不需要重新加载以接受设置? Anatoli Kazharski 2016.08.04 10:00 #16280 coderex: 如果在MetaEditor运行时改变OPTIMIZE 参数,是否需要重新加载以接受设置? 自己尝试一下会更快。我刚刚进行了测试。没有必要重新启动编辑器。 1...162116221623162416251626162716281629163016311632163316341635...3184 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
审查员打开文件时出错。例如,如果
1. 删除 "一些不相关的代码"(见下文)。
2. 或删除 ::Sleep(1000)
没有错误
行动的顺序。
1.创建一个新的配置文件(如 "测试")。
2.打开两个新的图表,将Test.ex5专家顾问附在两个图表上(见图)。
4.选择任何其他现有的配置文件
5.选择 "测试 "配置文件
结果。
Test001.mq5看起来像这样。
test.txt文件本身没有附在信息中,但看起来像这样
附加信息:在FILE_COMMON 意义上要打开的文件的位置 - 不影响错误的发生
这就是代码优化。
如果在metaeditor.ini的[Experts]字段中写上OPTIMIZE=0,那么编译速度就会像4中那样。我有一些项目在20秒内完成编译,有些则进入了无限的优化循环:)
哇,谢谢你,伙计!你以前去哪里了!?)而在这里,我们正在遭受......。奇怪的是,开发人员对这个选项保持沉默。
并非无声无息。论坛上有一个 18页的主题 ,其中刚刚描述了这个选项。
顺便说一下,在为调试而编译时,不启用优化。
这就是代码优化。
如果在metaeditor.ini的[Experts]字段中写上OPTIMIZE=0,那么编译速度就会像4中那样。我有一些项目在20秒内完成编译,而有些则进入了无限的优化循环:)
正是如此!也就是说,我前段时间自己把它设置为1,只是忘记了。))
...而我们仍然在这里挣扎......。奇怪的是,开发人员对这个选项只字未提
该主题得到了详细的讨论:测试x64平台的新MQL5编译器--速度提升2至10倍!>>>
>> 我把它忘了。)
我一开始甚至没有这个优化工作。也就是说,在某些情况下编译会失败。但后来我设法找到了原因。后来它被修复了,我在一个终端中把参数设置为1,就把它忘了。昨天我坐在那里想,为什么在一个MT5编辑器中,编译速度比另一个MT5编辑器快得多。
//---
现在,如果我把它设置为0,编译的速度就会快25倍。
当然,我在MetaTrader 5 中最复杂的项目也需要很长的时间来编译。它甚至需要长达11 秒的时间。完全相同的版本,但在MetaTrader 4 中可以快达25 倍。
在MT5中,编译器更加先进,优化了代码,使其运行速度比MT5快10倍。我们以前写过关于它的文章,也解释过它。
MQL5编译器必须创建两份代码以实现兼容--用于旧的32位版本(没有完全优化)和用于64位的最大优化版本。MQL5的全部威力只在64位中显现。
MT5的编译器更先进,它优化了代码,使其运行速度比MT5快10倍。
此外,编译器还必须创建两份代码副本以实现兼容--用于旧的32位版本(没有完全优化)和64位的最大优化版本。MQL5的全部力量只在64位中显现。
谢谢你。我已经刷新了我对讨论这一切的主题的记忆。
在开发的时候,我会把它设置为0,因为我经常要进行编译,等待10 秒钟是非常令人厌烦的。而在最终汇编前的最终产品,我将把1。
在MT5中,编译器更加先进,优化了代码,使其运行速度比MT5快10倍。我们以前曾写过并解释过这一点。
MQL5编译器必须创建两份代码以实现兼容--用于旧的32位版本(没有完全优化)和用于64位的最大优化版本。MQL5的全部威力只在64位中显现。
如果在MetaEditor运行时改变OPTIMIZE 参数,是否需要重新加载以接受设置?