
Dalam strategi lindung nilai, ada berbagai jenis lindung nilai. Lindung nilai lintas pasar, lindung nilai lintas periode, dll. Hari ini kita akan berbicara tentang lindung nilai lintas produk, atau lebih tepatnya, strategi lindung nilai lintas mata uang dalam perdagangan kuantitatif aset-aset blockchain. Aset dasar dalam transaksi lindung nilai konvensional adalah sama, sedangkan lindung nilai lintas mata uang melibatkan pembelian dan penjualan aset dasar yang berbeda. Saat melakukan lindung nilai terhadap produk yang sama, kita dapat menggunakan selisih harga sebagai harga beli dan harga jual dalam transaksi lindung nilai. Untuk lindung nilai lintas pasar yang paling sederhana dari produk yang sama, selisih harga berfluktuasi berulang kali dalam kisaran tertentu. Lindung nilai lintas produk jelas tidak dapat menggunakan perbedaan harga sebagai harga beli dan jual, karena perbedaan harga antara berbagai produk tidak mudah diamati. Biasanya, rasio harga digunakan sebagai harga beli dan harga jual.
Misalnya: Pasangan perdagangan: LTC_USDT Pasangan perdagangan B: ETH_USDT
menurutA交易对的价格/B交易对的价格Nilai rasio harga ini digunakan untuk menyebarkan posisi pembukaan. Semakin besar rasionya, semakin banyak kita perlu menjual A dan membeli B. Sebaliknya jika rasionya mengecil, beli A dan jual B. Melakukan lindung nilai terhadap jumlah USDT yang sama setiap waktu sebenarnya merupakan strategi perdagangan grid yang didasarkan pada kekuatan harga relatif LTC/ETH. Strateginya tidak rumit. Akan tetapi, perlu dicatat bahwa kombinasi lindung nilai ini sebenarnya menggunakan ETH sebagai mata uang harga jangkar untuk menominasikan LTC. Harga yang dijangkarkan ini mungkin memiliki tren unilateral, meskipun dapat berfluktuasi hampir sepanjang waktu. Namun, risiko ini perlu dipertimbangkan dan diperhatikan.
Dengan menggunakan Platform Perdagangan Kuantitatif Inventor, mudah untuk menulis prototipe strategi:
Saat kode kebijakan berjalan, kode tersebut perlu merujuk ke
dan
「Perpustakaan gambar garis」: https://www.fmz.com/strategy/27293
“Perpustakaan Perdagangan Spot Mata Uang Kripto”: Ini disediakan di kolom templat saat setiap pengguna membuat strategi baru.
/*backtest
start: 2019-05-01 00:00:00
end: 2019-11-04 00:00:00
period: 1m
exchanges: [{"eid":"OKEX","currency":"LTC_USDT","balance":100000,"stocks":30},{"eid":"OKEX","currency":"ETH_USDT","balance":100000,"stocks":30}]
*/
/*
A exchanges[0] : EOS_USDT
B exchanges[1] : ETH_USDT
*/
var Interval = 500
// 参数
var numPoint = 100 // 节点数
var distance = 0.08 // 比例间距
var amountPoint = 100 // 节点金额,单位USDT
var arrHedgeList = []
function main () {
var isFirst = true
while(true) {
var rA = exchanges[0].Go("GetTicker")
var rB = exchanges[1].Go("GetTicker")
var tickerA = rA.wait()
var tickerB = rB.wait()
if (tickerA && tickerB) {
var priceRatioSell = tickerB.Buy / tickerA.Sell // B sell , A buy
var priceRatioBuy = tickerB.Sell / tickerA.Buy // B buy , A sell
if (isFirst) {
for (var i = 0 ; i < numPoint ; i++) {
var point = {
priceRatio : priceRatioSell + (i + 1) * distance,
coverRatio : priceRatioSell + i * distance,
amount : (0.08 * i + 1) * amountPoint,
isHold : false,
}
arrHedgeList.push(point)
}
isFirst = false
}
for (var j = 0 ; j < arrHedgeList.length; j++) {
if (priceRatioSell > arrHedgeList[j].priceRatio && arrHedgeList[j].isHold == false) {
// B sell , A buy
Log("对冲,价格比", priceRatioSell, "#FF0000")
$.Buy(exchanges[0], arrHedgeList[j].amount / tickerA.Sell)
$.Sell(exchanges[1], arrHedgeList[j].amount / tickerB.Buy)
arrHedgeList[j].isHold = true
LogStatus(_D(), exchanges[0].GetAccount(), "\n", exchanges[1].GetAccount())
$.PlotLine("ratio", (priceRatioSell + priceRatioBuy) / 2)
break
}
if (priceRatioBuy < arrHedgeList[j].coverRatio && arrHedgeList[j].isHold == true) {
// B buy , A sell
Log("对冲,价格比", priceRatioBuy, "#32CD32")
$.Sell(exchanges[0], arrHedgeList[j].amount / tickerA.Buy)
$.Buy(exchanges[1], arrHedgeList[j].amount / tickerB.Sell)
arrHedgeList[j].isHold = false
LogStatus(_D(), exchanges[0].GetAccount(), "\n", exchanges[1].GetAccount())
$.PlotLine("ratio", (priceRatioSell + priceRatioBuy) / 2)
break
}
}
}
Sleep(Interval)
}
}
Menggunakan pengaturan backtest default:


Dapat dilihat bahwa hanya puluhan baris kode yang digunakan untuk menyusun strategi ide-ide seseorang. Pada Platform Perdagangan Kuantitatif Inventor, sangat mudah untuk mewujudkan prototipe sebuah ide. Dari grafik di atas, kita dapat melihat bahwa rasio harga ini berfluktuasi hampir sepanjang waktu, tetapi ada tren tertentu. Arah optimalisasi dapat berupa kontrol posisi selama lindung nilai atau penambahan identifikasi tren tertentu.
Dalam hal kontrol posisi, jumlah lindung nilai setiap node lindung nilai dapat ditingkatkan secara bertahap, misalnya, dalam kode:
if (isFirst) {
for (var i = 0 ; i < numPoint ; i++) {
var point = {
priceRatio : priceRatioSell + (i + 1) * distance,
coverRatio : priceRatioSell + i * distance,
amount : (0.08 * i + 1) * amountPoint, // 每次递增amountPoint的8%
isHold : false,
}
arrHedgeList.push(point)
}
isFirst = false
}
Hal ini memungkinkan posisi yang relatif lebih berat terkonsentrasi di lokasi dengan rasio harga yang lebih tinggi, menghindari pengambilan posisi yang terlalu besar saat rasio harga lebih rendah. Tentu saja, lindung nilai lintas produk seperti itu sangat berisiko. Jika harga satu koin terus naik relatif terhadap koin lain, kerugian mengambang akan terjadi. Oleh karena itu, lindung nilai lintas produk memerlukan korelasi yang lebih kuat antara kedua produk tersebut.
Strategi ini hanyalah DEMO awal dan dapat dimodifikasi dan dioptimalkan lebih lanjut.