新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 1904 1...189718981899190019011902190319041905190619071908190919101911...1953 新评论 Alekseu Fedotov 2022.02.16 08:31 #19031 DanilaMactep 打开的图表 翻译成n1 期。我怎样才能重写代码,使脚本将指定名称的模板应用于所有打开的图表? 在这里,这将帮助你。 ChartApplyTemplate(0,"..........tpl")) DanilaMactep 2022.02.16 09:54 #19032 Alekseu Fedotov #:在这里,这将帮助你。 对于一个特别有 "天赋 "的人来说,你能不能解释一下这个功能? ChartApplyTemplate() 脚本中哪里应该被替换? [删除] 2022.02.16 10:27 #19033 DanilaMactep #: 你能不能向一个特别有 "天赋 "的人解释一下,应该在哪个地方替换脚本的功能? 这里是脚本 //+------------------------------------------------------------------+ //| ChartApplyTemplate.mq5 | //| Copyright 2022, MetaQuotes Ltd. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2022, MetaQuotes Ltd." #property link "https://www.mql5.com" #property version "1.00" //--- покажем окно входных параметров при запуске скрипта #property script_show_inputs //---- sinput string Template = "ADX"; // Имя шаблона(without '.tpl') //---- ENUM_TIMEFRAMES TimeFrame = PERIOD_CURRENT; // //+------------------------------------------------------------------+ //| Script program start function | //+------------------------------------------------------------------+ void OnStart() { //--- long currChart, prevChart = ChartFirst(); int i = 0, limit = 100; bool errTemplate; while(i < limit) { currChart = ChartNext(prevChart); if(TimeFrame != PERIOD_CURRENT) { ChartSetSymbolPeriod(prevChart, ChartSymbol(prevChart), TimeFrame); } errTemplate = ChartApplyTemplate(prevChart, Template + ".tpl"); if(!errTemplate) { Print("Error ", ChartSymbol(prevChart), "-> ", GetLastError()); } if(currChart < 0) break; Print(i, ChartSymbol(currChart), " ID =", currChart); prevChart = currChart; i++; } } //+------------------------------------------------------------------+ 附加的文件: ChartApplyTemplate.mq5 4 kb DanilaMactep 2022.02.16 13:07 #19034 137 Matrix #:这里是脚本 非常感谢你的代码--我明天会把它添加到元编辑器中,今天已经很晚了。 DanilaMactep 2022.02.17 07:22 #19035 137 Matrix #:这里是脚本 下午好。像这样把代码转移到脚本中。 //+------------------------------------------------------------------+//+------------------------------------------------------------------+ //| ChartApplyTemplate.mq5 | //| Copyright 2022, MetaQuotes Ltd. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "АВТОР - КОПИЯ 1" #property link "https://vk.com/danila_mastep" #property version "1.00" //--- покажем окно входных параметров при запуске скрипта #property script_show_inputs //---- sinput string Template = "default"; // Имя шаблона(without '.tpl') //---- ENUM_TIMEFRAMES TimeFrame = PERIOD_CURRENT; // //+------------------------------------------------------------------+ //| Script program start function | //+------------------------------------------------------------------+ void OnStart() { //--- long currChart, prevChart = ChartFirst(); int i = 0, limit = 100; bool errTemplate; while(i < limit) { currChart = ChartNext(prevChart); if(TimeFrame != PERIOD_CURRENT) { ChartSetSymbolPeriod(prevChart, ChartSymbol(prevChart), TimeFrame); } errTemplate = ChartApplyTemplate(prevChart, Template + ".tpl"); if(!errTemplate) { Print("Error ", ChartSymbol(prevChart), "-> ", GetLastError()); } if(currChart < 0) break; Print(i, ChartSymbol(currChart), " ID =", currChart); prevChart = currChart; i++; } } //+------------------------------------------------------------------+ 当我把它拖放到图表上并在输入参数中输入模板名称时,终端停止响应,什么也没有发生。模板没有应用于所有图表 :-( 我复制的代码不正确,还是有其他问题?我仔细检查了模板的名称 - 我只输入名称,没有点tpl [删除] 2022.02.17 07:45 #19036 DanilaMactep #: 你好。我把代码放在脚本中是这样的。当我把它拖放到图表上并在输入参数中输入模板名称时,终端停止响应,什么也没有发生。模板没有应用于所有图表 :-( 我复制的代码不正确,还是有其他问题?我仔细检查了模板的名称 - 我只输入名称,没有点tpl 输入名称,这个模板将在所有打开的图表上打开。 例如--以模板 为名保存模板,并在脚本设置中写入模板 Alexey Viktorov 2022.02.17 08:29 #19037 DanilaMactep #: 下午好。我已经把代码转移到脚本中,就像这样。当我把它拖放到图表上并在输入参数中输入模板名称时,终端停止响应,什么也没有发生。模板没有应用于所有图表 :-( 我复制的代码不正确,还是有其他问题?我仔细检查了模板的名称 - 我只输入名称,没有点tpl 你所要做的就是在你的代码中添加一行。或者甚至用一行代替两行 string tplName = "name.tpl"; /********************Script program start function*******************/ void OnStart() { long prevChart = ChartFirst(); while(prevChart >= 0) { //if(ChartPeriod(prevChart) != PERIOD_H1) // ChartSetSymbolPeriod(prevChart, ChartSymbol(prevChart), PERIOD_H1); ChartApplyTemplate(prevChart, tplName); prevChart = ChartNext(prevChart); } }/******************************************************************/ /*****************************End program****************************/ novichok2018 2022.02.17 09:01 #19038 下午好!情况如下:我在终端打开了两个相同的图表。一个机器人安装在一个,另一个安装在另一个。我怎样才能在代码中写出(如果有可能的话),机器人1所开的仓位也在机器人2所在的图表中开仓?或者更好的是,如何使机器人-1只在机器人-2的图表上开仓?我的 "知识 "是不够的。 我的 "知识 "是不够的。 谢谢你。 Tretyakov Rostyslav 2022.02.17 09:27 #19039 novichok2018 #:下午好!情况如下:我在终端打开了两个相同的图表。一个机器人安装在一个,另一个安装在另一个。我怎样才能在代码中写出(如果有可能的话),机器人1所开的仓位也在机器人2所在的图表中开仓?或者更好的是,如何使机器人-1只在机器人-2的图表上开仓?我的 "知识 "是不够的。我的 "知识 "是不够的。 谢谢你。 如果图表是相同的,订单在两个图表上都是可见的。订单是按符号开的,而不是按图表开的。 DanilaMactep 2022.02.17 09:40 #19040 Alexey Viktorov #:你所要做的就是在你的代码中添加一行。或者甚至用一行代替两行 Alexey,非常感谢你的提示--增加了几行,一切都正常了,唯一的问题是--现在即使手动选择默认模板,终端也会挂起XD))))))))),看来是时候清理电脑了,但也有故障的迹象( 1...189718981899190019011902190319041905190619071908190919101911...1953 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
在这里,这将帮助你。
在这里,这将帮助你。
ChartApplyTemplate()
脚本中哪里应该被替换?你能不能向一个特别有 "天赋 "的人解释一下,应该在哪个地方替换脚本的功能?
这里是脚本
这里是脚本
非常感谢你的代码--我明天会把它添加到元编辑器中,今天已经很晚了。
这里是脚本
当我把它拖放到图表上并在输入参数中输入模板名称时,终端停止响应,什么也没有发生。模板没有应用于所有图表 :-( 我复制的代码不正确,还是有其他问题?我仔细检查了模板的名称 - 我只输入名称,没有点tpl
你好。我把代码放在脚本中是这样的。当我把它拖放到图表上并在输入参数中输入模板名称时,终端停止响应,什么也没有发生。模板没有应用于所有图表 :-( 我复制的代码不正确,还是有其他问题?我仔细检查了模板的名称 - 我只输入名称,没有点tpl
输入名称,这个模板将在所有打开的图表上打开。
例如--以模板 为名保存模板,并在脚本设置中写入模板
下午好。我已经把代码转移到脚本中,就像这样。当我把它拖放到图表上并在输入参数中输入模板名称时,终端停止响应,什么也没有发生。模板没有应用于所有图表 :-( 我复制的代码不正确,还是有其他问题?我仔细检查了模板的名称 - 我只输入名称,没有点tpl
你所要做的就是在你的代码中添加一行。或者甚至用一行代替两行
下午好!情况如下:我在终端打开了两个相同的图表。一个机器人安装在一个,另一个安装在另一个。我怎样才能在代码中写出(如果有可能的话),机器人1所开的仓位也在机器人2所在的图表中开仓?或者更好的是,如何使机器人-1只在机器人-2的图表上开仓?我的 "知识 "是不够的。
我的 "知识 "是不够的。 谢谢你。
下午好!情况如下:我在终端打开了两个相同的图表。一个机器人安装在一个,另一个安装在另一个。我怎样才能在代码中写出(如果有可能的话),机器人1所开的仓位也在机器人2所在的图表中开仓?或者更好的是,如何使机器人-1只在机器人-2的图表上开仓?我的 "知识 "是不够的。
我的 "知识 "是不够的。 谢谢你。
你所要做的就是在你的代码中添加一行。或者甚至用一行代替两行