測(cè)試報(bào)告
測(cè)試報(bào)告百科
當(dāng)前位置:?? 首頁(yè) > 測(cè)試報(bào)告 > 測(cè)試報(bào)告百科數(shù)字資產(chǎn)合約交易平臺(tái)系統(tǒng)性能測(cè)試報(bào)告
1.數(shù)字資產(chǎn)合約交易蓬勃發(fā)展
合約交易無(wú)疑是整個(gè)數(shù)字資產(chǎn)市場(chǎng)近期最火熱的主題,不僅傳統(tǒng)金融機(jī)構(gòu)對(duì)此青睞有加,CME在2017年便推出了比特幣合約,而且背靠洲際交易所的Bakkt也在今年9月正式開(kāi)盤交易。此外,也有越來(lái)越多的數(shù)字資產(chǎn)交易平臺(tái)開(kāi)始布局合約業(yè)務(wù),CoinGecko的統(tǒng)計(jì)顯示,提供數(shù)字資產(chǎn)合約交易的平臺(tái)已有25家,而在7月份還只有6家,目前的合約市場(chǎng)日交易總量已達(dá)180億美元。
從未平倉(cāng)合約量來(lái)看,BitMEX超過(guò)10億美元,遙遙領(lǐng)先,其次是OKEx,接近8億美元;從交易量來(lái)看,OKEx、Huobi、Bitmex均突破30億,其中OKEx接近40億美元,綜合來(lái)看頭部幾家斷層明顯。
數(shù)據(jù)來(lái)源:CoinGecko
當(dāng)前市場(chǎng)上,既有BitMEX、Deribit這樣專注合約的平臺(tái),也有像Binance這樣從現(xiàn)貨交易起家繼而進(jìn)入合約市場(chǎng)的玩家。已經(jīng)有非常多關(guān)于產(chǎn)品設(shè)計(jì)層面的討論,而對(duì)于交易平臺(tái)而言,交易系統(tǒng)才是一切的根本,系統(tǒng)性能是決定用戶交易體驗(yàn)的基礎(chǔ)。隨著越來(lái)越多的交易者,包括更多的專業(yè)交易員進(jìn)入數(shù)字資產(chǎn)的市場(chǎng),無(wú)論交易頻率還是交易策略的復(fù)雜性均有較大幅度提升,對(duì)于平臺(tái)而言都到了比拼硬實(shí)力的階段。接下來(lái)我們將會(huì)通過(guò)真實(shí)的測(cè)試,來(lái)觀察一些具有代表性的平臺(tái),其系統(tǒng)性能究竟如何?
2.關(guān)于交易平臺(tái)的系統(tǒng)性能測(cè)試
對(duì)于系統(tǒng)而言,高并發(fā)和低延時(shí)是兩個(gè)重要的性能,由于并發(fā)量的情況難以通過(guò)外部渠道測(cè)量,本次測(cè)試的重點(diǎn)是系統(tǒng)的交易延時(shí)情況。
鏈塔研究團(tuán)隊(duì)選擇了五家具有代表性的合約交易平臺(tái):BitMEX、Deribit、OKEx、HuobiDM、Binance Futures,其中BitMEX是老牌的合約交易,一直保持最高的市場(chǎng)份額;Deribit是2016年便開(kāi)始專注于衍生品的平臺(tái),有交割合約、永續(xù)合約和期權(quán)產(chǎn)品;OKEx具有豐富的產(chǎn)品種類,其合約產(chǎn)品涵蓋9個(gè)幣種,交易量和交易深度都很有優(yōu)勢(shì);而Huobi與Binance則是兩家現(xiàn)貨交易活躍的平臺(tái),分別在去年底今年初推出了自己的合約服務(wù)。
為避免外部因素的干擾,我們將在統(tǒng)一的環(huán)境中對(duì)五個(gè)平臺(tái)進(jìn)行測(cè)試:
注:①在選擇服務(wù)器所在地時(shí),首先排除了交易平臺(tái)服務(wù)器所在地,如香港(OKEx)、日本(Binance)等,其次排除了美國(guó)等因服務(wù)限制而無(wú)法進(jìn)行測(cè)試的國(guó)家和地區(qū)。最終選擇了新加坡。新加坡是全球金融中心,有良好的網(wǎng)絡(luò)基礎(chǔ)設(shè)施,對(duì)于數(shù)字資產(chǎn)交易有著相對(duì)寬松的法律環(huán)境,五家平臺(tái)對(duì)該地區(qū)都沒(méi)有服務(wù)限制。
②我們用真實(shí)的資金賬戶進(jìn)行掛單,由于研究目的只是探測(cè)系統(tǒng)的反應(yīng)延時(shí),并不需要真實(shí)成交,所以掛單價(jià)會(huì)與實(shí)時(shí)成交價(jià)有一定的距離。
在前期API搭建過(guò)程中,OKEx與Binance Futures的官方文檔內(nèi)容全面且清晰,利用SDK搭建API過(guò)程十分便捷,但由于Binance Futures官方未開(kāi)放下單和撤單的推送權(quán)限,導(dǎo)致最終只拿到1個(gè)測(cè)試指標(biāo)(to ACK);Huobi DM在GITHUB上SDK文件過(guò)多,且未有官方說(shuō)明,無(wú)法明確哪個(gè)是官方SDK,在官方群進(jìn)行詢問(wèn)后解決;Deribit提供的官方SDK缺失websocket,導(dǎo)致測(cè)試中通過(guò)自行封裝websocket后才完成API搭建,消耗了大量時(shí)間;BitMEX因官方提供的SDK包存在問(wèn)題未能成功對(duì)接,與官方通過(guò)郵件溝通也并未獲得有效解答,后續(xù)針對(duì)官方SDK進(jìn)行了代碼修改才成功對(duì)接,搭建過(guò)程耗時(shí)最久。
3. 測(cè)試結(jié)果的分析
經(jīng)過(guò)連續(xù)24h的掛單測(cè)試,鏈塔研究團(tuán)隊(duì)獲得了5家平臺(tái)的數(shù)據(jù),根據(jù)我們的掛單策略,理論上每個(gè)指標(biāo)應(yīng)該獲得4320個(gè)數(shù)據(jù),但在實(shí)際測(cè)試中,會(huì)出現(xiàn)系統(tǒng)監(jiān)聽(tīng)不到的個(gè)別情況,而導(dǎo)致一定的數(shù)據(jù)缺失。此外,Bitmex對(duì)高頻低成交的掛單情況有一定的限制,我們?cè)跍y(cè)試中收到了平臺(tái)的提醒郵件,而其他平臺(tái)沒(méi)有出現(xiàn)這種情況。最終我們的樣本情況如下:
3.1 To ACK
To ACK衡量的是用戶下單請(qǐng)求到系統(tǒng)響應(yīng)的時(shí)間延遲,也就是訂單到達(dá)柜臺(tái)的時(shí)間。從樣本分布來(lái)看,五家平臺(tái)的To ACK指標(biāo)都呈現(xiàn)出尖峰長(zhǎng)尾的形態(tài),但分布差異也很顯著。
從頻率密度最大的樣本取值范圍來(lái)看,BitMEX集中在170-200毫秒,Deribit在160-200毫秒,OKEx是50-100毫秒,Huobi在150-200毫秒,Binance在80-100毫秒。
從極端值分布來(lái)看,BitMEX和Deribit的尾部相對(duì)較厚,從200-500毫秒均有大量的樣本數(shù)據(jù),OKEx、Huobi以及Binance的尾部極端數(shù)據(jù)比較稀薄,但Binance在400-450之間有顯著的增加。
從平均值與中位數(shù)來(lái)看,OKEx
從極端情況來(lái)看,OKEx的優(yōu)勢(shì)更加顯著,95%的下單請(qǐng)求會(huì)在79毫秒內(nèi)得到相應(yīng),而其他幾家平臺(tái)均只有不到5%的訂單延遲在79毫秒以內(nèi),尤其BitMEX與Deribit的極端值顯著大于其他幾家,極端情況出現(xiàn)的概率也更高。幣安相比于火幣,雖然平均而言延遲更低,但幣安的方差更大,系統(tǒng)延時(shí)的上下浮動(dòng)的范圍更大。
3.2 To Live
To Live衡量的用戶下單到系統(tǒng)把用戶的單掛到交易深度(OrderBook)上面的時(shí)間,幾家平臺(tái)的性能差異顯著。
BitMEX呈現(xiàn)出了雙峰的形態(tài),分別集中在180毫秒左右和250毫秒左右,整個(gè)尾部也是呈現(xiàn)了厚尾的情況,從300-1000毫秒都有比較均勻的樣本數(shù)據(jù)被觀測(cè)到。Deribit的樣本大部分集中在170-200毫秒這個(gè)非常小的區(qū)間里,在200-500毫秒也連續(xù)有觀測(cè)值,500毫秒以上有斷斷續(xù)續(xù)的觀測(cè)值。OKEx的樣本集中在70-150毫秒,尾部呈現(xiàn)急速衰減,在500毫秒之后只有極個(gè)別的觀測(cè)結(jié)果。Huobi的樣本集中在300-400毫秒,之后也呈現(xiàn)緩慢衰減的情況。
平均來(lái)看,OKEx的延遲最低,從用戶發(fā)出下單請(qǐng)求到訂單被掛在交易深度上,平均只需要100毫秒左右,而Huobi與BitMEX幾乎為OKEx的4倍。
從極端情況來(lái)看,OKEx上95%的訂單會(huì)在142毫秒之內(nèi)被掛在order book上,優(yōu)于其他3個(gè)平臺(tái)最好的5%的情況。BitMEX與火幣的平均水平都較差,但火幣的浮動(dòng)范圍更小,99%的訂單在1000毫秒以內(nèi)會(huì)掛到交易深度上,而BitMEX接近20%的訂單需要超過(guò)1000毫秒。
Deribit測(cè)得的To Live數(shù)據(jù)比To ACK要低,有悖于常識(shí)。我們分析,可能與其系統(tǒng)設(shè)計(jì)有關(guān),訂單未到達(dá)交易深度,便發(fā)出了返回?cái)?shù)據(jù)。
3.3 To Cancel
To Cancel指標(biāo)是用于衡量發(fā)出cancel request 到訂單websocket cancelled的時(shí)間延遲。從樣本分布來(lái)看,BitMEX的大部分樣本集中在180-200毫秒的區(qū)間里,而在200-1000毫秒連續(xù)有較為平均的觀測(cè)值。Deribit集中在170-180毫秒的狹窄區(qū)間里,尾部樣本的占比低于BitMEX。OKEx整體集中在100-200毫秒之間,在200-400毫秒內(nèi)有部分觀測(cè)值,而只有極個(gè)別的樣本落在大于400毫秒的區(qū)間里?;饚懦尸F(xiàn)出多峰的形態(tài),隨后逐漸衰減。
在撤單指令的執(zhí)行上面,OKEx依然是優(yōu)于其他平臺(tái)的,95%以上的訂單都會(huì)在發(fā)出撤單請(qǐng)求之后200毫秒以內(nèi)被撤銷,BitMEX大概有50%的訂單能達(dá)到這個(gè)水平,而Huobi最好的情況也需要242毫秒。
OKEx出現(xiàn)了一個(gè)極大值,125572毫秒,我們檢查了數(shù)據(jù),發(fā)現(xiàn)這個(gè)極端取值只有1個(gè)樣本,而次于其的最大值為2888。由于沒(méi)有確定這個(gè)極端情況的原因,我們沒(méi)有將其剔除。若剔除這個(gè)極端值,okextocancel的平均值將會(huì)是148毫秒。
4 總結(jié)
我們經(jīng)過(guò)這次測(cè)試獲得五家平臺(tái)的樣本數(shù)據(jù),對(duì)系統(tǒng)延時(shí)性能有更加直觀的展示。
注:數(shù)值越低,延遲越低,表明系統(tǒng)性能越好。
BitMEX與OKEx整體交易量水平相當(dāng),但在系統(tǒng)延時(shí)問(wèn)題上,無(wú)論掛單還是撤單,OKEx的系統(tǒng)反應(yīng)都顯著的優(yōu)于BitMEX;Deribit整體的掛單與撤單都屬于中等水平;Huobi的掛單延遲處于中等水平,而撤單延遲最高;Binance由于權(quán)限問(wèn)題只能獲得一個(gè)指標(biāo)to ACK,雖然樣本數(shù)據(jù)較好,但還不具有充分的說(shuō)服力。
我們通過(guò)這次測(cè)試,也對(duì)各家交易所的API易用性也有了真實(shí)的體驗(yàn),OKEx在搭建過(guò)程中比較友好,而其他的平臺(tái)在接入API過(guò)程中都或多或少遇到了一些問(wèn)題。數(shù)字資產(chǎn)合約交易的市場(chǎng)會(huì)吸引越來(lái)越多的專業(yè)交易員,對(duì)系統(tǒng)性能及API的需求也會(huì)更高,這個(gè)市場(chǎng)的競(jìng)爭(zhēng)也才只拉開(kāi)序幕,希望每個(gè)平臺(tái)都能持續(xù)提升自己的系統(tǒng),為用戶帶來(lái)更好的交易體驗(yàn)。