Как использовать Параболик (SAR) в советнике?
Как использовать Параболик (SAR) в советнике?
Haos » 11 авг 2016, 09:13
Для этого я использую заранее написанный мною код, оформленный в отдельную функцию (чтобы легко можно было использовать в новых советниках):
Код: выделить все string f_SARSyg(double ste, double max, int shi)
<
/* Первая точка SAR (Параболика) выше (ниже) цены на основе двух баров (shi и shi + 1)
Параметры:
ste — шаг увеличения скорости — ускорение
max — максимальный коэффициент следования за ценой
shi — кол-во баров назад
Возвращаемые значения:
сигнал на покупку — «UP»
сигнал на продажу — «DN»
нет сигнала — «NO»
*/
double dblSAR_1 = iSAR(«0», 0, ste, max, shi + 1),
dblSAR_0 = iSAR(«0», 0, ste, max, shi);
return(«NO»);
>
Это функция f_SARSyg типа string, которая возвращает три значения («UP», «DN», «NO»). Таким образом, если точка Параболика сменила свое положение сверху-вниз, то это сигнал «UP»; снизу-вверх — «DN». Если смены положения точки не было, то — «NO».
В качестве параметров, которые передаются в функцию f_SARSyg используются три параметра, два из которых определены самим Параболиком (шаг увеличения скорости и максимальный коэффициент следования за ценой), а третий — количество баров назад для поиска сигнала. Т.е. код дает возможность анализировать появление сигнала от смены местоположения точки индикатора Параболик не только на последнем баре, но и на любое допустимое кол-во баров назад. Функция рассчитывает значение индикатора Параболик на указанном номере бара и предыдущим. Сравнение происходит с максимальным и минимальным значением для рассчитываемых двух баров.
Итак, мы рассмотрели применение индикатора Параболик в коде эксперта для получения сигнала на вход в рынок. Использование индикатора Параболик для определения тренда будет рассмотрено далее.
Haos Специалист MQL Сообщений: 19960 Зарегистрирован: 29 мар 2014, 16:07 Средств на руках: 985.10
Группа: Главные модераторы Благодарил (а): 2806 раз. Поблагодарили: 7390 раз.
Re: Как использовать Параболик (SAR) в советнике?
Haos » 15 авг 2016, 17:29
Теперь рассмотрим применение Параболика в коде эксперта для определения тренда. Определить тренд по Параболику не сложно. Для этого нужно проанализировать положение одной точки на указанном баре — находится ли она ниже (бычий тренд) или выше (медвежий тренд) графика цены. В функции, приведенной ниже, определяется тренд на указанном баре (параметр shi). По-прежнему возвращаемым значением будет символьный код в виде:
«UP» — тренд на покупку
«DN» — тренд на продажу
«NO» — нет сигнала
Код: выделить все string f_SARTrend(double ste, double max, int shi)
<
/*
Тренд по SAR (Параболик) на основе указанного (shi) бара — точка выше (ниже) цены.
Параметры:
ste — шаг увеличения скорости — ускорение
max — максимальный коэффициент следования за ценой
shi — кол-во баров назад
Возвращаемые значения:
тренд на покупку — «UP»
тренд на продажу — «DN»
нет сигнала — «NO»
*/
double dblSAR = iSAR(«0», 0, ste, max, shi);
if(dblSAR > Low[shi + 1]) return(«DN»);
if(dblSAR
Определение тренда по Параболику используется в советниках, например, когда применяется два и более Параболика с разными параметрами. При этом более медленный Параболик определяет тренд, а быстрый — определяет моменты входа в рынок в направлении тренда.
На рисунке ниже приведен пример использование совместно быстрого и медленного Параболика.
Haos Специалист MQL Сообщений: 19960 Зарегистрирован: 29 мар 2014, 16:07 Средств на руках: 985.10
Группа: Главные модераторы Благодарил (а): 2806 раз. Поблагодарили: 7390 раз.
Как использовать Параболик (SAR) в советнике?
Haos » 28 окт 2017, 12:14
Трал по Параболику (SAR)
Прежде всего, нужно определиться каковы условия удачного выставления трала по Параболику.
1. Есть уже открытая позиция (позиции). У позиции может быть как СЛ равный нулю, так и не равный нулю.
2.1 Рассмотрим позицию на покупку и Параболик ниже цены. Обозначим значение уже имеющегося у позиции СЛ как СЛ1, а значение СЛ, который должен быть инициирован на текущем баре как СЛ0. Сначала получим значение Параболика на текущем баре, обозначим его SAR0. Для модификации СЛ по Параболику для сделки на покупку необходимо выполнение следующих условий:
— СЛ1 SAR0 (разница между ценой Bid и уровнем минимального расстояние до СЛ (StopLevel) должна быть больше чем значение Параболика на текущем баре, т.е. если точка Параболика получилась ближе к цене чем минимально допустимое расстояние до СЛ, то мы не можем поставить там СЛ. Если не можем — то и не ставим (ждем, например, когда сможем на текущем баре или на следующем).
Вот после соблюдения этих условий можно модифицировать СЛ сделки на покупку.
2.2 Рассмотрим позицию на продажу и Параболик выше цены. Обозначим значение уже имеющегося у позиции СЛ как СЛ1, а значение СЛ, который должен быть инициирован на текущем баре как СЛ0. Сначала получим значение Параболика на текущем баре, обозначим его SAR0. Для модификации СЛ по Параболику для сделки на покупку необходимо выполнение следующих условий:
— СЛ1 > СЛ0 (какой смысл делать СЛ больше чем уже есть?);
— Ask + StopLevel Код: выделить все void f_SARTrall(int op, int mn, double pste, double pmax, int offs)
<
/*
Описание: изменение СЛ позиции на очередном баре по значению Параболика
Используются функции: f__ModifyOrder()
pste — шаг изменения цены — коэффициент ускорения (Параболик)
pmax — максимальный шаг (Параболик)
offs — отступ от точки Пабалика при установке СЛ (пнт.)
*/
double dbl_SL1, dbl_SAR0;
double dbl_SL0;
double dbl_StopLevel = MarketInfo(Symbol(), MODE_STOPLEVEL) * Point;
for(int i = 0; i dbl_SAR0))
<
if(f__ModifyOrder(OrderTicket(), dbl_SL0, -1))
<
Print(Symbol(), » Modify Trailing ok»);
>
else Print(Symbol(), » Modify Trailing fail»);
>
>
if(OrderType() == OP_SELL)
<
dbl_SL0 = dbl_SAR0 + offs * _Point;
if(((dbl_SL1 > dbl_SL0) || dbl_SL1 == 0) && (Ask + dbl_StopLevel
В функции реализована возможность также делать отступ от точки Параболика дополнительно.
Входными параметрами функции f_SARTrall() являются:
— op — тип торговой операции (покупка или продажа);
— mn — мэджик намбер советника;
— pste — шаг изменения цены — коэффициент ускорения (Параболик)
— pmax — максимальный шаг (Параболик)
— offs — отступ от точки Пабалика при установке СЛ (пнт.)
Haos Специалист MQL Сообщений: 19960 Зарегистрирован: 29 мар 2014, 16:07 Средств на руках: 985.10
Группа: Главные модераторы Благодарил (а): 2806 раз. Поблагодарили: 7390 раз.
Как использовать Параболик (SAR) в советнике?
Haos » 28 окт 2017, 12:20
https://investforum.ru/forum/mql-teoriya-i-praktika/kak-ispolzovat-parabolik-sar-v-sovetnike-t2150.html