Giới hạn tần suất API sàn tiền mã hóa: lỗi 429 nghĩa là gì và cách không vượt
HTTP 429 nghĩa là bạn đã gửi quá nhiều yêu cầu trong một khoảng thời gian, và máy chủ yêu cầu bạn chậm lại. Đó không phải sự cố. Mỗi sàn đếm khác nhau: Binance dùng trọng số cho từng endpoint và chặn IP tiếp tục sau 429, Bybit chặn IP vượt 600 yêu cầu trong năm giây, và OKX đặt giới hạn theo endpoint và trả mã lỗi 50011. Muốn không vượt, hãy đọc header phản hồi, lùi đúng cách và dùng WebSocket khi có thể.
Khi nhận 429, hãy dừng và đợi trước khi thử lại; đừng thử lại ngay. Đọc các header báo mức dùng, tuân theo Retry-After nếu có, và thay việc hỏi liên tục bằng luồng WebSocket. Trên Binance, bỏ qua 429 lặp lại sẽ dẫn đến chặn IP tự động.
429 thực sự nghĩa là gì
HTTP 429 Too Many Requests là mã trạng thái chuẩn, được định nghĩa đúng cho tình huống này. Tài liệu MDN mô tả nó là client đã gửi quá nhiều yêu cầu trong một khoảng thời gian, và lưu ý header Retry-After có thể cho biết phải đợi bao lâu. Giới hạn có thể áp cho cả máy chủ hoặc một tài nguyên, thường dựa trên IP, nhưng cũng có thể gắn với ứng dụng hoặc người dùng.
Đó là thông điệp hữu ích chứ không phải thất bại. Nó cho biết dịch vụ đang chạy, bạn đã được nhận diện và cần làm gì tiếp. Khi đo tỷ lệ khả dụng trên trang này, chúng tôi giữ nhóm riêng cho giới hạn tần suất, để không báo sàn sập chỉ vì một yêu cầu bị hạn chế.

Binance đếm thế nào: trọng số yêu cầu và chặn IP
Tài liệu API hợp đồng tương lai của Binance mô tả hệ thống trọng số. Mỗi route có trọng số, và endpoint nặng hơn hoặc xử lý nhiều mã tốn hơn. Giới hạn của bạn là tổng trọng số mỗi khoảng, không phải số yêu cầu đơn giản. Giới hạn hiện tại nằm trong mảng rateLimits của /fapi/v1/exchangeInfo.
Các điểm chính trong tài liệu:
- Mỗi phản hồi có
X-MBX-USED-WEIGHT-(intervalNum)(intervalLetter), cho biết trọng số đã dùng của IP. - 429 được trả khi vượt một trong các giới hạn.
- Vượt liên tục, hoặc không lùi sau 429, dẫn đến chặn IP tự động với trạng thái 418.
- Thời gian chặn tăng với người tái phạm, từ 2 phút đến 3 ngày.
- Giới hạn IP dựa trên địa chỉ IP chứ không phải khóa API, nên nhiều chương trình trên một máy dùng chung ngân sách.
- Giới hạn tần suất lệnh được theo dõi riêng, và phản hồi lệnh có header đếm riêng.

Bybit đếm thế nào: theo IP và theo người dùng
Tài liệu v5 của Bybit mô tả hai lớp. Ở lớp IP, mặc định bạn được 600 yêu cầu trong cửa sổ năm giây mỗi IP, cho lưu lượng đến các tên máy chủ API chính. Vượt quá sẽ nhận lỗi 403, access too frequent, và tài liệu nói phải dừng mọi phiên HTTP và đợi ít nhất 10 phút, sau đó lệnh chặn tự gỡ. Lưu ý đây là 403 chứ không phải 429, điều khiến nhiều người bất ngờ.
Ở lớp API, giới hạn áp cho từng người dùng trong cửa sổ trượt, và vượt sẽ trả retCode 10006 với Too many visits! trong JSON. Header phản hồi báo vị trí của bạn:
X-Bapi-Limit-Statuscho biết số yêu cầu còn lại của endpoint hiện tại.X-Bapi-Limitcho biết giới hạn hiện tại của endpoint đó.X-Bapi-Limit-Reset-Timestampcho biết khi nào giới hạn đặt lại nếu bạn đã vượt.
Bybit cũng khuyên không chạy ứng dụng sát mép các giới hạn này, vì hoạt động mạng bất thường có thể gây vi phạm ngoài ý muốn. Kết nối WebSocket có giới hạn riêng.

OKX đếm thế nào: theo endpoint và theo công cụ
Tài liệu API của OKX nói yêu cầu bị từ chối trả mã lỗi 50011, giới hạn khác nhau theo từng endpoint và ghi trong chi tiết của endpoint đó. Giới hạn REST công khai không xác thực dựa trên IP, giới hạn đăng nhập và đăng ký WebSocket dựa trên kết nối. Với API giao dịch, đặt, sửa và hủy lệnh có giới hạn độc lập, thường định nghĩa theo công cụ và dùng chung giữa REST và WebSocket.
Bài học từ ba sàn: đừng giả định quy tắc của sàn này cho sàn khác. Mã trạng thái, đơn vị đếm và hình phạt có thể khác, và đều thay đổi theo thời gian, nên hãy quay lại tài liệu hiện hành.
Vì sao bạn chạm giới hạn ngoài ý muốn
Đa số vấn đề giới hạn không đến từ một vòng lặp bận. Chúng đến từ nguyên nhân kém rõ ràng hơn.
- IP dùng chung. Nhiều bot, cổng NAT đám mây hoặc VPN chung đều tính vào một địa chỉ. Hàng xóm có thể tiêu ngân sách của bạn.
- Endpoint nặng. Lấy mọi giá hoặc sổ lệnh sâu có thể tốn gấp nhiều lần yêu cầu một mã. Mười yêu cầu như vậy có thể bằng hàng trăm lệnh gọi đơn giản.
- Bão thử lại. Lỗi ngắn khiến mọi worker thử lại cùng lúc. Đợt đó đẩy bạn vào 429, kích hoạt thêm thử lại.
- Vòng khởi động lại. Chương trình tải lại trạng thái khi khởi động, rồi crash và khởi động liên tục, có thể tiêu hết ngân sách chỉ để khởi động.
- Hỏi liên tục thứ luồng có thể cung cấp. Hỏi giá mỗi giây trên 50 mã là 3.000 yêu cầu một phút, trong khi WebSocket giao cùng dữ liệu với chi phí thấp hơn nhiều.
Cách lùi đúng
Khi nhận phản hồi giới hạn, hành vi đúng rất đơn giản và đáng làm một lần, ở một chỗ.
- Ngừng gửi đến sàn đó trong thời gian yêu cầu. Nếu có header
Retry-Afterhoặc dấu thời gian đặt lại, hãy theo. Nếu không, đợi, bắt đầu khoảng một giây. - Dùng lùi theo cấp số nhân kèm ngẫu nhiên. Nhân đôi thời gian đợi sau mỗi lỗi liên tiếp, có trần, và thêm ngẫu nhiên để các worker không cùng thử lại.
- Dùng chung bộ giới hạn giữa các worker. Một token bucket cho mỗi IP và sàn, dùng chung cho mọi tiến trình trên địa chỉ đó, hiệu quả hơn nhiều so với mỗi worker tự đoán.
- Theo dõi mức dùng liên tục. Đọc header trọng số trên mỗi phản hồi và chậm lại khi gần giới hạn thay vì đợi bị báo.
- Coi 418 và chặn IP là tín hiệu dừng. Dừng và báo người vận hành. Tiếp tục sẽ kéo dài lệnh chặn.
Cách dùng ít yêu cầu hơn
Yêu cầu rẻ nhất là yêu cầu bạn không gửi.
- Dùng WebSocket cho dữ liệu thị trường và cập nhật tài khoản. Một luồng thay cho hỏi liên tục, và cập nhật còn đến sớm hơn.
- Lưu đệm dữ liệu ít đổi. Đặc tả hợp đồng và biểu phí ít thay đổi. Lấy thỉnh thoảng thay vì mỗi lần chạy.
- Dùng endpoint gộp cẩn thận. Chúng tiết kiệm nhiều yêu cầu, nhưng hãy xem trọng số vì mỗi lệnh gọi tốn hơn.
- Chỉ yêu cầu độ sâu cần thiết. Yêu cầu sổ lệnh sâu tốn hơn, và nhiều việc chỉ cần vài mức đầu.
- Tránh hỏi trạng thái lệnh trong vòng lặp. Luồng dữ liệu người dùng báo khi lệnh khớp.
Nếu chỉ cần funding rate hoặc số liệu độ tin cậy, có thể bạn không cần hỏi sàn. Chúng tôi công bố dữ liệu dưới dạng tệp JSON miễn phí, cập nhật theo lịch, dù không nên dùng cho quyết định giao dịch cần dữ liệu trực tiếp.
429 lúc khẩn cấp
Lúc tệ nhất để chạm giới hạn là khi đang cố hủy lệnh trong thị trường giảm. Vòng lặp của bạn đang dồn API, ngân sách hết, và giờ lệnh hủy bị từ chối. Hãy lên kế hoạch: giữ lưu lượng liên quan lệnh trong ngân sách dành riêng, tách khỏi việc hỏi dữ liệu thị trường. Giữ dữ liệu công khai trên luồng để không dùng ngân sách REST. Tài liệu Binance ghi rằng khi nút máy chủ đang bảo vệ cấp hệ thống và hạn chế yêu cầu, lệnh đóng vị thế, reduce-only và hủy được miễn, cho thấy dùng các loại lệnh này để giảm rủi ro là thói quen khôn ngoan. Hướng dẫn phải làm gì trong sự cố đề cập chuẩn bị liên quan.
Giới hạn hay sự cố?
Hai thứ có thể giống nhau trên bảng theo dõi, vì đều tạo lỗi. Hãy tách theo mã.
- 429, 418 hoặc mã giới hạn riêng của sàn: lưu lượng của bạn có lẽ là nguyên nhân.
- 403: có thể là tường lửa web, chặn khu vực hoặc giới hạn IP của Bybit. Xem hướng dẫn 403 và 451.
- 5xx hoặc hết thời gian: có lẽ phía sàn hoặc trên đường đi. Xem sàn có sập không.
Hãy ghi mã, endpoint và header phản hồi cho mọi lỗi. Không có chúng, bạn chỉ đoán.
Câu hỏi thường gặp về giới hạn tần suất
Dùng nhiều khóa API có tránh được giới hạn không?
Không với giới hạn theo IP, như trọng số IP của Binance. Nhiều khóa từ cùng địa chỉ dùng chung ngân sách. Giới hạn lệnh có thể theo tài khoản, nên hãy xem từng loại được đếm thế nào. Rải lưu lượng qua nhiều địa chỉ chỉ để né giới hạn có thể vi phạm điều khoản sàn, và chúng tôi không khuyên làm.
Lệnh chặn kéo dài bao lâu?
Tùy sàn. Tài liệu Binance nêu lệnh chặn tăng từ 2 phút đến 3 ngày với người tái phạm. Bybit nói đợi ít nhất 10 phút sau 403, access too frequent. Tiếp tục gửi trong lúc bị chặn có thể kéo dài nó.
Có thể xin giới hạn cao hơn không?
Một số sàn có giới hạn cao hơn cho nhà tạo lập, bậc VIP hoặc theo đơn. Hãy xem tài liệu. Bước đầu tốt hơn thường là giảm lưu lượng không cần thiết, vì nó cũng làm hệ thống vững hơn.
Giữ dưới giới hạn
- Đọc quy tắc giới hạn của đúng API bạn dùng.
- Ghi header trọng số và chậm lại trước khi chạm giới hạn.
- Dùng chung một bộ giới hạn cho mọi worker trên một IP.
- Khi có phản hồi giới hạn, lùi kèm ngẫu nhiên và tuân theo Retry-After.
- Dừng và cảnh báo khi gặp 418 hoặc lệnh chặn.
- Chuyển dữ liệu thị trường sang WebSocket.
- Dành ngân sách cho lệnh hủy.
Đọc thêm: Vì sao API sàn trả về 403 hoặc 451 · Cách sửa lỗi Binance -1021 · Cách kiểm tra sàn có bị sập không
Nguồn
Binance · Giới hạn · Bybit · Quy tắc giới hạn · OKX · Tài liệu API · MDN · 429 · Về Tickmark
Hướng dẫn khác
Funding rate trong hợp đồng vĩnh cửu là gì? Giải thích dễ hiểu
Funding rate là khoản thanh toán định kỳ giữa những người giữ hai phía đối nghịch của một hợp đồng vĩnh cửu. Nó tồn tại vì hợp đồng vĩnh cửu không bao giờ đáo hạn, nên cần một cơ chế khác để giữ giá sát với tài sản cơ sở. Khi mức dương, long trả cho short; khi âm, short trả cho long. Sàn đặt ra công thức, nhưng trên các sàn lớn, tiền chuyển giữa các nhà giao dịch với nhau.
So sánh funding rate giữa các sàn: chu kỳ 8 giờ và 4 giờ khác nhau thế nào
Bạn không thể so sánh hai funding rate chỉ bằng cách nhìn phần trăm. Một mức chỉ có ý nghĩa khi bạn biết nó được tính thường xuyên đến đâu, bạn đang long hay short, và hai lần đọc có mô tả cùng hợp đồng vào cùng thời điểm không. Cùng mức +0,01% tốn gấp đôi mỗi ngày trên lịch bốn giờ so với lịch tám giờ, và long trả bao nhiêu thì short nhận bấy nhiêu.
Funding rate âm có nghĩa gì? Ai trả tiền, và nó không nói lên điều gì
Funding rate âm nghĩa là người giữ short trả cho người giữ long ở lần thanh toán kế tiếp. Điều này thường xảy ra khi hợp đồng vĩnh cửu giao dịch dưới giá chỉ số, hay phản ánh bán khống mạnh hoặc phòng hộ. Nó không có nghĩa giá sắp giảm hay sắp tăng, và cũng không phải thu nhập miễn phí cho long, vì giá có thể đi ngược họ nhiều hơn khoản thanh toán rất nhiều.
Cách quy đổi funding rate sang APR, và vì sao con số có thể gây hiểu lầm
Để quy một funding rate về năm, nhân mức mỗi lần thanh toán với số lần thanh toán trong ngày, rồi nhân 365. Mức 0,01% mỗi tám giờ trở thành 0,01% × 3 × 365 = 10,95% một năm. Cách này đặt các hợp đồng có lịch khác nhau lên cùng một thang để so sánh được. Nó không cho biết bạn sẽ kiếm hay trả bao nhiêu trong một năm, vì giả định mức hôm nay không bao giờ đổi.
Arbitrage funding rate: cách hoạt động và điều gì ăn mất lợi nhuận
Arbitrage funding rate là giữ hai vị thế bù trừ nhau trên cùng một tài sản để biến động giá gần như triệt tiêu, rồi nhận khoản funding ở một phía. Cách kinh điển là mua giao ngay và short hợp đồng vĩnh cửu. Cách thứ hai là short hợp đồng vĩnh cửu trên sàn có mức cao hơn và long trên sàn có mức thấp hơn. Người ta hay gọi nó là không rủi ro. Không phải vậy. Rủi ro chỉ khác với một lệnh theo hướng thông thường.
Giá đánh dấu, giá cuối và giá chỉ số: giá nào thanh lý bạn?
Hợp đồng vĩnh cửu hiển thị ba mức giá dễ nhầm. Giá cuối là nơi giao dịch gần nhất diễn ra. Giá chỉ số là trung bình giá giao ngay trên nhiều sàn. Giá đánh dấu là ước tính của sàn về giá trị hợp lý của hợp đồng, và trên các sàn lớn chính nó quyết định lãi chưa thực hiện và việc bạn có bị thanh lý không. Biết giá nào làm gì sẽ giải thích vì sao vị thế có thể bị thanh lý dù biểu đồ chưa từng chạm mức thanh lý.
Một lệnh thị trường thực sự tốn bao nhiêu: phí, chênh lệch giá và trượt giá
Mức phí trên trang phí của sàn chỉ là một phần chi phí của lệnh thị trường. Phần còn lại đến từ giá bạn thực sự nhận, phụ thuộc vào chiều giao dịch, quy mô lệnh và độ sâu sổ lệnh lúc đó. Để so sánh công bằng giữa các sàn, hãy đo giá khớp trung bình so với một giá tham chiếu, rồi cộng phí giao dịch, và cẩn thận đừng tính chênh lệch giá hai lần.
Cách ước tính trượt giá từ độ sâu sổ lệnh trước khi giao dịch
Trượt giá là chênh lệch giữa giá bạn kỳ vọng và giá trung bình bạn thực sự nhận. Bạn có thể ước tính phần lớn trước khi đặt lệnh, vì sổ lệnh cho thấy mỗi mức giá có bao nhiêu. Cộng các mức ở phía bạn sẽ tiêu thụ đến khi đủ quy mô, tính giá trung bình và so với giá giữa. Ước tính chỉ tốt bằng ảnh chụp tạo ra nó, và sổ lệnh mỏng đi đúng lúc bạn dễ cần nhất.
Phí maker và taker: cách so sánh phí giao dịch của các sàn tiền mã hóa
Maker thêm vào sổ lệnh một lệnh chờ khớp. Taker khớp với lệnh đã có sẵn ở đó. Hầu hết sàn thu taker cao hơn, vì maker cung cấp thanh khoản để người khác giao dịch. So sánh sàn chỉ theo phí nổi bật sẽ gây hiểu lầm: bạn cần biết mình thường ở phía nào, khối lượng thực sự đưa bạn vào bậc nào, và phí so với trượt giá và funding trên cùng giao dịch ra sao.
Cách kiểm tra sàn tiền mã hóa có bị sập không: hướng dẫn từng bước
Khi sàn ngừng hoạt động với bạn, câu hỏi đầu tiên là nó sập với mọi người hay chỉ với bạn. Thường bạn trả lời được trong vài phút: xem trang trạng thái của sàn, xem đo lường độc lập, thử mạng khác và kiểm tra trực tiếp API công khai. Mỗi nguồn thấy một thứ khác nhau, nên một trang màu xanh không chứng minh mọi thứ ổn, và một yêu cầu thất bại không chứng minh sàn sập.
Sàn có thực sự sập không? Cách đọc tỷ lệ khả dụng API và lịch sử sự cố
Thời gian hoạt động mô tả phần yêu cầu thành công tới các dịch vụ cụ thể, trong một giai đoạn cụ thể, từ một đường mạng cụ thể. Nó không khẳng định bạn đặt được lệnh, rút được tiền hay có thể tin giao tài sản cho sàn. Con số như 99,9% chỉ hữu ích khi bạn biết đã kiểm tra gì, từ đâu và trong bao lâu, nên hướng dẫn này giải thích cách đọc các chi tiết đó trên trang của chúng tôi và ở bất kỳ đâu.
Phải làm gì khi sàn tiền mã hóa sập trong lúc bạn có vị thế mở
Nếu sàn ngừng phản hồi khi bạn đang giữ vị thế, việc đầu tiên là tìm ra thực sự cái gì hỏng, việc thứ hai là đừng làm tệ hơn, và việc thứ ba là giảm rủi ro bằng bất kỳ đường nào còn chạy. Đừng gửi lại cùng một lệnh mãi, vì các lần trước có thể đã thành công. Thử ứng dụng di động và API làm đường thay thế, cân nhắc phòng hộ nơi khác nếu rủi ro lớn, và ghi lại sự việc phòng khi cần nêu sau này.
Vì sao API sàn từ chối dấu thời gian: lệch đồng hồ và báo giá cũ
Phản hồi nhanh vẫn có thể chứa báo giá cũ. Độ trễ khứ hồi, lệch đồng hồ và tuổi báo giá mô tả các phần khác nhau của một yêu cầu, và trộn lẫn chúng có thể khiến sai khớp đồng hồ trông như luồng thị trường bị chậm. Hướng dẫn này giải thích từng thứ bằng ví dụ, cho thấy cách chúng tôi ước tính, và nói phải làm gì khi API sàn từ chối yêu cầu vì thời gian.
Lỗi Binance -1021 «Timestamp for this request»: nguyên nhân và cách sửa
Lỗi API Binance -1021 INVALID_TIMESTAMP nghĩa là dấu thời gian trên yêu cầu có chữ ký của bạn nằm ngoài cửa sổ Binance chấp nhận. Thông báo thường là Timestamp for this request is outside of the recvWindow hoặc was 1000ms ahead of the server's time. Đa số trường hợp nguyên nhân là đồng hồ của bạn, nên cách sửa là đồng bộ nó, đo độ lệch với giờ máy chủ Binance và xử lý đúng phần độ trễ mạng còn lại. recvWindow lớn hơn có thể che vấn đề, nhưng không nên là bước đầu tiên.
Vì sao API sàn trả về 403 hoặc 451: chặn, khu vực và cách phân biệt
403 nghĩa là máy chủ hiểu yêu cầu và từ chối thực hiện. 451 nghĩa là truy cập bị từ chối vì lý do pháp lý. Trên API sàn tiền mã hóa, 403 có thể là tường lửa web, giới hạn yêu cầu, khóa không có quyền hoặc chặn khu vực, nên riêng mã không nói được là cái nào. Nội dung phản hồi, tài liệu của sàn và so sánh từ mạng khác thường cho biết. Hạn chế thật áp dụng với bạn vì một lý do, nên phản ứng đúng là tìm hiểu dịch vụ có được cung cấp nơi bạn ở không.
Trước khi mở tài khoản sàn tiền mã hoá: danh sách kiểm tra cho người ở Việt Nam
Trước khi mở tài khoản trên một sàn tiền mã hoá, hãy kiểm tra bốn điều: sàn có được phép phục vụ người ở nơi bạn sống hay không, cơ quan quản lý ở nước bạn có cấp phép cho sàn hay không, trang web trước mặt bạn có phải trang thật hay không, và gần đây sàn hoạt động ra sao. Điền mẫu đăng ký chỉ mất mười phút. Khắc phục một lựa chọn sai có thể mất nhiều tháng, có khi không thể khắc phục được. Bài này đi qua từng bước kiểm tra, lấy Binance và OKX làm ví dụ vì đây là hai sàn độc giả hỏi chúng tôi nhiều nhất, và giải thích tình hình pháp lý tại Việt Nam vào tháng 11 năm 2026.