它有道理嗎?旨在提高速度和彈性的協議,以消除用於高性能訂單執行的FIX層?消除FIX層以提高性能
回答
FAST協議旨在成爲FIX協議的「更快」版本。它需要的額外處理的數量意味着它只是「在電線上」更快,因此對於那些有交換箱的人來說不會很有效。像往常一樣,@ dumbcoder正確地說,優化和高性能機器是減少延遲的最佳方法。 FIX不是固有的緩慢,取決於你的實現,也是非常重要的。賣方和HFT的實施速度遠遠超過了hedgies和投資者使用的更便宜的。
你問交易所是否應該採用非固定協議接收市場消息?有些已經有替代品(例如納斯達克的ITCH和OUCH)。但是它們並沒有「消除」FIX層 - 它們仍然提供相同的功能,只是以不同的方式進行操作。如果你將消息視爲字節數組(而不是一個大字符串),然後只發布你所需要的東西(對於訂單接受,填充等等),那麼FIX實際上並不需要那麼慢。 ,可以是非常少的標籤),那麼FIX真的不是那麼糟糕。
FIX的關鍵賣點是它是一個行業標準。交易所可以自由開發自己的專有協議,這可以提高性能,但是每個人都可以寫入單一協議的事實是一件大事(即使它並不總是以最有效的方式實現)。
所以它不是FIX,用於最高性能的HFT交易? – 4pie0
@ cf16 - 不,它們使用FIX,但使用強大的機器和高度優化且快速的FIX消息生成器。大多數銀行使用商業或其內部的FIX消息庫。 – DumbCoder
有些人會使用FIX--我是一名基金經理,我們做HFT,我們有一個專有的FIX引擎。然而,我們並不關注超低延遲。如果我們這樣做了,我們可能會直接寫入每個交易所的「Native API」,這在理論上會給我們帶來性能上的提升。這種優化的唯一問題是衡量實際效率增益比您想象的要複雜得多,這意味着除非延遲是您的主要焦點,否則很難證明額外的工作是合理的。 – William
另一個需要探索的角度是協議是否有單獨的通信通道,或者是否是作爲其他協議的包裝實現。 在FIX上工作絕對是一個優勢,即實現在交換中輕微修改的情況下保持可移植性。
- 1. 刪除子查詢以提高性能
- 2. WPF VirtualizingStackPanel以提高性能
- 3. 併發性可以提高性能嗎?
- 4. 提高性能
- 5. 提高性能
- 6. 提高性能
- 7. 提高性能
- 8. 提高性能
- 9. 提高性能
- 10. 提高性能
- 11. 提高性能
- 12. 高效解析FIX消息C++
- 13. 通過刪除光標提高性能
- 14. 提高表變量刪除的性能
- 15. 提高包含上層和nvl功能的查詢的性能
- 16. ASP.NET - 提高性能
- 17. 提高Fabric.js性能
- 18. 提高性能SQL
- 19. 提高性能searchs
- 20. 提高ZF2性能
- 21. 提高DAL性能
- 22. 提高性能SQL
- 23. 提高ejabberd性能
- 24. 提高性能SP
- 25. 提高Netbeans性能
- 26. 提高WCF性能
- 27. TSQL插入和刪除重複項以提高查詢性能
- 28. 刪除主鍵(聚集索引)以提高插入性能
- 29. 刪除母版頁以提高網站性能
- 30. wcf-wcf byte []/memorystream/base64string以提高性能
我應該補充說,對於低延遲應用程序,查看延遲效果最大的位置非常重要。我們發現,實際上,當我們開始向數據庫存儲數據時,我們遇到了最大的性能問題。這與我們選擇的協議無關,因爲無論發生什麼情況,我們都必須保存相同的信息來填寫執行結果。關鍵是實際選擇行業標準的溝通方式,然後儘可能地進行優化。制定任何新協議的問題是,你必須讓人們接受它,否則你不能和任何人交談! –
FPGA如何對應它? – 4pie0
FPGA是完全不同的對話。 FPGA是使用的PLATFORM,而不是PROTOCOL。使用FPGA電路板需要將您的交易/路由邏輯編程到微處理器(FPGA芯片)上,這樣您就可以避免PCI總線以及與OS一起接收/發送訂單所涉及的其餘部分。您可以使用FIX或FAST或ITCH或其他任何軟件來發送/接收FPGA命令。 – William