API Yahoo Catatan :
[2018-11-16] Setelah beberapa pengujian tampaknya bahwa unduhan data dapat lagi diandalkan melalui antarmuka web (atau API v7 )Tiket
Sistem tiketnya, sebenarnya) lebih sering daripada tidak disalahgunakan untuk meminta nasihat tentang sampel.
Untuk umpan balik/pertanyaan/... gunakan komunitas
Di sini cuplikan crossover rata -rata bergerak sederhana. Ini dapat dilakukan dengan beberapa cara berbeda. Gunakan dokumen (dan contoh) Luke!
dari datetime impor datetime
Impor Backtrader sebagai BT
Kelas Smacross (BT.SignalStrategy):
def __init __ (self):
sma1, sma2 = bt.ind.sma (periode = 10), bt.ind.sma (periode = 30)
crossover = bt.ind.crossover (sma1, sma2)
self.signal_add (bt.signal_long, crossover)
cerebro = bt.cerebro ()
Cerebro.addstrategy (Smacross)
data0 = bt.feeds.yahoofinicedata (dataname = 'msft', fromDate = datetime (2011, 1, 1),
TODATE = DATETIME (2012, 12, 31))
cerebro.adddata (data0)
cerebro.run ()
cerebro.plot ()
Termasuk bagan unggulan lengkap. Cobalah! Ini termasuk dalam sampel sebagai sigsmacross/sigsmacross2.py . Sepanjang itu adalah sigsmacross.py yang dapat diparametrized dari baris perintah.
Platform perdagangan dan backtesting langsung yang ditulis dalam Python.
- Umpan data langsung dan perdagangan dengan
- Pialang interaktif (membutuhkan
IbPydan manfaat sangat daripytzyang terpasang)- Bagan Visual (membutuhkan garpu
comtypessampai permintaan tarik terintegrasi dalam rilis dan manfaat daripytz)- Oanda (kebutuhan
oandapy) (REST API saja - V20 tidak mendukung streaming saat diimplementasikan)- Feed Data dari CSV/File, Sumber Online atau dari Panda dan Blaze
- Filter untuk data, seperti memecah bilah harian menjadi potongan -potongan untuk mensimulasikan intraday atau bekerja dengan batu bata renko
- Beberapa umpan data dan beberapa strategi yang didukung
- Beberapa kerangka waktu sekaligus
- Resampling dan replaying terintegrasi
- Langkah demi langkah mendukung atau sekaligus (kecuali dalam evaluasi strategi)
- Baterai indikator terintegrasi
- Dukungan Indikator TA-LIB (Membutuhkan Python Ta-Lib / Periksa Dokumen)
- Pengembangan indikator khusus yang mudah
- Analisis (misalnya: timereturn, rasio Sharpe, SQN) dan integrasi
pyfolio( sudah usang )- Definisi skema komisi yang fleksibel
- Simulasi broker terintegrasi dengan pasar , tutup , batas , berhenti , stoplimit , stoptrail , stoptraillimit *dan *oCo pesanan, pesanan braket, selip, strategi pengisian volume dan penyesuaian uang tunai terus menerus untuk instrumen seperti masa depan seperti masa depan
- Sizers untuk mengarahkan otomatis
- Mode cheat-on-close dan cheat-on-open
- Penjadwal
- Kalender Perdagangan
- Plotting (membutuhkan matplotlib)
Blog:
- Blog
Baca dokumentasi lengkapnya di:
- Dokumentasi
Daftar indikator bawaan (122)
- Referensi Indikator
- Python> =
3.2- Ini juga berfungsi dengan
pypydanpypy3(tidak ada plot -matplotlibtidak didukung di bawah pypy )
backtrader mandiri tanpa dependensi eksternal (kecuali jika Anda ingin plot)
Dari pypi :
pip install backtrader
pip install backtrader[plotting]Jika
matplotlibtidak diinstal dan Anda ingin melakukan beberapa rencana
Catatan
Versi matplotlib minimum adalah 1.4.1
Contoh untuk umpan/perdagangan data IB :
IbPysepertinya tidak ada di PYPI. Lakukan baik:Pip Instal Git+https: //github.com/blampe/ibpy.gitatau (jika
gittidak tersedia di sistem Anda):Pip Instal https://github.com/blampe/ibpy/archive/master.zip
Untuk fungsi lain seperti: Visual Chart , Oanda , TA-Lib , periksa dependensi dalam dokumentasi.
Dari sumber:
- Tempatkan direktori Backtrader yang ditemukan di sumber di dalam proyek Anda
Xyzi
- X: Nomor Versi Utama. Harus tetap stabil kecuali sesuatu yang besar diubah seperti perombakan untuk menggunakan
numpy- Y: Nomor versi minor. Untuk diubah setelah menambahkan fitur baru yang lengkap atau (Tuhan melarang) perubahan API yang tidak kompatibel.
- Z: Nomor Versi Revisi. Untuk diubah untuk pembaruan dokumentasi, perubahan kecil, perbaikan bug kecil
- I: Jumlah indikator yang sudah dibangun ke dalam platform