Индикаторы: Канал Дончиана

 

Канал Дончиана:

Канал Дончиана (Donchian Channel) - это индикатор волатильности, основанный на вычислении текущего ценового диапазона при помощи использования недавних наибольших и наименьших цен. Для вычисления канала Дончиана нужно лишь найти наибольший максимум и наименьший минимум цен за определенный период.

Сам Ричард Дончиан рекомендовал использовать период 20 для построения канала Дончиана. В те времена торговля велась премущественно на дневных графиках, а число 20 - это как раз среднее число дней в месяце. Тем не менее, период 20 оказывается удобным для построения канала Дончиана и на меньших таймфреймах. Интересны также результаты построения канала с периодами 18, 24 и пр. «Черепахи» использовали период 55 (важно уточнить - для входа).

Системы торговли с использованием канала Дончиана в большинстве своем - пробойные, для них характерен небольшой процент прибыльных сделок, которых должно хватить, для того чтобы с лихвой компенсировать убытки от большого количества неудачных входов. В данной версии индикатора (помимо самих верхней и нижней границ) добавлена еще и средняя линия канала.

Автор: Nikolay Kositsin

Индикатор  Donchian Channels

 

Нужно подправить 2 строчки, поставить low вместо выделенных красным high

         case HIGH_LOW_OPEN:

            SsMax=(open[iHighest(open,DonchianPeriod,bar)]+high[iHighest(high,DonchianPeriod,bar)])/2;
            SsMin=(open[iLowest(open,DonchianPeriod,bar)]+low[iLowest(
high,DonchianPeriod,bar)])/2;
            break;

         case HIGH_LOW_CLOSE:
            SsMax=(close[iHighest(close,DonchianPeriod,bar)]+high[iHighest(high,DonchianPeriod,bar)])/2;
            SsMin=(close[iLowest(close,DonchianPeriod,bar)]+low[iLowest(high,DonchianPeriod,bar)])/2;
            break;
 
Stonev:

 

Да! Пожалуй, так будет логичнее.
 

Базовая стратегия прорыва на Форекс

Рубрика:

  • Советы по поиску уровней поддержки и сопротивления на Форекс.
  • Научитесь входить в прорывы на Форекс, используя каналы Дончиана.
  • Составьте торговый план по прорыву со стоп-ордерами.

Рынок Forex известен своими сильными трендами, что может сделать торговлю по стратегии прорыва эффективным подходом к рынку. Обычно первым шагом любой стратегии прорыва является определение ключевых уровней поддержки и сопротивления для валютной пары. Сегодня мы рассмотрим использование Каналов Дончиана именно для этой цели, выполнив при этом торговый сетап на GBPUSD.

Давайте начнем!


Торговля каналами Дончиана

Каналы Дончиана могут быть применены к любому графику для экстраполяции текущих уровней поддержки и сопротивления. Для этого они четко определяют максимумы и минимумы на графике, созданном за выбранное количество периодов. Выше мы видим, как каналы Дончиана применяются к 4-часовому графику GBPUSD, используя настройку 20 периодов. Линии канала выделяют текущие значения максимума и минимума за 20 периодов, которые можно использовать в качестве поддержки и сопротивления при торговле на прорывах. Трейдеры, торгующие на прорывах при нисходящем тренде, будут искать прорыв цены ниже нижнего канала, прежде чем создавать новые входы в направлении тренда. То же самое справедливо и для восходящего тренда, когда трейдеры будут определять верхний канал как потенциальную область для входа в рынок.

Поскольку цена GBPUSD снизилась на 346 пунктов за октябрь, многие трейдеры захотят найти новые позиции для продажи пары при прорыве к более низким минимумам. Поскольку текущий минимум уже определен каналами Дончиана на уровне 1,5913, трейдеры могут начать готовиться к прорыву ниже этого значения. Как показано на рисунке ниже, вы можете найти примерный сетап прорыва. Входные ордера на продажу GBPUSD можно размещать минимум на один пункт ниже уровня поддержки, чтобы трейдеры вошли в рынок при прорыве к более низким минимумам.


Установка риска

Как и в любой другой стратегии, трейдеры, торгующие на прорывах, должны включать в свою торговлю стопы. При использовании каналов Дончиана этот процесс можно сделать очень простым. Помните, как верхний ценовой канал (представляющий собой максимум 20-го периода) выступает в качестве области сопротивления? В нисходящем тренде ожидается, что цена достигнет более низких минимумов и останется ниже этого значения. Если будет сформирован новый максимум с прорывом верхнего канала, трейдеры захотят выйти из своих позиций. Трейдеры также могут захотеть вручную переместить стоп-приказ, чтобы зафиксировать прибыль при продолжении тренда. Торговый совет, который могут использовать трейдеры, торгующие на прорывах, заключается в перемещении этого установленного стопа вместе с уменьшающимся ценовым каналом по мере того, как торговля идет в их пользу.

 

Форум о трейдинге, автоматизированных торговых системах и тестировании торговых стратегий

Индикаторы: Канал Дончиана

newdigital, 2014.01.18 07:34

Как использовать каналы Дончиана (адаптировано из статьи на dailyfx)

  • Сначала найдите тренд, чтобы определить тенденцию
  • Научитесь входить в прорывы на Форекс, используя каналы Дончиана.
  • Каналы можно использовать для отслеживания стопа и фиксации прибыли.

Рынок Forex известен своими сильными трендами, что может сделать торговлю на прорывах уровней поддержки и сопротивления эффективным подходом к рынку. Чтобы спланировать такие рыночные условия, сегодня мы рассмотрим трехшаговую стратегию прорыва с использованием каналов Дончиана.

Найдите тренд

Первый шаг к торговле по тренду - найти тренд! Есть много способов определить тренд, изображенный ниже, но один из самых простых - это использование 200-периодной MVA (скользящей средней). Для начала добавьте этот индикатор на свой график, а затем посмотрите, находится ли цена выше или ниже средней. Так мы определим тренд и нашу торговую тенденцию.

Учитывая вышеизложенную информацию, трейдерам следует искать возможности для покупки EURJPY в рамках текущего восходящего тренда, поскольку цена находится выше средней. Также и AUDNZD, изображенный ниже, предлагает возможности для продажи, так как цена пары находится ниже 200-периодной MVA. Как только мы получим эту информацию, мы сможем спланировать места входа для потенциального прорыва.


Торговля каналами Дончиана

Каналы Дончиана - это технический инструмент, который может быть применен к любому графику. Они используются для определения текущих уровней поддержки и сопротивления путем выявления на графике высоких и низких цен за выбранное количество периодов. Для сегодняшней стратегии мы будем использовать 20 периодов, что означает, что каналы будут использоваться для определения 20-дневных максимумов и минимумов цены.

Поскольку цена EURJPY торгуется выше 200 MVA, трейдеры захотят определить новые позиции для покупки пары при прорыве к более высоким максимумам. С нашим текущим 20-дневным максимумом, определенным каналами Дончиана на отметке 145.68, трейдеры могут установить вход для покупки EURJPY на один пункт выше этого значения.


Процесс открытия позиций на продажу в нисходящем тренде прямо противоположен. Снова обратимся к дневному графику AUD/NZD, изображенному ниже. Поскольку цена находится ниже 200 MVA, трейдеры будут искать возможность продать пару в случае формирования ценой нового 20-дневного минимума. В настоящее время этот минимум находится на уровне .8775, и трейдеры могут открывать новые позиции на продажу под этим значением.


Установка риска и трейлинг-стопов

При торговле по любой стратегии необходимо учитывать установку стопов и управление риском. При использовании каналов Дончиана этот процесс может быть упрощен. Помните, как наши ценовые каналы (представляющие собой 20-дневный максимум или минимум) выступают в качестве области поддержки или сопротивления? В восходящем тренде ожидается, что цена будет двигаться к более высоким максимумам и оставаться выше этого значения. Если цена пройдет через нижний канал, представляющий собой новый 20-дневный минимум, трейдеры захотят выйти из любых длинных позиций. И наоборот, при нисходящем тренде трейдеры захотят разместить стоп-ордера на текущем максимуме 20-дневного периода. Таким образом, трейдеры будут выходить из коротких позиций при достижении нового максимума.

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


 

Форум о трейдинге, автоматизированных торговых системах и тестировании торговых стратегий

Индикаторы: Канал Дончиана

newdigital, 2014.01.18 07:39

После прочтения этой статьи (выше) - вы/мы можете открыть график D1, прикрепить индикатор Donchian Channel (см. первое сообщение этой темы), прикрепить MA с периодом 200/метод simple.apply to close (этот индикатор по умолчанию в Metatrader 5) - и мы можем сделать несколько практик (когда рынок будет открыт). У вас должны получиться похожие графики после прикрепления этих двух индикаторов:



После этого перечитайте эту статью, используя графики Metatrader.

Это все новости


 

Уважаемые все,

Спасибо, что сделали этот код каналов Дончиана доступным для MT5:

https://www.mql5.com/ru/code/402?utm_campaign=MetaTrader+5+Terminal&utm_medium=special&utm_source=mt5terminal+codebase

Будет ли этот код доступен для MT4?

Для MT4 действительно есть коды каналов Donchain, но не такие, как этот, так как меня интересует настройка"Тип экстремальных точек":

enum Applied_Extrem //Тип экстремальных точек
{
HIGH_LOW,
HIGH_LOW_OPEN,
HIGH_LOW_CLOSE,
OPEN_HIGH_LOW,
CLOSE_HIGH_LOW
};


Большое спасибо за ответ.

Луис

Donchian Channels
Donchian Channels
  • голосов: 19
  • 2011.08.05
  • Nikolay Kositsin
  • www.mql5.com
Donchian Channels is a volatility indicator based on the calculation of the current price range with using the recent highest and lowest prices.
 

Кто-нибудь знает, почему при использовании этого индикатора для создания советника бэктест занимает так много времени?

Я вызываю этот индикатор с "iCustom()", и нет никакой ошибки, и робот делает то, что задумано, но время бэктестинга "очень долгое". Это намного больше, чем у любого робота, которого я создал, и я не уверен, почему.

Спасибо!

 

Потому что он перезванивает 20 (обычно) свечей на каждом тике.

Должно быть очевидно, что это требует времени.

 

Этот индикатор работает корректно, только если маржа установлена на 0, цвета недействительны, все устарело.


Вот переработанная, с сокращенным кодом, версия. 86 строк вместо 232.

//+------------------------------------------------------------------+
//|DCCH.mq5 |
//|Copyright © 2018 Ing. Отто Паузер |
//| https://www.mql5.com/ru/users/kronenchakra |
//+------------------------------------------------------------------+
#property copyright     "Copyright © 2019 Ing. Otto Pauser"
#property link          "https://www.mql5.com/ru/users/kronenchakra"
#property version       "1.0"
#property description   "DCCH - Donchian Channel corrected and simplified"

#property indicator_chart_window
#property indicator_buffers 3
#property indicator_plots   3

//+------------------------------------------------------------------+
input int   inp_Period     =           20;   // Период
input int   inp_Offset     =            0;   // Смещение (пункты)
input int   inp_Shift      =            0;   // Смена
input int   inp_LineWidth  =            2;   // Ширина линии
input color inp_lineColor  = clrSteelBlue;   // Linecolour
//+------------------------------------------------------------------+

double buUpper[];
double buMidle[];
double buLower[];

double upper,lower,offset;
int    first,bar;

//+------------------------------------------------------------------+
void OnInit()
{
   InitBuffer(buUpper,"Donchian Upper");
   InitBuffer(buMidle,"Donchian Center");
   InitBuffer(buLower,"Donchian Lower");
   IndicatorSetString(INDICATOR_SHORTNAME,"Donchian("+IntegerToString(inp_Period)+")");
   offset=inp_Offset*_Point;
}

//+------------------------------------------------------------------+
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(rates_total<inp_Period+1) return(0);

   first=(prev_calculated==0)?inp_Period:prev_calculated-1;

   for(bar=first; bar<rates_total; bar++)
      {
         upper=high[ArrayMaximum(high,bar-inp_Period+1,inp_Period)];
         lower=low [ArrayMinimum(low ,bar-inp_Period+1,inp_Period)];
         buUpper[bar]=upper+offset;
         buLower[bar]=lower-offset;
         buMidle[bar]=(upper+lower)*0.5;
      }

   return(rates_total);
}

//+------------------------------------------------------------------+
//| может быть передана на аутсорсинг .mqh|
//+------------------------------------------------------------------+
void InitBuffer(double &buffer[], string plotlabel)
{
   static int bufferindex=0;
   SetIndexBuffer     (bufferindex,buffer,INDICATOR_DATA);

   PlotIndexSetInteger(bufferindex,PLOT_DRAW_TYPE ,DRAW_LINE);
   PlotIndexSetInteger(bufferindex,PLOT_LINE_STYLE,STYLE_SOLID);
   PlotIndexSetInteger(bufferindex,PLOT_LINE_WIDTH,inp_LineWidth);
   PlotIndexSetInteger(bufferindex,PLOT_LINE_COLOR,inp_lineColor);
   PlotIndexSetString (bufferindex,PLOT_LABEL     ,plotlabel);
   PlotIndexSetInteger(bufferindex,PLOT_SHIFT     ,inp_Shift);
   PlotIndexSetInteger(bufferindex,PLOT_DRAW_BEGIN,inp_Period-1);
   PlotIndexSetDouble (bufferindex,PLOT_EMPTY_VALUE,EMPTY_VALUE);

   bufferindex++;
}
Файлы:
DCCH.mq5  7 kb
 

Я полный новичок в выведении индикаторов на экспертов, может ли кто-нибудь помочь мне получить правильную кодировку для вызова верхнего, среднего и нижнего диапазонов?


Спасибо, ребята, и извините за вопрос для новичков, первый раз.