再见,机器人--你好,沼泽地。 - 页 3 12345678910...16 新评论 Mislaid 2014.09.09 05:00 #21 我对切换到新的构建物感到忐忑不安,但事实证明,所有的指标、EA和脚本都能正常工作。然而,编译时有一系列的警告。但新编译的代码工作得更快。我使用的唯一的新功能是OnTimer(),处理文件的新选项,增加指标缓冲区的数量,一些新函数(它们的增加只是时间问题)。非常有用的是控制数组超限,在代码中用字符串表示。以前是:除以0,然后看你想看的地方。而如果错误没有发生,那就更糟糕了。 "MQL4的新内容 "可以为那些记得旧东西的人写。不再有新手? 如果你想给他们一个关于MQL4 Lite的描述,你可以在文档中不提及所有根本上是新的和不必要的东西:结构、类、资源、对象指针、OOP、调试器、信号、图形事件、所有使用这些新知识的功能等等。留下的一切将不会比旧的MQL4复杂得多。要对新的教科书 稍作修改,因为它没有经过清理。 . pansa 2014.09.09 11:06 #22 Renat 09.09.2014 02:55 # 你可以有条不紊地再次提出论点,解释关于功能的倍增、保存旧代码、修复错误等。这已经做了很多次,在文章中描述过,也在论坛中讨论过。但如果说作者是绝对错误的,是无中生有的问题,那就更容易、更准确了。 对Renat的回应! ---------------------------------------------------------------- 你在试图编造关于我的谎言! 你,作为一个开发商,为银行服务。 不是社区!你在建造一辆赛车 用脚踏车驱动的儿童自行车! 所以我必须告诉你事实。 问题。 User32. dll在哪里 ? 具有从eXpert调用脚本的功能,该指标。 所有这些都消失了!下面是证据。 该链接器本身使我成为一个有偿的eXpert,这 以在需要时调用该脚本。 现在,该脚本只被手动调用。 调用本身被不同的窗口所包围-允许调用 或者想调用第二个脚本 - 窗口 "你想离开吗? 只有手动交易才是可能的! 机器人应该做什么? 所有的机器人作家呢? 我不反对OOP和所谓的MT4更快的性能。 如果你想加快MT4的速度,你会限制 我使用了5-6个,得到了数以百计的日期! 不必要的符号是垃圾。 他们只来了!这就是速度和反应能力的体现。 但这对银行是不利的! 潘萨 从User32导入函数。如果他们的目的不是相当多地立即 //清楚,那么在这里记录它坦率地说是不会 帮助 多。需要 // "允许DLL导入 "要打开。 #import "user32.dll" int RegisterWindowMessageA(string MessageName)。 int PostMessageA(int hwnd, int msg, int wparam, string Name); void keybd_event(int VirtualKey, int ScanCode, int Flags, int ExtraInfo)。 ##进口 // 所有这些函数的hWnd参数是通过WindowHandle()获得的。 // 例如,一个EA/脚本可以通过以下方式获得其自身图表的句柄 // WindowHandle(Symbol(), 0)。如果EA/脚本知道另一个图表 //是开放的,那么它的手柄可以通过已知的符号和 // 时间框架。如果有多个图表,则行为不可预测。 //相同的符号和时间框架。自动接受默认值清除了 //通过模拟新指标/EA/脚本的配置窗口 //稍作等待后按下回车键。长时间的等待可能 //被证明是更强大的。这一切都不适合昏昏欲睡的人......。 void StartStandardIndicator(int hWnd, string IndicatorName, bool AutomaticallyAcceptDefaults = false) { int MessageNumber = RegisterWindowMessageA("帐户4_Internal_Message")。 PostMessageA(hWnd, MessageNumber, 13, IndicatorName)。 如果(AutomaticallyAcceptDefaults)ClearConfigDialog()。 } void StartCustomIndicator(int hWnd, string IndicatorName, bool AutomaticallyAcceptDefaults = false) { int MessageNumber = RegisterWindowMessageA("MetaTrader4_Internal_Message"); PostMessageA(hWnd, MessageNumber, 15, IndicatorName)。 如果(AutomaticallyAcceptDefaults)ClearConfigDialog()。 } void StartEA(int hWnd, string EAName, bool AutomaticallyAcceptDefaults = false) { int MessageNumber = RegisterWindowMessageA("MetaTrader4_Internal_Message"); PostMessageA(hWnd, MessageNumber, 14, EAName)。 如果(AutomaticallyAcceptDefaults)ClearConfigDialog()。 } void StartScript(int hWnd, string ScriptName, bool AutomaticallyAcceptDefaults = false) { int MessageNumber = RegisterWindowMessageA("MetaTrader4_Internal_Message"); PostMessageA(hWnd, MessageNumber, 16, ScriptName)。 如果(AutomaticallyAcceptDefaults)ClearConfigDialog()。 } 空白的ClearConfigDialog() { 睡眠(100)。 keybd_event(13, 0, 0, 0)。 } Goodbye robot - hello 交易者的 LifeHack: 四次回测比一次好 Renat Fatkhullin 2014.09.09 13:19 #23 pansa: Renat 09.09.2014 02:55 # 你可以有条不紊地再次提出论点,解释关于功能的倍增,保存旧的代码,修复错误,等等。这已经做了很多次,在文章中描述过,也在论坛中讨论过。但如果说作者是绝对错误的,是无中生有的问题,那就更容易、更准确了。 对Renat的回应! ---------------------------------------------------------------- 你是想赤裸裸地说我的坏话!?当我们处于完全不同的理解水平时,为什么要赞美?user32.dll是不会消失的--它是一个操作系统库。使用W(idechar/unicode)函数的变化,而不是A(nsi)函数。#import "user32.dll" int RegisterWindowMessageW(string MessageName); int PostMessageW(int hwnd, int msg, int wparam, string Name); void keybd_event(int VirtualKey, int ScanCode, int Flags, int ExtraInfo); #import Renat Fatkhullin 2014.09.09 13:25 #24 如果你把符号从市场观察窗口中删除,就不会有流量通过它。这一机制已经运作了14年。 pansa 2014.09.09 15:09 #25 致主持人Renate! 关于理解的水平--这是相对的。 我与光荣的骑士唐吉诃德一起拿着长矛 而且我可以胜任这项工作。 另一方面,你必须满足更高的要求。 更高的要求,生产更高的产品 更高的质量。 那么 user32,dll指的是windos。 你关于从A到W的建议 没有任何效果! 你的建议是 什么? 试着从eXpert!运行脚本。 删除字符并不影响CPU或网络负载。 它是一个屏幕调用,线程是一样的! 我 希望你会同意我的看法。 潘萨 Renat Fatkhullin 2014.09.09 15:18 #26 我看得出,你也是如此。但在这里我们讨论的是编程和程序员编写的 程序。如果你不了解你所使用的源代码,你需要学习。我们为此做了很多工作:广泛的文档、教程、文章、源码库、自由职业者、现成产品市场、信号、论坛等等。 [删除] 2014.09.09 15:19 #27 pansa: 尝试改变脚本/指标名称的第一个字母的大小写。不知为何,我也在挣扎https://www.mql5.com/ru/forum/152533/page2#982156P.S: 嗯,把字符串改为char[] 。 vasabu 2014.09.09 18:34 #28 亲爱的Renat,我也在编译EA后得到很多警告,没有错误。我有个问题,这些警告是什么意思(主要是在return()行前面的警告)?而且它们不会对专家顾问的运作产生负面影响吗?当然,我不想重新学习语言,重新制作我的EA(我是一个交易员,不是一个程序员)。 Карпутов Владимир 2014.09.10 02:40 #29 vasabu2012:亲爱的Renat,我也在编译EA后得到很多警告,没有错误。我有个问题,这些警告是什么意思(主要是在return()行前面的警告)?而且它们不会对专家顾问的运作产生负面影响吗?当然,我不想再学习语言和重新制作我的EA(我是一个交易员,不是一个程序员)。 请把错误或你犯了一些错误的专家顾问的代码发给我。 Andrei01 2014.09.10 03:49 #30 vasabu2012:我也是,在编译完EA后得到了一堆警告--没有错误。当函数的模板名称与变量本身相匹配时,大多数垃圾警告弹出,因为变量通过引用传递到函数中是完全合法、正确和标准的,因为在标准和典型的使用中,变量本身是以自己的名字传递到函数的。 遗憾的是,主持人无法对此做出称职的、符合逻辑的解释,他们说,有时在其他结构中,如果有类似的名称,人们可能会产生误解。但这里有一个悖论,例如,当有一个名称相同的函数,而参数数量不同时,警告不会弹出。 所以我们不得不把它归结为一些宗教迷信和模糊的信仰,而这个警告背后根本没有任何逻辑。我还不认为是白痴的版本,正如该线程的作者所建议的那样,来解释这种现象))。 12345678910...16 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
我对切换到新的构建物感到忐忑不安,但事实证明,所有的指标、EA和脚本都能正常工作。然而,编译时有一系列的警告。但新编译的代码工作得更快。我使用的唯一的新功能是OnTimer(),处理文件的新选项,增加指标缓冲区的数量,一些新函数(它们的增加只是时间问题)。非常有用的是控制数组超限,在代码中用字符串表示。以前是:除以0,然后看你想看的地方。而如果错误没有发生,那就更糟糕了。
"MQL4的新内容 "可以为那些记得旧东西的人写。不再有新手?
如果你想给他们一个关于MQL4 Lite的描述,你可以在文档中不提及所有根本上是新的和不必要的东西:结构、类、资源、对象指针、OOP、调试器、信号、图形事件、所有使用这些新知识的功能等等。留下的一切将不会比旧的MQL4复杂得多。要对新的教科书 稍作修改,因为它没有经过清理。
.
Renat 09.09.2014 02:55 #
你可以有条不紊地再次提出论点,解释关于功能的倍增、保存旧代码、修复错误等。这已经做了很多次,在文章中描述过,也在论坛中讨论过。但如果说作者是绝对错误的,是无中生有的问题,那就更容易、更准确了。
对Renat的回应!
----------------------------------------------------------------
你在试图编造关于我的谎言!
你,作为一个开发商,为银行服务。
不是社区!你在建造一辆赛车
用脚踏车驱动的儿童自行车!
所以我必须告诉你事实。
问题。
User32. dll在哪里 ?
具有从eXpert调用脚本的功能,该指标。
所有这些都消失了!下面是证据。
该链接器本身使我成为一个有偿的eXpert,这
以在需要时调用该脚本。
现在,该脚本只被手动调用。
调用本身被不同的窗口所包围-允许调用
或者想调用第二个脚本 - 窗口 "你想离开吗?
只有手动交易才是可能的!
机器人应该做什么? 所有的机器人作家呢?
我不反对OOP和所谓的MT4更快的性能。
如果你想加快MT4的速度,你会限制
我使用了5-6个,得到了数以百计的日期!
不必要的符号是垃圾。
他们只来了!这就是速度和反应能力的体现。
但这对银行是不利的!
潘萨
从User32导入函数。如果他们的目的不是相当多地立即
//清楚,那么在这里记录它坦率地说是不会 帮助 多。需要
// "允许DLL导入 "要打开。
#import "user32.dll"
int RegisterWindowMessageA(string MessageName)。
int PostMessageA(int hwnd, int msg, int wparam, string Name);
void keybd_event(int VirtualKey, int ScanCode, int Flags, int ExtraInfo)。
##进口
// 所有这些函数的hWnd参数是通过WindowHandle()获得的。
// 例如,一个EA/脚本可以通过以下方式获得其自身图表的句柄
// WindowHandle(Symbol(), 0)。如果EA/脚本知道另一个图表
//是开放的,那么它的手柄可以通过已知的符号和
// 时间框架。如果有多个图表,则行为不可预测。
//相同的符号和时间框架。自动接受默认值清除了
//通过模拟新指标/EA/脚本的配置窗口
//稍作等待后按下回车键。长时间的等待可能
//被证明是更强大的。这一切都不适合昏昏欲睡的人......。
void StartStandardIndicator(int hWnd, string IndicatorName, bool AutomaticallyAcceptDefaults = false)
{
int MessageNumber = RegisterWindowMessageA("帐户4_Internal_Message")。
PostMessageA(hWnd, MessageNumber, 13, IndicatorName)。
如果(AutomaticallyAcceptDefaults)ClearConfigDialog()。
}
void StartCustomIndicator(int hWnd, string IndicatorName, bool AutomaticallyAcceptDefaults = false)
{
int MessageNumber = RegisterWindowMessageA("MetaTrader4_Internal_Message");
PostMessageA(hWnd, MessageNumber, 15, IndicatorName)。
如果(AutomaticallyAcceptDefaults)ClearConfigDialog()。
}
void StartEA(int hWnd, string EAName, bool AutomaticallyAcceptDefaults = false)
{
int MessageNumber = RegisterWindowMessageA("MetaTrader4_Internal_Message");
PostMessageA(hWnd, MessageNumber, 14, EAName)。
如果(AutomaticallyAcceptDefaults)ClearConfigDialog()。
}
void StartScript(int hWnd, string ScriptName, bool AutomaticallyAcceptDefaults = false)
{
int MessageNumber = RegisterWindowMessageA("MetaTrader4_Internal_Message");
PostMessageA(hWnd, MessageNumber, 16, ScriptName)。
如果(AutomaticallyAcceptDefaults)ClearConfigDialog()。
}
空白的ClearConfigDialog()
{
睡眠(100)。
keybd_event(13, 0, 0, 0)。
}
Renat 09.09.2014 02:55 #
你可以有条不紊地再次提出论点,解释关于功能的倍增,保存旧的代码,修复错误,等等。这已经做了很多次,在文章中描述过,也在论坛中讨论过。但如果说作者是绝对错误的,是无中生有的问题,那就更容易、更准确了。
对Renat的回应!
----------------------------------------------------------------
你是想赤裸裸地说我的坏话!?
当我们处于完全不同的理解水平时,为什么要赞美?
user32.dll是不会消失的--它是一个操作系统库。
使用W(idechar/unicode)函数的变化,而不是A(nsi)函数。
致主持人Renate!
关于理解的水平--这是相对的。
我与光荣的骑士唐吉诃德一起拿着长矛
而且我可以胜任这项工作。
另一方面,你必须满足更高的要求。
更高的要求,生产更高的产品
更高的质量。
那么 user32,dll指的是windos。
你关于从A到W的建议 没有任何效果! 你的建议是 什么?
试着从eXpert!运行脚本。
删除字符并不影响CPU或网络负载。
它是一个屏幕调用,线程是一样的!
我 希望你会同意我的看法。
潘萨
我看得出,你也是如此。
但在这里我们讨论的是编程和程序员编写的 程序。如果你不了解你所使用的源代码,你需要学习。我们为此做了很多工作:广泛的文档、教程、文章、源码库、自由职业者、现成产品市场、信号、论坛等等。
尝试改变脚本/指标名称的第一个字母的大小写。不知为何,我也在挣扎https://www.mql5.com/ru/forum/152533/page2#982156
P.S: 嗯,把字符串改为char[] 。
亲爱的Renat,我也在编译EA后得到很多警告,没有错误。
我有个问题,这些警告是什么意思(主要是在return()行前面的警告)?而且它们不会对专家顾问的运作产生负面影响吗?
当然,我不想重新学习语言,重新制作我的EA(我是一个交易员,不是一个程序员)。
亲爱的Renat,我也在编译EA后得到很多警告,没有错误。
我有个问题,这些警告是什么意思(主要是在return()行前面的警告)?而且它们不会对专家顾问的运作产生负面影响吗?
当然,我不想再学习语言和重新制作我的EA(我是一个交易员,不是一个程序员)。
请把错误或你犯了一些错误的专家顾问的代码发给我。
我也是,在编译完EA后得到了一堆警告--没有错误。
当函数的模板名称与变量本身相匹配时,大多数垃圾警告弹出,因为变量通过引用传递到函数中是完全合法、正确和标准的,因为在标准和典型的使用中,变量本身是以自己的名字传递到函数的。
遗憾的是,主持人无法对此做出称职的、符合逻辑的解释,他们说,有时在其他结构中,如果有类似的名称,人们可能会产生误解。但这里有一个悖论,例如,当有一个名称相同的函数,而参数数量不同时,警告不会弹出。
所以我们不得不把它归结为一些宗教迷信和模糊的信仰,而这个警告背后根本没有任何逻辑。我还不认为是白痴的版本,正如该线程的作者所建议的那样,来解释这种现象))。