Asas-asas Algoritma Perdagangan: Konsep dan Contoh

Asas-asas Perdagangan Algoritma: Konsep dan Contoh

Algoritma adalah satu set tertentu instruksi yang jelas yang ditujukan untuk menjalankan tugas atau proses.

Perdagangan algoritma (perdagangan automatik, perdagangan kotak hitam, atau perdagangan algo) adalah proses menggunakan komputer yang diprogramkan untuk mengikuti satu set arahan yang ditetapkan untuk meletakkan perdagangan untuk menjana keuntungan pada kelajuan dan kekerapan yang mustahil untuk pedagang manusia. Set peraturan yang ditetapkan adalah berdasarkan masa, harga, kuantiti atau mana-mana model matematik. Selain peluang keuntungan untuk peniaga, perdagangan algo menjadikan pasaran lebih cair dan menjadikan perdagangan lebih sistematik dengan menghalang kesan emosi manusia terhadap aktiviti perdagangan. (Untuk maklumat lanjut, lihat Memilih Perisian Perdagangan Algoritma Kanan .)

Anggap peniaga mengikuti kriteria dagangan yang mudah ini:

  • Beli 50 saham saham apabila purata 50 hari bergerak melebihi purata bergerak 200 hari
  • Jual saham saham apabila purata 50-hari bergerak berada di bawah purata bergerak 200-hari

Menggunakan set dua arahan mudah ini, mudah untuk menulis program komputer yang secara automatik akan memantau harga saham (dan petunjuk purata bergerak) dan tempat perintah membeli dan menjual apabila syarat-syarat yang ditetapkan dipenuhi. Pedagang tidak lagi perlu menyimpan jam tangan untuk harga dan graf langsung, atau dimasukkan ke dalam pesanan secara manual. Sistem perdagangan algoritma secara automatik melakukannya untuknya, dengan betul mengenal pasti peluang perdagangan. (Untuk lebih banyak purata bergerak, lihat Rata-rata Bergerak Mudah Buat Aliran Berdiri .)

[Jika anda ingin mengetahui lebih lanjut tentang strategi terbukti dan strategi yang akhirnya dapat dikerjakan dalam sistem perdagangan aloritma, periksa kursus Investopedia Academy Investopedia menjadi pedagang Hari.]

Manfaat Dagangan Algoritma

Algo-trading menyediakan faedah-faedah berikut:

  • Dagangan dilaksanakan pada harga terbaik
  • Penempatan pesanan perdagangan yang cepat dan tepat (dengan demikian kemungkinan pelaksanaan yang tinggi pada tahap yang diinginkan)
  • , untuk mengelakkan perubahan harga yang ketara
  • Mengurangkan kos urus niaga (lihat contoh kekurangan pelaksanaan di bawah)
  • Pemeriksaan automatik serentak pada pelbagai keadaan pasaran
  • Mengurangkan risiko kesalahan manual dalam meletakkan dagangan
  • Backtest algoritma yang berasaskan pada data masa nyata dan masa nyata yang ada
  • Mengurangkan kemungkinan kesilapan oleh peniaga manusia berdasarkan faktor emosi dan psikologi

Sebahagian besar perdagangan hari ini adalah perdagangan frekuensi tinggi (HFT), yang cuba memanfaatkan untuk meletakkan sejumlah besar pesanan dengan kelajuan yang sangat laju di beberapa pasaran dan pelbagai parameter keputusan, berdasarkan pada arahan pra-diprogramkan.(Untuk lebih banyak perdagangan frekuensi tinggi, lihat Strategi dan Rahsia Syarikat Frekuensi Tinggi (HFT) .)

Perdagangan Algo digunakan dalam pelbagai bentuk aktiviti perdagangan dan pelaburan, termasuk:

  • Pelabur jangka sederhana hingga panjang atau membeli firma sampingan (dana pencen, dana bersama, syarikat insurans) yang membeli dalam stok dalam kuantiti yang besar tetapi tidak mahu mempengaruhi harga stok dengan pelaburan jumlah besar yang diskrit.
  • Pedagang jangka pendek dan menjual peserta sampingan (pembuat pasaran, spekulator, dan arbitrageurs) mendapat manfaat daripada pelaksanaan perdagangan automatik; Di samping itu, bantuan algo-trading dalam mencipta kecairan yang mencukupi untuk penjual di pasaran.
  • Peniaga sistematik (pengikut trend, pedagang pasangan, dana lindung nilai, dan sebagainya) mendapati lebih cekap untuk memprogram peraturan perdagangan mereka dan biarkan program perdagangan secara automatik.

Perdagangan algoritma menyediakan pendekatan yang lebih sistematik untuk perdagangan aktif daripada kaedah berdasarkan intuisi atau naluri trader manusia.

Strategi Dagangan Algoritma

Apa-apa strategi untuk perdagangan algoritma memerlukan peluang yang dikenal pasti yang menguntungkan dari segi pendapatan yang lebih baik atau pengurangan kos. Strategi dagangan umum yang digunakan dalam dagangan algo:

  • Trend Following Strategies:

Strategi perdagangan algoritma yang paling biasa mengikuti trend dalam bergerak purata, penjejakan saluran, pergerakan harga harga dan penunjuk teknikal yang berkaitan. Ini adalah strategi yang paling mudah dan mudah dilaksanakan melalui perdagangan algoritma kerana strategi ini tidak melibatkan ramalan atau ramalan harga. Dagangan dimulakan berdasarkan berlakunya trend yang diingini, yang mudah dan mudah diterapkan melalui algoritma tanpa mendapat kerumitan analisis ramalan. Contoh yang disebutkan di atas 50 dan 200 hari bergerak purata adalah strategi popular berikut strategi. (Untuk lebih lanjut mengenai strategi perdagangan trend, lihat: Strategi Mudah untuk Memodalkan Trend .)

  • Peluang Arbitrage:

Membeli stok berdaftar dua dengan harga yang lebih rendah dalam satu pasaran dan pada masa yang sama menjualnya di harga yang lebih tinggi di pasaran lain menawarkan perbezaan harga sebagai untung bebas atau arbitraj. Operasi yang sama boleh direplikasi untuk stok berbanding instrumen hadapan, kerana perbezaan harga wujud dari semasa ke semasa. Melaksanakan algoritma untuk mengenal pasti perbezaan harga seperti itu dan meletakkan pesanan membolehkan peluang menguntungkan secara cekap.

  • Indeks Penyusutan Dana :

Dana indeks telah menentukan tempoh pengimbangan semula untuk membawa pegangan mereka setanding dengan indeks penanda aras masing-masing. Ini mewujudkan peluang yang menguntungkan untuk peniaga algoritma, yang memanfaatkan perdagangan yang dijangkakan yang menawarkan 20-80 keuntungan mata asas bergantung kepada bilangan stok dalam indeks dana, sebelum pengimbangan semula dana indeks. Dagangan sedemikian dimulakan melalui sistem perdagangan algoritma untuk pelaksanaan tepat pada masanya dan harga terbaik.

  • Strategi Berdasarkan Model Matematik:

Banyak model matematik yang terbukti, seperti strategi perdagangan netral delta, yang membolehkan perdagangan gabungan pilihan dan keselamatannya, di mana perdagangan diletakkan untuk mengimbangi delta positif dan negatif supaya Delta portfolio dikekalkan pada sifar.

  • Rentang Dagangan (Mean Reversion):

Maksud strategi pengembalian adalah berdasarkan idea bahawa harga tinggi dan rendah aset adalah fenomena sementara yang kembali ke nilai min mereka secara berkala. Mengenal pasti dan mentakrifkan julat harga dan melaksanakan algoritma berdasarkan yang membolehkan dagangan diletakkan secara automatik apabila harga aset memecah masuk dan keluar daripada julat yang ditetapkan.

  • Harga Purata Wajaran Berjumlah (VWAP):

Strategi harga purata berwajaran volum memecah pesanan yang besar dan melepaskan potongan-potongan kecil yang lebih kecil dari perintah itu ke pasaran menggunakan profil volum sejarah tertentu. Matlamatnya adalah untuk melaksanakan pesanan yang dekat dengan Harga Purata Wajaran Berjumlah (VWAP), dengan itu mendapat keuntungan dari harga purata.

  • Harga Purata Wajaran Masa (TWAP):

Strategi harga purata wajaran masa memecah pesanan yang besar dan melepaskan potongan kecil yang lebih kecil dari perintah itu ke pasaran menggunakan slot masa yang sama dibahagikan antara waktu permulaan dan akhir. Matlamatnya adalah untuk melaksanakan pesanan yang hampir dengan harga purata antara masa permulaan dan akhir, dengan itu mengurangkan kesan pasaran.

  • Peratusan Kelantangan (POV):

Sehingga pesanan perdagangan telah diisi sepenuhnya, algoritma ini terus menghantar pesanan separa, mengikut nisbah penyertaan yang ditentukan dan mengikut volum yang didagangkan di pasaran. "Strategi langkah yang berkaitan" menghantar pesanan pada peratusan yang ditentukan oleh pengguna jumlah pasaran dan meningkatkan atau menurunkan kadar penyertaan ini apabila harga saham mencapai tahap yang ditetapkan oleh pengguna.

  • Kekurangan Pelaksanaan:

Strategi kekurangan pelaksanaan bertujuan untuk meminimumkan kos pelaksanaan sesuatu pesanan dengan perdagangan di pasaran masa nyata, dengan itu menjimatkan kos pesanan dan mendapat manfaat dari biaya peluang pelaksanaan yang tertunda. Strategi ini akan meningkatkan kadar penyertaan yang disasarkan apabila harga saham bergerak dengan baik dan menurunkannya apabila harga saham bergerak dengan buruk.

  • Di luar Algoritma Perdagangan Biasa:

Terdapat beberapa kelas khas algoritma yang cuba mengenal pasti "kejadian" di sisi lain. "Algoritma menghidu" ini, misalnya, oleh pembuat pasaran sisi menjual mempunyai kecerdasan yang dibina untuk mengenal pasti kewujudan sebarang algoritma di bahagian beli pesanan besar. Pengesanan sedemikian melalui algoritma akan membantu pembuat pasaran mengenal pasti peluang pesanan yang besar dan membolehkannya mendapat manfaat dengan mengisi pesanan pada harga yang lebih tinggi. Ini kadang-kadang dikenal pasti sebagai berteknologi tinggi di hadapan. (Untuk lebih lanjut mengenai perdagangan frekuensi tinggi dan amalan penipuan, lihat: Jika Anda Beli Saham Online, Anda Terlibat dalam HFTs .)

Keperluan Teknikal untuk Perdagangan Algoritma

Melaksanakan algoritma menggunakan komputer program adalah bahagian terakhir, berpakaian dengan backtesting. Cabarannya adalah mengubah strategi yang dikenal pasti ke dalam proses berkomputer bersepadu yang mempunyai akses kepada akaun dagangan untuk meletakkan pesanan. Berikut adalah keperluan:

  • Pengaturcaraan komputer pengetahuan untuk memprogram strategi perdagangan yang diperlukan, program penggajian atau perisian perdagangan pra-dibuat
  • Sambungan rangkaian dan akses ke platform perdagangan untuk menempatkan pesanan
  • Akses ke suapan data pasaran yang akan akan dipantau oleh algoritma untuk peluang membuat pesanan
  • Keupayaan dan infrastruktur untuk membuat sistem tertanam sekali dibina, sebelum ia hidup di pasaran sebenar
  • Data bersejarah yang tersedia untuk backtesting, bergantung pada kerumitan aturan yang dilaksanakan dalam algoritma < Contohnya ialah: Royal Dutch Shell (RDS) disenaraikan di Bursa Saham Amsterdam (AEX) dan London Stock Exchange (LSE).Mari kita buat algoritma untuk mengenal pasti peluang arbitraj. Berikut adalah beberapa pemerhatian menarik:

AEX berdagang di Euros, manakala LSE berdagang di Sterling Pounds

  • Disebabkan perbezaan satu jam masa, AEX dibuka sejam lebih awal daripada LSE, diikuti oleh kedua-dua bursa bertukar secara serentak untuk beberapa jam ke depan dan kemudian berdagang hanya dalam LSE pada jam terakhir kerana AEX ditutup
  • Bolehkah kita meneroka kemungkinan perdagangan arbitrase di stok Royal Dutch Shell yang tersenarai di kedua pasaran ini dalam dua mata wang yang berbeza?

Keperluan:

Program komputer yang boleh membaca harga pasaran semasa

  • Harga suapan dari kedua-dua LSE dan AEX
  • Suapan kadar forex untuk kadar pertukaran GBP-EUR
  • Keupayaan meletakkan pesanan yang boleh membuat laluan untuk mencapai pertukaran yang betul
  • Keupayaan pengujian kembali pada suapan harga bersejarah
  • Program komputer harus melakukan perkara berikut:

Baca suapan harga masuk saham RDS dari kedua bursa

  • Menggunakan kadar pertukaran asing yang tersedia , tukar harga satu mata wang kepada yang lain
  • Jika terdapat percanggahan harga yang cukup besar (mendiskaun kos pembrokeran) yang membawa kepada peluang yang menguntungkan, maka letakkan pesanan beli pada pertukaran harga yang lebih rendah dan jual pesanan pada pertukaran harga yang lebih tinggi > Jika pesanan dilaksanakan seperti yang diinginkan, keuntungan arbitrase akan mengikuti
  • Mudah dan mudah! Walau bagaimanapun, amalan perdagangan algoritma tidak mudah untuk diselenggara dan dilaksanakan. Ingat, jika anda boleh meletakkan perdagangan yang dihasilkan oleh algo, maka boleh juga peserta pasaran lain. Akibatnya, harga turun naik dalam milli- malah microseconds. Dalam contoh di atas, apa yang berlaku jika perdagangan beli anda disempurnakan, tetapi menjualnya tidak seperti harga jual berubah ketika pesanan anda mencapai pasaran? Anda akan duduk dengan posisi terbuka, menjadikan strategi arbitraj anda tidak bernilai.
  • Terdapat risiko dan cabaran tambahan: sebagai contoh, risiko kegagalan sistem, kesilapan rangkaian kesilapan, kekurangan masa antara perintah perdagangan dan pelaksanaan, dan, yang paling penting, algoritma tidak sempurna. Algoritma yang lebih kompleks, backtesting yang lebih ketat diperlukan sebelum ia dimasukkan ke dalam tindakan.

Bottom Line

Analisis kuantitatif mengenai prestasi algoritma memainkan peranan yang penting dan perlu diperiksa secara kritikal. Ia menarik untuk mendapatkan automasi dibantu oleh komputer dengan tanggapan untuk membuat wang dengan mudah. Tetapi seseorang mesti memastikan sistem itu diuji dengan teliti dan had yang diperlukan. Pedagang analitikal harus mempertimbangkan pembelajaran sistem pengaturcaraan dan bangunan sendiri, untuk yakin tentang pelaksanaan strategi yang betul dalam cara yang tidak menentu. Penggunaan berhati-hati dan ujian menyeluruh perdagangan algo dapat menghasilkan peluang yang menguntungkan. (Untuk lebih lanjut, lihat Bagaimana Kod Robot Dagangan Algo Anda Sendiri.)