新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 1912 1...190519061907190819091910191119121913191419151916191719181919...1953 新评论 [删除] 2022.02.20 08:08 #19111 DanilaMactep #: 如果我没有记错的话,它就是这样开始的,而且在我的记忆中它并不奏效;-) 我已经给你看过了--我不知道为什么它对你不起作用--它在mt4和mt5上对我都有效。 \\\\\\\\\\\\\\\\\\\\ 你也可以改变图表的颜色 //+------------------------------------------------------------------+ //| CHART_COLOR_BACKGROUND.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 color Backclr = clrWhite; // Цвет фона графика. sinput color Foreclr = clrBlack; // Цвет осей, шкалы и строки OHLC графика. //+------------------------------------------------------------------+ //| Script program start function | //+------------------------------------------------------------------+ void OnStart() { //--- //--- переменные для идентификаторов графиков long currChart, prevChart = ChartFirst(); int i = 0, limit = 100; bool errTemplate; Print("ChartFirst = ", ChartSymbol(prevChart), " ID = ", prevChart); while(i < limit) // у нас наверняка не больше 100 открытых графиков { currChart = ChartNext(prevChart); // на основании предыдущего получим новый график errTemplate = ChartBackColorSet(Backclr, prevChart); errTemplate = ChartForeColorSet(Foreclr, prevChart); if(errTemplate) { Print("Error ", ChartSymbol(prevChart), "-> ", GetLastError()); } if(currChart < 0) break; // достигли конца списка графиков Print(i, ChartSymbol(currChart), " ID =", currChart); prevChart = currChart; // запомним идентификатор текущего графика для ChartNext() i++;// не забудем увеличить счетчик } } //+------------------------------------------------------------------+ //| Функция устанавливает цвет фона графика. | //+------------------------------------------------------------------+ bool ChartBackColorSet(const color clr, const long chart_ID = 0) { //--- сбросим значение ошибки ResetLastError(); //--- установим цвет фона графика if(!ChartSetInteger(chart_ID, CHART_COLOR_BACKGROUND, clr)) { //--- выведем сообщение об ошибке в журнал "Эксперты" Print(__FUNCTION__ + ", Error Code = ", GetLastError()); return(false); } //--- успешное выполнение return(true); } //+------------------------------------------------------------------+ //| Функция устанавливает цвет осей, шкалы и строки OHLC графика. | //+------------------------------------------------------------------+ bool ChartForeColorSet(const color clr, const long chart_ID = 0) { //--- сбросим значение ошибки ResetLastError(); //--- установим цвет осей, шкалы и строки OHLC графика if(!ChartSetInteger(chart_ID, CHART_COLOR_FOREGROUND, clr)) { //--- выведем сообщение об ошибке в журнал "Эксперты" Print(__FUNCTION__ + ", Error Code = ", GetLastError()); return(false); } //--- успешное выполнение return(true); } //+------------------------------------------------------------------+ DanilaMactep 2022.02.20 08:15 #19112 137 Matrix #:我已经给你看过了--我不知道为什么它对你不起作用--它在mt4和mt5上对我都有效。\\\\\\\\\\\\\\\\\\\\这里有另一种改变图表颜色的方法。 这只是一种不可避免的不可抗力,它只是一个中风--我可能看不到一些东西,仅此而已。但非常感谢你的帮助。 [删除] 2022.02.20 08:24 #19113 DanilaMactep #:这只是一种不可抗力--我中风的后遗症--我可能看不到一些东西,就是这样。但非常感谢你的帮助。 你不需要在代码中添加一个.tpl,它已经为你做了。 你只需要输入模板的名称。 Template + ".tpl" \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ sinput string Template = "ADX"; // Имя шаблона(without '.tpl') errTemplate = ChartApplyTemplate(prevChart, Template + ".tpl"); if(!errTemplate) { Print("Error ", ChartSymbol(prevChart), "-> ", GetLastError()); } DanilaMactep 2022.02.20 08:36 #19114 137 Matrix #:你不需要在代码中添加(.tpl),它已经为你规定好了。你只需要在.NET中输入模板的名称。\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ 我想我已经弄明白了--下次请给我使用说明,因为没有半升)))))),你不会明白的。;-)非常感谢你的帮助 :-) Alexey Viktorov 2022.02.20 09:24 #19115 137 Matrix #:我已经给你看过了--我不知道为什么它对你不起作用--它在mt4和mt5上对我都有效。\\\\\\\\\\\\\\\\\\\\你也可以改变图表的颜色 萨沙,你想不出有什么比使用文档中的例子或tumblr的例子更糟糕。而且你也在某处丢失了强制终止while循环的标志。总而言之......无话可说。 Alexey Viktorov 2022.02.20 09:32 #19116 DanilaMactep #: 这个选项完全没有作用--我在图表上释放脚本,什么也没有发生。 对不起,失去了逻辑上的否定符号!。 void OnStart() { long prevChart = ChartFirst(); while(prevChart >= 0 && !IsStopped()) { //if(ChartPeriod(prevChart) != PERIOD_H1) ChartSetSymbolPeriod(prevChart, ChartSymbol(prevChart), PERIOD_H1);// или PERIOD_D1 ChartApplyTemplate(prevChart, tplName); prevChart = ChartNext(prevChart); } }/******************************************************************/ /*****************************End program****************************/ [删除] 2022.02.20 10:03 #19117 Alexey Viktorov #: 萨沙,你想不出有什么比使用文档中的例子或tumblr的例子更糟糕的了。哦,在某处他失去了强制终止while循环的标志。嗯......没话说。 例如,我的任务是找到一个满足我的任务的函数,我搜索它,如果它符合我的任务--不管它有多少行--我就使用它。 最主要的是,该功能以我想要的方式工作。 \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ 我这样做是为了自我发展,没有别的,纯粹是为了自己。我不认为我必须给任何人写什么。 Alexey Viktorov 2022.02.20 11:15 #19118 137 Matrix #:例如,我的任务是找到一个满足我的任务的函数,我搜索它,如果它符合我的任务--不管它有多少行--我就使用它。最主要的是,该功能以我想要的方式工作。\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\我这样做是为了自我发展,没有别的,纯粹是为了自己。我不认为我在给任何人写什么。 当你给别人提供建议时,这不是为你自己。 尤其是这样的错误......什么是PERIOD_CURRENT,条件中的结果是什么? if(TimeFrame != PERIOD_CURRENT) [删除] 2022.02.20 11:21 #19119 Alexey Viktorov #:当你给别人提供建议时,并不是为了自己。尤其是这样的错误......什么是PERIOD_CURRENT,条件中的结果是什么? 我不知道,这很有效! 它通过设置中恢复的周期来切换图表。 \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ 当有人提出问题时,我试图站在他的立场上,达到所需的结果。 如果你没有注意到,我已经尽我所能完成了这项任务,并张贴了完成的脚本--它可能不正确--但它达到了目的。 Alekseu Fedotov 2022.02.20 11:46 #19120 Alexey Viktorov #:当你给别人提供建议时,并不是为了自己。尤其是这样的错误......什么是PERIOD_CURRENT,条件中的结果是什么? if(TimeFrame != PERIOD_CURRENT) 我在这里没有看到任何错误。 1...190519061907190819091910191119121913191419151916191719181919...1953 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
如果我没有记错的话,它就是这样开始的,而且在我的记忆中它并不奏效;-)
我已经给你看过了--我不知道为什么它对你不起作用--它在mt4和mt5上对我都有效。
\\\\\\\\\\\\\\\\\\\\
你也可以改变图表的颜色
我已经给你看过了--我不知道为什么它对你不起作用--它在mt4和mt5上对我都有效。
\\\\\\\\\\\\\\\\\\\\
这里有另一种改变图表颜色的方法。
这只是一种不可避免的不可抗力,它只是一个中风--我可能看不到一些东西,仅此而已。但非常感谢你的帮助。
这只是一种不可抗力--我中风的后遗症--我可能看不到一些东西,就是这样。但非常感谢你的帮助。
你不需要在代码中添加一个.tpl,它已经为你做了。
你只需要输入模板的名称。
Template + ".tpl"
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
你不需要在代码中添加(.tpl),它已经为你规定好了。
你只需要在.NET中输入模板的名称。
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
我已经给你看过了--我不知道为什么它对你不起作用--它在mt4和mt5上对我都有效。
\\\\\\\\\\\\\\\\\\\\
你也可以改变图表的颜色
这个选项完全没有作用--我在图表上释放脚本,什么也没有发生。
对不起,失去了逻辑上的否定符号!。
萨沙,你想不出有什么比使用文档中的例子或tumblr的例子更糟糕的了。哦,在某处他失去了强制终止while循环的标志。嗯......没话说。
例如,我的任务是找到一个满足我的任务的函数,我搜索它,如果它符合我的任务--不管它有多少行--我就使用它。
最主要的是,该功能以我想要的方式工作。
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
我这样做是为了自我发展,没有别的,纯粹是为了自己。我不认为我必须给任何人写什么。
例如,我的任务是找到一个满足我的任务的函数,我搜索它,如果它符合我的任务--不管它有多少行--我就使用它。
最主要的是,该功能以我想要的方式工作。
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
我这样做是为了自我发展,没有别的,纯粹是为了自己。我不认为我在给任何人写什么。
当你给别人提供建议时,这不是为你自己。
尤其是这样的错误......什么是PERIOD_CURRENT,条件中的结果是什么?
当你给别人提供建议时,并不是为了自己。
尤其是这样的错误......什么是PERIOD_CURRENT,条件中的结果是什么?
我不知道,这很有效!
它通过设置中恢复的周期来切换图表。
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
当有人提出问题时,我试图站在他的立场上,达到所需的结果。
如果你没有注意到,我已经尽我所能完成了这项任务,并张贴了完成的脚本--它可能不正确--但它达到了目的。
当你给别人提供建议时,并不是为了自己。
尤其是这样的错误......什么是PERIOD_CURRENT,条件中的结果是什么?
我在这里没有看到任何错误。