Knight Capital Americas · 1/8/2012 · Sàn chứng khoán New York
Nguồn: Quyết định SEC số 34-70694 (16/10/2013), đoạn 13–17, 19, 21 và 27.
Một công ty chiếm khoảng 10% giao dịch cổ phiếu niêm yết ở Mỹ, sống bằng phần mềm, vì sao lại mất gần nửa tỷ USD chỉ vì một lần cập nhật? Câu trả lời không phải một kỹ thuật viên sơ suất, mà là một quy trình triển khai không có lưới an toàn nào.
Nguồn: Quyết định SEC 34-70694, đoạn 11 (khoảng 10% giao dịch) và đoạn 17 (khoản lỗ).
Mốc thời gian lấy từ quyết định của SEC; khoản lỗ lấy từ thông cáo của chính Knight.
Nguồn: Quyết định SEC 34-70694, đoạn 13–15 (2003, 2005, triển khai), 33 (sự cố 10/2011), 16 (1/8); thông cáo Knight 2/8/2012 (8-K) và 6/8/2012; thông cáo SEC 2013-222.
12 điều hay được kể về Knight Capital, đối chiếu với quyết định của SEC và hồ sơ Knight nộp cho SEC. Bấm từng dòng để xem lý do.
SEC ghi "khoảng 45 phút" ở đoạn 1, 10 và 17. SEC không ghi giờ kết thúc chính xác, nên bài này không ghi.
SEC, đoạn 14: Knight ngừng dùng Power Peg năm 2003; năm 2005 dời phần đếm cổ phiếu đã khớp và "không test lại" Power Peg.
SEC, đoạn 27: Knight gỡ code RLP khỏi 7 máy chủ tốt; lệnh đến sau đó kích hoạt Power Peg trên cả 7 máy.
SEC, đoạn 11, cho năm 2011–2012. Riêng SMARS khoảng 1% hoặc hơn.
Thông cáo SEC 2013-222: "vụ cưỡng chế đầu tiên của SEC theo quy định tiếp cận thị trường". Knight đồng ý dàn xếp, "không thừa nhận cũng không phủ nhận" các kết luận.
Đúng là ngòi nổ (đoạn 15). Nhưng phần lớn quyết định của SEC nói về thứ khác: không quy trình triển khai viết thành văn, không người kiểm tra lại, không theo dõi đầu ra, không nút dừng, không quy trình ứng phó sự cố (đoạn 15, 21–27).
440 triệu là ước tính đầu tiên của Knight. Số ghi sổ là 457,6 triệu lỗ giao dịch; SEC ghi 460 triệu. Lệnh tuôn ra trong 45 phút, nhưng lỗ được chốt khi bán gỡ vị thế sau đó.
97 email là có thật (đoạn 19). Nhưng SEC ghi rõ chúng "không được thiết kế là cảnh báo hệ thống". Bài học là về cách thiết kế cảnh báo, không phải nhân viên lười.
Code RLP mới chạy đúng trên 7 máy (đoạn 16). Cái nguy là code cũ chưa xóa, lá cờ bị dùng lại, và một máy bị sót.
SMARS không có quy trình dừng khi hành xử bất thường (đoạn 21), và không có quy trình ứng phó sự cố (đoạn 27). Nhưng Knight có tự ngắt cho một số chiến lược của một nhóm giao dịch (chú thích 7).
Không có AI hay máy học nào trong hồ sơ. Đây là một đoạn code định tuyến lệnh cũ, chạy đúng như nó được viết, bị đánh thức bởi một lá cờ dùng lại trên một máy chủ chưa cập nhật (SEC, đoạn 13–16).
Ngày 6/8/2012, Knight nhận 400 triệu USD từ Jefferies, Blackstone, GETCO, Stephens, Stifel và TD Ameritrade. Số vốn này chuyển đổi được thành khoảng 267 triệu cổ phiếu, ở giá 1,50 USD mỗi cổ phiếu. Ngày 1/7/2013, Knight và GETCO hợp nhất thành KCG Holdings.
Nguồn: Quyết định SEC 34-70694 (các đoạn ghi trong từng dòng); thông cáo SEC 2013-222; thông cáo Knight 2/8/2012, 6/8/2012 và 17/10/2012.
Điểm là đánh giá của Mark dựa trên các nguồn ở Phần 8, không phải số liệu của một nghiên cứu.
Không có kẻ ác, không có AI. Chỉ có một quy trình triển khai thiếu mọi lưới an toàn, gặp một máy gửi lệnh nhanh hơn con người.
Bỏ chữ "chứng khoán" đi, phần còn lại là chuyện thường ngày của mọi đội làm phần mềm: một tính năng cũ không ai xóa, một cờ cấu hình được dùng lại cho tiết kiệm, một lần chép code lên nhiều máy mà không ai kiểm tra lại, một kênh email báo lỗi mà ai cũng lọc vào thư mục riêng.
Điều khác biệt ở Knight là tốc độ. Một máy gửi lệnh tự động có thể làm trong vài phút điều mà con người cần cả tuần mới làm nổi. Vì thế SEC nhấn mạnh rằng kiểm soát phải tự động như chính hệ thống, và việc dừng hệ thống phải được chuẩn bị trước, không phải nghĩ ra giữa sự cố.
Nguồn phần "Xem thêm": Quyết định SEC 34-70694, đoạn 3–4 (vai trò của kiểm soát trong giao dịch tự động); phần còn lại là nhận xét của Mark.
Áp dụng cho mọi lần "đẩy lên thật": cập nhật phần mềm, đổi cấu hình, gửi email hàng loạt, chạy chiến dịch quảng cáo.
Ưu tiên tài liệu gốc: quyết định của cơ quan quản lý và hồ sơ công ty nộp cho SEC.