//+--где индикатор если indicator_chart_window то на график у нас в отдельном окне#property indicator_separate_window//+--уровни это сколько масивов Buf0[],Buf1[],Buf2[]; у нас каждый масив это линия#property indicator_buffers3//+--сколько линий и какого цвета#property indicator_color1 Green
#property indicator_color2 Red
#property indicator_color3 Blue
//+-- ширина линии#property indicator_width12#property indicator_width23#property indicator_width33//+--уровни#property indicator_level130//+--уровень 1#property indicator_level250//+--уровень 2#property indicator_levelstyle2//+--тип линии уровня 2 - это пунктир#property indicator_levelcolor Black //+-- цвет линии уровня//+-- то что будет в окне "входные параметры" externint RSIPERIOD=5;
externdouble KOEFF1=1.4;
externdouble KOEFF2=2;
//+-- описываем какие у нас массивы (их три) и перменные (в даном случае параметры РСАЙ (D10,D11,D12;) это переменная double Buf0[],Buf1[],Buf2[];
double D10,D11,D12;
//+-- Блок init ПРЕДПОЛОДЖИТЕЛЬНО описательный int init()
{
IndicatorDigits(0); //+--формат точности (количество знаков после десятичной точки) для визуализации значений индикатора в окне индикатора (цифры rsi 7 или 7,23)string short_name="KAVRSI"; //+-- задаем 2 строчками короткое имя
IndicatorShortName("KAVRSI"); //+-- задаем 2 строчками короткое имя
D10=RSIPERIOD;D11=D10*KOEFF1;D12=D11*KOEFF2;; //+--тут мы высчитываем переменные которые описали как масивы вышеSetIndexBuffer(0,Buf0); //+-- описываем 1 массив Buf0[] первый это нулевой второй это первый и т.д.
SetIndexStyle (0,DRAW_LINE); //+-- говорим что этот масив хотим представить в виде линии 0 это порядковый номер линии соответствует номеру масива SetIndexBuffer(1,Buf1); //+-- описываем 2 массив Buf1[]
SetIndexStyle (1,DRAW_LINE); //+-- 1 это порядковый номер линии соответствует номеру масива Buf1[]SetIndexBuffer(2,Buf2);
SetIndexStyle (2,DRAW_LINE);
return(0);
}
//+-- Блок start сама математика и ОТРИСОВКА int start()
{
if(Bars<=RSIPERIOD)return(0); //+-- начинаем задавать условия если количество баров меньше расчета (баров 9 а мы считаем по 14) то выдаем 0int ExtCountedBars=IndicatorCounted(); //+--Возвращает количество баров, не измененных после последнего вызова индикатора.//---- последний посчитанный бар будет пересчитанif (ExtCountedBars>0) ExtCountedBars--;
if (ExtCountedBars<0) return(-1);
//+-- for(int для int это переменна в нашем случае видимо int ExtCountedBars=IndicatorCounted()//+-- и тут мы задаем параметр i - его свойства и описание на основе пересчитаных баров //+-- в нашем случае НЕТ НЕ ПЕРЕСЧИТАННЫХ - считаеться и последний! for(int i=0;i<Bars-RSIPERIOD;i++)
{
Buf0[i] = iRSI(NULL,0,D10,0,i);//+-- говорим что 1 массив это рсай с параметром D10//+-- Пишем в коде что бы ВМЕСТО красной и синей линией RSI2 и RSI3 была одна линия - //+-- чтобы вместо красной и синей была одна - мы получаем среднее значение этих линий, т.е.
Buf1[i] = (iRSI(NULL,0,D11,0,i)+iRSI(NULL,0,D12,0,i))/2; //+-- и у этой линии, по умолчанию, красный цвет //+-- когда выполняется условиеif(iRSI(NULL,0,D11,0,i)>iRSI(NULL,0,D12,0,i))
//+-- то мы не меняем цвет линии, т.к. в МТ4 это нельзя сделать,//+-- а берем и накладываем сверху другую линию с другим цветом
Buf2[i] = Buf1[i];
else
Buf2[i] = EMPTY_VALUE; //+-- добавляем else Buf2[i] = EMPTY_VALUE; EMPTY_VALUE - Пустое значение в индикаторном буфере
}
return(0);
}
马卡有些不对劲。喜欢它,谢谢你。我自己找到了一个不那么漂亮的选项,但它是有效的。
MakarFX #:
Покажи где идет обращение к GetAveragePriceManMaxOrders()
马卡尔 我还没有什么严重的事情挂在这个功能上。我只是做了一个参考,将物体可视化。可以说,这个功能是为未来服务的。
马卡尔 我还没有什么严重的事情挂在这个功能上。我只是做了一个参考,将物体可视化。这个功能可以说是为了未来。
删除
而且一切都应该工作
大家下午好。我在mt4中有这样一个任务。最初,在一天的开始,我用中期模板打开了30张不同符号的图表,在所有的图表上我都附上了指标和EA及其参数。然后我分析图表,在有信号的图表上,我从 D1移动到n1,如果n1上有信号,专家顾问就开仓,并支持它们。最后发现,图表的一部分在d1上,而另一部分在n1上。第二天一开始,我又需要所有的图表都在d1上,并且有保存参数的指标和EA。我曾试图在所有的图表都在d1的时候保存一个配置文件。我加载了配置文件,但已经切换到N1的图表仍然留在这个时间框架上。有没有一个现成的解决方案,可以将终端中所有打开的图表轻松、快速地切换到d1,并保存我的所有设置?脚本、专家顾问或其他东西?
第二个问题--如果我有30个打开的图表,我站在所有图表所在的底栏右侧,我可以一键切换到正确的图表,而不是在一个个图表中翻页?
大家下午好。我在mt4中有这样一个任务。最初,在一天的开始,我用中期模板打开了30张不同符号的图表,在所有的图表上我都附上了指标和EA及其参数。然后我分析图表,在有信号的图表上,我从 D1移动到n1,如果n1上有信号,专家顾问就开仓,并支持它们。最后发现,图表的一部分在d1上,而另一部分在n1上。第二天一开始,我又需要所有的图表都在d1上,并且有保存参数的指标和EA。我曾试图在所有的图表都在d1的时候保存一个配置文件。我加载了配置文件,但已经切换到N1的图表仍然留在这个时间框架上。有没有一个现成的解决方案,可以将终端中所有打开的图表轻松、快速地切换到d1,并保存我的所有设置?脚本、专家顾问或其他东西?
而第二个问题--如果我有30个开放的图表,我站在所有图表所在的底栏的右边,我可以通过一次点击切换到右边的图表,而不是在一个图表中翻阅。
这里有一个脚本可以帮助解决这个问题。
在第二个问题中,组合键ctrl+tab或ctrl+shift+tab会有帮助。
或者用一行代码写一个脚本
这里有一个脚本可以帮助解决这个问题。
在第二个问题中,键盘快捷键ctrl+tab或ctrl+shift+tab会有帮助。
或者用一行代码写一个脚本
这里有一个脚本可以帮助解决这个问题。
在第二个问题中,键盘快捷键ctrl+tab或ctrl+shift+tab会有帮助。
或者用一行代码写一个脚本
所有的工作都很完美--非常感谢你--现在我将节省大量的时间和精力,P/S,而搞砸了什么都没有爆发,也为转移到N1重新工作)))))))。
你好!
我想听听那些为MQL5提供建议的程序员的意见,以获取报酬!
或者,也许有人会给你一个建议!我将不胜感激!
你好!
我想听听任何程序员的意见,他们提供的建议是有偿的!
或者也许有人会推荐人。我将不胜感激!
要么是自由职业者,要么在这里提出你的问题。