What is Algorithmic Trading?

Algorithmic trading refers to a method of trading where transactions are executed by a computer program rather than a human trader. The parameters for these trades are predefined, including when to open and close a position and the volume of the trade.

For instance, a rule might state: if the price drops by 5% from the previous day's close, buy; if it increases by 5%, sell. The program continuously monitors the market prices and executes trades according to the established algorithm.

There are various scenarios that can be programmed. One common strategy involves purchasing a large quantity of an asset while keeping the average price of the trade close to the market price at the time of the transaction.

However, challenges arise from the structure of market trading, where all buy and sell offers are compiled in an order book—a list of price levels and available quantities. A large purchase will first consume the cheapest offers, then move to pricier ones, which may result in a higher average purchase price than initially intended.

Moreover, other market participants observe these activities. Sellers notice that cheaper offers are being quickly absorbed, prompting them to withdraw their orders and submit new ones at higher prices.

To address this issue, algorithms often split large orders into smaller ones (child orders) that are sent to the market in batches at different times.

This method is known as algorithmic execution. Here, profit is not the primary goal; rather, success is measured by the reduction in transaction costs and the market impact of the trades.

The most common approaches include:

  • VWAP (Volume Weighted Average Price);
  • TWAP (Time Weighted Average Price);
  • Iceberg orders.

These strategies are utilized by banks, pension funds, and hedge funds. Given the large volumes these organizations handle, even without splitting orders, prices can rise significantly before the completion of a trade, which can take hours.

The second function of the algorithm is to determine the timing and direction of trades. Instead of receiving a pre-set order, the program uses criteria to identify when to enter a position. The basic rules for such a trading robot can be summarized in three points: when to open a position, how much to invest, and when to close it.

Two tasks of algorithmic trading: decision-making and execution. Source: ForkLog.

Why Is There No Unified Definition?

The two tasks described differ significantly, leading to a lack of consensus on the term in the market.

One approach restricts the definition to the execution of large orders, while categorizing robots with their own strategies separately. Another perspective broadens the term to encompass any form of automated trading.