Dengan perkembangan perdagangan kuantitatif aset blockchain, semakin banyak peniaga aset blockchain telah mengenali alat perdagangan kuantitatif. Tetapi sebagai ahli baru dalam bulatan ini, anda sangat keliru tentang banyak konsep, keliru dengan pelbagai istilah, perisian, maklumat, dll. Artikel ini akan membawa anda untuk memahami dan membiasakan diri dengan konsep biasa, dan memahami pelbagai maklumat berguna dalam perdagangan kuantitatif aset blockchain dari pelbagai aspek. Artikel ini mula-mula meringkaskan konsep asas, dan kemudian memberikan contoh di platform FMZ Quant Trading yang sepadan dengan konsep asas ini.
Pertama sekali, kita perlu memahami konsep platform. Kita perlu membuat spekulasi dan melabur dalam aset blockchain di tangan kita di platform. Terdapat banyak platform pada masa ini, senior, baru muncul, berskala besar dan berskala kecil.
Akaun platform Akaun platform adalah akaun yang didaftarkan dan dibuka di platform. Aset blockchain boleh disimpan di akaun ini untuk perdagangan. Beberapa akaun platform boleh membuat dan menetapkanSub- akaunDi bawah akaun utama untuk memudahkan perdagangan berasingan dan spekulasi aset. Aplikasi, mekanisme, dan penggunaan sub-akaun untuk setiap platform adalah berbeza. Anda perlu menyemak maklumat di laman web platform tertentu. Atau rujuk perkhidmatan pelanggan platform.
Selepas log masuk dengan akaun di laman web platform, anda biasanya dapat melihat bahawa tempat di mana aset blockchain dapat disimpan dibahagikan kepada beberapa
API sistem platform
Ramai pelajar yang belum menggunakan fungsi di platform mungkin bertanya:
API platform dibahagikan kepada pelbagai jenis antara muka; biasanya, terdapatREST
antara muka protokol danWebSocket
beberapa platform juga menyediakanFIX
antara muka protokol. kita hanya perlu mempunyai pemahaman tentang antara muka tersebut. antara muka yang paling biasa digunakan adalah protokol REST. dokumentasi antara muka ini biasanya boleh didapati dalam pautan dengan perkataanAPIdi bahagian bawah laman web rasmi platform tersebut. Kadang-kadang, untuk menanyakan beberapa maklumat ralat antara muka, anda masih perlu memeriksa dokumentasi antara muka. Sistem API setiap platform berbeza, dan perbezaannya agak besar. Untuk masalah tertentu, anda perlu memeriksa dokumentasi mereka. Jika anda bukan pemaju strategi, ini hanya untuk pemahaman.
Kunci API akaun Kunci API akaun mesti difahami dengan teliti, kerana ini berkaitan dengan keselamatan aset blockchain yang disimpan di platform yang anda gunakan. Ia dikatakan bahawa antara muka API adalah saluran, maka API KEY boleh difahami sebagailulusJika terdapat saluran akses, tidak semua program boleh dibenarkan untuk mengakses, kerana ia berbahaya. Oleh itu, pengesahan diperlukan, dan API KEY digunakan untuk mengesahkan identiti. Oleh itu, API KEY berkaitan dengan keselamatan aset anda, jadi ia mesti disimpan dengan betul.
Biasanya, APIKEY platform dicipta di sudut kanan atas halaman platform, di halaman pengurusan akaun (mungkin juga terdapat platform yang meletakkannya di tempat lain di halaman web, cari pautan dengan kata kunci access key
, dan rentetan kedua biasanya dipanggilsecret key
. Terdapat juga platform yang API KEY juga mempunyai maklumat lain. Sebagai contoh antara muka OKEX V5 dan V3 juga mempunyaiPassPhrase
, yang juga satu rentetan (rantai yang perlu ditetapkan oleh anda sendiri untuk mengukuhkan pengesahan keselamatan).
Apabila menetapkan API KEY, biasanya perlu menetapkan kebenaran API KEY ini. Secara amnya, terdapat kebenaran seperti
Objek pertukaran
Konsep objek pertukaran adalah konsep di FMZ Quant Trading Platform (FMZ.COM) Secara ringkasnya, ia merujuk kepada objek yang dihasilkan oleh pengelupasan antara muka platform.
Objek ini adalah
Jika strategi adalah untuk mengoperasikan objek pertukaran niaga hadapan, tambah niaga hadapan, dan jika anda ingin mengoperasikan objek pertukaran spot, tambah spot.
Pada platform FMZ,
Pasaran dagangan yang disebut di sini merujuk kepada keadaan pasaran dagangan tertentu (bayangkan halaman dagangan), biasanya dagangan dalam pelbagai modul.Perdagangan mata wang, Dagangan margin spot, Perdagangan kontrak, dan lain-lain
Pasangan Dagangan
Apa yang biasanya kita maksudkan dengan "pasangan perdagangan" adalah apa yang kita beli dan jual, seperti ketika kita pergi ke pasaran untuk membeli kubis.
SpotPerdagangan mata wangdanDagangan margin spotPerdagangan spot hanya perlu menentukanPasangan daganganuntuk menerangkan pasaran mana ia didagangkan.
Sebagai contoh, apabila anda menggunakannya di FMZ Quant, jika anda ingin membuat pasangan perdagangan pertukaran BTC untuk USDT. Mata wang perdagangan adalah BTC, dan mata wang sebut harga adalah USDT.
Kami menggunakan fungsiexchange.SetCurrency("BTC_USDT")
di platform FMZexchange.SetCurrency("BTC_USDT")
untuk menukar pasangan dagangan semasa kepada:BTC_USDT
.
Bagi pelajar yang tidak fahamSetCurrency
, anda boleh merujuk kepada:https://www.fmz.com/api#exchange.setcurrency.
Bagi pelajar yang tidak fahamexchange
, anda boleh merujuk kepada:https://www.fmz.com/api#exchange.
Kontrak (Masa Depan & Pilihan)
Perdagangan kontrak sangat berbeza dengan perdagangan spot.crypto-margined contracts
danUSDT-margined contracts
. Untuk perdagangan programatik dan perdagangan kuantitatif, perlu menentukan bukan sahaja pasangan dagangan, tetapi juga jenis kontrak. Sebagai contoh, jika kita ingin berdagang dengan BTC, maka terdapat banyak kontrak BTC, termasuk kontrak suku (penghantaran apabila tamat setiap suku), kontrak mingguan (penghantaran apabila tamat setiap hari Jumaat), kontrak kekal (tidak penghantaran), dll. Kemudian jika hanya satu pasangan perdagangan digunakan untuk pengenalan, jenis kontrak yang akan digunakan? Oleh itu, kod kontrak tertentu diperlukan untuk menerangkan dan menentukan itu.
Dengan cara ini, apabila kita menerangkan pasaran kontrak yang akan didagangkan, kita perlu menerangkan simbol mata wang (pasangan perdagangan) dan jenis kontrak (kod kontrak) itu.
Kontrak dengan margin kripto
Kontrak yang menggunakan cryptocurrency sebagai margin (seperti kontrak crypto-margined BTC, yang menggunakan BTC sebagai margin, dan pulangan juga BTC), pulangan mereka juga cryptocurrency. Biasanya, mata wang sebut harga pasangan perdagangan kontrak crypto-margined dinyatakan dalam USD (tidak perlu masuk mendalam, kebanyakan platform menggunakannya untuk menyatakan). Jadi pasangan perdagangan adalah BTC_USD, dan kontrak adalah kontrak suku tahunan.BTC crypto-margined quarterly contract
pasaran.
Di Platform Dagangan Kuantum FMZ,exchange.SetCurrency("BTC_USD")
menetapkan pasangan dagangan, dan kemudianexchange.SetContractType("quarter")
menetapkan kontrak suku. Dengan cara ini simbol perdagangan semasa adalahBTC crypto-margined quarterly contract
.
Kontrak dengan margin USDT
Kontrak yang menggunakan USDT sebagai margin (seperti kontrak perpetual bermargin BTC USDT, yang menggunakan USDT sebagai margin, dan pulangan juga USDT), pulangan mereka juga USDT. Biasanya, mata wang sebut harga pasangan dagangan kontrak bermargin USDT dinyatakan dalam USDT. Oleh itu, pasangan dagangan adalah BTC_USDT, dan kontrak adalah kontrak perpetual.BTC USDT-margined perpetual contract
pasaran.
Di Platform Dagangan Kuantum FMZ,exchange.SetCurrency("BTC_USDT")
menetapkan pasangan dagangan, dan kemudianexchange.SetContractType("swap")
menetapkan kontrak kekal. Dengan cara ini, simbol perdagangan semasa adalahBTC USDT-margined perpetual contract
.
Perintah Apa maksud perintah itu? Perintah adalah tiket pesanan yang kita hantar ke platform apabila kita membeli atau menjual di platform. Perintah dibahagikan kepada pesanan pasaran, pesanan had, pesanan bersyarat, dan lain-lain. Atribut yang paling asas untuk pesanan ialah: subjek pesanan (secara ringkas, apa yang harus dibeli atau dijual), jumlah pesanan (berapa banyak untuk membeli atau menjual), dan harga pesanan (pada harga apa untuk membeli atau menjual). Jika pesanan seterusnya tidak penting berapa banyak, ia hanya menentukan jumlah untuk membeli atau menjual dan apa yang harus dibeli atau dijual, maka pesanan sedemikian dipanggil pesanan pasaran. Sudah tentu, terdapat juga pesanan bersyarat (perintah berhenti kerugian, pesanan aisberg, dan lain-lain), yang berkaitan dengan platform. Sesetengah platform menyediakan pesanan bersyarat, dan beberapa tidak. Untuk butiran, anda boleh menyemak dokumentasi API FMZ.
Spot Perintah spot dan pesanan pasaran biasanya perlu memberi perhatian untuk membeli pesanan. Jumlah pesanan pesanan pasaran spot bukan jumlah simbol mata wang tetapi jumlah wang. Kerana pesanan pasaran tidak menentukan harga, hanya jumlah wang yang boleh digunakan untuk menentukan berapa banyak untuk membeli. Jumlah pesanan pasaran jual adalah jumlah simbol mata wang, kerana walaupun harga tidak pasti, jumlah simbol mata wang yang dijual dapat ditentukan.
Kontrak Jumlah pesanan kontrak adalah istimewa, biasanya jumlah kontrak. Antara muka pesanan kontrak platform pada dasarnya adalah jumlah kontrak, dan tidak ada antara muka yang mengambil jumlah simbol mata wang sebagai jumlah pesanan. Kontrak kekal BTC yang digariskan oleh Binance USDT boleh memesan kontrak kekal BTC dalam jumlah 0.01, tetapi bukan jumlah simbol mata wang, tetapi jumlah kontrak, kecuali satu kontrak kebetulan menjadi satu BTC. Secara amnya,tidak kira sama ada pesanan pasaran atau pesanan had, jumlah pesanan adalah nombor jumlah kontrak.
Perintah Pengambil & Perintah Pembuat Taker order adalah order yang menyediakan kecairan. Sederhananya, ia bermakna harga pasaran semasa adalah 10 untuk membeli satu dan 11 untuk menjual satu. Pada masa ini, saya menunggu pesanan beli dengan harga beli 9, atau pesanan jual dengan harga jual 12. Kemudian, saya menyediakan pesanan untuk kedalaman di pasaran. Perintah saya ini adalah pembuat.
Sebagai contoh, fungsi meletakkan pesananexchange.Sell
danexchange.Buy
Apabila meletakkan pesanan, sama ada pesanan diklasifikasikan sebagai penerima atau pembuat bergantung kepada harga pesanan dan pasaran semasa, dan sama ada pesanan memberikan kecairan atau mengurangkan kecairan.
Apabila mengimport harga -1 pada FMZ Quant, ia adalah untuk meletakkan pesanan pasaran. Perhatikan bahawa jumlah pesanan pesanan beli pasaran spot adalah jumlah wang, maka pesanan pasaran pasti mengurangkan kecairan, dan ia mesti menjadi pesanan mengambil.
Perintah bersyarat platform
Banyak platform juga menyokong perintah bersyarat, sepertiiceberg order
, stop loss order
, stop profit order
, post_only: only place maker order
, fok: all executed or canceled immediately
, ioc: executed immediately or cancel the rest
, dan sebagainya.
Perintah ini boleh menggunakanexchange.IO
fungsi pada FMZ Quant untuk mengakses antara muka pesanan platform secara langsung untuk menentukan parameter yang akan ditetapkan (tentukan perintah bersyarat yang akan diletakkan) untuk meletakkan pesanan.exchange.IO
fungsi, sila rujuk dokumentasi FMZ API:https://www.fmz.com/api#exchange.io...
Platform perdagangan kuantitatif boleh dianggap sebagai alat perdagangan kuantitatif, ia mungkin sistem perisian dalam talian, laman web, atau program pelaksanaan tempatan, atau bahkan projek sumber terbuka di GITHUB.
Platform Perdagangan Kuantum FMZ Platform Perdagangan Kuantum FMZ adalah sistem diedarkan dalam talian; untuk kenalan dengan platform dan tutorial, anda boleh merujuk kepada:https://www.fmz.com/bbs-topic/4145
Sistem Backtest Platform Dagangan Kuantum FMZ Apakah sistem backtest? Secara ringkasnya, sistem backtest adalah untuk memutar semula data sejarah simbol perdagangan tertentu, dan membiarkan strategi tertentu dimasukkan ke dalam pemutaran semula, dan mendapatkan prestasi perdagangan strategi ketika mensimulasikan pemutaran semula data sejarah.
FMZ Quant Trading Backtest System:
Nama | Jenis | Petua |
---|---|---|
Bitfinex | objek pertukaran spot | menyokong pasangan dagangan terhad, seperti: BTC_USD, ETH_USD dan LTC_USD, dan lain-lain (perhatikan mata wang sebut harga pasangan dagangan adalah dolar AS) |
Binance | objek pertukaran spot | menyokong pasangan dagangan terhad, seperti: BTC_USDT, ETH_USDT, ETH_BTC dan LTC_BTC, dll. |
OKEX | objek pertukaran spot | menyokong pasangan dagangan terhad, seperti: BTC_USDT, ETH_USDT, ETH_BTC dan LTC_BTC, dll. |
Huobi | objek pertukaran spot | menyokong pasangan dagangan terhad, seperti: BTC_USDT, ETH_USDT, ETH_BTC dan LTC_BTC, dll. |
OKEX Futures | Objek pertukaran niaga hadapan | menyokong pasangan dagangan terhad, seperti: BTC_USD dan ETH_USD, dan lain-lain; mata wang sebut harga pasangan dagangan adalah USD; selepas menetapkan kod kontrak tertentu (sila rujuk fungsi exchange.SetContractType), kontrak adalah kontrak margin crypto; kod kontrak yang disokong termasuk: this_week, next_week, suku dan swap |
HuobiDM | Objek pertukaran niaga hadapan | HuobiDM adalah Huobi Futures (Huobi Contract), menyokong pasangan dagangan terhad, seperti: BTC_USD dan ETH_USD, dll.; mata wang sebut harga pasangan dagangan adalah USD; selepas menetapkan kod kontrak tertentu (sila rujuk fungsi exchange.SetContractType), kontrak adalah kontrak margin crypto; kod kontrak yang disokong termasuk: this_week, next_week, suku dan swap. |
BitMEX | Objek pertukaran niaga hadapan | Pasangan dagangan adalah XBT_USD; selepas menetapkan kod kontrak tertentu (sila rujuk fungsi exchange.SetContractType), kontrak adalah kontrak dengan margin crypto; kod kontrak yang disokong adalah: XBTUSD |
Binance Futures | Objek pertukaran niaga hadapan | menyokong pasangan dagangan terhad, seperti: BTC_USDT dan ETH_USDT, dan lain-lain; mata wang sebut harga pasangan dagangan adalah USD; selepas menetapkan kod kontrak tertentu (sila rujuk fungsi exchange.SetContractType), kontrak adalah kontrak dengan margin USDT; kod kontrak yang disokong adalah swap |
Pilihan Derbit | Objek pertukaran niaga hadapan | Pasangan dagangan adalah: BTC_USD dan ETH_USD; selepas menetapkan kod kontrak tertentu (sila rujuk fungsi pertukaran.SetContractType), kontrak adalah kontrak dengan margin crypto; kod kontrak opsyen tertentu perlu ditetapkan |
API KEY perdagangan kuantitatif
Semua platform mempunyai antara muka API, dan platform perdagangan kuantitatif juga mempunyai antara muka API.extended API
. Beberapa fungsi platform FMZ boleh dikendalikan secara programatik. Sebagai contoh, menambah bot dalam batch, memulakan bot dalam batch, mengubah suai konfigurasi bot dalam batch, dan lain-lain. Untuk butiran, sila rujuk:https://www.fmz.com/api#fmz平台扩展api.
API dilanjutkan juga boleh digunakan untuk melakukan sesuatu yang menarik, sebagai contohGunakan API yang diperluaskan di FMZ Quant untuk merealisasikan
Apa sebenarnya yang secara automatik mengawal akaun platform saya untuk berdagang? Itulah perwujudan khusus perdagangan program dan perdagangan kuantitatif - skrip perdagangan terprogram. Program masa nyata ini boleh ditulis dalam pelbagai bahasa. Sebagai contoh, FMZ Quant Trading Platform menyokong menulis strategi perdagangan masa nyata dalam bahasa JavaScript, Python, dan C ++. Program skrip ini menjalankan pelbagai operasi seperti membeli dan menjual akaun melalui antara muka API platform.
Peranti di mana skrip perdagangan yang diprogramkan dijalankan
Program skrip bot mesti mempunyai pembawa peranti (singkatnya, bot mesti mempunyai tempat untuk dijalankan). Perdagangan kuantitatif dalam bulatan cryptocurrency biasanya menggunakan program bot ke pelayan Alibaba Cloud di Hong Kong (tentu saja, anda juga boleh menggunakan pelayan dari tempat lain, pengendali lain).timeout
akan dilaporkan.
Di FMZ Quant, anda biasanya boleh menggunakan program perisian anda sendiri di pelayan Alibaba Cloud di Hong Kong (perisian pembawa bot FMZ Quant dipanggil
Pilihan bahasa skrip Terdapat begitu banyak bahasa pengaturcaraan, dan pada dasarnya semua boleh digunakan untuk menulis program skrip bot. Di sini kita juga akan mengambil FMZ Quant Trading Platform sebagai contoh untuk membuat anda memahami kelebihan pelbagai bahasa.
JavaScript Ia adalah mudah dan mudah digunakan, hampir tanpa bergantung pada persekitaran peranti, dan menyokong standard ES6. Kelajuan pelaksanaan program strategi hanya selepas strategi C ++.
Python Python bergantung kepada persekitaran peranti ke tahap tertentu, dan pelbagai perpustakaan boleh dipasang, jadi kebolehluasanannya kuat. (disyorkan untuk pelajar yang biasa dengan platform FMZ dan biasa dengan Python).
C++
Strategi C ++ mempunyai kelajuan pelaksanaan yang paling cepat, kecekapan tertinggi, dan juga lebih sukar digunakan.
Selepas anda menguasai bahasa, anda akan mengetahui yang lainso easy!
Bahasa Mylanguage Mylanguage yang disokong oleh FMZ hanya untuk arahan yang paling asas.
Modul Visualisasi Strategi Gabungan Membuat strategi dengan cara visual hanya untuk kepentingan, peningkatan dan pemahaman tentang logik program. Ia boleh digunakan untuk membuat beberapa logik mudah, tetapi tidak sesuai untuk merancang strategi yang agak rumit, kerana sukar untuk mengekalkan dan memperluaskan, dan lebih sukar untuk merancang logik yang kompleks.