How to Improve Execution in Crypto Markets or XTRD’s Art of Shaving

By XTRD’s Co-Founder and CTO Serg Gulko

Among many technical questions we receive, the latency-related group definitely stands out. Having deep HFT roots, I fully share concerns about this topic. Back in the day, building strategies for FX markets, we were choosing one CPU family over the other, preferring to use switches and routers of certain non-mass-market brands, install and tune very specific network cards, and so on. By the way, we replicated all this in the XTRD eco-system, that is why our NY4 location is equipped with Aristas and Exablaze servers! 

But, of course, all these optimizations should be made only after your code is tuned to perfection. There is no economical sense of burning thousands of dollars on expensive hardware toys while you might have a bigger problem and it’s closer than you think. 

We’ve been consulting several so-called “crypto-first” prop trading shops who bought absolutely top of the line/high cost servers and rented private internet lines from Avelacom (by the way, we also use Avelacom for certain destinations) to shave 4-7 ms of network-added latency. But! And here comes the best part – they had plans to use the CCXT library to trade. Don’t get me wrong, CCXT is a great library and I personally do respect the Open Source community but CCXT is not about HFT! So the fund guys win 7 ms by using high end hardware and private networks but lose sometimes up to 200 ms by using the wrong software.

Why do I think XTRD can do any better? One of our main focuses was – and still are – lowering latency in all possible ways. We analyze exchanges’ APIs, measure execution times, and build our connectors in order to notify clients as soon as possible when something happens.

Let me give you an example. Bittrex has a REST API to submit orders and an event-driven notification channel built on top of the terrible Microsoft SignalR stack. SignalR, in its turn, provides information in “orders” and “executions” channels. Data from the “executions” channel is more informative and useful (at least from our standpoint) but sometimes it comes with 300 (!) ms delay after similar, but less granular, updates in “orders”. What is really funny is that initial responses over the REST API come (sometimes, not always, which makes it even more interesting) faster than confirmations through SignalR. We know all these nuances and our connectors are capable of dealing with such situations. Of course, it creates certain complexity and non-linear logic but this is what we do for living.

Another example – when you cancel an order on Binance, you can rely on WebSocket notifications (which is a very convenient way) but in many cases, the REST API gets you a faster response. How fast? 10 ms! So you’ll know that your order has been canceled 10 ms faster and act on it accordingly. In the HFT world 10 ms is almost an eternity. 

Each exchange has such “Easter eggs” and we know many of them. XTRD combines powerful hardware with a software layer, optimized to “shave” 10 ms here and 45 ms there. If you are committed to win, everything matters – your algo, the way it is coded, servers to run it, the right network to communicate, and a reliable partner to execute. Cut these latencies with XTRD, join the club! 

XTRD Opens Up in LD4 Data Center

We are happy to announce that XTRD’s OEMS for digital asset trading is now available in the Equinix LD4 location – London, UK!

The main reason we did this is to provide access through our low-latency FIX API to major derivative and spot trading exchanges, located in the EU and nearby.

In LD4 we offer the same set of connectivity options as in NY4 – cross-connection, co-location, and VPS connectivity through our partners.

Crypto exchanges API changes update: February/March 2021

Based on trades we observe, most of the work in the infrastructure and API development by digital asset exchanges lies in the area of derivatives and margin trading.  

Binance 

Binance introduced several new API end-points to manage BUSD loans. 

Sub-accounts also got a new boost with these calls:

  • Create a virtual sub-account: /sapi/v1/sub-account/virtualSubAccount
  • Get a list of all sub-accounts: /sapi/v1/sub-account/list
  • Enable BLTV for sub-account: /sapi/v1/sub-account/blvt/enable

OKEx

OKEx’s push towards a unified account structure is a great development that turned into a small technological drama. 

Unified Accounts allow clients to use the same API keys and balances to trade on spot and derivative markets. In theory, it makes traders’ lives easier so they don’t have to transfer assets back and forth from wallet to wallet. From anintegration standpoint, it’s a very practical move because with V5 API we should care only about a single API key pair and connectivity. 

In reality, this transition turned into a small mess – V3 and V5 keys were incompatible, many integrations stopped working, and V3 API keys creation moved into manual mode with up to three days of waiting time. 

Huobi

On Feb 28, Huobi stopped legacy v1 WebSockets. Shiny v2 with features such as client’s assigned order id, extended account, order, and balance update channels are waiting for integrators to pick it. 

BitMEX

Disregard all advances in technologies, people still tend to make human-related errors. Fat Finger is a well-known but still often occurring situation. It does not spare anyone – crypto traders or respectful institutional players such as Citigroup (search for the recent $900M payout of Revlon debt).

BitMEX is the place where traders make a fortune or become broke in a blink of an eye. In February, BitMEX introduced Fat Finger protection:

  • All market orders with price deviation +/- 5% from TOB will be rejected 
  • All limit orders with price deviation +/- 5% from TOB will be rejected. E.g. if you want to place a BUY order above the current best ask plus 5%, the system will consider it as an error. 

Top 5 Quant Trading and Algotrading Blogs

QuantInst

QuantInsti describes itself as a company that provides innovation and solutions to bridge the gap between finance and technology in the changing phase of the industry. It serves individuals, businesses, exchanges, data providers, brokers, and other technology providers to achieve their common goal of excelling in Quant & Algo trading. QuantInsti provides both paid and free services to the industry.

Free services include webinars, blogs, tutorials, and trading models, algorithmic trading workshops, events, and modules for exchanges and industry. One of the most interesting and useful resources provided by QuantInst for free is their quant & algo trading blog. You can find a great selection of high-quality articles that can be a great source of information on trading for beginners and experienced traders. 

Hackernoon

Hacker Noon is one of the most popular blogging platforms “built for technologists to read, write, and publish”. It is an open international community of 15,000+ contributing writers publishing stories and expertise for 3,000,000+ curious and insightful monthly readers.

Hacker Noon has a relatively small number of articles on algorithmic trading, but all of them are very professionally written – 7 of them are among Hacker Noon top stories, which means that these articles were highly rated among this huge community of IT professionals. Take a look at stories with the “algotrading” tag and see for yourself. 

Quantpedia

According to Quantpedia’s website, their mission is “to process financial academic research into a more user-friendly form to help anyone who seeks new quantitative and algorithmic trading strategy ideas”. 

A new blog post for Premium users is created once a new strategy is added into Quantpedia. Members can see all of a strategy’s characteristics and use the Screener and visualization tools to compare it to other Quantpedia strategies. All new academic research papers related to already existing Quantpedia Premium strategies are also published on their blog, but those blog posts are visible only for Premium users. Occasionally, they find academic papers related to common quantitative trading strategies. Such papers are usually described on their free blog.

Quantifiable Edges

Quantifiable Edges is a website founded by Rob Hanna, a full-time market professional since 2001. He first began publishing his market views and research in 2003. From 2003 to 2007 his column “Rob Hanna’s Putting It All Together” could be found twice a week on TradingMarkets.com. In 2008 Rob began Quantifiable Edges. 

This resource has been publishing quantitative research, systems, and trading ideas since 2008. Quantifiable Edges also provides unique courses for longer-time market timing and quant-based swing trading, but what you can get for free is a truly great selection of articles written by Rob Hanna himself. 

Alvarez Quant Trading

Cesar Alvarez, the founder of Alvarez Quant Trading, spent nine years as a professional market researcher for Connors Research and TradingMarkets.com. Cesar has been at the forefront of stock market research, having developed a number of successful trading systems now used by numerous investors and fund managers in the United States and internationally. 

Most of his posts are based on the research he is doing for his own personal trading. Check out his blog where he tests trading ideas that readers and Cesar have. The primary focus is on stocks and ETFs with a hold range of a couple of days to several months. You can get spreadsheets of the results and more. Worth mentioning is that he also posts results that did not work out. “Understanding what does not work is every bit as important as knowing what does” – Alvarez says. 

How to configure trading capabilities on XTRD Bookmap Addon

In this article, we’ll describe how to configure trading capabilities on various cryptocurrency exchanges using the XTRD Addon for Bookmap. In case you don’t have this addon yet, here is the link to the document that will guide you through. 

Use the standard Bookmap configuration window to subscribe to a certain instrument, for example, ETH/USDT on Binance. Once connected, you should see a floating window with your positions under management (initially empty):

Click on the blue “TRADING SETTINGS” button in the floating window. It will bring up another window with a list of available and configured trading destinations. 

The Bookmap platform is organized in such a way that you need to have an active market data subscription in order to trade. It’s always possible to add subscriptions through the Bookmap Marketplace

In the “XTRD Trading Settings” window, click on the “CONFIGURE” button for your target trading destination. Depending on the exchange type, you’ll need to enter a combination of Private Key, API Key, and/or Password. Please feel free to reach out to us in case you need assistance obtaining these parameters from your exchange!

Click on the “ADD” button. You’ll be forwarded to the connector’s configuration window. 

“Ready to trade” destinations will have a green light, and a red light indicates that the connection is not established yet. 

Allow about one minute for the system to finish all synchronization such as open orders and positions. Once a connection is ready, the indicator will turn green and all your available assets will be displayed in the “Positions” window.

Congratulations, you now can trade on Binance (and many other exchanges) using the XTRD Addon for Bookmap! 

Important Menu Options

UPDATE – this button will be activated once you decide to update your connectivity credentials.

DELETE – this button will remove the selected exchange from the routing destinations. All open orders will remain open. 

If you would like to quickly convert one currency to another, go to Positions, select base asset (in our case ETH), select a quote asset from the drop-down (for example BTC), and click “CONVERT”. 

All other trading operations, like opening or canceling orders and monitoring trading activities can be performed using the standard Bookmap functionality. 

We prepared a small video with instructions and several trading operations (including cross-checks using an actual Binance GUI). 

Coinbase Pro API Review

By XTRD CTO Serg Gulko

Like most people, my first impressions are based on visual appeal. Yes, I realize that it might be the wrong approach to judge a book by it’s cover, but it’s hard to beat human nature.

As part of the crypto exchange integration process at XTRD, we usually familiarize ourselves with the exchange’s provided user interface, support systems, communication channels, public documentation, and so on. I remember that the day we started working on Coinbase Pro, I posted a long and exciting speech in the internal employee group chat about my findings.

After dozens and dozens of clunky, sometimes even absurd GUIs I’ve witnessed, Coinbase Pro was like a breath of fresh air. Everything was so polished, so smooth (no, smooooooth), and worked so intuitively, that I said — “guys, that’s why Coinbase is one of most popular platforms to trade crypto. Yes, fees are high but you enjoy the process. It’s like a switchover from an old Soviet Union “Zhuguli” to Mercedes Benz. Look, they even have a FIX API!”.

Image for post

But then we started working with Conbase’s API. First impressions can be deceiving. Below is the list of things that puzzled us (and which we solved).

Your order is not yours

The FIX protocol defines a special field called ClOrdId (Client Order ID) to carry client-assigned IDs of his/her orders. The client’s OME/EMS (order/execution management system) uses these unique IDs to track each order individually for many reasons. It could be execution, reporting, accounting, or of the above.

When the server receives and accepts the client’s order, it assigns its own ID to the order (transmitted using field OrderID). This is completely reasonable because you can’t rely on a counterparty to track orders. Your system, your rules, your order IDs.

Unfortunately, in Coinbase Pro, a client’s order IDs are not really clients’. In accordance with their rules, the field ClOrdId should contain a UUID string (something like this 58d1f436–6a53–11eb-9439–0242ac130002).

Any attempts to send something different — numbers (1,2,3…), strings (my_super_order_1, cool_order_132) or any other forms of IDs will be rejected. This means that your OMS/EMS should discard the existing methodology of client side ID generation (database IDs, timestamps, random strings, and so on) and start using Coinbase Pro rules. Time to rename ClOrdId to CoinbaseClOrdId!

Wait, UUID is not that bad for ID management, there are several other exchanges that use it. Why not adopt it and stop complaining?

Because there is another surprise with ClOrdIds on Coinbase Pro! Once an order is confirmed and you received the first ExecutionReport with OrderID, you’ll never see your IDs again. Any following update attempts to extract a list of open orders or trading history — everything will contain only the Coinbase-assigned ID.

So there are challenges to solve:

  • adopt your OMS/EMS to use UUIDs or build a mapper between your native IDs and what you send to Coinbase
  • build a matching mechanism that allows identifying orders using only OrderID and links it to ClOrdIds

Needless to say, our clients simply don’t know about the twists and turns of this plot. XTRD’s FIX API is designed in a way that doesn’t limit you or creates additional obstacles to solve. Your system, your orders, your rules.

XTRD allows the assignment of any type of IDs — numbers or strings. Each ExecutionReport (if successful) contains an OrderID (ID in our system, always a number), and an exchange-assigned ID (could be anything) that can be used for cross-checks between internal and exchange systems for a binary, synergistic execution verification and audit.

Image for post

As a final word: Coinbase Pro is a fantastic product and a great exchange to trade on — it’s normal that some parts of a very complex offering have minor rough spots.

XTRD’s job is to ensure that our clients’ awareness of integration difficulties only exists from our complaints in articles!

XTRD partners with Beeks

XTRD is happy to announce its partnership with Beeks, a leading cloud computing, connectivity and analytics provider for financial services.

This partnership will allow seamless provisioning of virtual private servers (VPS) immediately ready to trade on a variety of digital assets platforms, provided by XTRD. Beeks’ advanced eco-system, managed by their 24/7 Network Operations Centre, will dramatically reduce deployment time and increase the agility of resource provisioning.

As well as VPS based services for our larger trading clients, Beeks can also offer bare metal compute on dedicated servers providing better performance and an increased security layer.

Pete Johnson, Chief Technology Officer at Beeks stated, “As a growing asset class, we’ve had lots of interest in connecting our client base to trade the cryptocurrency markets. We already have several clients and partners in this space and we see the relationship with XTRD as an exciting extension of our capabilities”.

“Trading digital assets include certain complexities, such as protocols, connectivity, settlement, cybersecurity, and proper infrastructure. We believe that our partnership with Beeks Financial Cloud will bring much-needed peace of mind to many of our clients in terms of the deployment process, taking into account Beeks’ level of sophistication. As for the rest – XTRD has you covered.” said Serg Gulko, Co-Founder, and CTO at XTRD.

Beeks is a leading cloud computing, connectivity and analytics provider for financial services. With an international network of eighteen datacentres, Beeks provides end to end outsourcing of compute environments by delivering low-latency compute, connectivity and analytics, on-demand. ISO 27001 certified, Beeks supports its global customers at scale exclusively within global capital markets and leading financial centres.

Different deployment options

Colocation 

Colocation is a deployment of physical hardware in the XTRD rackmounts in Equinix NY4, a primary datacenter utilized by major financial companies and stock exchanges. One of the most secure and efficient (in terms of performance and latency) ways to start trading crypto is by leveraging theseXTRD routing servers at Equinix. 

You can send us your own hardware or rent something from our inventory. XTRD can offer 1U or 2U slots with both managed and unmanaged options. 

With a managed option the XTRD team will take care of your hardware (monitor, component replacement, backups etc), while unmanaged means that it has to be done by your engineers. 

From our experience, if you want to get the best possible performance – colocation is the only choice. With direct access to hardware and software, you can tune servers to outperform virtual instances offered by cloud providers. Of course, it all comes with a price and depends on your end goals. For example, a Honda is a great car to do pretty much everything – travel, commute to work, help your friend to move to another location but if you need to run a race – consider a Ferrari. 

Pros of dedicated managed hardware:

  • Low network latency 
  • High performance
  • High security
  • Full control over the hardware 

Cons:

  • Cost of hardware
  • Cost of hardware maintenance

Cross-connection

If your servers are already in Equinix, another great option is cross-connection. With minimal latency, you can communicate with XTRD’s servers to consume market data and route orders to major cryptocurrency exchanges in the US, Asia, and Europe. 

XTRD’s state-of-the-art network infrastructure based on high-performance Arista switches will deliver FIX messages in and out in no time! 

Pros

  • Low network latency
  • High security 
  • Ability to reuse your own hardware

Cons

  • More expensive than VPN or VPS

VPN

If network latency for you is not an issue, we can offer access to our services through encrypted VPN channels. It’s easy to configure and doesn’t necessarily require purchasing expensive hardware.

With this type of connection, clients are able to access the same resources as cross or direct connection but with a bit higher network latency caused by SSL/TLS encryption. 

This is an ideal set up during the development/integration phase followed by migration to more advanced (and fast) cross-connection or colocation methods. Nevertheless, VPN can still be used for a variety of applications that do not require low latency.

VPS

Virtual Private Server (or VPS for short) is a good alternative to the co-location option. Instead of physical servers, your code will be running inside a virtual machine. This is a perfect option when you just want to do a quick test of your ideas. 

Pros

  • No long-term obligations
  • Hardware knowledge is not required
  • Easy to maintain (backup, restore, destroy)
  • Less expensive

Cons

  • Less tuning options
  • Less performance

VPS deployment options are available through our partners such as UltraFX VPS.

Let us know if you would like to try our services with a no-cost, no-obligation trial period! 

Feel free to reach out to us on LinkedInFacebookTwitter, or via the website at XTRD.IO.

Previous articles:

Reliable Market Data
Normalized Symbology
Normalized API for Trading
Engineering XTRD’s Fort Knox of Authentication

MARKTS partners with XTRD to increase access to digital assets for end-users

NEW YORK: 7/30/2020  – TradingScreen Inc. (TS) subsidiary MARKTS, a cryptocurrency order and execution management system (OEMS), announces today its partnership with XTRD, an orders routing and connectivity provider targeting digital markets, to enable end-users to connect to an additional set of crypto exchanges on the MARKTS platform. 

This integration will enable seamless connectivity to a further 20+ exchanges and expand the already extensive list of venues enabled on the MARKTS platform. The partnership will ensure reliable connectivity for institutional investors to digital assets by providing clients with alternative routes to liquidity and facilitating efficient trading of various top tier coins and tokens.

Through this partnership, MARKTS will address the long-standing issue of reliable connectivity to digital assets for the institutional sector and facilitate multi-venue access.

“In a market where liquidity is fractionated and reliable connectivity is essential, accessing multi-venues is paramount. Alongside our current set of TS connections, XTRD services will provide our clients with choice and key alternative routes to access liquidity.

“We are excited to partner with XTRD which complements our set of institutional-grade connections to various crypto venues,” says Alexandre Carteau, Head of MARKTS.

“We are happy to announce our partnership with MARKTS today to remove the barriers hindering reliable connectivity and access to digital assets for the institutional sector. Through this partnership we will provide institutional-grade solutions for traders of all kinds,” says Serg Gulko, Co-Found, and CTO at XTRD. 

About MARKTS:

MARKTS, a TradingScreen company, is a cloud-based ‘software-as-a-service’ platform that offers users the ability to employ institutional-grade tools to facilitate order routing of digital assets in one integrated and compliant solution. For more information, please visit www.markts.io

About XTRD: 

Founded in 2017 by financial markets trading experts, XTRD is introducing a new infrastructure to allow banks, hedge funds, and large institutional traders easy, reliable access to any cryptocurrency market they choose.  By building a low-latency infrastructure with a unified FIX API across multiple liquidity points, XTRD is taking an industry-standard technology used within global financial markets – namely FIX – for over 25 years and introducing it to the cryptocurrency market. Visit www.xtrd.io for more information.

Market Data: July 29, 2020

Market data report provided by XTRD FIX API

BITHUMB

Bithumb contains 226 trading pairs consisting of 167 assets

New coins listed: GOLD, IBP, SUTER, CNS, BLY

Available cryptocurrency pairs: 

EXMO

EXMO contains 182 trading pairs consisting of 57 assets

New coin listed: CHZ

Available cryptocurrency pairs: 

New cryptocurrency pair: 

Removed cryptocurrency pair: 

  • XTZ/ETH

YOBIT 

Yobit contains 8604 trading pairs consisting of 1431 assets

New cryptocurrency pairs: 

OKEX

OKEx contains 386 trading pairs consisting of 157 assets

New coins listed: AERGO, SNX, BAL

Available cryptocurrency pairs: 

GATE.IO

GATE.IO contains 473 trading pairs consisting of 253 assets

New coins listed: KSM, AMPL, MTA, YFI

Available cryptocurrency pairs: 

HUOBI 

Huobi contains 567 trading pairs consisting of 234 assets

New coin listed: KSM

Available cryptocurrency pairs: 

New cryptocurrency pair: 

BINANCE

Binance contains 628 trading pairs consisting of 216 assets

New coins listed: MKR, RUNE, DAI

Available cryptocurrency pairs: 

BINANCE US

Binance US presently contains 77 trading pairs consisting of 40 assets

New coins listed: USDC, VTHO

Available cryptocurrency pairs: 

BITMEX

Bitmex contains 15 trading pairs consisting of 12 assets

New cryptocurrency pair: 

CEX.IO

CEX.IO contains 101 trading pairs consisting of 31 assets

New coin listed: ZRX

Available cryptocurrency pair: 

New cryptocurrency pairs: 

PROBIT

PROBIT contains 683 trading pairs consisting of 395 assets

New coins listed: MATIC, CNS, EVY, DDK, SXP, TERN, NNN, DX, COC, GMC, ULT, YFI, UQC, PHNX, HSS, AVA, ZPAE

Available cryptocurrency pairs: 

New cryptocurrency pair: 

STEX

STEX contains 437 trading pairs consisting of 344 assets

Delisted currency: RUB

Removed cryptocurrency pairs: 

  • BTC/RUB
  • BTC/USD
  • BTC/EUR
  • ETH/USD
  • LTC/USD
  • ETH/EUR
  • LTC/EUR
  • USDT/USD
  • ADK/USD
  • ADK/EUR
  • XRP/USD

BITMART

Bitmart contains 271 trading pairs consisting of 159 assets

New coils listed: SG, DOT, CNC

Available cryptocurrency pairs: 

New cryptocurrency pair: 

Delisted coins: TWEE, TUSD, LEOBTC50

Removed cryptocurrency pairs: 

  • LEOBTC50/USDT
  • TWEE/USDT
  • TUSD/USDT
  • ETC/USDT