avatar of 发明者量化-小小梦 发明者量化-小小梦
tập trung vào tin nhắn riêng tư
4
tập trung vào
1271
Người theo dõi

Hệ thống giao dịch trung bình động thích ứng tiền kỹ thuật số và phân tích thuật toán KAMA - dựa trên phần mềm giao dịch định lượng của nhà phát minh

Được tạo ra trong: 2019-07-06 16:21:15, cập nhật trên: 2023-10-24 21:42:44
comments   1
hits   5792

[TOC]

Hệ thống giao dịch trung bình động thích ứng tiền kỹ thuật số và phân tích thuật toán KAMA - dựa trên phần mềm giao dịch định lượng của nhà phát minh

Giới thiệu về Đường trung bình động thích ứng KAMA

Đúng như tên gọi, đường trung bình động thích ứng (KAMA) thuộc loại đường trung bình động, nhưng không giống như đường trung bình động truyền thống, nó rất “thông minh”. Chúng ta biết rằng các đường trung bình động thông thường có nhiều nhược điểm. Ví dụ, đường trung bình động ngắn hạn gần với xu hướng giá và rất nhạy cảm, nhưng dễ tạo ra tín hiệu sai; đường trung bình động dài hạn rất chính xác trong việc đánh giá xu hướng, nhưng thường phải mất một thời gian để thị trường phản ứng.

“Trí thông minh” của KAMA nằm ở khả năng tự động điều chỉnh độ nhạy dựa trên các điều kiện thị trường hiện tại, tức là tính biến động. Biểu hiện của nó là: trong một thị trường biến động, những thay đổi trong KAMA chậm lại đáng kể; khi một xu hướng xuất hiện, nó phản ứng nhanh chóng. Trong giao dịch thực tế, lợi thế của nó là có thể giảm chi phí giao dịch do “sự lộn xộn hàng ngày” gây ra và cho phép bạn tham gia kịp thời khi thị trường khởi sắc.

KAMA trong biểu đồ

Hệ thống giao dịch trung bình động thích ứng tiền kỹ thuật số và phân tích thuật toán KAMA - dựa trên phần mềm giao dịch định lượng của nhà phát minh

Phương pháp tính toán KAMA

  • Hướng (DIR) = Giá đóng cửa - Giá đóng cửa n ngày trước
  • Độ biến động (VIR) = tổng(abs(giá đóng cửa - giá đóng cửa của ngày giao dịch trước đó), n)
  • Hiệu quả (ER) = Hướng / Độ biến động
  • Nhanh = 2 / (n1 + 1)
  • Chậm = 2 / (n2 + 1)
  • Độ mượt (CS) = Hiệu suất * (Nhanh - Chậm) + Chậm
  • Hệ số (CQ) = Làm mịn * Làm mịn
  • KAMA = Trung bình có trọng số theo cấp số nhân (Trung bình động động (giá đóng cửa, hệ số), 2)

Trong đó, n, n1 và n2 đều là tham số chu kỳ. Theo mặc định, n là 10 chu kỳ, n1 là 2 chu kỳ ngắn hạn và n2 là 30 chu kỳ dài hạn. Đây cũng là một tập hợp các tham số được Perry Kaufman, tác giả của KAMA, công nhận. n được sử dụng để tính hiệu quả tính toán hướng và độ biến động, n1 và n2 là các chu kỳ của đường trung bình động nhanh và đường trung bình động chậm. Về mặt lý thuyết, càng lớn Tham số n1, KAMA càng mượt mà.

Phương pháp tính toán KAMA là: đầu tiên tính hướng (DIR) và độ biến động (VIR), sau đó tính hiệu quả dựa trên tỷ lệ của hai yếu tố này. Hiệu quả (ER) là thước đo mức độ thay đổi giá và được tính toán đơn giản: hướng/biến động. Kết quả tính toán nằm trong khoảng từ 0 đến 1. Khi giá trị ER gần 0 hơn, điều đó chỉ ra rằng thị trường đang ở trạng thái biến động. Khi giá trị ER gần 1 hơn, điều đó chỉ ra rằng thị trường đang ở trạng thái có xu hướng.

Sau khi tính được hiệu quả (ER), hằng số làm mịn (CS) có thể được suy ra bằng cách kết hợp trung bình động nhanh và trung bình động chậm: hiệu quả * (nhanh - chậm) + chậm. CS biểu thị tốc độ chuyển động của xu hướng. Theo công thức tính toán của CS, chúng ta có thể thấy rằng sự thay đổi của CS luôn tỷ lệ thuận với sự thay đổi của ER.

Hệ số (CQ) sau đó được tính toán dựa trên sức mạnh làm mịn, với mục tiêu là làm cho các tham số chu kỳ chậm đóng vai trò quan trọng hơn trong phép tính, đây cũng là một cách tiếp cận bảo thủ hơn. Độ mịn cuối cùng của KAMA được xác định bởi hệ số (CQ). Trong phép tính KAMA, hệ số (CQ) xác định các tham số chu kỳ của hai phép làm mịn trung bình động cuối cùng, cụ thể là: trung bình trọng số mũ (trung bình động động (giá đóng cửa, hệ số), 2).

Cách sử dụng KAMA

Mặc dù phương pháp tính toán KAMA rất phức tạp, nhưng cách sử dụng của nó tương tự như các đường trung bình động thông thường. Trong các ứng dụng thực tế, nó không chỉ có thể xác định xu hướng thị trường mà còn có thể được sử dụng để xác định điểm mua và bán chính xác. Vì nó rất “thông minh” nên có thể được sử dụng trong nhiều chiến lược giao dịch và thậm chí đáng thử trong các loại tiền kỹ thuật số.

  • Khi giá lớn hơn KAMA và KAMA hướng lên trên, hãy mở vị thế mua.
  • Khi giá thấp hơn KAMA và KAMA đang đi xuống, một vị thế bán sẽ được mở.
  • Khi giá thấp hơn KAMA hoặc KAMA di chuyển xuống, các vị thế mua sẽ bị đóng.
  • Khi giá lớn hơn KAMA hoặc KAMA tăng lên, vị thế bán sẽ bị đóng.

Xây dựng chiến lược giao dịch dựa trên KAMA

Bước 1: Tính KAMA Để ý! Ở góc trên bên trái, chọn ngôn ngữ lập trình:My语言. Đã có một KAMA có sẵn trong thư viện talib, nhưng nó chỉ có một tham số bên ngoài là (n) chu kỳ, và n1 và n2 mặc định là 2 và 30. Các chiến lược trong bài viết này chỉ mang tính tham khảo. Những người bạn có kỹ năng thực hành tốt cũng có thể tự viết. Sau đó, ngôn ngữ My cũng có thể được trộn trực tiếp với ngôn ngữ JavaScript. Hãy chú ý đến đoạn mã sau:

%%  // My语言内JavaScript的标准格式
scope.KAMA = function() {
    var r = _C(exchange.GetRecords);  // 获取K线数组
    if (r.length > 140) {  // 过滤K线长度
        var kama = talib.KAMA(r, 140);  // 调用talib库计算KAMA
        return kama[kama.length - 2];  // 返回KAMA的具体数值
    }
    return;
}
%%  // My语言内JavaScript的标准格式

Bước 2: Tính toán điều kiện giao dịch và đặt lệnh

%%
scope.KAMA = function() {
    var r = _C(exchange.GetRecords);
    if (r.length > 140) {
        var kama = talib.KAMA(r, 140);
        return kama[kama.length - 2];
    }
    return;
}
%%

K^^KAMA;  // 把KAMA打印到图表上
A:CLOSE;  // 把收盘价打印到图表上

K > REF(K, 1) && CLOSE > K,BK;  // 开多
K < REF(K, 1) && CLOSE < K,SK;  // 开空
K < REF(K, 1) || CLOSE < K,SP;  // 平多
K > REF(K, 1) || CLOSE > K,BP;  // 平空

Bước 3: Thiết lập phương pháp lọc tín hiệu chiến lược

%%
scope.KAMA = function() {
    var r = _C(exchange.GetRecords);
    if (r.length > 140) {
        var kama = talib.KAMA(r, 140);
        return kama[kama.length - 2];
    }
    return;
}
%%

K^^KAMA;
A:CLOSE;

K > REF(K, 1) && CLOSE > K,BK;
K < REF(K, 1) && CLOSE < K,SK;
K < REF(K, 1) || CLOSE < K,SP;
K > REF(K, 1) || CLOSE > K,BP;

AUTOFILTER;  // 启用一开一平信号过滤机制

Kiểm tra lại chiến lược

Để gần hơn với môi trường giao dịch thực tế, chúng tôi sử dụng trượt giá 2 lần để mở và đóng các vị thế để thực hiện kiểm tra căng thẳng trong quá trình kiểm tra ngược. Môi trường kiểm tra như sau:

  • Sàn giao dịch: BitMEX
  • Loại thị trường: XBTUSD
  • Công cụ giao dịch: XBTUSD
  • Thời gian: 01/07/2017 ~ 01/07/2019
  • Chu kỳ K-line: hàng ngày
  • Trượt: 2 lần nhảy để mở và đóng vị trí

Môi trường thử nghiệm Hệ thống giao dịch trung bình động thích ứng tiền kỹ thuật số và phân tích thuật toán KAMA - dựa trên phần mềm giao dịch định lượng của nhà phát minh Chi tiết doanh thu Hệ thống giao dịch trung bình động thích ứng tiền kỹ thuật số và phân tích thuật toán KAMA - dựa trên phần mềm giao dịch định lượng của nhà phát minh Đường cong tài trợ Hệ thống giao dịch trung bình động thích ứng tiền kỹ thuật số và phân tích thuật toán KAMA - dựa trên phần mềm giao dịch định lượng của nhà phát minh

Đánh giá từ kết quả kiểm tra ngược ở trên, chiến lược KAMA đơn giản này thực sự đáp ứng được kỳ vọng. Ngay cả trong thị trường siêu gấu của tiền kỹ thuật số năm 2018, đường cong vốn không cho thấy sự thoái lui lớn và thị trường đang trong giai đoạn biến động dài hạn . Việc mở và đóng các vị thế liên tục sẽ gây ra những tổn thất không đáng có. Đồng thời, cổ phiếu này cũng hoạt động tốt trong thị trường tăng giá năm 2019.

Mã nguồn chiến lược

Nhấp để sao chép mã nguồn chiến lược hoàn chỉnh, dựa trên Ngôn ngữ của tôi, phù hợp với hàng hóa tương lai và tiền kỹ thuật số

Tóm tắt

Một chiến lược tuyệt vời có thể đưa vào thực tế phải được tinh chỉnh thông qua nhiều lần thử nghiệm và đau khổ. Các chiến lược trong bài viết này vẫn còn nhiều chỗ để tối ưu hóa và nâng cấp, chẳng hạn như thêm một số điều kiện lọc, chốt lời chủ động và dừng lỗ điều kiện, v.v. Là một loại đường trung bình động, KAMA kế thừa những ưu điểm và nhược điểm của đường trung bình động thông thường và đồng thời cải thiện chúng. Trong một thị trường không thể đoán trước, ngay cả khi “tham số tốt nhất” được cố định, cũng khó có thể thích ứng với các điều kiện thị trường trong tương lai. Do đó, phương pháp theo dõi xu hướng và thay đổi theo các điều kiện thị trường này có thể là lựa chọn tốt hơn.