Strategi perdagangan kuantitatif untuk analisis dinamika harga menggunakan Python

Penulis:Kebaikan, Dibuat: 2019-08-09 15:49:06, Diperbarui: 2023-10-20 20:13:38

img

Strategi perdagangan momentum harga

Strategi trading momentum dengan menganalisis kontras antara kekuatan overbought dan overbought dalam periode tertentu, secara tidak langsung dapat memahami distribusi kekuatan di kedua sisi pasar overbought saat ini; menganalisis fluktuasi harga untuk tujuan melacak pergerakan harga di masa depan.

Analisis dinamika harga memiliki banyak aplikasi dalam daftar manual tradisional, terutama untuk menentukan tren satu sisi dalam sehari yang sangat membantu.

Dalam artikel ini, kami akan menggunakan strategi ini untuk mengembangkan program otomatisasi transaksi tunai mata uang digital di jaringan token.

Rumus perhitungan dinamika harga

AR = [jumlah dari semua N hari (High-Open) dan / N hari (Open-Low) ] * 100

Salah satunya adalah:

  • N: Jendela statistik untuk siklus waktu siang, secara default biasanya 30 hari, karena hari perdagangan yang efektif dalam sebulan sekitar 30 hari ((transaksi mata uang digital 24/7, mungkin angka ini agak konservatif)

  • High: Harga tertinggi dalam satu hari

  • Open: Harga buka untuk satu hari

  • Low: Harga terendah dalam sehari

Cara menggunakan dinamika harga

Gerakan harga dalam jangka waktu tertentu, merespons posisi harga buka di antara harga tertinggi dan harga terendah, dan posisi ini adalah dasar kita untuk menilai kekuatan tarik dari kedua belah pihak.

  • Kita asumsikan bahwa nilai ini adalah sekitar 100, lebih dari 100, maka kekuatan multi-head mulai meningkat, kurang dari 100, maka kekuatan kosong mulai berkumpul.
  • Nilai AR yang tinggi menunjukkan pasar yang aktif, populer, dan banyak yang melonjak, tetapi yang terlalu tinggi berarti harga memasuki zona beli berlebihan, dan harus memilih waktu stabilisasi. Tidak ada kriteria tertentu untuk tinggi nilai AR, dalam keadaan umum, harga kemungkinan besar akan mundur saat nilai AR naik ke sekitar 120.
  • Nilai AR yang turun menunjukkan kemunduran pasar, suasana di atas sedang baik, membutuhkan upaya lebih lanjut, dan terlalu rendah menunjukkan harga mungkin telah jatuh ke zona oversold, yang dapat dianggap terlalu banyak.

Catatan: Semua angka di atas adalah angka default, tidak pernah merupakan konstanta kebenaran. Dalam proses perdagangan yang sebenarnya, kita harus menyesuaikan kisaran ini sesuai dengan perubahan pasar.

Strategi perdagangan kuantitatif untuk dinamika harga dengan Python

Aturan lama, kita buka,FMZ.COM, login akun, klik Control Center, deploy administrator dan bot.

Untuk informasi lebih lanjut tentang cara mengimplementasikan administrator dan robot, lihat artikel saya sebelumnya:https://www.fmz.com/bbs-topic/4140

Untuk pembaca yang ingin membeli host yang mendistribusikan server cloud mereka sendiri, baca artikel ini:https://www.fmz.com/bbs-topic/2848

Selanjutnya, kita klik pada policy library di menu sebelah kiri, lalu klik pada create policy.

Di pojok kanan atas halaman menyusun kebijakan, ingatlah untuk memilih bahasa pemrograman Python, seperti berikut:

img

Selanjutnya kami menulis kode Python di halaman pengeditan kode, kode di bawah ini, dengan komentar baris demi baris yang sangat rinci, yang dapat Anda pahami dan rasakan, yang lebih penting lagi, meskipun strategi ini ditulis berdasarkan perdagangan spot, tetapi aspek ekstensif kode berikut juga dipertimbangkan perdagangan futures, pembaca yang tertarik dapat mencoba menulis kode berikut untuk perdagangan futures, logika dari strategi itu sendiri adalah universal.

Kami mulai menerapkan strategi ini dengan menggunakan token Bitcoin yang tersedia di TokenNet untuk:

import types # 导入Types模块库,这是为了应对代码中将要用到的各种数据类型
def main(): # 主函数,策略逻辑从这里开始
    IDLE = 0 # 用来标记持仓状态,可以理解为0即为空闲状态,也就是空仓状态
    LONG = 1 # 多头持仓
    SHORT = 2 # 空头持仓,注意,此策略应用于现货市场,所以不存在空头开仓或者持仓情况,这里这样写,是为了方便理解策略和以后的扩展(如扩展到期货市场)
    state = IDLE # 标记持仓状态的变量
    while True: # 进入循环
        r = exchange.GetRecords() #GetRecords是发明者量化平台的官方API,详细用法请参见:https://www.fmz.com/api
        if len(r) <= 1: # 判断K线是否大于一根,也就是当前是否为开盘状态,否则可能会进入死循环,这里也方便读者进行扩展,大一些的K线周期趋势状态更稳定。
           Log("bar的数量不足, 等待下一根bar...") # 输出日志
           continue # Python循环控制语句,继续下边的循环内容

        # 开始进行价格动量的量化分析
        ar = sum(r.High - r.Open) / sum(r.Open - r.Low) * 100 # 计算公式

        account = _C(exchange.GetAccount) # 获取账户信息,_C同样为发明者量化平台的官方API,用法请参见:https://www.fmz.com/api

        if ar < 95 and (state == IDLE or state == SHORT) :  # AR值小于超卖线且账户拥有资金,则全仓买入
           
           if account["Balance"] > 50:
                exchange.Buy(-1, account["Balance"] * 0.9) # 市价单全仓买入
                state = LONG # 改变持仓状态为LONG
                  
        elif ar > 80 and (state == IDLE or state == LONG):  # AR值大于超买线且账户有持仓,则全仓卖出
            
           if account["Stocks"] > 0.01:
                exchange.Sell(-1, account["Stocks"] * 0.9) # 市价单全仓卖出
                state = SHORT # 改变持仓状态为SHORT
                      
        LogStatus(_D(), exchange.GetAccount() , state) # 更新日志信息

Uji Kembali Strategi

Setelah menulis strategi, hal pertama yang harus kita lakukan adalah mengulanginya dan melihat bagaimana perannya dalam data historis, tetapi harap diingat pembaca, hasil pengulangannya tidak sama dengan prediksi masa depan, pengulangannya hanya dapat digunakan sebagai informasi referensi untuk mempertimbangkan efektivitas strategi kita. Begitu pasar berubah, strategi mulai mengalami kerugian besar, kita harus segera menemukan masalah, dan kemudian mengubah strategi untuk menyesuaikan diri dengan lingkungan pasar baru, seperti batas yang disebutkan di atas, jika strategi muncul lebih dari 10 persen kerugian, kita harus segera menghentikan strategi, dan kemudian mencari masalah, Anda dapat mulai dari pengaturan batas terlebih dahulu.

Klik pada halaman editor kebijakan untuk melakukan debugging analog, pada halaman ini, parameter dapat disesuaikan sesuai kebutuhan, untuk melakukan debugging yang mudah dan cepat, terutama untuk strategi yang kompleks secara logis, dengan banyak parameter, tanpa perlu kembali ke sumber kode, untuk melakukan modifikasi secara individual.

Saat kita memilih bulan terakhir, klik Add Token Spot Exchange, tanda perdagangan BTC.

img

Lihat hasil tes ulang

img

Seperti yang Anda lihat, strategi ini berjalan dengan baik dalam review bulan ini.

Keunggulan dan Kelemahan Strategi Motivasi Harga

  • Keunggulan

Keunggulan dari dinamika harga dibandingkan dengan beberapa indikator teknis tradisional lainnya adalah bahwa ia menggunakan harga tertinggi dan terendah yang diperkenalkan, bukan harga buka atau tutup tunggal. Perbandingan dinamis dilakukan terhadap mereka, melalui fluktuasi harga dalam sehari, sehingga informasi pasar lebih komprehensif, lebih cepat bereaksi, dan lebih makro.

  • Kelemahan

Menggunakan nilai momentum harga secara independen untuk menilai apakah harga terlalu tinggi atau rendah, untuk menilai over/under, sangat mungkin untuk turun terlalu awal dalam gelombang tren besar, atau melompat terlalu awal dalam gelombang pasar besar. Secara keseluruhan, strategi ini masih merupakan strategi efektivitas goncangan.

Pengaturan ambang strategi juga harus ditentukan berdasarkan karakteristik indikator perdagangan. Harga pasar mata uang digital sangat besar dan volume perdagangan sangat besar, terutama pada mata uang utama seperti Bitcoin, dan tidak ada batas ambang, sehingga ambang harga lebih tinggi daripada pasar saham tradisional, 80 garis oversold, biasanya sulit untuk disentuh, menghasilkan sinyal beli yang lebih sedikit; sedangkan 170 garis oversold juga sering berada di bawah ambang nilai, tetapi sinyal jual sering dipicu.

Oleh karena itu, pasar ini tidak pernah memiliki strategi perdagangan piala kudus, yang dapat menghasilkan uang selamanya tanpa perlu uji coba, tanpa perlu latihan. Kami pedagang kuantitatif dan pedagang subjektif, pada akhirnya sama-sama berbeda, perlu menyesuaikan diri dengan perubahan pasar, sesuai dengan kondisi, sesuai dengan perubahan, ketika strategi tidak efektif, perlu menyesuaikan secara tepat waktu.

Teman yang punya masalah bisa datang.https://www.fmz.com/bbsPenjelasan, apakah itu tentang strategi atau teknologi platform, penemu platform kuantitatif memiliki staf profesional yang siap menjawab pertanyaan Anda.


Berkaitan

Lebih banyak

MAIKEOTerima kasih banyak!