Related Posts Display

DỰ ÁN 02: TẠO CURRENCY INDEX VỚI PYTHON VÀ FXCM API   I.           4 ý tưởng chính để vẽ Currency index (CI) Trong thị trườn...

Dự án 02: Tạo currency index với python và FXCM API

DỰ ÁN 02: TẠO CURRENCY INDEX VỚI PYTHON VÀ FXCM API

  I.          4 ý tưởng chính để vẽ Currency index (CI)

Trong thị trường tiền tệ, chúng ra chỉ có tỷ giá và biến động tương đối giữa các cặp/đồng tiền với nhau chứ không có giá trị tuyệt đối, vì vậy sẽ chả phải tuyệt sao khi có một đồng tiền nào đó có giá trị nội tại chẳng bao giờ biến động để các đồng tiền khác có thể lấy đó làm căn cứ  mà đo lường biến động của giá trị? Rất tiếc là chẳng có đồng tiền nào như vậy cả, và theo quan điểm của tôi nếu được chọn trong các đồng tiền phổ biến thì CHF sẽ là đồng ít có sự biến động nhất về giá trị. Vì vậy chúng ta chỉ đơn giản là xem cặp tỷ giá XXX/CHF để quan sát biến động giá trị của đồng XXX thôi là xong, nhỉ ? nhỉ ?. Nếu như vậy thì bài viết này có thể kết thúc tại đây là được rồi 😋. Nhưng đời không đơn giản như vậy, hoặc tôi là con người thích phức tạp hóa vấn đề, vì vậy tôi đã suy nghĩ ra 4 cách để vẽ CI của các đồng tiền khác nhau dựa vào giá trị tương đối của các cặp tiền như sau:

·                Phương pháp 1 (Trọng số bằng nhau):

Đây là phương pháp thường thấy trong các indicator currency index khác với cách tính tương tự như sau:

·              Phương pháp 2 (Trị tuyệt đối tổng biến động của đồng tiền phía sau nhỏ nhất):

        Phương pháp này sẽ lũy kế biến động của index đồng XXX tại thời điểm t so với t - 1 là biến động của giá của cặp XXX/YYY tại thời điểm t so với t-1 với YYY được chọn khác tại mỗi thời điểm sao cho trị tuyệt đối của tổng của tất cả các %ΔYYY/ZZZt, t-1 (với ZZZ lần lượt là các đồng tiền dùng để tính index)

        Mình quá lười để mô tả ra bằng công thức cho các bạn dễ hiểu nên các bạn hãy xem file đính kèm tại link này để hiểu rõ ý tưởng hơn nhé.

·         \Phương pháp 3 (Tổng biến động của trị tuyệt đối đồng tiền phía sau nhỏ nhất):

Tương tự cách trên nhưng thay vì dùng trị tuyệt đối của tổng biến động ta sẽ dùng tổng các trị tuyệt đối của biến động để chọn cặp tiền phía sau tương ứng với mỗi thời điểm.

·         Phương pháp 4 (Tổng biến động bình phương của trị tuyệt đối đồng tiền phía sau nhỏ nhất):

Tương tự cách trên nhưng thay vì tính tổng các trị tuyệt đối của biến động thì ta dùng tổng của các bình phương để chọn cặp tiền phía sau tương ứng với mỗi thời điểm. (theo quan sát thì kết quả của cách này giống với cách 2 mà tôi méo đủ thông minh để chứng minh được vì sao, nếu ai chứng minh được thì chỉ cho mình nhé 😉)

II.          Phần code

Ngoài các package thường được cài sẵn từ gói cài anacoda (như numpy, pandas …..) thì các bạn cần cài thêm thư viện socketio và fxcmpy bằng cú pháp sau trên cửa sổ commands:

pip install python-socketio==4.6.1

pip install fxcmpy

Các bạn chỉ chỉ cần khởi tạo class là đồ thị sẽ tự được vẽ, xin hãy đọc kỹ hướng dẫn trước khi dùng !!!

File gốc các bạn có thể tải tại đây

Một vài hình ảnh về kết quả:

- Cách 2:



- Cách 3:

Nhìn chung các cách đều tương đối giống nhau về kết quả, có cách 2 và cách 4 là hoàn toàn giống nhau về kết quả.

III.          Vậy dùng để trade như thế nào ?

Với quan niệm khởi nguồn rằng NHTW hay gì gì đó sẽ cố gắng tác động để đưa giá trị đồng tiền của mình quay trở lại một ngưỡng "ổn định" nào đó trước những tác động quá mức gây mất cân bằng tạm thời của đồng tiền đó (Bigboy huntstops, Barrier option, cung cầu tạm thời tăng đột biến ... có quá nhiều lý do mà tôi xin phép được từ chối hiểu). Nếu điều này xảy ra thì đướng CI sẽ có tính chất MEAN REVERSION rất cao, vì vậy các bạn chỉ việc chọn cặp tiền có 2 đồng một đồng quá mua và một quá bán để trade (long cặp quá bán/quá mua, short cặp quá mua/quá bán). Việc xác định đồng nào quá mua hay quá bán đơn giản nhất là các bạn có thể vẽ đường RSI hoặc BBand dựa trên giá trị của đường CI. Sẽ có rủi ro trong trường hợp đồng tiền đó có real trend, khi điều đó xảy ra thì cắt lỗ hay giữ tiếp phụ thuộc vào lời thì thầm từ tổ tiên của các bạn 😁 


0 nhận xét: