best-of-algorithmic-trading ranks 110 trading projects on collected metrics
A ranked list of algorithmic trading open-source libraries, frameworks, bots, tools, books, communities, education materials. Updated weekly.
At a glance
- What is it?
- best-of-algorithmic-trading is a curated list of open-source algorithmic trading projects, split into eight categories, where each entry carries a project quality score computed from metrics collected automatically from GitHub and the package managers, along with markers for new, inactive and dead projects and a warning flag for a missing or risky licence. The source of truth is a projects.yaml file that anyone can edit, and the licence of the list itself is CC BY-SA 4.0.
- Who is it for?
- best-of-algorithmic-trading is worth an hour of your time if you are choosing between trading frameworks, because the ranking, the per-entry metadata and the licence warnings turn a search into a shortlist, and the categories separate engines from libraries from data services from material to learn from.
- Can I use it commercially?
- Yes, with credit. CC-BY-SA-4.0 allows commercial use as long as you credit the authors and indicate what you changed. It is written for creative content, so check how it applies to any code.
- Is it still maintained?
- Yes. The repository last received commits 1 day ago.
- What is it written in?
- GitHub does not report a main language for this repository.
Answers come from the project's GitHub data, last synced on October 23, 2026, and from our analysis. They are not legal advice.
Editorial analysis
The ranking is computed, not curated by taste
The list contains 110 open-source projects with a total of 360K stars, grouped into 8 categories, and the crucial detail is how the order is decided. All projects are ranked by a project-quality score, calculated based on various metrics automatically collected from GitHub and different package managers. That is a meaningful difference from a hand-written awesome list, where the order usually reflects who wrote the entries. A computed score can be recomputed, compared and argued about, and it has the weakness that it measures what can be measured, which is mostly activity and adoption rather than fitness for a particular purpose. The repository is the part of the best-of family of lists, and the README points at best-of.org for the other lists and at the best-of-lists repository for the process of creating one, which tells you this is a template approach rather than a one-off curation.
Eight categories, and the split between tools and education
The category counts are given in the contents, and the distribution tells you what the project thinks matters. Bots and Frameworks has 29 projects. Libraries and API has 31, the largest of all, covering the code you build on. Technical analysis and Indicators has 10, Data and API Services has 4, and then the education categories follow, with Books at 19, Youtube at 11 and Courses at 8, and Communities at 2. The shape of that is interesting. A list of trading software would be mostly frameworks and libraries, and the fact that nearly forty entries are books, videos, courses and communities says the author considers the surrounding material part of the problem, since most people who start algorithmic trading fail on strategy research and risk rather than on code. The categories are also what make the list usable, because a reader looking for a data provider should not have to scroll past crypto bots to find one.
The legend, and the markers that matter most
The explanation section defines a set of markers, and three of them are the ones to read first. A new project marker means less than 6 months old. An inactive project marker means 6 months with no activity, and a dead project marker means 12 months with no activity, so the two thresholds tell you whether something is merely quiet or finished. A warning marker is for a missing or risky licence, which in a list of trading software is a serious flag, because a project without a licence cannot be used in a commercial deployment regardless of how good it is. There are also trending up and trending down markers, a recently added marker, and a combined project quality score shown with medal symbols for the top three. Language is marked with icons for Python, NodeJS, JavaScript, C, C++, C#, PHP, Java, Rust, Go, and there is a Telegram marker for projects that have a Telegram channel, which is where a lot of this community actually lives.
projects.yaml is the file you actually edit
The contribution model is worth understanding because it explains how a list this size stays current. To add or update a project you open an issue, submit a pull request, or directly edit projects.yaml on the main branch, and the README says contributions are very welcome. Editing the data file directly is unusual for a curated list, and it is a deliberate choice, because it means the entry does not have to be a prose paragraph that a maintainer then has to reformat, and it means the ranking and the metadata can be regenerated from the same source the list is rendered from. The repository layout is consistent with that, with projects.yaml at the root, a config/ directory, a history/ directory, and latest-changes.md for the incremental update notes, plus a CONTRIBUTING.md and a LICENSE file for the CC BY-SA 4.0 terms. The one release tag in the history is dated 2023, while the README describes the list as updated weekly, and the per-entry timestamps show recent activity, so the update cadence lives in the generated output rather than in the tag history.
What an entry tells you at a glance
Each project gets a summary line with its name, its score, its star count and a one-line description, plus licence and language markers, and expanding the entry shows a metadata line and a clone command. The metadata is the same for every entry, and it is a checklist of the things that matter when you are evaluating a dependency. There is the contributor count, the fork count, the number of dependent projects, the issue count with the percentage of issues still open, the last update timestamp on the package manager, and the download count from the package manager. A large share of open issues is a bad sign, because it means the maintainers are not closing what users report. A last update timestamp on the package manager tells you whether the release you would install is current, which is not the same question as whether the repository is active. Each entry also carries the clone command for the project, so a shortlist can be turned into a working session directly:
git clone https://github.com/freqtrade/freqtrade
git clone https://github.com/hummingbot/hummingbotThe point of that is that the list is a starting point for a working session rather than a reading exercise.
The top of the list, as a sample of the format
The first entries show what a high-ranked project looks like in this list. Freqtrade is at the top with a score of 33, described as a free, open source crypto trading bot, under a GPL-3.0 licence with a warning marker, in Python. Hummingbot follows with 32, described as open source software for creating and deploying strategies, under Apache-2. The QuantConnect Lean engine is third with 30, described as an algorithmic trading engine in Python and C#, also under Apache-2. OctoBot is next with 27, a free open source crypto trading bot, under GPL-3.0 with a warning marker. The pattern worth noticing is that the two GPL entries carry the warning marker, which is what the list does with a licence it considers restrictive for commercial use, and that two of the top three are crypto focused while the highest ranked non-crypto entry is a general engine. Those are observations about the list's shape, not an endorsement of any of them.
Where a curated list is the wrong tool
Three honest limits. The first is that a score built from activity metrics is a popularity signal, and popularity in trading software is shaped by marketing and by how many blogs link to a project, which is not the same as whether the project is the right tool for your data, your broker and your execution environment. The second is that the educational entries age differently from the code entries, and a book that was the best in 2019 may be superseded, with no marker in the list to tell you that. The third is the drift between the two claims, that the list says it is updated weekly while the repository's release history shows a single tag from 2023, so the per-project timestamps are the only current evidence, and those are maintained for the projects that have a package manager, which is not all of them. The alternative to a ranked list is not a better list but a smaller one, a shortlist of two or three projects you evaluate against your own requirements, using the metadata here as the first filter rather than the last one.
Editorial conclusion
best-of-algorithmic-trading is worth an hour of your time if you are choosing between trading frameworks, because the ranking, the per-entry metadata and the licence warnings turn a search into a shortlist, and the categories separate engines from libraries from data services from material to learn from. It is not a substitute for evaluating a project on its own terms, since the score is built from collected activity metrics that reward popularity, and a score is not evidence that a strategy works. Before you commit to anything it lists, read the entry for the last update timestamp and the open issue ratio, check the licence marker yourself, and treat the books, courses and communities entries as the more durable part of the list, since they do not change with a release cycle.
Frequently asked questions
How are the projects in best-of-algorithmic-trading ranked?
By a project-quality score calculated from various metrics automatically collected from GitHub and different package managers. The list contains 110 projects with a total of 360K stars, grouped into 8 categories, with the medals showing the top three.
What do the markers next to each project mean?
A new project is less than 6 months old, an inactive project has 6 months with no activity, a dead project has 12 months with no activity, a warning marks a missing or risky licence, and there are separate markers for trending up or down, recently added, contributors, forks, issues, dependents, package manager update time and downloads.
How do I add a project to the list?
Open an issue, submit a pull request, or directly edit the projects.yaml file on the main branch, and the README states that contributions are very welcome. The repository also holds a config/ directory, a history/ directory and a latest-changes.md file.
What categories does the list cover?
Bots and Frameworks with 29 projects, Libraries and API with 31, Data and API Services with 4, Technical analysis and Indicators with 10, Books with 19, Youtube with 11, Courses with 8, and Communities with 2, so the list covers both trading software and educational material.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/merovinh-best-of-algorithmic-trading)Was this useful?