Penemu Quantitative Trading - Mulai dari Dasar hingga Perang Dunia II

Penulis:Kebaikan, Dibuat: 2019-06-25 15:48:58, Diperbarui: 2023-10-31 21:01:08

Arti dari bicara manusia. Setelah waktu yang lama belajar dan belajar sendiri, kita belajar berbicara secara tidak sadar dan juga bisa mendengar arti dari ucapan anak lain. Ada banyak bahasa, termasuk Cina, Inggris, Prancis, dll. Bahasa Tionghoa: Hai Dunia Bahasa Inggris: Hello World Bahasa Prancis: Bonjour tout le monde

Jika Anda menggunakan bahasa pemrograman untuk menampilkan "Hello World" di layar komputer Anda, Anda akan melihat seperti ini: Bahasa C: puts (selamat tinggal di dunia); Bahasa Jawa: System.out.println (selamat tinggal di dunia); Bahasa Python: print (Halo dunia) Anda dapat melihat bahwa bahasa komputer memiliki aturan spesifiknya sendiri, dan ada banyak bahasa lainnya, dan aturan bahasa ini adalah klasifikasi bahasa pemrograman yang perlu kita jelaskan kepada Anda hari ini, dalam setiap klasifikasi, kita hanya perlu mengingat aturan umum yang paling dasar, untuk dapat menggunakan bahasa pemrograman ini dan komunikasi komputer, membuat komputer berjalan sesuai dengan instruksi kita.

Klasifikasi bahasa pemrograman

Untuk memudahkan Anda untuk membandingkan dan memilih bahasa pemrograman transaksi kuantitatif yang tepat untuk Anda, kami akan membuat klasifikasi tentang enam bahasa pemrograman yang paling umum digunakan, yaitu Python, Matlab/R, C++, Java/C#, EasyLanguage, dan Visual Language.imgGambar 3-1 Peringkat bahasa pemrograman

Kami menilai mereka berdasarkan rentang fungsionalitas, kecepatan, skalabilitas, dan kesulitan belajar. Nilai antara 1 hingga 5, misalnya 5 dalam rentang fungsionalitas, berarti fitur yang kuat, dan 1 poin berarti kurang fungsionalitas. Visual Language dan EasyLanguage mudah dipelajari, sangat cocok untuk pemula.

Namun, untuk evaluasi setiap bahasa pemrograman, terutama untuk aplikasi di bidang transaksi kuantitatif, dan dengan komponen subjektif individu. Juga, silakan bertepuk tangan di kolom komentar setelahnya, atau berikan pendapat Anda untuk diskusi. Selanjutnya, kita akan mulai memperkenalkan bahasa pemrograman ini secara individu.

Bahasa Visualisasi

Pemrograman visualisasi berasal dari masa lalu dan bukan hal baru. Ide pemrograman yang terlihat seperti ini, dengan berbagai modul kontrol, hanya dengan cara drag, Anda dapat membangun logika kode, menyelesaikan desain strategi transaksi, dan prosesnya mirip dengan blok.imgGambar 3-2 Interface bahasa pemrograman visual

Seperti yang ditunjukkan di atas, prosedur yang sama, hanya membutuhkan beberapa baris kode dalam pemrograman visualisasi platform perdagangan kuantitatif para penemu. Ini sangat mengurangi ambang program, terutama bagi pedagang yang tidak mengerti program sama sekali, yang merupakan pengalaman operasi yang sangat baik.

Karena dasar implementasi strategi bahasa visualisasi ini telah beralih ke C++, dampak pada kecepatan program tidak terlalu besar. Namun, fungsionalitas dan skalabilitas lemah sehingga tidak dapat mengembangkan strategi transaksi yang terlalu kompleks atau terlalu halus.

Bahasa EasyLanguage

Bahasa yang disebut EasyLanguage, mengacu pada bahasa pemrograman yang unik bagi sebagian perangkat lunak perdagangan kuantitatif komersial. Meskipun bahasa-bahasa ini juga memiliki beberapa fitur berorientasi objek, mereka masih menggunakan bentuk skrip dalam aplikasi mereka. Dalam tata bahasa, mereka juga sangat dekat dengan bahasa alami kita, dan untuk pemula perdagangan kuantitatif, menggunakan EasyLanguage sebagai pilihan yang lebih baik sebagai pengenalan.

Bahasa skrip ini tidak memiliki masalah untuk melakukan penelusuran kebijakan dan disk di perangkat lunak tertentu, tetapi seringkali terbatas dalam hal ekstensi, seperti pengembang kebijakan tidak dapat memanggil API eksternal. Dan dalam hal kecepatan, bahasa skrip ini berjalan di mesin virtualnya sendiri, tidak dioptimalkan kinerja seperti Java / C #, lebih lambat.

Python

Pada Stackoverflow, jumlah pengunjung bahasa pemrograman utama hampir tidak berubah dalam beberapa tahun terakhir, hanya Python yang terus meningkat. Python dapat digunakan untuk pengembangan situs web, pembelajaran mesin, pembelajaran mendalam, analisis data, dll.

Daftar dan kamus struktur data dasar Python yang sangat kuat dan berfungsi untuk memenuhi kebutuhan representasi data. Jika Anda membutuhkan struktur data yang lebih cepat dan lebih lengkap, Anda dapat menggunakan NumPy dan SciPy, yang pada dasarnya disebut sebagai standar perhitungan ilmiah Python.

Dari segi teknik keuangan, yang lebih ditargetkan adalah Pandas, yang memiliki dua struktur data, Series dan DataFrame, yang sangat cocok untuk memproses urutan waktu.

Dalam hal kecepatan, Python berada di posisi tengah aliran, sedikit lebih lambat dari C++ dan lebih cepat dari bahasa EasyLanguage, terutama karena Python adalah bahasa dinamis, kecepatan yang umum saat berjalan dalam bahasa Python murni.

Sebagai sebuah bahasa penyaring, Python adalah yang pertama dalam hal kinerja yang dapat diperluas, selain dapat menghubungkan bahasa lain secara luas, dan desain API yang dapat diperluas sangat mudah digunakan. Dalam hal kesulitan belajar, tata bahasa Python sederhana, kode dapat dibaca dengan baik, dan mudah dimulainya.

Matlab/R

Kemudian bahasa Matlab dan R, kedua bahasa ini terutama berpusat pada analisis data, yang penulis bahasa telah melakukan banyak desain untuk operasi ilmiah secara tata bahasa, yang ditandai dengan dukungan operasi transaksi kuantitatif secara alami. Namun, jangkauan penggunaannya relatif terbatas, umumnya digunakan untuk analisis data dan evaluasi strategi. Untuk pengembangan sistem transaksi dan algoritma strategi, kemudahan dan stabilitasnya lebih buruk.

Selain itu, mereka juga memiliki kecepatan dan skalabilitas yang relatif buruk, karena Matlab dan R berjalan pada mesin virtual bahasa yang unik. Dari segi kinerja, mesin virtual mereka jauh lebih buruk daripada Java dan C #. Namun, mereka juga relatif lebih mudah dipelajari karena tata bahasa mereka lebih dekat dengan rumus ekspresi matematika.

C++

C++ adalah bahasa desain programming umum yang mendukung banyak pola pemrograman, seperti desain programming prosesor, abstraksi data, desain programming berorientasi objek, desain programming generik, dan pola desain. Dengan bahasa C++ Anda dapat mencapai semua fungsi yang Anda inginkan, tetapi bahasa yang kuat ini memiliki kelemahan terbesar adalah kesulitan belajar yang sangat tinggi, seperti template, pointer, kebocoran memori, dll.

Saat ini, C++ tetap menjadi bahasa pemrograman pilihan untuk transaksi berkapasitas besar dan frekuensi tinggi, karena alasan sederhana, karena karakteristik bahasa C++ lebih mudah mendekati dasar komputer dan merupakan alat yang paling efektif untuk mengembangkan sistem backtest dan eksekusi kinerja tinggi yang menangani sejumlah besar data.

Java/C#

Java/C# adalah bahasa statis yang berjalan di mesin virtual, tidak ada perpindahan array, tidak ada coredump, membuang posisi yang sangat akurat ke lokasi kode yang salah, mekanisme pemulihan sampah otomatis, tidak perlu khawatir tentang kebocoran memori, dll. Jadi dalam kesulitan belajar tata bahasa, mereka juga lebih mudah daripada C++. Dalam hal kecepatan, mereka hanya kalah dari C++ karena mesin virtual mereka memiliki fungsi JIT yang dikompilasi saat berjalan.

Namun dari segi fungsionalitas, tidak dapat diimplementasikan seperti C++, untuk mengoptimalkan dasar sistem transaksi. Dalam hal memperluas kinerja, C++ akan lebih lemah, karena mereka perlu diperluas melalui jembatan C, dan kedua bahasa itu sendiri berjalan di mesin virtual, sehingga perlu melewati dinding lebih banyak ketika memperluas modul fungsionalitas.

Pengamatan

Namun, dalam hal ini, bahasa pemrograman kuantitatif tidak penting, yang penting adalah ide. Penemu bahasa Ma dan bahasa visualisasi kuantitatif sebagai pintu masuk ke dalam kuantitatif sama sekali tidak masalah, peningkatan setelah masuk adalah kebutuhan untuk terus-menerus mencoba untuk mengeksplorasi dengan menggabungkan kondisi pasar yang berbeda, dapat dikatakan pikiran menentukan jalan keluar, mata menentukan batas.

Anda merancang strategi Anda, Anda memperdagangkan pikiran Anda. Dari sudut pandang ini, perdagangan kuantitatif masih menjadi inti dari pemikiran perdagangan. Sebagai pedagang kuantitatif, Anda tidak hanya perlu menguasai tata bahasa dan fungsi dasar dari platform strategi, tetapi juga perlu mewujudkan ide perdagangan dalam pertempuran nyata.

PR setelah sekolah

1. Apa saja keuntungan bahasa Python sebagai transaksi kuantitatif? 2. Cobalah untuk menulis beberapa API yang umum digunakan dalam bahasa inventor Anda.

Bagian berikutnya

Jika Anda sudah tahu bagaimana memilih bahasa pemrograman, maka dalam beberapa bab berikutnya, kami akan mengembangkan strategi transaksi kuantitatif pembelajaran yang ditargetkan berdasarkan klasifikasi bahasa pemrograman.

3.2 Pengantar Bahasa Melayu

Rincian

Apa itu bahasa Mac? Bahasa Mac adalah sebuah perpustakaan fungsi terprogram yang diperluas dari indikator teknologi saham awal. Mengembungkan algoritma ke dalam satu fungsi, pengguna hanya perlu memanggil satu baris fungsi seperti puzzle brick, untuk mewujudkan logika strategi.

Ini menggunakan pola konstruksi "semacam grammar kecil, fungsi besar", yang secara signifikan meningkatkan efisiensi penulisan, strategi lebih dari 100 kalimat dalam bahasa lain, biasanya 10 kalimat dapat ditulis dalam bahasa Ma. Dengan database fungsi dan struktur data statistik keuangan yang didukung oleh alat kuantifikasi penemu, juga dapat mendukung logika transaksi yang sebagian rumit.

Strategi Lengkap

Untuk membantu Anda dengan cepat memahami pengetahuan utama dari bagian ini, sebelum kita memperkenalkan pengembang Quaternary Quaternary dengan cepat, kita harus memiliki pemahaman awal tentang konsep kata dalam bagian ini. Kita masih menggunakan garis rata-rata 50 hari panjang dan garis rata-rata 10 hari pendek sebagai contoh dasar, mari kita lihat kembali kasus strategi lengkap yang dibahas dalam bagian sebelumnya:

Berinvestasi: Jika saat ini tidak ada posisi, dan harga penutupan lebih besar dari rata-rata jangka pendek, dan harga penutupan lebih besar dari rata-rata jangka panjang, dan rata-rata jangka pendek lebih besar dari rata-rata jangka panjang, dan rata-rata jangka panjang naik.

Berjualan dengan tangan kosong: Jika saat ini tidak ada posisi, dan harga penutupan kurang dari rata-rata jangka pendek, dan harga penutupan kurang dari rata-rata jangka panjang, dan rata-rata jangka pendek kurang dari rata-rata jangka panjang, dan rata-rata jangka panjang menurun.

Banyak posisi: Jika saat ini memiliki banyak pesanan, dan harga penutupan lebih rendah dari rata-rata jangka panjang, atau rata-rata jangka pendek lebih rendah dari rata-rata jangka panjang, atau rata-rata jangka panjang menurun.

Tangan kosong: Jika saat ini ada pesanan kosong dan harga penutupan lebih besar dari rata-rata jangka panjang, atau rata-rata jangka pendek lebih besar dari rata-rata jangka panjang, atau rata-rata jangka panjang naik.

Jika ditulis dalam kode bahasa Melayu, ini akan terlihat seperti ini:imgGambar 3-3 Contoh lengkap bahasa Melayu

Untuk menulis strategi transaksi kuantitatif yang lengkap, biasanya diperlukan beberapa langkah: pengambilan data, perhitungan data, perhitungan logis, pembelian dan penjualan pesanan bawah. Seperti yang ditunjukkan di atas, di seluruh kode, hanya satu API yang digunakan untuk mengambil data dasar, yaitu tombol CLOSE pada baris pertama dan kedua; lalu baris pertama sampai ke-9 adalah bagian perhitungan data; dan akhirnya baris ke-11 sampai ke-14 adalah bagian perhitungan logis dan pesanan bawah.

Perhatikan bahwa kode ungu adalah variabel; di baris pertama sampai ke-sembilan, tanda hijau: = tanda adalah parameter pemberi nilai, tanda yang berada di sebelah kanan data yang dihitung selesai dan diberi nilai pada variabel yang berada di sebelah kiri; kode oranye adalah API, misalnya pada baris pertama, untuk memanggil MA (semacam garis lurus) diperlukan dua parameter, parameter pemberi nilai yang dapat Anda pahami sebagai pengaturan, yaitu jenis MA yang harus diatur saat memanggil MA; tanda merah adalah tanda AND, tanda OR, tanda operator logika, terutama digunakan untuk menghubungkan beberapa perhitungan logis, dan sebagainya. Dengan pengetahuan dasar dari konsep di atas, di bawah ini kita mulai mempelajari dasar-dasar bahasa yang lebih rinci.

Data Dasar

Data dasar (misalnya harga buka, harga tertinggi, harga minimum, harga tutup, volume transaksi) merupakan bagian integral dari perdagangan kuantitatif. Untuk mendapatkan data dasar terbaru dalam strategi, hanya perlu memanggil API alat kuantitatif penemu. Jika Anda ingin mendapatkan data dasar sejarah, Anda dapat menggunakan tag REF, seperti: REF (misalnya, CLOSE, 1) untuk mendapatkan harga penutupan kemarin.

Variabel

Variabel adalah bilangan yang dapat berubah, nama variabel dapat dipahami sebagai kode, dan penamaan mendukung penamaan dengan format huruf Cina, huruf, angka, dan garis garis, tetapi panjangnya harus dikontrol dalam 31 karakter. Nama variabel tidak dapat saling berulang, tidak dapat diulang dengan nama parameter, tidak dapat diulang dengan nama fungsi (API), setiap kalimat harus diakhiri dengan tanda baca.imgGambar 3-4 Jenis data bahasa Melayu

Variable Assignment

Variable Assignment adalah memberikan nilai dari nilai yang ada di sebelah kanan untuk variabel yang ada di sebelah kiri. Ada 4 jenis Variable Assignment yang dapat dikontrol, yaitu apakah nilai tersebut akan ditampilkan pada grafik, dan menentukan posisi yang akan ditampilkan.imgGambar 3-5 Variabel bahasa Ma

Jenis data

Dalam bahasa Melayu, ada berbagai jenis data, yang paling umum digunakan adalah jenis angka, jenis string, jenis bul. Jenis nilai adalah angka, termasuk bilangan bulat, bilangan kecil, bilangan negatif positif, dan lain-lain, seperti: 1, 2, 3, 1, 1234, 2, 23456...; Jenis string dapat dipahami sebagai huruf, dalam bahasa Cina, angka bahasa Inggris, semua dapat menjadi string, seperti:

Operator relasional

Operator relasional, seperti namanya, adalah operator yang digunakan untuk membandingkan dua nilai hubungan. Operator ini adalah sebagai berikut:imgGambar 3-6 Operator bahasa Melayu

Operator logis

Operasi logis dapat menghubungkan pernyataan tipe Boolean yang terpisah ke dalam satu keseluruhan, yang paling umum digunakan adalah AND ((dan) dan OR ((atau) ). Dengan asumsi bahwa ada dua nilai tipe Boolean, yaitu tutup harga lebih besar dari harga bukaan dan tutup harga lebih besar dari rata-rata, kita dapat membuat mereka menjadi satu nilai Boolean, misalnya: tutup harga lebih besar dari harga bukaan dan AND) tutup harga lebih besar dari rata-rata, tutup harga lebih besar dari harga bukaan atau OR) tutup harga lebih besar dari rata-rata.imgGambar 3-7 Operasi Logika Bahasa Melayu

Perhatikan: Keterangan yang lebih jelas adalah bahwa semua kondisi yang ada adalah untuk ketumbar, sedangkan kondisi akhir adalah untuk ketumbar. OR adalah dalam semua kondisi, selama ada salah satu kondisi yang menyatakan bahwa adalah , maka kondisi akhir menyatakan bahwa adalah . AND dapat dituliskan sebagai??&&,OR dapat dituliskan sebagai.

Operator aritmatika

Operator aritmatika yang umum digunakan dalam bahasa Melayu (+,-,*,/) dan matematika yang dipelajari di sekolah dasar tidak ada bedanya, seperti yang ditunjukkan di bawah ini:imgGambar 3-8 Operasi aritmatika bahasa Melayu

Prioritas

Jika ada ekspresi 100* ((10-1) / ((10+5)), langkah mana yang harus dihitung terlebih dahulu? Matematika sekolah menengah memberi tahu kita: (1) Jika operasi tingkat yang sama, biasanya menghitung dari kiri ke kanan. (2) Jika ada pengurangan dan perkalian, perkalian terlebih dahulu. (3) Jika ada tanda kurung, perhitungan di dalam tanda kurung.imgGambar 3-9 Keutamaan operasi aritmatika bahasa Melayu

Mode pelaksanaan

Dalam bahasa Ma, inventor dari alat kuantitatif, strategi program melakukan dua mode, yaitu: mode harga tutup dan mode harga real-time. Mode harga tutup berarti sinyal K saat ini dibuat, dan segera melakukan transaksi pada awal garis K yang lebih rendah. Mode harga real-time berarti sinyal K saat ini dibuat, dan segera melakukan transaksi.

Strategi Dalam Negeri

Jika strategi dalam hari, saat ujungnya perlu dipadamkan, maka harus menggunakan fungsi waktu tutup TIME. Fungsi ini di atas siklus detik, di bawah siklus hari, ditampilkan dalam bentuk empat digit, yaitu: HHMM ((145014: 50). Catatan: menggunakan fungsi TIME sebagai kondisi untuk ujungnya dipadamkan, disarankan untuk membuka kondisi perdagangan juga melakukan batasan waktu yang sesuai. Seperti gambar di bawah:imgGambar 3-10 Fungsi waktu bahasa Melayu

Klasifikasi model

imgGambar 3-11 Klasifikasi model bahasa Melayu

Dalam bahasa Inggris, ada dua jenis model yang dapat diklasifikasikan, yaitu model non-filter dan model filter. Hal ini sangat mudah dimengerti: model non-filter memungkinkan sinyal buka atau tutup berturut-turut, yang memungkinkan untuk meningkatkan dan menurunkan fungsi. Model filter tidak memungkinkan sinyal buka atau tutup berturut-turut, yaitu setelah muncul sinyal buka, sinyal buka berikutnya akan disaring sampai muncul sinyal tutup, urutan sinyal model non-filter adalah: terbuka-terbuka-terbuka-terbuka...

Pengamatan

Ini adalah pengantar singkat bahasa Ma, setelah belajar Anda dapat memprogram strategi transaksi kuantitatif. Jika Anda perlu menulis strategi yang lebih kompleks, Anda dapat merujuk pada dokumen API perangkat inventor untuk transaksi kuantitatif, atau langsung melihat layanan pelanggan resmi untuk menulis strategi transaksi kuantitatif.

Bagian berikutnya

Trading intraday juga merupakan mode perdagangan yang tidak menyimpan saham sepanjang malam, sehingga berisiko rendah terhadap volatilitas pasar dan dapat disesuaikan sewaktu-waktu jika terjadi pasar yang tidak menguntungkan. Setelah mempelajari pengantar bahasa dalam bagian ini, di bagian berikutnya kita akan membantu Anda menulis strategi perdagangan intraday yang dapat dilakukan.

PR setelah sekolah

1. Cobalah menulis API untuk mendapatkan data dasar dalam bahasa Melayu dengan alat kuantifikasi penemu. 2, bagaimana cara memberikan nilai variabel dalam grafik?

3.3 Strategi dalam Bahasa Melayu

Rincian

Dalam artikel sebelumnya, kami telah menjelaskan kepada Anda tentang dasar-dasar strategi trading dari segi pengantar bahasa Melayu, tata bahasa dasar, cara pelaksanaan model, klasifikasi model, dan lain-lain. Dalam artikel ini, kami akan melanjutkan materi sebelumnya, mulai dari modul strategi yang umum digunakan, indikator teknis, dan langkah demi langkah untuk membantu Anda mewujudkan strategi perdagangan kuantitatif sehari-hari yang layak.

Modul Strategi

Pikirkan tentang bagaimana Anda membuat robot dengan potongan-potongan Lego. Anda tidak akan pernah bisa membuat robot dari atas ke bawah atau dari bawah ke atas, satu bagian ke bagian lain. Orang-orang yang sedikit lebih akrab tahu bahwa kepala, lengan, kaki, sayap, dll, harus ditumpuk, masing-masing, dan kemudian digabungkan menjadi robot yang lengkap.

Peningkatan Tahap

Peningkatan fase adalah perbandingan persentase dari perbedaan antara harga penutupan root K dengan harga penutupan N siklus sebelumnya. Sebagai contoh: menghitung berapa kenaikan 10 tahap K terakhir, kode dapat ditulis sebagai:imgGambar 3-12 Peningkatan tahap bahasa Melayu

Inovasi Tinggi

Tinggi inovasi adalah menghitung apakah akar K lebih besar dari N siklus. Sebagai contoh: menghitung apakah akar K lebih besar dari harga tertinggi dari 10 akar K terbaru, kode dapat ditulis sebagai berikut:imgGambar 3-13 Bahasa Melayu Berinovasi Lagi

Pengepungan

Pengepungan volume dapat dipahami sebagai kenaikan harga, peningkatan volume transaksi. Misalnya: jika harga penutupan pada garis K akar adalah 1,5 kali harga penutupan pada garis K 10 sebelumnya, yaitu 50% dalam 10 hari; volume transaksi lebih dari 5 kali rata-rata 10 garis K terakhir.imgGambar 3-14 Bahasa Melayu meningkat

Pengelompokan yang sempit

Pengelompokan yang sempit adalah ketika harga tetap dalam batas tertentu dalam jangka waktu dekat. Misalnya: jika perbedaan antara harga tertinggi dalam 10 siklus dan harga terendah dalam 10 siklus, selain harga penutupan pada garis akar K, kurang dari sekitar 0.05; kode dapat ditulis sebagai berikut:imgGambar 3-15 Bahasa Melayu

Pengaturan multi-head linear

Array multihead linear dibagi menjadi array multihead linear dan array blank, K linear pada 510203060 linear support array upward untuk array multihead linear, array multihead linear adalah tren pasar yang kuat naik; kode dapat ditulis sebagai:imgGambar 3-16 Bahasa Melayu berupa multilinear

Titik Tinggi Sebelumnya dan Lokasinya

Untuk mendapatkan titik tinggi sebelumnya, dan di mana titik tinggi ini berada, dapat diakses langsung melalui API alat pengukuran penemu.imgGambar 3-17 Tinggi awal bahasa Melayu

Jumping dari lubang

Jump gap adalah situasi di mana harga terendah tertinggi dari dua garis K muncul tanpa terikat, terdiri dari dua garis K, dan Jump gap adalah harga referensi untuk titik dukungan dan tekanan di masa depan. Ketika Jump Gap muncul, dapat diasumsikan bahwa percepatan tren di sepanjang arah Jump Gap yang awalnya telah dimulai.imgGambar 3-18 Bahasa Melayu

Indikator teknologi yang umum digunakan

Rata-rata Gerak

imgGambar 3-19 Grafik rata-rata bergerak

Dari sudut pandang statistik, rata-rata adalah rata-rata aritmatika harga harian, yaitu sebuah lintasan harga yang memiliki tren. Sistem rata-rata adalah alat teknis yang sering digunakan oleh sebagian besar analis, dari sudut pandang teknis adalah faktor yang mempengaruhi faktor harga psikologis analis teknis, faktor keputusan pembelian dan penjualan pikiran, merupakan alat referensi yang baik bagi analis teknis, penemu alat kuantifikasi mendukung berbagai jenis rata-rata, seperti gambar di bawah ini:imgGambar 3-20 Menghitung berbagai indikator bahasa Melayu

BOLL

imgGambar 3-21 BOLL

BOLL juga dikenal sebagai indikator Bolling-Band, dan menggunakan prinsip statistik untuk menghitung peredaran pertama berdasarkan rata-rata bergerak N hari, kemudian peredaran atas dan bawah berdasarkan standar deviasi. Ketika saluran BOLL menjadi lebar, ini menunjukkan harga secara bertahap kembali ke rata-rata. Ketika saluran BOLL menjadi sempit, ini berarti pasar mulai berubah, jika harga naik, ini menunjukkan peningkatan daya beli, jika harga turun, ini menunjukkan peningkatan daya jual.

Di antara semua indikator teknis, metode perhitungan BOLL adalah salah satu yang paling rumit, yang memperkenalkan konsep standar deviasi dalam statistik, yang melibatkan perhitungan garis tengah (MB), garis atas (UP) dan garis bawah (DN).imgGambar 3-22 Pemrograman Blink-Blink

Indikator MACD

imgGambar 23 Indikator MACD

Indikator MACD menggunakan garis rata-rata bergerak cepat (pendek) dan lambat (panjang) dan tanda-tanda agregat dan pemisahan mereka untuk melakukan operasi ganda yang mulus. Sementara MACD yang dikembangkan berdasarkan prinsip rata-rata bergerak, yang pertama menghilangkan kekurangan bahwa rata-rata bergerak sering mengeluarkan sinyal palsu, yang kedua mempertahankan efek rata-rata bergerak, sehingga indikator MACD memiliki karakteristik seperti tren linear, stabilitas, stabilitas, dan sebagainya.

imgGambar 3-24 Indikator MACD Bahasa Melayu

Di atas adalah modul strategi yang paling umum digunakan dalam mengembangkan strategi perdagangan kuantitatif, tentu saja sebenarnya jauh lebih dari itu, melalui contoh modul di atas, Anda juga dapat melakukan beberapa modul perdagangan yang paling sering Anda gunakan dalam perdagangan subjektif, metode yang umum. Selanjutnya, kita mulai menulis strategi perdagangan kuantitatif sehari-hari yang layak.

Menulis Strategi

Dalam pasar spot forex, strategi trading break-through yang pernah populer adalah strategi HANS123, yang menggunakan penembusan titik tinggi dan rendah dari garis N root K setelah perdagangan yang singkat sebagai kriteria penilaian yang dipicu oleh sinyal perdagangan. Ini juga merupakan mode trading awal.

Logika strategis

Setelah 30 menit bermain, siap masuk. Di atas jalur = puncak 30 menit setelah awal; Tren bawah = titik terendah 30 menit setelah awal; Ketika harga melintasi lintasan, beli dan buka posisi. Saat harga turun, juallah posisi terbuka. Strategi perdagangan intraday, penghapusan sebelum penutupan

Kode Strategi

imgGambar 3-25 Kode Strategi Bahasa Melayu

Pengamatan

Di atas kita mempelajari konsep modul strategi, dan melalui beberapa kasus modul strategi yang umum digunakan, akrab dengan metode pemrograman alat kuantifikasi penemu, dapat dikatakan bahwa belajar menulis modul strategi dengan baik, meningkatkan pemikiran logika pemrograman, adalah langkah penting dalam perdagangan kuantifikasi progresif. Akhirnya, kita mengimplementasikan alat kuantifikasi penemu, strategi perdagangan yang umum digunakan dalam perdagangan spot forex.

Bagian berikutnya

Mungkin ada teman yang bingung, kode yang sangat rumit tidak bisa dibaca. Jangan terburu-buru, ini semua sudah kami pikirkan untuk Anda, di dalam alat kuantitatif penemu, ada bahasa pemrograman yang lebih cocok untuk pengguna kecil dan kecil, itu adalah pemrograman visualisasi, sesuai namanya adalah apa yang terlihat, tunggu bersama!

PR setelah sekolah

Pertama, cobalah untuk menerapkan beberapa modul perdagangan yang paling sering Anda gunakan dalam perdagangan subjektif. 2. Cobalah untuk menerapkan algoritma indikator KDJ menggunakan bahasa Ma yang ada di alat kuantifikasi penemu.

3.4 Perkenalan cepat untuk pemrograman visualisasi

Rincian

Banyak pedagang subjektif yang tertarik pada transaksi kuantitatif, dan baru mulai percaya diri, dan setelah mempelajari tata bahasa dasar bahasa pemrograman tradisional, operasi data, struktur data, kontrol logis, dll.

Strategi Lengkap

Untuk membantu Anda dengan cepat memahami pengetahuan utama dari bagian ini, sebelum kita memberikan pengenalan cepat tentang bahasa pemrograman visualisasi kuantitatif penemu, mari kita lihat bagaimana strategi yang ditulis dalam bahasa visualisasi? dan memiliki pemahaman awal tentang konsep kata dalam bagian ini. Kami membuat contoh sederhana dengan harga penutupan lebih dari 50 garis rata-rata siklus, sebaliknya dengan harga penutupan kurang dari 50 garis rata-rata siklus:

Berinvestasi: Jika saat ini tidak ada posisi, dan harga penutupan lebih besar dari garis rata-rata 50 siklus.Berjualan dengan tangan kosong: Jika saat ini tidak ada posisi, dan harga penutupan kurang dari garis rata-rata 50 siklus.Banyak posisi: Jika saat ini memegang beberapa order, dan harga penutupan kurang dari 50 siklus rata-rata.Tangan kosong: Jika saat ini memegang pesanan kosong, dan harga penutupan lebih besar dari garis rata-rata 50 siklus.

Jika Anda menulis strategi di atas dalam bahasa visual, ini akan terlihat seperti ini (gambar di bawah):imgGambar 3-26 Interface Bahasa Visualisasi

Seperti yang ditunjukkan di atas, seluruh proses desain strategi adalah: mengatur jenis pasar, mendapatkan array K, mendapatkan rata-rata 50 siklus pada garis K, mendapatkan harga penutupan pada garis K, mendapatkan array kepemilikan, menilai status kepemilikan, menentukan apakah harga penutupan lebih besar atau lebih kecil dari garis rata, melakukan posisi terbuka atau pari.

Di sini perlu diperhatikan konsep array array, yang merupakan salah satu struktur data yang penting untuk setiap bahasa pemrograman. Array seperti wadah, di mana Anda dapat menyimpan serangkaian nilai. Misalnya: API panggilan untuk mendapatkan array K-string, yang akan mengembalikan hasil seperti ini:imgGambar 3-27 Array K

Kode dalam gambar di atas adalah suatu matriks garis K yang terdiri dari 3 data, yaitu data dari garis atas akar K, data dari garis atas akar K, data dari garis dasar K. Jika kita memberikan nilai dari matriks ini kepada variabel yang disebut array array, jika kita ingin mendapatkan data terakhir dari matriks ini (data dari garis dasar K), kita bisa menulisnya seperti ini (garis ke-4 atau ke-5):imgReferensi Arsitektur Gambar 3-28

Kita langsung menggunakan cara menulis kedua (garis ke-5), karena di dunia nyata ada ratusan atau ribuan akar dari data garis K, dan garis K baru terus bertambah. Jadi kita bisa mendapatkan panjang array terlebih dahulu, arr.length berarti mendapatkan panjang array, kemudian dikurangi dengan 1, yaitu data dari garis K terbaru. Jika kita ingin mendapatkan data dari akar K, maka dikurangi dengan 2.

Jika Anda berhati-hati, Anda mungkin akan menemukan bahwa data ini semua disertakan dengan tanda tanda. Jika Anda ingin mendapatkan harga penutupan di atas garis K, tambahkan tanda langsung di belakang.imgReferensi Arsitektur Gambar 3-29

Mengapa menggunakan bahasa pemrograman visualisasi?

Dengan konsep di atas, mari kita mulai dengan menulis program dalam bahasa Java yang akan mengekspor hello, world, untuk merasakan pemrograman tradisional, seperti gambar di bawah ini:imgGambar 3-30

Hanya dengan mengekspor sebuah string hello world! program, Anda akan menulis 5 baris kode. Saya yakin sebagian besar pemula, hanya tahu kata-kata bahasa Inggris dalam tanda kurung hello, world, dan lain-lain.

Apa itu pemrograman visual?

Pemrograman visualisasi berasal dari masa lalu dan bukan hal baru. Ide pemrograman yang terlihat seperti ini, dengan berbagai modul kontrol, hanya dengan cara drag, Anda dapat membangun logika kode, menyelesaikan desain strategi transaksi, dan prosesnya mirip dengan blok.imgGambar 33-31

Seperti yang ditunjukkan di atas, program yang sama, hanya membutuhkan satu baris kode dalam pemrograman visual blokly. Ini sangat mengurangi ambang batas pemrograman, terutama bagi para pedagang yang tidak mengerti pemrograman sama sekali, yang merupakan pengalaman operasi yang luar biasa.

Apa ciri bahasa pemrograman visualisasi?

blockly bukan mainan pemrograman, tetapi editor yang tulus, bukan sistem operasi yang menyamar sebagai editor, yang mendukung banyak elemen dasar pemrograman, seperti variabel, fungsi, array, dan blok kustom yang mudah diperluas, yang dapat Anda gunakan untuk menyelesaikan tugas pemrograman yang kompleks.

Pemrograman visualisasi yang diukur oleh penemu, juga dilakukan dengan alat visualisasi blockly yang dirilis oleh Google.imgGambar 33-32

Di dalam visualisasi programming interface yang diukur oleh penemu, dibangun ratusan modul perdagangan yang umum digunakan, dan akan ada lebih banyak modul perdagangan yang akan ditambahkan untuk mendukung ide-ide baru dan aplikasi baru para pedagang, yang akan dikembangkan dan dikelola bersama oleh para pengembang.

Meskipun sintaksnya sederhana, namun tidak kehilangan kinerja. Hampir dapat memenuhi sebagian besar pengembangan strategi transaksi kuantitatif sederhana. Baik dalam fungsionalitas, kecepatan, tidak kalah dengan bahasa pemrograman konvensional seperti Python, JavaScript, dll. Masa depan akan mendukung aplikasi keuangan yang kompleks secara logis.

Cara Menggunakannya

imgGambar 33-33

Menulis program hello, world

imgGambar 33-34

Jalankan, cetak hello, world, dan keluar.

imgGambar 33-35

Pengamatan

Di atas kita mulai dari strategi visualisasi yang lengkap, untuk pengantar dan karakteristik bahasa visualisasi, dan akhirnya bagaimana menggunakan bahasa visualisasi pada alat kuantitatif pencipta, dan dengan contoh menulis hello world. Namun perlu diingat bahwa sebagai langkah awal dalam transaksi kuantitatif, pemrograman visualisasi adalah pintu masuk yang bagus, tetapi saat ini hanya memiliki API terbatas yang terbuka pada alat kuantitatif pencipta, dan untuk transaksi kuantitatif, sebaiknya menggunakannya sebagai alat bantu untuk membantu Anda menyelesaikan logika strategi.

Bagian berikutnya

Pemrograman visualisasi tidak jauh berbeda dengan dasar bahasa pemrograman tingkat tinggi, bahkan di beberapa tempat bersifat universal, dan belajar pemrograman visualisasi juga jauh lebih jauh dari belajar pemrograman tingkat tinggi. Pada bagian berikut kita akan mempelajari kemajuan pemrograman visualisasi secara mendalam, termasuk bagaimana menulis modul perdagangan kuantitatif yang umum digunakan dalam bahasa visualisasi pada alat kuantitatif pencipta, dan bagaimana mengembangkan strategi perdagangan intraday yang lengkap.

PR setelah sekolah

1. Mengukur visualisasi antarmuka pemrograman, menggunakan API dan memahami apa yang dimaksud oleh penemu. 2. Menggunakan bahasa visualisasi untuk mendapatkan harga awal terbaru dan mengekspornya ke log.

3.5 Cara menerapkan strategi menggunakan bahasa visual

Rincian

Pada artikel sebelumnya, kami telah mempelajari pengantar dan karakteristik bahasa pemrograman visualisasi, contoh hello world, dan penulisan strategi dalam alat perdagangan kuantitatif pencipta. Dalam artikel ini, kami melanjutkan ke artikel berikutnya, mulai dari modul strategi dan indikator teknis yang umum digunakan, lalu ke logika strategi, langkah demi langkah untuk membantu Anda mewujudkan strategi perdagangan intraday yang lengkap.

Modul Strategi

Peningkatan Tahap

Peningkatan fase adalah perbandingan persentase dari perbedaan antara harga penutupan root K dengan harga penutupan N siklus sebelumnya. Sebagai contoh: menghitung berapa kenaikan 10 tahap K terakhir, kode dapat ditulis sebagai:imgGambar 33-36

Kode di atas dapat ditemukan bahwa cara pelaksanaan komputer membutuhkan sebuah loop logis yang lengkap, misalnya untuk menghitung kenaikan tahap 10 baris K terbaru, perlu dipecah menjadi beberapa langkah berikut: Pertama, komputer harus tahu dengan jelas jenis apa yang akan Anda jual, misalnya methanol di atas, kemudian atur kode kontrak: MA888. Setelah pengaturan kode kontrak selesai, Anda dapat mendapatkan data K-line dari kontrak tersebut.

Dengan data K-line, Anda dapat mendapatkan data rinci dari data K-line ini. Untuk menghitung kenaikan pada tahap statistik, Anda harus mendapatkan dua harga penutupan garis K, misalnya: harga penutupan garis K atas dan harga penutupan garis K ke-11 sebelumnya.

Akhirnya, berdasarkan harga penutupan dua garis K, perhitungkan rasio kenaikan fase. Setiap strategi di bawah ini memiliki karakteristik yang ditentukan oleh lingkaran logis dan sifat kondisional, memahami logika ini, pemrograman visualisasi juga menjadi lebih mudah.

Pengepungan

Pengepungan volume dapat dipahami sebagai kenaikan harga, peningkatan volume transaksi. Misalnya: jika harga penutupan pada garis K akar adalah 1,5 kali harga penutupan pada garis K 10 sebelumnya, yaitu 50% dalam 10 hari; volume transaksi lebih dari 5 kali rata-rata 10 garis K terakhir.imgGambar 33-37

Jumping dari lubang

Jump gap adalah situasi di mana harga terendah tertinggi dari dua garis K muncul tanpa terikat, terdiri dari dua garis K, dan Jump gap adalah harga referensi untuk titik dukungan dan tekanan di masa depan. Ketika Jump Gap muncul, dapat diasumsikan bahwa percepatan tren di sepanjang arah Jump Gap yang awalnya telah dimulai.imgGambar 33-38

Indikator teknologi yang umum digunakan

Rata-rata EMA

Dari sudut pandang statistik, rata-rata adalah rata-rata aritmatika harga harian, yaitu sebuah lintasan harga yang memiliki tren. Sistem rata-rata adalah alat teknis yang sering digunakan oleh sebagian besar analis, dari sudut pandang teknis adalah faktor yang mempengaruhi faktor harga psikologis analis teknis, faktor keputusan pembelian dan penjualan pikiran, merupakan alat referensi yang baik bagi analis teknis, penemu alat kuantifikasi mendukung berbagai jenis rata-rata, seperti gambar di bawah ini:imgGambar 33-39

Indikator MACD

Indikator MACD menggunakan garis rata-rata bergerak cepat (pendek) dan lambat (panjang) dan tanda-tanda agregat dan pemisahan mereka untuk melakukan operasi ganda yang mulus. Sementara MACD yang dikembangkan berdasarkan prinsip rata-rata bergerak, yang pertama menghilangkan kekurangan bahwa rata-rata bergerak sering mengeluarkan sinyal palsu, yang kedua mempertahankan efek rata-rata bergerak, sehingga indikator MACD memiliki karakteristik seperti tren linear, stabilitas, stabilitas, dan sebagainya.imgGambar 3-40

Indikator KDJ

Indikator KDJ mengintegrasikan gagasan momentum, indikator kuat dan indikator rata-rata bergerak, dan digunakan untuk mengukur seberapa jauh harga saham berubah dari kisaran normal harga. Tidak hanya harga penutupan yang dipertimbangkan, tetapi juga harga tertinggi dan terendah baru-baru ini, yang menghindari kelemahan dari ukuran fluktuasi yang sebenarnya hanya dengan mempertimbangkan harga penutupan. Cara penghitungannya adalah sebagai berikut:imgGambar 3-41

Menulis Strategi

Benjamin Graham, mentor Warren Buffett, pernah menulis dalam bukunya Investor yang Pintar, bahwa ada model perdagangan yang dinamika dari saham dan obligasi yang seimbang.

Model transaksi ini sangat sederhana: Investasikan 50% dari dana yang Anda miliki di dalam dana saham, dan investasi 50% lainnya di dalam dana obligasi; yaitu, saham dan obligasi masing-masing setengah.

Dengan melakukan rebalancing aset pada interval waktu yang tetap atau perubahan pasar, rasio aset saham dan aset obligasi kembali ke 1:1 awal. Itulah semua logika dari seluruh strategi, termasuk kapan membeli dan berapa banyak membeli. Cukup sederhana!

Dalam pendekatan ini, fluktuasi dana obligasi sebenarnya sangat kecil, jauh lebih rendah dari fluktuasi saham, sehingga obligasi di sini dianggap sebagai 'bond referensi', yaitu, menggunakan obligasi untuk mengukur apakah saham menghasilkan terlalu banyak atau terlalu sedikit.

Jika harga saham naik, maka nilai pasar saham akan lebih besar dari nilai pasar obligasi, dan ketika rasio nilai pasar keduanya melebihi ambang batas yang ditetapkan, maka posisi total akan disesuaikan kembali, menjual saham, dan membeli obligasi, sehingga rasio nilai pasar saham dan obligasi kembali ke 1:1 awal.

Sebaliknya, penurunan harga saham membuat nilai pasar saham kurang dari nilai pasar obligasi, dan ketika rasio nilai pasar keduanya melebihi ambang batas yang ditetapkan, posisi total disesuaikan kembali, membeli saham, dan menjual obligasi, sehingga rasio nilai pasar saham dan obligasi kembali ke 1:1 awal.

Dengan demikian, rasio antara saham dan obligasi yang seimbang secara dinamis cukup untuk menikmati buah-buahan dari pertumbuhan saham dan mengurangi volatilitas aset. Sebagai pelopor investasi nilai, Graham memberikan ide yang bagus.

Logika strategis

Berdasarkan nilai BTC saat ini, saldo akun menyimpan ¥5000 tunai dan 0,1 BTC, yaitu rasio awal dari nilai pasar tunai dan BTC adalah 1:1.

Jika harga BTC naik menjadi ¥6000, yaitu nilai pasar BTC lebih besar dari saldo akun, dan selisihnya lebih besar dari ambang batas yang ditetapkan, jual (<6000-5000) /6000/2 koin.

Jika harga BTC turun menjadi ¥ 4000, yaitu nilai pasar BTC kurang dari saldo akun, dan selisihnya lebih dari ambang batas yang ditetapkan, beli ¥ 5000-4000 / 4000 / 2 koin.

Dengan demikian, baik BTC naik atau turun, saldo akun selalu dinamis untuk menjaga nilai pasar BTC. Jika BTC turun, beli beberapa, dan kemudian kembali, jual beberapa lagi, seolah-olah tidak ada masalah.

Kondisi pembelian: Jika nilai pasar saham saat ini dikurangi saldo saat ini yang tersedia kurang dari minus 5% dari saldo saat ini yang tersedia, Anda akan membeli.Kondisi Penjualan: Jika nilai pasar saham saat ini dikurangi dengan saldo yang tersedia saat ini lebih besar dari 5% dari saldo yang tersedia saat ini, maka penjualan akan dilakukan.

Persyaratan yang diperlukan

  • Pasar saat ini
  • Aset saat ini
  • Nilai pasar total
  • Kekurangan Aset

Membuat Strategi

Langkah 1 dari Strategi Penulisan Visualisasi

Kami menghitung empat prasyarat penting dari strategi transaksi dan memberikan nilai masing-masing untuk variabel masing-masing. Untuk memvisualisasikan pemrograman, blok kode seperti ini.imgGambar 3-42

Perlu dicatat bahwa nilai pasar total koin adalah nilai pasar total jumlah koin yang saat ini dimiliki, yang dihitung dengan jumlah total koin yang saat ini dimiliki dikalikan dengan harga terbaru saat ini. Diferensi aset adalah nilai pasar total koin dikurangi saldo yang tersedia saat ini.

Langkah 2 dari Strategi Penulisan Visualisasi

Setelah penugasan syarat-syarat yang diperlukan telah selesai, maka perlu menulis logika transaksi. Ini juga tidak terlalu rumit seperti yang dibayangkan. Hanya saja logika strategi di atas dinyatakan dalam bentuk blok kode.

Dengan kata lain, jika aset kurang dari 5% dari saldo yang tersedia, maka aset akan dibeli, dan jika aset lebih dari 5% dari saldo yang tersedia, maka aset akan dijual.imgGambar 3-43

Seluruh strategi tampaknya telah ditulis, tetapi perlu diketahui bahwa program ini dijalankan dari atas ke bawah dan berhenti setelah pelaksanaan selesai. Namun strategi perdagangan kami bukanlah menjalankan kondisi transaksi sekali saja, tetapi melakukan pelaksanaan berulang berulang.

Dengan kata lain, program harus terus memeriksa apakah kondisi kebijakan telah dicapai, jika tidak, terus memeriksa. Pada saat ini, perlu menggunakan kalimat lingkaran lain, seperti di bawah:imgGambar 3-44

Uji Kembali Strategi

Strategi visualisasi tidak berbeda secara inheren dari strategi yang ditulis dalam bahasa pemrograman lainnya, juga mendukung beberapa siklus, melakukan tes data historis yang akurat, dan tentu saja mendukung perdagangan komoditas berjangka dan mata uang digital di dalam dan luar negeri. Berikut ini adalah informasi pengulangan dari strategi:imgGambar 3-45

Pada saat ini, strategi perdagangan yang lengkap belum selesai. Untuk menjaga pihak yang berwenang, strategi ini telah dibagikan di Strategy Square dan dapat disalin secara langsung.

Kesimpulan

Hukum 10.000 jam selalu ada, tetapi tidak mungkin untuk mengambil 10.000 jam lagi untuk trader berbasis nol. Jadi Anda harus memiliki tangga, dan untuk trader berbasis nol, pemrograman visualisasi yang diukur oleh penemu adalah tangga untuk masuk cepat.

Dengan menggunakan pemrograman visual, Anda tidak perlu mengingat nama-nama tata bahasa dan metode, hanya cukup dengan menelusuri modul fitur dan menemukan apa yang Anda inginkan. Ini juga merupakan tujuan awal dari pencipta kuantifikasi, yang bertujuan untuk membantu lebih banyak pemula kuantifikasi menurunkan ambang batas masuk, meningkatkan minat kuantifikasi, dan semua orang dapat menjadi pedagang kuantifikasi!

Namun, dengan kata lain, pemrograman visualisasi sebagai pintu masuk ke kuantitas tidak ada masalah, tetapi juga memiliki keterbatasan sendiri, seperti tidak dapat mengembangkan strategi perdagangan yang terlalu kompleks dan terlalu rumit.

Bagian berikutnya

Dari segi spesialisasi transaksi kuantitatif, baik bahasa Mac maupun bahasa visualisasi hanyalah bahasa transisi ke dunia transaksi kuantitatif. Karakteristik bahasa mereka juga menentukan keterbatasan dalam pengembangan strategi transaksi kuantitatif, dan beberapa strategi yang rumit tidak mungkin terwujud. Jadi pada bagian berikutnya kami akan membawa Anda belajar JavaScript, yang merupakan bahasa pemrograman tingkat tinggi resmi dan merupakan jalan utama Anda untuk maju ke perdagangan kuantitatif tingkat tinggi.

PR setelah sekolah

1. mencoba untuk mewujudkan indikator Blink-Blink dengan bahasa visualisasi. 2. Cobalah untuk menyelesaikan strategi perdagangan dengan modul perdagangan di bagian ini.

Bab 4: Strategi Transaksi Dalam Bahasa Pemrograman Mainstream

4.1 Perkenalan cepat bahasa JavaScript

Rincian

Sebagai pendatang baru dalam perdagangan kuantitatif di masa depan, Anda tidak akan pernah cukup belajar bahasa sederhana. Bahasa Ma dan bahasa visualisasi yang diciptakan oleh para penemu alat kuantitatif, meskipun dapat membawa Anda ke dalamnya, karena sifat bahasa mereka, ada banyak keterbatasan dalam pengembangan strategi. Jadi, untuk mendapatkan pijakan dalam perdagangan kuantitatif, Anda harus belajar bahasa pemrograman formal.

Mengapa belajar bahasa JavaScript

Bahasa JavaScript memiliki kinerja dan efisiensi pelaksanaan yang lebih kuat dibandingkan dengan bahasa visualisasi. Dan dalam hal pengembangan kebijakan, bahasa JavaScript jauh lebih fleksibel daripada bahasa visualisasi, misalnya: jika Anda ingin mengembangkan sebuah kebijakan set, maka tidak mungkin menggunakan bahasa visualisasi karena modulnya terbatas, tidak mendukung kebijakan set yang mirip, sedangkan bahasa JavaScript dapat dengan mudah menang.

Selain itu, bahasa JavaScript lebih sederhana dan elegan daripada bahasa visualisasi, misalnya: bahasa visualisasi memiliki 10 baris kode, mungkin 5 baris yang dapat ditulis dengan JavaScript. Dalam beberapa hal, bahasa visualisasi hanyalah versi teks dari JavaScript, yang kode eksekusinya dan logika hampir sama dengan JavaScript. Jika Anda mempelajari bahasa visualisasi, maka belajar JavaScript akan sangat mudah.

Bahasa JavaScript

JavaScript adalah bahasa pemrograman tingkat tinggi formal. Ia baik sebagai bahasa pengantar untuk belajar pemrograman dan juga sebagai bahasa kerja pengembangan sehari-hari. Ia adalah salah satu bahasa komputer yang paling menjanjikan dan paling cerah di masa depan, dan memiliki dominasi yang tak tergoyahkan di sisi browser. Meskipun ia terkenal sebagai pengembangan halaman web, ia juga digunakan di banyak lingkungan non-browser, misalnya: server, PC, mobile, dll, tentu saja juga dapat melakukan transaksi kuantitatif!

Strategi Lengkap

Untuk membantu Anda dengan cepat memahami pengetahuan utama dalam bagian ini, sebelum kita memperkenalkan pengembang bahasa JavaScript kuantitatif dengan cepat, kita harus memiliki pemahaman awal tentang konsep kata dalam bagian ini.

Berinvestasi: Jika saat ini tidak ada posisi, dan garis rata 5 siklus lebih besar dari garis rata 20 siklus.Berjualan dengan tangan kosong: Jika saat ini tidak ada posisi, dan garis rata 5 siklus lebih kecil dari garis rata 20 siklus.Banyak posisi: Jika saat ini memegang beberapa order, dan rata-rata 5 siklus kurang dari rata-rata 20 siklus.Tangan kosong: Jika saat ini memegang pesanan kosong, dan rata-rata 5 siklus lebih besar dari rata-rata 20 siklus.

Jika ditulis dalam kode bahasa JavaScript, ini akan terlihat seperti ini:imgGambar 4-1

Kode di atas adalah sebuah strategi perdagangan kuantitatif yang lengkap yang ditulis dalam bahasa JavaScript. Kode ini dapat berjalan secara real time dan secara otomatis melakukan transaksi. Dari segi kuantitas kode, bahasa ini lebih sederhana daripada bahasa visual. Proses desain keseluruhan strategi adalah: mengatur jenis pasar, mendapatkan data K-line, mendapatkan informasi penyimpanan, menghitung logika perdagangan, membeli dan menjual pesanan.

Pengidentifikasi

Semua (variabel, nama fungsi, dan operator) dalam JavaScript ditulis dengan huruf kecil, yang berarti nama variabel test dan nama variabel Test adalah dua variabel yang berbeda. Karakter pertama dari identifier (nama variabel, fungsi, atribut, parameter fungsi) harus huruf, tanda garis bawah (_) atau dolar ($), dan karakter berikutnya dapat berupa angka, seperti yang ditunjukkan di bawah:imgGambar 4-2

Komentar

Catatan terdiri dari catatan baris tunggal dan catatan tingkat blok. Catatan baris tunggal dimulai dengan dua tanda irama, dan catatan blok dengan tanda irama dan bintang./) dimulai dengan bintang dan tanda miring ((/) diakhiri dengan gambar berikut:imgGambar 3 sampai 4

Pengucapan

Setiap kalimat memiliki akhir tanda baca; meskipun ini tidak diperlukan, kami menyarankan untuk tidak melewatkannya kapan saja. Menambah tanda baca dapat meningkatkan kinerja kode dalam beberapa kasus, seperti yang ditunjukkan di bawah ini:imgGambar 4-4

Variabel

Variabel dapat menyimpan data dari jenis apa pun, dengan menggunakan operator var saat membuat variabel, setelah nama variabel. Anda juga dapat mengatur nilai variabel saat mendefinisikan variabel. Setelah variabel dibuat, Anda tidak perlu menggunakan operator var untuk mengatur nilai variabel lagi, seperti yang ditunjukkan di bawah ini:imgGambar 4-5

Data

JavaScript memiliki 5 jenis data, yaitu: tidak didefinisikan (Undefined), obyek kosong (Null), nilai boolean (Boolean), angka (Number), string (String), seperti yang ditunjukkan pada gambar berikut:imgGambar 4-6

Undefined hanya memiliki satu nilai, yaitu specialundefined, yang mewakili nilai yang belum ditetapkan. Misalnya kita hanya mendefinisikan satu variabel dan tidak menetapkan nilai untuk variabel tersebut, maka nilai dari variabel tersebut adalahundefined.

Null hanya memiliki satu nilai, yaitu karakter khusus yang mewakili nilai yang ditetapkan sebagai kosong. Misalnya, jika kita membuat suatu variabel dan kemudian menetapkan nilai variabel tersebut sebagai karakter null, maka nilai yang dikembalikan oleh variabel tersebut adalah karakter null.

Boolean memiliki dua nilai, yaitu true dan false, true mewakili benar dan false mewakili palsu. Perlu dicatat bahwa true dan false dituliskan dalam huruf kecil.

Number adalah jenis angka, termasuk: bilangan positif, bilangan negatif, bilangan bulat, bilangan kecil, dll. Selain itu, NaN adalah angka khusus yang khusus untuk menunjukkan keadaan di mana nilai tidak dikembalikan, misalnya: 1 dibagi 0, kembali NaN.

String dapat dipahami sebagai kata, berisi bahasa Cina dan Inggris, dapat dibuat dengan tanda kutip tunggal atau tanda kutip ganda. Misalnya: fmz atau penemu kuantum.

Objek

Objek dapat dipahami sebagai wadah yang menyimpan berbagai jenis data, properti dan nilai yang sesuai di dalamnya. Objek ini dapat dibuat terlebih dahulu melalui operator new.imgGambar 4-7.

Arsitektur

Array juga merupakan wadah untuk menyimpan berbagai jenis data, kecuali bahwa elemen dalam wadah disusun dari kiri ke kanan, dengan elemen pertama adalah 0, elemen kedua adalah 1, dan sebagainya. Selain itu, Array JavaScript dapat menyimpan jenis data apa pun, seperti yang ditunjukkan di bawah:imgGambar 4-8.

Fungsi

Fungsi dalam JavaScript tidak berbeda secara esensial dengan fungsi di sekolah menengah kita, Anda dapat memahami apa yang ditransfer, apa yang diekspor melalui perhitungan fungsi, seperti yang ditunjukkan di bawah ini:imgGambar 4-9

Operator

JavaScript memiliki beberapa operator, yaitu operator aritmatika, operator perbandingan, operator logis. Operator aritmatika adalah operasi matematika untuk menambahkan atau mengurangi perkalian. Operator perbandingan dapat membandingkan dua nilai apakah lebih kecil atau lebih kecil. Operator logis terutama terdiri dari: logis dan, logis atau, tidak logis; seperti yang ditunjukkan di bawah ini:imgGambar 4-10 Perlu dicatat bahwa: && adalah logis dengan, yang berarti dan . adalah logis atau, yang berarti atau . ! tidak logis, yang berarti atau : Y&&Y adalah ketika semua kondisi adalah ytrue y, maka kondisi akhir adalah ytrue y.

Prioritas

Jika ada ekspresi 100* ((10-1) / ((10+5)), langkah mana yang harus dihitung terlebih dahulu? Matematika sekolah menengah memberi tahu kita: (1) Jika operasi tingkat yang sama, biasanya menghitung dari kiri ke kanan. (2) Jika ada pengurangan dan perkalian, perkalian terlebih dahulu.imgGambar 4-11

Pernyataan bersyarat

Biasanya ketika menulis kode, Anda selalu perlu melakukan tindakan yang berbeda untuk keputusan yang berbeda. Anda dapat menggunakan pernyataan kondisional dalam kode untuk menyelesaikan tugas ini. Dalam JavaScript, kita dapat menggunakan pernyataan kondisional berikut: if statement - hanya menggunakan if statement untuk menjalankan kode jika kondisi yang ditentukan adalah true if...else statement - Mengeksekusi kode ketika kondisi adalah true, mengeksekusi kode lain ketika kondisi adalah false if...else if...else statement - Gunakan statement ini untuk memilih salah satu dari beberapa blok kode untuk dijalankan Kata ganti - Gunakan kata ini untuk memilih salah satu dari beberapa blok kode untuk dijalankan

kalimat if

Kode ini hanya akan dieksekusi jika kondisi yang ditentukan adalah true. Jika menggunakan huruf kecil jika menggunakan huruf besar jika menggunakan huruf besar akan menghasilkan kesalahan JavaScript! Seperti yang ditunjukkan di bawah:imgGambar 4-12#

if...else kalimat

Mengeksekusi kode ketika kondisi adalah true, dan menjalankan kode lain ketika kondisi adalah false, seperti yang ditunjukkan di bawah ini:imgGambar 4-13

untuk berputar

Kadang-kadang kita perlu mendapatkan data K-line dari hari-hari terakhir, kita hanya perlu mengambil data dari K-line array, berdasarkan lokasi data K-line, maka menggunakan loop for sangat mudah, seperti yang ditunjukkan di bawah ini:imgGambar 4-14

while loop

Kita semua tahu bahwa pasar terus berubah, jika Anda ingin mendapatkan array K terbaru, Anda harus terus menjalankan kode yang sama berulang kali, maka gunakan loop whilex, yang akan terus mendapatkan array K terbaru selama kondisi yang ditentukan benar.imgGambar 4-15

kalimat break dan kalimat continue

Sebuah loop memiliki syarat, yaitu bahwa loop akan melakukan sesuatu secara berulang-ulang hanya ketika kondisi ini adalah false false, dan loop akan berakhir sampai kondisi ini adalah false false. Namun, break statements dapat melompat dari loop secara langsung dalam proses pelaksanaan loop; continue statements dapat menghentikan suatu loop dan melanjutkan ke loop berikutnya, seperti yang ditunjukkan di bawah ini:imgGambar 4-16

kalimat return

return statement akan menghentikan fungsi dan mengembalikan nilai dari fungsi tersebut. return statement hanya dapat muncul di dalam tubuh fungsi, dan muncul di tempat lain dalam kode akan menyebabkan kesalahan tata bahasa!imgGambar 4-17

Arsitektur Strategi CTA

Dalam alat kuantifikasi penemu, jika menulis kebijakan dalam bahasa JavaScript akan sangat mudah, resmi membangun kerangka kebijakan standar, seperti yang ditunjukkan di bawah ini:imgGambar 4-18

Seperti kode di gambar di atas, ini adalah kerangka kerja strategi standar, selain dapat mengubah kerangka kerja kode jenis komoditas berjangka, yang lain adalah format tetap. Keuntungan terbesar dari menulis strategi menggunakan kerangka kerja adalah bahwa Anda hanya perlu menulis strategi logika dan sudah selesai.

Pengamatan

Ini adalah pengantar singkat bahasa JavaScript, dan setelah belajar, Anda dapat memprogram strategi transaksi kuantitatif. Jika Anda perlu menulis strategi yang lebih kompleks, Anda dapat merujuk pada dokumentasi API bahasa JavaScript.

Bagian berikutnya

Trading intraday juga merupakan mode perdagangan yang tidak menyimpan saham semalam, sehingga berisiko rendah terhadap volatilitas pasar, sehingga dapat disesuaikan pada saat terjadi pasar yang tidak menguntungkan. Setelah mempelajari bagian ini, kita akan menulis strategi perdagangan intraday kuantitatif yang dapat dilakukan.

PR setelah sekolah

1. Cobalah untuk mendapatkan data K-line historis menggunakan bahasa JavaScript dalam alat kuantifikasi penemu. 2. Cobalah menulis kode strategi di awal bagian ini, dan tulis komentar.

4.2 Cara melakukan transaksi strategis dengan bahasa JavaScript

Rincian

Dalam artikel sebelumnya, kami menjelaskan bagian-bagian penting dari implementasi strategi perdagangan dari segi pengantar bahasa JavaScript, tata bahasa dasar, kerangka strategi CTA, dan lain-lain. Dalam artikel ini, kami akan melanjutkan materi sebelumnya, dari modul strategi yang umum digunakan, indikator teknis, dan langkah demi langkah untuk membantu Anda mewujudkan strategi perdagangan kuantitatif sehari-hari yang layak.

Penjelasan tentang strategi

Bollinger Bands, juga dikenal sebagai Bollinger Tunnel, atau BOLL, adalah salah satu indikator teknis yang paling umum digunakan. Ini diciptakan oleh John Bollinger pada tahun 1980an. Secara teori, harga selalu bergeser naik turun di sekitar nilai dalam kisaran tertentu.

Cara penghitungannya adalah dengan menggunakan prinsip statistik, pertama-tama menghitung selisih standar harga aluminium untuk suatu periode waktu, kemudian dengan garis rata ditambah/dikurangi 2 kali selisih standar, interval kepercayaan aluminium harga yang diperoleh. Format dasarnya terdiri dari tiga jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur jalur

Dengan menggunakan konsep deviasi standar, lebar saluran BOLL akan melakukan penyesuaian dinamis sesuai dengan pergerakan harga dalam waktu dekat. Jika turun-temurunnya kecil, saluran BOLL akan menjadi lebih sempit; jika turun-temurunnya besar, saluran BOLL akan menjadi lebih lebar. Jika saluran BOLL menjadi sempit dari lebar, harga akan kembali ke rata-rata secara bertahap. Jika saluran BOLL menjadi sempit dari lebar, berarti pasar mulai berubah, jika harga naik, menunjukkan peningkatan daya beli, jika harga turun, menunjukkan peningkatan daya jual.

Metode Perhitungan Indikator Pinggang

Di antara semua indikator teknis, metode penghitungan pita Brin adalah salah satu yang paling rumit, yang memperkenalkan konsep standar deviasi dalam statistik, yang melibatkan penghitungan garis tengah (MB), garis atas (UP) dan garis bawah (DN).

Jalur tengah= rata-rata bergerak sederhana untuk periode waktu NPerjalanan= titik tengah + K × N perbedaan standarJalur bawah= titik tengah - standar deviasi K × NimgGambar 4-19

Logika strategis

Ada banyak cara untuk menggunakan garis Brin, yang dapat digunakan sendiri-sendiri atau juga dapat digunakan bersama dengan indikator lain. Dalam tutorial ini, kita akan menggunakan salah satu metode penggunaan garis Brin yang paling sederhana. yaitu: ketika harga keluar dari bawah ke atas, yaitu melewati garis tekanan di atas, kita berpikir bahwa kekuatan multilateral semakin kuat, gelombang bullish telah terbentuk, dan sinyal beli terbuka dihasilkan;


Berkaitan

Lebih banyak

Hailhydra2Artikel yang bagus!

Kuantitas Ruangantanda