Dalam artikel sebelumnya, kita telah belajar tentang parameter templat Perpustakaan Kelas Dagangan MyLanguage MyLanguage. Templat ini datang dengan penciptaan strategi MyLanguage dan merangkumi beberapa fungsi yang perlu ditetapkan dalam perdagangan. Dalam artikel ini, kita akan terus belajar tentang penggunaan MyLanguage di Platform Dagangan Kuantum FMZ.
Parameter strategi untuk MyLanguage ditetapkan pada halaman penyuntingan strategi, sama seperti bahasa lain di FMZ Quant Trading Platform, sebagai contoh, kita mengambilDual Thrust
strategi versi MyLanguage sebagai contoh.
Alamat strategi:https://www.fmz.com/strategy/128884 。
Parameter yang ditetapkan untuk strategi dalam halaman penyuntingan strategi boleh didapati secara langsung dalam kod strategi. Secara amnya, parameter strategi dalam MyLanguage hanya menggunakan jenis numerik, jenis lain, seperti boolean, kotak turun, rentetan, dan lain-lain tidak biasa digunakan.
Sebagai contoh, dalam contoh di atas, nilai lalai N adalah 4. Jika parameter ini tidak diubah semasa membuat robot, maka selepas robot berjalan, nilai N dalam strategi adalah 4.
Kami telah memahami kandungan peringkat strategi MyLanguage (parameter strategi MyLanguage, parameter templat perpustakaan kelas perdagangan MyLanguage). Seterusnya, mari kita lihat bot sebenar dan backtesting MyLanguage.
Ujian semula
Selepas julat masa backtest dipilih (waktu permulaan dan masa akhir), tetapkan tempoh K-line strategi. Mylanguage juga menyokong beberapa data tempoh K-line dalam strategi. Tetapi tempoh K-line yang ditetapkan di sini adalah tempoh K-line lalai, dan K-line yang ditetapkan di sini adalah K-line harian, jadi carta yang dihasilkan secara automatik selepas strategi berjalan adalah K-line harian. Mod backtesting dibahagikan kepada
Parameter yang berkaitan dengan pasaran dan pertukaran, seperti nilai dana simulasi backtesting, kadar dagangan backtesting, ketepatan harga backtesting, ketepatan kuantiti dagangan, dan sumber data backtesting, semuanya tidak berkuat kuasa setelah diubahsuai pada halaman backtesting.
Bot sebenar
Tetapan bot sebenar adalah lebih mudah. Kita hanya perlu menentukan docker untuk konfigurasi robot yang dicipta (iaitu, yang docker untuk menjalankan robot pada). Tetapkan tempoh K-garis dan objek pertukaran yang akan dikendalikan (iaitu objek akaun pertukaran yang dikonfigurasi).
Apabila strategi berjalan, terdapat sedikit perbezaan antara bot sebenar dan backtesting, tetapi backtest mempunyai lebih banyak data statistik yang dihasilkan secara automatik oleh sistem backtesting.
Maklumat bar status
Maklumat bar status terutamanya dibahagikan kepada
Maklumat pasaran terutamanya merakam masa permulaan tempoh, jenis urus niaga (kod kontrak), kuantiti kedudukan, harga kedudukan dan data lain dari tempoh K-line lalai yang ditetapkan pada masa ini. Perlu diperhatikan bahawa kemas kini pasaran di sini berbeza apabila menetapkan
Maklumat dana terutamanya merakam nilai robot dari awal operasi hingga dana semasa.
Mana-mana data dalam strategi juga boleh dipaparkan di bahagian bawah bar status, contohnya, dalam contoh: UPTRACK, DOWNTRACK, yang dipaparkan mengikut keperluan.
Simbol berikut digunakan untuk menetapkan nilai kepada pembolehubah (diambil dari dokumen MyLanguage API)
Simbol:
Titik dua mewakili penugasan dan ia output ke carta (sub-grafik) dan dipaparkan dalam jadual bar status.
Simbol:=
Kolom mewakili penugasan, tetapi ia tidak output ke carta (kartu utama, sub-kartu...), atau dipaparkan dalam jadual bar status.
Simbol^^
Kedua-dua simbol ^ mewakili penugasan, menetapkan nilai kepada pembolehubah dan mengeluarkan mereka ke carta (gambar utama), yang dipaparkan dalam jadual bar status.
Simbol..
Kedua-dua simbol mewakili penugasan, menetapkan nilai kepada pembolehubah dan paparan dalam jadual bar status, tetapi mereka tidak output ke carta (grafik utama, sub-grafik...).
Ia dapat dilihat bahawa simbol-simbol ini adalah semua operasi penugasan, tetapi perbezaannya terletak pada sama ada pembolehubah dipaparkan dalam bar status, dan sama ada pembolehubah digambar pada carta utama dan sub-grafik (yang akan ditunjukkan kemudian).^^
, :
, ..
semua boleh memaparkan nilai pembolehubah di bahagian bawah jadual bar status.
Carta Garis K Menurut tempoh K-line lalai yang ditetapkan pada strategi backtesting dan halaman bot sebenar, strategi akan menjana carta K-line, dan memaparkan lengkung nilai pembolehubah pada carta K-line mengikut kandungan strategi.
Carta utama:
Secara ringkasnya, carta utama berkongsi paksi Y yang sama dengan garis K, jadi bila anda perlu memaparkan data dalam carta utama?
Apabila nilai data dan garis penunjuk yang akan dipaparkan serupa dengan harga subjek (iaitu, ia serupa dengan nilai harga pada K-line BAR), ia boleh dipaparkan pada carta utama, seperti garis purata yang dikira oleh strategi, seperti uptrack dan downtrack (UPTRACK
danDOWNTRACK
) daripada harga yang dikira dalam contoh ini.
Sub-grafik:
Jenis data apa yang sesuai untuk dipaparkan pada sub-grafik?
Apabila perbezaan antara garisan yang akan ditarik (data yang dipaparkan) dan nilai harga pada BAR garisan K adalah besar (banyak lebih besar atau lebih kecil daripada harga pada garisan K), ia boleh dipaparkan pada carta sub, kerana jika dipaparkan pada carta utama pada masa ini, ia akan mengakibatkan mampatan imej, yang sangat tidak selesa untuk diperhatikan. Sebagai contoh, apabila penunjuk MACD dikira dan dipaparkan pada carta.
Sebagai contoh, tambah satu ayat kepada strategi contoh,AA ^ ^ (O-C) * 100000
;
Carta K-line telah dimampatkan dan tidak dapat dijumpai.
Satu lagi perbezaan adalah bahawa carta strategi MyLanguage adalah HighCharts untuk bot sebenar dan grafik tradingView untuk backtesting.
Carta untuk bot sebenar:
Strategi MyLanguage, apabila isyarat dagangan dicetuskan (BK
, SK
, BP
, SP
, BPK
, SPK
), log akan dicetak untuk memaparkan kedudukan (bilangan baris) isyarat mencetuskan dalam kod dan bilangan isyarat mencetuskan masa.
Selepas meletakkan harga log pesanan, kuantiti, log juga akan mengeluarkan harga peringkat pertama pihak lawan semasa. Sebagai contoh, apabila anda membeli pesanan kedudukan panjang, harga dan kuantiti pesanan Ask (iaitu, tahap menjual satu) akan dipaparkan.