Интеллектуальная инвестиционная стратегия с двойными трендовыми скользящими средними
Обзор
Данная стратегия в основном предназначена для автоматизированного долгосрочного инвестирования в BTC. Используя пересечение двойных EMA и LSMA, она определяет направление тренда, а с помощью индикатора ATR рассчитывает динамический стоп-лосс, обеспечивая эффективное отслеживание восходящего тренда BTC.
Принцип стратегии
- Используется двойная скользящая средняя: EMA за 25 периодов и LSMA за 100 периодов. Их пересечение используется для определения тренда рынка. EMA быстро реагирует на изменения цены, а LSMA фильтрует ложные пробои.
- Когда быстрая EMA пересекает медленную LSMA снизу вверх, это сигнализирует о сохранении восходящего тренда – в этот момент открывается длинная позиция. И наоборот, когда быстрая EMA пересекает медленную LSMA сверху вниз, это указывает на вход в нисходящий тренд – позиция закрывается.
- После открытия длинной позиции используется динамический стоп-лосс, рассчитанный на основе индикатора ATR, который постоянно корректируется для эффективного отслеживания восходящего тренда BTC. В частности, начальная точка стоп-лосса устанавливается на уровне цены входа, а затем при каждом последующем корректировке он сдвигается вверх на фиксированную долю от значения ATR.
- Линия стоп-лосса эффективно фиксирует плавающую прибыль от роста BTC, предотвращая при этом слишком частое срабатывание стопа из-за чрезмерной близости к текущей цене. Кроме того, стратегия предусматривает два уровня трейлинг-стопа с разными коэффициентами для фиксации большей прибыли.
Анализ преимуществ
- Использование двойных скользящих средних для определения тренда более надежно и эффективно предотвращает появление ложных сигналов.
- Динамический трейлинг-стоп на основе ATR позволяет как фиксировать большую часть прибыли, так и избегать частых мелких стоп-лоссов.
- Независимо от того, завершился ли восходящий тренд, как только скользящие средние подают сигнал на выход, позиция закрывается с убытком – контроль рисков на должном уровне.
- Высокая степень автоматизации, не требующая ручного вмешательства, что удобно для длительной работы на реальном рынке.
Анализ рисков
- Необходимо отслеживать внезапные значимые новости, чтобы избежать огромных проскальзываний.
- Хотя комбинация двух скользящих средних снижает количество ложных сигналов, при флэтовом рынке их полностью избежать сложно.
- Неправильная настройка параметров ATR также может повлиять на эффективность стоп-лосса; требуется корректировка под разные инструменты.
- Нерациональный выбор периодов скользящих средних или несвоевременное обновление могут привести к запаздыванию сигналов.
- Необходимо обеспечить стабильность сервера, чтобы избежать сбоев, приводящих к прерыванию автоматической торговли.
Направления оптимизации
- Можно попробовать добавить больше индикаторов для определения тренда, например, полосы Боллинджера, или использовать модели машинного обучения для прогнозирования цен.
- Метод расчета динамического стоп-лосса на основе ATR также можно доработать для более плавного движения стопа.
- Можно добавить механизм оповещения на основе объема и внутридневной ротации FEATURE для защиты от воздействия значительных новостей.
- Параметры для разных монет различаются; можно обучить индивидуальные параметры на большем объеме исторических данных.
Заключение
В целом данная стратегия представляет собой очень практичную программу для автоматического инвестирования в BTC. Использование двойных EMA для определения общего тренда весьма надежно, а в сочетании с трейлинг-стопом на основе ATR позволяет получать неплохую прибыль и сохранять эффективность на длительный срок. По мере дальнейшей оптимизации параметров эффективность стратегии может значительно повыситься, что делает ее достойной проверки на реальном рынке.
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Wunderbit Trading
//@version=4
strategy("Automated Bitcoin (BTC) Investment Strategy", overlay=true, initial_capital=5000,pyramiding = 0, currency="USD", default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent,commission_value=0.1)
//////////// Functions
Atr(p) =>
atr = 0.
Tr = max(high - low, max(abs(high - close[1]), abs(low - close[1])))
atr := nz(atr[1] + (Tr - atr[1])/p,Tr)- 1

