Nhập môn và giao dịch
Trượt giá và chênh lệch giá mua bán là gì? Tính chi phí khớp lệnh bằng sổ lệnh thật
Giá đặt và giá khớp trung bình lệch nhau thường do spread và trượt giá. Bài viết dùng dữ liệu công khai thật của Kraken để so sánh spread theo % giữa các cặp, tính tác động giá của một vòng mua bán 10.000 USD và hướng dẫn đặt mức trượt giá chấp nhận khi swap.
Bạn thấy một mức giá trước khi đặt lệnh, nhưng giá khớp trung bình sau đó lại là một con số khác. Phần chênh lệch này thường đến từ hai thứ: chênh lệch giá mua bán (spread) và trượt giá (slippage). Spread đã tồn tại trước khi bạn đặt lệnh, còn trượt giá xảy ra trong lúc lệnh được khớp. Bài này dùng số liệu thị trường thật để tính xem mỗi loại lớn đến đâu, khi nào bị khuếch đại, và cách kiểm soát trên sàn giao dịch lẫn khi swap trên sàn phi tập trung.
Giá tài sản mã hóa có thể biến động mạnh và bạn có thể mất toàn bộ số vốn. Bài viết chỉ giải thích chi phí khớp lệnh hình thành thế nào, không phải lời khuyên đầu tư.
Spread, tác động giá và trượt giá là ba chuyện khác nhau
| Khái niệm | Xảy ra lúc nào | Do đâu quyết định | Phần bạn kiểm soát được |
|---|---|---|---|
| Chênh lệch giá mua bán (spread) | Có sẵn trước khi đặt lệnh | Giá bán thấp nhất trừ giá mua cao nhất | Chọn cặp có thanh khoản tốt, dùng lệnh giới hạn |
| Tác động giá (price impact) | Ngay lúc lệnh khớp | Khối lượng lệnh của bạn so với lượng lệnh đang chờ | Giảm số tiền mỗi lệnh, chia nhỏ |
| Trượt giá do độ trễ | Từ lúc gửi lệnh đến lúc khớp thật | Thị trường thay đổi bao nhiêu trong khoảng đó | Đặt mức trượt giá chấp nhận hoặc giá giới hạn |
Nhiều nơi gọi chung hai loại sau là "trượt giá". Tách ra sẽ dễ xử lý hơn: tác động giá là do lệnh quá lớn tự đẩy giá đi, có thể tính trước; trượt giá do độ trễ là do người khác khớp trước trong lúc bạn chờ, chỉ có thể đặt giới hạn chứ không đoán trước chính xác.
Spread: cùng thời điểm, mỗi cặp giao dịch chênh rất khác nhau
Trong sổ lệnh của sàn, giá bán thấp nhất gọi là giá chào bán tốt nhất (ask), giá mua cao nhất gọi là giá chào mua tốt nhất (bid). Mua theo giá thị trường thì phải trả ít nhất mức ask, bán theo giá thị trường thì chỉ nhận nhiều nhất mức bid. Khoảng cách giữa hai mức này là phần bạn mất ngay nếu mua rồi bán lại tức thì.
Dưới đây là báo giá hai cặp giao dịch do giao diện dữ liệu công khai của Kraken trả về lúc 16:48 ngày 06/10/2026 (giờ Việt Nam). Liên kết mở được mà không cần đăng nhập: https://api.kraken.com/0/public/Ticker?pair=XBTUSDT,KSMUSD.

a là giá bán tốt nhất, b là giá mua tốt nhất, v là khối lượng giao dịch (số thứ hai là 24 giờ gần nhất).
Đổi spread ra phần trăm (spread ÷ giá giữa của ask và bid):
| Cặp giao dịch | Giá bán tốt nhất | Giá mua tốt nhất | Spread | Spread theo % |
|---|---|---|---|---|
| BTC/USDT (XBTUSDT) | 85.992,2 | 85.992,1 | 0,1 | khoảng 0,0001% |
| KSM/USD | 5,06 | 5,05 | 0,01 | khoảng 0,20% |
Spread của KSM chỉ 1 xu, nghe rất nhỏ, nhưng tính theo tỷ lệ thì gấp hơn một nghìn lần BTC ở thời điểm này. Giá đơn vị thấp, bước giá tối thiểu (tick) tương đối lớn và ít người đặt lệnh chờ đều làm spread theo % cao lên. Vì vậy khi đánh giá spread, hãy nhìn tỷ lệ phần trăm, đừng nhìn số tiền tuyệt đối.
Tác động giá: tính một vòng mua bán 10.000 USD bằng sổ lệnh thật
Spread mới chỉ là mức giá đầu tiên. Khi lệnh của bạn lớn hơn lượng đang chờ ở mức giá tốt nhất, phần còn lại sẽ khớp dần sang các mức giá kém hơn. Đây là sổ lệnh KSM/USD từ cùng giao diện vài giây sau đó (Depth?pair=KSMUSD&count=8):

Mỗi cặp ngoặc vuông lần lượt là giá, khối lượng (KSM) và dấu thời gian lần cập nhật cuối của mức giá đó.
Giả sử đúng lúc này bạn mua KSM trị giá 10.000 USD bằng lệnh thị trường và sổ lệnh không đổi:
| Giá khớp | Khối lượng khớp (KSM) | Thành tiền (USD) |
|---|---|---|
| 5,06 | 632,338 | 3.199,63 |
| 5,07 | 1.317,404 | 6.679,24 |
| 5,08 | 23,845 | 121,13 |
| Tổng | 1.973,587 | 10.000,00 |
Giá khớp trung bình khoảng 5,0669, cao hơn giá bán tốt nhất 5,06 khoảng 0,14%. Đó là tác động giá.
Nếu ngay sau đó bán lại 1.973,587 KSM bằng lệnh thị trường: mức 5,05 chỉ có 98,835 KSM, phần còn lại 1.874,752 KSM phải bán ở 5,04. Bạn nhận về khoảng 9.947,87 USD, giá trung bình khoảng 5,0405. Chưa tính bất kỳ phí giao dịch nào, một vòng mua bán đã mất khoảng 52 USD, tương đương 0,52%.
Với các cặp có khối lượng lớn như BTC/USDT, spread theo % nhỏ hơn rất nhiều và lượng lệnh chờ ở mỗi mức giá thường dày hơn, nên tác động giá của cùng 10.000 USD sẽ nhỏ hơn nhiều. Đổi pair= trong liên kết thành XBTUSDT là bạn tự tính được theo cùng cách.
Từ đó có một cách ước tính trước khi đặt lệnh:
- Mở sổ lệnh của cặp giao dịch (thường là mục "Sổ lệnh" hoặc "Độ sâu" trên sàn).
- Nếu mua, nhìn phía lệnh bán; cộng dồn "giá × khối lượng" của từng mức cho đến khi vượt số tiền bạn định đặt.
- Nếu phải ăn đến mức giá thứ ba, thứ tư trở đi, hoặc mức giá cuối cùng kém mức đầu tiên quá tỷ lệ bạn chấp nhận, hãy chuyển sang lệnh giới hạn hoặc chia nhỏ lệnh.
Trượt giá do độ trễ: giá thay đổi giữa lúc gửi lệnh và lúc khớp
Dù lệnh không lớn, từ lúc bấm xác nhận đến lúc khớp thật vẫn có một khoảng thời gian. Khi thị trường biến động mạnh, trong khoảng đó người khác có thể đã ăn hết hoặc hủy các lệnh chờ ở giá tốt nhất, và bạn nhận mức giá kém hơn.
Trên sàn tập trung, độ trễ này thường rất ngắn, nhưng vẫn có thể đáng kể khi giá tăng giảm đột ngột hoặc có tin lớn. Một số sàn có cơ chế bảo vệ giá: nếu giá khớp dự kiến lệch quá xa thì hủy lệnh thay vì khớp bằng mọi giá. Quy tắc khác nhau tùy sàn; xem thêm sự khác nhau giữa lệnh thị trường và lệnh giới hạn, và vì sao giá khớp trung bình khác giá trên màn hình.
Trên sàn phi tập trung (DEX), độ trễ dài hơn vì giao dịch phải được phát lên mạng và chờ được đưa vào khối. Tài liệu chính thức của Uniswap mô tả rõ điều này:

Tóm tắt nội dung: trượt giá là thay đổi của giá trong lúc giao dịch đã gửi vẫn đang chờ. Trên Ethereum, thứ tự thực thi phụ thuộc vào phí gas trả kèm; giao dịch trả phí thấp có thể chờ không xác định, trong lúc đó các swap khác diễn ra và giá thay đổi. Mức trượt giá chấp nhận (slippage tolerance) là biên độ thay đổi người dùng chấp nhận ngoài tác động giá; nếu giá thực thi nằm ngoài biên độ đó, ví dụ 1%, giao dịch thất bại và swap không xảy ra.
Nên đặt mức trượt giá chấp nhận bao nhiêu khi swap
Trên DEX hoặc tính năng swap tích hợp trong ví, mức trượt giá chấp nhận thường chỉnh được trong phần cài đặt (biểu tượng bánh răng). Thực chất nó đặt ra một "mức tối thiểu phải nhận được". Cũng trong tài liệu đó, Uniswap liệt kê ba lớp bảo vệ mà các giao diện thường cung cấp:

Minimum output: khi bạn nhập số token bỏ ra, nếu số token nhận về thấp hơn mức này thì giao dịch bị hoàn lại. Maximum input: khi bạn nhập số token muốn nhận, nếu phải bỏ ra nhiều hơn mức này thì giao dịch bị hoàn lại. Transaction deadline: giao dịch được đưa vào khối sau thời hạn này sẽ bị hoàn lại thay vì khớp theo giá đã cũ.
Đánh đổi khi chọn mức:
- Đặt quá thấp: giá chỉ nhích một chút là giao dịch thất bại. Trên các mạng như Ethereum, giao dịch thất bại thường vẫn phải trả phí mạng (gas) đã tiêu tốn; cách tính phí xem cách tính phí mạng trên Bitcoin, Ethereum và TRON.
- Đặt quá cao: giao dịch gần như chắc chắn thành công, nhưng bạn đã đồng ý khớp ở giá rất tệ, đồng thời giao dịch đang chờ dễ bị người khác lợi dụng để chen lệnh trước, đẩy giá khớp của bạn lên.
Cách làm thực tế:
- Xem tác động giá dự kiến mà giao diện hiển thị. Coin phổ biến, cặp thanh khoản lớn thường rất nhỏ; nếu con số cao, hãy giảm số tiền trước chứ đừng nâng mức chấp nhận để "ép" giao dịch qua.
- Bắt đầu từ mức mặc định của giao diện; chỉ nâng nhẹ khi giao dịch thất bại nhiều lần và bạn xác nhận đó là biến động giá bình thường.
- Trước khi gửi, đọc con số "nhận tối thiểu" (minimum received) một lần, chắc chắn đó là kết quả tệ nhất bạn chấp nhận được.
- Với token lạ mà phải đặt mức chấp nhận rất cao mới đổi được, hãy dừng lại kiểm tra: có thể thanh khoản cực thấp, hoặc hợp đồng token tự trừ thêm phí khi chuyển.
Giảm chi phí spread và trượt giá khi đặt lệnh trên sàn
| Tình huống | Cách làm | Lý do |
|---|---|---|
| Coin phổ biến, số tiền nhỏ | Lệnh thị trường ảnh hưởng rất ít; cũng có thể dùng lệnh giới hạn đặt nhỉnh hơn giá chào | Thường mức giá đầu tiên đã đủ khớp |
| Cặp có spread theo % cao rõ rệt | Dùng lệnh giới hạn đặt giữa giá mua và bán, hoặc ở giá mục tiêu của bạn | Tránh vừa vào lệnh đã trả trọn spread |
| Số tiền vượt tổng vài mức giá đầu | Chia nhỏ lệnh, hoặc dùng lệnh giới hạn để chặn giá tệ nhất | Tránh khớp dần xuống mức giá rất kém |
| Thị trường biến động mạnh | Xem giá mua bán tốt nhất và khối lượng vài mức đầu rồi mới quyết định | Spread giãn ra, lệnh chờ ít đi |
| Muốn giảm cả phí giao dịch | Đặt lệnh giới hạn không khớp ngay để làm bên tạo lệnh | Phí maker thường thấp hơn taker; cách phân biệt xem Maker và Taker là gì, phí chênh nhau bao nhiêu |
Cuối cùng, spread và trượt giá không xuất hiện trong bảng chi tiết phí, vì chúng đã nằm sẵn trong giá khớp. Muốn biết chi phí thật của một giao dịch, hãy vào lịch sử khớp lệnh xem giá trung bình thực tế, so với giá mua hoặc bán tốt nhất trước khi đặt lệnh, rồi cộng thêm phí.
Câu hỏi thường gặp
Trượt giá lúc nào cũng gây lỗ?
Không hẳn. Trong lúc chờ, giá cũng có thể đi theo hướng có lợi cho bạn và giá khớp tốt hơn dự kiến, đôi khi gọi là trượt giá dương. Nhưng spread và tác động giá thì luôn là chi phí khi khớp theo giá thị trường.
Dùng lệnh giới hạn thì không bị trượt giá?
Giá khớp của lệnh giới hạn không thể tệ hơn mức bạn đặt, nên không có trượt giá "vượt dự kiến"; đổi lại, lệnh có thể chỉ khớp một phần hoặc không khớp. Nếu lệnh mua giới hạn đặt cao hơn giá bán tốt nhất, khi gửi nó vẫn ăn ngay các lệnh bán rẻ hơn, chỉ là tệ nhất cũng không vượt giá bạn đặt.
Tính năng chuyển đổi nhanh (Convert) không hiện spread, vậy là không có?
Chuyển đổi nhanh thường đưa ra một báo giá đã gộp sẵn spread nên không ghi riêng. Hãy so báo giá đó với giá mua bán tốt nhất trên sổ lệnh cùng lúc để thấy chênh bao nhiêu.
Đặt mức trượt giá 0,5% hay 1% thì chênh bao nhiêu tiền?
Với một lần swap 1.000 USD, 0,5% nghĩa là chấp nhận nhận ít hơn tối đa khoảng 5 USD, 1% là khoảng 10 USD. Đây chỉ là ranh giới "tệ nhất chấp nhận được", kết quả thực tế thường tốt hơn; nhưng mức chấp nhận càng cao thì trường hợp xấu nhất càng tệ.
Nguồn dữ liệu: giao diện dữ liệu công khai của Kraken Ticker và Depth (sổ lệnh) (số liệu lấy từ ảnh chụp lúc 16:48 ngày 06/10/2026 giờ Việt Nam; mở lại sẽ thấy số liệu tại thời điểm mở); tài liệu nhà phát triển Uniswap: Understanding Swaps on Uniswap (giải thích tác động giá, trượt giá, mức trượt giá chấp nhận và các tham số bảo vệ).