我有字符串FIX消息作爲輸入,我想將它轉換成FIX消息。我正在使用QuickFix 1.13.3(我從quickfix網站下載了幾天)如何解析字符串FIXMessage到C#中的FIXMessage對象#
我是QuickFix的新手。 google返回的大部分示例代碼/幫助都是針對Java的,並且當應用程序將FIXMessage有效內容視爲字符串時,也沒有建議使用直接的方式。
我在網上看到的大多數樣本都是人們使用QuickFix進行端到端的情況,即通過套接字進行通信以獲取消息並破解它。
在我的情況下,我有我自己的通信層,它只是給我一個字符串有效載荷表示一個完整的FIX FIX消息。我需要的只是解析字符串並獲取所有標籤/值的列表。
儘管我自己寫了一個小實用程序來使用標準的string.split()來解析FIX消息......但是有人建議我使用QuickFix,因爲它支持所有事情。
但我很努力地開始即使是QuickFix上的一項非常基本的任務,因此任何幫助解析字符串有效載荷將非常感激。
下面是我找的
//轉換器或破解
public QuickFix44.Message GetMessage(string payload);
//來電
string newOrderSinglePayload = "8=FIX.4.49=13635=D..............";
QuickFix44:Message message = GetMessage(newOrderSinglePayload);
if (message is QuickFix44.NewOrderSingle)
{
//I am happy
}
如果QuickFix的是太多這個簡單的工作,然後我打開使用任何其他工具(免費&開源)
在他們的.NET API,ExecutionReport構造函數中,或者事實上任何代表特定類型(即NOS)的構造函數都不會將消息類型作爲輸入。它的簽名是ExecutionReport(string orderId,string,int ........),就像當某人有所有輸入時創建ER一樣 – Ishwar 2013-05-13 08:59:19
Ugh。對不起,我不太瞭解包裝API。它在某些方面與C++有所不同,令人沮喪。您是否嘗試過[QuickFIX/n](http://quickfixn.org),本地C#端口? – 2013-05-13 14:38:24
我添加了如何在QuickFIX/n中完成它。 – 2013-05-13 14:42:09