Issue with IntradayPricingExtractionRequest only for some RIC codes.

Hello,
I have an issue related to IntradayPricingExtractionRequest for some RIC codes. The content field names and RIC code validation is successful. However while the ExtractWithNotes call returns results for the RIC code "BGN=", for another one "CIDKK1MD=" it just hangs.
The sample code in bellow:
static void Main(string[] args)
{
var dssApiUri = new Uri("https://selectapi.datascope.refinitiv.com/restapi/v1/");
List<string> contentFieldNames = new List<string>() { "RIC", "Trade Date", "Previous Close Date", "Previous Close Price" };
var extractionsContext = new ExtractionsContext(dssApiUri, username, password) { Preferences = { RespondAsync = false } };
var extractionResult = GetInstrumentIntradayData(extractionsContext, "BGN=", contentFieldNames);
//ProcessResults(extractionResult, contentFieldNames);
extractionResult = GetInstrumentIntradayData(extractionsContext, "CIDKK1MD=", contentFieldNames);
//ProcessResults(extractionResult, contentFieldNames);
}
public static ExtractionResult GetInstrumentIntradayData(ExtractionsContext extractionsContext, string ricCode, List<string> contentFieldNames)
{
// Check if field names are available
var availableFieldNames = extractionsContext.GetValidContentFieldTypes(ReportTemplateTypes.IntradayPricing);
var unavailableFieldNames = contentFieldNames.Where(x => !availableFieldNames.Any(f => f.Name == x));
if (unavailableFieldNames.Any())
throw new Exception($"The following content fields are not available: {string.Join(", ", unavailableFieldNames)}");
// Pre-Validate the instruments
var validatedIdentifiers = extractionsContext.InstrumentListOperations.ValidateIdentifiers(
new[] { new InstrumentIdentifier { Identifier = ricCode, IdentifierType = IdentifierType.Ric} },
false);
if (validatedIdentifiers.ValidationResult.ValidInstrumentCount != 1)
throw new Exception($"The RIC identifier {ricCode} is not valid");
// Extract data
var extractionRequest = new IntradayPricingExtractionRequest
{
IdentifierList = InstrumentIdentifierList.Create(validatedIdentifiers.ValidatedInstruments.ToArray(), null, false),
Condition = new IntradayPricingCondition() { ScalableCurrency = true },
ContentFieldNames = contentFieldNames.ToArray()
};
return extractionsContext.ExtractWithNotes(extractionRequest);
}
Thanks,
Andrei
Best Answer
-
Hello @datateam2017 ,
An investigation was conducted based on your question, and here are the results:
1. Why it hangs:
It is not hanging, but rather processing asynchronously by the service. Please see Key Mechanisms -> Asynch for more information. As you are specifying in code "RespondAsync = false" it hangs and you are unable to proceed.
2. Why does it take long:
In a common case this processing completes promptly however, this was not the case, and we have collaborated with our content expert to confirm the cause:
"due to embargo. The RIC <CIDKK1MD=> has an embargo applied from the source, due to which you are getting the error and no data found. Th embargo Notes says "Embargo delay for 1215 of 1440 possible minutes due to closed exchanges required by SDCIBOR (CIBOR Danish Benchmarks) for quotes from RCT". Once the embargo is complete, data will flow to the output result"
Embargos are a complex topic, for more insight see REST API Tutorial 3: On Demand intraday extraction, embargo and .Net SDK Tutorial 4: GUI control calls: Embargo, note files
3. Why is the content empty per your requested fields:
"we have very specific fields that gives results in the extraction, BID price to name as an example. I checked on Real-time to check the issue and found that fields that are reported for RIC <CIDKK1MD=> from source are very limited. For example, there is no ASK Price reported from source for this field. However, we have BID Price and primary Activity reported."
I hope that this information helps
0
Categories
- All Categories
- 3 Polls
- 6 AHS
- 36 Alpha
- 166 App Studio
- 6 Block Chain
- 4 Bot Platform
- 18 Connected Risk APIs
- 47 Data Fusion
- 34 Data Model Discovery
- 684 Datastream
- 1.4K DSS
- 615 Eikon COM
- 5.2K Eikon Data APIs
- 10 Electronic Trading
- Generic FIX
- 7 Local Bank Node API
- 3 Trading API
- 2.9K Elektron
- 1.4K EMA
- 249 ETA
- 554 WebSocket API
- 37 FX Venues
- 14 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 23 Messenger Bot
- 3 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 60 Open Calais
- 275 Open PermID
- 44 Entity Search
- 2 Org ID
- 1 PAM
- PAM - Logging
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 22 RDMS
- 1.9K Refinitiv Data Platform
- 643 Refinitiv Data Platform Libraries
- 4 LSEG Due Diligence
- LSEG Due Diligence Portal API
- 4 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.2K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 12 World-Check Customer Risk Screener
- 1K World-Check One
- 46 World-Check One Zero Footprint
- 45 Side by Side Integration API
- 2 Test Space
- 3 Thomson One Smart
- 10 TR Knowledge Graph
- 151 Transactions
- 143 REDI API
- 1.8K TREP APIs
- 4 CAT
- 26 DACS Station
- 121 Open DACS
- 1.1K RFA
- 104 UPA
- 192 TREP Infrastructure
- 228 TRKD
- 915 TRTH
- 5 Velocity Analytics
- 9 Wealth Management Web Services
- 90 Workspace SDK
- 11 Element Framework
- 5 Grid
- 18 World-Check Data File
- 1 Yield Book Analytics
- 46 中文论坛