avatar of 发明者量化-小小梦 发明者量化-小小梦
tập trung vào tin nhắn riêng tư
4
tập trung vào
1271
Người theo dõi

Chiến lược phòng ngừa rủi ro chéo tiền tệ trong giao dịch định lượng tài sản blockchain

Được tạo ra trong: 2019-11-04 11:44:15, cập nhật trên: 2023-10-17 21:25:35
comments   0
hits   2670

Chiến lược phòng ngừa rủi ro chéo tiền tệ trong giao dịch định lượng tài sản blockchain

Chiến lược phòng ngừa rủi ro chéo tiền tệ trong giao dịch định lượng tài sản blockchain

Trong các chiến lược phòng ngừa rủi ro, có nhiều loại phòng ngừa rủi ro khác nhau. Phòng ngừa rủi ro chéo thị trường, phòng ngừa rủi ro chéo thời kỳ, v.v. Hôm nay chúng ta sẽ nói về phòng ngừa rủi ro chéo sản phẩm hoặc chính xác hơn là các chiến lược phòng ngừa rủi ro chéo tiền tệ trong giao dịch định lượng tài sản blockchain. Tài sản cơ bản trong các giao dịch phòng ngừa thông thường là giống nhau, trong khi phòng ngừa chéo tiền tệ liên quan đến việc mua và bán các tài sản cơ bản khác nhau. Khi phòng ngừa cùng một sản phẩm, chúng ta có thể sử dụng chênh lệch giá làm giá mua và giá bán trong giao dịch phòng ngừa. Đối với phòng ngừa chéo thị trường đơn giản nhất của cùng một sản phẩm, chênh lệch giá dao động liên tục trong một phạm vi nhất định. Phòng ngừa chéo sản phẩm chắc chắn không thể sử dụng chênh lệch giá làm giá mua và giá bán, vì chênh lệch giá giữa các sản phẩm khác nhau không trực quan để quan sát. Thông thường, tỷ lệ giá được sử dụng làm giá mua và giá bán.

Ví dụ: Cặp giao dịch: LTC_USDT Cặp giao dịch B: ETH_USDT

theoA交易对的价格/B交易对的价格Tỷ lệ giá này được sử dụng để phân tán các vị thế mở. Tỷ lệ càng lớn thì chúng ta càng cần bán A và mua B. Ngược lại, nếu tỷ lệ này nhỏ hơn, hãy mua A và bán B. Việc phòng ngừa một lượng USDT bằng nhau mỗi lần thực chất là một chiến lược giao dịch lưới dựa trên sức mạnh giá tương đối của LTC/ETH. Chiến lược này không phức tạp. Tuy nhiên, cần lưu ý rằng sự kết hợp phòng ngừa này thực sự sử dụng ETH làm loại tiền tệ giá neo để định giá LTC. Mức giá neo này có thể có xu hướng đơn phương, mặc dù nó có thể dao động hầu hết thời gian. Tuy nhiên, rủi ro này cần được xem xét và chú ý.

Sử dụng Nền tảng giao dịch định lượng Inventor, bạn có thể dễ dàng viết nguyên mẫu chiến lược: Khi mã chính sách đang chạy, nó cần tham chiếu đến Chiến lược phòng ngừa rủi ro chéo tiền tệ trong giao dịch định lượng tài sản blockchainChiến lược phòng ngừa rủi ro chéo tiền tệ trong giao dịch định lượng tài sản blockchain 「Thư viện bản vẽ đường nét」: https://www.fmz.com/strategy/27293 “Thư viện giao dịch tiền điện tử”: Thư viện này được cung cấp trong cột mẫu khi mỗi người dùng tạo một chiến lược mới.

/*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)
    }
}

Bạn có thể sử dụng kiểm tra ngược để xác minh ban đầu ý tưởng chiến lược.

Sử dụng cài đặt kiểm tra ngược mặc định:

Chiến lược phòng ngừa rủi ro chéo tiền tệ trong giao dịch định lượng tài sản blockchain

Chiến lược phòng ngừa rủi ro chéo tiền tệ trong giao dịch định lượng tài sản blockchain

Có thể thấy rằng chỉ cần sử dụng hàng chục dòng mã để xây dựng chiến lược theo ý tưởng của riêng mình. Trên Nền tảng giao dịch định lượng Inventor, rất dễ dàng để hiện thực hóa nguyên mẫu của một ý tưởng. Từ biểu đồ trên, chúng ta có thể thấy tỷ lệ giá này dao động hầu hết thời gian, nhưng có một xu hướng nhất định. Hướng tối ưu hóa có thể là kiểm soát vị thế trong quá trình phòng ngừa rủi ro hoặc thêm một số nhận dạng xu hướng nhất định.

Về mặt kiểm soát vị thế, số lượng phòng ngừa của mỗi nút phòng ngừa có thể được tăng dần, ví dụ, trong mã:

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
}

Điều này cho phép tập trung các vị thế tương đối lớn hơn ở những vị trí có tỷ lệ giá cao hơn, tránh chiếm các vị thế quá lớn khi tỷ lệ giá thấp hơn. Tất nhiên, việc phòng ngừa chéo sản phẩm như vậy rất rủi ro. Nếu giá của một đồng tiền tiếp tục tăng so với một đồng tiền khác, sẽ xảy ra lỗ thả nổi. Do đó, phòng ngừa chéo sản phẩm đòi hỏi mối tương quan mạnh hơn giữa hai sản phẩm.

Chiến lược này chỉ là bản DEMO ban đầu và có thể được sửa đổi và tối ưu hóa thêm.