# Делюсь Граалем

Раздел: Индикаторы форекс
Автор темы: Yaroslavik
Создана: 2014-09-14 22:03
Ответов: 21080 | Просмотров: 10101860
Страница 370 из 1055
Источник: https://forexsystemru.com/threads/76901/page-370

---

## garry119 — 2017-07-17 11:26

особой разницы не видно. просто пинбар добавлен в паттерны у новой версии

## Belizas — 2017-07-17 12:18

> Цитата (bornikol):
> [[изображение: http://savepic.ru/14906724m.png]](http://savepic.ru/14906724.htm)
>
> Сегодня хочу  поделиться с вами и провести обзор одного технического инструмента под названием — Price Action Dashboard, который способен автоматизировать процесс поиска на графике фигур и паттернов Price Action. Разработчики данного индикатора выбрали три самых популярных, и соответственно самых сильных форекс паттернов, и автоматизировали их поиск и определение на ценовом графике.
> Это : Паттерн Пин-бар ; Сетап Double Bar ; Свечная модель поглощения (или Vertical bar).
>     Для любителей торговать с использованием  Price Action, это настоящая находка, так как трейдеру остается только правильно определить тренд на рынке, нанести на график уровни поддержки и сопротивления, ожидать сигнала формирования модели от индикатора Price Action Dashboard, и при наличии таковой, принять решения для входа в сделку.
>           Настроики:
> «Symbols» — это перечень символов валютных пар, по которым осуществляется поиск нужных форекс паттернов. По желанию, можно добавлять любые другие пары по которым ведется торговля, при этом не обязательно валюты (сырье, акции).
> «M1 – MN Timeframe Enabled» — таймфреймы на которых будет проводиться поиск сетапов. Можно отключать те временные периоды на которых Вы не хотите чтобы проходила проверка (скорее всего это будут от М1 до М30, для новичков рекомендую вовсе выключить все, кроме старших ТФ).
>  «Sort by» и «Sort Type» — параметры сортировки в таблице инфопанели.
>
> [[изображение: http://savepic.ru/14887271m.png]](http://savepic.ru/14887271.htm)
>
> Далее идут настройки для отдельной свечной форекс модели,  это те же: пин-бар, сетап double bar и vertical bar. Здесь все параметры интуитивно понятны.
> Max Body Tail Ratio – максимальное соотношение тела к хвосту.
> Большая часть настроек относится исключительно ко внешнему виду панели и способам оповещений.
>
> [[изображение: http://savepic.ru/14937465m.png]](http://savepic.ru/14937465.htm)
>
> После проведения и подтверждения всех настроек индикатор Price Action Dashboard, на графике появляется таблица (или инфопанель), в которой указаны следующие поля:
> Символы валютных пар;
> Таймфреймы для каждой из них;
> Направление движения цены;
> Название свечной форекс модели, которая формируется;
> Возраст паттерна, то есть сколько баров назад он был сформирован;
> Цена на которой было завершено формирование свечной модели;
> Последняя колонка – это кнопки соответствующих графиков, где формируются указанные сетапы (при нажатии можно быстро перейти на нужный вам график и увидеть наглядно как сформировался тот или другой паттерн).
>
>     Удачи!!!

А с открытым кодом нет у Вас?

## 6349 — 2017-07-17 12:41

Отвечаю на два поста...

#define INDICATOR_VERSION    2       // VERSION 2
#define INDICATOR_NAME       "Победа_2015"
#define RELEASE_LEVEL        "Public"
#define MT4_BUILD            880

#property indicator_chart_window
#property indicator_buffers 8
#property indicator_color1  DodgerBlue   // UpperLine
#property indicator_color2  OrangeRed    // LowerLine
#property indicator_color3  LimeGreen    // Target1
#property indicator_color4  LimeGreen    // Target2
#property indicator_color5  DodgerBlue   // BuyArrow
#property indicator_color6  OrangeRed    // SellArrow
#property indicator_color7  DodgerBlue   // BullDot
#property indicator_color8  OrangeRed    // BearDot
#property indicator_width1  1
#property indicator_width2  1
#property indicator_width3  1
#property indicator_width4  1
#property indicator_width5  3  // BuyArrow
#property indicator_width6  3  // SellArrow
#property indicator_width7  3  // BullDot
#property indicator_width8  3  // BearDot

extern string Notes           = "15pip RangeBars Basic Setup";
extern int    ZigZagDepth     = 12;
extern double RetraceDepthMin = 0.4;
extern double RetraceDepthMax = 1.0;
extern bool   ShowAllLines    = True;
extern bool   ShowAllBreaks   = True;
extern bool   ShowTargets     = False;
extern double Target1Multiply = 1.5;
extern double Target2Multiply = 3.0;
extern bool   HideTransitions = True;

// indicator buffers
double UpperLine[];
double LowerLine[];
double Target1[];
double Target2[];
double BuyArrow[];
double SellArrow[];
double BullDot[];
double BearDot[];

double   firsthigh, firstlow, lasthigh, lastlow, prevhigh, prevlow, signalprice, brokenline;
datetime firsthightime, firstlowtime, lasthightime, lastlowtime, prevhightime, prevlowtime, signaltime;
datetime redrawtime;  // remember when the indicator was redrawn

int     signal;
#define NOSIG   0
#define BUYSIG  1
#define SELLSIG 2

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
{

int i;
for(i=0; i<=7; i++) SetIndexEmptyValue(i,EMPTY_VALUE);
if(ShowAllLines == True) SetIndexStyle(0,DRAW_LINE); else SetIndexStyle(0,DRAW_NONE);
if(ShowAllLines == True) SetIndexStyle(1,DRAW_LINE); else SetIndexStyle(1,DRAW_NONE);
if(ShowTargets == True) SetIndexStyle(2,DRAW_LINE); else SetIndexStyle(2,DRAW_NONE);
if(ShowTargets == True) SetIndexStyle(3,DRAW_LINE); else SetIndexStyle(3,DRAW_NONE);

SetIndexStyle(4,DRAW_ARROW); SetIndexArrow(4,SYMBOL_ARROWUP);
SetIndexStyle(5,DRAW_ARROW); SetIndexArrow(5,SYMBOL_ARROWDOWN);
SetIndexStyle(6,DRAW_ARROW); SetIndexArrow(6,159); // BullDot (WingDings character)
SetIndexStyle(7,DRAW_ARROW); SetIndexArrow(7,159); // BearDot (WingDings character)
SetIndexBuffer(0,UpperLine);
SetIndexBuffer(1,LowerLine);
SetIndexBuffer(2,Target1);
SetIndexBuffer(3,Target2);
SetIndexBuffer(4,BuyArrow);
SetIndexBuffer(5,SellArrow);
SetIndexBuffer(6,BullDot);
SetIndexBuffer(7,BearDot);
IndicatorShortName(INDICATOR_NAME);
IndicatorDigits(Digits);
if(ShowAllLines == True) SetIndexLabel(0,"UpperLine"); else SetIndexLabel(0,"");
if(ShowAllLines == True) SetIndexLabel(1,"LowerLine"); else SetIndexLabel(1,"");
if(ShowTargets == True) SetIndexLabel(2,"Target1"); else SetIndexLabel(2,"");
if(ShowTargets == True) SetIndexLabel(3,"Target2"); else SetIndexLabel(3,"");
SetIndexLabel(4,"BuyArrow");
SetIndexLabel(5,"SellArrow");
SetIndexLabel(6,"");
SetIndexLabel(7,"");
// cleanup display buffers

for(i=0; i<Bars; i++)
   {
   UpperLine = EMPTY_VALUE;
   LowerLine = EMPTY_VALUE;
   Target1 = EMPTY_VALUE;
   Target2 = EMPTY_VALUE;
   BuyArrow = EMPTY_VALUE;
   SellArrow = EMPTY_VALUE;
   BullDot = EMPTY_VALUE;
   BearDot = EMPTY_VALUE;
   }
// message to the experts log (shows in reverse order)
if(IsTesting() == False)
   {
   Print("Copyright © 2010 Robert Dee, All Rights Reserved");   
   Print("Free software for personal non-commercial use only. No guarantees are expressed or implied.");
   Print(INDICATOR_NAME+" indicator version "+INDICATOR_VERSION+" for "+RELEASE_LEVEL+" release, compiled with MetaTrader4 Build "+MT4_BUILD);
   }
Print("Init OK");
   
return(0);   
} // end of init()

//+------------------------------------------------------------------+
//| Status Message prints below OHLC upper left of chart window
//+------------------------------------------------------------------+
void StatusMessage()
   {
   if(IsTesting() == True) return; // do no more
   double multi = MathPow(10,Digits);
   string msg = INDICATOR_NAME+"  "+TimeToStr(TimeCurrent(),TIME_MINUTES)+"  ";
   if(signal == NOSIG) msg = msg + "NOSIG  ";
   if(signal == BUYSIG) msg = msg + "BUYSIG  "+ TimeToStr(signaltime,TIME_MINUTES)+"  "+DoubleToStr(signalprice,Digits)+"  ";
   if(signal == SELLSIG) msg = msg + "SELLSIG  "+ TimeToStr(signaltime,TIME_MINUTES)+"  "+DoubleToStr(signalprice,Digits)+"  ";
   msg = msg + "ZigZagDepth="+ZigZagDepth+"  ";
   //msg = msg + "RetraceDepth="+DoubleToStr(RetraceDepthMin,2)+" "+DoubleToStr(RetraceDepthMax,2)+"  ";
   //msg = msg + "Target1="+DoubleToStr(Target1Multiply,2)+"  ";
   //msg = msg + "Target2="+DoubleToStr(Target2Multiply,2)+"  ";
   msg = msg + "Spread="+DoubleToStr((Ask-Bid)*multi,0)+"  ";
   msg = msg + "Range="+DoubleToStr((High-Low)*multi,0)+"  ";
   Comment(msg);
   }

//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
{
// REDRAW ONLY ONE TIME PER CANDLE
if(redrawtime == Time) {StatusMessage(); return(0);} // if already redrawn on this candle then do no more
else redrawtime = Time;                              // remember when the indicator was redrawn

double   zigzag, range, retracedepth, one, two, three;
datetime onetime, twotime, threetime;
int      shift = Bars-1;
while(shift >= 0)
   {
   // UPPERLINES and LOWERLINES based on ZIGZAG
   UpperLine = UpperLine[shift+1];
   LowerLine = LowerLine[shift+1];
   Target1 = Target1[shift+1];
   Target2 = Target2[shift+1];
   //BuyArrow = EMPTY_VALUE;
   //SellArrow = EMPTY_VALUE;
   BullDot = EMPTY_VALUE;
   BearDot = EMPTY_VALUE;
   zigzag = iCustom(NULL,0,"ZigZag",ZigZagDepth,5,3,0,shift);
   if(zigzag == High)
      {
      UpperLine = High;
      firsthigh = prevhigh; firsthightime = prevhightime;
      prevhigh = lasthigh;  prevhightime = lasthightime;
      lasthigh = zigzag;    lasthightime = Time;
      }
   if(zigzag == Low)
      {
      LowerLine = Low;
      firstlow = prevlow; firstlowtime = prevlowtime;
      prevlow = lastlow;  prevlowtime = lastlowtime;
      lastlow = zigzag;   lastlowtime = Time;
      }

   ///////////////////////////
   // BULLISH BREAK ABOVE #2
   one = prevlow; onetime = prevlowtime;
   two = lasthigh; twotime = lasthightime; if(twotime == Time){two = prevhigh; twotime = prevhightime;}
   three = lastlow; threetime = lastlowtime;
   if(one - two != 0) retracedepth = (three - two) / (one - two);  // retrace depth
   // signal rules
   if(shift > 0)
   if(retracedepth > RetraceDepthMin)                  // minimum retrace depth for 123 pattern
   if(retracedepth < RetraceDepthMax)                  // maximum retrace depth for 123 pattern
   if(brokenline != UpperLine)                  // if this line has not already been broken
   if(Low < UpperLine)                   // low of rangebar is below the line
   if(Close > UpperLine)                 // close of rangebar body is above the line (break)
      {
      range = MathAbs(two - three);                    // range is the distance between two and three
      Target1 = two+(range*Target1Multiply);
      Target2 = two+(range*Target2Multiply);
      BuyArrow = Low-(High-Low)/3;
      BullDot[iBarShift(NULL,0,onetime)] = one;        // ONE
      BullDot[iBarShift(NULL,0,twotime)] = two;        // TWO
      BullDot[iBarShift(NULL,0,threetime)] = three;    // THREE
      signal = BUYSIG;
      signaltime = Time;
      signalprice = BuyArrow;
      brokenline = UpperLine;
      }

   /////////////////////////////////////////////
   // BULLISH BREAK OF UPPERLINE (NOT 123 SETUP)
   // signal rules
   if(shift > 0)
   if(ShowAllBreaks == True)
   if(brokenline != UpperLine)                  // if this line has not already been broken
   if(Low < UpperLine)                   // low of rangebar is below the line
   if(Close > UpperLine)                 // close of rangebar body is above the line (break)
      {
      range = UpperLine-LowerLine;
      Target1 = UpperLine+(range*Target1Multiply);
      Target2 = UpperLine+(range*Target2Multiply);
      BuyArrow = Low-(High-Low)/3;
      signal = BUYSIG;
      signaltime = Time;
      signalprice = BuyArrow;
      brokenline = UpperLine;
      }

   ///////////////////////////
   // BEARISH BREAK BELOW #2
   one = prevhigh; onetime = prevhightime;
   two = lastlow; twotime = lastlowtime; if(twotime == Time){two = prevlow; twotime = prevlowtime;}
   three = lasthigh; threetime = lasthightime;
   if(one - two != 0) retracedepth = (three - two) / (one - two);  // retrace depth
   // signal rules
   if(shift > 0)
   if(retracedepth > RetraceDepthMin)                  // minimum retrace depth for 123 pattern
   if(retracedepth < RetraceDepthMax)                  // maximum retrace depth for 123 pattern
   if(brokenline != LowerLine)                  // if this line has not already been broken
   if(High > LowerLine)                  // high of rangebar is above the line
   if(Close < LowerLine)                 // close of rangebar is below the line (break)
      {
      range = MathAbs(two - three);                    // range is the distance between two and three
      Target1 = two-(range*Target1Multiply);
      Target2 = two-(range*Target2Multiply);
      SellArrow = High+(High-Low)/3;
      BearDot[iBarShift(NULL,0,onetime)] = one;        // ONE
      BearDot[iBarShift(NULL,0,twotime)] = two;        // TWO
      BearDot[iBarShift(NULL,0,threetime)] = three;    // THREE
      signal = SELLSIG;
      signaltime = Time;
      signalprice = SellArrow;
      brokenline = LowerLine;
      }

   /////////////////////////////////////////////
   // BEARISH BREAK OF LOWERLINE (NOT 123 SETUP)
   // signal rules
   if(shift > 0)
   if(ShowAllBreaks == True)
   if(brokenline != LowerLine)                  // if this line has not already been broken
   if(High > LowerLine)                  // high of rangebar is above the line
   if(Close < LowerLine)                 // close of rangebar is below the line (break)
      {
      range = UpperLine-LowerLine;
      Target1 = LowerLine-(range*Target1Multiply);
      Target2 = LowerLine-(range*Target2Multiply);
      SellArrow = High+(High-Low)/3; 
      signal = SELLSIG;
      signaltime = Time;
      signalprice = SellArrow;
      brokenline = LowerLine;
      }

   // TARGET LINE RULES
   if(signal == BUYSIG)
      {
      if(Low > Target1) Target1 = EMPTY_VALUE;
      if(Low > Target2) Target2 = EMPTY_VALUE;
      }
   if(signal == SELLSIG)
      {
      if(High < Target1) Target1 = EMPTY_VALUE;
      if(High < Target2) Target2 = EMPTY_VALUE;
      }

   // HIDE LINE TRANSITIONS
   if(HideTransitions == True)
      {
      if(UpperLine != UpperLine[shift+1]) UpperLine[shift+1] = EMPTY_VALUE;
      if(LowerLine != LowerLine[shift+1]) LowerLine[shift+1] = EMPTY_VALUE;
      if(Target1 != Target1[shift+1]) Target1[shift+1] = EMPTY_VALUE;
      if(Target2 != Target2[shift+1]) Target2[shift+1] = EMPTY_VALUE;
      }

   shift--; // move ahead one candle
   }

// update the status display
   StatusMessage();
   return(0);
}// end of start()

//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
{
// cleanup display buffers
for(int i=0; i<Bars; i++)
   {
   UpperLine = EMPTY_VALUE;
   LowerLine = EMPTY_VALUE;
   Target1 = EMPTY_VALUE;
   Target2 = EMPTY_VALUE;
   BuyArrow = EMPTY_VALUE;
   SellArrow = EMPTY_VALUE;
   BullDot = EMPTY_VALUE;
   BearDot = EMPTY_VALUE;
   }
Comment("");   
return(0);
}// end of deinit()

## Deggit1108 — 2017-07-17 14:51

> Цитата (Cati80):
> Приветик. Да и тестить то вроде ни к чему. Можно сразу в реал :-) Первый же прогон приятно удивил :-)

sell.

## Lexxodessa — 2017-07-17 15:38

> Цитата (Deggit1108):
> sell.

На скрине по ходу больше в бай чем сел ))

## Deggit1108 — 2017-07-17 17:25

> Цитата (Lexxodessa):
> На скрине по ходу больше в бай чем сел ))

Рынок часто показывает нам то, что мы хотим видеть. И это видят 95% тех самых трейдеров.;)

да мне много и не надо. zero lag stoh 5 3 3 на уровне 15 закрепится и мне хватит.

## Deggit1108 — 2017-07-17 18:31

> Цитата (Deggit1108):
> Рынок часто показывает нам то, что мы хотим видеть. И это видят 95% тех самых трейдеров.;)
>
> да мне много и не надо. zero lag stoh 5 3 3 на уровне 15 закрепится и мне хватит.

а может подожду:)

## Lexxodessa — 2017-07-17 19:50

> Цитата (Deggit1108):
> а может подожду:)

Джигит ты на месяц пропал ? )

## Deggit1108 — 2017-07-17 20:03

> Цитата (Lexxodessa):
> Джигит ты на месяц пропал ? )

нет конечно. торговать другие пары тоже можно.

## Fehu — 2017-07-19 18:24

Господа и дамы не поделитесь стрелочником адекватным не рисует который и показывает стрелку на нулевом баре.

## magistr91 — 2017-07-19 19:02

> Цитата (Fehu):
> Господа и дамы не поделитесь стрелочником адекватным не рисует который и показывает стрелку на нулевом баре.

неужели вы такой наивный. то что рабочее или просят деньги или вообще ни светят таковыми скринами даже. а вы вот раз типа попросили и вам хоп и вуаля . ну иногда реально такое пишете что прям улыбнуло

## Fehu — 2017-07-19 19:11

я добрый человек и всегда надеюсь на добрых людей ну а на нет суда нет хоть вас повеселил и то хорошо не зря по клаве пальцами стучал

## ВАСЯ................ — 2017-07-19 19:24

> Цитата (Fehu):
> я добрый человек и всегда надеюсь на добрых людей ну а на нет суда нет хоть вас повеселил и то хорошо не зря по клаве пальцами стучал

ДЕРЖИ БРАТИШКА

## Fehu — 2017-07-19 19:28

> Цитата (ВАСЯ................):
> ДЕРЖИ БРАТИШКА

от Души Благодарю!!!

## Fehu — 2017-07-19 19:50

А вот для чего стрелочник нужен на скрине думаю все понятно
в данном случае стрелки от индикатора Танка Стохастик

## ВАСЯ................ — 2017-07-19 20:05

> Цитата (Fehu):
> А вот для чего стрелочник нужен на скрине думаю все понятно
> в данном случае стрелки от индикатора Танка Стохастик

вот этот ещё можно если  покрутить настройки  и котировки влияют на показатель win  

детишкам конфет не забудьте купить если заработаете

## Fehu — 2017-07-19 20:56

> Цитата (ВАСЯ................):
> вот этот ещё можно если  покрутить настройки  и котировки влияют на показатель win
>
>
>
>
>
>
> детишкам конфет не забудьте купить если заработаете

Обязательно заработаю и куплю Благодарю

## сергей1131 — 2017-07-19 21:33

Не грааль, Таки приходится думать. Уровень, веер, WPR/

## muving — 2017-07-19 21:45

> Цитата (сергей1131):
> Не грааль, Таки приходится думать. Уровень, веер, WPR/

Wpr пощупать можно ?

## сергей1131 — 2017-07-19 22:00

Привет Мувинг. Стыдно мне коллега, что жизнь почти шо прожил, а индики выкладывать таки не научился. На графике WPR multi ( есть в тырнете) и добавил к нему WPR 5 ( для д1 -wpr 8).

---

Следующая страница: https://forexsystemru.com/threads/76901/page-371
