
Strategi ini menggabungkan tiga petunjuk teknikal Bollinger Bands, RSI, dan RSI secara rawak untuk mencari keadaan overbought dan oversold di pasaran dengan menganalisis kadar turun naik dan dinamik harga untuk menentukan masa pembelian dan penjualan yang terbaik. Strategi ini menggunakan perdagangan opsyen simulasi 20 kali ganda, menetapkan 0.60% stop loss dan 0.25% stop loss, dan mengehadkan perdagangan hanya sekali sehari untuk mengawal risiko.
Strategi ini menggunakan tiga indikator untuk menilai keadaan pasaran, iaitu Bollinger Bands, RSI, dan Random RSI. Bollinger Bands terdiri daripada mid-trail (Simple Moving Average 20 Cycle), up-trail (three standard deviations above mid-trail), dan down-trail (three standard deviations below mid-trail) untuk mengukur kadar turun naik harga. RSI adalah pendayung dinamik yang digunakan untuk mengenal pasti keadaan overbought dan oversold.
Apabila RSI berada di bawah 34, RSI rawak berada di bawah 20, dan harga penutupan berada di dekat atau di bawah tren bawah. Apabila RSI berada di atas 66, RSI rawak berada di atas 80, dan harga penutupan berada di dekat atau di atas tren atas, maka ia akan mencetuskan isyarat jual. Strategi ini menggunakan perdagangan opsyen simulasi 20 kali ganda dengan seting stop-loss 0.25% dan seting stop-loss 0.60%.
Strategi ini menggunakan tiga petunjuk teknikal, RSI, RSI dan RSI secara serentak, menggunakan turun naik harga dan maklumat dinamik, untuk mencari masa membeli dan menjual yang terbaik. Strategi ini menetapkan titik berhenti yang jelas dan mengawal jumlah perdagangan setiap hari untuk menguruskan risiko. Walaupun strategi ini mempunyai kelebihan, ia masih menghadapi cabaran seperti risiko pasaran, sensitiviti parameter dan risiko leverage.
/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Bollinger Bands + RSI + Stochastic RSI Strategy with OTM Options", overlay=true)
// Define leverage factor (e.g., 20x leverage for OTM options)
leverage = 1
// Bollinger Bands
length = 20
deviation = 3
basis = ta.sma(close, length)
dev = ta.stdev(close, length)
upper = basis + deviation * dev
lower = basis - deviation * dev
// RSI
rsi_length = 14
rsi = ta.rsi(close, rsi_length)
// Stochastic RSI
stoch_length = 14
stoch_k = ta.stoch(close, close, close, stoch_length)
// Entry condition with Bollinger Bands
longCondition = rsi < 34 and stoch_k < 20 and close <= lower
shortCondition = rsi > 66 and stoch_k > 80 and close >= upper
// Plot Bollinger Bands
plot(basis, color=color.blue, title="Basis")
plot(upper, color=color.red, title="Upper Bollinger Band")
plot(lower, color=color.green, title="Lower Bollinger Band")
// Track if a trade has been made today
var int lastTradeDay = na
// Options Simulation: Take-Profit and Stop-Loss Conditions
profitPercent = 0.01 // 1% take profit
lossPercent = 0.002 // 0.2% stop loss
// Entry Signals
if (dayofmonth(timenow) != dayofmonth(lastTradeDay))
if (longCondition)
longTakeProfitPrice = close * (1 + profitPercent)
longStopLossPrice = close * (1 - lossPercent)
strategy.entry("Long", strategy.long, qty=leverage * strategy.equity / close)
strategy.exit("Take Profit Long", from_entry="Long", limit=longTakeProfitPrice, stop=longStopLossPrice)
lastTradeDay := dayofmonth(timenow)
if (shortCondition)
shortTakeProfitPrice = close * (1 - profitPercent)
shortStopLossPrice = close * (1 + lossPercent)
strategy.entry("Short", strategy.short, qty=leverage * strategy.equity / close)
strategy.exit("Take Profit Short", from_entry="Short", limit=shortTakeProfitPrice, stop=shortStopLossPrice)
lastTradeDay := dayofmonth(timenow)