46. Tối ưu hóa vốn

Đăng lúc 1662395327,181

Tối ưu hóa là chủ đề phổ biến nhưng tối ưu hóa giao dịch đa thuật toán như thế nào? Phần này trình bày hướng tiếp cận tối ưu hóa việc phân bổ vốn giao dịch theo thời gian thực.

Hướng tiếp cận đơn giản

Mỗi thuật toán cần một tài khoản độc lập để đảm bảo sao kê tài khoản cũng là lịch sử giao dịch của thuật toán. Hiệu suất đầu tư chính là lợi nhuận của tài khoản. Ưu điểm của cách tiếp cận này là rõ ràng, và đơn giản khi thực hiện. Ngoài ra, cách tiếp cận này hoàn toàn phù hợp cho nhà đầu tư sử dụng một thuật toán duy nhất. Nhu cầu tối ưu hóa đa thuật toán xuất hiện khi vận hành cùng lúc nhiều thuật toán.

Sau đây là ví dụ lấy bối cảnh thị trường phái sinh Việt Nam để làm rõ luận điểm trên:

Theo hướng tiếp cận đơn giản, cần có ba tài khoản riêng biệt, mỗi tài khoản yêu cầu tối thiểu 40 hợp đồng, tổng cộng là 120 hợp đồng.

Hướng tiếp cận hợp nhất

Giả sử cả ba thuật toán đang hoạt động trong cùng một tài khoản. Tài khoản này sau khi hợp nhất sẽ giữ 10 hợp đồng Bán (20 hợp đồng Mua và 30 hợp đồng Bán) thay vì 50 hợp đồng. Ngoài ra, vốn tối thiểu sẽ giảm từ 120 xuống còn 80 hợp đồng. Cách tính như sau:

Vốn tối thiểu  = Danh mục hiện tại + Số dư vốn = 10 + (20 + 10 + 40) = 80 

So sánh hướng tiếp cận đơn giản và hướng tiếp cận hợp nhất

Hiệu suất giống hệt nhau trong khi giảm 33,33% vốn đầu tư ban đầu là một lợi thế rất lớn khi giao dịch thuật toán:

 

Điều gì xảy ra nếu ba thuật toán đều giữ tối đa vị thế mua? Hướng tiếp cận hợp nhất giải quyết vấn đề này như thế nào?

Tối ưu hóa

Trả lời những câu hỏi sau:

 

Trong đó, 99% công suất hoạt động đồng nghĩa với việc chấp nhận bỏ lỡ 01 giao dịch trên mỗi 100 giao dịch.

Để trả lời chính xác những câu hỏi trên, chỉ cần thống kê tất cả giao dịch lịch sử. Bí quyết ở đây là tin tưởng luật số lớn mà không đặt nặng các giao dịch bỏ lỡ. Hệ thống với lợi nhuận kỳ vọng 20% khi hoạt động 100% công suất sẽ có lợi nhuận kỳ vọng còn khoảng 19,8% khi hoạt động ở mức 99% công suất.

Nếu một nhà giao dịch thuật toán đưa ra các câu trả lời như sau:

Nhà giao dịch thuật toán sẽ suy ra được lợi nhuận kỳ vọng của hệ thống:

Do đó, tối ưu hóa vốn ảnh hưởng đáng kể đến hiệu suất toàn bộ tài khoản.

Hiện tại, ALGOTRADE lựa chọn công suất hoạt động ở mức 99%. Quyết định này đảm bảo hệ thống được hưởng lợi từ sự tồn tại song song của nhiều thuật toán trong khi vẫn đảm bảo hiệu suất không bị ảnh hưởng lớn bởi các giao dịch bị bỏ lỡ. Thông điệp quan trọng là chấp nhận bỏ lỡ 1% – 5% giao dịch vì lợi ích lớn hơn của toàn hệ thống.

Triển khai

  • Tính năng kế toán. Vì nhiều thuật toán hoạt động đồng thời trên cùng một tài khoản, hệ thống kế toán nội bộ để phân tách hồ sơ giao dịch và hiệu suất của từng thuật toán là thách thức đầu tiên cần vượt qua.

  • Tính năng quản lý rủi ro. Hiệu ứng domino có thể xảy ra trong tài khoản đa thuật toán khiến toàn bộ hệ thống tạm dừng hoặc gây thua lỗ nghiêm trọng. Tính năng quản lý rủi ro phù hợp phải được thực hiện để đảm bảo cả hệ thống vận hành an toàn. Ngoài ra, phải lường trước kịch bản số dư vốn về 0, phòng trường hợp hệ thống gửi yêu cầu liên tục vô tình gây ra cuộc tấn công DDoS trên máy chủ của công ty môi giới chứng khoán.

  • Tính năng xếp hàng. Sắp xếp tín hiệu theo hàng đợi ưu tiên trong đó các tín hiệu trễ được liệt kê trong 1% – 5% hiếm hoi và không bao giờ được thực thi. Trong môi trường giao dịch thuật toán của Việt Nam, có thể giới hạn độ trễ ở 100 mili giây.

Ban đầu, tối ưu hóa vốn giao dịch đa thuật toán sẽ là một thách thức lớn nhưng phần thưởng sẽ rất xứng đáng. Nhà giao dịch thuật toán chuyên nghiệp nên xem xét nghiêm túc triển khai tính năng này để mở rộng quy mô hệ thống theo cấp số nhân.