← К каталогу
Исходный код · ID 1350

tmax3 hzl aa fmtf mms+tt w nrp.mq5

Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

Индикатор TMAx3 AA MTF MMS+TT w NRP рассчитывает тройную скользящую среднюю (Triangular Moving Average) на основе данных трёх таймфреймов и отображает результат на графике текущего таймфрейма. Использует ATR для построения верхней и нижней полос канала, а также среднюю линию. Поддерживает режимы интерполяции для сглаживания линий между барами и настройку перерисовки.

Индикатор отображает горизонтальные линии и ценовые метки, а также может рисовать стрелки сигналов на покупку и продажу по различным условиям: разворот тренда, смена направления линий, закрытие свечи за пределы полос. Настраиваются таймфреймы расчёта, периоды средних, тип цены, коэффициент ATR и режимы отображения.

При формировании сигнала стрелки индикатор может отправлять оповещения в виде сообщений, звукового файла, email или push-уведомления на мобильное устройство. Звуковой файл и условия оповещений задаются в настройках.

Настройки программы

НастройкаОписание
History Глубина истории — Количество баров, отображаемых на графике и используемых для расчёта начальных точек индикатора
false; // (RePaintMTF) Без перерисовки по MTF — При включении корректирует расчёт по внешним таймфреймам, чтобы избежать повторного перерисовывания при смене бара
MTF1 Таймфрейм 1 — Первый таймфрейм, используемый для расчёта тройной скользящей средней
MTF2 Таймфрейм 2 — Второй таймфрейм, используемый для расчёта тройной скользящей средней
MTF3 Таймфрейм 3 — Третий таймфрейм, используемый для расчёта тройной скользящей средней
intNO; //true; (Interpolate) Интерполяция — Тип сглаживания значений между барами: без интерполяции, линейная или квадратичная
TMA RePaint or Not (RePaint) Перерисовка TMA — При включении учитывает данные прошлых баров при расчёте скользящей средней, что может приводить к перерисовке
24; (Length1) Длина 1 — Период первой скользящей средней, используемой в расчёте тройной средней
96; (Length2) Длина 2 — Период второй скользящей средней, используемой в расчёте тройной средней
56 (Length3) Длина 3 — Период третьей скользящей средней, используемой в расчёте тройной средней
Price Тип цены — Тип цены, используемый для расчёта скользящих средних (Close, Open, High, Low и др.)
ATR ATR — Период индикатора Average True Range, используемый для расчёта ширины полос канала
3.333; // 0.1454, 0.236, 0.382, 0.5, 0.618, 0.786, 1.0, 1.272, 1.414, 1.618, 2.058, 2.618, 3.32, 4.2 (ATRKoef) Коэффициент ATR — Множитель ATR, определяющий расстояние верхней и нижней полос от средней линии
CloseToBands Близость к полосам — Отображение текстовой метки расстояния текущей цены до верхней и нижней полос
ChannelWidth Ширина канала — Отображение метки ширины канала или расстояния до средней линии вместо отдельных полос
LabelsSize Размер меток — Размер шрифта текстовых меток, отображаемых на графике
TrendOCLH; //AngleTMA; //ChangeCOLOR; (CalcArrows) Расчёт стрелок — Режим расчёта стрелок сигналов: выключено, по тренду, по смене цвета, по закрытию в полосах или все режимы
/ (ShowArrows) Отображение стрелок — Положение стрелок относительно полос: скрыть, внутри канала, по центру или снаружи
На каком баре рисовать Стрелку: =0 - рисовать на текущем (до закрытия - может исчезнуть) (ARROWBAR) На каком баре рисовать Стрелку: =0 - рисовать на текущем (до закрытия - может исчезнуть) — Номер бара, на котором отрисовываются стрелки сигналов (0 — текущий бар)
"news.wav"; //"expert.wav"; // //"stops.wav" // (SoundFile) Звуковой файл — Имя звукового файла для воспроизведения при поступлении сигнала
На каком баре сигналить.... (SIGNALBAR) На каком баре сигналить.... — Номер бара, на котором генерируются оповещения о сигналах
PriceLabels; // (ShowLabels) Отображение линий — Режим отображения вспомогательных линий и меток: скрыть, ценовые метки или горизонтальные линии
3; (LBShift) Сдвиг меток — Временной сдвиг линий и меток в единицах текущего периода графика
Получить полный код

Поиск по коду файла

#property description "Idea of Mamsya:  averaged TMA from 3 TimeFrames.   If RePaint=false:  TMA no repaints!!!"   ///The indicator strongly repaints!!!"  //"Индикатор злостно перерисовывается!!!"
#property description " "
#property description "Отличие Triangular Moving Average от других скользящих средних в том," 
#property description "что ТМА берет в расчет не простые MA, а дважды сглаженные, что, с одной стороны," 
#property description "позволяет более четко определять движение рынка, но, с другой стороны, делает индикатор"
#property description "менее чувствительным."
#property description " "   ///* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *"
#property description "Почта:  t*******e*@mail.ru" 
#property version  "4.05"  //из "3.69"
#property indicator_chart_window  ///separate_window
#property indicator_buffers 7

#property indicator_color1  clrCornflowerBlue  //clrTeal  //clrDarkSlateBlue  
#property indicator_color2  clrCornflowerBlue  //clrTeal  //clrDarkSlateBlue 
#property indicator_color3  clrGold  //clrDarkSlateBlue  //clrDimGray  //  //Gray
#property indicator_color4  clrLightCyan  //clrMediumSeaGreen  //clrLime
#property indicator_color5  clrMagenta  //clrOrangeRed  //clrRed

#property indicator_width1  2
#property indicator_width2  2
#property indicator_width3  2
#property indicator_width4  2  
#property indicator_width5  2  

#property indicator_style1  STYLE_DOT
#property indicator_style2  STYLE_DOT
#property indicator_style3  STYLE_DASH

enum Iterpolation { intNO,/*No interpolation*/  intLinear,/*Linear Interpolation*/  intQuad/*Quadratic Interpolation*/ };
enum calcARR { ArrowsOFF, TrendOCLH, ChangeCOLOR, CloseHILO, AllArrows };  //AngleTMA
enum showARR { HideArrows, aINSIDE, aCENTER, aOUTSIDE };  //enum showAR { aDoNotCALC, HideArrows, aOnCHART, aOnINDIK };  
enum showHZL { LabelsOFF, PriceLabels, HorizontLines };

extern int              History  =  2345;
extern bool          RePaintMTF  =  true;  //false;  //
extern ENUM_TIMEFRAMES     MTF1  =  PERIOD_CURRENT;
extern ENUM_TIMEFRAMES     MTF2  =  PERIOD_M15;
extern ENUM_TIMEFRAMES     MTF3  =  PERIOD_H1;
extern Iterpolation Interpolate  =  intQuad;  //intNO;  //true;         

extern bool             RePaint  =  true;  // TMA RePaint or Not
extern int              Length1  =  21;  //24;  
extern int              Length2  =  18;  //96;   
extern int              Length3  =  15;  //56
extern ENUM_APPLIED_PRICE Price  =  PRICE_CLOSE;
extern int                  ATR  =  144;
extern double           ATRKoef  =  0.999;  //3.333;    // 0.1454, 0.236, 0.382, 0.5, 0.618, 0.786, 1.0, 1.272, 1.414, 1.618, 2.058, 2.618, 3.32, 4.236, 5.35, 6.853....
extern bool        CloseToBands  =  true;
extern bool        ChannelWidth  =  true;
extern int           LabelsSize  =  10;

extern calcARR       CalcArrows  =  AllArrows;  //TrendOCLH;  //AngleTMA;  //ChangeCOLOR;
extern showARR       ShowArrows  =  aOUTSIDE;  ///    
extern int             ARROWBAR  =  0;   //На каком баре рисовать Стрелку: =0 - рисовать на текущем (до закрытия - может исчезнуть)       

extern color            ArrowUP  =  clrLightCyan,  //Aqua,   // //Blue, //Aqua,    //White,   //DarkTurquoise,  //LimeGreen,  //FireBrick,   //,   // 
                        ArrowDN  =  clrMagenta;    //Gold;   //   //Gold;    //Red;   //HotPink;  //Orange;   //SlateBlue;   //DodgerBlue;   //;   //Lavender;  //
extern int               ArrGap  =  3,    //Дистанция от High/Low свечи    
                       ArrCodUP  =  233,  //241,  //217,  //147,  116, 117, 234,   //226
                       ArrCodDN  =  234,  //242,  //218,   //181,  233,   //225
                        ArrSize  =  1;    

extern string         SoundFile  =  "alert2.wav";   //"news.wav";  //"expert.wav";  //   //"stops.wav"   //
extern int            SIGNALBAR  =  1;   //На каком баре сигналить....
extern bool       AlertsMessage  =  true,   //false,    
                    AlertsSound  =  true,   //false,
                    AlertsEmail  =  false,
                   AlertsMobile  =  false;   

extern showHZL       ShowLabels  =  HorizontLines;  //PriceLabels;  //
extern int              LBShift  =  12;  //3;
extern color           ColorMID  =  clrGold,
                        ColorHI  =  clrCornflowerBlue,  //clrRed,
                        ColorLO  =  clrCornflowerBlue;  //clrBlue;
extern ENUM_LINE_STYLE StyleMID  =  STYLE_DOT,
                        StyleHL  =  STYLE_DOT;
extern int              SizeMID  =  0,
                         SizeHL  =  0;                                     

double BandLO[], BandHI[], MIDTMA[], TMAUP[], TMADN[], ARRUP[], ARRDN[];  
int mtf1, mtf2, mtf3, TFK, atrTF, Len1, Len2, Len3, Atr1;
int MAX, ARB, SGB;  datetime TimeBar=0, TimeGraf=0;  string PREF;

int init()
{
      // код доступен только после оплаты
   }

int deinit() { ALL_OBJ_DELETE();  Comment("");  return (0); }  

void ALL_OBJ_DELETE()
{
   string name;
   for (int s=ObjectsTotal()-1; s>=0; s--) {
        name=ObjectName(s);
        if (StringSubstr(name,0,StringLen(PREF))==PREF) ObjectDelete(name); }
}

int start()
{
      // код доступен только после оплаты
   }
   int i, tf1, tf2, tf3, atf, CountedBars=IndicatorCounted();   
   if (CountedBars<0) return(-1);       //Стандарт+Tankk-Вариант!!!
   if (CountedBars>0) CountedBars--;
   int limit=fmin(Bars-CountedBars,Bars-3-MAX);  //+MAX*10*TFK
   if (History>MAX) limit=fmin(History+MAX,Bars-3-MAX);   //limit+=MAX;   Comment(limit);

   for (i=0; i<7; i++) { 
        SetIndexEmptyValue(i,0.0);                         //--- значение 0 отображаться не будет 
        if (History>MAX)  SetIndexDrawBegin(i,Bars-History); //--- пропуск отрисовки первых баров
        if (History<=MAX) SetIndexDrawBegin(i,MAX*3); }        //--- пропуск отрисовки первых баров   

   for (i=limit; i>=0; i--)   //if (i<Bars-1)
    {
     tf1 = (RePaintMTF) ? iBarShift(NULL,mtf1,Time[i],false) : i;  
     tf2 = (RePaintMTF) ? iBarShift(NULL,mtf2,Time[i],false) : i;  
     tf3 = (RePaintMTF) ? iBarShift(NULL,

Показано первые 50% кода (символов: 13049)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
1 304,90₽ ≈ $15.95