Trang này được dịch tự động. Bản gốc tiếng Anh là phiên bản chính thức. Đọc bằng tiếng Anh →
Chuyển đến nội dung chính

Runbooks

Danh sách kiểm tra đầy đủ về mức độ sẵn sàng của desk và các bài kiểm tra chứng nhận tích hợp.

Danh sách kiểm tra mức độ sẵn sàng của desk​

Trước khi chính thức hoạt động, vui lòng xác minh:

Kết nối API​

  • Đã cấu hình các endpoint production
  • Endpoint health check phản hồi bình thường
  • Kết nối WebSocket ổn định

Xác thực​

  • Ký EIP-712 hoạt động
  • Đã cấu hình ủy quyền agent (nếu áp dụng)
  • Đã triển khai quản lý nonce
  • Đã kiểm thử xác minh chữ ký

Hệ thống báo giá​

  • Đã kiểm thử đặt lệnh hàng loạt
  • Đã xác minh đối soát vòng đời lệnh
  • Đã triển khai theo dõi khớp lệnh
  • Đã kiểm thử chức năng hủy lệnh

Kiểm soát rủi ro​

  • Đã cấu hình và kiểm thử MMP
  • Đã hiểu mô hình ký quỹ
  • Đã xác minh các giới hạn theo tier
  • Đã triển khai giám sát danh mục

Giám sát​

  • Đã đăng ký các luồng dữ liệu WebSocket
  • Đã tự động hóa đối soát lệnh/khớp lệnh
  • Đã cấu hình health check
  • Đã thiết lập cảnh báo

Kill Switch​

  • Có khả năng hủy tất cả lệnh
  • Có khả năng ngắt kết nối ngay lập tức
  • Đã lập tài liệu quy trình khẩn cấp

Phòng hộ​

  • Đã xác minh tích hợp với perp trên Hyperliquid
  • Đã triển khai chiến lược phòng hộ delta
  • Đã hiểu cách tính ký quỹ perp

Thanh toán​

  • Đã kiểm thử xử lý ngày đáo hạn
  • Đã xác minh thanh toán vị thế
  • Đã hiểu nguồn giá tham chiếu

Các bài kiểm tra chứng nhận tích hợp​

Kiểm tra 1: Đặt lệnh​

Các bước:

  1. Đặt một lệnh đơn qua POST /order
  2. Xác minh trạng thái trong phản hồi lệnh là ACKED hoặc OPEN
  3. Kiểm tra lệnh xuất hiện trong GET /orders?wallet=...
  4. Xác minh đã nhận được order_updates qua WebSocket

Kết quả mong đợi: Lệnh được đặt thành công, nhận được cập nhật trạng thái

Kiểm tra 2: Đặt lệnh hàng loạt​

Các bước:

  1. Đặt 10 lệnh qua POST /bulk_order
  2. Xác minh tất cả lệnh đều được chấp nhận
  3. Kiểm tra trạng thái lệnh qua REST và WS
  4. Xác minh không có lỗi chữ ký/xác thực

Kết quả mong đợi: Tất cả lệnh được đặt thành công

Kiểm tra 3: Theo dõi khớp lệnh​

Các bước:

  1. Đặt một lệnh sẽ được khớp
  2. Theo dõi kênh fills trên WebSocket
  3. Xác minh đã nhận được khớp lệnh với order_id chính xác
  4. Kiểm tra khớp lệnh xuất hiện trong GET /fills?wallet=...
  5. Xác minh trạng thái lệnh được cập nhật thành FILLED

Kết quả mong đợi: Khớp lệnh được theo dõi chính xác, trạng thái lệnh được cập nhật

Kiểm tra 4: Theo dõi khớp lệnh một phần​

Các bước:

  1. Đặt một lệnh sẽ được khớp một phần
  2. Theo dõi các kênh fills và order_updates trên WebSocket
  3. Xác minh khớp lệnh một phần xuất hiện trên fills
  4. Xác minh order_updates báo cáo PARTIALLY_FILLED kèm filled_size lũy kế
  5. Tổng hợp các khớp lệnh theo order_id và kiểm tra tổng bằng filled_size

Kết quả mong đợi: Khối lượng từng lần khớp trên fills, khối lượng đã khớp lũy kế trên order_updates

Kiểm tra 5: Hủy lệnh​

Các bước:

  1. Đặt lệnh qua POST /order
  2. Hủy lệnh qua DELETE /order
  3. Xác minh trạng thái lệnh: CANCELED
  4. Kiểm tra đã nhận được order_updates qua WebSocket

Kết quả mong đợi: Lệnh được hủy thành công, nhận được cập nhật trạng thái

Kiểm tra 6: Kích hoạt MMP​

Các bước:

  1. Cấu hình MMP qua POST /mmp-config có chữ ký. Gửi X-Hypercall-Fence-Wait: 1 khi client sẽ đọc projection ngay sau đó, và lưu lại giá trị X-Hypercall-Fence được trả về.
  2. Đặt các lệnh có bật MMP
  3. Kích hoạt MMP bằng cách vượt quá giới hạn
  4. Xác minh các lệnh bị hủy với lý do MMP
  5. Kiểm tra các lệnh có bật MMP khác cũng bị hủy

Kết quả mong đợi: MMP kích hoạt chính xác, các lệnh bị hủy

Việc đọc cấu hình MMP cũng yêu cầu xác thực. Hãy ký GetMmpConfig và gửi thời điểm hết hạn cùng chữ ký trong các header X-Hypercall-Expires-At-Ms và X-Hypercall-Signature. Gửi lại giá trị X-Hypercall-Fence từ phản hồi của lệnh ghi trong yêu cầu GET này để chờ đúng cấu hình đã được commit đó. Các lệnh ghi không có X-Hypercall-Fence-Wait: 1 sẽ cố ý không trả về header fence.

Kiểm tra 7: Từ chối do ký quỹ​

Các bước:

  1. Đặt lệnh vượt quá mức ký quỹ
  2. Xác minh lệnh bị từ chối với lý do "Insufficient margin"
  3. Kiểm tra lý do từ chối có bao gồm các giá trị yêu cầu, vốn chủ sở hữu và phần thiếu hụt
  4. Xác minh trạng thái lệnh: REJECTED

Kết quả mong đợi: Lệnh bị từ chối với lý do rõ ràng

Kiểm tra 8: Giới hạn theo tier​

Các bước:

  1. Sử dụng một ví có tier chỉ cho phép bán có tài sản đảm bảo (covered sell) (kiểm tra GET /risk/limits?wallet=...)
  2. Thử đặt lệnh bán khi không có vị thế long
  3. Xác minh lệnh bị từ chối với lý do liên quan đến tier
  4. Đặt lệnh mua (sẽ thành công)
  5. Đặt lệnh bán để đóng vị thế (sẽ thành công)

Kết quả mong đợi: Các giới hạn theo tier được áp dụng chính xác

Kiểm tra 9: Kết nối lại WebSocket​

Các bước:

  1. Kết nối tới WebSocket
  2. Đăng ký các kênh
  3. Ngắt kết nối WebSocket
  4. Kết nối lại với exponential backoff
  5. Đăng ký lại các kênh
  6. Truy vấn REST để cập nhật những thay đổi bị bỏ lỡ

Kết quả mong đợi: Kết nối lại hoạt động, trạng thái được khôi phục

Kiểm tra 10: Đối soát danh mục​

Các bước:

  1. Đặt lệnh và khớp lệnh
  2. Kiểm tra danh mục qua GET /portfolio?wallet=...
  3. Xác minh các vị thế khớp với các lần khớp lệnh
  4. Kiểm tra mức sử dụng ký quỹ chính xác
  5. Đối soát với các cập nhật portfolio qua WebSocket

Kết quả mong đợi: Trạng thái danh mục chính xác, đối soát thành công

Sẵn sàng cho production​

Danh sách kiểm tra trước production​

  • Đã vượt qua tất cả bài kiểm tra tích hợp
  • Đã cấu hình giám sát và cảnh báo
  • Đã kiểm thử kill switch
  • Đã lập tài liệu quy trình khẩn cấp
  • Đội ngũ đã được đào tạo về ứng phó sự cố
  • Đã xác định các đầu mối hỗ trợ

Danh sách kiểm tra khi chính thức hoạt động​

  • Đã vượt qua các bài kiểm tra chứng nhận với khối lượng nhỏ trên production
  • Đã xác minh các endpoint production
  • Dashboard giám sát đã sẵn sàng
  • Đã cấu hình cảnh báo
  • Đã thiết lập lịch trực on-call của đội ngũ
  • Đã rà soát tài liệu

Tài liệu tham khảo​