使用命令创建订单修复传单

这个示例展示了如何创建FIX Flyer™连接,处理发送FIX消息的事件数据,以及如何使用FIX消息提交各种订单。

FIX是一种金融行业协议,可促进低延迟交易。关于FIX协议的详细信息请参见解决交易社区

要访问示例代码,输入编辑FixFlyerExample.m在命令行。

连接到修复传单

导入FIX Flyer Java®库。

进口flyer.apps。*;进口flyer.apps.FlyerApplicationManagerFactory。*;进口flyer.core.session。*

创建FIX Flyer Engine连接c使用这些参数:

  • 用户名用户名

  • 密码密码

  • IP地址ipaddress

  • 端口号港口

  • 订单信息端口号orderport

用户名=“客人”;密码=“客人”;ipaddress =“example.fixcomputeserver.com”;端口= 12001;orderport = 13001;c = fixflyer(用户名、密码、ipaddress、港口、orderport);

向FIX会话添加侦听器和订阅

将FIX Flyer事件监听器添加到FIX Flyer Engine连接。通过使用示例事件处理监听器,在工作区浏览器中监听并显示FIX Flyer Engine事件数据fixExampleListener

要访问侦听器的代码,输入编辑fixExampleListener.m.或者,要以另一种方式处理事件数据,可以编写自定义事件处理侦听器函数。有关详细信息,请参见在文件中创建函数(MATLAB)。

处理FIX Flyer Engine事件e使用示例事件处理侦听器fixExampleListener.指定e任何的信。fixExampleListener返回监听器句柄

lh = addListener (c, @ (~, e) fixExampleListener (e、c));

订阅FIX会话并设置FIX传单应用程序管理器。在FIX Flyer会话中注册。将FIX Flyer Application Manager连接到FIX Flyer Engine并启动内部接收线程。

c.SessionID = flyer.core.session.SessionID (“α”...“β”“FIX.4.4”);c.FlyerApplicationManager.setLoadDefaultDataDictionary(假);c.FlyerApplicationManager.registerFIXSession (...flyer.apps.FixSessionSubscription (...c.SessionID,真的,0));c.FlyerApplicationManager.connect;c.FlyerApplicationManager.start;

创建固定消息

使用结构数组创建两个FIX消息订单.数组中的每个结构表示一个FIX消息。这两个消息都表示1000 IBM的卖方事务®股票。订单类型是先前引用的订单。订单处理指令是一个私有的自动执行。订单事务时间是当前时刻。FIX协议版本为4.4。

设置MsgType' D '表示新秩序。

秩序。BeginString {1} =“FIX.4.4”;秩序。CLOrdId {1} =“338”;秩序。{1, 1} =' 2 ';秩序。TransactTime {1} = datestr(现在);秩序。OrdType {1} =' D ';秩序。符号{1}=“IBM”;秩序。HandlInst {1} =' 1 ';秩序。MsgType {1} =' D ';秩序。OrderQty {1} =“1000”;秩序。HeaderFields {1} = {“OnBehalfOfCompID”“交易员”};秩序。BodyFields {1} = {“NoPartyIDs”“3”...“PartyID”' 1 '...“PartyRole”西班牙对外银行的...“PartyID”' 1 '...“PartyRole”“CVGX”...“PartyID”' 1 '...“PartyRole”“GSAM”};秩序。BeginString {2,} =“FIX.4.4”;秩序。CLOrdId {2,} =“339”;秩序。{2, 1} =' 2 ';秩序。TransactTime {2, 1} = datestr(现在);秩序。OrdType {2,} =' D ';秩序。{2, 1} =象征“IBM”;秩序。HandlInst {2,} =' 1 ';秩序。MsgType {2,} =' D ';秩序。OrderQty {2,} =“1000”;秩序。HeaderFields {2,} = {“OnBehalfOfCompID”“交易员”};秩序。BodyFields {2,} = {“NoPartyIDs”“3”...“PartyID”' 1 '...“PartyRole”西班牙对外银行的...“PartyID”' 1 '...“PartyRole”“CVGX”...“PartyID”' 1 '...“PartyRole”“GSAM”};

发送修正信息

使用FIX Flyer Engine连接发送FIX消息。状态包含用于成功传递消息的逻辑零。

状态= sendMessage (c,顺序);

返回订单信息

返回并显示订单信息o所有的订单。变量编辑器显示的内容o

o = orderInfo (c);openvar (“o”

替换一个订单。创建FIX消息取代更新数量为3378股。设置字段MsgType‘G’指定替换顺序。

替换。BeginString {1} =“FIX.4.4”;替换。CLOrdId {1} =338 _replace;替换。origClOrdId{1,1} =“338”;替换。符号{1}=“IBM”;替换。OnBehalfOfCompID {1} =“交易员”;替换。OrdType {1} =' D ';替换。OrderQty {1} =“3378”;替换。MsgType{1,1} =‘G’;替换。文本{1}=REST API取代的

发送FIX消息。要查看替换的订单,请检索并显示订单信息。变量编辑器显示的内容o

状态= sendMessage (c,取代);o = orderInfo (c);openvar (“o”

现在,取消订单。创建FIX消息取消和订单号338.设置字段MsgType“F”指定取消订单。

取消。BeginString {1} =“FIX.4.4”;取消。CLOrdId {1} =338 _cancel;取消。origClOrdId{1,1} =338 _replace;取消。符号{1}=“IBM”;取消。OnBehalfOfCompID {1} =“交易员”;取消。OrdType {1} =' D ';取消。MsgType{1,1} =“F”;取消。文本{1}=REST API取消的

发送FIX消息。然后检索并显示取消的订单信息。变量编辑器显示的内容o

状态= sendMessage (c、取消);o = orderInfo (c);openvar (“o”

收到修复的信息

使用示例事件处理侦听器fixExampleListener侦听来自FIX Flyer Engine的FIX消息。侦听器fixExampleListener返回表中的原始FIX消息fixResponse.显示表的前三列。的列名fixResponse包含返回的原始FIX消息中的FIX标记名称。列中的数据包含返回的原始FIX消息的值。

fixResponse (: 1:3)
ans = BeginString BodyLength MsgType  ___________ __________ _______ ' FIX.4.4 ' ' 219 ' ' 8 '

关闭修复传单连接

关闭(c)

另请参阅

||||

外部网站