Following my analysis of Binance's latency, I explored three additional exchanges: Kucoin, HTX (previously Huobi), and Gate.io. I chose these exchanges based on my personal experience and their status as silver exchanges in Hummingbot, my favorite trading instrument. Here, I share insights that might be beneficial for your trading.
Kucoin
Initially, I tested Kucoin using various AWS instances from around the world, employing a simple Python script to send numerous requests to the exchange endpoint. The Asia region emerged as the top performer, consistent with the results for Binance.
Further, I narrowed down the Asia region tests to four regions: Tokyo, Osaka, Seoul, and Singapore. For the Asian regions, I conducted a comprehensive test using the same methodology I applied to Binance. The specifics of this methodology can be found in my previous article.
The results for order creation are the following:
Tokyo stands out as the clear leader, demonstrating unmatched performance.
Additional Kucoin Insights
I found that Kucoin offers high-frequency pro-trade accounts. They claim that trading with these accounts results in lower latency and a looser frequency limit. I was curious about the performance of these accounts. For about 3 days, I executed real-time trading tests across various pairs on a high-activity server, setting the tick size at 0.1 sec. Here is the detailed statistics for order creation round-trip times
The data makes it clear that HFT accounts outperform the ordinary trading account. The discrepancy in Median/Average/Min/Max numbers emphasizes the superiority of Kucoin's HFT accounts over regular trading ones.
While these accounts are available to all, they can only be activated and operated via API. Additionally, certain HTTP requests, parameters, and responses for these accounts differ, requiring adjustments to the default Hummingbot settings or other bots you use. For detailed instructions, refer to the official documentation. I'll also provide a handy tool at the end of this article to help you get started with these accounts.
HTX
HTX API documentation recommends placing servers in the Japan region. A brief test on my part affirmed this recommendation.
Furthermore, HTX has an optimized endpoint specifically for AWS clients. However, upon swithching to this endpoint for both REST and Websocket, I didn't observe any significant improvements.
The outcomes were nearly identical. It's possible that a script with a higher load or testing during periods of high volatility might yield different results.
Gate.io
Gate.io explicitly states in their documentation that their servers reside in the AWS Japan ap-northeast-1 region. To verify this claim, I ran some tests for Gate.io, and unsurprisingly, Tokyo came out on top yet again:
Conclusion
Through comprehensive latency testing across several cryptocurrency exchanges, including Kucoin, HTX, and Gate.io, the Tokyo region consistently stood out as the best-performing location. Specifically, for Kucoin, not only did Tokyo showcase superior performance, but the introduction of their high-frequency pro-trade accounts further enhanced trading efficiency. Tests indicated that these accounts significantly outperformed standard trading accounts, underscoring their potential for traders aiming for reduced latency.
Futher experiments
I also experimented with AWS subnets by running multiple bots across three availability zones in the Tokyo region. Although the initial tests didn't reveal significant latency improvements for the exchanges, I see potential in this area. Conducting a more thorough analysis with an advanced script, or perhaps testing during periods of high market volatility, might produce different results.
Resources
Hummingbot - The open source OS for crypto algo traders
Crypto Exchanges Latencies Test Repository - contains the script and all data discussed in this post.
Python Script for Kucoin HFT Account Activation - utilize this script to activate the HFT account by transfering assets to trade_hf account
Awesome. I've been waiting or somebody to make a proper latency analysis of Binance. Thanks 😃