Tell Me About Algo Trading

Tell Me About Algo Trading


An algorithmic trading system is the interaction between data and a fixed model (an algorithm) whereby the model needs the data to process its logic. A static model is used to periodically scan dynamic data resulting in a trade list – or a list of signals. Since the model is static and the data is dynamic, the trading system performance depends on the synchronization between the model and the data. Changes to either the model or the data will result in a new system.

Algo traders use a model

In other words, Quant traders use a fixed set of rules to determine trade timing and direction in a systematic way. On the other hand, discretionary trading is not confined to the same scientific parameters; instead, the discretionary trader utilizes intuition and “market feel” in order to make technical decisions. The human mind, however, is continuously bombarded with outside emotional influences and when discretionary traders want a certain outcome, situational influences can result in the exact opposite. It is called mind sabotage.

The discretionary trader does not always make the same interpretation of a market indicator (chart, technical study, fundamental information, etc.) or use it in the same way each time it’s applied. This trader uses personal judgment to determine the value of that indicator at any given point in time.

Discretionary traders use intuition

Since the discretionary trader must, per force, analyze the market(s) on a regular basis, it’s said that they gain the opportunity to develop a more intuitive feeling for the market resulting in a better understanding of how it operates under given sets of circumstances. However, the most essential argument against discretionary trading, and for becoming a Quant trader, is the psychological element. Since discretionary trading is beholden to the analysis and execution performed by the individual rather than the system, it runs the risk of biases, lack of discipline, and other psychological short-comings resulting in failure.

In his book Thinking, Fast and Slow, author Daniel Kahneman explains that the human mind employs two distinctly different methods of thinking at the same time. When it comes to trading, these different ways of thinking often oppose each other, and ignorance of their existence can explain why humans are not good traders. Daniel Kahneman and Amos Tversky won the Nobel Prize for the “Prospect Theory” that uses cognitive psychology to study how people manage risk and uncertainty. Their findings are highly important in financial economics and reveal the weaknesses of us humans in investment decision-making.

“Experts are uniformly inferior to algorithms in every domain that has a significant degree of uncertainty or unpredictability, ranging from deciding winners in football games to predicting longevity of cancer patients. One has to accept financial markets are no exception to the rule.” Daniel Kahneman

Kahneman refers to these two types of thinking as System 1 and System 2. System 1 thinking is described as “fast, automatic, frequent, emotional, stereotypical, subconscious” and System 2 as “slow, effortful, infrequent, logical, calculating, and conscious.”

System 1 relies on intuition and assumptions – in the trading world, this is called discretionary trading. Whereas properly harnessed intuition can be a tremendous asset, improperly harnessed intuition can lead to overconfidence, isolation, and the creation of confirmation bias which leads to statistical errors.


Kahneman says once a plausible answer comes to mind,
overriding it can be extremely hard work


When people create a cognitive bias, they develop a tendency to only believe supporting arguments while ignoring valid points to the contrary. Traders can then refuse to cut their losses by simply not acknowledging evidence that could have saved them a lot of money.

When a position does not move in an expected way, people must be disciplined enough to stick to predefined rules because of the natural human tendency to operate under the overconfidence of System 1.

Also, since a discretionary trader is relying upon his/her own analysis and not a set of automatically generated buy/sell decisions, another disadvantage is that the underlying analysis is often limited in the number of markets that can be traded. Whereas a mechanical trader can apply a system to a wide array of markets.

“The universe of trading systems is divided into two – having confidence and having faith. If you want quantifiable confidence, the kind of confidence that tells you whether or not to hit soft 17 at blackjack, whether or not to hit the blot in your inner table in backgammon, or whether or not buy a new 52 week high – use quantitative analysis. Everything else is faith.” Howard Bandy

Even though AlgoTrader uses 100% algorithmic trading, and does not utilize any discretionary override, AlgoTrader still recognizes the advantages built into the discretionary trading model and thus continuously monitors the algorithms for system health with optimization techniques. This way we are able to stay current and adapt to market changes.

AlgoTrader models the price, volume and other technical analyses in a way that gives a huge edge over discretionary trading. An edge we can quantify with back testing. An edge you can see with your own eyes.

Each night the entire US stock market is scanned for patterns. The stocks that meet our criteria are called signals because they signal a trade with the highest probability of winning. But we don’t stop there. We then use another filter to rank all the signals and only trade the best of the best. Once again, we don’t stop there! Each signal we trade then uses a limit order to turn a very good trade into a great trade.

These patterns are expressed in a formula our trading system development software, Amibroker, can read so they are reproducible and can then be evaluated statistically.

The metrics Algo Trader uses to evaluate backtest results are called the evaluators and model development is done through Amibroker with Norgate Premium Data providing our data.