What Algorithmic Trading Actually Is (And What Nobody Tells You)

A real introduction to algo trading — not the textbook version. What it actually means to build a system, why most of them fail, and what the ones that work have in common.


Most introductions to algorithmic trading start with a definition. Something like: “a method of executing orders using pre-programmed instructions accounting for variables such as time, price, and volume.” That sentence is technically accurate and completely useless. It tells you nothing about what the work actually feels like or why it is so easy to spend months building something that quietly destroys money.

So let’s skip the Wikipedia version.

What you are actually doing

When you build an algorithmic trading system, you are making a very specific bet: that some observable condition in the market — a combination of price levels, indicator readings, candle structures, whatever — is followed by a directional move often enough to be profitable after costs.

That’s it. Everything else is mechanics.

The reason it sounds more complicated than that is because the mechanics are genuinely difficult, and because there is a whole industry of courses, tools, and YouTube channels that benefit from making it seem like there is a secret formula to uncover. There isn’t. There are just edges — small, real, temporary — and the work is finding them, confirming they are real and not imaginary, and then running them until they stop working.

Most people never get past the “confirming they are real” part. This is where the majority of retail algo traders fail, and it is where most of the interesting work happens.

The thing that is never talked about honestly

Here is what the courses don’t tell you: the natural result of building a backtesting engine is a long list of patterns with impressive win rates that will not work live. This is not because you did something wrong. It is because if you test enough combinations on the same historical data, some of them will look great purely by chance.

A backtest is not evidence that a pattern works. It is evidence that a pattern would have worked on that specific historical data. Those are very different things.

The market is not static. It is a constantly shifting system of participants — institutions, algorithms, retail traders, central banks, macro funds — all responding to each other. The pattern you found in 2021 data might have existed because of a specific macro environment, a specific positioning dynamic, a specific type of volatility that is not present now. You cannot know which it is just by looking at the backtest.

This is why the train/test split exists. You take your historical data, cut it in half, and find patterns on the first half. Then you test those same patterns, unchanged, on the second half — data they have never seen. If a pattern was real, it will perform on the second half. If it was lucky, it will collapse. Most patterns collapse. The ones that survive are the ones worth paying attention to.

Most people skip this step. They run a backtest, see a good result, and go live. Then they wonder why it isn’t working.

Why discretionary traders think algo trading is cheating and why they are wrong

There is a version of the retail trading world that thinks algo trading is somehow less legitimate than “reading the market” manually. That indicators are a crutch. That you cannot systematize intuition.

This is backwards.

A discretionary trader who says “I can feel when the market is about to move” is making a claim they cannot verify. They do not know if they are actually good at reading the market or if they have just been lucky for a few months and are confusing confidence with skill. The human brain is extraordinarily good at finding patterns in noise — it will find a signal even when there is none, especially when money is involved and the feedback loops are messy.

A systematic trader is forced to define exactly what they believe. “RSI below 30, price touching the lower Bollinger Band, trend is up on the 200 MA — enter long.” That is a testable hypothesis. You can run it against real data and find out whether it was actually predictive or whether you imagined it.

The process of building a proper algo system forces an intellectual honesty that most discretionary trading does not. You cannot lie to a backtest about what your rules are.

The downside is that it forces you to confront how little genuine edge most patterns have. But that discomfort is information. It is better to find out on historical data than live.

The dirty truth about win rates

A “good” backtested pattern might have a 55% win rate. Not 80%, not 90% — 55%. On a 2:1 reward-to-risk setup, that is meaningfully profitable. It is also the kind of result that makes most beginners think they built something broken, because 55% sounds unimpressive.

The patterns that show 70%+ win rates in backtesting are almost always overfit. They found a combination of conditions that happened to look good on the specific data they were tested on. They learned the noise. Run them on new data and the win rate drops to 49% and you have found nothing.

The real targets are boring: 52% to 62% win rate on unseen validation data, at least 30 trades in the test period, positive net PnL after realistic spread and slippage. If a pattern hits those numbers on data it never trained on, it is worth running. If it shows 73% in training and then collapses on validation, it was always a ghost.

What separates systems that make money from ones that don’t

After enough time in this world, a few things become obvious that are not obvious at the start.

Session matters more than indicator. A pattern that works in London often fails in the Asian session and vice versa. Each session has different participants with different motivations. London has institutional volume and directional macro flows. Asia has carry trade dynamics and lower liquidity. New York afternoon has thinning liquidity and choppy price action. The same RSI extreme means something completely different in each. Most people backtest across all hours and get an average that hides what is actually happening in each session.

Patterns have lifespans. An edge that worked for 18 months will not necessarily work for the next 18. Markets change regime. Participants adapt. What was predictable becomes known and gets traded away. The best systematic traders treat their strategy library like a living thing that needs regular revalidation — not a solved problem they built once.

Position sizing is where most of the damage happens. You can have a legitimately profitable pattern and still blow an account if you size incorrectly. A string of losses that is perfectly normal statistically will feel catastrophic if you are risking 5% per trade. The mechanics of how you bet on a pattern matter as much as the pattern itself. This is not discussed nearly enough.

The log file is the most important document you have. A live bot that logs every signal check, every skipped trade, every entry and exit is invaluable. When performance deviates from expectation, the log tells you whether it is because the market changed, because a bug changed the logic, or because you are in a normal drawdown. Without logging, you are flying blind.

What this blog is actually going to be about

Not theory. Not another explanation of what a moving average is.

This is going to be about the specific, practical, sometimes uncomfortable details of building automated trading systems that do real things with real data. The places where standard advice breaks down. The parts of backtesting that people get quietly wrong. How to tell when something is working versus when you are just in a lucky run.

Some of it will reference tools built in Python and connected to MetaTrader 5. Some of it will be about the logic of how to think about a pattern before you even write any code. All of it will try to say something that is actually true rather than something that sounds good.

If you came here looking for the holy grail pattern with a 90% win rate — it doesn’t exist, and anyone telling you it does wants something from you.

If you came here to understand how to build something systematic that has a genuine statistical edge and run it properly — that’s the conversation.