我有字符串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