BNPP order management
Depth event now has BID<n>_QuoteEntryID and ASK<n>_QuoteEntryID published in the extra parameters. Use BID<n>_QuoteEntryID and ASK<n>_QuoteEntryID to retrieve the QuoteID for the corresponding side and level. Note that, publishing LEVEL<n>_QuoteEntryID in extra parameters of depth event has been removed.
Supply following parameter values
QuoteID (Tag 117) | Supply the QuoteEntryID (from the BID<n>_QuoteEntryID or ASK<n>_QuoteEntryID present in the extra params of the depth event) |
Currency (Tag 15) | Supply the currency used for price |
FutSettDate (Tag 64) | Supply the settlement date provided in the quote for required level |
Sample new order
com.apama.oms.NewOrder("6","USD/SGD",1.2093,"SELL","PREVIOUSLY QUOTED",
700000,"BNPP-FIX","","","BNPP_TRADING","","",
{"1":"XXXX","117":"6126_88988.1","15":"USD","64":"20110909"})
com.apama.oms.NewOrder("8","USD/SGD",1.2097,"BUY","PREVIOUSLY QUOTED",
1000000,"BNPP-FIX","","","BNPP_TRADING","","",
{"1":"XXXX","117":"6126_89177.1","15":"USD","64":"20110909"})
where "XXXX" in above NewOrder refers to account provided by BNPP.
BNPP Execution Reports
Once an execution report is received by the adapter an acknowledgement execution report (confirmation) is automatically sent back to BNPP. The outbound message is the same as the inbound execution report but with the ExecType field (tag 150) set to "I".
It is BNPP's requirement that if the client does not receive a fill or reject ExecutionReport within 5 seconds of submitting an order that they are contacted by email at ecsg@bnpparibas.com. This can be implemented at the application level.
In FIX_BNPP_Support.mon, the AutomaticAlert event is routed in case of not getting fill or reject message(executionreport) with in 5 seconds. Application can listen on AutomaticAlert for responding back with proper action to BNPP. As per specification definition of the AutomaticAlert is as follows
event AutomaticAlert{
string TRANSPORT;
string orderId;
string Instrument; //refers to the symbol in new order
string Currency;
string ClOrdID;
string Account;
string SettleDate;
integer Quantity;
dictionary<string, string> __extraParams;
}
The above event has been defined in package com.apama.fix.bnpp.