|
From: Fuad A. <fua...@gm...> - 2020-04-01 15:26:40
|
I have check my broker document they send me 35 MsgType Y Defines message Type X 262 MDReqID Y A unique ID of your Market Data Request clientMD_123 268 NoMDEntries Y Number of entries 4 279 MDUpdateAction Y Action type of this entry. Possible values: 0 = New 2 = Delete 0 55 Symbol Y Currency pair in form CCY1/CCY2 EUR/USD 269 MDEntryType Y The type of this entry. Possible values: 0 = Bid 1 = Ask 2 = Last H = Mid Price V = Volatility A = MarketOnClose 1 277 TradeCondition N This will be populated only on trades (Tag 269=2) where a Quote is on one side of the trade. The tag will not be populated when the trade is between orders Values: I = Traded with Last Look I 9700 MatchTime N This will be populated only on trades (Tag 269=2) where Quote is on one side of the trade. UTC time at which the match happened. 20110403- 18:06:23.551 278 MDEntryID Y Identifier of the entry. MDEntryID is unique per symbol. . When an MDEntryID value is repeated, the new value replaces the old value in the order book. E123 270 MDEntryPX N Price of the entry 1.1234 271 MDEntrySize N Size for which that price is quoted. 1000000 110 MinQty N Minimum quantity of an order to be executed. 200000 All of the field are in group if i check in my fix42.xml so if i want get the value i must using repeating group as receive message right? Or what i must to do? On Wed, Apr 1, 2020, 22:21 Grant Birchmeier <gbi...@co... wrote: > QuickFIX/J Documentation: http://www.quickfixj.org/documentation/ > QuickFIX/J <http://www.quickfixj.org/documentation/QuickFIX/J> Support: > http://www.quickfixj.org/support/ > > > Yes. > > And of course, you'll need to verify every other message too, but not for > this immediate problem. > > On Wed, Apr 1, 2020 at 9:37 AM Fuad Azhar <fua...@gm...> wrote: > >> QuickFIX/J Documentation: http://www.quickfixj.org/documentation/ >> QuickFIX/J <http://www.quickfixj.org/documentation/QuickFIX/J> Support: >> http://www.quickfixj.org/support/ >> >> >> Oke i will check my fix42.xml and my broker document... So i check >> marketdataincrementalrefresh in my fix42.xml and my broker right? >> >> On Wed, Apr 1, 2020, 21:34 Grant Birchmeier <gbi...@co... >> wrote: >> >>> QuickFIX/J Documentation: http://www.quickfixj.org/documentation/ >>> QuickFIX/J <http://www.quickfixj.org/documentation/QuickFIX/J> Support: >>> http://www.quickfixj.org/support/ >>> >>> >>> Yes, I told you: Go look at my answer to your SO question. >>> >>> On Wed, Apr 1, 2020 at 9:23 AM Fuad Azhar <fua...@gm...> wrote: >>> >>>> QuickFIX/J Documentation: http://www.quickfixj.org/documentation/ >>>> QuickFIX/J <http://www.quickfixj.org/documentation/QuickFIX/J> >>>> Support: http://www.quickfixj.org/support/ >>>> >>>> >>>> Yes i create question in here and in stackoverflow...if anyone can help >>>> me how to fix it i very appreciate it... >>>> >>>> Best regards >>>> >>>> Fuad >>>> >>>> On Wed, Apr 1, 2020, 21:19 Grant Birchmeier <gbi...@co... >>>> wrote: >>>> >>>>> QuickFIX/J Documentation: http://www.quickfixj.org/documentation/ >>>>> QuickFIX/J <http://www.quickfixj.org/documentation/QuickFIX/J> >>>>> Support: http://www.quickfixj.org/support/ >>>>> >>>>> >>>>> I just saw your StackOverflow question where you provided more >>>>> information. >>>>> >>>>> https://stackoverflow.com/q/60969300/650475 >>>>> >>>>> FieldNotFound is not your real problem, but a fake problem created by >>>>> your misguided configuration. You cannot configure your way out of having >>>>> a bad data dictionary. Please see my StackOverflow answer to your question. >>>>> >>>>> >>>>> On Wed, Apr 1, 2020 at 8:37 AM Grant Birchmeier < >>>>> gbi...@co...> wrote: >>>>> >>>>>> None of these configs will solve your problem. They might even make >>>>>> your problem harder to find and fix. Delete them. >>>>>> >>>>>> ValidateUserDefinedFields=N >>>>>> ValidateIncomingMessage=N >>>>>> ValidateUnorderedGroupFields=N >>>>>> >>>>>> >>>>>> Your FieldNotFound error has nothing to do with how you are >>>>>> constructing messages. This is an error that occurs when you are >>>>>> *receiving* messages that were sent by your counterparty. >>>>>> >>>>>> FieldNotFound means you are trying to read a field that isn't there >>>>>> (or maybe it's in a group but you are attempting to read it from the >>>>>> top-level body). Did you look at TestMarketdataRequest.java line 38? >>>>>> >>>>>> On Wed, Apr 1, 2020 at 5:47 AM Fuadazhar73 <fua...@gm...> >>>>>> wrote: >>>>>> >>>>>>> QuickFIX/J Documentation: http://www.quickfixj.org/documentation/ >>>>>>> QuickFIX/J <http://www.quickfixj.org/documentation/QuickFIX/J> >>>>>>> Support: http://www.quickfixj.org/support/ >>>>>>> >>>>>>> >>>>>>> First i have problem with my fix about >>>>>>> >>>>>>> Out of order repeating group members >>>>>>> and for the solution i want to try add in my initiator config >>>>>>> ValidateUserDefinedFields=N >>>>>>> ValidateIncomingMessage=N >>>>>>> ValidateUnorderedGroupFields=N >>>>>>> >>>>>>> but when i want to hit my broker for market data request i got this >>>>>>> error >>>>>>> >>>>>>> quickfix.FieldNotFound: Field was not found in message, field=55 >>>>>>> at quickfix.FieldMap.getField(FieldMap.java:223) >>>>>>> at quickfix.FieldMap.getString(FieldMap.java:237) >>>>>>> at >>>>>>> >>>>>>> com.dxtr.fastmatch.marketdatarequestapps.TestMarketdataRequest.fromApp(TestMarketdataRequest.java:38) >>>>>>> at quickfix.Session.fromCallback(Session.java:1847) >>>>>>> at quickfix.Session.verify(Session.java:1791) >>>>>>> at quickfix.Session.verify(Session.java:1862) >>>>>>> at quickfix.Session.next(Session.java:1047) >>>>>>> at quickfix.Session.next(Session.java:1204) >>>>>>> at >>>>>>> >>>>>>> quickfix.mina.SingleThreadedEventHandlingStrategy$SessionMessageEvent.processMessage(SingleThreadedEventHandlingStrategy.java:163) >>>>>>> at >>>>>>> >>>>>>> quickfix.mina.SingleThreadedEventHandlingStrategy.block(SingleThreadedEventHandlingStrategy.java:113) >>>>>>> at >>>>>>> >>>>>>> quickfix.mina.SingleThreadedEventHandlingStrategy.lambda$blockInThread$1(SingleThreadedEventHandlingStrategy.java:145) >>>>>>> at >>>>>>> >>>>>>> quickfix.mina.SingleThreadedEventHandlingStrategy$ThreadAdapter$RunnableWrapper.run(SingleThreadedEventHandlingStrategy.java:267) >>>>>>> at java.lang.Thread.run(Thread.java:748) >>>>>>> >>>>>>> i use this code for make marketdatarequest >>>>>>> quickfix.fix42.MarketDataRequest.NoRelatedSym group1 = new >>>>>>> quickfix.fix42.MarketDataRequest.NoRelatedSym(); >>>>>>> group1.set(new Symbol("ALL")); >>>>>>> marketDataRequest.addGroup(group1); >>>>>>> Session.sendToTarget(marketDataRequest, sessionID); >>>>>>> >>>>>>> so how to fix my problem ? and the next question is how to get value >>>>>>> from >>>>>>> field like symbol, avgprice,etc >>>>>>> i have code like this >>>>>>> >>>>>>> MDReqID mdreqid = new MDReqID(); >>>>>>> SendingTime sendingtime = new SendingTime(); >>>>>>> NoMDEntries nomdentries = new NoMDEntries(); >>>>>>> >>>>>>> quickfix.fix42.MarketDataIncrementalRefresh.NoMDEntries group >>>>>>> = new >>>>>>> quickfix.fix42.MarketDataIncrementalRefresh.NoMDEntries(); >>>>>>> MDUpdateAction mdupdateaction = new MDUpdateAction(); >>>>>>> DeleteReason deletereason = new DeleteReason(); >>>>>>> MDEntryType mdentrytype = new MDEntryType(); >>>>>>> MDEntryID mdentryid = new MDEntryID(); >>>>>>> Symbol symbol = new Symbol(); >>>>>>> MDEntryOriginator mdentryoriginator = new >>>>>>> MDEntryOriginator(); >>>>>>> MDEntryPx mdentrypx = new MDEntryPx(); >>>>>>> Currency currency = new Currency(); >>>>>>> MDEntrySize mdentrysize = new MDEntrySize(); >>>>>>> ExpireDate expiredate = new ExpireDate(); >>>>>>> ExpireTime expiretime = new ExpireTime(); >>>>>>> NumberOfOrders numberoforders = new NumberOfOrders(); >>>>>>> MDEntryPositionNo mdentrypositionno = new >>>>>>> MDEntryPositionNo(); >>>>>>> >>>>>>> message.getField(nomdentries); >>>>>>> message.getField(sendingtime); >>>>>>> >>>>>>> message.getGroup(1, group); >>>>>>> >>>>>>> int list = nomdentries.getValue(); >>>>>>> for (int i = 0; i < list; i++) >>>>>>> { >>>>>>> message.getGroup(i + 1, group); >>>>>>> group.get(mdupdateaction); >>>>>>> if (mdupdateaction.getValue() == '2') >>>>>>> System.out.println("Enter"); >>>>>>> group.get(deletereason); >>>>>>> group.get(mdentrytype); >>>>>>> group.get(mdentryid); >>>>>>> group.get(symbol); >>>>>>> group.get(mdentryoriginator); >>>>>>> if (mdupdateaction.getValue() == '0') >>>>>>> group.get(mdentrypx); >>>>>>> group.get(currency); >>>>>>> if (mdupdateaction.getValue() == '0') >>>>>>> group.get(mdentrysize); >>>>>>> } >>>>>>> >>>>>>> System.out.printf("Got Symbol {0} Price {1}", >>>>>>> symbol.getValue(), mdentrypx.getValue()); >>>>>>> >>>>>>> >>>>>>> best regards, >>>>>>> >>>>>>> Fuad >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Sent from: http://quickfix-j.364392.n2.nabble.com/ >>>>>>> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Quickfixj-users mailing list >>>>>>> Qui...@li... >>>>>>> https://lists.sourceforge.net/lists/listinfo/quickfixj-users >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Grant Birchmeier >>>>>> *Connamara Systems, LLC* >>>>>> *Made-To-Measure Trading Solutions.* >>>>>> Exactly what you need. No more. No less. >>>>>> http://connamara.com >>>>>> >>>>> >>>>> >>>>> -- >>>>> Grant Birchmeier >>>>> *Connamara Systems, LLC* >>>>> *Made-To-Measure Trading Solutions.* >>>>> Exactly what you need. No more. No less. >>>>> http://connamara.com >>>>> >>>>> This email, along with any attachments, is confidential. If you >>>>> believe you received this message in error, please contact the sender >>>>> immediately and delete all copies of the message. Thank you from Connamara >>>>> Systems, LLC._______________________________________________ >>>>> Quickfixj-users mailing list >>>>> Qui...@li... >>>>> https://lists.sourceforge.net/lists/listinfo/quickfixj-users >>>>> >>>> _______________________________________________ >>>> Quickfixj-users mailing list >>>> Qui...@li... >>>> https://lists.sourceforge.net/lists/listinfo/quickfixj-users >>>> >>> >>> >>> -- >>> Grant Birchmeier >>> *Connamara Systems, LLC* >>> *Made-To-Measure Trading Solutions.* >>> Exactly what you need. No more. No less. >>> http://connamara.com >>> >>> This email, along with any attachments, is confidential. If you believe >>> you received this message in error, please contact the sender immediately >>> and delete all copies of the message. Thank you from Connamara Systems, LLC. >>> _______________________________________________ >>> Quickfixj-users mailing list >>> Qui...@li... >>> https://lists.sourceforge.net/lists/listinfo/quickfixj-users >>> >> _______________________________________________ >> Quickfixj-users mailing list >> Qui...@li... >> https://lists.sourceforge.net/lists/listinfo/quickfixj-users >> > > > -- > Grant Birchmeier > *Connamara Systems, LLC* > *Made-To-Measure Trading Solutions.* > Exactly what you need. No more. No less. > http://connamara.com > > This email, along with any attachments, is confidential. If you believe > you received this message in error, please contact the sender immediately > and delete all copies of the message. Thank you from Connamara Systems, LLC. > _______________________________________________ > Quickfixj-users mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfixj-users > |