Индикатор который строит ценовые уровни OHLC старших таймфремов на младшем

MQL5 Indicatori

Lavoro terminato

Tempo di esecuzione 4 giorni
Feedback del dipendente
Очень грамотное ТЗ Вся работа в рамках ТЗ , ничего лишнего. Для таких заказчиков хочется всегда сделать больше. Очень корректный и приятный в общении. Ставлю максимальную оценку 5 звезд
Feedback del cliente
Работа выполнена досрочно, в полном объёме и согласно Техническому заданию. Полностью удовлетворен результатом. В дальнейшем, намерен продолжить сотрудничество с данным специалистом. Спасибо.

Specifiche

Техническое задание.

Необходим индикатор для MT5, который наносит ценовые значения (в виде горизонтальных уровней) CLOSE/HIGH/LOW на младший таймфрейм с закрытых свеч старших таймфреймов.

Например  -> на ТФ M15 индикатор будет наносить ценовые значения в виде горизонтальных уровней старших таймфреймов: D1,W1,M1 - разными цветами. 

 Подобный индикатор реализован на сервисе www.tradingview.com - Вы можете пройти по ссылке и посмотреть в реальном времени как работает индикатор.

 

  Рис 1. - Готовый вид индикатора который описывается в задании. Включает в себя: уровни, заливку между уровнями.

 

 В каком виде и для каких ТФ должны наносится уровни?

Индикатор строит уровни для следующих таймфреймов (в разных окнах- например опционально выбирая для какого из ТФ нужно построить):

M15,H1,H4,D1,W1

Рассмотрим на примере пятнадцати минутки что отображает индикатор для этого таймфрейма (и для других по аналогии). В целях последовательного изложения задачи заливка между

уровнями отключена. См. рис 2. 

Пример на M15 

 Рис. 2 - Пример на M15 с отключенной заливкой между уровнями.

 

Как видите из рис.2 все линии это уровни CLOSE, HIGH, LOW - > дневки, недели, месяца. Уровни и заливка в этом индикаторе - это просто представление

информации о OHLC старших таймфремов в разных форматах, а именно:

 

УРОВНИ, ЗАЛИВКА, СТИЛИ

 

Горизонтальными уровнями отображаются:

Day(CLOSE) цвет, тип (пунктир, тире, сплошная), прозрачность (если реализуемо) - опционально

Week(CLOSE) цвет, тип (пунктир, тире, сплошная), прозрачность (если реализуемо) - опционально

Month(CLOSE)цвет, тип (пунктир, тире, сплошная), прозрачность (если реализуемо) - опционально

Month(HIGH)  цвет, тип (пунктир, тире, сплошная), прозрачность (если реализуемо) - опционально

Month(LOW) цвет, тип (пунктир, тире, сплошная), прозрачность (если реализуемо) - опционально

 

Заливкой отображаются:

Day(HIGH-LOW)* цвет, тип (пунктир, тире, сплошная), прозрачность (если реализуемо) - опционально

WEEK(HIGH-LOW) цвет, тип (пунктир, тире, сплошная), прозрачность (если реализуемо) - опционально

MONTH(HIGH-LOW)  цвет, тип (пунктир, тире, сплошная), прозрачность (если реализуемо) - опционально

 *Примечание - (HIGH-LOW) - это расстояние между хаем и лоем.

 

 Далее, если включить заливку то индикатор будет выглядеть так (См. рис.3):

 

 

 Что отображается на ТФ(См. рис 1):

=====================================

Для M15

Уровни: D1,W1,M1(CLOSE); M1(HIGH, LOW);

Заливка D1,W1,M1(HIGH-LOW); 

 =====================================

Для H1

Уровни: D1,W1,M1(CLOSE); M1(HIGH, LOW);

Заливка D1,W1,M1(HIGH-LOW); 

 =====================================

 Для H4

Уровни: D1,W1,M1(CLOSE); M1(HIGH, LOW);

Заливка: D1,W1,M1(HIGH-LOW); 

 =====================================

 Для D1

Уровни:  W1,M1(CLOSE); M1(HIGH, LOW);

Заливка: W1,M1(HIGH-LOW); 

 =====================================

 Для W1

Уровни: M1(CLOSE); M1(HIGH, LOW);

Заливка: M1(HIGH-LOW); 

 =====================================

   

Далее я привожу код скрипта на сервисе tradingview который всё это отрисовывает: 

 

study("localMA[160406]")

var_sumb = input(defval="XAUUSD", type=string, title="SUMB") 

//Month's
j7 = plot( security(var_sumb, "M", sma(close[1],1)),  color=yellow, style=line,    linewidth=2,  title="M(C)", transp=0)
j8 = plot( security(var_sumb, "M", sma( high[1],1)),  color=white, style=circles, linewidth=2,   title="M(H)", transp=0)
j9 = plot( security(var_sumb, "M", sma(  low[1],1)),  color=#970000, style=circles, linewidth=2, title="M(L)", transp=0)
//Month's fill
fill(j7, j8, color=yellow, transp=75, title="Fill_Month(H)")
fill(j7, j9, color=yellow, transp=75, title="Fill_Month(L)")

//Week's
j4 = plot( security(var_sumb, "W", sma(close[1],1)),  color=black,  style=line,    linewidth=4, title="W(C)", transp=0)
j5 = plot( security(var_sumb, "W", sma( high[1],1)), transp=100,    title="W(H)", editable=false)
j6 = plot( security(var_sumb, "W", sma(  low[1],1)), transp=100,    title="W(L)", editable=false)
//Week's fill
fill(j4, j5, color=#00FFFF,  transp=75, title="Fill_Week(H)")
fill(j4, j6, color=#FF00FF,  transp=75, title="Fill_Week(L)")

//Day's
j1 = plot( security( var_sumb, "D", sma(close[1],1)), color=blue,  style=circles, linewidth=4, title="D(C)", transp=0)
j2 = plot( security( var_sumb, "D", sma( high[1],1)), transp=100,  title="D(H)", editable=false)
j3 = plot( security( var_sumb, "D", sma(  low[1],1)), transp=100,  title="D(L)", editable=false)
//Day's fill
fill(j1, j2, color=#0000FF,  transp=75, title="Fill_Day(H)")
fill(j1, j3, color=#FF0000,  transp=75, title="Fill_Day(L)")

 

Так же привожу код скрипта который отрисовывает уровень старшего таймфрейма для младшего ТФ  правда только для MT4(!!!!!!!!)

, любезно предоставленный  Bakhytzhan Abzalbekov на форуме.

 

#property copyright "Copyright 2016, x.ru."
#property link      "https://www..ru"
#property version   "1.00"
#property strict

input int      TimeFrame=60;

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   double Dmax,Dmin;
   static datetime ObjT=0;
   datetime TempT;
   Dmax=iHigh(Symbol(),TimeFrame,1);
   Dmin=iLow(Symbol(),TimeFrame,1);
   TempT=iTime(NULL,0,1);
   if(ObjT!=TempT && ObjT!=0)
      {ObjectDelete("LevelUp");
       ObjectDelete("LevelDown");}
   if(ObjT!=TempT)
      {
       ObjectCreate("LevelUp", OBJ_HLINE, 0, 0, Dmax);
       ObjectSet("LevelUp", OBJPROP_PRICE1, Dmax);
       ObjectSet("LevelUp", OBJPROP_COLOR, clrOrchid);
       ObjectSet("LevelUp", OBJPROP_STYLE, 2);
       ObjectSet("LevelUp", OBJPROP_WIDTH, 1);
       ObjectCreate("LevelDown", OBJ_HLINE, 0, 0, Dmin);
       ObjectSet("LevelDown", OBJPROP_PRICE1, Dmin);
       ObjectSet("LevelDown", OBJPROP_COLOR, clrOrchid);
       ObjectSet("LevelDown", OBJPROP_STYLE, 2);
       ObjectSet("LevelDown", OBJPROP_WIDTH, 1);
       WindowRedraw();
       ObjT=TempT;
      }
  }

Con risposta

1
Sviluppatore 1
Valutazioni
(187)
Progetti
367
56%
Arbitraggio
45
22% / 56%
In ritardo
188
51%
Gratuito
Pubblicati: 1 articolo, 6 codici
2
Sviluppatore 2
Valutazioni
Progetti
0
0%
Arbitraggio
0
In ritardo
0
Gratuito
3
Sviluppatore 3
Valutazioni
(851)
Progetti
1461
72%
Arbitraggio
122
29% / 48%
In ritardo
356
24%
In elaborazione
Pubblicati: 3 articoli
4
Sviluppatore 4
Valutazioni
(40)
Progetti
106
52%
Arbitraggio
17
12% / 65%
In ritardo
25
24%
Gratuito
5
Sviluppatore 5
Valutazioni
(5)
Progetti
5
0%
Arbitraggio
0
In ritardo
0
Gratuito
Pubblicati: 1 codice
6
Sviluppatore 6
Valutazioni
(16)
Progetti
27
52%
Arbitraggio
4
50% / 50%
In ritardo
5
19%
Gratuito
7
Sviluppatore 7
Valutazioni
(69)
Progetti
146
34%
Arbitraggio
13
8% / 62%
In ritardo
26
18%
Gratuito
Pubblicati: 6 codici
8
Sviluppatore 8
Valutazioni
(19)
Progetti
23
39%
Arbitraggio
1
0% / 0%
In ritardo
0
Gratuito
Pubblicati: 1 articolo, 14 codici
9
Sviluppatore 9
Valutazioni
(1)
Progetti
16
81%
Arbitraggio
1
100% / 0%
In ritardo
2
13%
Gratuito
Pubblicati: 1 articolo
10
Sviluppatore 10
Valutazioni
(34)
Progetti
103
39%
Arbitraggio
16
6% / 94%
In ritardo
33
32%
Gratuito
Pubblicati: 1 codice

Informazioni sul progetto

Budget
25 - 40 USD
Scadenze
da 5 a 7 giorno(i)