nano FPGA回报加速使用手册

1. API使用

1.1. API接口:设置FPGA参数,在Init接口前调用

/// Description:设置FPGA参数,在Init接口前调用
/// bFpgaReturn : FPGA回报加速开关。设置true表示开启FPGA回报加速
/// nStreamLogCpuID : FPGA流日志开关。默认不开启流日志
virtual void SetFPGAParams(bool bFpgaReturn, bool bStreamLog = false) = 0;

1.2. 开发流程

参考demo目录下面的main.cpp的程序

2. 上期中金回报

2.1. 各委托状态下支持的字段

2.1.1. 委托回报(确认,部成,部撤,撤单,全成)

字段字段说明是否赋值备注
AccountID账号
OrderSysID报单编码
BrokerOrderID经纪公司报单编码
SessionID会话编码
OrderRef报单引用
InstrumentID合约代码
Direction买卖方向
OffsetFlag开平标志
HedgeType投机/套保/备兑类型
OrderPrice报单价格nano回报:市价单价格为0,FPGA回报:市价单为具体的价格
OrderVolume报单数量
OrderStatus报单状态
TradeVolume成交数量
CancelVolume撤单数量
TradePrice成交价格
TradingDay交易日
InsertDate报单日期
InsertTime报单时间nano回报:精确到msFPGA回报:精确到s
ReportTime申报时间
ExchangeID交易所代码
OrderCommand报单指令
MinVolume最小成交量
SpringPrice止损止盈价
SwapOrderFlag互换标志
ForceCloseReason强平原因
ErrorMsg错误信息
UnderlyingInstrID期权对应的标的合约代码
OrderSource报单发起方
CombPositionID组合持仓编码
ExchangeAccountID交易编码
SeatIndex席位索引

2.1.2. 委托回报(废单)

字段字段说明是否赋值
AccountID账号
OrderSysID报单编码
BrokerOrderID经纪公司报单编码
SessionID会话编码
OrderRef报单引用
InstrumentID合约代码
Direction买卖方向
OffsetFlag开平标志
HedgeType投机/套保/备兑类型
OrderPrice报单价格
OrderVolume报单数量
OrderStatus报单状态
TradeVolume成交数量
CancelVolume撤单数量
TradePrice成交价格
TradingDay交易日
InsertDate报单日期
InsertTime报单时间
ReportTime申报时间
ExchangeID交易所代码
OrderCommand报单指令
MinVolume最小成交量
SpringPrice止损止盈价
SwapOrderFlag互换标志
ForceCloseReason强平原因
ErrorMsg错误信息
UnderlyingInstrID期权对应的标的合约代码
OrderSource报单发起方
CombPositionID组合持仓编码
ExchangeAccountID交易编码
SeatIndex席位索引

2.1.3. 委托回报(撤废)

字段字段说明是否赋值
AccountID账号
OrderSysID报单编码
BrokerOrderID经纪公司报单编码
SessionID会话编码
OrderRef报单引用
InstrumentID合约代码
Direction买卖方向
OffsetFlag开平标志
HedgeType投机/套保/备兑类型
OrderPrice报单价格
OrderVolume报单数量
OrderStatus报单状态
TradeVolume成交数量
CancelVolume撤单数量
TradePrice成交价格
TradingDay交易日
InsertDate报单日期
InsertTime报单时间
ReportTime申报时间
ExchangeID交易所代码
OrderCommand报单指令
MinVolume最小成交量
SpringPrice止损止盈价
SwapOrderFlag互换标志
ForceCloseReason强平原因
ErrorMsg错误信息
UnderlyingInstrID期权对应的标的合约代码
OrderSource报单发起方
CombPositionID组合持仓编码
ExchangeAccountID交易编码
SeatIndex席位索引

2.1.4. 成交回报

字段字段说明是否赋值
AccountID账号
TradeID成交编码
OrderSysID报单编码
BrokerOrderID经纪公司报单编码
SessionID会话编码
OrderRef报单引用
ExchangeID交易所代码
InstrumentID合约代码
Direction买卖方向
OffsetFlag开平标志
HedgeType投机/套保/备兑类型
TradeVolume成交数量
TradePrice成交价格
TradingDay交易日
TradeTime成交时间
UnderlyingInstrID期权对应的标的合约代码
CombPositionID组合持仓编码
TradeCommission成交手续费
ExchangeAccountID交易编码

2.2. 注意事项

1,回报接口通过下面两个接口返回,和nano柜台回报接口一致

注意点:废单分柜台废单和交易所废单,需要处理下OnRtnOrder的废单回报。

柜台废单:调用交易所API返回错误(超过交易所API流控)只能通过OnRtnOrder返回

交易所废单:可以通过OnRtnOrder和OnFPGARtnOrder返回

2,关于FAK单子的委托回报

全部撤单

nano柜台回报先后顺序是HS_OS_Reported--->HS_OS_Canceled

FPGA回报加速先后顺序是HS_OS_Canceled

部分成交

nano柜台回报先后顺序是HS_OS_Reported--->HS_OS_CanceledWithPartsTraded--->HS_OS_PartsTraded

FPGA回报加速先后顺序是HS_OS_CanceledWithPartsTraded--->HS_OS_PartsTraded

全部成交

nano柜台回报先后顺序是HS_OS_Reported--->HS_OS_Traded

FPGA回报加速先后顺序是HS_OS_Traded

2,关于FOK单子的委托回报

全部撤单

nano柜台回报先后顺序是HS_OS_Reported--->HS_OS_Canceled

FPGA回报加速先后顺序是HS_OS_Canceled

全部成交

nano柜台回报先后顺序是HS_OS_Reported--->HS_OS_Traded

FPGA回报加速先后顺序是HS_OS_Traded

3,关于撤废的单子

nano柜台回报是该委托原先的状态,比如被撤委托是HS_OS_Reported,则推送回来的还是HS_OS_Reported

FPGA回报是撤废状态:HS_OS_CancelFailed

3. 大连回报加速

3.1. 各委托状态下支持的字段

3.1.1. 委托回报(确认)

字段字段说明是否赋值备注
AccountID账号
OrderSysID报单编码
BrokerOrderID经纪公司报单编码交易所定单的委托批次号,使用回报加速撤单接口时必须传入此字段
SessionID会话编码
OrderRef报单引用
ExchangeID交易所代码
InstrumentID合约代码
Direction买卖方向
OffsetFlag开平标志
HedgeType投机/套保/备兑类型
OrderPrice报单价格
OrderVolume报单数量
OrderStatus报单状态
TradeVolume成交数量
CancelVolume撤单数量
TradePrice成交价格
TradingDay交易日
InsertDate报单日期
InsertTime报单时间nano回报:精确到msFPGA回报:精确到s
ReportTime申报时间
OrderCommand报单指令
MinVolume最小成交量
SpringPrice止损止盈价
SwapOrderFlag互换标志
ForceCloseReason强平原因
ErrorMsg错误信息
UnderlyingInstrID期权对应的标的合约代码
OrderSource报单发起方
CombPositionID组合持仓编码
ExchangeAccountID交易编码
SeatIndex席位索引

3.1.2. 委托回报(废单)

字段字段说明是否赋值
AccountID账号
OrderSysID报单编码
BrokerOrderID经纪公司报单编码
SessionID会话编码
OrderRef报单引用
ExchangeID交易所代码
InstrumentID合约代码
Direction买卖方向
OffsetFlag开平标志
HedgeType投机/套保/备兑类型
OrderPrice报单价格
OrderVolume报单数量
OrderStatus报单状态
TradeVolume成交数量
CancelVolume撤单数量
TradePrice成交价格
TradingDay交易日
InsertDate报单日期
InsertTime报单时间
ReportTime申报时间
OrderCommand报单指令
MinVolume最小成交量
SpringPrice止损止盈价
SwapOrderFlag互换标志
ForceCloseReason强平原因
ErrorMsg错误信息
UnderlyingInstrID期权对应的标的合约代码
OrderSource报单发起方
CombPositionID组合持仓编码
ExchangeAccountID交易编码
SeatIndex席位索引

3.1.3. 委托回报(部撤,已撤,撤废)

字段字段说明是否赋值备注
AccountID账号
OrderSysID报单编码
BrokerOrderID经纪公司报单编码
SessionID会话编码
OrderRef报单引用
ExchangeID交易所代码
InstrumentID合约代码
Direction买卖方向
OffsetFlag开平标志
HedgeType投机/套保/备兑类型
OrderPrice报单价格
OrderVolume报单数量
OrderStatus报单状态
TradeVolume成交数量当前定单的总成交数量
CancelVolume撤单数量当前定单的总撤单数量
TradePrice成交价格
TradingDay交易日
InsertDate报单日期
InsertTime报单时间
ReportTime申报时间
OrderCommand报单指令
MinVolume最小成交量
SpringPrice止损止盈价
SwapOrderFlag互换标志
ForceCloseReason强平原因
ErrorMsg错误信息
UnderlyingInstrID期权对应的标的合约代码
OrderSource报单发起方
CombPositionID组合持仓编码
ExchangeAccountID交易编码
SeatIndex席位索引

3.1.4. 委托回报(部成或已成)

字段字段说明是否赋值备注
AccountID账号
OrderSysID报单编码
BrokerOrderID经纪公司报单编码交易所定单的委托批次号,使用回报加速撤单接口时必须传入此字段
SessionID会话编码
OrderRef报单引用
ExchangeID交易所代码
InstrumentID合约代码
Direction买卖方向
OffsetFlag开平标志
HedgeType投机/套保/备兑类型
OrderPrice报单价格
OrderVolume报单数量
OrderStatus报单状态
TradeVolume成交数量当前定单的总成交数量。区别于本次成交的数量。
CancelVolume撤单数量
TradePrice成交价格
TradingDay交易日
InsertDate报单日期
InsertTime报单时间
ReportTime申报时间
OrderCommand报单指令
MinVolume最小成交量
SpringPrice止损止盈价
SwapOrderFlag互换标志
ForceCloseReason强平原因
ErrorMsg错误信息
UnderlyingInstrID期权对应的标的合约代码
OrderSource报单发起方
CombPositionID组合持仓编码
ExchangeAccountID交易编码
SeatIndex席位索引

3.1.5. 成交回报

字段字段说明是否赋值备注
AccountID账号
TradeID成交编码
OrderSysID报单编码
BrokerOrderID经纪公司报单编码交易所定单委托批次号
SessionID会话编码
OrderRef报单引用
ExchangeID交易所代码
InstrumentID合约代码
Direction买卖方向
OffsetFlag开平标志
HedgeType投机/套保/备兑类型
TradeVolume成交数量本次成交的数量。区别于当前定单的总成交数量。
TradePrice成交价格
TradingDay交易日
TradeTime成交时间
UnderlyingInstrID期权对应的标的合约代码
CombPositionID组合持仓编码
TradeCommission成交手续费
ExchangeAccountID交易编码

3.2. 注意事项

  1. API开启大连回报加速并登录成功后,会收到OnNotifyReturnSource接口回报来源通知。
    • 当通知接口中DceReturnSource字段为1的时候,表示后续回报是来自大连回报加速服务,需使用回报加速撤单ReqFpgaOrderAction接口进行撤单
    • 当通知接口中DceReturnSource字段为0的时候,表示后续回报是来自nano柜台,需使用裸协议撤单ReqNakedProtocolOrderAction接口进行撤单
  2. 调用API ReqFpgaOrderAction 回报加速撤单接口,撤单大连报单,请求参数中不需要填写SessionID和OrderRef字段,必须取已报回报中的BrokerOrderID字段填入撤单请求的OrderSysID
  3. 调用APIReqFpgaOrderAction回报加速撤单接口,撤单大连报单,当请求参数OrderSysID字段填写错误时,API将收不到交易所撤废主推。原因是这种场景下,大连交易所的撤废应答中不包含交易编码,导致大连回报加速服务端无法推送撤废。

留下评论

您的邮箱地址不会被公开。 必填项已用 * 标注

ICP备案号:辽ICP备20002814号-2