[Quickfix-users] Steps required for Arca cert w/fix4.1
Brought to you by:
orenmnero
|
From: Andrew M. <an...@nm...> - 2003-11-11 20:15:26
|
I thought it might be helpful to post changes/steps needed complete Arca's
cert including the "Trading Sessions" portion using FIX 4.1. FIX 4.1 does
not include tags 386 and 336 required by Arca. Those can be added to the XML
files:
added to quickfix/spec/fix41.xml:
<message name="NewOrderSingle" msgtype="D" msgcat="app">
...
<group name="NoTradingSessions" required="N">
<field name="TradingSessionID" required="N"/>
</group>
...
</message>
<field number="336" name="TradingSessionID" type="STRING"/>
<field number="386" name="NoTradingSessions" type="INT"/>
download msxsl.exe from:
http://download.microsoft.com/download/f/2/6/f263ac46-1fe9-4ae9-8fd3-2110210
0ebf5/msxsl.exe
run quickfix\spec\generate_c++.bat and generate_java.bat
Rebuild your quickfix DLLs and .JAR files
Then to the java application...
public void send41(Order order) {
org.quickfix.fix41.NewOrderSingle newOrderSingle =
new org.quickfix.fix41.NewOrderSingle
(new ClOrdID(order.getID()),
new HandlInst('1'),
new Symbol(order.getSymbol()),
sideToFIXSide(order.getSide()),
typeToFIXType(order.getType()));
newOrderSingle.set(new OrderQty(order.getQuantity()));
newOrderSingle.set(new Account(order.getAccount()));
newOrderSingle.setField(new StringField(100,
OrderExchange.getTag100(order.getExchange())));
newOrderSingle.getHeader().setString(57, "CERT"); //For Arca
// NoTradingSessions 386 = 3
// TradingSessionID 336 = 1
// TradingSessionID 336 = 2
// TradingSessionID 336 = 3
org.quickfix.fix41.NewOrderSingle.NoTradingSessions group = new
org.quickfix.fix41.NewOrderSingle.NoTradingSessions();
group.setField( new TradingSessionID( "P1" ) );
newOrderSingle.addGroup(group);
group.setField( new TradingSessionID( "P2" ) );
newOrderSingle.addGroup(group);
group.setField( new TradingSessionID( "P3" ) );
newOrderSingle.addGroup(group);
send(populateOrder(order, newOrderSingle), order.getSessionID());
}
-Andrew Munn
|