
Стратегия представляет собой комплексную торговую систему, которая сочетает в себе случайные относительно слабые показатели (Stochastic RSI) и графические формы. Система обеспечивает полностью автоматизированное генерирование торговых сигналов путем анализа уровня перепродажи в SRSI, в сочетании с графическим подтверждением ценового движения. Стратегия использует передовые методы комбинации технических индикаторов, объединяет в себе особенности отслеживания тенденций и обратной торговли, обладает сильной рыночной адаптивностью.
Основная логика стратегии основана на следующих ключевых элементах:
Эта стратегия, в сочетании с случайными показателями RSI и графическими форматами, создает стабильную торговую систему. Система обеспечивает хороший контроль риска, сохраняя при этом простоту в использовании. Стратегия может адаптироваться к различным рыночным условиям с помощью разумной оптимизации параметров и фильтрации сигналов.
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-27 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Stochastic RSI Strategy with Candlestick Confirmation", overlay=true)
// Input parameters for Stochastic RSI
rsiPeriod = input.int(14, title="RSI Period")
stochRsiPeriod = input.int(14, title="Stochastic RSI Period")
kPeriod = input.int(3, title="K Period")
dPeriod = input.int(3, title="D Period")
// Overbought and Oversold levels
overboughtLevel = input.int(80, title="Overbought Level", minval=50, maxval=100)
oversoldLevel = input.int(20, title="Oversold Level", minval=0, maxval=50)
// Calculate RSI
rsi = ta.rsi(close, rsiPeriod)
// Calculate Stochastic RSI
stochRSI = ta.stoch(rsi, rsi, rsi, stochRsiPeriod) // Stochastic RSI calculation using the RSI values
// Apply smoothing to StochRSI K and D lines
k = ta.sma(stochRSI, kPeriod)
d = ta.sma(k, dPeriod)
// Plot Stochastic RSI on separate panel
plot(k, title="StochRSI K", color=color.green, linewidth=2)
plot(d, title="StochRSI D", color=color.red, linewidth=2)
hline(overboughtLevel, "Overbought", color=color.red, linestyle=hline.style_dashed)
hline(oversoldLevel, "Oversold", color=color.green, linestyle=hline.style_dashed)
// Buy and Sell Signals based on both Stochastic RSI and Candlestick patterns
buySignal = ta.crossover(k, oversoldLevel) and close > open // Buy when K crosses above oversold level and close > open (bullish candle)
sellSignal = ta.crossunder(k, overboughtLevel) and close < open // Sell when K crosses below overbought level and close < open (bearish candle)
// Plot Buy/Sell signals as shapes on the chart
plotshape(series=buySignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY", size=size.small)
plotshape(series=sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL", size=size.small)
// Background color shading for overbought/oversold conditions
bgcolor(k > overboughtLevel ? color.new(color.red, 90) : na)
bgcolor(k < oversoldLevel ? color.new(color.green, 90) : na)
// Place actual orders with Stochastic RSI + candlestick pattern confirmation
if (buySignal)
strategy.entry("Long", strategy.long)
if (sellSignal)
strategy.entry("Short", strategy.short)
// Optionally, you can add exit conditions for closing long/short positions
// Close long if K crosses above the overbought level
if (ta.crossunder(k, overboughtLevel))
strategy.close("Long")
// Close short if K crosses below the oversold level
if (ta.crossover(k, oversoldLevel))
strategy.close("Short")