#MTF Trend Bias Lines Buttons Alerts
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «#mtf trend bias lines buttons alerts.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Индикатор для MetaTrader 5, который строит на графике три линии трендового смещения (bias), каждая рассчитывается по своему таймфрейму. Линия проводится от выбранной свечи указанного таймфрейма по выбранной цене (Open, High, Low или Close) и продлевается вправо. Цвет линии зависит от того, находится ли текущая цена закрытия выше или ниже значения bias: для бычьего и медвежьего направления предусмотрены отдельные цвета.
На графике размещается панель из шести кнопок. Три кнопки управляют показом и скрытием соответствующих линий, ещё три включают и выключают всплывающие уведомления для каждой линии. Положение панели, её размеры, шрифт, цвета фона, рамок и стрелок настраиваются. Состояние кнопок сохраняется через глобальные переменные терминала, поэтому при повторном открытии графика настройки показа линий и уведомлений восстанавливаются.
Индикатор отслеживает пересечение цены закрытия с каждой из трёх линий bias. При пересечении формируется сообщение с указанием таймфрейма и цены линии. В зависимости от настроек уведомление может выводиться как всплывающее окно, отправляться по электронной почте, в push-уведомления или сопровождаться звуковым сигналом. Для каждого таймфрейма уведомления можно включать и выключать отдельно.
Индикатор работает в окне графика, не создаёт торговых операций и предназначен для визуального анализа и оповещения о событиях пересечения.
Настройки программы
| Настройка | Описание |
|---|---|
| _0 | Разделительная строка в списке настроек, не влияет на работу индикатора. |
| _1 | Заголовок группы настроек таймфрейма A, не влияет на работу индикатора. |
| T1 | Выбор таймфрейма для линии bias A: MN1, W1, D1, H4, H1 или M30. |
| ABP | Выбор цены свечи таймфрейма A, по которой строится линия bias: Open, High, Low или Close. |
| i1 | Номер свечи таймфрейма A, от которой строится линия bias. Значение не может быть меньше нуля. |
| t1buc | Цвет линии bias таймфрейма A, когда цена закрытия выше значения bias. |
| t1bec | Цвет линии bias таймфрейма A, когда цена закрытия ниже значения bias. |
| t1ls | Стиль отрисовки линии bias таймфрейма A. |
| t1lw | Толщина линии bias таймфрейма A. |
| _2 | Разделительная строка в списке настроек, не влияет на работу индикатора. |
| _3 | Заголовок группы настроек таймфрейма B, не влияет на работу индикатора. |
| T2 | Выбор таймфрейма для линии bias B: MN1, W1, D1, H4, H1 или M30. |
| BBP | Выбор цены свечи таймфрейма B, по которой строится линия bias: Open, High, Low или Close. |
| i2 | Номер свечи таймфрейма B, от которой строится линия bias. Значение не может быть меньше нуля. |
| t2buc | Цвет линии bias таймфрейма B, когда цена закрытия выше значения bias. |
| t2bec | Цвет линии bias таймфрейма B, когда цена закрытия ниже значения bias. |
| t2ls | Стиль отрисовки линии bias таймфрейма B. |
| t2lw | Толщина линии bias таймфрейма B. |
| _4 | Разделительная строка в списке настроек, не влияет на работу индикатора. |
| _5 | Заголовок группы настроек таймфрейма C, не влияет на работу индикатора. |
| T3 | Выбор таймфрейма для линии bias C: MN1, W1, D1, H4, H1 или M30. |
| CBP | Выбор цены свечи таймфрейма C, по которой строится линия bias: Open, High, Low или Close. |
| i3 | Номер свечи таймфрейма C, от которой строится линия bias. Значение не может быть меньше нуля. |
| t3buc | Цвет линии bias таймфрейма C, когда цена закрытия выше значения bias. |
| t3bec | Цвет линии bias таймфрейма C, когда цена закрытия ниже значения bias. |
| t3ls | Стиль отрисовки линии bias таймфрейма C. |
| t3lw | Толщина линии bias таймфрейма C. |
| _6 | Разделительная строка в списке настроек, не влияет на работу индикатора. |
| _7 | Заголовок группы настроек кнопок переключения, не влияет на работу индикатора. |
| SBW | Номер окна графика, в котором создаются кнопки. |
| SBC | Выбор угла графика, в котором размещается панель кнопок: по центру сверху или снизу, слева сверху или снизу, справа сверху или снизу. |
| sbf | Имя шрифта, используемого для текста на кнопках. |
| sbfs | Размер шрифта текста на кнопках. |
| sbbgc | Цвет фона кнопок. |
| sbbc | Цвет рамки кнопок в обычном состоянии. |
| sbbch | Цвет рамки кнопок, когда соответствующая линия bias скрыта. |
| sbbca | Цвет рамки кнопок уведомления, когда оповещение выключено. |
| sb2acbu | Цвет стрелки бычьего направления на кнопке уведомления таймфрейма A. |
| sb2acbe | Цвет стрелки медвежьего направления на кнопке уведомления таймфрейма A. |
| sb4acbu | Цвет стрелки бычьего направления на кнопке уведомления таймфрейма B. |
| sb4acbe | Цвет стрелки медвежьего направления на кнопке уведомления таймфрейма B. |
| sb6acbu | Цвет стрелки бычьего направления на кнопке уведомления таймфрейма C. |
| sb6acbe | Цвет стрелки медвежьего направления на кнопке уведомления таймфрейма C. |
| x0 | Горизонтальное смещение панели кнопок от выбранного угла графика. |
| y0 | Вертикальное смещение панели кнопок от выбранного угла графика. |
| sbw1 | Ширина основных кнопок панели в пикселях. |
| sbw2 | Ширина кнопок уведомления в пикселях. |
| sbh | Высота кнопок в пикселях. |
| sbm | Расстояние между кнопками в пикселях. |
| _9 | Разделительная строка в списке настроек, не влияет на работу индикатора. |
| _8 | Заголовок группы прочих настроек, не влияет на работу индикатора. |
| UID | Уникальный идентификатор индикатора, используемый в именах объектов и глобальных переменных. |
| PAM | Текст, отображаемый на кнопках всплывающего уведомления. В комментарии указано, что кнопки соответствуют номерам 2, 4 и 6. |
| SE | Включает или выключает отправку уведомления по электронной почте при срабатывании оповещения. |
| PN | Включает или выключает отправку push-уведомлений при срабатывании оповещения. |
| AS | Включает или выключает звуковой сигнал при срабатывании уведомления. |
| SF | Имя звукового файла, который воспроизводится при включённом звуковом оповещении. |
| abs | Смещение свечи, на которой проверяется пересечение цены с линией bias. Значение не может быть меньше нуля. |
Поиск по коду файла
#property description "- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -"
#property description " The indicator draws 3 bias lines from 3 different time frames!"
#property description " There are 6 fully customizable switch buttons, 3 of which hide"
#property description " and show their respective line and 3 to toggle the alert popup"
#property description " message window for each line crossover!"
#property description " Buttons or lines are identified through the respective tooltip"
#property description " by hovering the mouse pointer over them!"
#property description "- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -"
#property strict
#property indicator_chart_window
#import "user32.dll"
int RegisterWindowMessageW(string lpString);
int PostMessageW(int hWnd,int Msg,int wParam,int lParam);
#import
#define cmd_update_window 0x822c
#define wm_command 0x0111
enum tfa // Time Frame A
{
pa0, // MN1
pa1, // W1
pa2, // D1
pa3, // H4
pa4, // H1
pa5, // M30
};
enum tfb // Time Frame B
{
pb0, // MN1
pb1, // W1
pb2, // D1
pb3, // H4
pb4, // H1
pb5, // M30
};
enum tfc // Time Frame C
{
pc0, // MN1
pc1, // W1
pc2, // D1
pc3, // H4
pc4, // H1
pc5, // M30
};
enum sbc // Switch Buttons Corner
{
sb0, // Centered Upper
sb1, // Centered Lower
sb2, // Left Upper
sb3, // Left Lower
sb4, // Right Upper
sb5, // Right Lower
};
enum abp // Bias Price
{
ap0, // Open
ap1, // High
ap2, // Low
ap3, // Close
};
enum bbp // Bias Price
{
bp0, // Open
bp1, // High
bp2, // Low
bp3, // Close
};
enum cbp // Bias Price
{
cp0, // Open
cp1, // High
cp2, // Low
cp3, // Close
};
extern string _0 = "____________________________________________________"; //________________________________________________
extern string _1 = "______________________ Values ______________________";//_________________ Time Frame A _________________
extern tfa T1 = pa0; // Period
extern abp ABP = ap0; // Bias Price
extern int i1 = 0; // Bar Shift
extern color t1buc = clrSlateBlue; // Bias Line Bull Color
extern color t1bec = clrMaroon; // Bias Line Bear Color
extern ENUM_LINE_STYLE t1ls = STYLE_DASH; // Bias Line Style
extern int t1lw = 0; // Bias Line Width
extern string _2 = "____________________________________________________"; //________________________________________________
extern string _3 = "______________________ Values ______________________";//_________________ Time Frame B _________________
extern tfb T2 = pb1; // Period
extern bbp BBP = bp0; // Bias Price
extern int i2 = 0; // Bar Shift
extern color t2buc = C'104,104,0'; // Bias Line Bull Color
extern color t2bec = C'213,0,213'; // Bias Line Bear Color
extern ENUM_LINE_STYLE t2ls = STYLE_DASHDOTDOT; // Bias Line Style
extern int t2lw = 0; // Bias Line Width
extern string _4 = "____________________________________________________"; //________________________________________________
extern string _5 = "______________________ Values ______________________";//_________________ Time Frame C _________________
extern tfc T3 = pc2; // Period
extern cbp CBP = cp0; // Bias Price
extern int i3 = 0; // Bar Shift
extern color t3buc = C'0,89,179'; // Bias Line Bull Color
extern color t3bec = clrSienna; // Bias Line Bear Color
extern ENUM_LINE_STYLE t3ls = STYLE_DOT; // Bias Line Style
extern int t3lw = 0; // Bias Line Width
extern string _6 = "____________________________________________________"; //________________________________________________
extern string _7 = "______________________ Values ______________________";//_________________ Switch Buttons _________________
extern int SBW = 0; // Window
extern sbc SBC = sb5; // Corner
extern string sbf = "Tahoma"; // Font
extern int sbfs = 9; // Font Size
extern color sbbgc = clrBlack; // Background Color
extern color sbbc = C'50,50,50'; // Border Color
extern color sbbch = clrSlateGray; // Border Color (Bias Line Hidden)
extern color sbbca = clrSteelBlue; // Border Color (Alert OFF)
extern color sb2acbu = clrLimeGreen; // Time Frame A: Bull Arrow Color
extern color sb2acbe = clrRed; // Time Frame A: Bear Arrow Color
extern color sb4acbu = clrLimeGreen; // Time Frame B: Bull Arrow Color
extern color sb4acbe = clrRed; // Time Frame B: Bear Arrow Color
extern color sb6acbu = clrLimeGreen; // Time Frame C: Bull Arrow Color
extern color sb6acbe = clrRed; // Time Frame C: Bear Arrow Color
extern int x0 = 0; // Marginal XDistance
extern int y0 = 0; // Marginal YDistance
extern int sbw1 = 64; // Width1
extern int sbw2 = 24; // Width2
extern int sbh = 24; // Height
extern int sbm = 4; // Step Margin
extern string _9 = "____________________________________________________"; //________________________________________________
extern string _8 = "______________________ Values ______________________";//_________________ Other Settings _________________
extern string UID = "MTFTBLBA0"; // Indicator Unique ID
extern string PAM = "Popup Alert Message ON/OFF"; // Popup Alert Message Buttons: (2, 4, 6)
extern bool SE = false; // Email Alert?
extern bool PN = false; // Push Norification Alert?
extern bool AS = false; // Alert Sound?
extern string SF = "alert2.wav"; // Name of Sound File
extern int abs = 0; // Alert Bar Shift(>=0)
int cheight,cwidth,sbcx,bx0,by0;
string tfatt,tfbtt,tfctt,a1txt,a2txt,a3txt,sbtf1lt,sbtf2lt,sbtf3lt,sbtf1at,sbtf2at,sbtf3at,tpt1,tpt2,tpt3,
sbtf1ln=UID+" | Switch Buttton Time Frame A",sbtf1an=UID+" | Switch Buttton Time Frame A Alert",
sbtf2ln=UID+" | Switch Buttton Time Frame B",sbtf2an=UID+" | Switch Buttton Time Frame B Alert",
sbtf3ln=UID+" | Switch Buttton Time Frame C",sbtf3an=UID+" | Switch Buttton Time Frame C Alert",
tfaon =UID+" | Time Frame A Bias Line", tfbon =UID+" | Time Frame B Bias Line",
tfcon =UID+" | Time Frame C Bias Line",sn=Symbol()+" M("+IntegerToString(Period(),0)+"): ";
color t1xc,t2xc,t3xc,a1cx,a2cx,a3cx,sb1bc,sb2bc,sb3bc,sb4bc,sb5bc,sb6bc;
double t1p,t2p,t3p,tf1D,tf2D,tf3D,pip,sbxw;
datetime t1t,t2t,t3t;
bool taflag,tbflag,tcflag,alert1,alert2,alert3; static datetime atime,btime,ctime;
int OnInit(){
// код доступен только после оплаты
}
int deinit(){DO();return(0);}
int OnCalculate(const int rates_total ,
const int prev_calculated,
const datetime&time [],
const double &open [],
const double &high [],
const double &low [],
const double &close [],
const long &tick_volume [],
const long &volume [],
const int &spread [])
{
// код доступен только после оплаты
}
if(GlobalVariableGet(sn+sbtf1ln)==-1){taflag=false;sb1bc=sbbch;}else{taflag=true;sb1bc=sbbc;}
if(GlobalVariableGet(sn+sbtf2ln)==-1){tbflag=false;sb3bc=sbbch;}else{tbflag=true;sb3bc=sbbc;}
if(GlobalVariableGet(sn+sbtf3ln)==-1){tcflag=false;sb5bc=sbbch;}else{tcflag=true;sb5bc=sbbc;}
if(GlobalVariableGet(sn+sbtf1an)==-1){alert1=false;sb2bc=sbbca;}else{alert1=true;sb2bc=sbbc;}
if(GlobalVariableGet(sn+sbtf2an)==-1){alert2=false;sb4bc=sbbca;}else{alert2=true;sb4bc=sbbc;}
if(GlobalVariableGet(sn+sbtf3an)==-1){alert3=false;sb6bc=sbbca;}else{alert3=true;sb6bc=sbbc;}
cheight=(int)ChartGetInteger(Показано первые 50% кода (символов: 15708)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.