Pikiran mengenai pergerakan aset melalui strategi lindung nilai kontrak

Penulis:Lydia, Dicipta: 2022-12-19 16:36:12, Dikemas kini: 2023-09-20 10:38:30

img

Pikiran mengenai pergerakan aset melalui strategi lindung nilai kontrak

Baru-baru ini, terdapat banyak berita mengenai pasaran mata wang digital dan pertukaran. Untuk seketika, semua rakan mata wang berada dalam keadaan panik, bimbang tentang keselamatan aset blockchain mereka. Terdapat juga banyak iklan kecil diskaun 10% dan 20% untuk mata wang kedua yang tidak aktif di pelbagai kumpulan pasaran mata wang. Terdapat banyak jenis strategi mencari kehilangan wang secara mantap sambil membuat wang secara mantap. Banyak pengguna juga menggoda Jika ada pembuat wang yang stabil, mengapa anda mahu pencipta wang yang stabil? Memang benar bahawa kedua-dua membuat keuntungan yang stabil dan kehilangan wang yang stabil adalahmoney printer, yang tidak mudah dijumpai. Maafkan saya untuk bahasa Inggeris saya yang buruk.

Walau bagaimanapun, masih ada beberapa yang tidak stabil. contohnya, melalui lindung nilai kontrak, kita boleh membuat keuntungan sambil membuat kerugian sebanyak mungkin.

Strategi DEMO

/*backtest
start: 2020-09-30 00:00:00
end: 2020-10-19 00:00:00
period: 1d
basePeriod: 1m
exchanges: [{"eid":"Futures_OKCoin","currency":"BTC_USD"},{"eid":"Futures_HuobiDM","currency":"BTC_USD"}]
*/

var step = 20    // Step length of adding position price

function main() {
    var pos1 = []
    var pos2 = []
    var ct = "quarter"                         // For example, quarterly contract
    exchanges[0].SetContractType(ct)
    exchanges[1].SetContractType(ct)
    var diff = 0

    while (true) {
        var r1 = exchanges[0].Go("GetDepth")   // Exchange A
        var r2 = exchanges[1].Go("GetDepth")   // Exchange B
        var depth1 = r1.wait()
        var depth2 = r2.wait()

        if(depth1.Bids[0].Price - depth2.Asks[0].Price > diff) {
            if(pos1.length == 0 && pos2.length == 0) {
                var info1 = $.OpenShort(exchanges[0], ct, 10)
                var info2 = $.OpenLong(exchanges[1], ct, 10)
                pos1 = _C(exchanges[0].GetPosition)
                pos2 = _C(exchanges[1].GetPosition)
                diff = depth1.Bids[0].Price - depth2.Asks[0].Price
            } else if(depth1.Bids[0].Price - depth2.Asks[0].Price > diff + step) {
                var info1 = $.OpenShort(exchanges[0], ct, 10)
                var info2 = $.OpenLong(exchanges[1], ct, 10)
                pos1 = _C(exchanges[0].GetPosition)
                pos2 = _C(exchanges[1].GetPosition)
                diff = depth1.Bids[0].Price - depth2.Asks[0].Price
            }
        }
        
        if(pos1.length != 0 && pos1[0].Profit < -0.001) {
            var info1 = $.CoverShort(exchanges[0], ct, pos1[0].Amount)
            var info2 = $.CoverLong(exchanges[1], ct, pos2[0].Amount)
            pos1 = _C(exchanges[0].GetPosition)
            pos2 = _C(exchanges[1].GetPosition)
            diff = 0
        }
        LogStatus(_D(), diff)
        Sleep(500)
    }
}

img

Logik strategi: Strategi ini bermula dengan memulakan pembolehubah kedudukan pos1 dan pos2 sebagai array kosong. Strategi memasuki gelung utama. Pada permulaan setiap gelung, data kedalaman (data buku pesanan) kontrak kedua bursa diperoleh untuk mengira perbezaan harga. Jika perbezaan harga terus berkembang dan melebihi perbezaan harga terakhir ditambah panjang langkah, terus lindung nilai dan menambah kedudukan. Apabila kedudukan dipegang, ia dikesan bahawa kerugian kedudukan bursa pertama melebihi nilai tertentu (seperti -0.001), kemudian tutup kedudukan. Ulangi dengan cara ini.

Prinsipnya sangat mudah, iaitu, apabila perbezaan harga besar, maka de-hedge. Apabila menunggu kehilangan kerugian yang dijangkakan dari kedudukan pertukaran, tutup kedudukan. Jika perbezaan harga terus berkembang, terus menambah kedudukan untuk lindung nilai sehingga kerugian yang dijangkakan dari kerugian kedudukan pertukaran. Parameter penting adalah: jumlah kerugian untuk menutup kedudukan, panjang langkah menambah perbezaan harga kedudukan, dan jumlah lindung nilai.

Strategi ini agak asas, hanya untuk mengesahkan idea, bot sebenar tidak tersedia. Masih ada banyak isu yang perlu dipertimbangkan untuk bot sebenar, sebagai contoh, sama ada kontrak yang akan diperdagangkan adalah standard mata wang atau standard U, dan sama ada pengganda kontrak yang berbeza di bursa A dan B adalah sama.

Dengan cara ini, satu bursa akan kehilangan wang, dan bahagian kerugian akan menjadi bahagian keuntungan bursa lain (perbezaan harga, mungkin ada kerugian lindung nilai, iaitu kerugian lebih banyak daripada keuntungan).$.OverShort, $.OpenShort, ini adalah fungsi antara muka templat. Untuk menjalankan DEMO di atas, anda perlu merujuk perpustakaan kelas ini.

Prototaip strategi di atas hanya eksplorasi yang paling mudah, dan mungkin ada lebih banyak butiran untuk dipertimbangkan dalam operasi sebenar, sebagai contoh, jumlah kedudukan boleh direka untuk tambahan. ini hanya contoh di sini. strategi yang sama harus dapat mengoptimumkan lebih banyak, dan pakar dialu-alukan untuk memberikan cadangan.


Berkaitan

Lebih lanjut