Эта стратегия объединяет три показателя: относительно сильный индекс ((RSI) и индексные движущиеся средние ((EMA), реализуя стратегию автоматической торговли акциями, удерживаемой длинной линией. Покупательский сигнал генерируется, когда RSI ниже линии перепродажи и цена приближается или касается нижней линии линии Brin. Покупательский сигнал генерируется, когда цена приближается к верхней линии Brin.
Эта стратегия основана на трех показателях: брин-полоса, RSI и EMA. Средняя линия в брин-полосе представляет собой простое движущееся среднее значение цены, а верхняя и нижняя линии соответственно в два раза больше стандартной разницы цен. Брин-полоса позволяет определять сверхпокупки и сверхпродажи на рынке, когда цена приближается к нижней полосе - это сверхпродажа, а когда она приближается к верхней полосе - это сверхпокупка.
Покупательские условия для этой стратегии следующие: Сигнал покупки возникает, когда RSI ниже 30 и нужно одновременно удовлетворить состояние перепродажи, когда цена приближается или касается подземной линии буринского пояса, чтобы избежать ложного сигнала.
Условия продажи данной стратегии следующие: во время роста цены, когда возникает сигнал продажи при касании буринской ленты на рельсе, comboBox1 ≠. Таким образом, используется буринская лента для определения состояния перекупа, для проведения стоп-продажи ≠.
Решение риска:
Эта стратегия может быть оптимизирована в следующих направлениях:
Эта стратегия интегрирует три показателя, такие как ленты Брин, RSI и EMA, и реализует автоматическую торговую стратегию с длинной линией для двойного фильтрации. Двойной фильтрационный механизм для определения состояния перепродажи может эффективно избежать ложных сигналов, а использование EMA для определения тенденции может предотвратить противоположную торговлю.
/*backtest
start: 2023-12-21 00:00:00
end: 2023-12-28 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Bollinger + RSI + EMA, Double Strategy Long-Only (by ChartArt) v1.3", shorttitle="rsi 30 min ADJ Buy", overlay=true)
///////////// RSI
RSIlength = input(2, title="RSI Period Length") // Adjusted RSI period length
RSIoverSold = input(30, title="RSI Oversold Level") // Adjustable RSI oversold level
RSIoverBought = input(80, title="RSI Overbought Level") // Adjustable RSI overbought level
price = close
vrsi = rsi(price, RSIlength)
///////////// Bollinger Bands
BBlength = input(231, minval=1, title="Bollinger Period Length") // Adjusted Bollinger period length
BBmult = 2
BBbasis = sma(price, BBlength)
BBdev = BBmult * stdev(price, BBlength)
BBupper = BBbasis + BBdev
BBlower = BBbasis - BBdev
///////////// EMA
useEMA = input(true, title="Use EMA?")
emaLength = input(20, title="EMA Period Length")
ema = useEMA ? ema(close, emaLength) : na
source = close
buyEntry = crossover(source, BBlower) or (close < BBlower and close > BBbasis) or (low < BBlower and close > BBbasis) // Add condition for low touching Bollinger Band
sellEntry = crossunder(source, BBupper)
///////////// Plotting
plot(BBbasis, color=color.aqua, title="Bollinger Bands SMA Basis Line")
plot(BBupper, color=color.silver, title="Bollinger Bands Upper Line")
plot(BBlower, color=color.silver, title="Bollinger Bands Lower Line")
plot(ema, color=color.orange, title="EMA") // Plot EMA
///////////// RSI + Bollinger Bands Strategy
long = crossover(vrsi, RSIoverSold) and buyEntry
close_long = close >= BBupper
if (not na(vrsi))
if long
strategy.entry("Buy", strategy.long, qty=10, stop=BBlower, comment="Buy")
else
strategy.cancel(id="Buy")
if close_long
strategy.close("Buy")