Chiến lược trung bình chuyển động hàm số hai DEMA là một chiến lược giao dịch ngắn hạn dựa trên DEMA (Đường trung bình chuyển động hàm số hai). Nó kết hợp sự trơn tru của các đường trung bình chuyển động và phản ứng nhanh của EMA, nhằm mục đích nắm bắt xu hướng giá ngắn hạn và tạo ra lợi nhuận bằng cách giao dịch trên các giao dịch chéo DEMA.
Chiến lược chủ yếu dựa trên các chữ thập vàng và chữ thập chết giữa đường nhanh DEMA và đường chậm DEMA để xác định tín hiệu mua và bán.
Cụ thể, đường dây nhanh được tính như sau:
demaFast = 2 * ema(close, fastPeriod) - ema(ema(close, fastPeriod), fastPeriod)
Và dòng chậm là:
demaSlow = 2 * ema(close, slowPeriod) - ema(ema(close, slowPeriod), slowPeriod)
Nơi fastPeriod và slowPeriod đại diện cho các giai đoạn của đường nhanh và chậm tương ứng.
Khi đường nhanh vượt qua trên đường chậm, một tín hiệu mua được tạo ra. Khi đường nhanh vượt qua dưới đường chậm, một tín hiệu bán được tạo ra.
buy = crossover(demaSlow, demaFast)
sell = crossunder(demaSlow, demaFast)
Chiến lược xác định hướng giao dịch dựa trên đường chéo DEMA.
So với các đường trung bình động truyền thống, đường DEMA nhạy cảm hơn và có thể phản ứng với sự thay đổi giá nhanh hơn. Điều này cho phép chiến lược nắm bắt nhiều cơ hội giao dịch ngắn hạn hơn.
Ngoài ra, các đường DEMA kết hợp sự trơn tru của đường trung bình động, giúp lọc ra một số tiếng ồn thị trường và tránh các tín hiệu sai.
Ngoài ra, sự kết hợp đường dây nhanh và chậm tránh được sự giao thoa sai ở một mức độ nào đó.
Tóm lại, chiến lược trung bình di chuyển nhân tố hai DEMA có những lợi thế của phản ứng nhanh, lọc tiếng ồn và tín hiệu đáng tin cậy ổn định.
Mặc dù ổn định hơn EMA, các đường DEMA vẫn có thể bị chéo sai, tạo ra tín hiệu không chính xác. Điều này có thể được giải quyết bằng cách điều chỉnh các tham số thời gian của đường nhanh và chậm để đảm bảo độ nhạy và ổn định đủ.
Ngoài ra, như một chiến lược ngắn hạn, nó nhạy cảm với chi phí giao dịch. Tần suất giao dịch cao hoặc kích thước giao dịch nhỏ có thể làm xói mòn lợi nhuận. Các tham số giao dịch hợp lý nên được thiết lập để kiểm soát chi phí.
Cuối cùng, không có chiến lược chỉ số kỹ thuật nào có thể tránh hoàn toàn dừng lỗ.
Vẫn còn chỗ để tối ưu hóa:
Kiểm tra các kết hợp thời gian khác nhau để tìm các thông số tối ưu.
Kết hợp các chỉ số khác như RSI để xác nhận tín hiệu và tránh tín hiệu sai.
Tối ưu hóa các cơ chế dừng lỗ, như dừng lỗ để khóa lợi nhuận.
Tối ưu hóa quản lý vốn, như kích thước vị trí dựa trên kích thước tài khoản, hoặc kích thước điều chỉnh biến động.
Chiến lược trung bình di chuyển nhân tố kép DEMA nói chung là một chiến lược giao dịch ngắn hạn ổn định. Nó có khả năng phản hồi nhanh và làm mịn. So với SMA, nó có thể nắm bắt nhiều cơ hội ngắn hạn hơn. Với điều chỉnh tham số và cơ chế thích hợp, lợi nhuận và sự ổn định của chiến lược có thể được cải thiện hơn nữa. Nó phù hợp với các nhà đầu tư muốn giao dịch ngắn hạn tần suất cao.
/*backtest start: 2022-09-19 00:00:00 end: 2023-09-25 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ strategy(title = "DEMA Strategy", shorttitle = "DEMA Strategy",initial_capital=1000, commission_value=0.2, commission_type =strategy.commission.percent, default_qty_value=100 , overlay = false, pyramiding=10, default_qty_type=strategy.percent_of_equity) //@Moneros 2017 //Based on The DEMA is a fast-acting moving average that is more responsive to market changes than a traditional moving average // !!!! IN ORDER TO AVOID REPAITING ISSUES !!!! // !!!! DO NOT VIEW IN LOWER RESOLUTIONS THAN res/2 PARAMETER !!!! // for example res = 120 view >= 60m res = 60 view >= 30m // the length of the DEMA sampling shouldn't be longer than a candle // Best profits tested on BTCUSD //res = 105 slowPeriod = 2 fastPeriod = 32 //res = 125 slowPeriod = 3 fastPeriod = 21 //res = 120 slowPeriod = 2 fastPeriod = 32 //res = 130 slowPeriod = 1 fastPeriod = 24 //res = 40 slowPeriod = 4 fastPeriod = 93 //res = 60 slowPeriod = 1 fastPeriod = 67 fastPeriod = input(defval = 32, title = "DEMA FAST Period", minval = 2) slowPeriod = input(defval = 2, title = "DEMA SLOW Period", minval = 1) res = input(title="Resolution - not lower than chart", defval="120") demaFast = request.security(syminfo.tickerid, res, 2 * ta.ema(close, fastPeriod) - ta.ema(ta.ema(close, fastPeriod), fastPeriod) ) demaSlow = request.security(syminfo.tickerid,res, 2 * ta.ema(close, slowPeriod) - ta.ema(ta.ema(close, slowPeriod), slowPeriod) ) plot(demaFast,color=color.red) plot(demaSlow,color=color.lime) buy = ta.crossover(demaSlow, demaFast) sell = ta.crossunder(demaSlow, demaFast) // value [1] for avoid repaiting bottom bars bgcolor( buy[1] ? color.lime : na, transp=0) bgcolor( sell[1] ? color.red : na, transp=0) strategy.entry("BUY", strategy.long, 1, when = buy) strategy.entry("SELL", strategy.short, 1, when = sell )