
Chiến lược này kết hợp ba chỉ số kỹ thuật Bollinger Bands, Relative Strength Index (RSI) và RSI ngẫu nhiên, tìm kiếm tình trạng quá mua và quá bán của thị trường bằng cách phân tích biến động và động lực của giá để xác định thời điểm mua và bán tốt nhất. Chiến lược này sử dụng giao dịch quyền chọn mô phỏng 20 lần đòn bẩy, đặt mức dừng 0,60% và 0.25%, và giới hạn giao dịch chỉ một lần mỗi ngày để kiểm soát rủi ro.
Cốt lõi của chiến lược này là sử dụng ba chỉ số Bollinger Bands, RSI và RSI ngẫu nhiên để đánh giá tình trạng thị trường. Bollinger Bands bao gồm đường trung tâm (SMP) 20 chu kỳ, đường trên (thứ độ tiêu chuẩn trên đường trung bình) và đường dưới (thứ độ tiêu chuẩn dưới đường trung bình) để đo lường tỷ lệ biến động của giá. RSI là một dao động động động để xác định các điều kiện quá mua và quá bán.
Khi RSI thấp hơn 34, RSI ngẫu nhiên thấp hơn 20 và giá đóng cửa ở gần hoặc thấp hơn đường ray xuống, kích hoạt tín hiệu mua. Khi RSI cao hơn 66, RSI ngẫu nhiên cao hơn 80, và giá đóng cửa ở gần hoặc cao hơn đường ray lên, kích hoạt tín hiệu bán. Chiến lược sử dụng giao dịch quyền chọn mô phỏng 20 lần đòn bẩy, đặt điểm dừng là 0,60 và đặt điểm dừng là 0,25%. Ngoài ra, chiến lược này chỉ giao dịch một lần mỗi ngày để kiểm soát rủi ro.
Chiến lược này tìm kiếm thời điểm mua và bán tốt nhất bằng cách kết hợp ba chỉ số kỹ thuật của Bollinger Bands, RSI và RSI ngẫu nhiên, sử dụng thông tin về biến động giá và động lực. Chiến lược này thiết lập điểm dừng rõ ràng và kiểm soát số lần giao dịch mỗi ngày để quản lý rủi ro. Mặc dù có lợi thế, chiến lược vẫn phải đối mặt với các thách thức như rủi ro thị trường, nhạy cảm tham số và rủi ro đòn bẩy.
/*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)