Chiến lược theo dõi đảo ngược đa yếu tố tạo ra tín hiệu giao dịch bằng cách kết hợp các mô hình đảo ngược giá và các chỉ số mua quá mức bán quá mức. Nó tổng hợp nhiều yếu tố để xác định mức cao và thấp của thị trường và tạo ra các tín hiệu giao dịch tại các điểm đảo ngược để nắm bắt sự đảo ngược giá trung hạn ngắn hạn.
Chiến lược bao gồm hai mô-đun:
Đi ngắn khi thấy mức cao mới 2 ngày nhưng rút lại vào ngày thứ 3, cho thấy mức cao ngắn hạn tiềm năng.
Đi dài khi thấy mức thấp mới 2 ngày nhưng bật lên vào ngày thứ 3, cho thấy mức thấp ngắn hạn tiềm năng.
Xác định các điểm đảo ngược bằng cách điều chỉnh năng động RSI các đường mua quá mức và bán quá mức.
Đi ngắn khi RSI trên đường mua quá mức điều chỉnh, đi dài khi RSI dưới đường bán quá mức điều chỉnh.
Các tín hiệu giao dịch chỉ được tạo ra khi cả hai mô-đun đều liên kết.
Ưu điểm lớn nhất là kết hợp nhiều yếu tố để xác định mức cao và thấp cấu trúc, lọc một số tín hiệu sai từ các yếu tố riêng lẻ và cải thiện tỷ lệ chiến thắng giao dịch thực tế.
Kết hợp nhiều yếu tố để xác định toàn diện mức cao/mức thấp
Kết hợp các mô hình đảo ngược và các chỉ số mua quá mức / bán quá mức
Chế độ lọc đảo ngược sai, cải thiện độ chính xác
Các thông số backtest tối ưu hóa có thể thích nghi với các thị trường khác nhau
Dễ thực hiện để sao chép nhanh
Các tín hiệu đảo ngược có thể bị chậm, cần cập nhật tham số
Ngăn chặn giao dịch quá mức để tránh thêm hoa hồng
Các yếu tố cơ bản của từng cổ phiếu vẫn cần được xem xét
Chiến lược đảo ngược phù hợp hơn cho chỉ số và cổ phiếu nóng
Chiến lược theo dõi đảo ngược đa yếu tố kết hợp hoàn hảo các điểm mạnh của các công cụ lượng tử và kinh nghiệm phân tích thủ công bằng cách xem xét nhiều quan điểm cho tín hiệu giao dịch. So với các chiến lược chỉ số duy nhất, nó cải thiện đáng kể sự ổn định giao dịch thực tế và tỷ lệ thắng. Chiến lược này đáng để xác minh và tối ưu hóa trong backtests đầu tiên, sau đó dần dần thực hiện trong giao dịch trực tiếp, với giá trị thực tế rất rõ rệt.
/*backtest start: 2023-08-15 00:00:00 end: 2023-09-14 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 15/06/2021 // This is combo strategies for get a cumulative signal. // // First strategy // This System was created from the Book "How I Tripled My Money In The // Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies. // The strategy buys at market, if close price is higher than the previous close // during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. // The strategy sells at market, if close price is lower than the previous close price // during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50. // // Second strategy // The related article is copyrighted material from // Stocks & Commodities. // // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// Reversal123(Length, KSmoothing, DLength, Level) => vFast = sma(stoch(close, high, low, Length), KSmoothing) vSlow = sma(vFast, DLength) pos = 0.0 pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1, iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) pos RE_RSI(Value,WildPer) => pos = 0.0 AUC = 0.0 ADC = 0.0 ExpPer = 2 * WildPer - 1 K = 2 / (ExpPer + 1) AUC := iff(close > close[1], K * (close - close[1]) + (1 - K) * nz(AUC[1], 1), (1-K) * nz(AUC[1], 1)) ADC := iff(close > close[1], (1-K) * nz(ADC[1], 1), K * (close[1] - close) + (1 - K) * nz(ADC[1], 1)) nVal = (WildPer - 1) * (ADC * Value / (100 - Value) - AUC) nRes = iff(nVal >= 0, close + nVal, close + nVal * (100 - Value) / Value) pos:= iff(nRes > close, -1, iff(nRes < close, 1, nz(pos[1], 0))) pos strategy(title="Combo Backtest 123 Reversal & Reverse Engineering RSI, by Giorgos Siligardos", shorttitle="Combo", overlay = true) line1 = input(true, "---- 123 Reversal ----") Length = input(14, minval=1) KSmoothing = input(1, minval=1) DLength = input(3, minval=1) Level = input(50, minval=1) //------------------------- line2 = input(true, "---- Reverse Engineering RSI ----") Value = input(50, minval=1) WildPer = input(14,minval=1) reverse = input(false, title="Trade reverse") posReversal123 = Reversal123(Length, KSmoothing, DLength, Level) posRE_RSI = RE_RSI(Value,WildPer) pos = iff(posReversal123 == 1 and posRE_RSI == 1 , 1, iff(posReversal123 == -1 and posRE_RSI == -1, -1, 0)) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1 , 1, pos)) if (possig == 1 ) strategy.entry("Long", strategy.long) if (possig == -1 ) strategy.entry("Short", strategy.short) if (possig == 0) strategy.close_all() barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )