加密貨幣算法交易還是一個神秘的未知領域。本文是目前唯一一篇用最詳盡分析,將加密貨幣算法交易說透徹的文章。
撰文:KevinZhou,加密貨幣算法做市商及OTC交易商GaloisCapital聯合創始人,曾擔任Kraken交易業務負責人
編譯:NeoGe
在加密貨幣行業通過算法進行交易是個值得探索的領域。在本篇文章中,我們探討了加密貨幣業中交易算法的設計和實現。我們重點關注執行算法、做市算法和市場微結構需要考慮的幾個因素。我們還研究了實踐與理論的不同之處,尤其考慮了加密貨幣市場的特有問題該如何處理。
執行算法
執行算法的目標,是將投資組合的某種狀態轉換為另一種狀態,同時最大限度地降低其中的成本。比方說,如果你希望將BTC/USD的敞口提高1000倍,你大概不會將這筆交易訂單猛的砸到BitMEX的訂單里,因為這會導致價格大幅下滑。相反,你可以考慮在一段時間里通過多個不同交易所的市價和限價訂單的組合,來慢慢地達到你想要的頭寸。
一個執行算法通常有三層:宏交易員、微交易員和智能路由。
宏交易員這一層將大額元訂單或父訂單拆分為跨越一段時間的較小子訂單。這實際上是整個算法的調度部分。VWAP、TWAP和POV是宏交易員算法的常見簡單例子。
鏈聞注,幾個算法交易中的常用名詞需要解釋一下:VWAP:即成交量加權平均價格,它是將多筆交易的價格按各自的成交量加權而算出的平均價;
TWAP:即時間加權平均價格,它指在特定時間內的平均價格;
POV:即成交量百分比,這種交易算法用于執行大訂單的交易量,而不會對市場價格產生過多的影響。
通常,要設計一個復雜的宏交易員層,有許多不同的市場影響模型可供使用。市場影響模型,著眼于市場是如何對一次執行發生反應的。一次執行后市場是否保持原狀?還是偏離更遠?或是它能實現某種程度的恢復?兩個最具開創性的市場模型是Almgren-Chriss永久市場影響模型和Obizhaeva-Wang暫時市場影響模型。因為在實踐中市場影響并不是永久性的,所以,Obizhaeva-Wang模型似乎更符合現實。此模型提出之后,人們構建了許多新模型來解決其不足之處。
交易執行后市場影響的衰退
微交易員層為每個子訂單做決策,比如到底是通過市價訂單還是通過限價訂單來執行,如果是限價訂單,具體應該定什么價格。關于微交易員的設計的文獻要少得多。這是因為,子訂單的大小通常是整個市場的很小一部分,因此如何執行并不重要。
然而,加密領域卻非常不同,因為流動性非常薄,在實踐中即便普通規模的子訂單,價格下滑幅度也是相當顯著的。微交易員的設計,通常關注訂單到達在時間和深度上的分布、隊列位置以及市場微觀結構的其他特征。
市價訂單保證會執行,而未決限價訂單則沒有這樣的保證。如果無法保證執行,你可能會跟不上宏交易員設置的時間安排。
智能路由層,則決定在不同的交易所/交易地之間如何選擇路徑。例如,在某一給定的價格水平下,如果Kraken擁有60%的流動性,GDAX擁有40%的流動性,那么,微交易員決定的所有市價訂單,都應該是以60-40的比例分配到Kraken-GDAX。
你也許會對此提出不同觀點:市場中的套利者和做市商會將流動性從一個交易所轉移到另一個交易所。所以,如果你在Kraken執行一半的訂單,然后等待幾秒鐘,流動性會在套利者和統計套利者的作用下從GDAX轉移到Kraken,如此一來,你就可以用類似的價格完成剩余的訂單。
dYdX創始人:dYdX Chain所有DAO資金將完全由Token持有者控制:4月3日消息,dYdX 創始人在社交媒體發文表示,dYdX Chain 所有 DAO 資金將完全由 Token 持有者控制、抗審查、無多簽管理權限、所有驗證者將完全從 Token 質押者中選出。[2023/4/3 13:42:36]
然而,即使在這種情況下,套利者也會為了自己的利潤而向你收取額外費用,并轉嫁自己的對沖費用比如Kraken的做市費。還有一點,某些市場參與者會跨平臺地發布超過自己實際想要規模的訂單,并且一旦目標達成,就會搶先取消超額的訂單。
歸根結底,最好還是擁有屬于自己的原生智能路由。和第三方智能路由服務相比,原生智能路由還具有縮短延遲的優勢。依靠原生智能路由,你可以直接路由到交易所,而在前一種情況下,你需要先向第三方服務發送消息,然后他們才會將你的訂單路由到交易所。總之,三角形的任意兩邊之和大于第三邊。
做市算法
做市是指為市場中的其他參與者提供即時流動性并獲得補償。你承擔庫存風險以換取正向的預期價值。最終,做市商因為兩個原因獲得補償。
首先,市價接受方有很高的時間偏好并希望馬上成交。而為流動性提供便利的做市商則因他們較低的時間偏好和耐心而獲得補償。其次,做市商的PnL特性是左傾的,通常大多數人都是右傾偏好的。換句話說,做市商類似于競猜市場、賭場、保險公司和國營彩票的賭注經紀人。他們經常小贏,且不常大輸。因為采取了這種不受歡迎的回報策略,做市商獲得了可預期的價值的補償。
偏態
拔高來說,限價單其實是寫給其他市場參與者的免費期權。市場其他參與者有權利但沒有義務以限價單給定的價格買入或賣出一筆資產。在一個信息完全的市場中,沒有人會出售免費期權。只是因為,市場的總體并不具有完全信息,所以出售免費期權才有意義。
另一方面,如果市場完全不知曉信息,那么,即便只有極小的價差,一個風險中立的做市商也愿意出售這些免費限價單的期權,因為這時所有交易都是噪音。顯然,真實市場有各種參與者,每個參與者都具有各自的知情水平。
在設計一個做市算法時,需要考慮三個視角:做市商的、市場接受方的和其他做市商的。
做市商自己的視角,以他們的庫存清單來表達。如果你已經有太多的資產敞口,那么你可能會往低的方向傾斜/偏斜你的報價。如果資產敞口太小,你會有相反傾向。這樣做你有兩個不同的理由。首先,作為一家公司,你有一定程度的風險厭惡。這種效用函數的形狀有許多結構。其次,作為市場上的被動的流動性提供者,你將面臨逆向選擇風險。積極的流動性接受者可能會知道你不知道的東西,或者只是比你更聰明。從根本上說,這是向市場出售免費期權的人都要面臨的問題。
此外,即使在機械層面,擊中你的買價的市價單,會將按市值計價的價格降低,而滿足你的賣價的市價單則會將按市值計價的價格抬高。在任何交易的確切時刻,你總是站在錯誤的一邊。除此以外,做市商的報價會產生被動的市場影響。換句話說,將一筆訂單提交到訂單簿這一行為本身,就會有一點點作用把市場推離你。
風險厭惡個體的效用函數
市價接受方的觀點,則表現在訂單流上。成交量加權的訂單到達頻率,作為一種從訂單簿頂部算起的深度函數,應該具有幾個關鍵屬性。
該函數應該是
BTC跌破16000美元:金色財經報道,行情顯示,BTC跌破16000美元,現報15997.4美元,日內跌幅達到4.11%,行情波動較大,請做好風險控制。[2022/11/21 22:12:40]
遞減;
凸;
隨著深度變為無窮,函數趨近于0。
某一些公式要求這種強度函數可以連續兩次微分,這種易處理性是一個好且合理的預設,但最終也是沒有必要的。此外,還有各種各樣的公式來計算「距離訂單簿頂部的深度或距離」。你通常既可以使用「合理的中間價」,也可以使用從各個角度出發的所謂最佳買價和最佳賣價。這兩種方法存在不同的權衡取舍,我們在這里就不討論了。
此外,還有一個讓人燒腦的問題是,「合理的中間價」到底是什么。
稍微補充幾句,所謂最佳買價和最佳賣價之間等距的中價,很容易受到噪音的影響,當垃圾訂單被提交又被取消時就會發生這種情況。此外,如果兩個案例具有相同的訂單簿形態,那么最新發布的最佳買價,意味著會有一個低于最新發布的最佳賣價的合理價格。還有另一個問題,即發布記錄的歷史是否重要,如果重要,那我們到底應該從時鐘時間還是交易量時間的角度來觀察它?基于訂單流的特征,做市商的最優限價單的位置到底設在哪里?如果你挨著訂單簿頂部提交緊密的報價,那么你會頻繁成交,但每次都賺得很少。如果你提交深度報價,你的成交不會那么頻繁,但每次你都會賺更多。這實際上是一個具有唯一全局最大值的凸面優化問題。
另一個需要考慮的問題,是訂單流的跨時間到達,看起來有點兒像泊松過程。有人認為它更接近霍克斯過程。而且,做市商試圖捕獲的買價賣價波動,是均值回歸的最短期版本。由于這種超短期的均值回歸是通過局部波動來縮放的,因此做市商應該在量大時擴大報價范圍,而在交易量小時縮緊報價范圍。
訂單到達強度隨著深度的變化
霍克斯過程
其他做市商的視角則由訂單簿代表。訂單簿揭示了其他做市商的一些私密信息。訂單簿頂部附近,如果賣單多于買單,則表明其他做市商更愿意出售而不是購買資產。這有兩種可能,一是這些做市商的庫存中已經有巨大的正向不平衡,二是他們認為價格在短期內更有可能下降而不是上漲。
不管哪種情況,作為做市商的你,都可以根據訂單簿的扭曲來調整報價。而且,當做市商互相競爭時,如果最小報價單位很小,你就會經常看到所謂的「搶價差交易」行為。
做市商通過互相搶價或在訂單簿上爬樓梯來爭奪成交優先權,直到抵達投降點,最終獲得成交優先權的勝者只有一位。
在確定勝者之后,亞軍通常會撤回到比下一個最佳買價或賣價差一個報價單位的位置。如果你沒獲得成交優先權,你還可以獲得第二成交優先權,并且只需支付剛剛夠的費用。這將導致一個回歸,即冠軍退回到亞軍前面的最近報價單位,爬樓梯游戲重新開始。你可以在真實的加密市場數據中看到這種爬樓梯游戲。
買單側的爬樓梯游戲
最后,長時段的方向性的信號可以覆蓋在做市算法上,這樣的話,做市算法的目標就不再是保持訂單庫存的持平或恒定,而是考慮一些長期目標以及相應的偏差來促其實現。
速度
速度很重要,原因有兩點。首先,你可以在訂單取消之前擊中訂單簿中的訂單。其次,你可以在訂單被擊中之前取消訂單簿中的訂單。換句話說,你想要點射陳舊訂單,也希望自己的訂單別被他人點射。套利算法和執行算法更看重前者,而做市算法更看重后者。
CZ:Binance原本想拯救用戶,但后來發現FTX挪用用戶資金:11月12日消息,幣安首席執行官趙長鵬在2022年印度尼西亞金融科技峰會上發表講話時再次談到了FTX崩盤,他表示,我認為基本上我們現在已經倒退了幾年。監管者理所當然地會更加嚴格地審查這個行業,老實說,這可能是一件好事。過去三天只是暴露出問題,其實問題存在的時間更長,這些問題不是最近三天造成的。Binance原本的意圖是想拯救用戶,但后來發現FTX挪用用戶資金的消息,尤其是美國監管機構的調查(讓我們意識到)我們不能再碰它了。(cointelgraph)[2022/11/13 12:56:48]
通常,從速度獲益最多的策略也是最基本的策略。任何復雜的邏輯都必然減慢往返的時間。這些類型的算法策略是交易世界的F1賽車。為了速度,數據驗證、安全檢查、儀表監測、編排等都可以被剝掉。跳過OMS、EMS和PMS,直接將你GPU上的計算邏輯連接到同一地點交易所的二進制API上。這是一個快速而危險的游戲。
另一類速度敏感策略,即相對統計套利策略,要求服務器設置在多個交易所之間的物理位置,而不是與某一個交易所位于同一地點。雖然它們不能最快獲得任何單個交易所的數據,但它們將在任何其他策略之前獲得數據,并可在相關性和協整數據的基礎上采取行動。
世界上最大的各家證券交易所之間最佳交易節點位置
在速度游戲中,獲勝者拿走絕大多數所得。在最簡單的例子中,如果存在套利機會,誰先獲得套利機會,誰就搶得利潤。第二名會得到面包屑,第三名則一無所有。收益很可能是冪律分布的。
速度游戲也是一場打到底線的競爭。一旦所有人都從光纖升級到微波或是激光網絡,每個人都會回到同一起跑線,任何此前的優勢都會被磨平。
最小報價單位、填單優先權和隊列位置
大多數匹配引擎遵循價格-時間的優先級。價位更好的限價單比價位更差的限價單成交得早。如果多個限價單的價格相同,那么早提交的訂單將比晚提交的訂單更早成交。
幣安將訂單簿切分至最小8位小數。如果某個資產代碼的價格為.000001,則.00000001的報價就是這一價格的1%。如果某資產的價格為.0001,則.00000001的報價則是這一價格的0.01%,即1個基點(1bps)。兩者差異巨大。在前一種情況下,跑到一個大訂單前面需要花費整整一個點,因此時間優先更重要,而在后一種情況下,資金成本要便宜100倍,因此價格優先更重要。
換句話說,如果你必須支付整整1%來獲得成交優先權,那它可能并不值得,因為你支付了相對來說過高的費用,同時只是相對較小地增加了成交的可能性。這種情況下,也許排隊等候更好。但如果你只需要支付0.01%就能獲得成交優先權,那你最好這樣做,因為你只是耗費了一點點成本,卻相對較大地增加了成交的概率。較小的成交單位,有利于價格優先策略,而較大的成交單位則有利于時間優先策略。
這自然引出了下一個問題:你的隊列位置值多少錢?
成交概率,作為隊列位置的一個函數
訂單簿增量
在訂單簿的某一價格水平,量的消減只有兩種方式:要么是交叉盤交易,要么是未決限價單被取消。如果是交叉盤交易,那么比此價格更好的所有其他價格水平,也會是交叉盤交易,量也會降低。我們可以在行情表上把開啟和取消的訂單一筆一筆的排列出來,并將每一個縮減記為一筆交易或一次取消。直觀地講,一筆交易意味著雙方同意以某一特定價格進行買賣,而一次取消則意味著,某一方決定不再以某特定價格買賣某資產。因此,從表面上看,我們可以說,如果某一筆最佳買價的訂單被取消,而不是被成交,那就是一個強烈的信號,表明市場將在短期內向下。
幣安聘請前巴西央行行長Henrique Meirelles擔任顧問:金色財經報道,據Watcher.Guru發推稱,幣安(Binance)聘請前巴西中央銀行行長Henrique Meirelles擔任顧問。[2022/9/6 13:10:44]
另一方面,在訂單簿的某一價格水平,只有一種方式可以增加量:即一筆未決限價單被提交了。
訂單簿中的量增和量減都揭示了市場參與者的私密信息,從而提供了短期的價格信號。
更好的價格指數和最優交易所費用
目前,大多數價格指數都是從多個交易所獲取交易數據并將它們匯總在一起以獲得成交量加權的平均價格。Tradeblock指數尤其特別,它會對不活躍和價格與同儕有偏差的交易所的權重加以處罰。而我們還能做什么呢?
在GDAX上,做市手續費為0bps,而市價接受方手續費為30個基點,如果一筆公布交易的價格為$4000/BTC、且是賣價側被命中,則意味著賣家以$4000/BTC的價格賣出,而買家則以$4012/BTC價格買入。這筆交易的「合理價格」應該接近$4006/BTC,而不是實際的發布價格。
如果換到Bittrex交易所,由于有25基點的費用同時適用于做市商和接受方,因此合理價格就是發布價格。換句話說,一筆$4000/BTC的發布成交,實際上是買家以$4010/BTC的價格購買,而賣家以$3990/BTC的價格賣出,兩者平均就得到此單的價格。
因此,從價格發現的角度來看,各交易所的行情表格不具有直接可比性,所以在構建價格指數時,應該刨去費用并標準化。
當然,這里還存在另一種復雜性,來自基于交易量的費用階梯,這可能會增加或減少做市商-接受方費用的不對稱性,因為費用是階梯型跳躍的,所以我們無法確定,買家買入以及賣家售出的準確價格。這也暗示了兩個有趣的推論。
首先,價格發現是有限的,并且有點精神分裂,尤其是碰到那些在做市商-接受方費用方面極不對稱的交易所。
假設GDAX的大多數賬戶都處于0/30bps的做市商-接受方費用等級,并且我們留意到GDAX在其BTCUSD的訂單簿上常有1分錢的價差,那么,每一筆在買價側發布的交易,其合理價格大概會低于此價格15bps,而每一筆在賣價側發布的交易,其合理價格大概會高于此價格15bps。因此,在平靜時期,「合理價格」就會在這兩點之間快速震蕩,兩者之間不會有顆粒度更細的價格發現。
GDAX訂單簿
其次,與生產者和消費者之間的稅收關聯一樣,做市商和接受方在費用分擔方面也存在類似的關聯。
如果你向做市商收取相對較多的費用,他們會拉大訂單簿的間隙,并將一些費用轉嫁給接受方。如果你向接受方收取相對較多的費用,那么做市商就會將訂單簿的間隙壓緊,并吸收掉接受方的一些費用。
極端案例是,如果你過度取悅做市商,那么訂單簿的價差就會縮小到最小報價單位,訂單簿也就無法進一步縮緊了。再往前一步,任何額外的費用都會以收入損失的形式落到交易所身上。通過這個極端案例,我們可以看到,費用落在哪一方的頭上并不重要,重要的是做市商和接受方費用的總和。
最終,就和稅收政策中的拉弗曲線一樣,交易所也面臨收費政策的收入優化問題。我們可以看到,極端情況與稅收政策的情形相同。如果交易所不收取任何費用,他們就不會有收入。如果交易所收取100%的費用,就不會有交易,所以他們也沒有收入。如果增加另一些理論,很明顯,交易所的收入與總費用水平的坐標圖是一個具有唯一最大值的凸函數。
Revv發布基于以太坊錢包的電子簽名Beta版產品:6月27日消息,文檔工作流程自動化平臺Revv宣布發布由以太坊錢包提供支持的電子簽名解決方案的Beta版產品,Revv用戶可以選擇他們的以太坊錢包來驗證身份、電子簽名文檔,并使用錢包相關的審計跟蹤來強化簽名證明。
據悉,該功能結合了電子簽名技術和區塊鏈基礎設施的力量,并將文檔簽名功能擴展到去中心化網絡。Revv將使用以太坊錢包進行文檔簽名成為鏈外過程,這意味著不涉及區塊鏈交互,而只涉及其加密功能,這也意味著執行這些電子交易不需要gas費。(Business Wire)[2022/6/27 1:34:08]
拉弗曲線
專有數據
每個OTC機構都有其交易對手地址的半唯一標記的圖形數據,以及這些地址和已知的交易所地址之間的貨幣流。這些被標記的數據為許多機器學習算法提供了一個良好的起點。
比特幣交易圖
每個礦工都有關于挖幣的邊際成本的專有數據。如果他們能感知在挖礦效率方面自己在全球礦工界的位置,他們就能獲得一份獨特的洞察力,明了短期供應過度或短缺的態勢。
黑箱
每個人都知道黑箱不好。人們很難,雖然不是不可能,辨別發生了什么,當出現某些故障時,極難診斷原因所在。
然而,許多最好的對沖基金和自營交易公司最終還是會制造出黑箱。有幾個很好的理由可以解釋這一點。
首先,公司中人來人往,那些文檔記錄不佳的遺留代碼,新手接手后很難理解。其次,市場競爭意味著,任何某一個人就能完全理解的戰略最終都會輸給那些由專家和行家在其狹小領域中合作制定的戰略。最后一點,合并的策略通常比單獨運行的策略更好。例如,假設你有一個長期動量策略以及一個短期均值回歸策略。當然,S1可以從S2的短期執行優勢中受益,S2顯然也可以受益于S1的長期趨勢預測。所以很自然地,我們會把它們組合成一種合并策略,該策略比任何一個組成部分都更有效。最終,這個策略變成了黑箱,不是因為我們想要黑箱,而是不用考慮黑箱不受歡迎這種事。
馬列維奇的《黑方塊》
解開混淆因素
假設我們有一個模型,它用地面是否潮濕的二元指標來預測優步的出行率,而且這一模型運行效果非常好。顯然,地面潮濕和優步打車無直接聯系,但間接地,下雨會使地面潮濕,下雨也會讓人們想要更多地使用優步。即便我們的偽模型表現良好,它也容易受到尾部風險的影響。如果有條水管在城市的某地爆裂導致地面潮濕,或是發生自然洪水,我們都會做出錯誤預測,認為優步在此地的乘車率會提高。
一般來說,當A意味著B而且A意味著C時,B=>C這個模型可能有效,但只是偶然情況。因此必須認識到,預測關系應符合直覺和常識。盲目挖掘數據并發現強預測信號,這是不夠的。我們應該在信號匯成一個黑箱之前把其中的混淆因素剝離,因為一旦形成黑箱,這些因素將越來越難以解開。
舉另外一個例子,假設A=>B且B=>C。那么,A=>C這個模型將起作用,但級別低于B=>C這個模型。首先,A=>C可能會讓你利益受損,因為A可能不是導致B的唯一因素;也許A'也會導致B。其次,如果A=>B的關系不成立了,那么A=>C模型也會崩潰,但B=>C模型仍然有效。
特征選擇
讓我們轉向多因素模型,理想情況下各特征應盡可能統計上不相干。舉個例子,假設我們正在研究冰淇淋價格,將它設計為糖價和牛奶價格的一個函數。也許,更好的模型是使用糖價和季節。前一個模型里,各特征和通脹相關連,都是既屬于「食品原料/投入」又屬于「消費品」,而且都來自冰淇淋生產的供給側,而后一個模型則不同,兩個特征具備統計不相關性。當然,如果使用糖價、牛奶價格和季節這3個特征,可以產生一個更準確的模型。不過,隨著模型維度的增加,調校時間如果不是指數級增長,至少也會超線性延長。當你有20個特征時,運行某些優化方法會變得非常棘手,因此特征選擇是關鍵。我們應該放棄相互關連的特征,而選擇那些更具統計不相干性的特征。
認識論
在設計量化模型時,實證主義和演繹推理都很有價值。
純實證方法的一個缺陷是,我們無法在市場中進行受控實驗。我們無法在某一時間點同時嘗試兩種不同的操作來查看哪個表現更好。換句話說,與硬科學不同,軟/社會科學中沒有真正的反事實。尤其在交易中,我們無法精確衡量我們自己的行為對市場的影響。換句話說,在歷史的時間流中,當我們沒有交易時,我們無法知道,如果我們做了交易,訂單簿和訂單流會如何變動;在歷史的時間流里,當我們作了交易時,我們也無法知道,如果我們不做交易,訂單簿和訂單流會如何變化。
實證主義的另一個缺陷是,對于任何給定的歷史模式,存在無限多的模型,每個模型將符合這一歷史模式,但每個模型可以對未來做出一個完全不同的預測。休謨、維特根斯坦、克里普克、奎因、波普爾和塔勒布都有許多關于邏輯實證主義和歸納問題的批判和辯護,以及對這些觀點的進一步闡述。
純演繹推理的一個問題是,作為人類的我們容易出錯。推理鏈條上的任何一個邏輯錯誤都會立即使結果無效。此外,結論的可靠性不僅要求沿途的每個邏輯步驟都是有效的,而且也要求我們假設的前提本身也是真的并符合現實。由于模型必須易于使用,因此它們通常是對世界的簡化,并且其做出的預設不能和現實相違背。
我們來看一個例子。假設你希望針對一項資產的價格軌跡運行一次蒙特卡羅模擬。如果你獲得了該資產回報的歷史數據并從中直接取樣來模擬路徑,那么你會遇到以下問題:
在表示極端事件的尾部情形中,數據很稀疏;
你在數據中發現一些噪音、遠離某些未知的真實回報的概率分布。現在,假設你將歷史數據擬合到正態分布,然后從中為你的模擬路徑采樣。現在你遇到了一個問題,即事實上回報并不是正態分布的。或者干脆換一條路,你把歷史回報擬合到柯西分布或列維分布,更常見地是擬合到列維阿爾法穩定分布。到這一點時,模型變得越來越復雜,而你又不小心在代碼中寫了一個bug。經過幾天的辛勞,你找出問題并解決了它。代碼被推向生產,你擁有了一個工作模型……花了兩年時間。2年后,事實證明第5矩才是關鍵,而你的列維阿爾法穩定分布并沒有捕捉到現實的這一特征。基本上你參與的游戲就是這么一個過程。
蒙特卡羅模擬
最后,我通常使用兩種啟發式方法:1)當有疑問時,默認使用常識。2)如果其他方面都相同,簡單和節制優于復雜和臃腫。
真實世界的摩擦
擁有一個理論上有利可圖的算法是一回事,但處理現實的摩擦是另一回事。
假設你向交易所發送一個請求來發布訂單,通常你會收到一個回復,確認訂單已發布,或是發生錯誤,訂單未被發布。假如有一天,你的發布請求沒有收到任何回復。你會認為這個薛定諤訂單是發布了還是失敗了?你容易犯兩種錯誤:類型1,類型2,都是把訂單做了錯誤分類。一種錯誤類型會比另一種錯誤的損失更低嗎?
假設你在兩個不同的交易所之間運行套利策略。如果在兩個交易所之間做一對交易時,其中一家的API出問題了,你會怎么做?其中一家的交易可能已通過,而另一家的交易可能已失敗。現在你有了不想要的持倉敞口。處理這個問題的最佳方法是什么?
當交易所被DDoS攻擊或匹配引擎在負載下受壓時,你如何處理發布延遲和取消延遲?
當交易所對其API進行未證實、未公布的更改時,你該怎么辦?
假設交易所確實對其客戶的余額進行更新,而其執行交易的匹配引擎也在并行工作,這樣的話,在同一毫秒或微秒為交易成功而查詢出的余額,可能和向客戶報告的余額相沖突態,看起來就像一筆交易執行了,但余額還沒有發生改變。你該如何設計自己的系統,來與這個持續變化的世界狀態同步,而不顧交易所報告的狀態和你自己的發生沖突呢?
假設交易所的費用太高,你無法以模型推論的最優價格下達限價訂單。或者更糟,你的某些競爭對手與交易所在費用方面進行了私下交易。這會如何改變你的行為?
如果你的銀行周末不上班而加密交易是24/7運行,你如何處理法幣的再平衡?
可以說,同一筆資產在不同交易所并不能完全等值可互換。首先,每個交易所的交易對手風險都不同,這意味著這筆資產應該刨掉不同的負利率。其次,由于大多數交易所都有存/取限制,因此當達到限額,就意味著在一段時間內你無法在交易所之間物理地重新平衡資產。
在你的會計系統中,你如何處理分叉、空投、粉塵攻擊以及其他你無法控制和避免的情況?
以下是我們通常遵循的一些啟發式方法:
任何可能出錯的東西,一定會出錯,甚至是你目前無法想到的東西,所以要把事情構建得失敗時也失敗得優雅。
你和你所連接的所有第三方都會犯錯。
與面向消費者的技術不同,不要打碎事物后再快速迭代;如果你損失太多錢,你將沒有第二次機會。
盡可能到處創建系統和做數據備份,并在操作流程中創建冗余以防人為錯誤
不要使用浮點類型,因為碰到價格非常低的資產類別時,精度損失可能非常嚴重。
從API速率限制中保留足夠的API調用,以準備突然取消所有未結訂單。
最后的想法
交易是世界上唯一的直接目標是將資本轉化為更多資本的工作之一。再加上加密業狂野西部的性質,你得到一個快速致富的污水池。每個人都想要簡單的答案,但沒有人想學習手藝。人們希望電視里的達人告訴他們價格目標、何時購買以及何時售出。他們希望以99.99美元的價格購買在線交易課程,或者以每月19.99美元的價格購買基于TA的算法策略。但實際上沒有人會賣給你一個能印錢的魔盒;他們會為自己保留它。沒有什么關于盈利和損失的神奇公式。市場不斷發展,游戲隨著時間的推移變得越來越難。
保持領先優勢的唯一方法是聘請最優秀的人才,他們可以適應生態并不斷超越自我。
市場是一個巨大的撲克牌桌,數百萬玩家坐下來,每個人都相信他/她可以超越他/她的鄰居。坐在這張桌子旁的人,其實已經是一種自我選擇。獲勝意味著你要比牌桌上一半多一點的資本玩得好,這反過來意味著,你需要比90%的玩家更優秀,因為資本以冪律的方式匯總到贏家手里。
在文化上,交易游戲與風險投資不同。在硅谷,成為彼得·泰爾所謂的明確的樂觀主義者是值得的。你需要相信新技術將改變世界,你能夠并且將會制定實現這一目標的方法。
在遍布自營交易公司的芝加哥,文化差異很大。在芝加哥,成為一個有極高對抗性思維的人是值得的。每個人都像你一樣如此渴望成為贏家,而且每次你進行交易時,你的腦海中都會出現那個嘮叨的想法:也許對面的人知道你不知道的事情。
在面對市場中的任何真正競爭之前,硅谷的創業公司必須首先與世界的冷漠作斗爭。而交易類公司則不同,盡管沒有需要打交道的顧客,他們從一開始就無法避免競爭。最強的交易公司,把自己包裹在秘密之中。
加密貨幣交易是這兩個世界的交匯點,在這個新生的領域目前還沒有明確的贏家。我們GaloisCapital渴望實現這一目標。
鏈聞獲得本文作者授權翻譯并發表該文章的中文版本。
親愛的BKEXer: BKEXGlobal將于新加坡時間2019年9月9日15:00上線DCR.
1900/1/1 0:00:00尊敬的用戶: BiKi.com即將開放IPC的充值、提現,并開放IPC/USDT交易對,具體時間如下:1、開放充值時間:9月5日16:00;2、開放提現時間:9月6日16:00;3、開放交易時間.
1900/1/1 0:00:00美國資產管理巨頭富蘭克林鄧普頓投資公司已于9月3日向美國證券交易委員會提交了一份政府貨幣市場基金的初步招股說明書.
1900/1/1 0:00:00據Kucoin官方消息,KuCoin將于9月10日18:00開放Amino(AMIO)交易服務,并支持交易對AMIO/BTC和AMIO/USDT.
1900/1/1 0:00:00XChange交易所于7月19日至7月26日舉辦持倉比賽。所有XChange的用戶,將根據BCH和XPS的持倉量進行排名,活動期間2個幣種持倉排名前100的用戶總共將瓜分1,200,000XCE.
1900/1/1 0:00:001.點擊右上角資產,點擊進入資產管理。?2.選擇需提現的幣種,在這里以GGC為例,點擊提現。3.輸入提幣地址、提取的數量,點擊提幣.
1900/1/1 0:00:00