Уровни Camarilla для дейтрейдинга

Опубликовано в AmiBroker

Популярный канальный индикатор Camarilla и его реализация для AmiBroker

Индикатор Camarilla применяется с целью выявления разворотных точек тренда. То есть в основе данного индикатора лежит идея разворотных уровней или разворотных точек, впервые предложенная еще в 30-е годы Г. В. Чейзом. А сам принцип индикатора Camarilla впервые сформулировал в 1989 г. трейдер Ник Скотт. Звучит он довольно просто – рынок имеет тенденцию возвращаться к своему среднему значению. То есть, совершив вчера некоторые ценовые движения, рынок сегодня, скорее всего рано или поздно вернется к цене закрытия вчерашнего торгового дня. Используем эту закономерность для прогнозирования в трейдинге.


Есть несколько вариантов данного индикатора, отличающихся числом уровней и другими деталями. Остановимся на версии Camarilla Equation.

В индикаторе Camarilla Equation используются несколько уровней (от 5 до 10) в зависимости от модификации самого индикатора. Эти уровни поделены на две группы:

  • первая группа уровней откладывается вверх от цены закрытия вчерашней торговой сессии. Обозначается H (от слова «high»). Нумеруется от 1 до 5.
  • вторая группа уровней откладывается вниз от цены закрытия вчерашней сессии. Обозначается буквой L (от “Low”). Нумеруется от 1 до 5.

 

Формула расчета индикатора Camarilla

 

Для расчета уровней индикатора Camarilla Equation необходимы:

  1. максимальные и минимальные цены предыдущего дня
  2. цены закрытия предыдущего дня.

 

Если индикатор строится по ценам, например, недельным или H4, то цены берутся соответственно этих временных промежутков. Правила торговли ничем не отличаются.


Уровни индикатора Camarilla Equation вычисляются по следующим формулам:

 

H1= c + (h-l)*1.1 /12
H2= c + (h-l)*1.1 /6
H3= c + (h-l)*1.1 /4
H4= c + (h-l)*1.1 /2
H5 = (h/l)*c

 

L1= c — (h-l)*1.1 /12
L2= c — (h-low)*1.1 /6
L3= c — (h-l)*1.1 /4
L4= c — (h-l)*1.1 /2
L5 = c — (H5 — c)

 

где:

  • с - цена закрытия
  • h -максимальная цена
  • l - минимальная цена

Стратегия торговли с помощью индикатора Camarilla

Наиболее предпочтительно рассматривать уровни Camarilla Equation как совокупность трех коридоров, образованных вокруг цены закрытия вчерашней сессии. Коридоры вложены один в другой.

Camarilla
 Таким образом, таким образом, сигналы можно поделить на следующие группы, в зависимости от того , где они образовались.

1. Внутренний коридор L3-H3

2. Внешний коридор L4-H4

3. Промежуток между коридорами L3-H3 и L4-H4 является буферной зоной, торговля в котором противопоказана.
4. Целевой коридор L5-H5 источником торговых сигналов не является и используется для установки величины тейк-профита при открытии сделок по сигналам второго типа.

Сигналы индикатора можно поделить также на два вида:

Уровни L3-P и P-H3, являются внутренним коридором, цена может колебаться в этом диапазоне. Если же цена пробивает уровень H3 и устремляется вверх, то при последующем откате ставим ордер на покупку. Аналогично и с продажей. Если цена пробивает уровень L3 и закрепляется, то ставим ордер на продажу.


Случается, что цена, отскочив от уровня H3, устремляется вниз к L3 - торговля во внутреннем коридоре не рекомендуется.


Camarilla

Цель движения – следующий уровень индикатора, на котором можно прикрыть часть позиции. На оставшуюся часть поставить трейлинг-стоп.

Необходимо понимать, что как и любой индикатор, Camarilla не идеален и не дает стопроцентной успешности сделок. В таком случае, необходимо пользоваться подтверждающими сигналами других индикаторов.

Ниже привожу формулу для дневной торговли, реализованной в Amibroker. Работает в Амиброкере версии 5.3 и более поздних.

 

_SECTION_BEGIN("Draw Camarilla Levels");
SetChartOptions(0,chartShowArrows|chartShowDates);
showcamarella=ParamList("Show Camarella Lines","YES|NO");
showcandlechart=ParamList("Show Candle chart","YES|NO");
showwhat=IIf(ParamList("Todays or Tomorrows Levels","Today|Tomorrow")=="Tomorrow",1,-1);

if (showcandlechart=="YES")
{
Plot( C, "Close", ParamColor("Color", colorWhite ), styleNoTitle | ParamStyle("Style") | GetPriceStyle() );
}
EMA10=EMA(C,10);
EMA3=EMA(C,3);
Plot(EMA10,"EMA10", colorWhite,styleLine|styleNoLabel);
Plot(EMA3,"EMA3", colorGreen,styleLine|styleNoLabel);

XH = TimeFrameGetPrice( "H", inDaily,showwhat);
XL = TimeFrameGetPrice( "L", inDaily,showwhat);
XC = TimeFrameGetPrice( "C", inDaily, showwhat );

 

r2=(((xh-xl)*1.1)/2)+xc;
r1=(((xh-xl)*1.1)/4)+xc;
s1=(xc-((xh-xl)*1.1)/4);
s2=(xc-((xh-xl)*1.1)/2);
n3=1;
tgt1=(1+.005*n3)*r2;
tgt2=(1+.01*n3)*r2;
tgt3=s2/(1+.005*n3);
tgt4=s2/(1+.01*n3);


if (showcamarella=="YES")
{
Plot(r1,"R1",colorGreen,styleLine|styleDashed|styleNoTitle);
Plot(r2,"R2",colorGreen,styleLine|styleDashed|styleNoTitle);
Plot(s1,"S1",colorRed,styleLine|styleDashed|styleNoTitle);
Plot(s2,"S2",colorRed,styleLine|styleDashed|styleNoTitle);
Plot(tgt1,"tgt1",colorYellow,styleLine|styleDashed|styleNoTitle);
Plot(tgt2,"tgt2",colorYellow,styleLine|styleDashed|styleNoTitle);
Plot(tgt3,"tgt3",colorYellow,styleLine|styleDashed|styleNoTitle);
Plot(tgt4,"tgt4",colorYellow,styleLine|styleDashed|styleNoTitle);
Plot(s1+(0.85*(r1-s1)),"int long target 2",colorBlue,styleLine|styleDashed|styleNoTitle);
Plot(s1+(0.65*(r1-s1)),"int long target 1",colorBlue,styleLine|styleDashed|styleNoTitle);
Plot(s1+(0.35*(r1-s1)),"int short target 1",colorPink,styleLine|styleDashed|styleNoTitle);
Plot(s1+(0.15*(r1-s1)),"int short target 2",colorPink,styleLine|styleDashed|styleNoTitle);
Buy=Cross(C,s1) OR Cross(C,r1) OR Cross(C,r2);
Sell=Cross(r1,C) OR Cross(s1,C) OR Cross(s2,C);
shape = Buy * shapeUpArrow + Sell * shapeDownArrow;
PlotShapes( shape, IIf( Buy, colorLime, colorRed ), 0, IIf( Buy, Low, High));
}

В заключение. Стратегия замечательно автоматизируется (например, при помощи AmiSharp).

Недостаточно прав для комментирования