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

Ứng dụng các chỉ báo kỹ thuật Aroon trong giao dịch định lượng

Được tạo ra trong: 2019-06-29 14:42:04, cập nhật trên: 2024-12-24 20:18:07
comments   1
hits   3779

[TOC]

Ứng dụng các chỉ báo kỹ thuật Aroon trong giao dịch định lượng

Giới thiệu về chỉ báo Aroon

Trong phân tích kỹ thuật, Aroon là một chỉ báo kỹ thuật rất độc đáo. Từ “Aroon” bắt nguồn từ tiếng Phạn, có nghĩa là “bình minh”. Nó không được biết đến nhiều như MA, MACD, KDJ. Nó được giới thiệu sau đó và không được phát minh cho đến năm 1995 bởi Tushar Chande. Tác giả cũng đã phát minh ra Chande Momentum Oscillator (CMO) và Intraday Momentum Index (IMI). Nếu càng nhiều người biết đến một chỉ báo kỹ thuật và càng nhiều người sử dụng nó thì khả năng kiếm tiền của nó sẽ càng thấp. Chỉ báo Aroon tương đối mới thì ngược lại. Theo quan điểm này, đây là một lựa chọn tốt.

Chỉ báo Aroon trên biểu đồ

Chỉ báo Aroon giúp các nhà giao dịch dự đoán những thay đổi về vị trí tương đối của biến động giá và khu vực xu hướng bằng cách tính toán số nến giữa nến hiện tại và giá cao nhất và thấp nhất trước đó. Nó bao gồm hai phần, cụ thể là AroonUp và AroonDown. Hai đường này di chuyển lên xuống giữa 0 và 100. Mặc dù chúng được gọi là đường trên và đường dưới, nhưng chúng không giống với đường trên và đường dưới . Không giống như chỉ báo BOLL, nó không có đường trên và đường dưới thực sự. Hình sau đây là chỉ báo Aroon: Ứng dụng các chỉ báo kỹ thuật Aroon trong giao dịch định lượng

Phương pháp tính chỉ báo Aroon

Chỉ báo Aroon yêu cầu bạn phải thiết lập tham số chu kỳ thời gian trước, giống như thiết lập tham số chu kỳ trung bình động. Trong phần mềm thị trường truyền thống, số chu kỳ này là 14. Tất nhiên, tham số chu kỳ này không cố định. Bạn cũng có thể thiết lập thành 10 hoặc 50, v.v. hãy đợi. Để dễ hiểu hơn, chúng ta hãy định nghĩa tham số khoảng thời gian này là: N. Sau khi xác định N, chúng ta có thể tính AroonUp và AroonDown. Công thức tính toán cụ thể như sau:

  • AroonUp =[ (tham số thời kỳ thiết lập - số thời kỳ sau giá cao nhất) / thời kỳ tính toán] * 100
  • AroonDown =[ (tham số thời kỳ thiết lập - số thời kỳ sau giá thấp nhất) / thời kỳ tính toán] * 100

Từ công thức này, chúng ta có thể thấy sơ bộ ý tưởng về chỉ báo Aroon. Nghĩa là: giá đã giảm bao nhiêu chu kỳ so với mức cao/thấp gần đây, giúp dự đoán xu hướng hiện tại có tiếp tục hay không và đo lường sức mạnh của xu hướng hiện tại. Nếu chúng ta phân loại chỉ báo này thì rõ ràng đây là loại chỉ báo theo xu hướng. Nhưng không giống như các chỉ báo theo xu hướng khác, nó chú trọng nhiều hơn vào thời gian hơn là giá cả.

Cách sử dụng chỉ báo Aroon

AroonUp và AroonDown phản ánh khoảng cách giữa thời gian hiện tại và giá cao nhất hoặc thấp nhất trước đó. Nếu thời gian gần hơn, giá trị sẽ lớn hơn và nếu thời gian xa hơn, giá trị sẽ nhỏ hơn. Và khi hai đường này cắt nhau, điều đó chỉ ra rằng hướng giá có thể thay đổi. Nếu AroonUp nằm trên AroonDown, điều đó có nghĩa là giá đang trong xu hướng tăng và giá có thể tăng thêm trong tương lai; nếu AroonDown nằm trên AroonUp, điều đó có nghĩa là rằng giá đang trong xu hướng giảm và giá có thể tăng thêm trong tương lai. Giá cũng có thể giảm thêm.

Đồng thời, chúng ta cũng có thể thiết lập một số giá trị cố định để xác định chính xác thời điểm nhập cảnh. Chúng ta biết rằng chỉ báo Aroon luôn chạy trong khoảng từ 0 đến 100. Vì vậy, khi thị trường đang trong xu hướng tăng, tức là khi AroonUp cao hơn AroonDown, khi AroonUp lớn hơn 50, điều đó có nghĩa là xu hướng tăng của thị trường đã được hình thành và giá có thể tiếp tục tăng trong tương lai. Khi AroonUp cắt xuống dưới 50, điều đó có nghĩa là động lực tăng giá đang yếu đi và giá có thể dao động và giảm trong tương lai.

Ngược lại, khi thị trường đang trong xu hướng giảm, tức là khi AroonDown cao hơn AroonUp, khi AroonDown lớn hơn 50 thì có nghĩa là xu hướng giảm của thị trường đã hình thành và giá có thể tiếp tục giảm trong tương lai; khi AroonDown cắt xuống dưới 50, điều đó có nghĩa là đà giảm giá đang yếu đi. Giá có thể dao động và tăng trong tương lai. Sau đó theo hai lý thuyết trên, chúng ta có thể liệt kê các điều kiện mua và bán như sau:

  • Khi AroonUp lớn hơn AroonDown và AroonUp lớn hơn 50, một vị thế mua được mở;
  • Khi AroonUp nhỏ hơn AroonDown hoặc AroonUp nhỏ hơn 50, các vị thế mua sẽ bị đóng;
  • Khi AroonDown lớn hơn AroonUp và AroonDown lớn hơn 50, một vị thế bán được mở;
  • Khi AroonDown nhỏ hơn AroonUp hoặc AroonDown nhỏ hơn 50, vị thế bán sẽ bị đóng;

Xây dựng chiến lược giao dịch dựa trên chỉ báo Aroon

Sau khi làm rõ logic giao dịch, chúng ta có thể triển khai bằng mã. Trong bài viết này, chúng ta sẽ tiếp tục sử dụng ngôn ngữ JavaScript và sản phẩm vẫn là hợp đồng tương lai hàng hóa. Những người bạn có kỹ năng thực hành tốt cũng có thể dịch mã sang ngôn ngữ Python hoặc tiền kỹ thuật số. Được thôi, không cần phải nói thêm nữa, hãy mở: fmz.com > Đăng nhập > Trung tâm điều khiển > Thư viện chính sách > Chính sách mới, bắt đầu viết chính sách và chú ý đến các bình luận trong mã bên dưới.

Bước 1: Sử dụng Khung CTA Để ý! Hãy chắc chắn nhấp vào mục sau:商品期货交易类库. Nếu bạn đổi sang tiền kỹ thuật số, hãy nhấp vào:数字货币现货交易类库

function main() {
    // ZC000/ZC888 指用指数做为行情源但交易映射到主力连续合约上
    $.CTA("ZC000/ZC888", function(st) {

    })
}

Bước 2: Lấy dữ liệu

function main() {
    $.CTA("ZC000/ZC888", function(st) {
        var r = st.records;  // 获取K线数组
        var mp = st.position.amount;  // 获取持仓数量
    })
}

Bước 3: Tính chỉ báo Aroon

function main() {
    $.CTA("ZC000/ZC888", function(st) {
        var r = st.records;  // 获取K线数组
        var mp = st.position.amount;  // 获取持仓数量
        if (r.length < 21) {  // 判断K线数据是否足够
            return;
        }
        var aroon = talib.AROON(r, 20);  // 阿隆指标
        var aroonUp = aroon[1][aroon[1].length - 2];  // 阿隆指标上线倒数第2根数据
        var aroonDown = aroon[0][aroon[0].length - 2];  // 阿隆指标下线倒数第2根数据
    })
}

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

function main() {
    $.CTA("ZC000/ZC888", function(st) {
        var r = st.records;  // 获取K线数组
        var mp = st.position.amount;  // 获取持仓数量
        if (r.length < 21) {  // 判断K线数据是否足够
            return;
        }
        var aroon = talib.AROON(r, 20);  // 阿隆指标
        var aroonUp = aroon[1][aroon[1].length - 2];  // 阿隆指标上线倒数第2根数据
        var aroonDown = aroon[0][aroon[0].length - 2];  // 阿隆指标下线倒数第2根数据
        if (mp == 0 && aroonUp > aroonDown && aroonUp > 50) {
            return 1;  // 多头开仓
        }
        if (mp == 0 && aroonDown > aroonUp && aroonDown > 50) {
            return -1;  // 空头开仓
        }
        if (mp > 0 && (aroonUp < aroonDown || aroonUp < 50)) {
            return -1;  // 多头平台
        }
        if (mp < 0 && (aroonDown < aroonUp || aroonDown < 50)) {
            return 1;  // 空头平台
        }
    })
}
// 以上代码就是基于JavaScript语言完整的策略。

// --------------------分割线--------------------

// 为了照顾伸手党,顺便也把这个策略翻译成My语言。同时该也可以用于数字货币,以下是完整的策略代码:
AROONUP := ((N - HHVBARS(H, N)) / N) * 100;  // 阿隆指标上线
AROONDOWN := ((N - LLVBARS(L, N)) / N) * 100;  // 阿隆指标下线
AROONUP > AROONDOWN && AROONUP > BKV, BK;  // 多头开仓
AROONDOWN > AROONUP && AROONDOWN > SKV, SK;  // 空头开仓
AROONUP < AROONDOWN || AROONUP < SPV, SP;  // 多头平台
AROONDOWN < AROONUP || AROONDOWN < BPV, 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 2 lần nhảy để mở và đóng các vị thế và gấp 2 lần phí xử lý để kiểm tra căng thẳng trong quá trình kiểm tra ngược. Môi trường thử nghiệm như sau:

  • Loại thị trường: Chỉ số than nhiệt
  • Các loại hình giao dịch: than nhiệt điện chính
  • Thời gian: 01/06/2015 ~ 28/06/2019
  • Chu kỳ: Hàng ngày
  • Trượt: 2 lần nhảy để mở và đóng vị trí
  • Phí xử lý: 2 lần đổi trả

Môi trường thử nghiệm Ứng dụng các chỉ báo kỹ thuật Aroon trong giao dịch định lượng Chi tiết doanh thu Ứng dụng các chỉ báo kỹ thuật Aroon trong giao dịch định lượng Đường cong tài trợ Ứng dụng các chỉ báo kỹ thuật Aroon trong giao dịch định lượng Từ kết quả kiểm tra ngược ở trên, chúng ta có thể thấy rằng chiến lược này hoạt động tốt khi xu hướng thị trường diễn ra suôn sẻ. Cho dù tăng hay giảm, chỉ báo Aroon đều có thể theo dõi đầy đủ thị trường. Đường cong vốn nhìn chung cũng có xu hướng hướng lên và không có sự sụt giảm đáng kể nào. Tuy nhiên, trong thị trường biến động, đặc biệt là thị trường biến động liên tục, đã xảy ra sự thoái lui cục bộ.

Ưu điểm và nhược điểm của chỉ báo Aroon

  • Ưu điểm: Chỉ báo Aroon có thể xác định trạng thái của xu hướng, tính đến khả năng phát hiện xu hướng thị trường và xác định sự đảo chiều giá, giúp các nhà giao dịch cải thiện tỷ lệ sử dụng vốn. Ưu điểm này đặc biệt quan trọng trong các thị trường biến động.
  • Nhược điểm: Chỉ báo Aroon chỉ là một trong những chỉ báo theo dõi xu hướng và có cùng nhược điểm như các chỉ báo theo dõi xu hướng khác. Và nó chỉ xác định số chu kỳ giá cao nhất hoặc thấp nhất trong thời gian xác định, nhưng đôi khi giá cao nhất hoặc thấp nhất sẽ là ngẫu nhiên trong toàn bộ xu hướng thị trường. Sự bất trắc này sẽ can thiệp vào chính chỉ báo Aroon và gây ra tín hiệu sai.

Nhấp để sao chép mã nguồn chiến lược

Tóm tắt

Trong chiến lược, chúng tôi đã cố định một số tham số, chẳng hạn như: aroonUp hoặc aroonDown lớn hơn hoặc nhỏ hơn 50, điều này gây ra độ trễ của chiến lược. Trong nhiều trường hợp, thị trường sẽ tăng hoặc giảm trong một khoảng thời gian trước khi mở và đóng vị thế. Mặc dù điều này làm tăng tỷ lệ chiến thắng và giảm tỷ lệ rút tiền tối đa, nhưng nó cũng bỏ lỡ rất nhiều lợi nhuận, điều này cũng khẳng định nguyên tắc lợi nhuận và thua lỗ có cùng nguồn gốc. Những bạn nào quan tâm có thể nghiên cứu sâu hơn và cải thiện.