聊聊:證券交易鏈路和極速交易那些事兒
大家平時都會接觸到很多交易鏈路,比如支付、搶票等等,大量公司都會想辦法優(yōu)化交易鏈路的實際實現(xiàn)極速交易,但這個鏈路專業(yè)性和復(fù)雜度都非常高。本文做了一個簡單梳理,希望能幫助大家進(jìn)行了解。
其實交易鏈路、極速交易在我們平時生活中彼彼皆是,有可能大家平時沒太留意而已,如平時網(wǎng)購、外賣、轉(zhuǎn)賬沖值、線下掃碼支付;秒殺、春節(jié)回家搶高鐵票等等都有各自的交易鏈路和極速交易。如下圖所示電商交易鏈路:
大量公司想盡辦法和花重金去優(yōu)化交易鏈路,如:優(yōu)化交易流程減少不必流程節(jié)點、交易軟件(網(wǎng)站、app和客戶端)、數(shù)據(jù)庫讀寫能力、采用分布式交易網(wǎng)絡(luò)、交易物理設(shè)備等等,從而提升交易速度、保障交易穩(wěn)定性、降低交易延時性和高并發(fā)量等。
然而在證券行業(yè)對交易全鏈路和極速交易更為青睞、更為執(zhí)著追求秒級 -> 毫秒級-> 微秒級-> 納秒級:即所謂的“極速交易”。極速交易系統(tǒng)已經(jīng)成為證券和期貨公司“軍備競賽”的關(guān)鍵設(shè)施。
在未開始話題之前,煩請大家先思考10秒:“為什么各大券商熱忠優(yōu)化交易鏈路、推崇極速交易?”。正如愛因斯坦說過:“如果我必須用一小時思考一個問題,我會花55分鐘考慮我要提出什么問題,用5分鐘時間找答案?!彼晕覀兇蠹乙桃馊ヅ囵B(yǎng)提出好問題的習(xí)慣。
證券交易全鏈路和極速交易,它兩的關(guān)系是相輔相成、相互促進(jìn)、全鏈路是基礎(chǔ),有了全鏈路優(yōu)化才可能有“極速交易”的體驗。當(dāng)然單點優(yōu)化也能帶來快的感,不是那種超快、超穩(wěn)、超全爆爽的感覺。
要聊好它兩可從:背景、定義/流程、技術(shù)、成本、市面產(chǎn)品等方面入手。讓我們一點一點的切入,一塊一塊的展開,從入門逐漸到精通之旅吧。
文章可能會有不足之處,歡迎大家給我多多提意見、留言反饋和補(bǔ)充,如有錯誤之處,請大家指正,我們評論區(qū)見。主打“分享、交流”,不立人設(shè)一起學(xué)習(xí)、一起進(jìn)步。
一、背景
需求或業(yè)務(wù)要弄清它們的背景或發(fā)生場景,才可能設(shè)計出來的產(chǎn)品貼近客戶實際需求或使用場景,從而贏得用戶。然而證券交易全鏈路和極速交易的背景可分為三種背景:客戶需求、技術(shù)發(fā)展和政策支持,下面我們分別來聊聊吧。
1. 客戶需求
1.1.1、在股票、期貨、期權(quán)等衍生品市場上交易原則:價格優(yōu)先、時間優(yōu)先。自2015年以來,大量的量化私募客戶、高凈值客戶等機(jī)構(gòu)投資者和專業(yè)投資者對于交易系統(tǒng)的要求越來越高,對Ta們來說每一秒都至關(guān)重要,速度就是生命和金錢(如:新股剛上市和次新股第二波上漲、突發(fā)利好、重大利空賣出)。
1.1.2、行情數(shù)據(jù)瞬息萬變,盈利的機(jī)會轉(zhuǎn)瞬即逝,擁有更低的時延、更快的響應(yīng),意味著能精準(zhǔn)把握買賣機(jī)會和點位。交易系統(tǒng)的處理速度越快,就越有可能在瞬息萬變的市場中占據(jù)優(yōu)勢,以至于Ta們愿意付出巨大的代價來爭取一微秒的時間優(yōu)勢。
1.1.3、各大券商紛紛響應(yīng)市場和客戶的需求,要么自研、要么和三方聯(lián)合開發(fā)、要么采購三方的極速交易整體解決方案和系統(tǒng)。為客戶提供了優(yōu)質(zhì)的低時延交易服務(wù),助力公司機(jī)構(gòu)交易業(yè)務(wù)始終站在市場前列,搶點客戶和市場。注:一般開通極速交易投資者的資產(chǎn)要高達(dá)100W,傭金費率是萬分之3起。
2. 技術(shù)發(fā)展
1.2.1、隨著計算機(jī)技術(shù)和金融科技的快速發(fā)展,軟件方面:特別是云計算、大數(shù)據(jù)、算法、FPGA(現(xiàn)場可編程門陣列)、超低時延轉(zhuǎn)發(fā)技術(shù),硬件方面:服務(wù)器(CPU、內(nèi)存)、交換機(jī)和網(wǎng)卡更新?lián)Q代快,性能一代比一代強(qiáng),網(wǎng)絡(luò)方面:有百兆、千兆和萬兆專用光纖。以下是從時延、抖動、帶寬、吞吐量和時鐘同步等方面綜合測試評估表,如下圖所示:
圖及數(shù)據(jù)源于:上交所技術(shù)服務(wù),若侵權(quán)請聯(lián)系刪除
圖及數(shù)據(jù)源于:上交所技術(shù)服務(wù),若侵權(quán)請聯(lián)系刪除
3. 政策支持
1.3.1、證券行業(yè)中比較特殊,若僅有客戶需求,技術(shù)又能支撐客戶需求發(fā)展這永永不夠的,還得要有政策的允許和支持,像15年場外配資,雖然客戶有強(qiáng)烈的需求、技術(shù)又能滿足和支撐配資需求發(fā)展,最后監(jiān)管機(jī)構(gòu)依法打掉場外配資,挽救多少家庭。
1.3.2、解決客戶對于交易時延的極致需求,降低交易系統(tǒng)在低時延、提升交易系統(tǒng)高并發(fā)等,監(jiān)管機(jī)構(gòu)出臺和頒布了《證券期貨市場程序化交易管理辦法(征求意見稿)》、《證券公司收益互換業(yè)務(wù)管理辦法》和《關(guān)于加強(qiáng)程序化交易管理有關(guān)事項的通知》等法規(guī)及自律規(guī)則,更是為量化投資機(jī)構(gòu)提供了規(guī)范的市場參與指引,助力二級市場流動性更加活躍。
圖及數(shù)據(jù)源于:券商中國,若侵權(quán)請聯(lián)系刪除
二、定義/流程
證券交易鏈路和極速交易的背景上面已聊了,現(xiàn)我們一起來聊聊:證券交易鏈路和極速交易定義/流程等。
1. 證券交易鏈路
2.1.1、證券交易鏈路:證券交易鏈路是過程,整個交易過程中所涉及眾多的交易環(huán)節(jié)和參與方。一般而言,證券交易鏈路包括以下幾個環(huán)節(jié):交易所、券商、投資者、清算機(jī)構(gòu)、存管銀行、監(jiān)管機(jī)構(gòu),大家各司其職共同推動證券交易有序、健康、穩(wěn)定發(fā)展。
2.1.2、證券交易鏈路流程:登錄交易軟件->獲取行情 -> 發(fā)出下單指令->券商柜臺(服務(wù)器)->驗資驗券->柜臺報盤機(jī)->報送至交易所->交易所撮合成交->交易數(shù)據(jù)返回客戶。
2.1.3、衡量證券交易鏈路指標(biāo):有5個 – 往返延時指標(biāo)、交易柜臺內(nèi)部延遲、交易策略服務(wù)器至交易柜臺延遲、操作系統(tǒng)延遲。下圖是全鏈路時延的節(jié)點及延遲的時長(注:此圖找了很久,才從南京證券科技先鋒公眾號找到,主要向大家展示延遲節(jié)點和時長)。
圖及數(shù)據(jù)源于:南京證券科技先鋒,若侵權(quán)請聯(lián)系刪除
簡單提下往返延時指標(biāo),剩下其它指標(biāo)不太了解,待弄清楚后再和大家聊下。交易延遲高最常用的指標(biāo)是往返延時(Round Trip Time),即交易訂單從客戶策略服務(wù)器發(fā)至經(jīng)紀(jì)公司交易柜臺,交易柜臺內(nèi)部處理后發(fā)往交易所,交易所確認(rèn)報單后發(fā)送回報給交易柜臺,再從柜臺發(fā)送至客戶策略機(jī)的一來一回整體鏈路的耗時。
2.1.4、交易鏈路上改造點:有低時延交換機(jī)、低時延網(wǎng)卡、操作系統(tǒng)、數(shù)據(jù)庫、程序代碼跨平臺適配編譯等等。
小結(jié):1、交易鏈路如上圖,大致可以分為三部分,交易所行情送達(dá)(交易下行部分)、客戶系統(tǒng)生成交易信號和客戶委托傳輸(交易上行和交易下行部分)。其中,作為券商向客戶提供的優(yōu)化主要集中在交易所行情送達(dá)和客戶委托傳輸上。
2、交易鏈路越短越快:但要做到交易鏈路上各節(jié)點都最短,要花不少成本:如從黑龍江到深滬交所,南北縱橫幾千公里,需要的時間肯定比較多。如果從行情到交易軟件就放在同一個物理位置,速度肯定更有優(yōu)勢。因此券商就要把交易主機(jī)放在券商機(jī)房里(機(jī)房就在交易所:兩地和三中心),距離更近,速度就更快?!皟傻亍敝干虾:蛷V東省(東莞市),“三中心”指上海陸家嘴證券大廈數(shù)據(jù)中心站點(以下簡稱陸家嘴站點)、外高橋衛(wèi)星通信地球數(shù)據(jù)中心站點(以下簡稱外高橋站點)
圖根據(jù)上海證券交易所競價撮合平臺市場參與者接口規(guī)格說明書整理,如有侵權(quán)請聯(lián)系刪除。
2. 極速交易
2.2.1、極速交易:通過券商提供的極速交易鏈路,包括主機(jī)托管、極速行情、極速柜臺和特定客戶策略交易系統(tǒng)等環(huán)節(jié),整合為一整套高效、快速、穩(wěn)定的交易解決方案。
2.2.2、極速交易系統(tǒng)架構(gòu)圖:各家極速交易系統(tǒng)架構(gòu)圖各有不同,但也有相同之處。附上兩版架構(gòu)圖方便大家學(xué)習(xí)和交流,圖一為通用簡潔的拓樸圖:
圖二:中金公司超極速交易系統(tǒng)架構(gòu)圖,架構(gòu)圖細(xì)節(jié)比較豐富方便大家較全了解和學(xué)習(xí)極速交易系統(tǒng)。
圖源于:金融電子化公眾號:江順鎖:中金公司超極速交易系統(tǒng)探索與實踐,如有侵權(quán)請聯(lián)系刪除
2.2.3、基于FPGA硬件加速技術(shù),實現(xiàn)低延時的行情解碼架構(gòu)圖
圖源于:金仕達(dá)科技公眾號,如有侵權(quán)請聯(lián)系刪除
三、技術(shù)
各大券商為了做到比別家先行一步,先發(fā)現(xiàn)行情機(jī)會,先委托成交,幫客戶賺別人還沒賺的錢。紛紛想盡辦法、組建團(tuán)隊、花重金去研發(fā)且落地極速交易一整套解極速交易方案和系統(tǒng)。
在開始前煩請大家思考10秒下:那到底有哪些因素影響交易系統(tǒng)的端到端時延?交易系統(tǒng)通常由行情柜臺、交易柜臺、策略服務(wù)器、交換機(jī)等設(shè)備組成,交易軟件、服務(wù)器、網(wǎng)卡、交換機(jī)等軟硬件設(shè)備的性能都會直接影響交易系統(tǒng)的整體延遲。
下面我們將分為軟硬件技術(shù)和大家一起聊聊。
1. 軟件技術(shù)
3.1.1、極速交易系統(tǒng)軟件部分一般由:行情、交易、策略、風(fēng)控、賬戶、數(shù)據(jù)和實時消息等組成。它們往往會涉及到如下技術(shù):全內(nèi)存、數(shù)據(jù)緩存加速、無鎖隊列技術(shù)、低延時總線、組播傳輸、負(fù)載均衡、線程綁核、數(shù)據(jù)庫高并發(fā)、大數(shù)據(jù)、云計算和AI算法等等技術(shù)。
3.1.2、極速交易系統(tǒng)軟件部分開發(fā)工具和開發(fā)語言:一般采用C++ 或C進(jìn)行開發(fā),以實現(xiàn)高效性能;在系統(tǒng)服務(wù)層如:賬戶管理、風(fēng)控、策略、實時通知等,一般采用:Java SpingBoot 和 Java的動態(tài)語言能力,實現(xiàn)熱部署與策略代碼的熱更新;在算法模型服務(wù),一般采用Python進(jìn)行開發(fā),采用成熟的 TensorFlow 、Torch 框架。采用什么開發(fā)工具和語言,要看客戶需求、公司技術(shù)積累、人才儲備和投入,謹(jǐn)慎選擇。
小結(jié):1、目前主流交易平臺軟件部分一般采用C++或C比較多,為了更低延遲交易框架設(shè)計方案利用編程語言和并建立多語言平臺接入方案,兼顧交易系統(tǒng)執(zhí)行速度和交易策略模型搭建的效率。這里主要不看廣告,看療效!
2、一套完善的交易系統(tǒng)除了以上提的之處,還有滿足高性能、易管理、易開發(fā)、高可用。真的不看廣告,看療效!否則相當(dāng)麻煩會出大問題的。
3.2、硬件技術(shù)
3.2.1、一整套極速交易系統(tǒng)解決方案,當(dāng)然少不了硬件的搭配,硬件有:低延時交換機(jī)的使用、低延時網(wǎng)卡的使用、機(jī)房物理位置調(diào)整、千兆高速寬帶、網(wǎng)絡(luò)防火墻調(diào)整、API啟動和穿透調(diào)優(yōu)、報盤機(jī)綁核、JVM性能優(yōu)化。軟硬結(jié)合、組播傳輸?shù)燃夹g(shù)來加速硬件柜臺內(nèi)的穿透延時,與極速柜臺上下游相關(guān)的模塊進(jìn)行調(diào)優(yōu)為了全鏈路調(diào)優(yōu)。
3.2.2、以上會用到不少硬件技術(shù),對于硬件技術(shù)完全是門外漢,太深奧了,不展開聊了以免誤人誤自。這里簡單提下:FPGA(現(xiàn)場可編程門陣列)技術(shù)。
3.2.2.1、FPGA(Field- Programmable Gate Array),即現(xiàn)場可編程門陣列,它是在 PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展出來的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點。
3.2.2.2、FPGA 普遍用于實現(xiàn)數(shù)字電路模塊,用戶可對 FPGA 內(nèi)部的邏輯模塊和 I/O模塊重新配置,以實現(xiàn)用戶的需求。它還具有靜態(tài)可重復(fù)編程和動態(tài)在系統(tǒng)重構(gòu)的特性,使得硬件的功能可以像軟件一樣通過編程來修改。
圖源于:百度圖片,如有侵權(quán)請聯(lián)系刪除
3.2.2.3、FPGA 的設(shè)計流程包括算法設(shè)計、代碼仿真以及設(shè)計、板級調(diào)試,設(shè)計者以及實際需求建立算法架構(gòu),利用 EDA 建立設(shè)計方案或 HD 編寫設(shè)計代碼,通過代碼仿真保證設(shè)計方案符合實際要求,最后進(jìn)行板級調(diào)試,利用配置電路將相關(guān)文件下載至 FPGA 芯片中,驗證實際運行效果。
3.2.3、FPGA的整體架構(gòu):主要包括可配置邏輯塊 CLB(Configurable Logic Block)、輸入輸出塊 IOB(Input Output Block)、內(nèi)部連線(Interconnect)和其它內(nèi)嵌單元四個部分。
3.2.4、FPGA開發(fā)流程:利用 EDA 開發(fā)軟件和編程工具對 FPGA 芯片進(jìn)行開發(fā)的過程。FPGA的開發(fā)流程一般如下圖所示,包括功能定義/器件選型、設(shè)計輸入、功能仿真、邏輯綜合、布局布線與實現(xiàn)、編程調(diào)試等主要步驟。具體可自行百度進(jìn)行了解。
3.2.4、FPGA行情開發(fā):基于FPGA的硬件加速的方法進(jìn)行行情的處理,F(xiàn)PGA有可編程、低延時的特性,基于RTL(寄存器傳輸級)級的邏輯編程,可以定制各種解碼方案,實現(xiàn)數(shù)據(jù)的并行處理,達(dá)到極低的延時,滿足金融證券交易者對低延時的需求。將通過萬兆以太網(wǎng)傳輸而來的行情信息送入FPGA中,再由FPGA進(jìn)行行情的解碼,過濾不需要的行情,發(fā)送給客戶服務(wù)器,客戶獲得行情信息。具體可自行百度進(jìn)行了解。
好了有關(guān)硬件及硬件編碼只能聊到這里了,真的是不了解實在是太深奧了,推薦大家有空去知呼看看:艾克雄寫的一篇文章:什么是FPGA?FPGA 簡介。
四、成本
通過前面和大家聊了相關(guān)極速交易解決方案、交易系統(tǒng)的內(nèi)容,在不同程度上對Ta們有了了解,進(jìn)一步介紹搭建極速交易解決方案、系統(tǒng)需要花費的成本,分別從軟件、硬件等角度向大展示,可能不一定準(zhǔn)確,供大家參考和學(xué)習(xí)。
基于以上內(nèi)容很難估算一套極速交易解決方案和交易系統(tǒng)的成本,預(yù)估成本在:5000萬以上,開發(fā)和維護(hù)基于FPGA的交易系統(tǒng)比較復(fù)雜,需要專門的技能和專業(yè)知識??紤]使用基于FPGA的解決方案的金融機(jī)構(gòu)應(yīng)評估其是否擁有內(nèi)部專業(yè)知識來開發(fā)和維護(hù)這些系統(tǒng),或者是否需要外包這項工作。
五、市面產(chǎn)品
5.1、一個市場繁榮與發(fā)展離不開,市場上廠商的努力與貢獻(xiàn)。以下收集到各廠商產(chǎn)品信息,數(shù)據(jù)源于:各廠家官網(wǎng)、公眾號、實盤和券商路演反饋,盡量做到公正和準(zhǔn)確。數(shù)據(jù)僅供參考慮不做任何實際性建議,歡迎大家留言,一起優(yōu)化下數(shù)據(jù)。(如:數(shù)據(jù)有不實煩請聯(lián)系修改,更歡迎其它廠商提供產(chǎn)品信息)。
注:速度方面:同一系統(tǒng)上的不同券商、同一券商上的不同系統(tǒng)都會因防火墻、硬件配置、網(wǎng)絡(luò)、調(diào)優(yōu)等會有差異。
5.2、源本打算收集各券商自研極速產(chǎn)品,但實在太難收集(歡迎券商提供產(chǎn)品信息)。
文章寫到這里就結(jié)束了,文章可能會有不足之處,歡迎大家給我多多提意見、留言反饋和補(bǔ)充,如有不妥之處,煩請大家指正,我們評論區(qū)見。
參考資料
1、【交易技術(shù)前沿】低延時網(wǎng)卡虛擬化在證券極速交易系統(tǒng)的最佳實踐 -上交所技術(shù)服務(wù)
2、FPGA技術(shù)在極速交易場景的應(yīng)用示范 -證券信息技術(shù)研發(fā)中心
3、申萬宏源聯(lián)合實驗室低時延技術(shù)負(fù)責(zé)人張宏的主題演講——《證券低時延交易系統(tǒng)全鏈路自主可控創(chuàng)新實踐》
4、江順鎖:中金公司超極速交易系統(tǒng)探索與實踐
5、各廠商公司官網(wǎng),公眾號
6、知乎 – 話題:現(xiàn)場可編輯邏輯門陣列(FPGA)
專欄作家
magbox勇,公眾號:圍爐喝茶聊產(chǎn)品,人人都是產(chǎn)品經(jīng)理專欄作家。專注證券基金產(chǎn)品、企業(yè)數(shù)字化、財務(wù)產(chǎn)品設(shè)計和開發(fā)。
本文原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載
題圖來自 Unsplash,基于 CC0 協(xié)議
該文觀點僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺僅提供信息存儲空間服務(wù)。
干貨滿滿!點贊。
文中舉的黑龍江到交易所的例子,問題沒得到解決,這套系統(tǒng)是怎么解決因為地理位置造成的時延不同的問題呢?比如,兩個人同時提交了一筆交易訂單,一個在黑龍江,一個在上海,這兩個人最終交易的時間是相同的嗎?
所用的時間肯定是不相同的,這個地理位置所造成的,數(shù)據(jù)在傳輸過程是需要時間,只這個時間很短而已人無法感知。