Эта стратегия использует канал ATR для фильтрации фальшивых прорывов EMA для стабильных длинных сделок, следующих за трендом.
Логика стратегии:
Расчет N-период EMA как среднесрочной тенденции.
Вычислить n-периодный ATR для диапазонов каналов диапазона.
Продолжайте, когда цена перешагнут верхний канал.
Выход длинный, когда цена проходит ниже дна канала.
Канал ATR фильтрует незначительные или краткосрочные ложные прорывы.
Преимущества:
Канал ATR улучшает надежность длинных сигналов.
Длинный только уменьшает сложность и риски.
Простая оптимизация легко адаптируется на рынках.
Риски:
Не в состоянии извлечь выгоду из коротких ходов.
Как EMA, так и ATR отстают, что приводит к плохим срокам входа.
Трудно поддерживать сигналы на длительных расстояниях.
Подводя итог, эта простая система может хорошо работать в бычьих тенденциях, но требует осторожности в отношении отстающих индикаторов и колеблющихся рынков.
/*backtest start: 2020-09-11 00:00:00 end: 2021-04-17 00:00:00 period: 7d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("EMA Long Only Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100) len = input(21, minval=1, title="Length") price = sma(close, 2) average = ema(close, len) diff = atr(len) bull_level = average + diff bear_level = average - diff bull_cross = crossover(price, bull_level) bear_cross = crossover(bear_level, price) strategy.entry("Buy", strategy.long, when=bull_cross) strategy.close("Buy", when=bear_cross) //strategy.entry("Sell", strategy.short, when=bear_cross) plot(price, title="price", color=green, transp=50, linewidth = 4) plot(average, title="average", color=red, transp=50, linewidth = 4) a1 = plot(bull_level, title="bull", color=red, transp=50, linewidth = 1) a2 = plot(bear_level, title="bear", color=red, transp=50, linewidth = 1) fill(a2, a1, color=red, transp=95)