永續合約交易所繫統開發搭建邏輯分析 | (原始碼demo示例)

v_ch3nguang發表於2023-05-16

永續合約交易所是一種去中心化的交易所,它可以永遠存在,並且沒有到期或結算日,交易者可以長期持有合約以獲得更大的投資收益。永續合約類似於一個保證金現貨市場,因此它的交易價格接近於標的參考指數價格。它提供最高100倍的槓桿,風險性與投機性更強,如果以投機為目的,那麼永續合約會更加適合。




永續合約交易所是一種去中心化的交易平臺,其主要特點包括:


去中心化:交易沒有中心化的交易所或機構,而是透過撮合引擎將交易商連線在一起,實現點對點交易。

不可篡改:交易的結果是公開透明的,每個交易都會被記錄在區塊鏈上,不可篡改,可以追溯到起源。

不依賴第三方機構:交易系統自身提供技術保障,交易記錄會在區塊鏈上被記錄,不會丟失,安全可信。

智慧合約:使用智慧合約來管理交易,可以自動執行交易,無需人工幹預。

去除到期或結算日:永續合約沒有到期或結算日,交易者可以長期持有合約,從而獲得更大的投資收益。




以下是一個簡單的永續合約交易所繫統的原始碼demo,使用Python語言和Hyperledger Fabric框架實現:




import asyncio  

import json  

import time  

import grpc  

import pika  

  

from chaincode import ChaincodeModule  

from hyperledger_composer_channel import ComposerChannel  

from hyperledger_composer_tx import ComposerTx  

from hyperledger_composer_ledger import ComposerLedger  

from hyperledger_composer_chaincode import ComposerChaincode  

  

# 連線Hyperledger Fabric網路  

channel = ComposerChannel.new(  

    "my-channel",  

    "my-ledger",  

    "my-chaincode",  

    grpc.insecure_channel("localhost:50051"),  

)  

  

# 連線到交易所賬戶  

ledger = ComposerLedger.new(  

    channel,  

    "my-ledger",  

    pika.ConnectionParameters(host="localhost"),  

)  

  

# 連線到合約賬戶  

chaincode = ComposerChaincode.new(  

    ledger,  

    "my-chaincode",  

    grpc.insecure_channel("localhost:50052"),  

)  

  

# 獲取合約的起始令牌  

start_token = chaincode.start_ledger()  

  

# 建立永續合約  

contract = chaincode.get_contract(start_token)  

  

# 在合約中設定交易  

contract.put_transfer(  

    "my-transfer",  

    [{"recipient": "Alice", "amount": 1000}, {"recipient": "Bob", "amount": 2000}],  

)  

  

# 傳送交易到合約  

tx = ComposerTx.new(  

    channel,  

    contract.ledger(),  

    "my-transfer",  

    start_token,  

)  

tx.execute()  

  

# 關閉連線  

ledger.close()  

chaincode.close()  

channel.close()




這個demo使用了Hyperledger Fabric的gRPC程式設計框架,透過pika庫連線到Hyperledger Fabric網路。在合約中設定了兩個交易,一個是轉賬,另一個是傳送轉賬的交易。轉賬交易使用了ComposerTx物件來傳送,而傳送轉賬的交易則直接在合約中使用了put_transfer方法。最後,關閉了連線。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70028290/viewspace-2952517/,如需轉載,請註明出處,否則將追究法律責任。

相關文章