程序库: Expert - 页 10 1...345678910111213 新评论 Stanislav Korotky 2020.08.02 13:58 #91 不直观的是,参数数组和名称数组的返回值大小不同,因为名称数组中没有代表智能交易系统名称的空参数。 此外,我还想知道参数的真实类型,现在到处都返回 "字符串"。我不知道如何提供这种信息--正面方法:分析字符串的内容及其还原为浮点数 或整数的可能性,但如果参数存储的是 "0",则无法确定其类型。 fxsaber 2020.08.02 14:18 #92 Stanislav Korotky:不直观的是,参数数组和名称数组返回的大小不同,因为名称数组缺少一个代表智能顾问名称的空参数。 是的,这不太好。也许我们应该为 Names[] 制作一个假的 null 元素。 此外,我还想知道参数的真实类型,现在 "string"(字符串)在任何地方都会返回。我不知道如何提供这种信息--一种方法是分析字符串的内容及其与浮点数或整数的还原性,但如果参数存储的是 "0",则无法识别其类型。 我认为在库中没有必要这样做,因为还有自定义 ENUM。此外,我也没有发现有必要这样做的任务。 我正在制作自己的自动优化程序。它在那里没有用处。 Stanislav Korotky 2020.08.02 14:32 #93 fxsaber:是的,这不太好。也许你应该为 Names[] 制作一个假的 null 元素。我认为在库中没有必要,因为还有自定义 ENUM。此外,我也没有发现有必要这样做的任务。我正在制作自己的自动优化器。它在那里没有用处。 ParameterGetRange/ParameterSetRange 函数只为long 和 double类型定义,因此参数循环只需要分析和更改数字的设置。 fxsaber 2020.08.02 14:53 #94 Stanislav Korotky:ParameterGetRange/ParameterSetRange 函数仅分别为long 和 double类型定义,参数循环只需要分析和更改数字的设置。 整数类型 有 bool 和 enums。 Stanislav Korotky 2020.08.02 15:08 #95 fxsaber:整数类型 有 bool、枚举。 这很正常。不正常的是,现在所有东西都用字符串表示,无法筛选出真正的字符串。 fxsaber 2020.08.02 15:38 #96 Stanislav Korotky:这很正常。不正常的是,现在所有东西都用字符串表示,而你却无法筛选出真正的字符串。 需要优化的参数事先都是数字。所以其中肯定没有字符串。所以你可以把它当作一个过滤器。 Aleksei Beliakov 2020.09.21 17:35 #97 你好,我不知道如何在专家版上打开授权交易 这段代码在我输入输入信息后可以正常打开。 Params[0].string_value = "Experts\\Shared Projects\\luipaulo89\\experts\\PullbackEA_v2.ex5"; // 专家顾问的第一个输入参数 Params[1].type = TYPE_STRING; Params[1].string_value = "Hello World!"; Params[2].type = TYPE_INT; Params[2].integer_value = 0; // 在新图表上运行智能交易系统 if (inpFirst==1) EXPERT::Run(ChartOpen(_Symbol, _Period), Params); 如果我使用此代码 Params[0].string_value = "Experts\\Shared Projects\\luipaulo89\\experts\\PullbackEA_v2.ex5"; Params[0].string_value += "\nexpertmode=5"; // 专家顾问的第一个输入参数 Params[1].type = TYPE_STRING; Params[1].string_value = "Hello World!"; Params[2].type = TYPE_INT; Params[2].integer_value = 0; // 在新图表上运行智能交易系统 if (inpFirst==1) EXPERT::Run(ChartOpen(_Symbol, _Period), Params); 就能打开允许的交易,但不传递参数。 任务是在新图表上打开同一个智能交易系统。 input group "EA Settings" input int inpFirst = 1;//first instance; 为了只让第一个智能交易系统打开新图表,我将 0 传递给新图表,但不幸的是,在第二个变量中(允许交易时)没有传递参数(或传递错误)。 inpFirst = 0; Aleksei Beliakov 2020.09.21 18:03 #98 在 tpl 文件中,头文件的创建非常完美,但由于某些原因,它没有传递参数 <expert> name=PullbackEA_v2 path=Experts\Shared Projects\luipaulo89\experts\PullbackEA_v2.ex5 expertmode=5 <inputs> inpFirst=1 预计为 inpFirst=0 Params[1].type = TYPE_INT; Params[1].integer_value = 0; fxsaber 2020.09.22 18:43 #99 Aleksei Beliakov: 更新资料库。 测试智能顾问。 input group "EA Settings" input int inpFirst = 1;//first instance; void OnInit() {} 示例 1. #include <fxsaber\Expert.mqh> void OnStart() { MqlParam Params[3]; // 辅导员之路 Params[0].string_value = "Experts\\Test6.ex5"; Params[0].string_value += "\nexpertmode=5"; // 输入组 "EA 设置" Params[1].type = TYPE_STRING; Params[1].string_value = NULL; // 输入 int inpFirst Params[2].type = TYPE_INT; Params[2].integer_value = 123; EXPERT::Run(ChartOpen(_Symbol, PERIOD_CURRENT), Params); // 将无法在自己的图表上正确运行智能交易系统 } #include <fxsaber\Expert.mqh> void OnStart() { MqlParam Params[3]; // 辅导员之路 Params[0].string_value = "Experts\\Test6.ex5"; Params[0].string_value += "\nexpertmode=5"; // 输入组 "EA 设置" Params[1].type = TYPE_STRING; Params[1].string_value = NULL; EXPERT::AddInputName(Params[1], " "); // Probl. // 输入 int inpFirst Params[2].type = TYPE_INT; Params[2].integer_value = 123; EXPERT::AddInputName(Params[2], "inpFirst"); EXPERT::Run(0, Params); // 将能在自己的图表上正确运行 Expert Advisor。 } Aleksei Beliakov 2020.09.22 19:00 #100 谢谢你们,你们一如既往是最棒的 1...345678910111213 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
不直观的是,参数数组和名称数组的返回值大小不同,因为名称数组中没有代表智能交易系统名称的空参数。
此外,我还想知道参数的真实类型,现在到处都返回 "字符串"。我不知道如何提供这种信息--正面方法:分析字符串的内容及其还原为浮点数 或整数的可能性,但如果参数存储的是 "0",则无法确定其类型。
不直观的是,参数数组和名称数组返回的大小不同,因为名称数组缺少一个代表智能顾问名称的空参数。
是的,这不太好。也许我们应该为 Names[] 制作一个假的 null 元素。
此外,我还想知道参数的真实类型,现在 "string"(字符串)在任何地方都会返回。我不知道如何提供这种信息--一种方法是分析字符串的内容及其与浮点数或整数的还原性,但如果参数存储的是 "0",则无法识别其类型。
我认为在库中没有必要这样做,因为还有自定义 ENUM。此外,我也没有发现有必要这样做的任务。
我正在制作自己的自动优化程序。它在那里没有用处。
是的,这不太好。也许你应该为 Names[] 制作一个假的 null 元素。
我认为在库中没有必要,因为还有自定义 ENUM。此外,我也没有发现有必要这样做的任务。
我正在制作自己的自动优化器。它在那里没有用处。
ParameterGetRange/ParameterSetRange 函数只为long 和 double类型定义,因此参数循环只需要分析和更改数字的设置。
ParameterGetRange/ParameterSetRange 函数仅分别为long 和 double类型定义,参数循环只需要分析和更改数字的设置。
整数类型 有 bool 和 enums。
整数类型 有 bool、枚举。
这很正常。不正常的是,现在所有东西都用字符串表示,无法筛选出真正的字符串。
这很正常。不正常的是,现在所有东西都用字符串表示,而你却无法筛选出真正的字符串。
需要优化的参数事先都是数字。所以其中肯定没有字符串。所以你可以把它当作一个过滤器。
你好,我不知道如何在专家版上打开授权交易
这段代码在我输入输入信息后可以正常打开。
如果我使用此代码
就能打开允许的交易,但不传递参数。
任务是在新图表上打开同一个智能交易系统。
为了只让第一个智能交易系统打开新图表,我将 0 传递给新图表,但不幸的是,在第二个变量中(允许交易时)没有传递参数(或传递错误)。
在 tpl 文件中,头文件的创建非常完美,但由于某些原因,它没有传递参数
预计为 inpFirst=0
更新资料库。
测试智能顾问。
示例 1.