Khớp lệnh từng phần là gì?

Khớp lệnh từng phần (Partial Fill) là tình huống trong đó chỉ một phần khối lượng lệnh giao dịch được thực hiện, phần còn lại tiếp tục chờ khớp hoặc bị hủy — tùy thuộc vào loại lệnh và cài đặt của trader. Partial fill xảy ra khi thanh khoản tại mức giá yêu cầu không đủ để lấp đầy toàn bộ khối lượng lệnh cùng một lúc. Đây là hiện tượng phổ biến trên tất cả thị trường tài chính — từ Forex, chứng khoán đến hàng hóa.

Hãy hình dung bạn vào siêu thị muốn mua 100 chai nước. Kệ hàng chỉ còn 60 chai ở giá bạn muốn. Bạn mua 60 chai (partial fill) và phải đợi siêu thị nhập thêm hàng (chờ thanh khoản mới) hoặc chấp nhận mua 40 chai còn lại ở kệ khác với giá cao hơn (trượt giá). Trong giao dịch tài chính, “kệ hàng” là sổ lệnh (order book) và “hàng tồn” là thanh khoản có sẵn tại mỗi mức giá.

Nội dung cốt lõi (Key Takeaways):

  • Partial fill xảy ra khi thanh khoản tại mức giá yêu cầu không đủ để khớp toàn bộ khối lượng lệnh.
  • Phổ biến nhất với lệnh Limit (giới hạn giá) — vì lệnh chỉ khớp ở mức giá chỉ định hoặc tốt hơn.
  • Lệnh Market cũng có thể bị partial fill trong thị trường thanh khoản thấp hoặc biến động cực đoan.
  • Trader có thể tránh partial fill bằng lệnh AON (All-or-None), FOK (Fill-or-Kill) hoặc IOC (Immediate-or-Cancel).
  • Trên broker ECN, partial fill phổ biến hơn vì lệnh được gửi trực tiếp vào thị trường liên ngân hàng — phản ánh thanh khoản thực.

Tại sao khớp lệnh từng phần xảy ra?

Partial fill không phải lỗi hệ thống — nó phản ánh thực trạng cung cầu tại thời điểm khớp lệnh.

Thanh khoản không đủ

Nguyên nhân phổ biến nhất. Tại mỗi mức giá trên sổ lệnh (order book), chỉ có một lượng volume nhất định sẵn sàng giao dịch. Khi trader đặt lệnh lớn hơn volume có sẵn → chỉ phần volume có sẵn được khớp.

Ví dụ: Trader đặt lệnh mua 5 lot EUR/USD tại giá 1.0850. Tại giá này, sổ lệnh chỉ có 3 lot đang chờ bán. Kết quả: 3 lot được khớp ngay → 2 lot còn lại chờ thêm lệnh bán tại 1.0850 hoặc bị đẩy lên giá 1.0851 (nếu là lệnh Market).

Depth of Market (độ sâu thị trường)

DOM hiển thị khối lượng lệnh chờ ở nhiều mức giá khác nhau. Khi DOM “mỏng” (ít volume ở mỗi mức giá), partial fill xảy ra thường xuyên hơn. Khi DOM “dày” (nhiều volume), lệnh lớn cũng được khớp trọn vẹn.

Biến động giá nhanh

Trong sự kiện tin tức lớn (NFP, quyết định lãi suất), giá di chuyển cực nhanh. Thanh khoản “biến mất” tạm thời vì nhà cung cấp thanh khoản rút lệnh chờ. Lệnh lớn đặt trong thời điểm này gần như chắc chắn bị partial fill.

Kích thước lệnh quá lớn

Lệnh càng lớn, càng khó tìm đủ đối tác giao dịch tại một mức giá duy nhất. Trader tổ chức (quỹ đầu tư, ngân hàng) giao dịch hàng trăm lot thường xuyên nhận partial fill — và thường cố tình chia nhỏ lệnh để giảm tác động giá.


Partial fill trên các loại lệnh

Lệnh Limit (lệnh giới hạn)

Partial fill phổ biến nhất với lệnh Limit vì lệnh chỉ khớp ở mức giá chỉ định hoặc tốt hơn — không bao giờ ở giá xấu hơn. Nếu thanh khoản tại giá limit không đủ toàn bộ khối lượng, chỉ phần có sẵn được khớp. Phần còn lại tiếp tục nằm trong sổ lệnh, chờ đến khi có thêm thanh khoản.

Ưu điểm: Giá khớp chính xác hoặc tốt hơn mong đợi. Nhược điểm: Không đảm bảo khớp toàn bộ.

Lệnh Market (lệnh thị trường)

Lệnh Market được thiết kế để khớp ngay ở giá tốt nhất hiện có. Trong điều kiện bình thường, lệnh Market thường được khớp trọn vẹn gần như ngay lập tức. Tuy nhiên, trong điều kiện thanh khoản thấp hoặc biến động cực đoan, lệnh Market có thể bị partial fill — hoặc khớp ở nhiều mức giá khác nhau (price improvement hoặc trượt giá).

Ưu điểm: Khớp gần như chắc chắn. Nhược điểm: Giá khớp có thể khác giá mong đợi (slippage).

So sánh hành vi partial fill

Loại lệnhPartial fill có xảy ra?Hành vi phần còn lại
Market OrderHiếm (bình thường), có thể (biến động cao)Khớp ở mức giá tiếp theo (walking the book)
Limit OrderPhổ biếnTiếp tục chờ tại giá limit
Stop OrderChuyển thành Market khi kích hoạtTương tự Market Order
Stop LimitChuyển thành Limit khi kích hoạtTương tự Limit Order

Các loại lệnh đặc biệt tránh partial fill

Trader có thể sử dụng các loại lệnh đặc biệt để kiểm soát tình huống partial fill.

Loại lệnhÝ nghĩaƯu điểmNhược điểm
AON (All-or-None)Toàn bộ lệnh phải khớp hoặc không khớp gìTránh hoàn toàn partial fillCó thể không bao giờ được khớp
FOK (Fill-or-Kill)Khớp toàn bộ ngay lập tức hoặc hủy hoàn toànTránh partial fill + không chờRủi ro lệnh bị hủy cao
IOC (Immediate-or-Cancel)Khớp phần có thể ngay lập tức, hủy phần còn lạiLinh hoạt, nhanhChấp nhận partial fill

AON phù hợp khi trader cần khối lượng chính xác (ví dụ: hedging portfolio cần đúng số lot).

FOK phù hợp cho scalper cần vào/ra nhanh, không muốn partial fill cản trở chiến lược.

IOC là lựa chọn cân bằng — nhận phần khớp được, hủy phần không khớp, không để lệnh “treo” trên sổ lệnh.


Partial fill trên các mô hình broker

Cách xử lý partial fill khác nhau đáng kể giữa các mô hình broker.

Broker ECN/STP

Trên broker ECN và STP, lệnh được gửi trực tiếp vào thị trường liên ngân hàng và khớp với thanh khoản thực từ nhiều nhà cung cấp (ngân hàng, tổ chức tài chính). Partial fill phổ biến hơn vì:

  • Thanh khoản phân tán trên nhiều nhà cung cấp.
  • Mỗi nhà cung cấp chỉ có volume giới hạn ở mỗi mức giá.
  • Lệnh lớn có thể khớp với 2-3 nhà cung cấp khác nhau.

Ưu điểm: Phản ánh thanh khoản thực, giá minh bạch, không có xung đột lợi ích.

Broker Market Maker

Trên broker Market Maker, broker đóng vai trò đối tác giao dịch — tự cung cấp thanh khoản. Partial fill ít xảy ra hơn vì broker khớp lệnh nội bộ. Tuy nhiên, broker có thể requote (từ chối giá và báo giá mới) thay vì partial fill.

Tiêu chíECN/STPMarket Maker
Partial fillPhổ biến hơnÍt phổ biến
RequoteKhông (Market Execution)Có thể
Thanh khoảnThật (liên ngân hàng)Broker cung cấp
Minh bạchCaoThấp hơn

Tác động của partial fill đến giao dịch

Ảnh hưởng đến chiến lược

Scalping: Partial fill ảnh hưởng nghiêm trọng nhất. Scalper cần vào/ra lệnh nhanh với khối lượng chính xác. Nếu chỉ khớp 60% lệnh, lợi nhuận mục tiêu giảm tương ứng nhưng rủi ro quản lý phức tạp hơn.

Swing/Position Trading: Ít ảnh hưởng hơn. Lệnh có thể chờ khớp phần còn lại trong vài phút đến vài giờ mà không ảnh hưởng đáng kể đến chiến lược dài hạn.

Hedging: Partial fill là vấn đề nghiêm trọng khi hedge cần khối lượng chính xác. Hedge không đầy đủ (partial) tạo rủi ro tàn dư (residual risk) mà trader không mong muốn.

Ảnh hưởng đến chi phí

Trên một số broker, partial fill có thể phát sinh nhiều phí commission nếu broker tính phí theo lần khớp thay vì theo lệnh. 1 lệnh khớp 3 lần = 3 lần commission. Kiểm tra chính sách phí của broker trước khi giao dịch.


Cách giảm thiểu partial fill

Giao dịch trong giờ thanh khoản cao: Phiên London-New York trùng lắp (19:00-23:00 giờ Việt Nam) có thanh khoản dồi dào nhất. Partial fill hiếm xảy ra với cặp tiền tệ chính trong khung giờ này.

Chọn sản phẩm thanh khoản cao: EUR/USD, USD/JPY, GBP/USD, vàng — các sản phẩm có spread thấp và volume lớn hiếm khi gặp partial fill cho khối lượng giao dịch bán lẻ thông thường (dưới 10 lot).

Chia nhỏ lệnh lớn: Thay vì đặt 1 lệnh 50 lot, chia thành 5 lệnh x 10 lot. Mỗi lệnh nhỏ dễ khớp trọn vẹn hơn, giảm tác động giá và partial fill.

Sử dụng lệnh Market thay vì Limit (khi cần khớp nhanh): Lệnh Market ưu tiên tốc độ khớp hơn giá — phù hợp khi vào/ra lệnh gấp và chấp nhận trượt giá nhỏ.

Kiểm tra DOM trước khi vào lệnh: Nếu DOM cho thấy volume mỏng ở mức giá mục tiêu, cân nhắc điều chỉnh giá limit hoặc giảm khối lượng lệnh.

Sử dụng lệnh FOK hoặc AON khi cần thiết: Đảm bảo khớp toàn bộ hoặc không khớp gì — hữu ích cho hedging và chiến lược cần khối lượng chính xác.


Kết luận

Khớp lệnh từng phần (Partial Fill) là hiện tượng tự nhiên trên thị trường tài chính, phản ánh thực trạng cung cầu và thanh khoản tại thời điểm giao dịch. Partial fill không phải lỗi — nó là kết quả của việc thị trường không có đủ volume tại mức giá yêu cầu để lấp đầy toàn bộ lệnh.

Hiểu nguyên nhân (thanh khoản, DOM, kích thước lệnh, biến động), phân biệt hành vi trên lệnh Limit vs Market, và biết cách sử dụng lệnh AON/FOK/IOC giúp trader kiểm soát tình huống thay vì bị bất ngờ. Trên broker ECN, partial fill phổ biến hơn nhưng phản ánh thanh khoản thực — đây là dấu hiệu của môi trường giao dịch minh bạch.

Theo Investopedia, trader nên kiểm tra chính sách phí partial fill của broker trước khi giao dịch — một số broker tính commission theo lần khớp, tạo chi phí ẩn. Theo Forex.com, hiểu rõ các loại lệnh và cách chúng tương tác với thanh khoản thị trường là kiến thức nền tảng giúp đạt chất lượng khớp lệnh tốt nhất.


Câu hỏi thường gặp (FAQs)

Partial fill có phải lỗi broker không?
Không. Partial fill là hiện tượng thị trường tự nhiên do thanh khoản không đủ. Trên broker ECN, partial fill cho thấy lệnh được khớp với thanh khoản thực — dấu hiệu minh bạch.

Partial fill có mất phí thêm không?
Tùy broker. Một số broker tính commission theo lần khớp (fill), không theo lệnh (order). Kiểm tra chính sách phí trước khi giao dịch — đặc biệt nếu thường xuyên giao dịch khối lượng lớn.

Làm sao tránh partial fill hoàn toàn?
Sử dụng lệnh AON (All-or-None) hoặc FOK (Fill-or-Kill). Tuy nhiên, rủi ro là lệnh có thể không bao giờ được khớp nếu thanh khoản thấp.

Partial fill xảy ra nhiều trên Forex không?
Với khối lượng bán lẻ bình thường (dưới 5 lot) và cặp tiền chính trong giờ thanh khoản cao, partial fill rất hiếm. Phổ biến hơn với cặp exotic, khối lượng lớn, hoặc giờ thanh khoản thấp.

IOC khác gì FOK?
IOC khớp phần có thể ngay lập tức, hủy phần còn lại (chấp nhận partial fill). FOK yêu cầu khớp toàn bộ ngay lập tức — nếu không đủ, hủy toàn bộ (không chấp nhận partial fill).

Tại sao trader tổ chức hay gặp partial fill?
Vì khối lượng giao dịch cực lớn (hàng trăm đến hàng nghìn lot). Không mức giá nào trên sổ lệnh có đủ volume để khớp trọn vẹn → trader tổ chức chủ động chia nhỏ lệnh qua thuật toán VWAP, TWAP.

Partial fill ảnh hưởng đến stop loss không?
Gián tiếp. Nếu lệnh vào bị partial fill, kích thước vị thế nhỏ hơn dự kiến → stop losstake profit cần điều chỉnh theo khối lượng thực tế đã khớp.

Ban Biên Tập
Ban Biên Tập
Bài viết: 50