Discover Refinitiv
MyRefinitiv Refinitiv Perspectives Careers
Created with Sketch.
All APIs Questions & Answers  Register |  Login
Ask a question
  • Questions
  • Tags
  • Badges
  • Unanswered
Search:
  • Home /
  • Eikon COM /
avatar image
Question by jude.x.jin · Jan 31, 2017 at 10:36 AM · eikoneikon-com-api

How can I use the com(VBA) API in batch(non-callback) query mode?

hello,

i'm trying to do batch queries for a lost of list tickers in non-interative non-callback mode. i care about performance very much and have to work within vba.

i have not found any example on how to do this. all documentation and samples are showing callback interactive mode.

Please help me asap.

thanks,

jude jin

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.

2 Replies

  • Sort: 
avatar image
REFINITIV
Best Answer
Answer by Alex Putkov.1 · Feb 01, 2017 at 12:26 PM

Hi @jude.x.jin,

I don't believe I offered to produce an example of synchronous behavior. I can of course do it, however my job is to advocate best practices in the use of Thomson Reuters APIs. It is best practice to use the APIs as designed. If the API is asynchronous, it is best practice to use it asynchronously. Tricking an asynchronous API into producing synchronous behavior is a back door, which is only to be considered when the front door doesn't work. The use case you specified is trivial and can be easily implemented asynchronously. See attached example, which retrieves closing prices for 2,549 stocks (current constituents of Nasdaq Composite index). On my end it takes 5-6 seconds to retrieve the entire list, though the actual retrieval times will vary depending on a number of factors. Still the retrieval time on your end should be in the same order of magnitude as it is for me.

adxrtlistsnapshot.zip


adxrtlistsnapshot.zip (35.5 KiB)
Comment
zoya faberov

People who like this

1 Show 2 · 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
jude.x.jin · Feb 01, 2017 at 12:31 PM 0
Share

hello, alex.

this relies on application.enableevents being set to true...

i cannot rely on this being true.

then how can i do this efficiently?

thank you very much,

jude jin

avatar image
REFINITIV
Alex Putkov.1 ♦♦ jude.x.jin · Feb 01, 2017 at 01:01 PM 0
Share

It does not. The value of Application.EnableEvents has no effect on ActiveX controls, user forms, COM objects etc. Try it. Set it to False and see that the example still retrieves the data.

avatar image
REFINITIV
Answer by Alex Putkov.1 · Jan 31, 2017 at 07:23 PM

Hi @jude.x.jin

I suppose by "batch queries" you mean synchronous data retrieval, right? All Eikon COM APIs are asynchronous, which means that your data handling must be in the callback procedure for the event notifying the application that data has been retrieved. It is possible to trick some of Eikon COM APIs into producing seemingly synchronous behavior by sitting in the loop and checking data status until data status indicated that the data is ready. But I would not recommend this, especially since you're concerned about performance. The API is designed to produce asynchronous data retrieval and this is how it should be used. There's absolutely nothing you can do with synchronous retrieval that you cannot do with asynchronous. If you have a specific use case that you're struggling to implement using asynchronous retrieval, feel free to specify it here, and I'll be happy to produce an example of how whatever you need to do can be achieved. Or if you meant something else by "batch queries", then please elaborate on what you meant.

Best regards,

Alex Putkov

Comment

People who like this

0 Show 2 · 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
jude.x.jin · Jan 31, 2017 at 10:27 PM 0
Share

hello, alex.

can you show me an example of "synchronous" behavior that retrieve HST_CLOSE of 1000 tickers in under 5 seconds or a little over? i need this asap. your competitor can do this very easily.

thank you.

jude jin

avatar image
HFTVOL jude.x.jin · Feb 28, 2017 at 01:56 AM 0
Share

I concur with OP. Would you please provide an example how a flash quote of all nasdaq constituents can be retrieved within 5 seconds. And the developers talk about best practices. How about getting rid of using Windows pumps in their API, something that is driving me absolutely crazy because it simply does not belong in there. It causes huge issues when making requests from non UI and different threads. It is absolutely frustrating to work with the Eikon .Net API. Bloomberg does not use Windows message pumps, nor any of Reuters' competitors

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 >
8 People are following this question.

Related Questions

Excel API: formula builder - retreive data from local server

RDATA batch request with individual Sdate parameters

i use on excel rtget and rtcontribute and i want retrieve data directly by vba like test = adxRtContrib.Attribute("GEN_VAL1") but it isn t work?Coul please communicate me a simple example ?

Issue with TR.IssuerRating

EikonRefreshWorkbook giving previous request results

  • Copyright
  • Cookie Policy
  • Privacy Statement
  • Terms of Use
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Alpha
  • App Studio
  • Block Chain
  • Bot Platform
  • Connected Risk APIs
  • DSS
  • Data Fusion
  • Data Model Discovery
  • Datastream
  • Eikon COM
  • Eikon Data APIs
  • Electronic Trading
    • Generic FIX
    • Local Bank Node API
    • Trading API
  • Elektron
    • EMA
    • ETA
    • WebSocket API
  • FX Venues
    • FX Trading – RFQ Maker
  • Intelligent Tagging
  • Legal One
  • Messenger Bot
  • Messenger Side by Side
  • ONESOURCE
    • Indirect Tax
  • Open Calais
  • Open PermID
    • Entity Search
  • Org ID
  • PAM
    • PAM - Logging
  • ProView
  • ProView Internal
  • Product Insight
  • Project Tracking
  • RDMS
  • 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
  • TRKD
  • TRTH
  • Thomson One Smart
  • Transactions
    • REDI API
  • Velocity Analytics
  • Wealth Management Web Services
  • Workspace SDK
    • Element Framework
    • Grid
  • World-Check Data File
  • Yield Book Analytics
  • 中文论坛
  • Explore
  • Tags
  • Questions
  • Badges