TradingView
DenCrypto
6 de Dez de 2018 16:59

Прорывные стратегии. 

Bitcoin / US Dollar IndexBitMEX

Descrição

Добрый день. Решил написать о прорывных стратегиях для алгоритмического трейдинга. Эта статья будет интересна только ботоводам. Я рассматриваю только биржу Bitmex, под неё и заточены боты.
Итак, прорывные стратегии, или стратегии прорыва - это отдельный вид алгоритма, который торгует прорыв определенных уровней, т.е. сделку открывает при пересечении ценой заданного уровня. Если цена проходит верхний уровень снизу вверх, открывается сделка на покупку, и остаётся открытой до момента пересечения нижнего уровня, который меняется со временем. При пересечении нижнего уровня закрывается сделка на покупку и открывается сделка на продажу, и так далее.
Самый простой вариант такой стратегии выложен в разделе “Built-in” стандартных индикаторов Tradingview. Называется ChannelBreakoutStrategy. Алгоритм простой - берутся простые максимумы и минимумы за определенный, заданный в параметрах, период, и эти экстремумы и являются теми самыми границами канала. Такая же стратегия есть у Noro, но с ограничителями по времени действия и с прикрученным мартингейлом, называется Breakout Strategy. Бот на такой стратегии показывает прекрасные результаты на 4-хчасовых таймфреймах. За 10 месяцев 2018 года даёт 464% прибыли с учётом комиссии биржи 0,075%, с просадкой в 18%. Однако основной заработок тут получается в начале года, когда волатильность была высокой, и отрицательный результат во время флэта, например в сентябре. Я пробовал эту стратегию на малых таймфреймах, например 5 минут и 7 минут. Однако в этом случае необходимо пользоваться антикомиссией маркетмейкера, имеющейся на бирже Bitmex, ибо иначе комиссия биржи съедает всю прибыль. Тут более сложный механизм выставления ордеров, ведь помимо выставления самого ордера необходимо, чтобы бот следил за его положением в стакане и всегда держал его в самом верху стакана. Такой бот принес мне ошеломительные 12х в июле, хотя основная заслуга тут в очень агрессивном использовании , но начал приносить существенные убытки в августе и сентябре во время изнуряющего флэта. Причем бэктестинг показывает прибыль и во время флэта. Однако сквизы убивают всю прибыль, ведь маркетмейкеру важно не только выставить ордер, но и чтобы этот ордер кто-то исполнил.
Таким образом я пришел к выводу, что данная стратегия работает только на больших таймфреймах, таких как 1 час и больше, когда экономически целесообразно платить комиссию бирже для немедленного исполнения заявок по маркету.

Я пошел дальше, и решил попробовать иные варианты построения каналов для данного алгоритма. Один из таких вариантов - стратегия прорыва волатильности. Скрипт стратегии я приложил к данной статье. Стратегия называется Low Volatility v2.0. Принцип я подсмотрел на одном американском сайте. Я немного усовершенствовал стратегию, поэтому она имеет версию 2.0. Принцип довольно простой - верхняя граница канала является high последней свечи плюс значение индекса ATR(Average True Range), умноженный на коэффициент, задаваемый в параметрах. Длина индекса также задается в параметрах. Нижняя граница канала - Low последней свечи минус индекс ATR, также умноженный на коэффициент. Этот алгоритм, как и простой Breakout, плохо работает на малых таймфреймах и даёт приличный результат на больших. Прибыль за 10 месяцев 2018 года 308%.
Есть и другие варианты построения каналов. Например скользящая средняя, построенная по хаям свечей и по лоям. Однако тут лучше всего подходит “хитрая” скользящая средняя, ибо обычные или экспоненциальные слишком отстают от движения цены. Даже адаптивные скользящие средние, например МА Юрика, не дают хорошего результата, хотя я тут еще буду экспериментировать.
Но самый лучший результат у меня получился при использовании линейной регрессии для построения канала. Ведь, как известно, линейная регрессия лучше всех остальных инструментов реагирует на изменение тренда. О вариантах применения линейной регрессии я расскажу в других постах, если будет интерес читателей.
Есть еще один вариант использования прорывной стратегии - прорыв индикатора ZigZag. Такую стратегию предложил Noro. Стратегия даёт шикарный результат при очень малой просадке.

Важно понимать один факт. Все виды прорывных стратегий хорошо работают только на высоковолатильном рынке и дают убыток во время флета, ведь шорт открывается по нижней границе канала, а лонг - по верхней границе. Поэтому слепо верить в прорывные стратегии не стоит.
Также стоит отметить, что при оценке эффективности стратегии самым весомым параметром является не доходность, а максимальная просадка, которую допускает стратегия на исторических данных. Я придумал показатель, характеризующий стратегию. Он равен доходности стратегии в процентах, деленный на максимальную просадку. Ниже я привожу таблицу сравнения прорывных стратегий, которые я либо подсмотрел у кого-то, либо придумал сам. Все стратегии пока не выкладываю, выкладываю одну, ибо хорошего понемногу). Бэктестинг проводил на паре XBTUSD на бирже Битмекс за 10 месяцев 2018 года, все на 4хчасовом таймфрейме с наилучшими найденными мной параметрами, без плеча, с комиссией биржи 0,075%. Первое число - доходность стратегии, второе число - максимальная просадка, третье - мой показатель привлекательности стратегии, равный доходности, разделенной на максимальную просадку.

Breakout Strategy 464.67% 18.03% 25.772
Breakout MA Strategy 646.18% 17.77% 36.364
Low Volatility Strategy v2.0 308.73% 16.64% 18.553
ZZBreakout Strategy 558.6% 11.88% 47.02
LRBreakout Strategy v1.0 1226.11% 17.97% 68.231
LRBreakout Strategy v1.5 1470.4% 18.38% 80

Вывод из данного сравнения можно сделать следующий. Все прорывные стратегии хороши, и использовать можно и нужно их все для диверсификации. Ведь средний процент доходности будет довольно внушительный (получается примерно 780% за десять месяцев, если депозит распределить равномерно). Однако стоит учесть, что есть ещё другие пары, не только биткоин/доллар. Тесты показывают, что на эфире доходность ещё выше, но история тут мала для полноценного анализа, ведь пара эфир/доллар появилась на битмексе только в августе 2018 года. Кроме того, если торговать с плечом, доходность вырастет в разы, хотя и просадка тоже. Торговать с плечом больше 3-4х я бы не рекомендовал, появляется риск слива всего депозита, хотя при должной диверсификации это не так и страшно.
К каждой из этих стратегий можно прикрутить мартингейла, что даст значительное улучшение результатов, но увеличивает также и просадку, что негативно сказывается на показателе привлекательности стратегии. Кроме того, в таком случае повышается риск слива всего депозита. И да, с мартингейлом депозит рано или поздно все равно сольется.
В этом месте можно неплохо поэкспериментировать, ведь есть разные варианты мартингейла - анти-мартингейл, адаптивный мартингейл, мартингейл с использованием коэффициента Хёрста и прочее, но это тема отдельного исследования и отдельного поста.
А может у читателей будут новые интересные идеи, какие еще уровни можно прорывать в стратегиях?
Если будет интерес, я выложу другие стратегии, рассмотренные в посте.
Comentários
mamed05
LRBreakout Strategy - это ваша стратегия? Ее нет в каталоге индикаторов?
DenCrypto
@mamed.mamed, Пока нет, скоро выложу.
VV_Capital
Скажи, принёс прибыль при реальной торговле, поесть ты открывал сделки или же просто протестил на исторический данных?
DenCrypto
@Vladkos, Да, принёс. Я ж писал, что за июль наторговал на пятиминутках 12х к депозиту. Торговал простой Breakout. Только за август-сентябрь почти все слил, после чего я отказался от мелких таймфреймов. А крупные таймфреймы медленно, но стабильно дают прибыль. Я, правда, практически только на регрессии остался. Она лучше всего пока что по-моему. Позже скрипт выложу.
VV_Capital
@DenCrypto, ну раз тестируете на реале, тогда имеет смысл. Будет интересно вас читать. Всего хорошего:)
ROBO_Trading
А может у читателей будут новые интересные идеи, какие еще уровни можно прорывать в стратегиях?
- superTrend попробуй. Код у меня есть в профиле если что. Там тоже можно построить 2 крайних линий и одну центральную (просто среднюю из крайних). Сам пока не проверял, может быть полезная идея.
DenCrypto
@Noro, Спасибо, обязательно проверю, отпишусь по результатам.
ROBO_Trading
Вы пишите: "Есть и другие варианты построения каналов. Например скользящая средняя, построенная по хаям свечей и по лоям. Однако тут лучше всего подходит “хитрая” скользящая средняя, ибо обычные или экспоненциальные слишком отстают от движения цены. Даже адаптивные скользящие средние, например МА Юрика, не дают хорошего результата, хотя я тут еще буду экспериментировать. "
- методом проб и ошибок пришел к выводу что SMA с периодом 3 и источником OHLC4 лучший вариант для нахождения средней цены. Перепробовал очень много вариантов.
DenCrypto
@Noro, Пробовал разные МА, не получил значимого результата. Может криворуко пробовал, попробую еще, спасибо, за наводку.
ROBO_Trading
Вы пишите: "я пришел к выводу, что данная стратегия работает только на больших таймфреймах, таких как 1 час и больше,"
- я туда же пришел. Рекомендую менее 1 часа не использовать ТФ. Вообще считаю лучшими ТФ это 1 час, 4 часа, дневной и недельный. На остальных я даже и не тестирую уже ничего.
Mais