ArshadFX_BarHL_Objects
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «hl_objectsi my favorite.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Данный файл является пользовательским индикатором для MetaTrader 5, который отображает на графике ценовые уровни, построенные по максимумам и минимумам баров с разных таймфреймов. Индикатор работает в окне графика и не выводит отдельного подокна.
Пользователь может включать или отключать отображение уровней для каждого из пяти таймфреймов: часового (H1), четырёхчасового (H4), дневного (D1), недельного (W1) и месячного (M1). Для каждого таймфрейма задаётся количество отображаемых последних баров, по которым строятся линии.
Цвет линий для максимумов и минимумов настраивается отдельно. Также предусмотрены параметры для выбора подписей к линиям и их расположения на графике. Индикатор автоматически удаляет созданные объекты при деинициализации, чтобы не засорять график.
Настройки программы
| Настройка | Описание |
|---|---|
| H1 | Часовой таймфрейм — Включает или отключает отображение уровней часового таймфрейма. |
| ObjH1 | Количество объектов H1 — Количество последних баров часового таймфрейма, по которым строятся линии. |
| H4 | Четырёхчасовой таймфрейм — Включает или отключает отображение уровней четырёхчасового таймфрейма. |
| ObjH4 | Количество объектов H4 — Количество последних баров четырёхчасового таймфрейма, по которым строятся линии. |
| D1 | Дневной таймфрейм — Включает или отключает отображение уровней дневного таймфрейма. |
| ObjD1 | Количество объектов D1 — Количество последних баров дневного таймфрейма, по которым строятся линии. |
| W1 | Недельный таймфрейм — Включает или отключает отображение уровней недельного таймфрейма. |
| ObjW1 | Количество объектов W1 — Количество последних баров недельного таймфрейма, по которым строятся линии. |
| M1 | Месячный таймфрейм — Включает или отключает отображение уровней месячного таймфрейма. |
| ObjM1 | Количество объектов M1 — Количество последних баров месячного таймфрейма, по которым строятся линии. |
| Colors | Цвет и отрисовка — Текстовый параметр, задающий цвет и режим отрисовки. В коде не используется. |
| BarsHigh | Цвет максимумов — Цвет линий, отображающих максимумы баров выбранных таймфреймов. |
| BarsLow | Цвет минимумов — Цвет линий, отображающих минимумы баров выбранных таймфреймов. |
| 0=Nolable, 1=Bar'sIndexNo, 2=Bar'sIndexNo + Price (LineLable) | Подписи линий — Задаёт тип подписи к линиям: 0 — без подписи, 1 — номер бара, 2 — номер бара и цена. |
| 0= On bars as normal SupportResistance line, 1= Right side of chart (H1Position) | Положение H1 — Определяет положение линий часового таймфрейма: на барах или справа от графика. |
| H4Position | Положение H4 — Определяет положение линий четырёхчасового таймфрейма: на барах или справа от графика. |
| D1Position | Положение D1 — Определяет положение линий дневного таймфрейма: на барах или справа от графика. |
| W1Position | Положение W1 — Определяет положение линий недельного таймфрейма: на барах или справа от графика. |
| M1Position | Положение M1 — Определяет положение линий месячного таймфрейма: на барах или справа от графика. |
Поиск по коду файла
#property indicator_chart_window
extern bool H1 = 0;
extern int ObjH1 = 2;
extern bool H4 = 0;
extern int ObjH4 = 2;
extern bool D1 = 1;
extern int ObjD1 = 1;
extern bool W1 = 1;
extern int ObjW1 = 1;
extern bool M1 = 1;
extern int ObjM1 = 1;
extern string Colors="Select Color & Drawing";
extern color BarsHigh = Green;
extern color BarsLow = Red;
extern int LineLable = 2; // 0=Nolable, 1=Bar'sIndexNo, 2=Bar'sIndexNo + Price
extern bool H1Position = 0; // 0= On bars as normal SupportResistance line, 1= Right side of chart
extern bool H4Position = 0;
extern bool D1Position = 0;
extern bool W1Position = 0;
extern bool M1Position = 0;
double H1h[], H1l[], H4h[], H4l[], D1h[], D1l[], W1h[], W1l[], M1h[], M1l[];
datetime H1ts[], H1te[], H4ts[], H4te[], D1ts[], D1te[], W1ts[], W1te[], M1ts[], M1te[];
int MaxObj=0; // Maximum Objects
int init() {
// код доступен только после оплаты
}
int deinit(){rLines(MaxObj+1); Comment(""); return(0);}
int start()
{
// код доступен только после оплаты
}
void dH1(int Obj) // Draw Lines 1Hour
{
for (int x=1; x<Obj; x++)
{
ObjectDelete("H1_High_"+x); // High_Hour_1
if (H1Position){ObjectCreate("H1_High_"+x,OBJ_TREND,0,Time[0]+(Time[0]-Time[5]),H1h[x],Time[0]+(Time[0]-Time[25]),H1h[x],0);}
else {ObjectCreate("H1_High_"+x,OBJ_TREND,0,H1ts[x],H1h[x],H1te[x],H1h[x],0);}
ObjectSet("H1_High_"+x,OBJPROP_RAY,0); ObjectSet("H1_High_"+x,OBJPROP_COLOR,BarsHigh);
ObjectSet("H1_High_"+x,OBJPROP_STYLE,2);
if (LineLable==1){ObjectSetText("H1_High_"+x,"H1_High_"+x);}
if (LineLable==2){ObjectSetText("H1_High_"+x,"H1_High_"+x+" "+DoubleToStr(H1h[1],Digits),6);}
ObjectDelete("H1_Low_"+x); // Low_Hour_1
if (H1Position){ObjectCreate("H1_Low_"+x,OBJ_TREND,0,Time[0]+(Time[0]-Time[5]),H1l[x],Time[0]+(Time[0]-Time[25]),H1l[x],0);}
else {ObjectCreate("H1_Low_"+x,OBJ_TREND,0,H1ts[x],H1l[x],H1te[x],H1l[x],0);}
ObjectSet("H1_Low_"+x,OBJPROP_RAY,0); ObjectSet("H1_Low_"+x,OBJPROP_COLOR,BarsLow);
ObjectSet("H1_Low_"+x,OBJPROP_STYLE,2);
if (LineLable==1){ObjectSetText("H1_Low_"+x,"H1_Low_"+x);}
if (LineLable==2){ObjectSetText("H1_Low_"+x,"H1_Low_"+x+" "+DoubleToStr(H1l[1],Digits),6);}
}
}
void dH4(int Obj) // Draw Lines 4Hour
{
for (int x=1; x<Obj; x++)
{
ObjectDelete("H4_High_"+x); // High_Hour_1
if (H4Position){ObjectCreate("H4_High_"+x,OBJ_TREND,0,Time[0]+(Time[0]-Time[5]),H4h[x],Time[0]+(Time[0]-Time[25]),H4h[x],0);}
else {ObjectCreate("H4_High_"+x,OBJ_TREND,0,H4ts[x],H4h[x],H4te[x],H4h[x],0);}
ObjectSet("H4_High_"+x,OBJPROP_RAY,0); ObjectSet("H4_High_"+x,OBJPROP_COLOR,BarsHigh);
ObjectSet("H4_High_"+x,OBJPROP_WIDTH,1);
if (LineLable==1){ObjectSetText("H4_High_"+x,"H4_High_"+x);}
if (LineLable==2){ObjectSetText("H4_High_"+x,"H4_High_"+x+" "+DoubleToStr(H4h[1],Digits),6);}
ObjectDelete("H4_Low_"+x); // Low_Hour_1
if (H4Position){ObjectCreate("H4_Low_"+x,OBJ_TREND,0,Time[0]+(Time[0Показано первые 50% кода (символов: 7976)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.