Python 标记号到名称字符串
在QuickFix中,如何使用Python从标记号中获取标记的名称?例如,对于OrdStatus,如何将标记号5转换为字符串“OrdStatus\u Cancelled”?.NET: 如果您使用的是QuickFIX/N,那么可以使用Python 标记号到名称字符串,python,quickfix,Python,Quickfix,在QuickFix中,如何使用Python从标记号中获取标记的名称?例如,对于OrdStatus,如何将标记号5转换为字符串“OrdStatus\u Cancelled”?.NET: 如果您使用的是QuickFIX/N,那么可以使用DataDictionary实例实现这一点,该实例包含您想要的任何数据源(例如FIX42.xml)。请注意,您可以获取与给定的会话相关联的DataDictionary实例,或者分别使用会话的属性会话数据字典和应用数据字典获取应用程序本身 考虑一下这个简单的C#程序:
DataDictionary
实例实现这一点,该实例包含您想要的任何数据源(例如FIX42.xml)。请注意,您可以获取与给定的会话相关联的DataDictionary
实例,或者分别使用会话
的属性会话数据字典
和应用数据字典
获取应用程序本身
考虑一下这个简单的C#程序:
C++/Python:
C++ >代码>数据字典< /Cord>类有一个方法:
其中一个示例中的以下片段(添加了注释)演示了如何在给定的DataDictionary
实例中使用getValueName
# Create a DataDictionary
def setUp(self):
self.object = fix.DataDictionary()
# Add a dummy value
self.object.addValueName( 23, "BOO", "VALUE_23_BOO" )
# Test that the dummy value's name in the dictionary matches what was set
self.assertEquals( "VALUE_23_BOO", self.object.getValueName(23, "BOO", "")
您正在使用哪个版本的QuickFIX?快速修复/N?快速修复/J?C++也能提供一个使用Python的例子吗?谢谢更新了一个Python示例。
bool getValueName( int field, const std::string& value, std::string& name ) const
{
ValueToName::const_iterator i = m_valueNames.find( std::make_pair(field, value) );
if(i == m_valueNames.end()) return false;
name = i->second;
return true;
}
# Create a DataDictionary
def setUp(self):
self.object = fix.DataDictionary()
# Add a dummy value
self.object.addValueName( 23, "BOO", "VALUE_23_BOO" )
# Test that the dummy value's name in the dictionary matches what was set
self.assertEquals( "VALUE_23_BOO", self.object.getValueName(23, "BOO", "")