АвторСообщение



Сообщение: 114
Зарегистрирован: 17.10.14
Репутация: 0
ссылка на сообщение  Отправлено: 17.06.16 20:16. Заголовок: Адаптивная скользящая средняя


Недавно узнал об адаптивной скользящей средней (adaptive moving average - АМА ) и собираюсь здесь рассказать о ней. АМА в отличие от обычной СС имеет переменный период усреднения. При тренде период уменьшается, АМА как бы прижимается к ценам и ее запаздывание минимально. Во флэте период увеличивается, и АМА идет почти горизонтально. Благодаря этому уменьшается количество ложных сигналов при флэте и возрастании шума. Подробнее об этом рассказано в нижеследующем блоке.

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 8 [только новые]





Сообщение: 115
Зарегистрирован: 17.10.14
Репутация: 0
ссылка на сообщение  Отправлено: 17.06.16 20:41. Заголовок: Описание АМА


На рисунке показан индикатор АМА и для сравнения ЕМА с периодом 15. Видно, что ЕМА ведет себя на флэте хуже.



Можете скачать индикатор АМА моего производства my_Ind_ama_t.mq4 (пароль stoletov) или чужой из интернета.

Об АМА упоминается в книге Ван Тарпа "Трейдинг -ваш путь к финансовой свободе", стр 247-250. Ван Тарп ссылается на книгу Perry Kaufman "Smarter Trading", что переводится как "(более) умный трейдинг". В ней на стр. 133-152 дано подробное описание АМА, правда на английском. Кауфман и придумал эту самую АМА еще в 90-е годы.

Рассчитывается АМА следующим образом.

Вначале определяется коэффициент эффективности Кэф по формуле



где Pn и Pi - цена закрытия n и i баров назад, Pо- текущая цена.
В числителе стоит модуль изменения цены закрытия за n баров, а в знаменателе сумма модулей изменений цены закрытия смежных баров от n-го бара до текущего бара.
Кэф показывает степень направленности изменения цены. При выраженном тренде Кэф стремится к 1, а при флэте и сильном шуме к 0. Автор предлагает выбрать n=10.

Затем находятся две константы сглаживания (smoothing constant) по формуле SC=2/(N+1), где N - период усреднения (число баров): быстрая для N=2 и медленная для N=30: SC2=2/(2+1)=0.66667, SC30=2/(30+1)=0.06452.

Затем рассчитывается шкалированная константа сглаживания по формуле
SC=Кэф*( SC2- SC30)+ SC30=0,60215* Кэф+0,06452

Наконец АМА вычисляется по формуле
АМА=АМА1+ SC^2*( Pо - АМА1)
где АМА1 - значение АМА на предыдущем баре

АМА похожа на экспоненциальную скользящую среднюю (ЕМА) с переменным периодом N, которая вычисляется по формуле
ЕМА= Pо*К+ ЕМА1*(1-К)= ЕМА1+К*( Pо - ЕМА1), где К=2/(N+1)
Но у АМА в отличие от ЕМА множитель SC возводится в квадрат. Это делается для того, чтобы при флэте приблизить АМА к горизонтальной линии еще сильнее и за счет этого уменьшить количество ложных сигналов.

Вначале для первых самых старых n баров АМА приравнивается к цене закрытия, т.к. для вычисления АМА нужен Кэф, который можно вычислить, имея историю по крайней мере из n баров.

Торговля осуществляется так. Сигнал на покупку - АМА поворачивает вверх, а на продажу - АМА поворачивает вниз, причем на определенную величину F по отношению кпредыдущему бару. Эту величину автор называет фильтром, который вычисляется по формуле



где Кв - множитель волатильности, m - период счета (количество баров)

Фильтр F характеризует волатильность цен. Под корнем стоит среднеквадратичное отклонение (СКО) разностей АМА смежных баров от m-го бара до текущего бара. Такая форма записи СКО сокращает время счета на компьютере - по мере перехода к новому бару надо лишь вычесть задний член и добавить передний (от текущего бара) .
Автор предлагает выбрать m=20, а Кв для форекса 100% и для акций 10%. Иными словами для форекса надо брать Кв=1.
Закрывать сделку автор предлагает, когда коэффициент эффективности Кэф достигнет 0,8. Это соответствует сильному тренду, а значит скоро произойдет разворот. По моему это не очень хороший подход - ведь Кэф может и не достигнуть 0,8 и тогда сделка вообще непонятно когда закроется. В то же время в своей таблице расчетов автор отмечает, что фильтр используется и для закрытия. Это значит, что всегда будет открыта либо buy либо sell и будет то и дело происходить переворот. На мой взгляд это тоже плохо, т.к. при постоянном нахождении в позиции риск возрастает.

Я провел тестирование описанного метода для 6 главных пар c долларом на часовом графике в режиме «все тики» с 01.01.2015 до 16.06.2016. Были закачаны минутные бары на этот период с запасом (с 2014 года). Спред с комиссией был принят одинаковым для всех пар - 15 пятизначных пунктов. Расчет проводился при n=10, m=20, Кв=1, lot=0,01, без стоп-лосса. Для закрытия использовался тот же фильтр F, что и для открытия. Можете скачать мою процедуру вычисления торговых критериев crit_ama.mqh (пароль stoletov). Она вставляется в эксперт директивой include (за основу взят эксперт usualexpert.mq4 из учебника Ковалева).

Результаты тестирования приведены ниже. Пробовал вместо переменного фильтра F использовать постоянное число, с таким расчетом, чтобы количество сделок было примерно то же. Результаты при постоянном фильтре были хуже. Казалось бы, переменный фильтр F во время флэта примет малое значение и будет много ложных сигналов, но этого не происходит! Если закрывать в момент поворота АМА в обратную сторону (не на величину фильтра F), то результаты ухудшаются Интересно, что если закрывать при повороте АМА на величину С*F, где 0,3<С<1, то результаты примерно одинаковы, а ухудшаются они при приближении С к нулю . Если уменьшить m с 20 до 10, то результаты тоже ухудшаются. А вот Кв=1 не самый лучший выбор. При Кв=2-3 результаты лучше для всех пар.

В целом результаты тестирования особо не впечатляют. Отношение profit / loss для одних пар чуть больше 1, а для других меньше 1. В реальности может быть еще хуже, учитывая проскальзывания. На графиках видны большие просадки. Хотя средний размер прибыльной сделки примерно в 2 раза больше размера убыточной, зато прибыльных сделок всего около 30 %. Это видимо характерно для любой тренд-следящей системы. Ведь тренд занимает немного времени и часто обламывается, увеличивая количество ложных сигналов.

Кто дочитал до этого места, тому домашнее задание - придумать дополнительный фильтр, который отсечет плохие сделки и повысит прибыльность. ' '



В таблице результатов обозначения столбцов означают следующее:

n – количество сделок
p/l – прибыльность
prof – чистая прибыль
%pr – процент прибыльных сделок
pav – средняя прибыльная сделка
lav – средняя убыточная сделка
pmax – максимальная прибыльная сделка
lmax – максимальная убыточная сделка
deep – абсолютная просадка
gap – максимальная просадка
mat – матожидание выигрыша



Спасибо: 1 
ПрофильЦитата Ответить





Сообщение: 2222
Зарегистрирован: 03.03.13
Откуда: Украина, Днепродзержинск
Репутация: 3
ссылка на сообщение  Отправлено: 28.06.16 17:49. Заголовок: Stoletov пишет: Кто..


Stoletov пишет:

 цитата:
Кто дочитал до этого места, тому домашнее задание - придумать дополнительный фильтр, который отсечет плохие сделки и повысит прибыльность.


Если исключить эмоциональную составляющую из постов neval'a, то он прав: отсекая каким-либо фильтром убыточные сделки мы тем самым отсекаем и часть прибыльных сделок. То есть здесь та же самая палка о двух концах, как и в любой другой стратегии.

Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 118
Зарегистрирован: 17.10.14
Репутация: 0
ссылка на сообщение  Отправлено: 29.06.16 21:27. Заголовок: Scriptong пишет: Ес..


Scriptong пишет:

 цитата:
Если исключить эмоциональную составляющую из постов neval'a, то он прав: отсекая каким-либо фильтром убыточные сделки мы тем самым отсекаем и часть прибыльных сделок. То есть здесь та же самая палка о двух концах, как и в любой другой стратегии.


Смотря какой фильтр. В нашем примере фильтр Кауфмана состоит в том, чтобы открывать не просто при повороте линии АМА, а при повороте на переменную величину F, зависящую от волатильности. Хотя этот фильтр и уменьшает размер прибыльных сделок и возможно отсекает часть из них, зато еще в большей степени он отсекает убыточные сделки. В результате на всех парах прибыльность с данным фильтром заметно больше, причем на разных таймфреймах и при разных параметрах, в. т.ч. разных периодах фильтра m.
Как пишет Кауфман, система хороша, если она прибыльна при широком изменении параметров. Я бы добавил к этому, что фильтр хорош, если он дает улучшение при широком изменении параметра фильтра.


Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 2226
Зарегистрирован: 03.03.13
Откуда: Украина, Днепродзержинск
Репутация: 3
ссылка на сообщение  Отправлено: 30.06.16 10:07. Заголовок: Stoletov пишет: Хот..


Stoletov пишет:

 цитата:
Хотя этот фильтр и уменьшает размер прибыльных сделок и возможно отсекает часть из них, зато еще в большей степени он отсекает убыточные сделки.


Так и я о том же - не бывает фильтра, который отсекает только убыточные сделки
А вот качество фильтра (относительно большое отсечение убыточных сделок при относительно малом отсечении прибыльных) - другой разговор.

Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 466
Зарегистрирован: 24.12.14
Репутация: 1
ссылка на сообщение  Отправлено: 18.06.16 15:26. Заголовок: это самообман. Адапт..


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

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



Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 116
Зарегистрирован: 17.10.14
Репутация: 0
ссылка на сообщение  Отправлено: 20.06.16 15:47. Заголовок: neval пишет: это бы..


neval пишет:

 цитата:
это была первая беда, а вторая беда, так как вы и остальное стадо трейдеров хочет применять индикаторов - никогда ничего неполучится.


Речь не идет о том, чтобы полностью довериться индикатору и всем его сигналам. Индикатор помогает нагляднее представить картину, а решение об открытии принимается с учетом и других факторов - уровни поддержки/сопротивления, фигуры, объемы, новости и т.д. Можно конечно температуру больного определить на ощупь, но если у самого врача температура, то такой метод не приведет к успеху, поэтому лучше применить градусник – индикатор температуры.

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

neval пишет:

 цитата:
это самообман. Адаптивная машка ни чем не лучше или хуже обычной машки и обе они безполезны.


Что касается того, лучше АМА или хуже, чем например ЕМА, то такое сравнение провести сложно. Их можно было бы сравнить, если задать одинаковые периоды усреднения. Но у АМА нет конкретного периода усреднения – при выбранных N=2 и 30 он меняется от 4 до 900 (т.к. константа сглаживания возводится в квадрат). Если у ЕМА перебрать все периоды от 4 до 900, то иногда ЕМА будет вероятно лучше АМА.

Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 467
Зарегистрирован: 24.12.14
Репутация: 1
ссылка на сообщение  Отправлено: 18.06.16 15:28. Заголовок: это была первая беда..


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

Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 117
Зарегистрирован: 17.10.14
Репутация: 0
ссылка на сообщение  Отправлено: 22.06.16 18:49. Заголовок: корректировка формулы для фильтра


В предыдущем блоке описания АМА допущена ошибка в формуле для фильтра F. В формуле должны стоять значения АМА, а не цены закрытия. Правильная формула выглядит так.



Фильтр в процедуре советника crit_ama.mqh запрограммирован правильно, и результаты тестирования с графиками можно считать верными.

Формула для фильтра в основном блоке исправлена.

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  2 час. Хитов сегодня: 15
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет