初学者的问题 MQL5 MT5 MetaTrader 5 - 页 674 1...667668669670671672673674675676677678679680681...1503 新评论 Vladimir Karputov 2016.11.23 11:07 #6731 Leo59:我不能让一些东西打印()到测试者的日志中。你是如何做到的?下面是专家顾问OnInit()的代码。//+------------------------------------------------------------------+//| Expert initialization function |//+------------------------------------------------------------------+int OnInit() { SymbolSelect("EURJPY",true); Print(__FUNCTION__,", ",TimeToString(TimeCurrent())); SymbolSelect("USDJPY",true);//--- return(INIT_SUCCEEDED); } 然后我设置一个断点(第1步),在历史上运行测试(第2步)。而在测试器中我得到了这样的结果。2016.11.23 13:02:24.191 2016.06.13 00:00:00 OnInit, 2016.06.13 00:00 Questions from Beginners MQL5 初学者的问题 MQL4 MT4 MetaTrader Questions from Beginners MQL4 Leo59 2016.11.23 11:55 #6732 Vladimir Karputov: 接下来,我设置了一个断点(步骤1)并运行了一个 历史测试(步骤2)。 奇怪的是,你用数字 "2 "指向的这个蓝色按钮,对我来说并不活跃。会不会是因为我使用的是MT4? Leo59 2016.11.23 12:17 #6733 但是,尽管如此,如果这样的事情被写出来。在客户终端策略测试器中,对一些功能的操作有限制。函数Print()和PrintFormat()。为了提高优化EA参数时的性能,函数Print()和PrintFormat() 不被执行。例外的情况是在OnInit() 处理程序中使用这些函数。这使我们能够在错误发生时方便搜索错误原因。为什么OnInit()处理程序 中的 Print() 函数不能 照常工作? 一般来说,关于在优化模式下init()中的其他用户定义的函数? Vladimir Karputov 2016.11.23 12:18 #6734 Leo59: 奇怪的是,你用 "2 "指向的我的蓝色按钮却没有激活。会不会是因为我使用的是MT4?是的,这就是为什么我可以自由地在历史上测试任何EA,即选择一个时间框架,例如从2016.06.20到2016.11.11,然后悄悄地,一步一步地,调试和观察变量的变化,而你却不能这样做。那么,是否值得继续坐在一个支持已经结束的旧终端上?或者,你应该使用现代的MetaTrader 5?事实上,MetaTrader 5已经有对冲功能:MetaTrader 5交易平台有 对冲功能。 Artyom Trishkin 2016.11.23 12:24 #6735 Vladimir Karputov:是的,这就是为什么我可以自由地在历史上测试任何EA,即选择一个时间框架,例如从2016.06.20到2016.11.11,然后悄悄地,一步一步地,调试和观察变量的变化,而你却不能这样做。那么,是否值得继续坐在一个支持已经结束的旧终端上?或者,你应该使用现代的MetaTrader 5?毕竟,MetaTrader 5已经有对冲功能:MetaTrader 5交易平台有 对冲功能。 为什么我可以在MT4中进行调试并逐步观察变量的变化?我做错了什么? Vladimir Karputov 2016.11.23 12:33 #6736 Artyom Trishkin: 为什么我可以在MT4中调试,冷静地、一步一步地调试,观察变量的变化?我做错了什么? 你做错了什么:阅读速度非常快或故意跳过文本。 Leo59 2016.11.23 12:39 #6737 亲爱的!!!!实质性问题。为什么OnInit() 处理程序中的 Print() 函数不能 照常工作?一般来说,在优化模式下,init()中的其他自定义函数如何处理? Vladimir Karputov 2016.11.23 12:41 #6738 Leo59: 亲爱的!!!!实质性问题。为什么OnInit() 处理程序中的 Print() 函数不能 照常工作?一般来说,在优化模式下,init()中的其他用户定义的函数如何处理?上面已经解释了一切。它起作用了,而且很有效。我给你看了一个例子。 关于交易、自动交易系统和策略测试的论坛 初学者的问题 Vladimir Karputov, 2016.11.23 12:07 下面是EA的OnInit()的代码。//+------------------------------------------------------------------+//| Expert initialization function |//+------------------------------------------------------------------+int OnInit() { SymbolSelect("EURJPY",true); Print(__FUNCTION__,", ",TimeToString(TimeCurrent())); SymbolSelect("USDJPY",true);//--- return(INIT_SUCCEEDED); } 我进一步放了一个断点(第1步)并开始测试 历史(第2步)。而在测试器中,我得到了这样的结果。2016.11.23 13:02:24.191 2016.06.13 00:00:00 OnInit, 2016.06.13 00:00 Questions from Beginners MQL5 Plese help me 错误、漏洞、问题 Leo59 2016.11.23 12:52 #6739 Vladimir Karputov:上面已经解释过了。它起作用了,而且很有效。而我给了你一个例子。 Vladimir,在你的例子中,用断点和从MetaEditor运行测试,而不是从终端的测试器运行,是不标准的。让我重复一遍。1.为什么OnInit() 处理程序中的 Print() 函数不能照常工作?2.init()中的其他用户函数如何在优化模式下工作? Vladimir Karputov 2016.11.23 13:00 #6740 Leo59: Vladimir,在你的例子中,从MetaEditor开始测试的断点,而不是从测试员的终端开始,是不标准的。再一次。1.为什么OnInit() 处理程序中 的Print() 函数不能 照常工作? 2.init()中的其他用户函数如何在优化模式下工作?我有一种感觉,你从来没有打开过终端。下面是专家顾问OnInit()的代码。//+------------------------------------------------------------------+//| Expert initialization function |//+------------------------------------------------------------------+int OnInit() { SymbolSelect("EURJPY",true); Print(__FUNCTION__,", ",TimeToString(TimeCurrent())); SymbolSelect("USDJPY",true);//--- return(INIT_SUCCEEDED); }一步一步来。第一步--从终端启动测试器(一次通过),在历史上进行测试,有可视化。在策略测试器中,我们得到以下结果。 1...667668669670671672673674675676677678679680681...1503 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
我不能让一些东西打印()到测试者的日志中。你是如何做到的?
下面是专家顾问OnInit()的代码。
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
SymbolSelect("EURJPY",true);
Print(__FUNCTION__,", ",TimeToString(TimeCurrent()));
SymbolSelect("USDJPY",true);
//---
return(INIT_SUCCEEDED);
}
然后我设置一个断点(第1步),在历史上运行测试(第2步)。
而在测试器中我得到了这样的结果。
Vladimir Karputov:
接下来,我设置了一个断点(步骤1)并运行了一个 历史测试(步骤2)。
在客户终端策略测试器中,对一些功能的操作有限制。
函数Print()和PrintFormat()。
为了提高优化EA参数时的性能,函数Print()和PrintFormat() 不被执行。例外的情况是在OnInit() 处理程序中使用这些函数。这使我们能够在错误发生时方便搜索错误原因。
为什么OnInit()处理程序 中的 Print() 函数不能 照常工作?
一般来说,关于在优化模式下init()中的其他用户定义的函数?奇怪的是,你用 "2 "指向的我的蓝色按钮却没有激活。会不会是因为我使用的是MT4?
是的,这就是为什么我可以自由地在历史上测试任何EA,即选择一个时间框架,例如从2016.06.20到2016.11.11,然后悄悄地,一步一步地,调试和观察变量的变化,而你却不能这样做。
那么,是否值得继续坐在一个支持已经结束的旧终端上?或者,你应该使用现代的MetaTrader 5?事实上,MetaTrader 5已经有对冲功能:MetaTrader 5交易平台有 对冲功能。
是的,这就是为什么我可以自由地在历史上测试任何EA,即选择一个时间框架,例如从2016.06.20到2016.11.11,然后悄悄地,一步一步地,调试和观察变量的变化,而你却不能这样做。
那么,是否值得继续坐在一个支持已经结束的旧终端上?或者,你应该使用现代的MetaTrader 5?毕竟,MetaTrader 5已经有对冲功能:MetaTrader 5交易平台有 对冲功能。
为什么我可以在MT4中调试,冷静地、一步一步地调试,观察变量的变化?我做错了什么?
实质性问题。
为什么OnInit() 处理程序中的 Print() 函数不能 照常工作?一般来说,在优化模式下,init()中的其他自定义函数如何处理?
亲爱的!!!!
实质性问题。
为什么OnInit() 处理程序中的 Print() 函数不能 照常工作?一般来说,在优化模式下,init()中的其他用户定义的函数如何处理?
上面已经解释了一切。它起作用了,而且很有效。我给你看了一个例子。
关于交易、自动交易系统和策略测试的论坛
初学者的问题
Vladimir Karputov, 2016.11.23 12:07
下面是EA的OnInit()的代码。
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
SymbolSelect("EURJPY",true);
Print(__FUNCTION__,", ",TimeToString(TimeCurrent()));
SymbolSelect("USDJPY",true);
//---
return(INIT_SUCCEEDED);
}
我进一步放了一个断点(第1步)并开始测试 历史(第2步)。
而在测试器中,我得到了这样的结果。
上面已经解释过了。它起作用了,而且很有效。而我给了你一个例子。
让我重复一遍。
1.为什么OnInit() 处理程序中的 Print() 函数不能照常工作?
2.init()中的其他用户函数如何在优化模式下工作?
Vladimir,在你的例子中,从MetaEditor开始测试的断点,而不是从测试员的终端开始,是不标准的。
再一次。
1.为什么OnInit() 处理程序中 的Print() 函数不能 照常工作?
2.init()中的其他用户函数如何在优化模式下工作?
我有一种感觉,你从来没有打开过终端。
下面是专家顾问OnInit()的代码。
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
SymbolSelect("EURJPY",true);
Print(__FUNCTION__,", ",TimeToString(TimeCurrent()));
SymbolSelect("USDJPY",true);
//---
return(INIT_SUCCEEDED);
}
一步一步来。第一步--从终端启动测试器(一次通过),在历史上进行测试,有可视化。
在策略测试器中,我们得到以下结果。