惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
Engineering at Meta
Engineering at Meta
GbyAI
GbyAI
MongoDB | Blog
MongoDB | Blog
Blog — PlanetScale
Blog — PlanetScale
腾讯CDC
U
Unit 42
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Apple Machine Learning Research
Apple Machine Learning Research
M
MIT News - Artificial intelligence
人人都是产品经理
人人都是产品经理
Hugging Face - Blog
Hugging Face - Blog
MyScale Blog
MyScale Blog
小众软件
小众软件
博客园 - 三生石上(FineUI控件)
N
Netflix TechBlog - Medium
阮一峰的网络日志
阮一峰的网络日志
博客园 - Franky
Recent Announcements
Recent Announcements
A
About on SuperTechFans
Stack Overflow Blog
Stack Overflow Blog
The GitHub Blog
The GitHub Blog
D
Docker
H
Hackread – Cybersecurity News, Data Breaches, AI and More

博客园 - 可乐加冰

推荐一个单元测试模拟框架:Nsubstitute QuickFIX/N与QuickFIX的.NET封装不同之处 QuickFIX/N入门:五、如何自定义FIX QuickFIX/N入门:三、 如何配置QuickFIX/N QuickFIX/N入门:二、发送消息及接收消息 QuickFIX/N入门:一、如何创建一个QuickFIX/N的应用程序 转、分享:PMP学习资料、考试资料推荐:第四版-2008版-吴永达 关于“类型初始值设定项引发异常” 浪费时间的主观原因 关于C#调用VC++.net程序集出现0x800736B1的异常 关于微软发布的Microsoft 图表控件 C#后期绑定方式来调用COM对象 Windows Mobile开发资源相关下载收录 值得珍藏的五十句话 Fund Managers Switching to Algorithmic Trading[转] winform窗体中嵌入显示Excel文件 让CheckBoxList,CheckBox 控件不能操作 - 可乐加冰 - 博客园 关于世界杯 C#在word文档中替换字符串
QuickFIX/N入门:四、使用消息循环分组
可乐加冰 · 2012-04-29 · via 博客园 - 可乐加冰

分组(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);

}