Chiến lược này chủ yếu kết hợp các tín hiệu từ hai loại chiến lược khác nhau để chồng lên các tín hiệu chiến lược và cải thiện chất lượng tín hiệu.
Chiến lược này có nguồn gốc từ trang 183 của cuốn sách
Chiến lược này sử dụng sự khác biệt giữa đường trung bình động 3 ngày và đường trung bình động 10 ngày để xây dựng một chỉ số. Cụ thể, đó là đường trung bình động theo cấp số nhân 3 ngày trừ đường trung bình động theo cấp số nhân 10 ngày. Sự khác biệt là đường nhanh.
Tín hiệu tổng hợp này của xếp chồng nhiều chiến lược có những lợi thế sau:
lọc tín hiệu giả và cải thiện chất lượng tín hiệu
Vì cần hai chiến lược để phát tín hiệu theo cùng một hướng cùng một lúc, tác động của tín hiệu giả trong một chiến lược duy nhất có thể được tránh, do đó cải thiện độ tin cậy của tín hiệu.
Tích hợp nhiều ý tưởng giao dịch
Kết hợp các chiến lược đảo ngược và các chiến lược xu hướng tích hợp hai ý tưởng ở một mức độ nào đó Giảm các điểm mù của chiến lược và có được một quan điểm thị trường toàn diện hơn.
Độ linh hoạt cao
Theo nhu cầu thực tế, sự kết hợp của các chiến lược tham gia có thể được điều chỉnh để tạo ra các chiến lược kết hợp đa dạng hơn bằng cách kết hợp các loại chiến lược khác nhau.
Các giả định mâu thuẫn
Giả định cơ bản của chiến lược này là nhiều chiến lược có thể xác minh tín hiệu với nhau.
Tín hiệu không nhất quán
Khi hai tín hiệu chiến lược không phù hợp, không thể xác định chiến lược nào đáng tin cậy hơn và có một rủi ro quyết định nhất định.
Sự không phù hợp của tham số
Cài đặt tham số không chính xác có thể khiến một số chiến lược không hoạt động đúng cách, dẫn đến việc không đạt được hiệu ứng mong đợi của sự kết hợp chiến lược.
Các biện pháp đối phó:
Tăng số lượng chiến lược để đa số bỏ phiếu
Thiết lập điểm dừng lỗ để kiểm soát lỗ từ các tín hiệu riêng lẻ
Tối ưu hóa các thông số để đảm bảo hoạt động chiến lược bình thường
Chiến lược cũng có thể được tối ưu hóa theo các hướng sau:
Tăng sự kết hợp của nhiều chiến lược hơn
Tiếp tục thêm nhiều loại chiến lược khác nhau để hình thành các chiến lược kết hợp, để tiếp tục cải thiện chất lượng tín hiệu.
Điều kiện lọc trước
Theo điều kiện thị trường, một số điều kiện trước có thể được thiết lập, chẳng hạn như lọc thị trường, để tránh mở các vị trí trong điều kiện thị trường không phù hợp.
Điều chỉnh năng động trọng lượng chiến lược
Các trọng lượng của các chiến lược khác nhau trong sự kết hợp có thể được điều chỉnh năng động theo hiệu suất lịch sử của chúng, do đó các chiến lược có hiệu suất tốt hơn có thể đóng một vai trò lớn hơn.
Tối ưu hóa chi tiết tham số
Một cách tiếp cận có hệ thống hơn có thể được sử dụng để kiểm tra cẩn thận và tối ưu hóa các thông số nội bộ của mỗi chiến lược để có được các thông số tối ưu.
Chiến lược này thuộc về một chiến lược tổng hợp chồng chéo đa chiến lược. Nó tích hợp hai chiến lược phụ, chiến lược đảo ngược xu hướng chéo và chiến lược dao động ba-mười. Nó chỉ tạo ra các lệnh giao dịch khi tín hiệu giao dịch của chúng ở cùng một hướng, có thể lọc hiệu quả các tín hiệu giả trong một chiến lược duy nhất và cải thiện chất lượng tín hiệu. So với một chiến lược duy nhất, loại kết hợp chiến lược này có những lợi thế như độ tin cậy tín hiệu cao hơn và khả năng chịu lỗi mạnh hơn. Nhưng cũng cần lưu ý những rủi ro do các giả định nhất quán mang lại và nên thực hiện các biện pháp thích hợp để kiểm soát chúng. Nói chung, khung kết hợp đa chiến lược này có tiềm năng mở rộng lớn và có thể được làm sâu sắc hơn bằng cách thêm nhiều chiến lược phụ, tối ưu hóa các tham số và thiết lập các điều kiện lọc.
/*backtest start: 2024-01-11 00:00:00 end: 2024-01-18 00:00:00 period: 5m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 04/12/2019 // 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 // TradeStation does not allow the user to make a Multi Data Chart with // a Tick Bar Chart and any other type a chart. This indicator allows the // user to plot a daily 3-10 Oscillator on a Tick Bar Chart or any intraday interval. // Walter Bressert's 3-10 Oscillator is a detrending oscillator derived // from subtracting a 10 day moving average from a 3 day moving average. // The second plot is an 16 day simple moving average of the 3-10 Oscillator. // The 16 period moving average is the slow line and the 3/10 oscillator is // the fast line. // For more information on the 3-10 Oscillator see Walter Bressert's book // "The Power of Oscillator/Cycle Combinations" // // 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 D_Three(Length1, Length2, Length3) => pos = 0.0 xPrice = security(syminfo.tickerid,"D", hl2) xfastMA = ema(xPrice, Length1) xslowMA = ema(xPrice, Length2) xMACD = xfastMA - xslowMA xSignal = sma(xMACD, Length3) pos := iff(xSignal > xMACD, -1, iff(xSignal < xMACD, 1, nz(pos[1], 0))) pos strategy(title="Combo Backtest 123 Reversal & D_Three Ten Osc", shorttitle="Combo", overlay = true) Length = input(14, minval=1) KSmoothing = input(1, minval=1) DLength = input(3, minval=1) Level = input(50, minval=1) //------------------------- Length1 = input(3, minval=1) Length2 = input(10, minval=1) Length3 = input(16, minval=1) reverse = input(false, title="Trade reverse") posReversal123 = Reversal123(Length, KSmoothing, DLength, Level) posD_Three = D_Three(Length1, Length2, Length3) pos = iff(posReversal123 == 1 and posD_Three == 1 , 1, iff(posReversal123 == -1 and posD_Three == -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 )