Chiến lược này được gọi là
Ba chỉ số được sử dụng là:
Kaufman Đường trung bình động thích nghi, nhạy cảm trong việc nắm bắt biến động thị trường.
Hull Moving Average, với các vòng quay trơn tru, lọc ra các tín hiệu sai.
Cơ chế SuperTrend, tạo ra các kênh giá để tránh theo đuổi mức cao và bán mức thấp.
Cùng nhau chúng tạo thành mô hình đám mây, với dải trên cùng là các giá trị cao nhất trong ba, và dải dưới cùng là các giá trị thấp nhất.
Logic giao dịch là:
Khi ngọn nến phá vỡ trên đỉnh mây, nó báo hiệu phá vỡ kênh xu hướng tăng cho tín hiệu mua.
Khi gần hoặc thấp phá vỡ dưới đáy mây, nó đánh dấu sự khởi đầu của một xu hướng giảm cho việc đóng cửa dài.
Ưu điểm của chiến lược này là sự kết hợp của chỉ số đánh giá tình trạng xu hướng chính xác hơn, giảm các tín hiệu sai.
Tóm lại, sử dụng nhiều chỉ số để xác định xu hướng là một cách tiếp cận phổ biến và hiệu quả.
/*backtest start: 2022-09-12 00:00:00 end: 2023-02-03 00:00:00 period: 1d basePeriod: 1h 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/ // © SnarkyPuppy //@version=5 strategy("HKST Cloud", overlay=true, default_qty_type= strategy.percent_of_equity, default_qty_value=100) ////////////////nAMA Lengthkaufman = input(20) xPrice = ohlc4 xvnoise = math.abs(xPrice - xPrice[1]) nfastend = 0.666 nslowend = 0.0645 nsignal = math.abs(xPrice - xPrice[Lengthkaufman]) nnoise = math.sum(xvnoise, Lengthkaufman) nefratio = nnoise != 0? nsignal / nnoise : 0 nsmooth = math.pow(nefratio * (nfastend - nslowend) + nslowend, 2) nAMA = float(0) nAMA := nz(nAMA[1]) + nsmooth * (xPrice - nz(nAMA[1])) //plot(nAMA,color=color.red) ///short=input(true) /////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////// ////////hull moving average hull_len=input(20) hull= ta.hma(nAMA,hull_len) ///////atr trail atr_factor=input(2) atr_period=input(5) [supertrend, direction] = ta.supertrend(atr_factor,atr_period) /////////cloud band1= math.max(supertrend,hull,nAMA) band2= math.min(supertrend,hull,nAMA) b1=plot(band1, "band1", color = color.rgb(76, 175, 79, 85), style=plot.style_linebr) b2=plot(band2, "band2", color = color.rgb(255, 82, 82, 78), style=plot.style_linebr) fill(b1,b2,color.rgb(12, 50, 186, 75)) longCondition = ta.crossover(high,band1) //or ta.crossover(low,band2) if (longCondition) strategy.entry("Up", strategy.long) shortCondition = ta.crossunder(low,band2) or close<band2 if (shortCondition) strategy.close("Up", shortCondition)