Skip to content

How to Use This Course

Course → Part → Page. Thirty-seven parts, each with an overview and between two and eleven pages. The sidebar mirrors that structure exactly, and every page has previous/next links so you can read straight through.

Pages come in six kinds, badged in the sidebar:

Kind What it is Typical length
Lesson Teaches something, usually with a formula and a quiz 25–35 min
Lab You run something and record the results 45–60 min
Project You build a complete, reusable tool 55–70 min
Challenge Something is broken; you diagnose it before reading the solution 45–55 min
Reality check A popular market claim, tested properly 40–50 min
Reference Material you come back to rather than read once varies

Every part is tagged with a level, and they are cumulative rather than parallel tracks.

Level Name Parts You can…
1 Chart Reader 1, 2, 4, 5, 6, 7 Read a chart and say what it does and does not show
2 AmiBroker Analyst 3, 12 Drive AmiBroker, build databases, screen a universe
3 AFL Developer 8–11, 13–16, 36 Write AFL that does what you intended, and prove it
4 Trading System Researcher 27–35 Design, test and evaluate a system honestly
5 Real-Time AmiBroker User 17–26, capstone Work with live markets, alerts and a full workstation

The levels are not a difficulty warning so much as a dependency graph. Level 4 assumes Level 3 because you cannot audit a backtest you cannot read.

Never used AmiBroker, new to charts. Start at Part 1 and go in order. The first seven parts are Level 1 and 2 and need no programming at all.

Comfortable with charts, new to AmiBroker. Start at Part 3, then go to Part 8 for AFL. Come back to Parts 4–7 when you want the chart-reading material.

Can already write AFL. Read the array model lesson anyway — it is short, and a surprising number of experienced users have a subtly wrong mental model — then go to Part 12 or Part 27 depending on whether you want screening or systems.

Here for backtesting. Parts 27 to 35 are the research sequence. But read Part 30 first, out of order. It is the part that determines whether everything else you do is worth anything.

Here for real-time. Parts 17 to 26. Read Part 17 before buying any subscription; it is largely about what you do and do not need.

Ten kinds, each meaning something specific. They are used sparingly — a page that is mostly callouts is a page with no argument in it.

Callout Means
Important Do not skip this
Warning This can cost you money or data
Tip A shortcut or a better habit
AmiBroker Professional required This feature needs the Professional edition
Data quality A data defect that would invalidate the analysis
Research note A methodological point about how a claim is being tested
Common mistake A specific error learners make, and its symptom
Reality check A popular claim being held up for examination
Exercise Something for you to do now
Expected result What you should observe if it worked

Every AFL block says what it is. This matters more than it sounds, because code that looks like AFL and is not will waste an afternoon.

  • Complete runnable AFL — paste it into the Formula Editor and it works as-is.
  • Fragment — not a complete formula — an excerpt that needs surrounding code.
  • Pseudocode — not valid AFL — structured English to explain an idea. It will not compile, and it is never presented as though it would.

Substantial formulas are shipped as .afl files with a filename and a download button. The file you download is the same bytes the page displays — the site reads it from disk at build time — so the lesson and the file cannot drift apart.

Every formula file opens with a block stating its goal, its assumptions and its limitations. That block is not decoration; it is the part that lets you decide whether the formula applies to your market, your broker and your data.

Every substantial lesson ends with one. They test understanding rather than recall: what does this code produce, which of these is the bug, which research design answers the question.

They work without JavaScript — the answer and explanation are in a collapsible block — and nothing is recorded or scored anywhere. Read the explanation even when you got it right; several of them teach something the lesson did not have room for.

0 / 206 lessons completed

Mark a page complete with the control at the bottom of it. Progress is stored in this browser only, via local storage. No accounts, no sign-in, nothing sent anywhere.

Consequences worth knowing: clearing browser data erases it, another device starts fresh, and in private browsing it may not persist at all. Everything else on the site works identically without it.

Your progress →

Every page, every code block and every glossary term is indexed. The search box is in the header, and / focuses it from anywhere.

Searching for an AFL function name is often the fastest route: it will find the lessons that teach it plus its entry in the course AFL reference.

Four things you will come back to:

  • Glossary — every term the course uses, defined, cross-linked, and pointing at the lesson that teaches it.
  • AFL function reference — only the functions this course teaches, with the documented signature, what it returns, the lesson that covers it, and a link to the official page. Deliberately not a copy of the official documentation.
  • Downloads — every .afl file, organised by part.
  • Sources — every official page the course cites, with retrieval dates.

If you take one working practice from this course, take this one.

Write down what you ran, before you look at what it produced.

The formula, the universe, the date range, the costs, the settings. Every part of the course builds towards it, several parts build tools for it, and the capstone asks you to produce the record.

The reason is not tidiness. It is that a result you cannot reproduce is not a result, and a result whose assumptions you have forgotten is a rumour about your own computer. Six months from now, the only difference between “I found something” and “I think I found something once” will be whether you wrote it down.

No automated live trading. The course ends at alert → human review → decision. AmiBroker has an automated-trading interface and it is a legitimate tool; it is out of scope because automating a strategy you have not validated is the fastest available way to lose money.

No profitable strategies. Several strategies are built and tested; none is presented as one you should trade. Where a result is quoted it comes with its assumptions attached, and several of the reality checks conclude that the evidence is weak.

No screenshots. Interfaces change, and a screenshot from an older version teaches something false. Where a visual helps, the course draws a diagram instead — in HTML and CSS, so it renders in both themes and is readable by a screen reader.

No fabricated data. Where illustrative numbers appear they are labelled as invented, and no invented price series is ever presented as market data.

Sources for this lesson

2 verified · checked 2026-08-31

  1. 01AmiBroker User's Guideamibroker.com/guide2026-08-31
  2. 02AmiBroker AFL Function Referenceamibroker.com/guide/a_funref.html2026-08-31

Every technical claim on this page was checked against the official AmiBroker documentation on the date shown. Where the course disagrees with folklore, the source is how you can tell which one to trust.