{{Quickfixn}} Need help: Getting Tag Appears More than once Error

neeraj kaushik neeraj.kaushik at live.in
Thu Aug 16 02:06:56 PDT 2012


Hi,

 

I am working on creating FIX client to connect with FIX server on broker
side. I am using QuickFix/n libarary and working on FIX5.0 sp2. I am
successfully able to login to broker side but getting problem while sending
marketdatarequest. Marketdatarequest sends successfully and quickfix engine
is getting marketdatasnapshot and marketdataincrement-refresh messages but
engine is failing to parse them correctly and sends reject message(3).
Reject message shows error for Tag appears more than once.

 

Broker data-dictionary is customized eg. MarketDataIncrementalRefresh has
field 117 which is not part of standard message. I am also attaching
data-dictionary in this mail.

 

Please let me know if I need to debug quickfix code and then do necessary
changes to support messages or am I doing something wrong in setup.

 

Code

 

            var marketDataRequest = new QuickFix.FIX50.MarketDataRequest();

            marketDataRequest.MDReqID = new MDReqID(symbol + "_" +
_subscriptionID);

            marketDataRequest.SubscriptionRequestType = new
SubscriptionRequestType('1');//snapshot plus update

            marketDataRequest.MarketDepth = new MarketDepth(1);
//if market depth require

            marketDataRequest.MDUpdateType = new
MDUpdateType(1);//MDUpdateType_INCREMENTAL_REFRESH

 

 

            var noMdEntryTypes = new
QuickFix.FIX50.MarketDataRequest.NoMDEntryTypesGroup();

            

            var mdEntryTypeBid = new MDEntryType('0');

            noMdEntryTypes.MDEntryType = mdEntryTypeBid;

            marketDataRequest.AddGroup(noMdEntryTypes);

 

            noMdEntryTypes = new
QuickFix.FIX50.MarketDataRequest.NoMDEntryTypesGroup();

 

            var mdEntryTypeOffer = new MDEntryType('1');

 

            noMdEntryTypes.MDEntryType = mdEntryTypeOffer;

 

            marketDataRequest.AddGroup(noMdEntryTypes);

 

            var relatedSymbol = new
QuickFix.FIX50.MarketDataRequest.NoRelatedSymGroup() { Symbol = new
Symbol(symbol) };

            marketDataRequest.AddGroup(relatedSymbol);

 

            var sym = new NoRelatedSym(1);

           marketDataRequest.NoRelatedSym = sym;

 

 

            //Send message

            Session.SendToTarget(marketDataRequest, sessionId);

 

 

 

 

Logs

 

MarketDataRequest FIX String:
{8=FIXT.1.19=9435=V262=AUDUSD.CFD_1263=1264=1265=1267=2269=0269=1146=155=AUD
USD.CFD10=052}

 

 

         <tel:20120815-08> 20120815-08:45:13.149 :
8=FIXT.1.19=8435=A34=149=NEERAJ52= <tel:20120815-08>
20120815-08:45:13.10956=FIXSERVER_198=0108=10141=Y1137=710=081

 

.          <tel:20120815-08> 20120815-08:45:14.416 :
8=FIXT.1.19=8435=A34=149=FIXSERVER_152= <tel:20120815-08>
20120815-08:45:17.42256=NEERAJ98=0108=10141=Y1137=710=083

 

.          <tel:20120815-08> 20120815-08:45:23.254 :
8=FIXT.1.19=14835=V34=249=NEERAJ52= <tel:20120815-08>
20120815-08:45:23.25056=FIXSERVER_1262=CS.D.AUDUSD.CFD.IP_1263=1264=1265=114
6=155=CS.D.AUDUSD.CFD.IP267=2269=0269=110=246

 

.          <tel:20120815-08> 20120815-08:45:23.737 :
8=FIXT.1.19=28335=W34=249=FIXSERVER_152= <tel:20120815-08>
20120815-08:45:26.74556=NEERAJ262=CS.D.AUDUSD.CFD.IP_1268=2269=0270=1.046827
1=10000273=09:45:24.000117=800dc4d0-1749-4122-a0e2-d8a2fdc145f4~70278=125269
=1270=1.04688271=10000273=09:45:24.000117=d06f72bf-51af-4548-961e-b7902f306e
ca~70278=12610=229

 

.          <tel:20120815-08> 20120815-08:45:23.787 :
8=FIXT.1.19=11535=334=349=NEERAJ52= <tel:20120815-08>
20120815-08:45:23.78256=FIXSERVER_145=258=Tag appears more than
once371=269372=W373=1310=236

 

.          <tel:20120815-08> 20120815-08:45:24.766 :
8=FIXT.1.19=29635=X34=349=FIXSERVER_152= <tel:20120815-08>
20120815-08:45:27.77556=NEERAJ262=CS.D.AUDUSD.CFD.IP_1268=2279=1269=0278=125
270=1.04681271=10000273=09:45:27.000117=074b427a-a363-4a5a-9b9b-47038f0f1934
~70279=1269=1278=126270=1.04689271=10000273=09:45:27.000117=6bf0e223-d999-4c
aa-b34f-cc9ebfe7b696~7010=196

 

.          <tel:20120815-08> 20120815-08:45:24.772 :
8=FIXT.1.19=11535=334=449=NEERAJ52= <tel:20120815-08>
20120815-08:45:24.76856=FIXSERVER_145=358=Tag appears more than
once371=279372=X373=1310=245

.          <tel:20120815-08> 20120815-08:45:25.533 :
8=FIXT.1.19=29535=X34=449=FIXSERVER_152= <tel:20120815-08>
20120815-08:45:28.54256=NEERAJ262=CS.D.AUDUSD.CFD.IP_1268=2279=1269=0278=125
270=1.0468271=10000273=09:45:28.000117=4359c510-516d-4e31-89b6-5acd0c8dc808~
70279=1269=1278=126270=1.04688271=10000273=09:45:28.000117=0ed04366-69e1-4d2
8-8ca1-177493df20c3~7010=101

.          <tel:20120815-08> 20120815-08:45:25.538 :
8=FIXT.1.19=11535=334=549=NEERAJ52= <tel:20120815-08>
20120815-08:45:25.53556=FIXSERVER_145=458=Tag appears more than
once371=279372=X373=1310=240

.          <tel:20120815-08> 20120815-08:45:25.793 :
8=FIXT.1.19=29635=X34=549=FIXSERVER_152= <tel:20120815-08>
20120815-08:45:28.80256=NEERAJ262=CS.D.AUDUSD.CFD.IP_1268=2279=1269=0278=125
270=1.04678271=10000273=09:45:28.000117=aa3e664a-7422-41fe-88f9-7003e0820a41
~70279=1269=1278=126270=1.04686271=10000273=09:45:28.000117=0bdf9d78-9d48-44
15-bee4-ce9919525283~7010=171

.          <tel:20120815-08> 20120815-08:45:25.798 :
8=FIXT.1.19=11535=334=649=NEERAJ52= <tel:20120815-08>
20120815-08:45:25.79556=FIXSERVER_145=558=Tag appears more than
once371=279372=X373=1310=250

.          <tel:20120815-08> 20120815-08:45:25.827 :
8=FIXT.1.19=29635=X34=649=FIXSERVER_152= <tel:20120815-08>
20120815-08:45:28.83656=NEERAJ262=CS.D.AUDUSD.CFD.IP_1268=2279=1269=0278=125
270=1.04675271=10000273=09:45:28.000117=00d81401-afe2-46ea-b1e4-71a7fb2c6ae1
~70279=1269=1278=126270=1.04683271=10000273=09:45:28.000117=42ce5b31-35ae-46
23-a386-b26d879b0294~7010=062

.          <tel:20120815-08> 20120815-08:45:25.832 :
8=FIXT.1.19=11535=334=749=NEERAJ52= <tel:20120815-08>
20120815-08:45:25.82956=FIXSERVER_145=658=Tag appears more than
once371=279372=X373=1310=250

.          <tel:20120815-08> 20120815-08:45:26.193 :
8=FIXT.1.19=29635=X34=749=FIXSERVER_152= <tel:20120815-08>
20120815-08:45:29.20256=NEERAJ262=CS.D.AUDUSD.CFD.IP_1268=2279=1269=0278=125
270=1.04676271=10000273=09:45:29.000117=8823cd17-9b3a-4837-b117-d6578468faa7
~70279=1269=1278=126270=1.04684271=10000273=09:45:29.000117=ab733a96-4070-4d
03-a2b6-05359dfaee6d~7010=251

.          <tel:20120815-08> 20120815-08:45:26.199 :
8=FIXT.1.19=11535=334=849=NEERAJ52= <tel:20120815-08>
20120815-08:45:26.19556=FIXSERVER_145=758=Tag appears more than
once371=279372=X373=1310=249

.          <tel:20120815-07> 20120815-07:25:38.081 :
8=FIXT.1.19=11535=334=549=NEERAJ52= <tel:20120815-07>
20120815-07:25:38.07956=FIXSERVER_145=358=Tag appears more than
once371=269372=W373=1310=241

 

Config File

 

[default]

PersistMessages=Y

DefaultApplVerID=FIX.5.0

TransportDataDictionary=FIXT11.xml

AppDataDictionary=FIX50.xml

ConnectionType=initiator

CheckCompID=Y

CheckLatency=N

SocketKeepAlive=Y

SocketTcpNoDelay=Y

SocketUseSSL=Y

SocketTrafficClass=IPTOS_THROUGHPUT|IPTOS_LOWDELAY

SLF4JLogIncomingMessageCategory=quickfixj.msg.incoming

SLF4JLogOutgoingMessageCategory=quickfixj.msg.outgoing

UseDataDictionary=Y

 

[SESSION]

ConnectionType=initiator

FileStorePath=store

FileLogPath=fixlog

BeginString=FIXT.1.1

DefaultApplVerID=FIX.5.0

SenderCompID=ABCCLIENT

TargetCompID=FIXSERVER1

SocketConnectHost=127.0.0.1

SocketConnectPort=122

StartDay=Sunday

EndDay=Friday

StartTime=00:00:00

EndTime=00:00:00

HeartBtInt=10

ReconnectInterval=30

ResetOnLogon=Y

ResetOnLogout=Y

ResetOnDisconnect=Y

 

 

 

 

 

 

Thanks & Regards,

Neeraj

Ph: +91-9717380006

Gtalk: neerajkaushi at gmail.com

Skype: neerajkaushik_123

 

 

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quickfixn.com/pipermail/quickfixn-quickfixn.com/attachments/20120816/3cf72cce/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: FIX50.xml
Type: text/xml
Size: 424482 bytes
Desc: not available
URL: <http://lists.quickfixn.com/pipermail/quickfixn-quickfixn.com/attachments/20120816/3cf72cce/attachment-0001.bin>


More information about the Quickfixn mailing list