Bir backtesting kütüphanesi seçmek aslında çoğunlukla bir bakım bahsidir. Stratejinizi fiyatlandıran kod; bir borsa API'sini değiştirdiğinde, bir pandas sürümü bir import'u bozduğunda veya gece 2'de bir hata bulduğunuzda hâlâ hayatta olmalıdır. Bu yüzden bu inceleme en az gösterişli ama en belirleyici sinyalle başlıyor — proje gerçekten bakım görüyor mu? — ve ancak ondan sonra mimari, hız ve özelliklere giriyor.
Aşağıdaki her GitHub rakamı 2026-06-22 tarihinde GitHub API'sinden canlı olarak çekildi ve daha zorlu iddialar birincil kaynaklara (proje repo'ları, resmi dokümanlar) karşı çapraz kontrol edildi ve çelişki arayan bir gözle doğrulandı. Bir rakam, bir üreticinin kendi bildirdiği en iyi senaryo olduğunda bu işaretlenmiştir.
Bakım gerçeğiyle yüzleşme
İşte tüm ekosistem GitHub yıldızlarına göre sıralanmış, üzerinde gerçekten çalışılıp çalışılmadığına göre renk kodlanmış hâliyle:

Rahatsız edici sonuç: en çok yıldız alan, hakkında en çok blog yazılan iki isim aslında miras (legacy) durumunda.
- Backtrader (22.1k ⭐) herkesin önerdiği ünlü isimdir — ve varsayılan dalına yaptığı son commit Nisan 2023 tarihlidir, üstelik hiçbir zaman GitHub release yayınlanmamıştır. Terk edilmiş değil (sorunlar hâlâ ara sıra ilgi görüyor) ama uykuda. Derlenmiş kataloglar onu
INACTIVEolarak etiketliyor. - Zipline (19.9k ⭐), Quantopian'ın eski motoru, Quantopian kapandığında 2020'de terk edildi. kernc'in kendi alternatifler listesi onu "Eskimiş / Bakımsız" başlığı altında dosyalıyor. Bakımı sürdürülen halefi ise Stefan Jansen tarafından geliştirilen ayrı bir fork,
zipline-reloaded(1.8k ⭐). - PyAlgoTrade (4.7k ⭐) arşivlenmiş durumda — resmî olarak salt okunur. QSTrader (3.4k ⭐) ve eski kripto framework'leri
blanklyileqtpylibbakımsız olarak işaretlenmiş.
Bu arada 2026'da gerçek release çıkaran projeler şunlar: Freqtrade (51.7k ⭐), NautilusTrader (24.1k ⭐), LEAN (20k ⭐), backtesting.py (8.5k ⭐), Jesse (8.1k ⭐), vectorbt (8.0k ⭐), PyBroker (3.4k ⭐), bt (2.9k ⭐) ve Lumibot (1.7k ⭐). Yıldızlar geçmişi ölçer; commit tarihleri ise hatanızı birinin düzeltip düzeltmeyeceğini ölçer.
İki mimari: olay tabanlı (event-driven) ve vektörel (vectorized)
Her şeyi belirleyen diğer ayrım da motorun stratejinizi nasıl çalıştırdığıdır.
- Olay tabanlı (event-driven) motorlar mum mum (bar by bar) döngü kurar ve her yeni mumda stratejinizi çağırır. Emir gerçekleşmelerini, kaymayı (slippage) ve mum içi (intrabar) riski gerçekçi şekilde modellerler ve — en önemlisi — aynı kod canlı çalışabilir. Backtrader, NautilusTrader, backtesting.py, Freqtrade, Lumibot ve Zipline olay tabanlıdır.
- Vektörel (vectorized) motorlar (öne çıkanı vectorbt) döngüyü tamamen atlar: binlerce strateji konfigürasyonunu NumPy dizilerine yerleştirir ve hepsini tek seferde hesaplar. Bu, parametre araması için inanılmaz hızlıdır ama bir sonraki mumda gerçekleşmeyi (next-bar fill) varsayar ve mum içi kaymayı, kısmi gerçekleşmeleri ve mum ortası risk kontrollerini görmezden gelir.
Hiçbiri kesin galip değil. Hızlısıyla araştırır, gerçekçisiyle doğrularsınız. Bu ödünleşme hakkında aşağıda daha fazlası var.
Aktif olarak bakım gören liderler
NautilusTrader — üretim sınıfı, olay tabanlı, Rust çekirdekli
NautilusTrader (24.1k ⭐, LGPL-3.0) kendini "deterministik olay tabanlı mimariye sahip, üretim sınıfı, Rust-native bir alım-satım motoru" olarak tanımlıyor — kod tabanı ~%70 Rust ve Python bağlamalarına (bindings) sahip. Tick ve emir defteri (order-book) verisi kullanarak birden fazla borsa ve enstrümanı nanosaniye çözünürlüğünde backtest eder ve ~20 canlı entegrasyonla gelir (Binance, Coinbase, Kraken, OKX, Bybit, Interactive Brokers, Betfair ve daha fazlası). Öne çıkan vaadi: araştırmadan canlı dağıtıma kadar aynı strateji kodu. Tick seviyesinde gerçekçilik ve üretime giden gerçek bir yol gerektiren kripto+hisse senedi kitlesi için en güçlü seçim budur. Bedeli: basit kütüphanelere kıyasla daha dik bir öğrenme eğrisi ve daha ağır bir mimari.
vectorbt — büyük ölçekli vektörel araştırma
vectorbt (8.0k ⭐, Apache-2.0 + Commons Clause) vektörel motordur. README'sinden: "mumlar arasında tek seferde bir strateji ile döngü kurmak yerine, binlerce konfigürasyonu NumPy dizilerine yerleştirir, sıcak yolu (hot path) Numba ve Rust ile hızlandırır ve hepsini tek seferde çalıştırır, böylece saatler süren grid aramasını saniyelere indirir." Saniyeler içinde 10.000 ikili SMA pencere kombinasyonunu test etmek bunun klasik örneğidir; üçüncü taraflar bazı iş yüklerinde Backtrader'a kıyasla ~1000× hızlanma bildiriyor (üretici/üçüncü taraf rakamları, bağımsız bir kıyaslama değil). Aşağıdaki parametre taraması — SMA pencereleri boyunca 25 backtest — tam olarak vectorbt'nin sanayileştirdiği şeydir:

Bilmeye değer iki uyarı: Commons Clause ticari yeniden satışı kısıtlar (bir ürün geliştiriyorsanız önemlidir) ve cilalı, ücretli vectorbt PRO, açık kaynak sürümden ayrı bir üründür. vectorbt yalnızca backtest içindir — canlı alım-satım yoktur.
backtesting.py — hafif favori
backtesting.py (8.5k ⭐, AGPL-3.0) bir framework'ün getirdiği tören yükü olmadan temiz, hızlı, okunabilir bir backtest istediğinizde başvuracağınız araçtır. init() ve next() tanımlayın, çalıştırın, bir istatistik nesnesi ve etkileşimli bir Bokeh grafiği alın. AGPL-3.0 lisansı önemlidir: ağ kullanımı hükümleri içeren güçlü bir copyleft'tir, dolayısıyla kapalı kaynaklı bir SaaS içinde sorun yaratabilir. Yalnızca backtest içindir. Bu sayfadaki sermaye eğrisi (kapak) ve aşağıdaki istatistikler gerçek bir backtesting.py çalıştırmasından geliyor — sentetik bir seri üzerinde düz bir SMA(20/50) kesişimi:

Dürüst sonuca dikkat edin: naif kesişim, al-ve-tut için +%46'ya karşı +%1.6 getiri sağladı ve acımasız bir −%38 düşüş yaşadı. Bu, gerçek bir backtest'in normal ilk sonucudur ve tam olarak herhangi bir şeye inanmadan önce neden parametreleri taradığınızın ve varsayımları doğruladığınızın sebebidir.
Freqtrade — kripto varsayılanı
Freqtrade (51.7k ⭐, GPL-3.0) bu listedeki en çok yıldız alan proje ve fiilî açık kaynaklı kripto alım-satım botudur. Backtesting, dry-run (kâğıt üzerinde) alım-satım ve büyük borsalarda canlı alım-satım yapar; Telegram veya yerleşik bir web arayüzü üzerinden kontrol edilir ve aylık release çıkarır. Yalnızca kriptodur — hisse senedi yoktur — ama kripto için bakımı sürdürülen, topluluk destekli standarttır.
Lumibot, bt, PyBroker, Jesse, LEAN, zipline-reloaded
- Lumibot (1.7k ⭐, GPL-3.0) — çoklu varlık (hisse senedi, opsiyon, kripto, vadeli işlem, forex); Alpaca, Interactive Brokers, Tradier, Schwab, Tradovate ve CCXT genelinde backtest, kâğıt ve canlı için aynı kod. Yeni başlayan dostu broker kurulumu; belgelenmiş backtest-canlı paritesi tuzaklarına (saat dilimleri, giriş zamanlaması, marjin) dikkat edin.
- bt (2.9k ⭐, MIT) — tick başına yürütme yerine portföy tahsisi ve ağırlık tabanlı stratejilere yönelik, esnek, algoritma-ağacı (tree-of-algos) yapısında bir framework. İzin verici (permissive) lisanslı, aktif olarak bakım görüyor, yalnızca backtest.
- PyBroker (3.4k ⭐) — Numba hızlandırması ve yerleşik walk-forward doğrulaması ile makine öğrenmesi stratejileri için tasarlanmış. Yalnızca backtest.
- Jesse (8.1k ⭐, MIT) — temiz bir strateji API'si ve canlı alım-satımı olan bir kripto framework'ü; izin verici lisans.
- LEAN / QuantConnect (20k ⭐, Apache-2.0) — QuantConnect'in bulutunun arkasındaki ağır siklet, çoklu varlık motoru. Python API'li C#/.NET çekirdek; backtest ve canlı. Güçlü ama buradaki en büyük taahhüt.
- zipline-reloaded (1.8k ⭐, Apache-2.0) — Quantopian'ın Zipline'ının aktif olarak bakım gören fork'u; akademide ve Machine Learning for Trading kitabında popüler. Yalnızca backtest; orijinal
quantopian/ziplineyerine bunu kullanın.
Mezarlık — yeni projeler için kaçının
Bunlar hâlâ arama sonuçlarında ve eski blog yazılarında yer alıyor ama 2026'da buradan başlamayın:
- Zipline (orijinal,
quantopian/zipline) — 2020'de terk edildi.zipline-reloadedkullanın. - PyAlgoTrade — repo arşivlendi (salt okunur).
- QSTrader — bakımsız olarak işaretlenmiş; son push 2024 ortası.
- blankly — platform kapandı; qtpylib — 2021'den beri arşivlenmiş.
- fastquant (1.8k ⭐) — tek satırlık backtest'lere yönelik ince bir sarmalayıcı (wrapper), ama 2023'ten beri durağan.
Mimari önemli: gerçekçilik ödünleşmesi
Vektörel-ve-olay tabanlı ayrımı akademik bir konu değil. vectorbt'nin hızı, her gerçekleşmenin bir sonraki mumun fiyatında, kayma olmadan gerçekleştiğini varsaymasından gelir. 500 varlık genelinde bir momentum taraması için bu sorun değil. Avantajı mum içi yürütmede yaşayan bir strateji için — stop yerleşimi, kısmi gerçekleşmeler, kuyruk pozisyonu — vektörel bir backtest size sessizce yalan söyler ve dürüst bir rakam elde etmek için olay tabanlı bir motora (NautilusTrader, Backtrader) veya canlı bir dry-run'a (Freqtrade, Lumibot) ihtiyacınız vardır. Profesyonel iş akışı her ikisini de kullanır: parametre uzayını keşfetmek için vectorbt, hayatta kalanları doğrulamak için olay tabanlı bir motor.
Lisanslama — bir ürün geliştirmeden önce bunu okuyun
Backtesting kütüphaneleri alışılmadık şekilde lisans-ağırlıklıdır ve birkaçı copyleft'tir:
| Lisans | Kütüphaneler | Bilmeniz gerekenler |
|---|---|---|
| AGPL-3.0 | backtesting.py | En güçlü copyleft; ağ/SaaS kullanımı kaynak ifşasını tetikleyebilir |
| Apache-2.0 + Commons Clause | vectorbt (OSS sürümü) | İzin verici, ama onu bir ürün olarak satamazsınız |
| GPL-3.0 | Backtrader, Freqtrade, Lumibot | Copyleft; bir türevi dağıtmak onu açık kaynak yapmak demektir |
| LGPL-3.0 | NautilusTrader | Daha zayıf copyleft; bağlantı kurmak (linking) genellikle sorun değil |
| MIT | bt, Jesse, QSTrader, fastquant | İzin verici — neredeyse her şeyi yapabilirsiniz |
| Apache-2.0 | LEAN, zipline-reloaded, finmarketpy | İzin verici, patent hakkı dahil |
Ticari ve kapalı kaynaklı bir şey geliştiriyorsanız, MIT/Apache araçları sorunsuz seçimlerdir; AGPL ve Commons Clause bir avukatın okumasını gerektirir.
Bir bakışta karşılaştırma
| Araç | ⭐ Yıldız | Mimari | Lisans | Bakım | Canlı alım-satım | En uygun olduğu yer |
|---|---|---|---|---|---|---|
| NautilusTrader | 24.1k | Olay tabanlı (Rust) | LGPL-3.0 | 🟢 Aktif | Evet | Üretim, tick/emir defteri gerçekçiliği |
| vectorbt | 8.0k | Vektörel | Apache+CC | 🟢 Aktif | Hayır | Kitlesel parametre araması |
| backtesting.py | 8.5k | Olay tabanlı | AGPL-3.0 | 🟢 Aktif | Hayır | Hızlı, temiz tekil backtest'ler |
| Freqtrade | 51.7k | Olay tabanlı | GPL-3.0 | 🟢 Aktif | Evet (kripto) | Bakımı sürdürülen kripto botu |
| Backtrader | 22.1k | Olay tabanlı | GPL-3.0 | 🟡 Uykuda | Evet | Miras projeler (durağanlığa dikkat) |
| Lumibot | 1.7k | Olay tabanlı | GPL-3.0 | 🟢 Aktif | Evet | Çoklu varlık, birleşik backtest/canlı |
| LEAN | 20k | Olay tabanlı | Apache-2.0 | 🟢 Aktif | Evet | Ağır siklet çoklu varlık platformu |
| bt | 2.9k | Vektörel/ağırlıklar | MIT | 🟢 Aktif | Hayır | Portföy tahsisi stratejileri |
| PyBroker | 3.4k | Olay tabanlı | OSS | 🟢 Aktif | Hayır | ML stratejileri + walk-forward |
| zipline-reloaded | 1.8k | Olay tabanlı | Apache-2.0 | 🟢 Aktif | Hayır | Akademi, ML4T kitabı |
| Zipline (orij.) | 19.9k | Olay tabanlı | Apache-2.0 | 🔴 Terk edilmiş | — | Hiçbir şey — reloaded kullanın |
| PyAlgoTrade | 4.7k | Olay tabanlı | — | 🔴 Arşivlenmiş | — | Yeni hiçbir şey |
Yıldızlar ve durumlar 2026-06-22 anlık görüntüleridir ve değişecektir; bakım en değişken boyuttur, bu yüzden bir araca bağlanmadan önce commit etkinliğini yeniden kontrol edin.
Tek nefeste nasıl seçilir
- Bir stratejiyi binlerce parametre boyunca araştırmak → vectorbt.
- Bir notebook'ta hızlı, temiz tekil bir backtest → backtesting.py (AGPL'ye dikkat).
- Araştırma→canlı paritesi ve tick gerçekçiliğiyle üretim kripto+hisse senedi → NautilusTrader.
- Backtest/dry-run/canlı içeren, bakımı sürdürülen bir kripto botu → Freqtrade.
- Yeni başlayan dostu, çoklu varlık perakende algoritmik alım-satım → Lumibot.
- Portföy tahsisi / ağırlıklandırma stratejileri → bt.
- Walk-forward içeren makine öğrenmesi stratejileri → PyBroker.
- Akademik / ML-for-Trading ders çalışmaları → zipline-reloaded.
- Devraldığınız bir Backtrader kod tabanı → sorun değil, ama uykuda olduğunu bilin; yeni projeler başka yere bakmalı.
Her piyasa rejiminde geçerliliğini koruyan tek kural: yıldız sayısını kontrol etmeden önce son commit tarihini kontrol edin. 2023'ten beri release çıkarmamış 22k yıldızlı bir kütüphane, geçen hafta release çıkaran 8k yıldızlı birinden üretime giden daha yavaş bir yoldur.
Metodoloji: GitHub metrikleri 2026-06-22 tarihinde GitHub API'sinden canlı olarak çekildi; mimari, bakım, lisans ve canlı alım-satım iddiaları proje repo'larına ve resmi dokümanlara karşı çapraz kontrol edildi ve çelişki arayan bir gözle, derlenmiş kataloglardan (PyTrade.org, awesome-systematic-trading) ve kernc'in alternatifler listesinden yararlanılarak doğrulandı. Sermaye eğrisi, istatistikler ve parametre ısı haritası, yeniden üretilebilir bir sentetik fiyat serisi üzerinde yapılan bir backtesting.py çalıştırmasının gerçek çıktısıdır — açıklayıcı niteliktedir, bir strateji önerisi değildir. Üreticilere atfedilen performans rakamları (vectorbt'nin hızlanmaları, NautilusTrader'ın nanosaniye çözünürlüğü) bağımsız kıyaslamalar değil, kendi bildirimleridir.