3.5 Visual Pemrograman bahasa penerapan strategi perdagangan

Penulis:Kebaikan, Dibuat: 2019-04-25 12:21:22, Diperbarui: 2019-04-27 11:53:56

Ringkasan

Dalam bagian sebelumnya, kita belajar tentang pengenalan dan karakteristik alat pemrograman visual, contoh " hello world ", dan strategi menulis di platform perdagangan FMZ Quant untuk menjelaskan premis implementasi strategi perdagangan. Dalam artikel ini, kita terus menulis strategi dengan modul strategi biasa dan indikator teknis, dan kemudian beralih ke logika strategi, langkah demi langkah untuk membantu Anda mencapai strategi perdagangan intraday yang lengkap.

Modul Strategi

Peningkatan tahap

1, persentase tahap rasing K-line dihitung dengan menutup harga garis K saat ini dengan perbedaan harga penutupan sebelumnya periode N. Misalnya: Menghitung tahap rasing 10 K garis terakhir, dapat ditulis:

img

Dalam kode di atas, cara komputer untuk mengeksekusi strategi membutuhkan siklus lengkap, misalnya untuk menghitung 10 k line step increment terbaru, Anda perlu dibagi menjadi langkah-langkah berikut:

Pada titik 1, komputer harus tahu dengan jelas jenis periode k baris yang ingin Anda perdagangan.

2, Setelah mengatur kode kontrak, Anda bisa mendapatkan data K baris kontrak.

3, Dengan data K-line, Anda dapat mendapatkan data rinci dari setiap garis K tertentu dari itu.

4, Untuk mendapatkan data statistik peningkatan tahap, pertama-tama harus memperoleh dua harga penutupan garis K, misalnya: data harga penutupan garis K sebelumnya dan data harga penutupan garis K ke-11 sebelumnya.

5, Akhirnya, menghitung kenaikan tahap dari harga penutupan 2 K-line ini.

Masing-masing strategi berikut akan memiliki pernyataan logika yang jelas seperti di atas, setelah Anda memahami pernyataan logika, pemrograman visual menjadi jauh lebih mudah.

Peningkatan harga dengan peningkatan volume perdagangan yang besar

Misalnya: Jika harga penutupan garis K saat ini adalah 1,5 kali harga penutupan 10 garis K sebelumnya, yang berarti dalam 10 hari, harga telah naik 50%; dan volume perdagangan juga meningkat lebih dari 5 kali dari 10 garis K sebelumnya. dapat ditulis:

img

Perbedaan harga melompat

Kesenjangan harga adalah kasus di mana harga tertinggi dan terendah dari dua garis K tidak terhubung. Ini terdiri dari dua garis K, dan kesenjangan harga adalah harga referensi dari titik dukungan dan tekanan dalam pergerakan harga di masa depan. Ketika kesenjangan harga terjadi, dapat diasumsikan bahwa akselerasi di sepanjang tren dengan arah asli telah dimulai. dapat ditulis:

img

Indikator analisis teknis umum

  • Rata-rata bergerak

img

Dari sudut pandang statistik, rata-rata bergerak adalah rata-rata aritmatika harga harian, yang merupakan lintasan harga tren. Sistem rata-rata bergerak adalah alat teknis umum yang digunakan oleh sebagian besar analis. Dari sudut pandang teknis, ini adalah faktor yang mempengaruhi harga psikologis analis teknis. Faktor pengambilan keputusan berpikir perdagangan adalah alat referensi yang baik untuk analis teknis. Alat FMZ Quant mendukung banyak jenis rata-rata bergerak yang berbeda, seperti yang ditunjukkan di bawah ini:

img

  • Indikator MACD

img

Indikator MACD adalah operasi perataan ganda yang menggunakan rata-rata bergerak cepat (jangka pendek) dan lambat (jangka panjang) dan agregasi dan pemisahan mereka. MACD yang dikembangkan sesuai dengan prinsip rata-rata bergerak menghilangkan kekurangan bahwa rata-rata bergerak sering mengeluarkan sinyal palsu, dan juga mempertahankan efek dari aspek baik lainnya. Oleh karena itu, indikator MACD memiliki tren dan stabilitas rata-rata bergerak. Ini digunakan untuk mempelajari waktu pembelian dan penjualan saham dan memprediksi perubahan harga saham. Anda dapat menggunakannya sebagai berikut:

img

  • Indikator KDJ

Indikator KDJ adalah indikator teknis yang digunakan untuk menganalisis dan memprediksi perubahan tren saham dan pola harga dalam aset yang diperdagangkan.

KDJ adalah bentuk turunan dari Stochastic Oscillator Indicator dengan satu-satunya perbedaan memiliki garis tambahan yang disebut garis J. Nilai garis %K dan %D menunjukkan apakah sekuritas terlalu banyak dibeli (lebih dari 80) atau terlalu banyak dijual (di bawah 20).

img

Menulis strategi

Mentor Warren Buffett, Benjamin Graham, pernah menyebutkan dalam bukunya <> sebuah model perdagangan di mana saham dan obligasi seimbang secara dinamis.

img

  • Model perdagangan ini sangat sederhana:

50% dari dana di tangan diinvestasikan dalam dana ekuitas, dan 50% yang tersisa diinvestasikan dalam dana obligasi.

Re-balancing posisi aset berdasarkan interval tetap atau perubahan pasar mengembalikan rasio aset saham terhadap aset obligasi ke 1:1 awal.

Ini adalah seluruh logika dari seluruh strategi, termasuk kapan untuk membeli dan menjual, dan berapa banyak untuk membeli dan menjual.

No. 2

Dalam metode ini, volatilitas dana obligasi sebenarnya sangat kecil, jauh di bawah volatilitas saham, sehingga obligasi digunakan di sini sebagai reference anchors, yaitu, menggunakan obligasi untuk mengukur apakah saham meningkat terlalu banyak atau terlalu sedikit.

Jika harga saham naik, nilai pasar saham akan lebih besar dari nilai pasar obligasi. Ketika rasio nilai pasar dari keduanya melebihi batas yang ditetapkan, total posisi akan disesuaikan kembali, saham akan dijual, dan obligasi akan dibeli untuk membuat rasio nilai saham ke nilai obligasi untuk mengembalikan ke 1:1 awal.

img

Sebaliknya, jika harga saham turun, nilai pasar saham akan kurang dari nilai pasar obligasi. Ketika rasio nilai pasar dari keduanya melebihi batas, total posisi akan disesuaikan kembali, saham akan dibeli, dan obligasi akan dijual untuk membuat rasio kapitalisasi pasar nilai obligasi terhadap nilai saham untuk mengembalikan ke 1:1 awal.

Dengan cara ini, rasio antara keseimbangan dinamis saham dan obligasi cukup untuk menikmati keuntungan dari pertumbuhan saham dan mengurangi volatilitas aset.

Karena ini adalah strategi yang lengkap dan bersama, mengapa kita tidak menggunakannya di pasar cryptocurrency?

No.3

  • Blockchain Aset Strategi Balance Dinamis dalam BTC

Logika strategi

Menurut nilai BTC saat ini, saldo rekening dipertahankan sebesar $5000 tunai dan 0,1 BTC, yaitu rasio awal uang tunai terhadap nilai pasar BTC adalah 1:1.

Jika harga BTC naik menjadi $6000, yaitu, nilai pasar BTC lebih besar dari saldo akun, dan perbedaan antara keduanya melebihi ambang batas yang ditetapkan, maka (6000-5000)/6000/2 koin dijual.

Jika harga BTC turun ke $ 4000, yaitu nilai pasar BTC kurang dari saldo akun dan perbedaan antara keduanya melebihi ambang batas yang ditetapkan, beli koin (5000-4000)/4000/2. Ini berarti bahwa BTC telah mengalami depresiasi dan kita perlu membeli BTC kembali.

Dengan cara ini, terlepas dari apakah BTC dihargai atau terdepresiasi, saldo rekening dan nilai pasar BTC selalu tetap dinamis sama.

  • Kondisi pembelian: Jika nilai pasar posisi saat ini dikurangi saldo yang tersedia saat ini kurang dari 5% dari saldo yang tersedia saat ini, buka posisi untuk membeli.

  • Kondisi penjualan: Jika nilai pasar posisi saat ini dikurangi saldo yang tersedia saat ini lebih dari 5% dari saldo yang tersedia saat ini, buka posisi untuk menjual.

Persyaratan

  • Harga pasar saat ini

  • Aktif saat ini

  • Nilai pasar total koin

  • Perbedaan nilai uang fiat dan koin

Pembangunan Strategi

  • Pemrograman visual Langkah 1

Kami menghitung empat kondisi premis di atas, dan menugaskannya ke setiap variabel yang berbeda. blok kode seperti ini:

img

Perhatikan bahwa nilai total koin adalah nilai pasar total koin yang saat ini dimiliki. Metode perhitungan adalah bahwa jumlah total posisi saat ini dikalikan dengan harga terbaru. Perbedaan aset adalah nilai pasar total koin dikurangi saldo yang tersedia saat ini.

  • Pemrograman visual Langkah 2

Setelah penugasan kondisional prasyarat selesai, Anda perlu menulis logika perdagangan. Ini tidak sesumit yang tampak. Ini tidak lebih dari logika strategi di atas, yang dinyatakan dalam bentuk blok kode.

Artinya, Jika nilai pasar posisi saat ini dikurangi saldo yang tersedia saat ini kurang dari 5% dari saldo yang tersedia saat ini, buka posisi untuk membeli. Jika nilai pasar posisi saat ini dikurangi saldo yang tersedia saat ini lebih besar dari 5% dari saldo yang tersedia saat ini, buka posisi untuk menjual. seperti yang ditunjukkan di bawah ini:

img

Seluruh strategi tampaknya telah ditulis, tetapi perlu diingat bahwa program dijalankan dari atas ke bawah dan berhenti setelah pelaksanaan.

Dengan kata lain, program perlu terus-menerus memeriksa apakah kondisi strategi telah tercapai, dan jika demikian, eksekusi logika, jika tidak akan terus memeriksa.

img

Strategi backtest

Strategi pemrograman visual tidak secara fundamental berbeda dari strategi yang ditulis dalam bahasa pemrograman lainnya. Ini juga mendukung pengujian data historis dari berbagai siklus dan presisi. Berikut adalah informasi backtesting untuk strategi ini:

img

Pada titik ini, strategi trading lengkap dianggap selesai. Untuk mengurus orang-orang yang masih bingung, strategi ini telah dibagikan di halaman FMZ Quant Strategy Square dan dapat langsung disalin ke dasbor Anda.

Akhir

Hukum 10.000 jam (Untuk menjadi pro pada pekerjaan tertentu) selalu ada, tetapi untuk trader berbasis nol, tidak mungkin menghabiskan 10.000 jam untuk meneliti bidang baru.

Dengan pemrograman visual, Anda tidak perlu mengingat tulisan tata bahasa bahasa pemrograman tradisional ketika Anda menggunakan modul fungsi. Platform FMZ Quant dimaksudkan untuk membantu lebih banyak pedagang kuantitatif untuk menurunkan hambatan masuk dan meningkatkan minat mereka.

Namun, pemrograman visual sebagai batu loncatan untuk masuk kuantitatif benar-benar oke, tetapi juga memiliki keterbatasan sendiri, seperti ketidakmampuan untuk mengembangkan strategi perdagangan yang terlalu kompleks dan terlalu halus.

Pemberitahuan bagian berikutnya

Dari profesionalisme perdagangan kuantitatif, apakah itu bahasa M atau pemrograman visual, mereka semua hanyalah bahasa transisi yang memasuki dunia perdagangan kuantitatif. Karakteristik linguistik mereka menentukan keterbatasan dalam pengembangan strategi perdagangan, sejumlah strategi kompleks kurang mungkin dicapai. Bagian berikut akan menunjukkan kepada Anda cara mempelajari bahasa JavaScript, ini adalah bahasa pemrograman tingkat tinggi formal, ini adalah jalan Anda melangkah ke perdagangan kuantitatif senior.

Latihan setelah sekolah

  1. Cobalah untuk menerapkan indikator Bollinger Bands dalam pemrograman visual.

  2. Cobalah untuk menyelesaikan strategi perdagangan menggunakan modul perdagangan di bagian ini.


Lebih banyak