用Quickfix详解Fix(四)–核心类分析和初始化



有了一些Fix基本概念后,接下来继续学习Fix协议(主要来学习Session level协议),今天就以QuickFix的启动初始化来讲解,在QuickFix启动初始化其间,都涉及了哪些重要的Fix 协议内容.

名词:

Acceptor ,通信双方,服务器所在方initiator,通信双方,客户端所在方Fix connection (Fix连接),官方文档说明一般包括3个部分,登陆,交换信息,退出,个人觉得还应该包括物理网络连接.Fix Session(Fix 会话),官方文档说明Fix Session可以有一个或多个Fix connecion组成.即Fix session可以多次登陆.它是一个逻辑的概念.一个Fix Session一般会有几个重要标示以区分一个Fix Session,如,包含Fix版本号字符串(如:FIX.4.2),发送者ID,接受者ID等),这样Fix Session每发送一个消息时候,消息头里面的BeginString,SenderCompID,TargetCompID 被赋值.当消息通过Fix connecion的物理网络连接到达对端的时候,对端可以根据消息头里面的标示找到自己端的Fix Session去处理消息.

QuickFix 关键类:

1.quickfix.Application

quickfix.Application类型对象,因为quickfix.Application里面定义了几个方法

onCreate –>当一个Fix Session建立是调用

onLogon –>当一个Fix Session登录成功时候调用

onLogout –>当一个Fix Session退出时候调用

fromAdmin–>当收到一个消息,经过一系列检查,合格后,属于Admin 类型时候调用

fromApp–>当收到一个消息,经过一系列检查,合格后,不属于Admin 类型时候调用

toAdmin–>当发送一个admin类型消息调用

toApp—>当发送一个非admin(业务类型)消息调用

一般情况下,如果您的应用程序需要用到Quickfix 时候,你只需要定义自己的Application类,然后根据您自己的业务实现上述几个方法即可。

2. quickfix.MessageStoreFactory , quickfix.MessageStore

这2也是接口,主要用来给Fix Session持久化类型(如,用文件存储,数据存储,存储的内容包括,状态,创建时间,消息,及其自己维护的发送序列号和接受序列号等)

quickfix.MessageStoreFactory的有 quickfix.JdbcStoreFactory ,quickfix.FileStoreFactory 两个实现,

quickfix.MessageStore 也有2种实现。quickfix.JdbcStore,quickfix.FileStore .

其中JdbcStoreFactory 负责创建JdbcStore , FileStoreFactory负责创建FileStore

quickfix 默认用文件存储,因为文件存储效率高。

如果你想自定义持久方式,你可以自己定义MessageStoreFactory的实现,并且自定义一种MessageStore

3.quickfix.LogFactory ,quickfix.Log

这2个也是个接口,负责创建不同类型的Log日志。QuickFix 提供了3中实现

quickfix.ScreenLogFactory–>负责创建quickfix.ScreenLog,即日志输出在终端屏幕上。

quickfix.JdbcLogFactory–>负责创建quickfix.JdbcLog,即日志输出在数据库中.

quickfix.FileLogFactory–>负责创建quickfix.FileLog,即日志输出在文件系统中

如果你想自定义Log输出,就请自己定义一个LogFactory的实现和一个quickfix.Log实现。

4.quickfix.MessageFactory ,quickfix.Message

该接口负责创建 quickfix.Message ,由于Fix有多个版本,所以在Fix的不同版本有一个实现

quickfix.fix40.MessageFactory

quickfix.fix41.MessageFactory

quickfix.fix42.MessageFactory

quickfix.fix43.MessageFactory

quickfix.fix44.MessageFactory

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值