Chiến lược đảo chiều kép thực hiện giao dịch xu hướng bằng cách kết hợp các tín hiệu đảo ngược giá và tín hiệu đảo ngược tỷ lệ biến động. Nó dựa trên 123 hình thức để xác định các điểm đảo ngược giá, đồng thời hỗ trợ lọc các tín hiệu giả bằng cách sử dụng tỷ lệ biến động kênh Donchian. Chiến lược này phù hợp với việc nắm giữ đường dài trung gian, lọc bằng cách đảo ngược hai lần, có thể nắm bắt hiệu quả các điểm đảo ngược thị trường và đạt được lợi nhuận dư thừa.
Một phần của sự đảo ngược giá sử dụng sự phán đoán 123 hình thức. Điều này có nghĩa là giá của hai đường K đầu tiên quay ngược (lên hoặc giảm) và đường K thứ ba quay lại (giảm hoặc tăng), do đó được gọi là hình thức 123. Khi giá xuất hiện ba đường K đảo ngược, thường báo hiệu một xu hướng ngắn hạn sắp sửa đảo ngược. Để xác minh thêm tính đáng tin cậy của sự đảo ngược giá, chiến lược này cũng sử dụng sự phán đoán chỉ số ngẫu nhiên, chỉ khi các chỉ số ngẫu nhiên cũng quay ngược (lên hoặc tăng nhanh chóng) sẽ kích hoạt giao dịch tín hiệu.
Phân đoạn đảo ngược tỷ lệ biến động sử dụng tỷ lệ biến động kênh Donchian. Phân đoạn Donchian chủ yếu phản ánh phạm vi biến động của giá. Khi biến động giá tăng, chiều rộng của kênh Donchian cũng mở rộng; khi biến động giá giảm, chiều rộng của kênh Donchian cũng thu hẹp.
Nhìn chung, chiến lược này là một chiến lược xu hướng tương đối vững chắc, bằng cách xác minh hai lần đảo ngược, đảm bảo độ tin cậy của tín hiệu giao dịch và kiểm soát rủi ro.
Chiến lược chuyển động kép có khả năng kiểm soát rủi ro tốt hơn thông qua việc xác minh hai lần đảo ngược giá và đảo ngược tỷ lệ biến động. Nó lọc rất nhiều tiếng ồn và ổn định hơn so với chỉ số duy nhất. Chiến lược này có thể nâng cao thêm chất lượng tín hiệu và ổn định lợi nhuận thông qua các phương pháp như tối ưu hóa tham số, tăng cường mô-đun dừng mất mát, nhập lượng. Nó phù hợp với hợp tác như là một phần của chiến lược đường dài trung gian như cổ phiếu, tiền kỹ thuật số và kết hợp hợp lý với các mô-đun khác để có lợi nhuận vượt quá tốt.
/*backtest start: 2024-01-20 00:00:00 end: 2024-02-19 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 06/03/2020 // 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 Donchian Channel was developed by Richard Donchian and it could be compared // to the Bollinger Bands. When it comes to volatility analysis, the Donchian Channel // Width was created in the same way as the Bollinger Bandwidth technical indicator was. // // As was mentioned above the Donchian Channel Width is used in technical analysis to measure // volatility. Volatility is one of the most important parameters in technical analysis. // A price trend is not just about a price change. It is also about volume traded during this // price change and volatility of a this price change. When a technical analyst focuses his/her // attention solely on price analysis by ignoring volume and volatility, he/she only sees a part // of a complete picture only. This could lead to a situation when a trader may miss something and // lose money. Lets take a look at a simple example how volatility may help a trader: // // Most of the price based technical indicators are lagging indicators. // When price moves on low volatility, it takes time for a price trend to change its direction and // it could be ok to have some lag in an indicator. // When price moves on high volatility, a price trend changes its direction faster and stronger. // An indicator's lag acceptable under low volatility could be financially suicidal now - Buy/Sell signals could be generated when it is already too late. // // Another use of volatility - very popular one - it is to adapt a stop loss strategy to it: // Smaller stop-loss recommended in low volatility periods. If it is not done, a stop-loss could // be generated when it is too late. // Bigger stop-loss recommended in high volatility periods. If it is not done, a stop-loss could // be triggered too often and you may miss good trades. // // 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 DCW(length, smoothe) => pos = 0.0 xUpper = highest(high, length) xLower = lowest(low, length) xDonchianWidth = xUpper - xLower xSmoothed = sma(xDonchianWidth, smoothe) pos := iff(xDonchianWidth > xSmoothed, -1, iff(xDonchianWidth < xSmoothed, 1, nz(pos[1], 0))) pos strategy(title="Combo Backtest 123 Reversal & Donchian Channel Width", shorttitle="Combo", overlay = true) Length = input(14, minval=1) KSmoothing = input(1, minval=1) DLength = input(3, minval=1) Level = input(50, minval=1) //------------------------- LengthDCW = input(20, minval=1) SmootheSCW = input(22, minval=1) reverse = input(false, title="Trade reverse") posReversal123 = Reversal123(Length, KSmoothing, DLength, Level) posDCW = DCW(LengthDCW, SmootheSCW) pos = iff(posReversal123 == 1 and posDCW == 1 , 1, iff(posReversal123 == -1 and posDCW == -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 )