新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 837 1...830831832833834835836837838839840841842843844...1953 新评论 Alexey Viktorov 2019.05.07 16:18 #8361 Alexander Layzerevich:纠正了MT5向指标发送数据的代码。 但错误是一样的。不要再偷看用mql4写的垃圾代码了,你会更快得到它。 Seric29 2019.05.07 16:27 #8362 Igor Makanu:在Visual Studio中查看项目属性,应该有一个关于编译dll的平台设置--MT4需要32位代码。 PS:谷歌找到VS的设置我试图寻找这样的设置,搜索引擎给出的答案是,像32到64的反面,在一般情况下,不明白如何进行这种设置。如果我在这里理解一点,我有它默认的32是 而我发现一些菜单上有一个设置。 所以我不知道这里是否默认为32。 WinProject 2019.05.07 16:38 #8363 你能告诉我为什么同样的代码在MT4中有效,而在MT5中却不行?在MT5中变量strNum总是=1,但在MT4中counter ++的工作原理是,strNum=文件中的行数。 int strNum; void OnStart() { FileNum(); Alert1(); } void FileNum() { int handle=FileOpen("File.csv",FILE_CSV|FILE_READ,';'); strNum=0; while(!FileIsEnding(handle)) { FileReadString(handle); strNum++; if(FileIsEnding(handle)==true) break; } FileClose(handle); } void Alert1() { Alert (strNum); } Maxim Kuznetsov 2019.05.07 16:39 #8364 Seric29:试图搜索这样的设置,搜索引擎给出的答案是喜欢从32到64的反面,一般来说,不明白如何进行这样的设置。如果我在这里理解一点,我有它的默认值是32而我发现一些菜单上有一个设置。所以我不知道这里是否默认为32。对于图书馆,还有/MT或/MD的问题,我经常把它们搞混 :-)这也是在用户友好工作室的荒野中的某个地方 给我看整个项目,包括你在那里用C++和Mql所做的一切。我不认为这是一个激烈的版权 :-),我们会告诉你什么是错的,否则你会用心灵感应让大家紧张很久。 Seric29 2019.05.07 17:26 #8365 Maxim Kuznetsov:还有/MT或/MD库的问题,我经常把它们弄混。)这也是在用户友好工作室的荒野中的某个地方 给我看看整个项目,包括你在C++和Mql中所做的一切。我不认为这是最糟糕的版权 :-) 我们会通过完整的代码告诉你什么是错的,否则你会用心灵感应让大家紧张很久。 以.def为扩展名的文件 以.cpp为扩展名的文件 到mql4中,我只是从终端图书馆的文件夹中拖出一个文件 #import "dllmt42.dll" int _add(int a=0, int b=0); #import 然后愚蠢地调用这个函数,它只是返回18,不做其他事情,这就像一个实验,看看它是否有效。 Maxim Kuznetsov 2019.05.07 17:55 #8366 Seric29:以.def为扩展名的文件 以.cpp为扩展名的文件 我只是从终端文件夹Libraries复制了文件到mql4 然后我只是调用这个函数,它返回18,不做其他事情,这就像一个实验,看看它是否有效。为什么要加一个破折号,去掉它。 所有文件中的所有标识符都应该是严格相同的,没有花哨的年龄 :-) Alexander Layzerevich 2019.05.07 18:18 #8367 Alexey Viktorov:不要再偷看用mql4写的垃圾代码了,你会更快得到它。所有,正如你所说的,"垃圾代码 "是根据基本的语言帮助写的。https://www.mql5.com/ru/docs/basis/function/call 它还说:"一个函数不能在另一个函数内声明。" 这正是它所说的。这就是为什么它不起作用。 这就是为什么我想从专家那里了解如何调用这个函数(Deviation(Kanal))。当它依赖于函数的调用时(双 信封(...))。 更新:该问题已得到部分解决。 Seric29 2019.05.07 20:08 #8368 Maxim Kuznetsov:为什么要在添加处加一条__破折号线? 把它去掉。 所有文件中的所有标识符都应该是严格相同的,不要对年龄有任何幻想 :-)好吧,大家都按照说明这么做了,我也这么做了,现在我把它拆下来看看。总而言之,它起作用了,它返回了18。 谢谢你,我会继续试验的。 Alekseu Fedotov 2019.05.07 20:12 #8369 Alexander Layzerevich:所有,如你所说,"垃圾代码 "是根据基本的语言帮助写的。https://www.mql5.com/ru/docs/basis/function/call 它还说:"一个函数不能在另一个函数内声明。" 这正是它所说的。这就是为什么它不起作用。 这就是为什么我想从专家那里了解如何调用这个函数(Deviation(Kanal))。当它取决于指标函数的调用时(双 信封(...))。 更新:该问题已得到部分解决。你已经调用了偏差(Kanal)函数并将其返回的值传递给了包络(........) 函数。 而在Envelopes(........) 函数本身中,你声明了最后一个参数,它将采用这个值 是这样的 double Envelopes(string symb, ENUM_TIMEFRAMES tf, int period, int shift, int method, int price, int buff, double Dev) { double buf[1]; int handle=iEnvelopes(Symbol(), tf, period, shift, method, price, Dev); if(handle<0) { Print("Failed to create handle ATR, Error: ",GetLastError()); return(WRONG_VALUE); } else { if(CopyBuffer(handle,buff,0,1,buf)<0) { Print("Failed to copy data from the indicator ATR, Error: ",GetLastError()); return(WRONG_VALUE); } } return(buf[0]); } KrasAleks 2019.05.08 03:13 #8370 KrasAleks:向大家问好。生活中的好运和工作中的利润。我呼吁帮助(出乎意料,呵呵:))。 ................................................... 而这正是我被卡住的地方:)。用什么来代替GetProfitOpenPosInPoint(Symbol(),OP_BUY,Magic)。The_failure_level(Symbol(),OP_BUY,Magic)应该被使用,但如何得到它呢? 如果你能帮助我,我将非常高兴。 Z.U.如果你给建议,我求你了,记住我还很嫩,不要懒得给我多一点细节,你知道,比如如果。FOREST THERE,别忘了指出方向<------ ||------>。 谢谢你的关注 :)。早上好,下午,晚上,晚上(下划线)。 我无意冒犯,但我要问你一个问题。我一直在思考我的混乱....我应该需要最后的OP_BUY && OP_SELL,他的Magik || ticket || open_price.....我说的对吗?如果我找到了最后一个订单,理论上我可以计算出从它到当前ask/bid的距离。在这里下载了几个 "平均数",我认为应该有类似的东西,如果不是完全相同的话,.....,然后才意识到我找到了我要找的东西.....。:) 如果没有人介意的话:),我将继续希望得到您的建议,至少参考一下我需要的信息来源(如果不是科瓦廖夫的 书,我3天前就开始看了)。 1...830831832833834835836837838839840841842843844...1953 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
纠正了MT5向指标发送数据的代码。
但错误是一样的。
不要再偷看用mql4写的垃圾代码了,你会更快得到它。
在Visual Studio中查看项目属性,应该有一个关于编译dll的平台设置--MT4需要32位代码。
PS:谷歌找到VS的设置
我试图寻找这样的设置,搜索引擎给出的答案是,像32到64的反面,在一般情况下,不明白如何进行这种设置。如果我在这里理解一点,我有它默认的32是
而我发现一些菜单上有一个设置。
所以我不知道这里是否默认为32。
你能告诉我为什么同样的代码在MT4中有效,而在MT5中却不行?在MT5中变量strNum总是=1,但在MT4中counter ++的工作原理是,strNum=文件中的行数。
试图搜索这样的设置,搜索引擎给出的答案是喜欢从32到64的反面,一般来说,不明白如何进行这样的设置。如果我在这里理解一点,我有它的默认值是32
而我发现一些菜单上有一个设置。
所以我不知道这里是否默认为32。
对于图书馆,还有/MT或/MD的问题,我经常把它们搞混 :-)这也是在用户友好工作室的荒野中的某个地方
给我看整个项目,包括你在那里用C++和Mql所做的一切。我不认为这是一个激烈的版权 :-)
,我们会告诉你什么是错的,否则你会用心灵感应让大家紧张很久。
还有/MT或/MD库的问题,我经常把它们弄混。)这也是在用户友好工作室的荒野中的某个地方
给我看看整个项目,包括你在C++和Mql中所做的一切。我不认为这是最糟糕的版权 :-)
我们会通过完整的代码告诉你什么是错的,否则你会用心灵感应让大家紧张很久。
以.def为扩展名的文件
以.cpp为扩展名的文件
到mql4中,我只是从终端图书馆的文件夹中拖出一个文件
然后愚蠢地调用这个函数,它只是返回18,不做其他事情,这就像一个实验,看看它是否有效。
以.def为扩展名的文件
以.cpp为扩展名的文件
我只是从终端文件夹Libraries复制了文件到mql4
然后我只是调用这个函数,它返回18,不做其他事情,这就像一个实验,看看它是否有效。
为什么要加一个破折号,去掉它。
所有文件中的所有标识符都应该是严格相同的,没有花哨的年龄 :-)
不要再偷看用mql4写的垃圾代码了,你会更快得到它。
所有,正如你所说的,"垃圾代码 "是根据基本的语言帮助写的。https://www.mql5.com/ru/docs/basis/function/call
它还说:"一个函数不能在另一个函数内声明。"
这正是它所说的。这就是为什么它不起作用。
这就是为什么我想从专家那里了解如何调用这个函数(Deviation(Kanal))。当它依赖于函数的调用时(双 信封(...))。
更新:该问题已得到部分解决。为什么要在添加处加一条__破折号线? 把它去掉。
所有文件中的所有标识符都应该是严格相同的,不要对年龄有任何幻想 :-)
好吧,大家都按照说明这么做了,我也这么做了,现在我把它拆下来看看。总而言之,它起作用了,它返回了18。 谢谢你,我会继续试验的。
所有,如你所说,"垃圾代码 "是根据基本的语言帮助写的。https://www.mql5.com/ru/docs/basis/function/call
它还说:"一个函数不能在另一个函数内声明。"
这正是它所说的。这就是为什么它不起作用。
这就是为什么我想从专家那里了解如何调用这个函数(Deviation(Kanal))。当它取决于指标函数的调用时(双 信封(...))。
更新:该问题已得到部分解决。你已经调用了偏差(Kanal)函数并将其返回的值传递给了包络(........) 函数。
而在Envelopes(........) 函数本身中,你声明了最后一个参数,它将采用这个值
是这样的
向大家问好。生活中的好运和工作中的利润。
我呼吁帮助(出乎意料,呵呵:))。
...................................................
而这正是我被卡住的地方:)。用什么来代替GetProfitOpenPosInPoint(Symbol(),OP_BUY,Magic)。The_failure_level(Symbol(),OP_BUY,Magic)应该被使用,但如何得到它呢?
如果你能帮助我,我将非常高兴。
Z.U.如果你给建议,我求你了,记住我还很嫩,不要懒得给我多一点细节,你知道,比如如果。FOREST THERE,别忘了指出方向<------ ||------>。
谢谢你的关注 :)。
早上好,下午,晚上,晚上(下划线)。
我无意冒犯,但我要问你一个问题。我一直在思考我的混乱....我应该需要最后的OP_BUY && OP_SELL,他的Magik || ticket || open_price.....我说的对吗?如果我找到了最后一个订单,理论上我可以计算出从它到当前ask/bid的距离。在这里下载了几个 "平均数",我认为应该有类似的东西,如果不是完全相同的话,.....,然后才意识到我找到了我要找的东西.....。:)
如果没有人介意的话:),我将继续希望得到您的建议,至少参考一下我需要的信息来源(如果不是科瓦廖夫的 书,我3天前就开始看了)。