博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
QuickFIX/N入门:四、使用消息循环分组
阅读量:7213 次
发布时间:2019-06-29

本文共 1661 字,大约阅读时间需要 5 分钟。

分组(group) 是包含一个无序的字段的集合的命名类型。允许在一个循环组里出现重复的数据字段。  

QuickFIX/N 实现了在FIX消息创建和读取的组信息的功能

1) 创建循环分

创建一个循环分简单 创建一个分组类的实例向分组内添加字段,然后把它添加到消息中

var tcr = new QuickfiFix.FIX44.TradeCaptureReport();

var sidesGrp1 = new QuickFix.FIX44.TradeCaptureReport.NoSidesGroup();

sidesGrp1.Account = new Account("Silvio");

sidesGrp1.OrderID = new OrderID("09011900");

sidesGrp1.Side = new Side(Side.BUY);

var sidesGrp2 = new QuickFix.FIX44.TradeCaptureReport.NoSidesGroup();

sidesGrp2.Account = new Account("Sven");

sidesGrp2.OrderID = new OrderID("2000");

sidesGrp2.Side = new Side(Side.BUY);

tcr.AddGroup(sidesGrp1);

tcr.AddGroup(sidesGrp2);

分组可以嵌套也就是分组还可以创建子分组 

var tcr = new QuickFix.FIX44.TradeCaptureReport();

var sidesGrp = new QuickFix.FIX44.TradeCaptureReport.NoSidesGroup();

sidesGrp.Side = new Side(Side.BUY);

sidesGrp.Account = new Account("Piola");

sidesGrp.OrderID = new OrderID("09011900");

var partyIdsGrp = new QuickFix.FIX44.TradeCaptureReport.NoSidesGroup.NoPartyIDsGroup();

partyIdsGrp.PartyID = new PartyID("Nesta13");

sidesGrp.AddGroup(partyIdsGrp);

tcr.AddGroup(sidesGrp);

2) 读取分组的信息

QuickFIX/N提供组字段和组索引两种方式来支持从组内读取标签信息:

var sidesGrp1 = new QuickFix.FIX44.TradeCaptureReport.NoSidesGroup();

sidesGrp1 = tcr.GetGroup(1, Tags.NoSides);

var sidesGrp2 = new QuickFix.FIX44.TradeCaptureReport.NoSidesGroup();

sidesGrp2 = tcr.GetGroup(2, Tags.NoSides);

组索引1开始。我们可以使用for语句来循环读取分组的字段值:

var noSidesGrp = new QuickFix.FIX44.TradeCaptureReport.NoSidesGroup();

for(int grpIndex = 1; grpIndex<= message.GetInt(Tags.NoSides); grpIndex = 1)

{

    noSidesGrp = message.GetGroup(grpIndex, Tags.NoSides);

}

转载于:https://www.cnblogs.com/jinglelin/archive/2012/04/29/2476235.html

你可能感兴趣的文章
【连载】Django入门到实战(一)
查看>>
分布式压测系列之Jmeter4.0
查看>>
PHP冒泡排序
查看>>
从java的NIO版hello world看java源码,我们能看到什么?
查看>>
Java™ 教程(控制流语句)
查看>>
【刷算法】LeetCode- 两数之和
查看>>
Python 中的 10 个常见安全漏洞,以及如何避免(上)
查看>>
GMTC 大前端时代前端监控的最佳实践
查看>>
类文件结构
查看>>
[Python教程] 一只乌龟其实也很酷 (1、动起来)
查看>>
手动实现bind函数(附MDN提供的Polyfill方案解析)
查看>>
八年磨一剑,阿里云ApsaraDB for HBase2.0正式上线
查看>>
HTTP/2 技术调研和性能分析
查看>>
ES6 javascript 实用开发技巧
查看>>
如何在新版的gitbook上写自己的书
查看>>
Java知识点总结(Java容器-ArrayList)
查看>>
Shared Event-loop for Same-Origin Windows(译)
查看>>
写一个简单易用可扩展vue表单验证插件(vue-validate-easy)
查看>>
使用stanford nlp进行依存句法分析
查看>>
JavaScript Promise查缺补漏
查看>>