All
Lọc theo:
Tôi có thể nạp tiền mặt vào tài khoản của mình bằng cách nào?
Tôi cần trợ giúp xác minh tài khoản
Tại sao tôi không thể truy cập vào tài khoản của mình?
Có phí rút tiền điện tử không?
Tôi cần trợ giúp để đăng nhập vào tài khoản của tôi
Kraken có API WebSocket không? Làm cách nào để kết nối với API này?
Kraken có cả API REST và API WebSocket. API WebSocket của chúng tôi có sẵn tại các URL bảo mật sau:
Nguồn cấp dữ liệu thị trường công khai (không xác thực): wss://ws.kraken.com/
Nguồn cấp dữ liệu tài khoản riêng tư (đã xác thực) và điểm cuối giao dịch: wss://ws-auth.kraken.com/
Không cần xác thực để kết nối với các nguồn cấp dữ liệu thị trường công khai, nhưng cần có mã thông báo xác thực hợp lệ cho các nguồn cấp dữ liệu riêng tư.
Tất cả các tin nhắn được gửi và nhận qua API WebSocket đều là văn bản thuần túy được mã hóa ở định dạng JSON. Chi tiết của từng loại tin nhắn được cung cấp trong tài liệu API WebSocket của chúng tôi.
Bạn có thư viện WebSocket nào không?
Chúng tôi có nhiều mã ví dụ về API WebSocket, có thể được sử dụng trực tiếp hoặc làm điểm khởi đầu cho việc triển khai của riêng bạn:
một ứng dụng khách dòng lệnh API WebSocket (bằng Python),
một bộ kiểm thử API WebSocket (bằng JavaScript),
các ví dụ về cách sử dụng mô-đun Python WebSocket được đề xuất của chúng tôi (websocket-client),
và một thư viện API WebSocket (Github).
API WebSocket của chúng tôi có thể được triển khai bằng bất kỳ ngôn ngữ lập trình nào bạn muốn và đội ngũ hỗ trợ API của chúng tôi rất sẵn lòng hỗ trợ bạn hoặc cung cấp mã ví dụ bằng các ngôn ngữ bổ sung nếu cần.
Các nguồn cấp dữ liệu/điểm cuối nào được hỗ trợ?
API WebSocket của chúng tôi cung cấp nhiều nguồn cấp dữ liệu thị trường theo thời gian thực, nguồn cấp dữ liệu tài khoản và điểm cuối giao dịch. Danh sách đầy đủ các nguồn cấp dữ liệu/điểm cuối có sẵn, cùng với chi tiết triển khai cho từng nguồn cấp dữ liệu/điểm cuối, có thể được tìm thấy trong tài liệu API WebSocket của chúng tôi.
Làm cách nào để biết tôi đã kết nối thành công? Làm cách nào để biết tôi vẫn đang kết nối?
Khi đăng ký một nguồn cấp dữ liệu, một tin nhắn {u'event': u'heartbeat'} sẽ được nhận với tần suất 1 nhịp tim mỗi giây.
Nhịp tim sẽ không được nhận nếu các tin nhắn khác (dữ liệu thị trường, dữ liệu tài khoản, v.v.) được nhận thay thế. Thời điểm và lý do dữ liệu thị trường hoặc tài khoản được nhận phụ thuộc vào nguồn cấp dữ liệu mà bạn đã đăng ký.
Nếu bạn đang đăng ký nguồn cấp dữ liệu của một cặp tiền tệ có khối lượng giao dịch thấp, bạn có thể chỉ nhận được nhịp tim trong thời gian dài.
Nếu bạn hủy đăng ký một nguồn cấp dữ liệu, bạn sẽ không còn nhận được nhịp tim hoặc dữ liệu giao dịch và sau khi không đăng ký bất kỳ nguồn cấp dữ liệu nào trong 1 phút, bạn sẽ bị ngắt kết nối khỏi nguồn cấp dữ liệu WebSockets.
Khi nào và tại sao WebSocket gửi dữ liệu cập nhật?
Thời điểm và lý do dữ liệu thị trường hoặc dữ liệu tài khoản được nhận phụ thuộc vào nguồn cấp dữ liệu mà bạn đã đăng ký. Ví dụ:
Ticker: Khi có một giao dịch hoặc một loạt giao dịch cho một cặp tiền tệ, một tin nhắn ticker sẽ được xuất bản cho cặp đó. Bạn sẽ chỉ nhận được tin nhắn này nếu bạn đã đăng ký nguồn cấp dữ liệu ticker cho cặp này.
Giao dịch: Tương tự, khi có một giao dịch hoặc một loạt giao dịch cho một cặp tiền tệ, một tin nhắn giao dịch cũng sẽ được xuất bản cho cặp đó. Bạn sẽ chỉ nhận được tin nhắn này nếu bạn đã đăng ký nguồn cấp dữ liệu giao dịch cho cặp này.
OHLC: Một khoảng OHLC cập nhật được xuất bản cho mỗi khoảng khi một giao dịch hoặc một loạt giao dịch cho một cặp tiền tệ được thực hiện. Bạn sẽ chỉ nhận được các bản cập nhật cho các khoảng mà bạn đã đăng ký. Sau khi vượt qua ranh giới khoảng, không có tin nhắn nào được gửi cho đến khi giao dịch tiếp theo xảy ra.
Sổ lệnh: Một ảnh chụp nhanh ban đầu của sổ lệnh với độ sâu đã chọn sẽ được xuất bản khi lần đầu tiên đăng ký nguồn cấp dữ liệu sổ lệnh.
Khi các lệnh mới được thêm vào sổ lệnh hoặc các giao dịch được thực hiện ảnh hưởng đến độ sâu sổ lệnh mà bạn đã đăng ký, một tin nhắn sẽ được xuất bản chứa các bản cập nhật sổ lệnh cho bất kỳ mức giá và khối lượng bị ảnh hưởng nào. Các bản cập nhật này có thể chỉ chứa lệnh mua, chỉ chứa lệnh bán hoặc cả lệnh mua và lệnh bán. Xem Cách xây dựng sổ lệnh bên dưới để biết chi tiết.
Chênh lệch: Khi một lệnh mua cao nhất mới hoặc lệnh bán thấp nhất được đặt, hoặc một giao dịch được thực hiện làm thay đổi giá mua tốt nhất hoặc giá bán tốt nhất, một tin nhắn chênh lệch sẽ được xuất bản với giá mua và giá bán đã cập nhật.
Nguồn cấp dữ liệu WebSocket có cung cấp dữ liệu lịch sử hay chỉ dữ liệu hiện tại?
Các nguồn cấp dữ liệu thị trường WebSocket chỉ cung cấp dữ liệu hiện tại, tuy nhiên, có thể kết nối đồng thời với API WebSocket để lấy dữ liệu hiện tại và API REST để lấy dữ liệu lịch sử.
Sử dụng tham số reqid.
Các yêu cầu đăng ký có thể bao gồm tham số reqid do khách hàng cung cấp, sau đó có thể được sử dụng để khớp yêu cầu đăng ký WebSocket mong muốn với ID kênh cho đăng ký đó.
Lưu ý rằng nếu bạn thực hiện nhiều đăng ký WebSocket cùng một lúc, tất cả chúng sẽ được gán cùng một giá trị reqid. Để gán một giá trị reqid khác, mỗi nguồn cấp dữ liệu phải được đăng ký riêng lẻ.
Tôi muốn biết thêm chi tiết, tôi có thể tìm thấy chúng ở đâu?
Thông số kỹ thuật API WebSocket đầy đủ có sẵn trong tài liệu API WebSocket.
Sự khác biệt giữa các ký hiệu cặp tiền tệ trong API REST và WebSocket.
API WebSocket chỉ chấp nhận các ký hiệu cặp tiền tệ ở định dạng ISO 4217-A3, chẳng hạn như XBT/USD.
Điểm cuối AssetPairs của API REST có thể được sử dụng để dịch các ký hiệu giữa các phiên bản API REST (chẳng hạn như XBTUSD hoặc XXBTZUSD) và phiên bản API WebSocket (chẳng hạn như XBT/USD).
https://api.kraken.com/0/public/AssetPairs
Trường wsname cung cấp ký hiệu API WebSocket.
Cách xây dựng sổ lệnh
Nguồn cấp dữ liệu sổ lệnh của API WebSocket là phức tạp nhất trong tất cả các nguồn cấp dữ liệu WebSocket, nhưng miễn là các tin nhắn nguồn cấp dữ liệu sổ lệnh được diễn giải chính xác, có thể duy trì một bản sao cục bộ của sổ lệnh chỉ với vài dòng mã.
Các trang hỗ trợ API WebSocket của chúng tôi cung cấp hướng dẫn chi tiết để diễn giải các tin nhắn nguồn cấp dữ liệu sổ lệnh, cùng với bảng ghi nguồn cấp dữ liệu sổ lệnh mẫu và mã mẫu (bằng Python) để duy trì một bản sao cục bộ hợp lệ của sổ lệnh.
Giới hạn kết nối API WebSocket là gì?
API WebSocket giới hạn số lượng kết nối đồng thời tối đa để bảo vệ chống lại việc lạm dụng (chẳng hạn như các cuộc tấn công DDoS). Nếu ứng dụng khách WebSocket của bạn thực hiện quá nhiều kết nối cùng một lúc, bạn sẽ nhận được thông báo lỗi sau:
{“error”: {“message”: “You have reached maximum capacity for WebSocket connections. Please reach out to Kraken support team for any questions.“, “hint”: “Your code may be reconnecting too often or when it has no need to.“, “name”: “WebSocket connection rate error”}}
API WebSocket cho phép nhiều đăng ký nguồn cấp dữ liệu qua một kết nối WebSocket duy nhất (chẳng hạn như đăng ký tất cả dữ liệu thị trường có sẵn cho cặp tiền tệ XBT/USD qua một kết nối duy nhất), do đó có thể truyền tất cả dữ liệu thị trường có sẵn cho tất cả các cặp tiền tệ mà không đạt đến giới hạn kết nối WebSocket.
Giới hạn tốc độ API WebSocket là gì?
Các giới hạn tốc độ giao dịch tương tự áp dụng trên tất cả các giao diện nhập lệnh (trang web, Kraken Terminal, API REST và WebSocket) và được giải thích chi tiết trên trang hỗ trợ giới hạn tốc độ của chúng tôi.
Giới hạn tốc độ tin nhắn của một kết nối API WebSocket duy nhất sẽ thay đổi tùy thuộc vào tải trên hệ thống. Các ứng dụng khách API WebSocket sẽ nhận được thông báo lỗi {"Error": "Exceeded msg rate"} khi giới hạn tốc độ tin nhắn bị vượt quá.
Giao dịch (đặt/hủy lệnh) qua API WebSocket.
Giao dịch qua API WebSocket có sẵn thông qua các điểm cuối addOrder và cancelOrder, được sử dụng để đặt lệnh mới và hủy các lệnh hiện có (đang mở) tương ứng.
Các điểm cuối giao dịch WebSocket có sẵn qua cùng một kết nối WebSocket riêng tư (wss://ws-auth.kraken.com/) như các nguồn cấp dữ liệu quản lý tài khoản riêng tư (openOrders và ownTrades).
Chi tiết đầy đủ về các điểm cuối giao dịch có sẵn qua tài liệu API WebSocket và các trang hỗ trợ API WebSocket của chúng tôi cung cấp thêm thông tin và ví dụ về cách sử dụng các điểm cuối giao dịch trong mã của riêng bạn.
Tại sao tôi nhận được lỗi 403 khi kết nối với API WebSocket?
Các kết nối API WebSocket được trung gian thông qua Cloudflare, do đó bất kỳ cài đặt bảo mật nào được Cloudflare triển khai đều có thể ảnh hưởng đến các kết nối đến cả URL công khai (wss://ws.kraken.com) và riêng tư (wss://ws-auth.kraken.com).
Cloudflare yêu cầu sử dụng Server Name Indication (SNI) cho tất cả các kết nối TLS, nếu không kết nối WebSocket sẽ thất bại và lỗi HTTP 403 Forbidden sẽ được trả về. Các trang hỗ trợ của Cloudflare cung cấp thêm chi tiết về yêu cầu TLS SNI của họ.
Thư viện API WebSocket Python chính thức của chúng tôi đã được cập nhật để hỗ trợ TLS SNI, nhưng một số thư viện API WebSocket của bên thứ ba có thể vẫn bị ảnh hưởng. Vui lòng liên hệ với đội ngũ hỗ trợ API của chúng tôi nếu bạn cần bất kỳ hỗ trợ nào để cập nhật mã API WebSocket của mình để hỗ trợ TLS SNI.
Hỗ trợ API WebSocket.
Vui lòng liên hệ với đội ngũ hỗ trợ API của chúng tôi nếu bạn cần bất kỳ hỗ trợ nào để triển khai ứng dụng khách API WebSocket của mình.