ROBO_Trading

Стратегия Дончян

ROBO_Trading Обновлено   
BITMEX:XBTUSD.P   Bitcoin
Знаю что большинство на мой блог подписались из-за скриптов индикаторов и стратегий. Сегодня этим и занимался опять. Большую часть стратегий придумываю вовсе не я, а вычитываю из разных источников (и даже из книг). А потом с Вами бесплатно делюсь тем что не плохо работает. Сегодня тоже получилась очень неплохая стратегия, намного лучше большинства стратегий-хлама в моём профиле. То есть на эту стоит обратить внимание.

В чатике нашем теперь часто пишут что не плохо бы сделать еще и трендовую стратегию, для биткойна и эфира (там ликвидности хоть этой жуй), так что сейчас копаю в основном такие стратегиии, которые бы годились для этих двух пар. Вот только для ботов годятся далеко не все стратегии, так как появляется еще несколько новых требований:

1) Ликвидность. Стратегия должна быть пригодно для торговли миллионами долларов, так как в совокупность у юзеров бота рано или поздно такая сумма аккумулируется (не у каждого, а на всех в сумме).

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

3) Понятность. Стратегия должна быть понятной. Если стратегия уходит в просадку глубоко и надолго, то это гораздо легче пересидеть когда стратегия понятна, в понятную стратегию гораздо проще верить даже. В непонятную же стратегию верится с трудом, и чем больше просадка тем тяжелее верится :)

4) Низкая просадка. Нужна не только для комфорта юзера :) Очень часто юзеры сами же превышают максимальные рекомендованные риски, причем бывает и в разы превышают. Так что чем ниже просадка у стратегии, тем менее вероятно что юзер сольётся даже если превысил рекомендуемые риски (размер кредитного плеча).

Думаю эта стратегия вполне подойдет под требования.

Стратегия Donchian

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

Линии

Синие линии - для открытия позиций. Открывать маркет-стоп-ордером, который должен заранее висеть. А значит с комиссией, без премии мейкера.
Красная линия - центр ценового канала, для стоп-лосс. Тут ставить маркет-стоп-ордеры для закрытия позиции (не переворот!). По сути это техника трейлинг-стоп.
Лаймовая линия - для тейк-профита. Тут уже лимитный ордер, а значит без комиссии, с премией мейера.

При бэктестах я бы предложил ставить комиссию 0,1% всё равно. Так как тейки сработают относительно редко, и большая часть выходов будут по трейлинг-стопу (а это не обязательно убыток), а все входы тоже с комиссией по рынку.

Что торговать

Наилучшие таймфреймы для различный индикаторных стратегий это 1 час и 4 часа. Не только мои стратегии, а вообще все индикаторные. Хорошо подойдет для пар BTC/USD, ETH/USD, XBT/USD. Думаю для битмекса было бы хорошим вариантом тоже, так как хотя бы с тейков будет премия мейкера и они будут без комиссии.

Сравнить

Сравнить можно с очень похожей моей стратегии WhiteBox Channel, где тоже ценовой канал, но без тейкпрофитов. Стратегия Donchian при одинаковых настройках показывает выше доходность и при этом ниже просадку. Вот поэтому в роботе стратегии Channel никогда не появится (хоть и планировалось). Потому Channel хуже во всём чем Donchian.

Код

Открытый исходный код, 4-ая версия языка.

В нового бота планирую добавить именно эту стратегию Donchian. Там не будет стратегии ShiftMA, но будет такая же как в старом боте MultiMA с дополнительными параметрами, и стратегия Donchian. То есть две стратегии изначально на старте, а потом еще добавим если что-то лучше найдется. Ранее писал что в новом боте будет Channel - теперь пишу что не будет :) Вместо неё будет Donchian, которая очень похожа, но явно лучше.
Комментарий:
Здесь еще опишу сравнение старой стратегии WhiteBox Channel и новой eVe Donchan, так как они ну очень похожие, и используют один и тот индикатор и логику. Все бэктесты тут на Bitmex, раз уж там предполагается использовать, и с комиссией 0,1%. Комиссия для бэктеста выбрана больше чем на бирже, чтобы учесть небольшой убыток, которые образуется при проскальзывании рыночных ордеров. Кстати, просадку бэктесты тут показывают очень близкую к истине из-за самой стратегии. То есть условно говоря реальная просадка будет лишь на пару процентов больше, чем показывает бэктест. А не в разы больше, как это бывает у контр-трендовых стратегий. Настройки не меняются (чтобы избежать переподгонку под данные прошлого - он же оверфиттинг), тейк-профит для Donchian везде стоит 10% (как по умолчанию).

Channel Bitmex XBT/USD 1h с начала 2019 по сегодня:
- прибыль +241%
- просадка 25%
- профит-фактор 1,494

Donchian Bitmex XBT/USD 1h с начала 2019 по сегодня:
- прибыль +317%
- просадка 15%
- профит-фактор 1,644

Channel Bitmex XBT/USD 4h c 2015 (за всё время) по сегодня:
- прибыль +3.167%
- просадка 36%
- профит-фактор 1,691

Donchian Bitmex XBT/USD 4h c 2015 (за всё время) по сегодня:
- прибыль +9.754%
- просадка 20%
- профит-фактор 1,923

=== Как видим новая обыгрывает старую по биткойну как по доходности, так и по просадке, которая куда меньше. ===

Channel Bitmex ETH/USD 1h c начала 2019 по сегодня:
- прибыль +68%
- просадка 32%
- профит-фактор 1,157

Donchian Bitmex ETH/USD 1h c начала 2019 по сегодня:
- прибыль +93%
- просадка 32%
- профит-фактор 1,202

Channel Bitmex ETH/USD 4h за всё время по сегодня:
- прибыль +547%
- просадка 34%
- профит-фактор 2,008

Donchian Bitmex ETH/USD 4h за всё время по сегодня:
- прибыль +751%
- просадка 34%
- профит-фактор 2,191

=== Видно что Donchian лучше получается. Так вот, если в бота добавить обе стратегии, то всё равно Channel никто использовать не станет, потому что Channel хуже. Так что для экономии времени не буду её добавлять. ===
Комментарий:
Какой тейк-профит ставить в параметрах?

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

Так же будет работать принцип: чем больше таймфрейм, тем больше надо тейк-профит. Потому что за большее время цена в среднем пройдет большее расстояние.

Например для ТФ 4 часа можно ставить тейк-профит 10%, а для ТФ 1 час тейк-профит 5%.
Комментарий:
Скрипт Noro's Donchian Strategy опубликовал второй раз только что. Первую версию удалил модератор. Это бы хотелось бы объяснить.

Модератор пишет что удаляет скрипты с нереалистичными результатами. Я это просто игнорил, так как искусственно что ли настройки скрипту портить чтобы он меньше доход показывал? :) А оказалось претензии то у модератора совсем другие были. По умолчанию стартовый капитал в скриптах я ставлю $100.000, потому округление у бэктестера TradingView работает весьма паршиво. Поэтому чем больше сумма стартового капитала - тем точнее расчеты. То есть, такую сумму стартового капитала я делаю в скриптах ради точности расчета, а не ради большого профита на бэктесте.

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

Компромисс конечно нашелся. Я буду выкладывать скрипты со стартовым капиталов в 100 долларов. Но так как округление у бэктестера работает паршиво, то я рекомендую пользователям увеличивать стартовый капитал у скрипта до 100.000 или более - это для большей точности.

Я снова выложил скрипт. Надеюсь не удалил его модератор теперь.


Связанные идеи

Отказ от ответственности

Все виды контента, которые вы можете увидеть на TradingView, не являются финансовыми, инвестиционными, торговыми или любыми другими рекомендациями. Мы не предоставляем советы по покупке и продаже активов. Подробнее — в Условиях использования TradingView.