Chiến lược RSI Rising Crypto Trending là một chiến lược giao dịch xu hướng được thiết kế cho các khung thời gian dài hơn (4h +) trên thị trường tiền điện tử và chứng khoán.
Nó sử dụng chỉ số RSI để xác định xu hướng tăng và giảm kết hợp với Bollinger Bands và ROC để tránh giao dịch trên thị trường bên.
Chiến lược sử dụng các chỉ số sau:
Các quy tắc giao dịch cụ thể là:
Quy tắc nhập cảnh
Mở đầu dài: RSI tăng và không phải thị trường bên cạnh cho BB và ROC Nhập ngắn: RSI giảm và không phải thị trường bên cạnh cho BB và ROC
Các quy tắc xuất cảnh
Rút khi tín hiệu đối diện được kích hoạt
Tăng mức dừng lỗ, tối ưu hóa các thông số BB / ROC và kết hợp phân tích cơ bản.
Một số cách để cải thiện chiến lược này:
Thêm stop loss để quản lý rủi ro và thiết lập mức lỗ tối đa cho mỗi giao dịch.
Tối ưu hóa các thông số BB và ROC thông qua backtesting để tìm các thiết lập tốt nhất.
Tích hợp các chỉ số bổ sung như MACD, KD cho độ tin cậy tín hiệu đa chỉ số.
Xây dựng một mô hình thanh khoản để tạm dừng giao dịch trong khi biến động tăng cao để tránh bẫy.
Sử dụng máy học để tự động tối ưu hóa các tham số và cân nặng tín hiệu.
Kết hợp dữ liệu trên chuỗi như thanh khoản trao đổi và dòng tiền để thích nghi hơn.
Chiến lược xu hướng tiền điện tử tăng RSI nắm bắt xu hướng tiền điện tử dài hơn bằng cách sử dụng RSI cộng với BB và ROC. Ưu điểm là nhanh chóng bắt được các biến đổi xu hướng và tránh những cái bẫy.
/*backtest start: 2023-09-16 00:00:00 end: 2023-10-16 00:00:00 period: 2h 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/ // © exlux99 //@version=4 strategy(title = "RSI Rising", overlay = true, initial_capital = 100, default_qty_type= strategy.percent_of_equity, default_qty_value = 100, slippage=0,commission_type=strategy.commission.percent,commission_value=0.03) ///////////////////// source = close bb_length = 20 bb_mult = 1.0 basis = sma(source, bb_length) dev = bb_mult * stdev(source, bb_length) upperx = basis + dev lowerx = basis - dev bbr = (source - lowerx)/(upperx - lowerx) bbr_len = 21 bbr_std = stdev(bbr, bbr_len) bbr_std_thresh = 0.1 is_sideways = (bbr > 0.0 and bbr < 1.0) and bbr_std <= bbr_std_thresh //////////////// fromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31) fromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12) fromYear = input(defval = 2010, title = "From Year", minval = 1970) //monday and session // To Date Inputs toDay = input(defval = 31, title = "To Day", minval = 1, maxval = 31) toMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12) toYear = input(defval = 2021, title = "To Year", minval = 1970) startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00) finishDate = timestamp(toYear, toMonth, toDay, 00, 00) time_cond = true sourcex = close length = 2 pcntChange = 1 roc = 100 * (sourcex - sourcex[length])/sourcex[length] emaroc = ema(roc, length/2) isMoving() => emaroc > (pcntChange / 2) or emaroc < (0 - (pcntChange / 2)) periods = input(19) smooth = input(14, title="RSI Length" ) src = input(low, title="Source" ) rsiClose = rsi(ema(src, periods), smooth) long=rising(rsiClose,2) and not is_sideways and isMoving() short=not rising(rsiClose,2) and not is_sideways and isMoving() if(time_cond) strategy.entry('long',1,when=long) strategy.entry('short',0,when=short)