question

Upvotes
Accepted
1 1 1 2

RFA StarterConsumer subscribing for Nasdaq L2 ric (0#CSCO.O) - gives error msg - The record could not be found

Ran StarterConsumer for Example programs subscribing for “0#MSFT.O” with –mmt MARKET_BY_PRICE but received following error msg and no data.

- State: CLOSED, SUSPECT, NOT_FOUND, "The record could not be found"

Can you advise what is the issue preventing market depth data?

c:\sandbox\ThompsonReuters\rfa\setup\rfaj7.4.1.L1.all.rrg\rfaj7.4.1.L1.all.rrg\Examples>java -cp ..\Libs\rfa.jar;..\Examples com.reuters.rfa.example.omm.cons.StarterConsumer -session myNamespace::IDN_RDF -user APP_FALCON_ALGO -itemName 0#CSCO.O -mmt MARKET_BY_PRICE -serviceName IDN_RDF -attribInfoInUpdates true -enumType ../etc/RDM/enumtype.def -rdmFieldDictionary ../etc/RDM/RDMFieldDictionary -runTime 60

treprfarfa-apilevel-2
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Same StartConsumer client works fine for NYSE and Nasdaq L1 data (e.g. IBM.N or MSFT.O).

Hi,

Thank you for your participation in the forum.

Are any of the replies below satisfactory in resolving your query?

If yes please click the 'Accept' text next to the most appropriate reply. This will guide all community members who have a similar question.

Otherwise please post again offering further insight into your question.

Thanks,

AHS

Upvote
Accepted
24.5k 86 10 22

Hi @jbhimbra

The error shows that your Data access permissions are not correctly setup by your local Market Data admin team (or your Thomson Reuters account manager for hosted solutions). Please contact them to amend your permissions.

My understanding is that Nasdaq has several feeds - including TotalView ITCH which offer MarketByPrice orderbook data.

I am not a content expert so cannot comment on the other questions you have asked. I recommend you contact our Content Helpdesk using the following link Product Support Content and Select Elektron Edge for the product. They should be able to help you with identifying the correct RICs to use for your various data requirements.

You could also try using the RIC Search tool to search for RICs.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Thanks, contacted Product Support Content link above - new case created - Case : 06289175.

Thanks for the update.

Don't forget to speak to your own Market Data team regards the Permission issue - the Content Helpdesk will not be able to help with that.

Upvotes
426 2 4 4

Hi @jatinder.x.bhimbra,

0#CSCO.o and 0#MSFT.O are chain records. All chain records should use MARKET_PRICE message model type. The StarterConsumer already sets MARKET_PRICE as default mmt so just remove the "-mmt MARKET_BY_PRICE" argument and it should work.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
1 1 1 2

Tried StarterConsumer without -mmt MARKET_BY_PRICE option and client received one snapshot msg and no subsequent market depth updates as i was expecting. See the logs messages below.

Fyi, as per earlier TR inquiry, response from TR Customer Support Executive (Pimchaya Wongrukun) was to use -mmt MARKET_BY_PRICE or MARKET_BY_ORDER option to get market depth for NASDAQ listed stocks, which resulted in "record not found" message.

What is the correct method of subscribing to Nasdaq L2 market data?

(my first time using TR RFA api and market data feed)

Note: had tried the consumer during market hours, which had given similar output i.e. no subsequent updates/

Consumer Login successful... ItemManager.sendRequest: Sending item request... ItemManager: Subscribing to 0#CSCO.O ItemManager.processEvent: Received Item Event... MESSAGE Msg Type: MsgType.REFRESH_RESP Msg Model Type: MARKET_PRICE Indication Flags: REFRESH_COMPLETE | CLEAR_CACHE Hint Flags: HAS_ATTRIB_INFO | HAS_ITEM_GROUP | HAS_PERMISSION_DATA | HAS_QOS | HAS_RESP_TYPE_NUM | HAS_SEQ_NUM | HAS_STATE State: OPEN, OK, NONE, "All is well" Qos: (RT, JIT Filt.) Group: 00072c333087b071 PermissionData: 032c333056c0 ( 0x03,0x2c,0x33,0x30,0x56,0xc0 ) SeqNum: 62736 RespTypeNum: 0 (RespType.SOLICITED) AttribInfo ServiceName: IDN_RDF ServiceId: 11315 Name: 0#CSCO.O NameType: 1 (RIC) Payload: 317 bytes FIELD_LIST FIELD_ENTRY 1/PROD_PERM: 3056 FIELD_ENTRY 2/RDNDISPLAY: 200 FIELD_ENTRY 3/DSPLY_NAME: LVL2_MM_LNK_LIST FIELD_ENTRY 4/RDN_EXCHID: NAS (43) FIELD_ENTRY 5/TIMACT: 09:00:10 FIELD_ENTRY 15/CURRENCY: USD (840) FIELD_ENTRY 17/ACTIV_DATE: 31 JAN 2018 FIELD_ENTRY 77/NUM_MOVES: 58 FIELD_ENTRY 239/REF_COUNT: 14 FIELD_ENTRY 259/RECORDTYPE: 120 FIELD_ENTRY 800/LONGLINK1: CSCO.O FIELD_ENTRY 801/LONGLINK2: CSCOADAM.O FIELD_ENTRY 802/LONGLINK3: CSCOBARD.O FIELD_ENTRY 803/LONGLINK4: CSCOBKMM.O FIELD_ENTRY 804/LONGLINK5: CSCOBMOC.O FIELD_ENTRY 805/LONGLINK6: CSCOCANT.O FIELD_ENTRY 806/LONGLINK7: CSCOCDRG.O FIELD_ENTRY 807/LONGLINK8: CSCOCOWN.O FIELD_ENTRY 808/LONGLINK9: CSCOCSTI.O FIELD_ENTRY 809/LONGLINK10: CSCOCTDL.O FIELD_ENTRY 810/LONGLINK11: CSCODADA.O FIELD_ENTRY 811/LONGLINK12: CSCODBAB.O FIELD_ENTRY 812/LONGLINK13: CSCOEGMT.O FIELD_ENTRY 813/LONGLINK14: CSCOETMM.O FIELD_ENTRY 814/LONGPREVLR: FIELD_ENTRY 815/LONGNEXTLR: 1#CSCO.O FIELD_ENTRY 1080/PREF_DISP: 7468 FIELD_ENTRY 1081/PREF_LINK: 1#CSCO.O FIELD_ENTRY 1709/RDN_EXCHD2: NAS (43) FIELD_ENTRY 3798/TIMACT1: 09:00:10 FIELD_ENTRY 5357/CONTEXT_ID: 2677 FIELD_ENTRY 6401/DDS_DSO_ID: 8293 FIELD_ENTRY 6480/SPS_SP_RIC: .[SPSNL2VAE2 FIELD_ENTRY 8635/PRE_24T004: 60 seconds elapsed, class com.reuters.rfa.example.omm.cons.StarterConsumer cleaning up... RWF: 14.0 RFA: Version = 7.4.1.L1.all.rrg, Date = Mon Mar 25 19:11:52 EDT 2013, Jar Path = C:\sandbox\ThompsonReuters\rfa\setup\rfaj7.4.1.L1.all.rrg\rfaj7.4.1.L1.all.rrg Libs\rfa.jar, Jar Size = 1910996 class com.reuters.rfa.example.omm.cons.StarterConsumer exiting.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
9.5k 10 5 7

Hello @jbhimbra

0#CSCO.O is a Chain RIC which does not provide data. It provides:

- The list of RICs in the field name LONGLINK<N>

- The next list of RICs in the field named LONGNEXTLR as shown below:

            ...
	    FIELD_ENTRY 801/LONGLINK2: CSCOADAM.O
            FIELD_ENTRY 802/LONGLINK3: CSCOBARD.O
            FIELD_ENTRY 803/LONGLINK4: CSCOBKMM.O
            FIELD_ENTRY 804/LONGLINK5: CSCOBMOC.O
            FIELD_ENTRY 805/LONGLINK6: CSCOCANT.O
            FIELD_ENTRY 806/LONGLINK7: CSCOCDRG.O
            FIELD_ENTRY 807/LONGLINK8: CSCOCOWN.O
            FIELD_ENTRY 808/LONGLINK9: CSCOCSTI.O
            FIELD_ENTRY 809/LONGLINK10: CSCOCTDL.O
            FIELD_ENTRY 810/LONGLINK11: CSCODADA.O
            FIELD_ENTRY 811/LONGLINK12: CSCODBAB.O
            FIELD_ENTRY 812/LONGLINK13: CSCOEGMT.O
            FIELD_ENTRY 813/LONGLINK14: CSCOETMM.O
            FIELD_ENTRY 814/LONGPREVLR: 
            FIELD_ENTRY 815/LONGNEXTLR: 1#CSCO.O
            ...

For more details of the Chain RICs, please refer to Simple Chain objects for EMA - Part 1

To get data, you need to subscribe RIC which is in the field named LONGLINK<N> i.e. CSCOADAM.O,CSCOBARD.O, CSCOBKMM.O … CSCOETMM.O. Based on my test, you can get data by specifying MARKET_PRICE domain when subscribing a RIC. For example to get data of the RIC named CSCOADAM.O :

java -cp ..\Libs\rfa.jar;..\Examplesvcom.reuters.rfa.example.omm.cons.StarterConsumer -session myNamespace::consSession -user pimchaya -itemName CSCOADAM.O -mmt MARKET_PRICE -serviceName API_ELEKTRON_EPD_RSSL -attribInfoInUpdates true -enumType ../etc/RDM/enumtype.def -rdmFieldDictionary ../etc/RDM/RDMFieldDictionary -runTime 600

The example data:

To get the next list of RICs, you need to subscribe the RIC in the field named LONGNEXTLR e.g. 1#CSCO.O with MARKET_PRICE, then you will get the list of RICs e.g. CSCOFBRC.O, CSCOGSCO.O…CSCOMLCO.O as shown below:

            ...
	    FIELD_ENTRY 800/LONGLINK1: CSCOFBRC.O
            FIELD_ENTRY 801/LONGLINK2: CSCOGSCO.O
            FIELD_ENTRY 802/LONGLINK3: CSCOIMCC.O
            FIELD_ENTRY 803/LONGLINK4: CSCOINTL.O
            FIELD_ENTRY 804/LONGLINK5: CSCOJEFF.O
            FIELD_ENTRY 805/LONGLINK6: CSCOJPMS.O
            FIELD_ENTRY 806/LONGLINK7: CSCOJSSF.O
            FIELD_ENTRY 807/LONGLINK8: CSCOKBWI.O
            FIELD_ENTRY 808/LONGLINK9: CSCOKEYB.O
            FIELD_ENTRY 809/LONGLINK10: CSCOKING.O
            FIELD_ENTRY 810/LONGLINK11: CSCOLEER.O
            FIELD_ENTRY 811/LONGLINK12: CSCOLEHM.O
            FIELD_ENTRY 812/LONGLINK13: CSCOMAXM.O
            FIELD_ENTRY 813/LONGLINK14: CSCOMLCO.O
            FIELD_ENTRY 814/LONGPREVLR: 0#CSCO.O
            FIELD_ENTRY 815/LONGNEXTLR: 2#CSCO.O
            ...

You can know if you get all RICs of this Chain RIC when LONGNEXTLR field is empty.


cscoadamo.png (48.2 KiB)
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
24.5k 86 10 22

Hi @jbhimbra

I am not in a position to test this at the moment, but have you tried requesting CSCO.ITC with "-mmt MARKET_BY_PRICE" for level 2 data?

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
1 1 1 2

Hi Umer,

Tried StarterConsumer with and without -mmt MARKET_BY_PRICE and received - "Record not service permissioned" error. See logs below. (Following up with internal TREP market infra team).

Q1 - As I understand ".ITC" suffix provide indicative volume for open and close auctions. Does it provide intra-day market depth data as well?

Q2 - Is part of Nasdaq L2 feed?

Q3 - Where on TR website or elsewhere can i find info on which Nasdaq subscriptions to use for L2, indicative auction volumes market data with sample data examples?

Q4 - Similar market depth data feed details for Canadian (TSE & TSX), Mexico (MEX) and Brazil (Bovespa) exchanges?

c:\sandbox\ThompsonReuters\rfa\setup\rfaj7.4.1.L1.all.rrg\rfaj7.4.1.L1.all.rrg\Examples>java -cp ..\Libs\rfa.jar;..\Examples com.reuters.rfa.examp arterConsumer -session myNamespace::IDN_RDF -user APP_FALCON_ALGO -itemName CSCO.ITC -serviceName IDN_RDF -attribInfoInUpdates true -enumType ../ pe.def -rdmFieldDictionary ../etc/RDM/RDMFieldDictionary -runTime 60 Picked up JAVA_TOOL_OPTIONS: "-Duser.home=C:\Sandbox\JavaToolHome" ***************************************************************************** * Begin RFA Java StarterConsumer Program * ***************************************************************************** RFA Version: 7.4.1.L1.all.rrg field dictionary read from RDMFieldDictionary file enum dictionary read from enumtype.def file LoginClient: Sending login request... LoginClient.processEvent: Received Login Response... LoginClient: Received Login Response - MsgType.REFRESH_RESP MESSAGE Msg Type: MsgType.REFRESH_RESP Msg Model Type: LOGIN Indication Flags: REFRESH_COMPLETE Hint Flags: HAS_ATTRIB_INFO | HAS_ITEM_GROUP | HAS_RESP_TYPE_NUM | HAS_STATE State: OPEN, SUSPECT, NONE, "All connections pending" Group: 0000 RespTypeNum: 0 (RespType.SOLICITED) AttribInfo Name: APP_FALCON_ALGO NameType: 1 (USER_NAME) Attrib ELEMENT_LIST ELEMENT_ENTRY ApplicationId: 256 ELEMENT_ENTRY Position: 161.17.73.62/H84047D4A2FLR7Z ELEMENT_ENTRY AllowSuspectData: 1 ELEMENT_ENTRY SingleOpen: 1 ELEMENT_ENTRY SupportBatchRequests: 1 ELEMENT_ENTRY SupportOptimizedPauseResume: 1 ELEMENT_ENTRY SupportPauseResume: 1 ELEMENT_ENTRY SupportViewRequests: 1 ELEMENT_ENTRY SupportOMMPost: 1 Payload: None Feb 01, 2018 10:45:17 AM com.reuters.rfa.internal.session.omm.OMMInteractiveLoginStatusProvider processOpenStreamForRefresh WARNING: com.reuters.rfa.session.myNamespace.IDN_RDF Connection myNamespace::IDN_RDFConnection does not support Pause/Resume. Pause and Resume requests for this connection will be ignored. Feb 01, 2018 10:45:17 AM com.reuters.rfa.internal.session.omm.OMMInteractiveLoginStatusProvider processOpenStreamForRefresh WARNING: com.reuters.rfa.session.myNamespace.IDN_RDF Connection myNamespace::IDN_RDFConnection does not support optimized Pause/Resume. Optimized Pause/Resume requests will be converted to individual sume requests for this connection. LoginClient.processEvent: Received Login Response... LoginClient: Received Login STATUS OK Response MESSAGE Msg Type: MsgType.STATUS_RESP Msg Model Type: LOGIN Indication Flags: Hint Flags: HAS_ATTRIB_INFO | HAS_STATE State: OPEN, OK, NONE, "Login accepted by host usnjtrepd01." AttribInfo Name: APP_FALCON_ALGO NameType: 1 (USER_NAME) Attrib ELEMENT_LIST ELEMENT_ENTRY ApplicationId: 256 ELEMENT_ENTRY ApplicationName: ADS ELEMENT_ENTRY Position: 161.17.73.62/H84047D4A2FLR7Z ELEMENT_ENTRY ProvidePermissionExpressions: 1 ELEMENT_ENTRY ProvidePermissionProfile: 0 ELEMENT_ENTRY AllowSuspectData: 1 ELEMENT_ENTRY SingleOpen: 1 ELEMENT_ENTRY SupportBatchRequests: 1 ELEMENT_ENTRY SupportOptimizedPauseResume: 1 ELEMENT_ENTRY SupportPauseResume: 1 ELEMENT_ENTRY SupportViewRequests: 1 ELEMENT_ENTRY SupportOMMPost: 1 Payload: None Consumer Login successful... ItemManager.sendRequest: Sending item request... ItemManager: Subscribing to CSCO.ITC ItemManager.processEvent: Received Item Event... MESSAGE Msg Type: MsgType.STATUS_RESP Msg Model Type: MARKET_PRICE Indication Flags: Hint Flags: HAS_ATTRIB_INFO | HAS_STATE State: CLOSED, SUSPECT, NOT_ENTITLED, "Record not service permissioned" AttribInfo ServiceName: IDN_RDF ServiceId: 11315 Name: CSCO.ITC NameType: 1 (RIC) Payload: None ItemManager: Receive a COMPLETION_EVENT, com.reuters.rfa.internal.session.omm.OMMSubHandleImpl@3be8fabc 60 seconds elapsed, class com.reuters.rfa.example.omm.cons.StarterConsumer cleaning up... RWF: 14.0 RFA: Version = 7.4.1.L1.all.rrg, Date = Mon Mar 25 19:11:52 EDT 2013, Jar Path = C:\sandbox\ThompsonReuters\rfa\setup\rfaj7.4.1.L1.all.rrg\rfaj7.4 Libs\rfa.jar, Jar Size = 1910996

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.