Chiến lược này được đặt tên là
Chỉ số RSI đánh giá giá liệu giá có bị mua quá mức hay bán quá mức. Chỉ số RSI trên 70 cho thấy trạng thái mua quá mức, trong khi dưới 30 là bán quá mức. Chiến lược này tạo ra tín hiệu bán khi RSI đạt 96, và tín hiệu mua khi RSI phá vỡ dưới 4.
Sau khi vào, chiến lược sử dụng cơ chế lấy lợi nhuận và dừng lỗ. Các vị trí dài được đóng khi RSI phục hồi lên 80 sau khi đảo ngược, và các vị trí ngắn được đóng khi RSI giảm xuống 20, hiệu quả khóa lợi nhuận khôi phục.
Ưu điểm của chiến lược này là sử dụng độ nhạy của RSI trong việc đánh giá dẫn đến xu hướng giảm và đảo ngược, và cải thiện hiệu suất thông qua tối ưu hóa tham số và lấy lợi nhuận / dừng lỗ.
Kết luận, chỉ số RSI là một công cụ đơn giản và thực tế để đo lường các điều kiện mua quá mức / bán quá mức. Thông qua tối ưu hóa tham số và quản lý rủi ro nghiêm ngặt, hiệu quả của nó có thể được tăng cường cho giao dịch ngược xu hướng. Nhưng các nhà giao dịch vẫn cần linh hoạt trong điều chỉnh chiến lược, vì các thị trường khác nhau yêu cầu các thiết lập tham số khác nhau.
/*backtest start: 2023-08-13 00:00:00 end: 2023-09-12 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © corderomoraj //@version=5 strategy("Good Mode RSI v2", overlay=true) // Parámetros de la estrategia rsiPeriod = input(2, "RSI Period") sellLevel = input(96, "Sell Level") buyLevel = input(4, "Buy Level") takeProfitLevelSell = input(20, "Take Profit Level Sell") takeProfitLevelBuy = input(80, "Take Profit Level Buy") var float trailingStopPrice = na var float trailingStopOffset = input(100, "Trailing Stop Offset (pips)") // Capital inicial initialCapital = 250 positionSize = initialCapital * 0.015 // Condiciones de entrada y salida rsi = ta.rsi(close, rsiPeriod) // Condiciones de entrada y salida para la orden de venta sellCondition = rsi > sellLevel closeSellCondition = rsi < takeProfitLevelSell // Condiciones de entrada y salida para la orden de compra buyCondition = rsi < buyLevel closeBuyCondition = rsi > takeProfitLevelBuy // Trailing Stop para las posiciones de venta if strategy.position_size < 0 if low < trailingStopPrice trailingStopPrice := low strategy.exit("Sell", "Sell", trail_offset = trailingStopOffset * syminfo.mintick, trail_price = trailingStopPrice) // Trailing Stop para las posiciones de compra if strategy.position_size > 0 if high > trailingStopPrice trailingStopPrice := high strategy.exit("Buy", "Buy", trail_offset = trailingStopOffset * syminfo.mintick, trail_price = trailingStopPrice) // Ejecutar orden de venta if (sellCondition) strategy.entry("Sell", strategy.short, qty = positionSize) trailingStopPrice := high // Cerrar orden de venta if (closeSellCondition) strategy.close("Sell") // Ejecutar orden de compra if (buyCondition) strategy.entry("Buy", strategy.long, qty = positionSize) trailingStopPrice := low // Cerrar orden de compra if (closeBuyCondition) strategy.close("Buy")