Chiến lược giao dịch chỉ số động lực tỷ lệ thay đổi kép

Tác giả:ChaoZhang, Ngày: 2023-11-23 10:37:00
Tags:

img

Tổng quan

Đây là một chiến lược giao dịch dựa trên Chỉ số Động lực Thay đổi Tăng gấp đôi (DRCMI). Nó tạo ra các tín hiệu giao dịch bằng cách đo đạc động lực thị trường trên nhiều khung thời gian.

Chiến lược logic

Cốt lõi của chiến lược này là DRCMI, đó là trung bình trọng số của nhiều chỉ số Tỷ lệ Thay đổi (ROC) trong các giai đoạn khác nhau. Cụ thể, nó kết hợp ROC 6 giai đoạn, 10 giai đoạn, 15 giai đoạn và 20 giai đoạn. ROC 6 giai đoạn và 10 giai đoạn có trọng lượng 1, trong khi ROC 15 giai đoạn có trọng lượng 2, và ROC 20 giai đoạn có trọng lượng 3.

Bằng cách kết hợp ROC trên các khung thời gian, DRCMI phản ánh cả động lực ngắn hạn và dài hạn. Khi dương tính, nó chỉ ra xu hướng tăng trong cả ngắn hạn và dài hạn. Khi âm tính, nó báo hiệu xu hướng giảm. Độ cường độ của động lực cũng được ghi lại trong độ phình biến động của DRCMI.

Các tín hiệu giao dịch được tạo ra dựa trên tính chu kỳ của DRCMI. Một vị trí dài được bắt đầu khi DRCMI vượt trên 0, trong khi một vị trí ngắn được bắt đầu khi nó vượt dưới 0.

Phân tích lợi thế

Những lợi thế chính của chiến lược này là:

  1. Tích hợp động lực qua các giai đoạn để xác định xu hướng chính xác hơn.
  2. Khả năng nắm bắt chu kỳ tốt hơn so với ROC khung thời gian duy nhất.
  3. Phương pháp cân nhắc hợp lý tập trung vào thời gian dài để lọc tiếng ồn.
  4. Đơn giản để thực hiện với chỉ một chỉ số duy nhất cho tín hiệu.
  5. Thời gian xem lại tùy chỉnh phù hợp với các sản phẩm khác nhau.

Phân tích rủi ro

Ngoài ra còn có một số rủi ro cần xem xét:

  1. Độ nhạy với các thông số với nhiều khung thời gian tích hợp.
  2. Có thể bỏ qua các yếu tố khác bằng cách chỉ xem xét động lực.
  3. Sự chậm trễ tiềm năng đòi hỏi phải tối ưu hóa lối vào và lối ra.
  4. Đặt lỗ dừng vẫn cần thiết trong thời gian biến động cao.

Để giảm thiểu rủi ro, dừng lỗ nên được sử dụng cùng với tối ưu hóa các thông số DRCMI và kết hợp các chỉ số kỹ thuật bổ sung.

Hướng dẫn tối ưu hóa

Một số cách để cải thiện chiến lược:

  1. Tối ưu hóa các thông số DRCMI như thời gian và trọng lượng.
  2. Tích hợp các chỉ số xu hướng để điều chỉnh các thông số theo chế độ thị trường.
  3. Thực hiện dừng động để khóa lợi nhuận.
  4. Xem xét các mối quan hệ giữa các thị trường với phân tích tương quan để xây dựng chênh lệch.

Kết luận

Chiến lược này tạo ra tín hiệu giao dịch bằng cách ngưng tụ động lượng từ nhiều khung thời gian vào chỉ số DRCMI. Nó đơn giản nhưng hiệu quả trong việc kiếm lợi từ sự dao động động. Tuy nhiên, điều chỉnh tham số và thực hiện dừng lỗ đòi hỏi tối ưu hóa hơn nữa, và kết hợp DRCMI với các chỉ số kỹ thuật bổ sung có thể cải thiện hiệu suất.


/*backtest
start: 2023-10-23 00:00:00
end: 2023-11-22 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 20/09/2017
// This indicator really is the KST indicator presented by Martin Pring. 
// the KST indicator is a weighted summed rate of change oscillator that 
// is designed to identify meaningful turns. Various smoothed rate of change 
// indicators can be combined to form different measurements of cycles.
//
// You can change long to short in the Input Settings
// WARNING:
//  - For purpose educate only
//  - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="MovROC (KST indicator)", shorttitle="MovROC (KST indicator)")
reverse = input(false, title="Trade reverse")
hline(0, color=purple, linestyle=line)
xROC6 = sma(roc(close, 6), 10)
xROC10 = sma(roc(close, 10), 10)
xROC15 = sma(roc(close, 15), 9)
xROC20 = sma(roc(close, 20), 15)
nRes = xROC6 + (2 * xROC10) + (3 * xROC15) + (4 * xROC20)
pos = iff(nRes > 0, 1,
	   iff(nRes < 0, -1, nz(pos[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)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue ) 
plot(nRes, color=blue, title="MovROC (KST indicator)")

Thêm nữa