Chiến lược đảo ngược đột phá động lượng nhị phân kết hợp chỉ số Stochastic và chỉ số Bull Power để thực hiện lọc tín hiệu kép và giao dịch đảo ngược tại các thời điểm chuyển đổi thị trường để theo đuổi các tình huống bán quá mức và mua quá mức.
Chiến lược bao gồm hai phần:
123 Chiến lược đảo ngược
Nó sử dụng chiến lược đảo ngược được đề xuất bởi Ulf Jensen trong cuốn sách của ông
Chỉ số sức mạnh bò
Nó sử dụng chỉ số động lực được đề xuất bởi Vadim Gimelfarb trong cuốn sách của ông
Chiến lược kết hợp hai chiến lược tín hiệu đơn trên. Nó chỉ tạo ra tín hiệu giao dịch khi tín hiệu của hai chiến lược phù hợp để thực hiện lọc tín hiệu kép.
Chiến lược này kết hợp các lợi thế của các chiến lược đảo ngược và các chiến lược theo dõi. Nó có thể nắm bắt các tín hiệu đảo ngược kịp thời khi thị trường cho thấy các dấu hiệu đảo ngược, trong khi giảm các tín hiệu sai thông qua lọc tín hiệu kép để tránh đuổi theo mức cao và bán mức thấp.
Chiến lược này cũng có một số rủi ro:
Các biện pháp đối phó:
Chiến lược có thể được tối ưu hóa thêm trong các khía cạnh sau:
Chiến lược đảo ngược đột phá động lượng nhị phân kết hợp chỉ số Stochastic và chỉ số Bull Power để đạt được lọc tín hiệu kép và giao dịch đảo ngược. Nó có thể nắm bắt các cơ hội đảo ngược thị trường và tránh tiếng ồn do tín hiệu duy nhất tạo ra. Đây là một chiến lược định lượng ổn định và hiệu quả. Chiến lược có thể được cải thiện thông qua tối ưu hóa tham số, chiến lược dừng lỗ, xác minh tín hiệu, v.v., làm cho nó phù hợp với nhiều loại và môi trường thị trường hơn. Nó có tiềm năng tối ưu hóa và ứng dụng rất lớn.
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 05/07/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 // Bull Power Indicator // To get more information please see "Bull And Bear Balance Indicator" // by Vadim Gimelfarb. // // 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 BullPower(SellLevel, BuyLevel) => pos = 0 value = iff (close < open , iff (close[1] < open , max(high - close[1], close - low), max(high - open, close - low)), iff (close > open, iff(close[1] > open, high - low, max(open - close[1], high - low)), iff(high - close > close - low, iff (close[1] < open, max(high - close[1], close - low), high - open), iff (high - close < close - low, iff(close[1] > open, high - low, max(open - close, high - low)), iff (close[1] > open, max(high - open, close - low), iff(close[1] < open, max(open - close, high - low), high - low)))))) pos := iff(value > SellLevel, -1, iff(value <= BuyLevel, 1, nz(pos[1], 0))) pos strategy(title="Combo Backtest 123 Reversal & Bull Power", shorttitle="Combo", overlay = true) Length = input(14, minval=1) KSmoothing = input(1, minval=1) DLength = input(3, minval=1) Level = input(50, minval=1) //------------------------- SellLevel = input(15, step=1) BuyLevel = input(3, step=1) reverse = input(false, title="Trade reverse") posReversal123 = Reversal123(Length, KSmoothing, DLength, Level) posBullPower = BullPower(SellLevel, BuyLevel) pos = iff(posReversal123 == 1 and posBullPower == 1 , 1, iff(posReversal123 == -1 and posBullPower == -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 )