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

guppy ma mtf bt.mq5

Похожие материалы по тегам

indicator previous session range + projected candles + boschoch protected for tradingview.pineTradingView · 1 общих тегов#__slope direction line.mq5MQL5 / MetaTrader 5 · 1 общих теговrange breakout @meowforex1.pineTradingView · 1 общих тегов#1.mtf_collider_h4_close_13_v18bar.mq4MQL4 / MetaTrader 4 · 1 общих тегов!mth_fasttmaline_edit3.mq4MQL4 / MetaTrader 4 · 1 общих тегов!mth_fasttmaline_edit2.mq4MQL4 / MetaTrader 4 · 1 общих тегов
Вы автор или правообладатель?

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

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

О программе

Доступна интерполяция значений между барами при смене таймфрейма, что обеспечивает более плавное отображение линий. Все настройки группируются по разделам: общие параметры, короткосрочные и долгосрочные МА, внешний вид кнопки и её поведение.

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

НастройкаОписание
TimeFrame Таймфрейм — Таймфрейм, на котором рассчитываются данные индикатора; может быть текущим или любым более высоким.
MainTermNote Заголовок основных настроек — Текстовая метка, отображаемая в группе общих параметров в окне настроек.
Average method (MaMode) Метод усреднения — Способ расчёта скользящей средней (например, EMA, SMA и др.).
Price (MaPrice) Цена расчёта — Тип цены, используемой для расчёта скользящих средних (закрытие, открытие, высокая, низкая и т.д.).
ShortTermNote Заголовок настроек краткосрочных МА — Текстовая метка группы параметров краткосрочных скользящих средних.
Short Ma period 1 (ShortPeriod1) Период краткосрочной МА 1 — Период первой краткосрочной скользящей средней.
Short Ma period 2 (ShortPeriod2) Период краткосрочной МА 2 — Период второй краткосрочной скользящей средней.
Short Ma period 3 (ShortPeriod3) Период краткосрочной МА 3 — Период третьей краткосрочной скользящей средней.
Short Ma period 4 (ShortPeriod4) Период краткосрочной МА 4 — Период четвёртой краткосрочной скользящей средней.
Short Ma period 5 (ShortPeriod5) Период краткосрочной МА 5 — Период пятой краткосрочной скользящей средней.
Short Ma period 6 (ShortPeriod6) Период краткосрочной МА 6 — Период шестой краткосрочной скользящей средней.
Bullish fast line color (Upcolor) Цвет бычьих линий (краткосрочные) — Цвет линий при бычьем направлении для группы краткосрочных МА.
Bearish fast line color (Dncolor) Цвет медвежьих линий (краткосрочные) — Цвет линий при медвежьем направлении для группы краткосрочных МА.
Slow Lines width (LineWidth) Толщина линий (краткосрочные) — Толщина отображаемых линий для группы краткосрочных МА.
Slow lines are visible? (ShowLines) Показывать линии (краткосрочные) — Включает или отключает отображение линий краткосрочных скользящих средних.
LongTermNote Заголовок настроек долгосрочных МА — Текстовая метка группы параметров долгосрочных скользящих средних.
Long Ma period 1 (LongPeriod1) Период долгосрочной МА 1 — Период первой долгосрочной скользящей средней.
Long Ma period 2 (LongPeriod2) Период долгосрочной МА 2 — Период второй долгосрочной скользящей средней.
Long Ma period 3 (LongPeriod3) Период долгосрочной МА 3 — Период третьей долгосрочной скользящей средней.
Long Ma period 4 (LongPeriod4) Период долгосрочной МА 4 — Период четвёртой долгосрочной скользящей средней.
Long Ma period 5 (LongPeriod5) Период долгосрочной МА 5 — Период пятой долгосрочной скользящей средней.
Long Ma period 6 (LongPeriod6) Период долгосрочной МА 6 — Период шестой долгосрочной скользящей средней.
Bullish fast line color (Upcolor2) Цвет бычьих линий (долгосрочные) — Цвет линий при бычьем направлении для группы долгосрочных МА.
Bearish fast line color (Dncolor2) Цвет медвежьих линий (долгосрочные) — Цвет линий при медвежьем направлении для группы долгосрочных МА.
Slow Lines width (LineWidth2) Толщина линий (долгосрочные) — Толщина отображаемых линий для группы долгосрочных МА.
Slow lines are visible? (ShowLines2) Показывать линии (долгосрочные) — Включает или отключает отображение линий долгосрочных скользящих средних.
ButtonTermNote Заголовок настроек кнопки — Текстовая метка группы параметров кнопки управления отображением.
btn_Subwindow Подокно кнопки — Номер подокна графика, в котором размещается кнопка.
btn_corner Угол привязки кнопки — Угол графика, к которому привязана кнопка.
btn_text Текст кнопки — Начальный текст, отображаемый на кнопке.
btn_Font Шрифт кнопки — Шрифт, используемый для текста кнопки.
btn_FontSize Размер шрифта кнопки — Размер шрифта текста кнопки.
btn_text_ON_color Цвет текста кнопки (включено) — Цвет текста кнопки при отображении индикатора.
btn_text_OFF_color Цвет текста кнопки (выключено) — Цвет текста кнопки при скрытии индикатора.
btn_pressed Текст кнопки (нажато) — Текст кнопки в состоянии скрытия индикатора.
btn_unpressed Текст кнопки (отжато) — Текст кнопки в состоянии отображения индикатора.
btn_background_color Фон кнопки — Цвет фона кнопки.
btn_border_color Цвет рамки кнопки — Цвет границы кнопки.
button_x Позиция кнопки X — Горизонтальное расстояние кнопки от указанного угла в пикселях.
button_y Позиция кнопки Y — Вертикальное расстояние кнопки от указанного угла в пикселях.
btn_Width Ширина кнопки — Ширина кнопки в пикселях.
btn_Height Высота кнопки — Высота кнопки в пикселях.
soundBT Звук при нажатии кнопки — Имя звукового файла, воспроизводимого при нажатии кнопки; пустая строка отключает звук.
Down arrow size (Interpolate) Интерполяция между барами — Включает интерполяцию значений линий между барами при отображении на ином таймфрейме для более плавной линии.
Получить полный код

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

???//------------------------------------------------------------------

#property indicator_chart_window
#property indicator_buffers 36

#property strict

enum enTimeFrames
{
   tf_cu  = PERIOD_CURRENT, // Current time frame
   tf_m1  = PERIOD_M1,      // 1 minute
   tf_m5  = PERIOD_M5,      // 5 minutes
   tf_m15 = PERIOD_M15,     // 15 minutes
   tf_m30 = PERIOD_M30,     // 30 minutes
   tf_h1  = PERIOD_H1,      // 1 hour
   tf_h4  = PERIOD_H4,      // 4 hours
   tf_d1  = PERIOD_D1,      // Daily
   tf_w1  = PERIOD_W1,      // Weekly
   tf_mn1 = PERIOD_MN1,     // Monthly
   tf_n1  = -1,             // First higher time frame
   tf_n2  = -2,             // Second higher time frame
   tf_n3  = -3              // Third higher time frame
};

extern enTimeFrames       TimeFrame                 = tf_cu; 
input string              MainTermNote = "=== Main Settings ==";
extern ENUM_MA_METHOD     MaMode      = MODE_EMA;       // Average method
extern ENUM_APPLIED_PRICE MaPrice     = PRICE_CLOSE;    // Price

input string              ShortTermNote = "=== Short Term MA Settings ==";
input int                 ShortPeriod1 = 3;              // Short Ma period 1
input int                 ShortPeriod2 = 5;              // Short Ma period 2
input int                 ShortPeriod3 = 8;              // Short Ma period 3
input int                 ShortPeriod4 = 10;             // Short Ma period 4
input int                 ShortPeriod5 = 12;             // Short Ma period 5
input int                 ShortPeriod6 = 15;             // Short Ma period 6
extern color              Upcolor     = clrSpringGreen; // Bullish fast line  color
extern color              Dncolor     = clrCrimson;       // Bearish fast line  color
extern int                LineWidth   =   1;              // Slow Lines width
extern bool               ShowLines    = true;             // Slow lines are visible?

input string              LongTermNote = "=== Long Term MA Settings ==";
input int                 LongPeriod1 = 30;              // Long Ma period 1
input int                 LongPeriod2 = 35;              // Long Ma period 2
input int                 LongPeriod3 = 40;              // Long Ma period 3
input int                 LongPeriod4 = 45;              // Long Ma period 4
input int                 LongPeriod5 = 50;              // Long Ma period 5
input int                 LongPeriod6 = 60;              // Long Ma period 6
extern color              Upcolor2     = clrDodgerBlue; // Bullish fast line  color
extern color              Dncolor2     = clrMagenta;       // Bearish fast line  color
extern int                LineWidth2   =   2;              // Slow Lines width
extern bool               ShowLines2    = true;             // Slow lines are visible?

input string              ButtonTermNote = "=== Button Settings ==";
extern int                btn_Subwindow = 0;
extern ENUM_BASE_CORNER   btn_corner            = CORNER_LEFT_UPPER; 
extern string             btn_text              = "guppy";
extern string             btn_Font              = "Arial";
extern int                btn_FontSize          = 10;                            
extern color              btn_text_ON_color     = clrLime;
extern color              btn_text_OFF_color    = clrRed;
extern string             btn_pressed           = "guppy OFF";            
extern string             btn_unpressed         = "guppy ON";
extern color              btn_background_color  = clrDimGray;
extern color              btn_border_color      = clrBlack;
extern int                button_x              = 850;                                 
extern int                button_y              = 0;                                   
extern int                btn_Width             = 90;                                 
extern int                btn_Height            = 20;                                
extern string             soundBT               = "tick.wav";  
input bool             Interpolate               = true;                // Down arrow size

bool                      show_data             = true;
string IndicatorName, IndicatorObjPrefix ,buttonId ;

double ma[],mada[],madb[],slope[];
double ma2[],mada2[],madb2[],slope2[];
double ma3[],mada3[],madb3[],slope3[];
double ma4[],mada4[],madb4[],slope4[];
double ma5[],mada5[],madb5[],slope5[];

double ma6[],mada6[],madb6[],slope6[];
double ma7[],mada7[],madb7[],slope7[];
double ma8[],mada8[],madb8[],slope8[];
double ma9[],mada9[],madb9[],slope9[];
double ma10[],mada10[],madb10[],slope10[];

double ma11[],mada11[],madb11[],slope11[];
double ma12[],mada12[],madb12[],slope12[],count[];

string indicatorFileName;
#define _mtfCall(_buff,_ind) iCustom(NULL,TimeFrame,indicatorFileName,PERIOD_CURRENT,MainTermNote,MaMode,MaPrice,ShortTermNote,ShortPeriod1,ShortPeriod2,ShortPeriod3,ShortPeriod4,ShortPeriod5,ShortPeriod6,Upcolor,Dncolor,LineWidth,ShowLines,LongTermNote,LongPeriod1,LongPeriod2,LongPeriod3,LongPeriod4,LongPeriod5,LongPeriod6,Upcolor2,Dncolor2,LineWidth2,ShowLines2,ButtonTermNote,btn_Subwindow,btn_corner,btn_text,btn_Font,btn_FontSize,btn_text_ON_color,btn_text_OFF_color,btn_pressed,btn_unpressed,btn_background_color,btn_border_color,button_x,button_y,btn_Width,btn_Height,soundBT,_buff,_ind)

string GenerateIndicatorName(const string target)
{
   string name = target;
   int try = 2;
   while (WindowFind(name) != -1)
   {
      name = target + " #" + IntegerToString(try++);
   }
   return name;
}

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

void createButton(string buttonID,string buttonText,int width,int height,string font,int fontSize,color bgColor,color borderColor,color txtColor)
{
      ObjectDelete    (ChartID(),buttonID);
      ObjectCreate (ChartID(),buttonID,OBJ_BUTTON,btn_Subwindow,0,0);
      ObjectSetInteger(ChartID(),buttonID,OBJPROP_COLOR,txtColor);
      ObjectSetInteger(ChartID(),buttonID,OBJPROP_BGCOLOR,bgColor);
      ObjectSetInteger(ChartID(),buttonID,OBJPROP_BORDER_COLOR,borderColor);
      ObjectSetInteger(ChartID(),buttonID,OBJPROP_XSIZE,width);
      ObjectSetInteger(ChartID(),buttonID,OBJPROP_YSIZE,height);
      ObjectSetString (ChartID(),buttonID,OBJPROP_FONT,font);
      ObjectSetString (ChartID(),buttonID,OBJPROP_TEXT,buttonText);
      ObjectSetInteger(ChartID(),buttonID,OBJPROP_FONTSIZE,fontSize);
      ObjectSetInteger(ChartID(),buttonID,OBJPROP_SELECTABLE,0);
      ObjectSetInteger(ChartID(),buttonID,OBJPROP_CORNER,btn_corner);
      ObjectSetInteger(ChartID(),buttonID,OBJPROP_HIDDEN,1);
      ObjectSetInteger(ChartID(),buttonID,OBJPROP_XDISTANCE,9999);
      ObjectSetInteger(ChartID(),buttonID,OBJPROP_YDISTANCE,9999);
}

int deinit()
 {

  ObjectsDeleteAll(0,"guppy");
   ObjectsDeleteAll(ChartID(), IndicatorObjPrefix);

  return(0); 
  }     

bool recalc = true;
 void handleButtonClicks()
{
   if (ObjectGetInteger(ChartID(), buttonId, OBJPROP_STATE))
   {
      ObjectSetInteger(ChartID(), buttonId, OBJPROP_STATE, false);
      show_data = !show_data;
      GlobalVariableSet(IndicatorName + "_visibility", show_data ? 1.0 : 0.0);
      recalc = true;
      start();
   }
}
void OnChartEvent(const int id, 
                  const long &lparam,
                  const double &dparam,
                  const string &sparam)
{
   handleButtonClicks();
   if (id==CHARTEVENT_OBJECT_CLICK && ObjectGet(sparam,OBJPROP_TYPE)==OBJ_BUTTON)
   {
   if (soundBT!="") PlaySound(soundBT);     
   }
}

int start()
{
      // код доступен только после оплаты
   }
 handleButtonClicks();
   recalc = false;

   start2();
    SetIndexBuffer(0,ma  ,INDICATOR_DATA); SetIndexStyle(0,ShowLines ? DRAW_LINE :  DRAW_NONE,EMPTY,LineWidth,Upcolor);
   SetIndexBuffer(1,mada,INDICATOR_DATA); SetIndexStyle(1,ShowLines ? DRAW_LINE :  DRAW_NONE,EMPTY,LineWidth,Dncolor);
   SetIndexBuffer(2,madb,INDICATOR_DATA); SetIndexStyle(2,ShowLines ? DRAW_LINE :  DRAW_NONE,EMPTY,LineWidth,Dncolor);

   SetIndexBuffer(3,ma2  ,INDICATOR_DATA); SetIndexStyle(3,ShowLines ? DRAW_LINE :  DRAW_NONE,EMPTY,LineWidth,Upcolor);
   SetIndexBuffer(4,mada2,INDICATOR_DATA); SetIndexStyle(4,ShowLines ? DRAW_LINE :  DRAW_NONE,EMPTY,LineWidth,Dncolor);
   SetIndexBuffer(5,madb2,INDICATOR_DATA); SetIndexStyle(5,ShowLines ? DRAW_LINE :  DRAW_NONE,EMPTY,LineWidth,Dncolor);

   SetIndexBuffer(6,ma3  ,INDICATOR_DATA); SetIndexStyle(6,ShowLines ? DRAW_LINE :  DRAW_NONE,EMPTY,LineWidth,Upcolor);
   SetIndexBuffer(7,mada3,INDICATOR_DATA); SetIndexStyle(7,ShowLine

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

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

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

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

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

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

Стоимость полного кода
2 176,40₽ ≈ $26.60