Chiến lược này kết hợp hai chỉ số kỹ thuật, RSI và Bollinger Bands, tạo ra tín hiệu mua khi giá thấp hơn đường dây Bollinger và bán khi giá cao hơn đường dây Bollinger. Chiến lược này chỉ kích hoạt tín hiệu giao dịch khi cả chỉ số RSI và Bollinger Band đang ở trạng thái bán quá hoặc mua quá cùng một lúc.
RSI và chiến lược đai đai đai bằng cách kết hợp các chỉ số xu hướng và động lực, có thể đánh giá toàn diện hơn về tình trạng thị trường và cung cấp tín hiệu giao dịch phù hợp. Tuy nhiên, chiến lược này có thể hoạt động kém trong thị trường biến động và không có biện pháp kiểm soát rủi ro, do đó cần thận trọng khi sử dụng trên thực tế.
/*backtest start: 2024-03-01 00:00:00 end: 2024-03-31 23:59:59 period: 4h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Bollinger + RSI, Double Strategy (by ChartArt) v1.1", shorttitle="CA_-_RSI_Bol_Strat_1.1", overlay=true) // ChartArt's RSI + Bollinger Bands, Double Strategy - Update // // Version 1.1 // Idea by ChartArt on January 18, 2015. // // This strategy uses the RSI indicator // together with the Bollinger Bands // to sell when the price is above the // upper Bollinger Band (and to buy when // this value is below the lower band). // // This simple strategy only triggers when // both the RSI and the Bollinger Bands // indicators are at the same time in // a overbought or oversold condition. // // In this version 1.1 the strategy was // both simplified for the user and // made more successful in backtesting. // // List of my work: // https://www.tradingview.com/u/ChartArt/ // // __ __ ___ __ ___ // / ` |__| /\ |__) | /\ |__) | // \__, | | /~~\ | \ | /~~\ | \ | // // ///////////// RSI RSIlength = input(14,title="RSI Period Length") RSIoverSold = 30 RSIoverBought = 70 price = close vrsi = rsi(price, RSIlength) ///////////// Bollinger Bands BBlength = input(20, minval=1,title="Bollinger Period Length") BBmult = input(2.0, minval=0.001, maxval=50,title="Bollinger Bands Standard Deviation") BBbasis = sma(price, BBlength) BBdev = BBmult * stdev(price, BBlength) BBupper = BBbasis + BBdev BBlower = BBbasis - BBdev source = close buyEntry = crossover(source, BBlower) sellEntry = crossunder(source, BBupper) plot(BBbasis, color=color.blue,title="Bollinger Bands SMA Basis Line") p1 = plot(BBupper, color=color.red,title="Bollinger Bands Upper Line") p2 = plot(BBlower, color=color.green,title="Bollinger Bands Lower Line") fill(p1, p2) // Entry conditions crossover_rsi = crossover(vrsi, RSIoverSold) and crossover(source, BBlower) crossunder_rsi = crossunder(vrsi, RSIoverBought) and crossunder(source, BBupper) ///////////// RSI + Bollinger Bands Strategy if (not na(vrsi)) if (crossover_rsi) strategy.entry("RSI_BB_L", strategy.long, comment="RSI_BB_L") else strategy.cancel(id="RSI_BB_L") if (crossunder_rsi) strategy.entry("RSI_BB_S", strategy.short, comment="RSI_BB_S") else strategy.cancel(id="RSI_BB_S")