Discover Refinitiv
MyRefinitiv Refinitiv Perspectives Careers
Created with Sketch.
All APIs Questions & Answers  Register |  Login
Ask a question
  • Questions
  • Tags
  • Badges
  • Unanswered
Search:
  • Home /
  • Elektron /
  • ETA /
avatar image
Question by Joe.Ferraro · Sep 07, 2016 at 04:37 PM · ETAsslMarketFeedidnssl eta migrate

Migrating application from SSL to ETA; need data from FIELD_LIST_NO in IDN/MarketFeed

We're rewriting an application in ETA since SSL is end of life.

Part of the application logic examines the FIELD_LIST_NO field in the MarketFeed Header.

For example in Record_Response and Snap_Response (340), the record is defined as:

<FS>340<US>TAG<GS>RIC[<RS>R_STATUS]<US>FIELD_LIST_NO<US>RTL{<RS>FID<US>VALUE}<FS>

Some examples of data (using SSL) up to the beginning of the FID/VALUE section are:
<FS>340<US>XX<GS>AAPL.O<US>78<US>15728
<FS>340<US>XX<GS>BB.TO<US>74<US>1296
<FS>340<US>XX<GS>CGBU6m<US>38<US>24080
<FS>340<US>XX<GS>.DJI<US>77<US>3488
<FS>340<US>XX<GS>GOOG.O<US>78<US>20160
<FS>340<US>XX<GS>IBM.N<US>79<US>63344
<FS>340<US>XX<GS>.SPX<US>77<US>46080
<FS>340<US>XX<GS>TRI.N<US>79<US>21376

In these messages, the FIELD_LIST_NO has values of: 38, 74, 77, 78, and 79

The (apparently partial) list of meanings for these fields is:

static const int FieldList_ALL_FUTURES_B = 20;
static const int FieldList_NMTS_NBIDASK = 21;
static const int FieldList_MARKET_INDEX_A = 77;
static const int FieldList_LINK_A = 80;
static const int FieldList_PAGE_25X80 = 82;
static const int FieldList_SPREAD = 83;
static const int FieldList_LONGLINK = 85;
static const int FieldList_CM2000 = 89;

(Of the values seen in the data, the only one that we appear to have a definition or is 77)

In any case, our existing code appears to have particular affinity for types 80 and 85.

Is it possible to recreate this field by extracting one or more values from the various data structures and messages available using the ETA API?

Or did the original author write something using undocumented features of MarketFeed (resulting either some very magic or a bit of cruft -- or both)

People who like this

0 Show 0
Comment
10 |1500 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

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

3 Replies

  • Sort: 
avatar image
Best Answer
Answer by Lars-at-Addicticks · Sep 07, 2016 at 06:45 PM

The equivalent is the FIELD_LIST_NO which is a attribute of a FIELD_LIST.

In terms of ETA Java it would be something like:

fieldList.fieldListNum()

which returns an int, but is really - as far as I understand - a short. The equivalent method in RFA Java indeed returns a short. Well, well.

You can view the field list number by using TRexplorer.

In the screenshot below you can see an example:

The data item I'm displaying in the screenshot is an IDN Chain. Unsurprisingly it has a field list number of 85 (LONGLINK style chains).

Relying on field list numbers for anything but allocating memory seems to me to be a dangerous strategy so you may want to review why they are used by your application. However if you want to do a 1:1 migration then the above would be what you are looking for.


2016-09-08-00-21-10-trexplorer-1110.png (90.7 KiB)
Comment
jirapongse.phuriphanvichai

People who like this

1 Show 0 · Share
10 |1500 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

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

avatar image
Answer by Joe.Ferraro · Sep 08, 2016 at 11:28 AM

Thanks!!

It looks like its a field, not a method: (fieldList.fieldListNum), at least in the C API.

It also looks like it's only present when msgCLass is RSSL_MC_REFRESH or
RSSL_MC_UPDATE and updateType is RDM_UPD_EVENT_TYPE_VERIFY.

Just as it was in MarketFeed MsgTypes: 340 and 318

Now, I just have to figure out why they are using that data downstream.

Comment

People who like this

0 Show 0 · Share
10 |1500 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

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

avatar image
Answer by Joe.Ferraro · Sep 08, 2016 at 11:31 AM

Thanks!!

It looks like its a field, not a method: (fieldList.fieldListNum), at least in the C API.

It also looks like it's only present when msgClass is RSSL_MC_REFRESH or RSSL_MC_UPDATE and updateType is RDM_UPD_EVENT_TYPE_VERIFY.

Just as it was in MarketFeed MsgTypes: 340 and 318

Now, I just have to figure out why they are using that data downstream.

Comment

People who like this

0 Show 1 · Share
10 |1500 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

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

avatar image
Lars-at-Addicticks · Sep 08, 2016 at 01:15 PM 0
Share

Yes, it would only be present (only make sense) in those cases. However I'm under the impression that the API will always populate the field, so if it doesn't arrive on the wire it simply becomes 0. In other words : zero means "not defined".

Also: You would probably have to wait 10 years before you see an example where an open stream changes its fieldListNum in an UPDATE message of type VERIFY but I suppose it can theoretically happen. I would say it is a (almost) static value for the life time of the subscription.

Watch this question

Add to watch list
Add to your watch list to receive emailed updates for this question. Too many emails? Change your settings >
9 People are following this question.

Related Questions

Migrating application from SSL to ETA; need data from RTL (Record Transaction Level) in IDN/MarketFeed

How to detect "stale" items and groups in RSSL.

Does ETA API use secure connection ?

FID 1021, 3887 too smal for NYSE seqnum

Elektron SDK 1.2.0 rsslNumericStringToReal() regression

  • Feedback
  • Copyright
  • Cookie Policy
  • Privacy Statement
  • Terms of Use
  • Careers
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Alpha
  • App Studio
  • Block Chain
  • Bot Platform
  • Calais
  • Connected Risk APIs
  • DSS
  • Data Fusion
  • Data Model Discovery
  • Datastream
  • Eikon COM
  • Eikon Data APIs
  • Elektron
    • EMA
    • ETA
    • WebSocket API
  • Legal One
  • Messenger Bot
  • Messenger Side by Side
  • ONESOURCE
    • Indirect Tax
  • Open PermID
    • Entity Search
  • Org ID
  • PAM
    • PAM - Logging
  • ProView
  • ProView Internal
  • Product Insight
  • Project Tracking
  • Refinitiv Data Platform
    • Refinitiv Data Platform Libraries
  • Rose's Space
  • Screening
    • Qual-ID API
    • Screening Deployed
    • Screening Online
    • World-Check One
    • World-Check One Zero Footprint
  • Side by Side Integration API
  • TR Knowledge Graph
  • TREP APIs
    • CAT
    • DACS Station
    • Open DACS
    • RFA
    • UPA
  • TREP Infrastructure
  • TRIT
  • TRKD
  • TRTH
  • Thomson One Smart
  • Transactions
    • REDI API
  • Velocity Analytics
  • Wealth Management Web Services
  • World-Check Data File
  • Explore
  • Tags
  • Questions
  • Badges