
Lumibot adalah framework Python sumber terbuka untuk melakukan backtesting, paper trading, dan menjalankan strategi algorithmic trading. Framework ini mendukung aturan Python tradisional, agen trading AI, dan koneksi broker. Panduan ini membahas pendekatan strateginya, data historis, eksekusi yang terintegrasi dengan broker, serta tim trading AI untuk membantu developer dan trader kuantitatif mengevaluasi sistem trading otomatis.
Lumibot menyediakan 12 integrasi broker, termasuk Alpaca, Interactive Brokers (IBKR), dan Tradier, dengan kemampuan yang berbeda-beda di setiap pasar.
Lumibot memerlukan Python 3.10 atau versi yang lebih baru, serta mendukung saham, opsi, futures, forex, mata uang kripto, dan pasar prediksi.
Kelas strategi yang sama dapat digunakan untuk menjalankan backtesting historis, paper trading, dan trading real-time tanpa menulis ulang logika trading inti.
Runtime agen AI bawaan Lumibot mendukung agen riset, agen bullish dan bearish, peninjau risiko, serta agen trading final.
Backtesting historis, pengisian order secara nyata, dan validasi out-of-sample membantu mengevaluasi strategi, tetapi tidak menjamin profitabilitas di masa depan.
Lumibot adalah framework trading Python nyata yang dikembangkan oleh Lumiwealth. Arsitekturnya yang berbasis peristiwa menghubungkan data pasar, logika strategi, akun broker, dan eksekusi order.
Berbeda dari proyek trading yang memisahkan riset, backtesting, dan eksekusi ke dalam sistem yang tidak saling terhubung, Lumibot menekankan konsistensi antara riset dan trading real-time melalui kelas strategi yang dapat digunakan kembali.
Repositori resmi Lumibot mendokumentasikan integrasi brokernya, alat backtesting historis, dan proyek trading AI.
Komponen inti Python-nya meliputi:
| Komponen | Fungsi |
|---|---|
| Strategi | Menentukan logika trading dan metode siklus hidup |
| Aset | Merepresentasikan saham, mata uang kripto, opsi, atau instrumen lainnya |
| Data | Menyimpan informasi pasar historis |
| Trader | Mengoordinasikan eksekusi strategi |
| Alpaca | Menghubungkan strategi trading ke akun broker Alpaca |
| YahooDataBacktesting | Menggunakan harga Yahoo Finance untuk simulasi historis |
lumibot.strategies, lumibot.entities, lumibot.traders, dan lumibot.brokers.
Metode strategi mencakup initialize() dan on_trading_iteration(), yang menentukan pengaturan dan perilaku trading. Kode strategi yang terintegrasi dengan broker ini memungkinkan strategi Lumibot yang sama dijalankan di lingkungan yang didukung.
Lumibot mendukung backtesting intraday dan multihari menggunakan data pasar historis. Backtester Pandas-nya dapat menggunakan dataset kustom yang kompatibel, sedangkan Yahoo Finance, Polygon.io, dan penyedia lain yang didukung menyediakan informasi pasar.
Framework ini juga mencakup koneksi mata uang kripto berbasis CCXT, meskipun dukungan untuk setiap bursa dan instrumen harus diverifikasi secara terpisah.
| Fitur | Metode yang Didukung |
|---|---|
| Backtesting historis | Yahoo Finance, Polygon.io, Pandas/CSV, penyedia profesional |
| Dataset kustom | Data deret waktu yang dikendalikan pengguna |
| Broker real-time | Alpaca, IBKR, Tradier, dan integrasi yang didukung |
| Koneksi mata uang kripto | API bursa yang didukung dan integrasi CCXT |
| Pustaka Python | Pandas, NumPy, dan pustaka indikator teknikal |
| Deployment | Lingkungan lokal atau infrastruktur cloud yang dikonfigurasi |
| Mode eksekusi | Backtesting, paper trading, trading real-time |
Bursa mata uang kripto menyediakan API untuk data pasar dan pengiriman order. Lumibot dapat menggunakan integrasi yang kompatibel untuk mengotomatiskan trading, tetapi konektivitas tidak berarti bahwa setiap bursa didukung.
Alpaca dan broker serupa mungkin menyediakan lingkungan trading tanpa komisi untuk produk yang memenuhi syarat. Biaya lain, spread, dan batasan regulasi tetap berlaku.
Pengisian order secara nyata sangat penting saat menguji strategi intraday dan limit order. Simulasi historis harus mempertimbangkan slippage, latensi, biaya, dan likuiditas.
Sebagai perbandingan, Backtesting.py adalah pustaka Python berbasis peristiwa yang ringan dan cocok untuk proyek backtesting berskala kecil, sedangkan Lumibot menggabungkan backtesting dengan kemampuan eksekusi broker dan agen AI yang lebih luas.
Lumibot menyertakan runtime agen trading AI bawaan yang memungkinkan agen khusus memeriksa kondisi pasar, melakukan riset, memanggil alat eksternal, dan mengevaluasi peluang trading.
Tim trading AI lengkap beroperasi dalam subclass strategi biasa. Alur kerja agennya dapat menggabungkan aturan Python deterministik dengan keputusan yang dihasilkan AI.
Menurut dokumentasi agen AI Lumibot, developer dapat mengonfigurasi beberapa agen dengan tanggung jawab yang berbeda.
| Agen | Tanggung Jawab |
|---|---|
| Agen riset | Mengumpulkan bukti teknikal, fundamental, dan historis |
| Agen bullish | Menyusun argumen trading bullish yang paling kuat |
| Agen bearish | Menantang argumen dan mengidentifikasi risiko penurunan |
| Peninjau agen | Mengevaluasi bukti, asumsi, dan pengendalian risiko |
| Trader atau manajer portofolio | Meninjau posisi, saldo akun, dan potensi order |
| Agen final | Mengirimkan order setelah mendapatkan otorisasi trading yang jelas |
Dalam contoh tim trading, peneliti mengumpulkan bukti sebelum agen bullish dan bearish memperdebatkan peluang tersebut. Agen trading memutuskan apakah akan membeli, menjual, atau menahan aset.
Setiap agen menerima konteks pasar yang sama, ditambah riset atau keluaran peninjau sebelumnya.
Dengan demikian, alur kerja riset khusus dapat mendukung strategi agen tunggal maupun implementasi tim trading AI Lumibot berlapis.
Beberapa prompt demo mengarahkan agen untuk mencari trading paling menguntungkan atau menggunakan hampir seluruh kas. Contoh agresif ini menunjukkan kemampuan agen dan eksekusi, bukan rekomendasi manajemen risiko.
Hanya agen yang secara khusus diaktifkan untuk trading final yang boleh memiliki kewenangan mengirimkan order jika hal ini dipisahkan dalam desain strategi.
Lumibot memerlukan Python 3.10 atau versi yang lebih baru. Developer dapat menginstal framework dan menjalankan demo sebelum menghubungkannya ke dana riil.
<details class="md-editor-code" open="">
<summary class="md-editor-code-head">
<div class="md-editor-code-flag"><span></span><span></span><span></span></div>
<div class="md-editor-code-action">
<span class="md-editor-code-lang">Normal</span>
<span class="md-editor-copy-button" data-tips="Copy">Salin</span>
<span class="md-editor-collapse-tips"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-chevron-left md-editor-icon"><circle cx="12" cy="12" r="10"/><path d="m14 16-4-4 4-4"/></svg></span>
</div>
</summary>
<pre><code class="language-Plain" language=Plain><span class="md-editor-code-block">pip install lumibot
lumibot demo
</details>
<p>Demo awal menggunakan data historis dan tidak memerlukan kredensial broker.</p>
Developer dapat menginisialisasi dan menguji proyek trading AI:
<details class="md-editor-code" open="">
<summary class="md-editor-code-head">
<div class="md-editor-code-flag"><span></span><span></span><span></span></div>
<div class="md-editor-code-action">
<span class="md-editor-code-lang">Normal</span>
<span class="md-editor-copy-button" data-tips="Copy">Salin</span>
<span class="md-editor-collapse-tips"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-chevron-left md-editor-icon"><circle cx="12" cy="12" r="10"/><path d="m14 16-4-4 4-4"/></svg></span>
</div>
</summary>
<pre><code class="language-Plain" language=Plain><span class="md-editor-code-block">lumibot init my-bot <span class="hljs-attr">--template</span> ai
lumibot backtest my-bot --days 90 lumibot run my-bot --paper
</details>
<p>Strategi AI yang dikonfigurasi memerlukan kunci AI yang sesuai, sedangkan paper trading yang terhubung ke broker mungkin memerlukan kredensial AI dan Alpaca.</p>
Misalnya, impor Python dapat mencakup:
<details class="md-editor-code" open="">
<summary class="md-editor-code-head">
<div class="md-editor-code-flag"><span></span><span></span><span></span></div>
<div class="md-editor-code-action">
<span class="md-editor-code-lang">Normal</span>
<span class="md-editor-copy-button" data-tips="Copy">Salin</span>
<span class="md-editor-collapse-tips"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-chevron-left md-editor-icon"><circle cx="12" cy="12" r="10"/><path d="m14 16-4-4 4-4"/></svg></span>
</div>
</summary>
<pre><code class="language-Plain" language=Plain><span class="md-editor-code-block"><span class="hljs-keyword">from</span> lumibot.<span class="hljs-property">strategies</span> <span class="hljs-keyword">import</span> <span class="hljs-title class_">Strategy</span>
from lumibot.entities import Asset from lumibot.traders import Trader from lumibot.brokers import Alpaca
</details>
<p>Strategi AI juga dapat membuat agen melalui <code>self.agents.create()</code> dan memanggilnya dalam <code>on_trading_iteration()</code>.</p>
Kredensial model yang tidak tersedia harus menghasilkan kesalahan kunci penyedia yang jelas, bukan secara diam-diam mengotorisasi penyedia lain.
Developer harus menguji perilaku agen, kewenangan eksekusi, dan batasan risiko sebelum mengaktifkan order real-time.
Backtesting sangat penting untuk algorithmic trading, tetapi hasil historis yang menguntungkan tidak membuktikan performa yang diharapkan di masa depan.
Strategi harus melalui validasi out-of-sample, pengujian eksekusi secara nyata, dan paper trading sebelum deployment.
Keputusan agen AI juga memerlukan riwayat audit karena respons model baru dapat berubah dari satu proses ke proses berikutnya.
Lumibot mendukung riset kolaboratif dan proyek trading yang dapat dibagikan, meskipun social copy trading bukan fokus utamanya.
Margin trading dan leverage meningkatkan risiko dengan meminjam dana, sehingga memperbesar potensi keuntungan dan kerugian. Agen AI tidak boleh secara mandiri mengabaikan batas posisi yang telah ditentukan.
Saham tokenisasi dapat merepresentasikan klaim blockchain yang terkait dengan sekuritas tradisional, tetapi hak kepemilikan, eksposur fraksional, dan perlakuan regulasinya bergantung pada penerbit dan struktur produk.
Trader yang mengevaluasi strategi mata uang kripto otomatis dapat menggunakan Gate Spot untuk memeriksa harga pasar, likuiditas, dan kondisi order book.
Platform bot trading Gate juga menyediakan strategi otomatis yang dapat dikonfigurasi dan alat backtesting untuk pasar yang didukung.
Alat-alat ini memberikan perbandingan praktis untuk mengevaluasi strategi, tetapi integrasi native dengan Lumibot tidak boleh diasumsikan tersedia. Izin API, kompatibilitas pasar, dan risiko eksekusi perlu diverifikasi secara terpisah.
Lumibot menggabungkan backtesting Python, eksekusi strategi yang terintegrasi dengan broker, dan trading AI multiagen dalam satu framework yang dapat digunakan kembali. Keunggulan utamanya terletak pada konsistensi logika strategi dalam backtesting historis, paper trading, dan lingkungan real-time yang didukung.
Developer dapat menyesuaikan agen riset, manajemen portofolio, dan pengendalian risiko, sekaligus tetap memiliki akses ke strategi algoritmik tradisional. Namun, deployment yang andal tetap bergantung pada kualitas data pasar, pengujian eksekusi, keamanan, dan manajemen risiko yang ketat.
Lumibot menyediakan 12 integrasi broker, termasuk Alpaca, Interactive Brokers, dan Tradier. Setiap broker memiliki perbedaan dalam pasar, jenis order, dan kemampuan trading real-time yang didukung.
Ya. Lumibot mendukung integrasi data Yahoo Finance dan Polygon.io, serta mencakup koneksi mata uang kripto berbasis CCXT. Dataset Pandas kustom juga dapat digunakan untuk simulasi historis.
Ya. Kelas strategi yang sama dapat digunakan kembali untuk backtesting dan eksekusi real-time. Setiap mode harus menentukan konfigurasi startup, penyedia data, koneksi broker, dan kredensial.
Ya. Lumibot mendukung strategi agen tunggal dan tim trading multiagen. Agen yang telah diotorisasi dapat mengirimkan order melalui koneksi broker yang dikonfigurasi, dengan tunduk pada aturan eksekusi dan izin akun.
Ya. Lumibot dapat dijalankan di lingkungan Python lokal yang sesuai atau infrastruktur cloud yang dikonfigurasi. Persyaratan deployment bergantung pada strategi, penyedia data, koneksi broker, dan pengaturan pemantauan.











