
Стратегия обратного взгляда на верхний и нижний центры - это стратегия для отслеживания тенденций. Основная идея заключается в том, чтобы рассчитать средние цены на самые высокие и самые низкие цены в течение определенного периода в качестве базовой цены, а затем на основе этой базовой цены в сочетании с волатильностью вычислить зоны застройки и зоны застройки.
Эта стратегия реализуется в основном через следующие шаги:
С помощью этого метода можно вовремя отслеживать тенденцию, когда цена входит в состояние тренда; также можно контролировать риск с помощью волатильности.
Эта стратегия имеет следующие преимущества:
Однако эта стратегия также несет в себе некоторые риски:
Для того, чтобы контролировать эти риски, можно оптимизировать следующие аспекты:
В этой стратегии есть место для дальнейшей оптимизации:
С помощью этих оптимизаций можно ожидать дальнейшего повышения стабильности и прибыльности стратегии.
Стратегия обратной обработки центров наивысшего и самого низкого уровня является простой и практичной стратегией отслеживания тенденций. Она позволяет своевременно улавливать изменения цены, отслеживать тенденции, а также контролировать риск с помощью волатильности.
/*backtest
start: 2023-11-27 00:00:00
end: 2023-12-27 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Highest/Lowest Center Lookback Strategy", overlay=true)
lookback_length = input(200, type=input.integer, minval=1, title="Lookback Length")
smoother_length = input(5, type=input.integer, minval=1, title="Smoother Length")
atr_length = input(10, type=input.integer, minval=1, title="ATR Length")
atr_multiplier = input(1.5, type=input.float, minval=0.5, title="ATR Multiplier")
vola = atr(atr_length) * atr_multiplier
price = sma(close, 3)
l = ema(lowest(low, lookback_length), smoother_length)
h = ema(highest(high, lookback_length), smoother_length)
center = (h + l) * 0.5
upper = center + vola
lower = center - vola
trend = price > upper ? true : (price < lower ? false : na)
bull_cross = crossover(price, upper)
bear_cross = crossunder(price, lower)
strategy.entry("Buy", strategy.long, when=bull_cross)
strategy.close("Buy", when=bear_cross)
plot(h, title="High", color=color.red, transp=75, linewidth=2)
plot(l, title="Low", color=color.green, transp=75, linewidth=2)
pc = plot(center, title="Center", color=color.black, transp=25, linewidth=2)
pu = plot(upper, title="Upper", color=color.green, transp=75, linewidth=2)
pl = plot(lower, title="Lower", color=color.red, transp=75, linewidth=2)
fill(pu, pc, color=color.green, transp=85)
fill(pl, pc, color=color.red, transp=85)
bgcolor(trend == true ? color.green : (trend == false ? color.red : color.gray), transp=85)