Algorithmic and automated trading_
We will help you determine your trading strategy and set up a trading robot.
Let's look at the terms...
If an investor can Express his investment intuition, vision, strategy in the form of computer code, he can fully automate investment decisions, entrusting the computer with everything from analyzing incoming market data and calculating potential profit-loss to generating buy-sell orders. The investor leaves himself only checking, monitoring and a relaxed game of Golf.
In those hot moments, when the investor's hands are shaking and gnawing doubts, the computer will dispassionately make a verdict to buy-sell and buy and sell in strict accordance with the set of rules laid down in it. And make a profit. If, of course, the set of rules is correct.
This style of trading is called "automated" . Other names for such trading: "rule-based trading", "systematic trading". The computer program in this case is called "automated trading system"or" trading robot".
If the set of rules by which the investment decision is made is kept in a special secret by the developer from those who use it, such a system is called a "black box", and trading with it is called"black – box trading".
The purpose of "automated trading", like any other proprietary trading – making money. The set of rules of the automated trading system of course can also be called an algorithm, but this " automated trading "does not become"algorithmic".
When you write" robots " in trading terminals or in Visual Basic and launch them to trade on the stock exchange, you are not engaged in algorithmic trading, but automated proprietary trading.
The term "algorithmic trading" is used to refer to another specific process in which investment decisions are not made. In algorithmic trading, algorithms are used to execute large orders with minimal losses.
The purpose of algorithmic trading is to effectively reduce the cost of order execution( execution costs), reducing the impact of the order on the market (reduce market impact).
The word "trade" in this term is not quite successful. It has too broad a meaning and most people associate it with buying and selling activities, so it is correct to call this process "algorithmic order execution".
Where exactly the order gets into the algorithmic engine is not important, the main thing is that it is not created by the algorithmic engine. Most often, the broker's algo engine works on a large order received from the client.
Before the advent of algorithmic trading, large client orders in brokerage offices were processed manually. Over the order that is called "worked" traders (working the order), gently "pushing" it to the market in parts (slicing), guided by instinct, experience and reaction.
Such orders were called "high touch", as such orders required a lot of attention and care. Brokers call the flow of these client orders "high touch order flow", and the broker has a special Department of traders "high touch trading desk". Clients pay the highest Commission to the broker for" manual work " with the order.
Why it is so important to work carefully with large client orders, read the section "Large order moves the market" at the end of the article.
With the growth of the flow of orders, traders did not have time to pay due attention to each large order and the idea to use computers for this purpose appeared. This is quite understandable, since the orders come to the broker electronically and are already in the computer, then why not program the computer with the simplest rules for the execution of orders and instruct them to do routine work?
Thus, algorithmic engines were created, which did all the same things that an ordinary trader with a large order did manually, namely: "parent order" was divided, using a special algorithm with specified parameters, into small orders (child orders) and each small order was sent to the market at a predetermined time. Computers can very easily process thousands of client orders at the same time and divide them into hundreds of "little bears", leaving the trader the time and opportunity to work on other more complex orders manually.
As you can see, at first, algorithmic engines were just an auxiliary tool for traders of a brokerage company, which they resorted to when the execution of a client order did not require special attention, but simply the disciplined execution of a certain strategy.
Direct Market Access
Direct Market Acess is when the broker passes an order through its trading system to the market in a fully automatic mode without additional manual intervention.
If the order from the client is received electronically and is already in the computer, why not program the computer to perform certain checks and then immediately send the order to the exchange? This simple idea was implemented in the early 2000's, when exchanges everywhere became electronic, and brokers began to offer DMA service to their customers.
In contrast to the "high touch" order is DMA services to a client orders no one touches, no one ignores and does not verify manually. Therefore, they are called "low touch". "Low" because some processing is still carried out: the order passes through the broker's trading system, where it is checked for validation and compliance with various limits and risks (risk checks). Only after that the broker's trading system sends the order to the exchange. All checks orders are held for fractions of a second, but nevertheless they contribute to the difference between the time of receipt of the order to the broker and enter orders into the market.
This " latency "was not liked by all clients, and brokers went for an even bolder service – providing" naked DMA "or"sponsored DMA". In naked DMA, the client connects directly to the exchange, creating his own infrastructure, and sends his orders from his trading system directly to the exchange, bypassing the broker's infrastructure, but using its identifier.
The client needs the broker ID because only exchange members, which is the broker, but not the client, can trade on the exchange. That is, all orders sent by the client through naked DMA are sent on behalf of the broker (he acts as a sponsor, renting out his ID and his reputation) under the responsibility of the client. The broker also receives information about the client's orders post-fact in the form of a Protocol (drop-copy) from the exchange. Such orders are called "zero-touch" because the broker does not touch them at all. Recently, naked DMA began to press government regulators, especially in the United States.
For using the DMA service, clients also pay a Commission to the broker, albeit a meager one.
Direct Strategy Access
Retreat: some brokers execution algorithms are called the word "strategy". It just sounds nicer. This is confusing because the word "strategy", for example, in the phrase" investment strategy " acquires a perfect meaning.
Sometime in 2004, large brokers began to provide clients with access to their algorithmic engines in addition to the DMA service. Now the client can send the order with parameters that indicated which algorithm is the broker he chooses how aggressively it is necessary to execute a warrant when to begin execution and when to stop. This special order inside the brokerage infrastructure is redirected to the algorithmic engine, which then "works" on the order, sending it to the exchange in small pieces.
I wrote above that algorithms are sometimes called strategies for beauty and advertising, so direct access to them is called "direct strategy access". Orders are called " DSA orders "and the flow of such orders is called"DSA flow".
For using the broker's algorithms, the client pays the broker an additional Commission.
Investor and algorithmic trading
Since the client-investor already has direct access to the market through the DMA-service from the broker, there is nothing stopping him (if there is a budget) to create his own algorithmic engine at home, tailored to his own needs, which will execute his large orders generated by his automated trading system.
An investor can buy a ready-made (of-the-shelf) algorithmic engine from a third-party office (vendor), or hire programmers to write him their own (custom built).
In any case, the investor's algorithmic engine becomes part of his automated trading system, but it is still a module for order execution. The investment part of the trading system is engaged in the generation of orders.
Big order moves the market
The main task of the broker agent service client, that is qualitatively to fulfill a client's order to client, not overpaid buying and selling – is not lost. But if he overpaid, it wasn't too much. And then against the broker-agent comes the main market law of feedback of supply and demand. If the client sends for processing a very large order, say to sell 100,000 shares (we are talking about an order worth at least a million USD), then it can not just take and throw on the market. This will immediately lead to an imbalance in the market, and this will lead to the fact that those who want to buy will lower their price, seeing that someone needs to sell such a large number of shares. It looks like this-the seller sees on the market the current stock quotes XYZ buy/sell 100-110. And sends an order: sell 100.000 at 100 USD, planning to gain 10.000.000 USD Inept broker pours the entire order on the market, and what he sees? Those who recently wanted to buy 100 USD, immediately withdraw their applications and submit new applications: no, we do not want to buy 100, we want to buy 90. He will scratch his head and will reassign your order: okay, sell 100,000 90.e. If buyers don't repeat my trick, the broker executes the order, bringing the client on a plate instead of from 10.000.000.e. just 9.000.000. I. e. on the execution of the order the client lost 10% of the capital, due to the hasty broker. And he paid a Commission. The client won't like it.
This phenomenon is called "big order moves the market", the effect of a large order on the price of the market impact is typical not only for the financial market.