
Chiến lược này là một hệ thống giao dịch phức tạp kết hợp các chỉ số tương đối mạnh (Stochastic RSI) và hình dạng đồ thị. Hệ thống xác nhận đồ thị của các chỉ số SRSI bằng cách phân tích mức độ quá mua quá bán, kết hợp với sự di chuyển của giá, để tạo ra tín hiệu giao dịch hoàn toàn tự động. Chiến lược sử dụng phương pháp kết hợp các chỉ số kỹ thuật tiên tiến, kết hợp các đặc điểm theo dõi xu hướng và giao dịch đảo ngược, có khả năng thích ứng mạnh mẽ với thị trường.
Logic cốt lõi của chiến lược này dựa trên các yếu tố chính sau:
Chiến lược này xây dựng một hệ thống giao dịch vững chắc bằng cách kết hợp các chỉ số RSI ngẫu nhiên và hình ảnh phác họa. Hệ thống duy trì hoạt động đơn giản trong khi kiểm soát rủi ro tốt hơn. Chiến lược có thể thích ứng với các môi trường thị trường khác nhau thông qua tối ưu hóa tham số và lọc tín hiệu hợp lý.
/*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")