Sumber daya yang dimuat... Pemuatan...

2.3 Penjelasan API umum

Penulis:Kebaikan, Dibuat: 2019-04-16 15:39:35, Diperbarui: 2019-04-17 10:55:33

Ringkasan

Dalam hal pemrograman, itu harus tidak terpisahkan dari API. Bagi banyak orang non-programmer, apa itu API?

Apa itu API?

Jika Anda mencarinya di Google, Anda akan mendapatkan hasil berikut: API (Application Programming Interface) adalah fungsi yang telah didefinisikan untuk menyediakan aplikasi dan pengembang dengan kemampuan untuk mengakses seperangkat rutinitas berdasarkan perangkat lunak atau perangkat keras. Tanpa harus mengakses kode sumber, atau memahami rincian mekanisme kerja internal.

Pada kenyataannya, dalam kehidupan sehari-hari, kita memiliki banyak skenario API yang sama, seperti: Anda pergi ke restoran untuk makan, hanya melihat menu untuk memesan, Anda tidak perlu tahu cara membuatnya. Nama menu di menu adalah API tertentu, dan menu adalah dokumen API.

Apa API dalam perdagangan kuantitatif?

Misalnya, jika Anda perlu mendapatkan harga pembukaan dari varietas saat ini hari ini, Anda tidak perlu tahu persis bagaimana mendapatkannya. Anda hanya perlu menulis OPEN di editor kode, hanya menggunakannya secara langsung, OPEN adalah API untuk harga pembukaan dalam bahasa M.

API bahasa M umum

Sebelum kita berbicara tentang API bahasa M, mari kita lihat dulu struktur kode umum dan fitur apa yang dimiliki. Ini akan membantu Anda lebih memahami API. Silakan lihat contoh berikut:

AA:=OPEN; //Get the opening price of the latest k line and assign the result to the variable AA
BB:=MA(ClOSE,10); //Get the 10-cycle moving average of the latest K line and assign the result to the variable BB

Kode yang ditunjukkan di atas:

  • AA adalah variabel, dan variabel adalah elemen yang dapat diubah, sama seperti aljabar sekolah menengah pertama kita. jika harga pembukaan ditugaskan ke AA, maka AA adalah harga pembukaan; jika harga tertinggi ditugaskan ke AA, maka AA adalah harga tertinggi. AA hanyalah nama kustom, Anda juga dapat mendefinisikannya sebagai BB atau sesuatu yang lain.

  • := adalah arti dari penugasan, yaitu, nilai di sisi kanan := diberikan kepada variabel di sebelah kiri.

  • OPEN dan MA adalah API dari bahasa M. Perhatikan bahwa OPEN pada baris pertama adalah API untuk mendapatkan harga penutupan. Ini dapat digunakan secara langsung. MA pada baris kedua adalah API untuk mendapatkan moving average. Ini perlu dilewati oleh 2 parameter, yang berarti Anda perlu memberi tahu alat perdagangan FMZ Quant, jenis moving average yang Anda butuhkan: Jika Anda ingin mendapatkan moving average 50 periode yang dihitung pada harga pembukaan, Anda dapat menulis: MA (OPEN, 50); pastikan ada koma di antara parameter.

  • Warna kuning // adalah karakter komentar, dan bahasa Inggris di belakangnya adalah konten komentar. Semua ini dilihat oleh programmer untuk menunjukkan apa arti baris kode. Komentar tidak akan diproses sama sekali saat program mulai berjalan. Perhatikan bahwa sebelum karakter komentar, setiap baris kode harus memiliki titik koma sebagai akhir baris.

Dengan kesadaran struktur kode dasar, kami akan membawa Anda beberapa tata bahasa umum bahasa M di bawah ini, dan kami akan menggunakannya di masa depan.

  • OPEN - Dapatkan harga pembukaan dari garis K terbaru

Contoh: AA:=OPEN; Dapatkan harga pembukaan dari K baris terbaru dan menetapkan hasilnya untuk AA

  • HIGH - mendapatkan harga tertinggi dari garis K terbaru

Contoh: AA:=HIGH; Dapatkan harga tertinggi dari garis K terbaru dan atributkan hasilnya ke AA

  • LOW - mendapatkan harga terendah dari garis K terbaru

Contoh: AA:=LOW; Dapatkan harga terendah dari garis K terbaru dan atributkan hasilnya ke AA

  • CLOSE - Dapatkan harga penutupan dari garis K terbaru.

Contoh: AA:=CLOSE; Dapatkan harga penutupan dari garis K terbaru dan atributkan hasilnya ke AA

  • VOL - Dapatkan volume K baris terbaru

Contoh: AA:=VOL; Dapatkan volume dari garis K terbaru dan atributkan hasilnya ke AA

  • REF ((X,N) - mengacu pada nilai X sebelum N siklus.

Contoh: REF(CLOSE,1); Dapatkan harga pembukaan dari garis K sebelumnya

  • MA(X,N) - temukan rata-rata bergerak sederhana dari X dalam N siklus

Contoh: MA ((CLOSE, 10); //Mendapatkan rata-rata bergerak 10-siklus dari K-line terbaru

  • CROSSUP ((A,B) Menunjukkan bahwa ketika A melewati B dari bawah, ia mengembalikan 1 (Ya), jika tidak ia mengembalikan 0 (Tidak)

Contoh: CROSSUP (CLOSE, MA (C, 10)) // harga penutupan naik melintasi harga rata-rata bergerak siklus 10

  • CROSSDOWN(A,B)Menunjukkan bahwa ketika A melewati B dari atas, ia mengembalikan 1 (Ya), jika tidak ia mengembalikan 0 (Tidak)

Contoh: CROSSDOWN ((CLOSE, MA(C,10)) // harga penutupan turun-menyambung harga rata-rata bergerak siklus 10

  • BK - membeli posisi terbuka panjang

Contoh: CLOSE>MA(CLOSE,5), BK; // Harga penutupan lebih besar dari rata-rata pergerakan 5 siklus, posisi panjang terbuka

  • SP - jual untuk menutup posisi panjang

Contoh: CLOSE

  • SK - menjual posisi terbuka pendek

Contoh: CLOSE

  • BP - beli untuk menutupi untuk menutup posisi pendek

Contoh: CLOSE>MA(CLOSE,5), BP; // Harga penutupan lebih besar dari rata-rata pergerakan siklus 5, posisi pendek ditutup

  • BPK - posisi pendek tutup dan posisi panjang terbuka (posisi terbuka terbalik)

Contoh: CLOSE>MA(CLOSE,5), BPK; // ketika harga penutupan lebih besar dari rata-rata bergerak 5 periode, tutup posisi pendek dan buka posisi panjang.

  • SPK - Posisi panjang tutup dan posisi pendek terbuka (posisi terbuka terbalik)

Contoh: CLOSE

  • CLOSEOUT - menutup semua posisi, disarankan untuk digunakan dalam operasi posisi penjumlahan dan pengurangan

Contoh: CLOSEOUT; menutup semua posisi yang saat ini dipegang.

API bahasa JavaScript yang umum digunakan

Sebelum menjelaskan API bahasa JavaScript, mari kita lihat apa struktur kode umum dan fitur apa yang dimiliki. Ini akan membantu Anda lebih memahami API. Silakan lihat contoh berikut:

var aa = exchange.GetRecords(); // get the K-line data
var bb = exchange.SetContractType("This_week") // set the trading pair to weekly K-line

Kode yang ditunjukkan di atas:

  • Menciptakan variabel dalam bahasa JavaScript sering disebut sebagai variabel declaration. kita menggunakan kata kunci var untuk mendeklarasikan variabel, nama variabel adalah: aa.

  • Dalam bahasa JavaScript, berikan tanda sama, yaitu, berikan nilai di sisi kanan = ke variabel di sebelah kiri.

  • Kode exchange adalah objek pertukaran. Pertukaran di sini mengacu pada pertukaran yang Anda atur di halaman platform. Ini adalah format tetap, yaitu, Anda harus menentukan objek pertukaran ketika Anda memanggil API bahasa JavaScript.

  • Kode hijau adalah API dari bahasa JavaScript. Ketika kita memanggilnya, itu sebenarnya memanggil fungsi dalam objek pertukaran. Perhatikan bahwa titik di belakang kode juga merupakan format tetap. Fungsi di sini adalah arti yang sama dengan fungsi yang kita pelajari di sekolah menengah. Jika fungsi tidak perlu menentukan parameter, itu diwakili oleh kurung kosong; jika fungsi harus melewati parameter, parameter ditulis dalam kurung.

Setelah menggunakan kasus untuk memahami struktur dasar kode, mari kita lihat beberapa API bahasa JavaScript yang akan Anda gunakan di masa depan.

  • SetContractType (variety code ) - mengatur pasangan perdagangan, yang merupakan varietas perdagangan yang ingin Anda perdagangan

Contoh: exchange.SetContractType ((this_week); //Set trading pair ke mingguan K-line

  • GetTicker - Dapatkan data Tick

Contoh: exchange.GetTicker(); //Get Tick data

  • GetRecords - mendapatkan data baris K

Contoh: exchange.GetRecords ((); //Get K data baris

  • Beli - beli panjang

Contoh: pertukaran.Beli ((5000, 1); //Beli satu unit dengan harga 5.000

  • Jual - jual pendek

Contoh: exchange.Sell (5000, 1); // Jual satu unit dengan harga 5.000

  • GetAccount - mendapatkan informasi akun

Contoh: exchange.GetAccount ((); //Mendapatkan informasi akun

  • GetPosition - Dapatkan informasi posisi

Contoh: exchange.GetPosition ((); //Mendapatkan informasi posisi

  • SetDirection - diatur untuk melakukan jenis order panjang atau pendek

Contoh:

exchange.SetDirection ((buy); //Set type order untuk membuka posisi long

exchange.SetDirection ((closebuy); //Tentukan jenis order untuk menjual untuk menutup posisi panjang

exchange.SetDirection ((sell); //Set type order untuk membuka posisi short

exchange.SetDirection ((closesell); //Tentukan jenis order untuk membeli untuk menutup posisi short

  • Log - output pesan di log

Contoh: Log (( hello, World ); //output " hello world " di log

  • Tidur - hentikan program untuk sementara waktu

Contoh: Tidur (1000); / / membuat program jeda selama 1 detik (1000 milidetik sama dengan 1 detik)

Beberapa orang mungkin memiliki keraguan, begitu banyak API di atas, bagaimana saya bisa menghafal semuanya? sebenarnya, Anda tidak perlu mengingat salah satu dari mereka, situs resmi FMZ Quant memiliki dokumentasi API yang rinci. Sama seperti mencari kamus, setiap kali Anda menggunakannya, Anda hanya perlu memeriksanya melalui dokumentasi kami. Jangan takut dengan bagian pengkodean. Apa yang kami inginkan adalah mengatur strategi kami sendiri melalui bahasa ini. Harap ingat bahwa teknologi tidak pernah menjadi ambang untuk perdagangan kuantitatif. Strategi perdagangan yang sangat baik adalah yang paling penting dari semuanya.

Untuk meringkas

Di atas adalah API yang paling umum digunakan dalam perdagangan kuantitatif, pada dasarnya termasuk: mendapatkan data, menghitung data, menempatkan pesanan. Langkah-langkah ini harus cukup untuk menangani strategi perdagangan kuantitatif sederhana.

Latihan setelah sekolah

1, mencoba untuk menulis bahasa M 5 siklus rata-rata baris up-cross 10 siklus bergerak rata-rata baris kalimat.

2, coba gunakan bahasa JavaScript GetAccount untuk mendapatkan informasi akun Anda, dan gunakan Log untuk mencetak ke log.

Pemberitahuan bagian berikutnya

Pemrograman adalah seperti merakit batu bata LEGO. API adalah seperti berbagai bagian dari blok bangunan. Proses pemrograman adalah untuk membuat setiap bagian Lego menjadi mainan lengkap. Di bagian berikutnya, saya akan memandu Anda untuk merakit strategi perdagangan kuantitatif lengkap menggunakan API bahasa M.


Lebih banyak