- Площадь
- Keltner Channels Стратегия EMA ATR
Keltner Channels Стратегия EMA ATR
Автор:
Чао Чжан, Дата: 2024-06-03 10:39:20
Тэги:
ЕМАATR
Обзор
Эта стратегия основана на индикаторе Keltner Channels, который использует экспоненциальную скользящую среднюю (EMA) и средний истинный диапазон (ATR) для построения верхнего и нижнего каналов. Когда цена прорывается ниже нижнего канала, она входит в длинную позицию, а когда цена прорывается выше верхнего канала, она закрывает позицию. Эта стратегия пытается захватить диапазон волатильности цен и получает прибыль, когда цена прорывается выше верхнего канала.
Принципы стратегии
- Вычислить EMA за определенный период как среднюю линию каналов Келтнера.
- Вычислите ATR за определенный период, затем умножьте его на коэффициент, который будет служить верхним и нижним каналами.
- Когда цена закрытия падает ниже нижнего канала, вводить длинную позицию и записывать цену входа.
- Когда цена открытия превысит верхний канал, закрыть позицию.
- Если вы уже находитесь на позиции, а цена открытия выше верхнего канала, закрывайте длинную позицию.
Преимущества стратегии
- Приспособляемость к волатильности цен. Поскольку Keltner Channels использует ATR для построения верхнего и нижнего каналов, а ATR измеряет волатильность цен, ширина канала будет соответственно увеличиваться при высокой волатильности, эффективно снижая стоимость частой торговли.
- Ясная логика, простота и легко понять и реализовать.
- В восходящем тренде эта стратегия может держать длинную позицию до тех пор, пока цена не пройдет выше верхнего канала.
Стратегические риски
- Отсутствие явного механизма стоп-лосса. Эта стратегия не устанавливает стоп-лосс после входа в позицию, что может привести к значительному снижению при неблагоприятных рыночных условиях.
- Грубое определение сигналов прорыва. Использование только ценой закрытия, падающей ниже нижнего канала, и ценой открытия, превышающей верхний канал, в качестве сигналов входа и выхода может привести к некоторым ошибочным оценкам, что приведет к потере сделок.
- Выбор параметров стратегии оказывает значительное влияние на результаты.Выбор периодов EMA и ATR и установка кратного ATR повлияют на эффективность стратегии, но стратегия не предоставляет четкого метода оптимизации параметров.
Направления оптимизации стратегии
- При входе в позицию следует рассмотреть возможность установки стоп-лосса на фиксированном количестве пунктов или процентов, чтобы контролировать максимальную потерю одной сделки.
- Оптимизируйте условия оценки сигналов. Рассмотрите возможность использования большей информации о цене для подтверждения прорыва, например, требуя, чтобы цена закрытия была ниже нижнего канала в течение нескольких последовательных свечей, прежде чем выйти на позицию, чтобы избежать ложных прорывов.
- Используйте методы, такие как генетические алгоритмы для оптимизации периодов EMA и ATR и кратного ATR, чтобы найти комбинацию параметров, которая более подходит для текущего рынка.
- Добавьте условия фильтрации. Подумайте о добавлении некоторых сигналов фильтрации, таких как ввод позиции только тогда, когда ADX превышает определенный порог или использование бычьего перекрестка MA в качестве фильтра тренда.
Резюме
Эта стратегия основана на индикаторе Keltner Channels и проводит сделки на основе логики разрыва цены выше или ниже каналов. Ее преимущества заключаются в простой и четкой логике и сильной адаптивности. Ее недостатками являются отсутствие стоп-лосса и плохое качество сигнала. В будущем стратегию можно улучшить путем внедрения стоп-лосса, оптимизации сигналов, оптимизации параметров и добавления условий фильтрации.
/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © satrusskumar
//@version=5
// Input parameters
length = input.int(21, title="EMA Length")
mult = input.float(2, title="ATR Multiplier")
atrLength = input.int(13, title="ATR Length")
// Calculate Keltner Channels
ema = ta.ema(close, length)
atr = ta.atr(atrLength)
upper_band = ema + mult * atr
lower_band = ema - mult * atr
// Plot Keltner Channels
plot(upper_band, color=color.red, title="Keltner Upper Band")
plot(ema, color=color.blue, title="Keltner EMA")
plot(lower_band, color=color.green, title="Keltner Lower Band")
// Strategy logic
var float entry_price = na
var bool in_trade = false
if (not in_trade and close < lower_band)
strategy.entry("Long", strategy.long)
entry_price := close
in_trade := true
if (in_trade and open > upper_band)
strategy.close("Long")
in_trade := false
// Strategy settings
strategy("Keltner Channel Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)
Связанные
Больше