Automated Market Maker

Market making software

This article is for crypto projects and small hedge funds considering a building or buying a market-making software or service. It consists of three main sections:

Table of contents

  1. Is market making a competitive game?
  2. Build or buy – considerations from perspectives of a token project, and a small hedge fund
  3. More technical part – about characteristics and architecture of a market making system

Is the market making a competitive game? 

Empirica has been in this industry for years, and we can say with absolute certainty – it is a highly competitive game. It involves using advanced algorithms and technology to execute trades quickly and profitably in the financial markets. For a new entrant to the market, there are two main challenges:

  • Infrastructure and technology: market making requires advanced technology and infrastructure, such as high-performance computing systems and low-latency networking, to process and act on market changes quickly. Established market making firms often have a significant head start regarding technology and infrastructure, which can be difficult for a new entrant to match.
  • Expertise and experience: market making involves complex algorithms, data analysis techniques, and trading strategies that require significant expertise and experience to develop and implement successfully. Established market making firms often have teams of developers, quants, and traders who have worked in the field for many years. For a new entrant, it can be difficult to hire and retain the same level of expertise and to catch up with the experience of established firms.

Overall, while market making can be a highly competitive game, it is not impossible for new entrants to succeed. With the right combination of technology, infrastructure, expertise, and strategy, a new player can compete and succeed.

Learn the details on how we do market making for crypto projects

For a token project – is it better to buy a service or use ready-made software?

The goal of the crypto project is to provide liquidity to its token. Here, building the system is not an option because, from the design point of view, it is better to focus on building its own product. Therefore, tokens face a different dilemma: order a liquidity supply service from a professional market maker or try to deliver it using ready-made solutions – the so-called bots. 

We know the solutions available on the market. And we have a very strong opinion about them: it is impossible to effectively provide liquidity with the bots currently available on the market. Here is why:

  • They are slow. You will lose real money on the latency game and get arbitraged by more sophisticated players.
  • They are inflexible. You cannot parametrize their behavior to adapt to different market conditions. This will also result in the bot making many suboptimal trades, leading to losses.
  • Market making is much more than simply running a bot quoting bid-ask spread. It needs trader oversight. It needs coordination between exchanges.
  • Competition from other market makers: There is intense competition among market makers, and a market making bot will need to be able to operate without losses on exchanges crowded by more sophisticated algorithms based on research.

There is also an essential macro element in this puzzle:

Cryptocurrency markets are challenging environment

Cryptocurrency markets are challenging for a few reasons that need to be embraced in market making operations:

  1. Volatility. Cryptocurrency markets are known for their high levels of volatility. Algorithms need to embrace big and sudden price jumps.
  2. Lack of regulation. Cryptocurrency markets are largely unregulated, which creates a lot of uncertainty from operational and tax perspectives.

For a small hedge fund – is it better to buy or build a market making system?

It depends on various factors, including the resources and expertise available to the hedge fund and the specific goals and requirements of the market making system. Here are some potential advantages and disadvantages of buying versus building a market making system:

  • Buying. One potential advantage of purchasing market making software is that it can be faster and less expensive than building a system from scratch. This can be especially beneficial for small hedge funds that may not have the resources or expertise to develop market making software. In addition, buying a system can provide access to proven technology and support.
  • Building. The most significant advantage of creating a market making system is that it can be tailored to the specific needs and requirements of the hedge fund. This can provide greater flexibility and control over the system and allow the hedge fund to innovate and build an edge over other market participants. However, building a market making system can be time-consuming and expensive and require significant expertise and resources. In addition, building a system from scratch carries a high risk of technical issues and bugs. And these are costly in this business.

Ultimately, the decision to buy or build a market making system should depend on the specific goals, and capabilities of the hedge fund. 

Learn the details on how we build organic liquidity for crypto projects

What characteristics should market making software have?

Some key characteristics that high frequency software systems include the following:

  1. High performance. Market making software needs to be able to process a large number of transactions in a short amount of time, so it should be designed to be fast and efficient. This is hard and requires a top-notch software development team.
  2. Scalability. The volume of transactions will increase as you expand to more instruments. So the system needs to handle the increased load without slowing down. Slowing down means we may react a data from a few seconds before. So in a low latency world, it’s historical data.
  3. Reliability. As a market maker, you need to provide liquidity 24/7. So the system needs to operate continuously without failure. It needs to be designed with robustness and fault tolerance.
  4. Flexibility. The system needs to adapt to changing market conditions and requirements. It needs to be designed to be modular and configurable.
  5. Security. The system needs to protect against both unauthorized access and data breaches. It needs to be designed with security as a priority.
  6. Data management. The HFT system generates large amounts of data, so it needs effective data management capabilities to store, organize, and analyze it.
  7. Integration: The system will need to integrate externally with exchange systems and internally with risk management and back-office applications.

What technologies are used to program market making software?

Market making systems are typically programmed using a combination of technologies, including specialized programming languages, data analysis tools, and high-performance computing systems. Some of the technologies that are commonly used to program market making systems include:

  1. Programming languages: market making systems are typically written in low-level languages that are optimized for speed and performance, such as C++ and Java. These languages allow market making developers to write highly efficient and scalable code that can handle large volumes of data and execute trades quickly.
  2. Data analysis tools: market making systems often use data analysis tools, such as machine learning algorithms and statistical models, to identify and capitalize on trading opportunities. These tools can help market making systems process and analyze large amounts of market data in real time and make decisions based on that data.
  3. In the production environment – be prepared to work on clusters of servers, most probably in cloud-based infrastructure, to provide the necessary processing power and speed flexibly.
  4. The focus will shift to providing efficient networking when you start taking part in the latency game.
  5. Flexible interfacing.  Market making systems typically interface with trading platforms, such as exchanges and dark pools, to access market data and execute trades. These platforms provide APIs that allow external systems to exchange messages to access the necessary data and functionality.

What are the components of the architecture of a market making system?

The architecture of a market making (high-frequency trading) system includes several key components which enable the system to receive, process and act on market situations in real time. These components include:

  1. Data feeds: market making systems rely on real-time market data, such as prices, volumes, and order book data. These feeds can come from sources such as exchanges, external providers, dark pools, and alternative systems like on-chain data.
  2. Data processing: market making systems use algorithms to process the market data they receive. This can involve filtering, transforming, and aggregating the data to identify trends, patterns, and opportunities for profitable trades.
  3. Algorithmic engine: The engine is the core component of a market making system. It contains the logic for the behavior of orders in the order book, determining the order size and price, and managing risk and exposure. The input for it is based on the data and signals received from the data processing component. This whole logic constitutes a market making algorithm.
  4. Execution platform: The execution platform is the interface between the market making system and the markets. It is responsible for transmitting order messages to the exchanges and receiving the trade’s confirmations. The execution platform is also responsible for persisting trade data for accounting and back office systems.
  5. Risk management module that monitors and controls the risks associated with trading. This involves tracking and limiting the exposure to specific markets, instruments, or counterparties, as well as implementing risk-reducing strategies.
  6. Reporting module that allows the analysis of real-time performance of all the strategies running on different markets. This can include real-time dashboards, alerts, historical reports, and analytics. These tools can help market making managers and traders understand the behavior and performance of the system and identify areas for improvement.

Learn more about market making strategy