Sesiapa sahaja boleh membina platform dagangan kuantitatif dengan menggunakan Inventor's Quantitative Extension API, dan projek contoh ini menunjukkan membina platform dagangan kuantitatif yang kuat dengan menggunakan Python dengan Inventor's Quantitative Extension API.
Mengikut projek DEMO ini, anda boleh merujuk kepada menulis kod terminal, menambah halaman frontend untuk menyematkan forum, blog, komuniti dan lain-lain sistem yang ada. Untuk mencapai akses yang fleksibel kepada kumpulan pengguna yang sedia ada, dan kumpulan pengguna yang sedia ada tidak dapat sepenuhnya mengalami sokongan teknologi bawah yang diukur oleh pencipta, pengguna menggunakan yang lebih ringkas dan mudah digunakan.
Reka bentuk strategi kebebasan tinggi
Menggunakan bahasa Python, JavaScript, C++, menulis strategi dagangan kuantitatif, bebas disesuaikan, boleh melaksanakan idea dagangan anda sendiri di dunia dagangan kuantitatif.
Sistem pengesanan semula yang kuat dan cekap
Tidak perlu lagi mengumpul data dengan susah payah, enjin semula sistem tempatan mudah dikonfigurasikan dengan satu perintah, pautan:https://github.com/fmzquant/backtest_python
Struktur yang ringkas
Dengan hanya menulis beberapa halaman teratas, program pelayan HTTP boleh dibina dengan mudah.
Nama: Pencipta Kuantitatif menunjukkan bagaimana untuk membina platform kuantitatif pengurusan aset anda sendiri menggunakan API pelanjutan Pencipta Kuantitatif
Projek DEMO ini dipasang
Pertama, klon projek demo ini.
git clone https://github.com/fmzquant/fmz_extend_api_demo.git
beralih ke direktori ini, menjalankan pip, memasang
pip install -r requirements.txt
Nota: Jika diminta Permission denied, anda memerlukan sudo pip install -r requirements.txt untuk menjalankan pip, dengan memasukkan kata laluan sistem operasi sesuai permintaan.
Setelah pemasangan selesai, sesuaikan program terminal yang akan digunakan Kuantiti pencipta API KEY akaun
Pencipta Kuantitifikasi Penggunaan API KEY untuk pengembangan Lihat dokumentasi API Pencipta Kuantitifikasi:https://www.fmz.com/api
Dicipta Pencipta Kuantiti API KEY
Kemudian anda akan menulis API KEY untuk demo ini.app.pyPerisian di hujung pelayan.
Perintah untuk menjalankan projek DEMO ini di terminal pelayan
python app.py
Berjalan menunjukkan:
Selepas menjalankan program di bahagian pelayan, buka halaman tempatan di penyemak imbas:http://127.0.0.1:5000
Uji halaman pendaftaran
Platform Kuantitifikasi DEMO projek ini telah beroperasi, anda perlu mendaftar akaun platform ujian ini (yang menyimpan data tempatan), log masuk dan sesuaikan sebagai pengguna platform pertukaran API KEY.
Perisian ini kini disusun seperti berikut:
Tiga strategi yang dipaparkan di halaman ini hanya dipaparkan oleh UI, yang juga memerlukan pentadbir platform kuantiti pengurusan aset yang direka khusus untuk dilaksanakan, di sini hanya untuk demonstrasi.
Mengatur dasar ujian Dalam projek DEMO ini, terminal akan mengesan bahawa dengan menekan butang permulaan, ia akan mencetuskan dasar yang mengandungi kata kunci "main" dalam akaun inventor kuantitatif dan menggunakan dasar ini untuk mengikat bot untuk berjalan. Jadi, kita mulakan dengan membuat strategi yang dikenali sebagai keuntungan ujian utama.
main Test profit Kod strategi ialah:
function main() {
while(true) {
LogProfit(Math.random()*100);
Sleep(1000);
}
}
Selepas mengedit kod, klik Simpan.
Perhatian: Anda mesti memastikan bahawa anda mempunyai pengurus dalam talian sebelum menjalankan.https://www.fmz.com/bbs-topic/463 )
Klik pada satu butang untuk memulakan tetikus, dan bot akan secara automatik mencipta bot yang akan menjalankan, bot ini akan mengikat dasar persembahan yang hanya akan secara rawak mengeluarkan angka sebagai nilai hasil yang ditunjukkan.
Robot yang baru dicipta boleh dilihat di pusat kawalan yang diukur oleh pencipta:
Di laman web DEMO juga menunjukkan nilai rawak yang sepadan
Robot yang dijalankan pada inventor kuantitatif diiktiraf oleh appId pengguna yang log masuk ke platform DEMO semasa
def robot_run(robotId, appId, exchanges):
strategyId = -1
# 从策略库里选出一个包含main字符串的策略运行, 也可以预定义
for ele in api("GetStrategyList")['data']['result']['strategies']:
if 'main' in ele['name']:
strategyId = ele['id']
if strategyId < 0:
raise u"not found strategy"
settings = {
"name":"robot for %s" % (appId, ),
"args": [], # our custom arguments for this strategey
"appid": appId, # 为该机器人设置标签,关联到本用户
"period": 60,
"strategy": strategyId,
"exchanges": [],
}
for e in exchanges:
settings["exchanges"].append({"eid": e.eid, "pair": get_default_stock(e.eid), "meta" :{"AccessKey": e.accessKey, "SecretKey": e.secretKey}})
if robotId > 0:
return api('RestartRobot', robotId, settings)
else:
return api('NewRobot', settings)
Seperti yang anda lihat, seting dalam kod adalah untuk mencipta maklumat konfigurasi bot, dan appid adalah untuk menandai pengguna.
# Github 地址更新: https://github.com/fmzquant/fmz_extend_api_demo
Investasi Kuantiti NaturePersekitaran yang dikonfigurasikan tidak betul. Bolehkah anda meminta versi Python yang diperlukan?
churchillxyPlatform kuantitatif yang dibina dengan cara ini, 1 pengguna lain yang mendaftar, adakah hanya dapat melihat dasar yang dibuat oleh pentadbir? Bolehkah mereka melihat kod sumber? 2 Adakah pengguna boleh mengkonfigurasi API bursa pengguna berdasarkan dasar pentadbir, menjalankan rak maya pengguna sendiri?
LizzaZero adalah ambisi yang besar, yang penting adalah kemampuan untuk menjadi ambisius
JPlatform yang saya bina hanya boleh melihat dan mengawal robot, tidak boleh menulis strategi dan menambah robot?
Mimpi kecilIni adalah DEMO, sumber terbuka, dan anda boleh melihat sumbernya secara langsung.
churchillxyBaik, terima kasih.
Mimpi kecil`` Di samping itu, bagaimana untuk menambah fungsi forum ini? `` Ini boleh dibangunkan secara konkrit. Demo ini hanya bermaksud anda boleh membina laman web sendiri, dan kemudian menggunakan perkhidmatan cakera FMZ melalui API sambungan FMZ. Jadi anda hanya membina laman web, anda boleh menjadi platform.
churchillxyApakah kos pengguna untuk beroperasi adalah $ 0.05 / jam?
Mimpi kecilAnda boleh merancang strategi yang boleh dilihat oleh pengguna dan membolehkan pengguna mengkonfigurasi parameter mereka sendiri. Semua ini adalah berdasarkan reka bentuk produk anda (perkhidmatan bawah adalah FMZ). Seperti DEMO dalam artikel, anda boleh bebas merancang platform kuantitatif anda sendiri mengikut keperluan produk anda.
Mimpi kecilTidak terbuka untuk sementara, antara muka penulisan dasar (mungkin akan dibuka pada masa akan datang), fungsi lain tersedia (seperti membuat bot, dll.), Alat penyesuaian Antara muka juga disokong.