question

Upvotes
Accepted
1 0 0 3

Data issue in RDP Funds API - FX conversion for contributions not working

When I request distributions in EUR for the fixed income fund “Templeton Asian Bond” (ISIN: LU0229950067 ) which is denominated in USD, I get “currency=EUR” in the response but prices are in USD

Example:

Distribution response for 2021-12-08 . As you can see the response states "currency": "EUR" but both the "value" and the nav value are in USD

                            "currency": "EUR",
                            "value": 0.0255902,
                            "date": "2021-12-08",
                            "maxDate": "2021-12-08",
                            "paymentDate": "2021-12-15",
                            "distributionPrices": [
                                {
                                    "date": "2021-12-08",
                                    "currency": "EUR",
                                    "priceCode": "Nav",
                                    "value": 9.29,
                                    "isEstimate": false
                                }

The Dollar Nav value (9.29) also matches the Dollar price from Datascope Select price history

        {
            "IdentifierType": "Isin",
            "Identifier": "LU0229950067",
            "Trade Date": "2021-12-08",
            "Universal Close Price": 9.29,
            "Currency Code": "USD",
            "FXIR Scaling Factor": null
        },


Here are the requests that I send to get the distribution and closing price

Distributions: https://api.refinitiv.com/data/funds/v1/assets

{
    "properties": [
        {
            "Name": "yields",
            "period": {
                "startDate": "2017-01-01",
                "endDate": "2022-01-01"
            },
            "currency": "eur"
        },
        {
            "Name": "Distributions",
            "period": {
                "startDate": "2018-01-01",
                "endDate": "2021-12-31"
            },
            "currency": "eur"
        },
        {
            "Name": "DividendDetails",
            "period": {
                "startDate": "2019-01-01",
                "endDate": "2022-10-05"
            },
            "currency": "eur"
        }
    ],
    "universe": {
        "symbols": [
            "isin:LU0229950067"
        ]
    },
    "settings": {
        "currency": "eur"
    }
}

Prices: https://selectapi.datascope.refinitiv.com/RestApi/v1/Extractions/ExtractWithNotes

{
    "ExtractionRequest": {
        "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.PriceHistoryExtractionRequest",
        "ContentFieldNames": [
            "Trade Date",
            "Universal Close Price",
            "Currency Code",
            "FXIR Scaling Factor"
        ],
        "IdentifierList": {
            "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.InstrumentIdentifierList",
            "InstrumentIdentifiers": [
                {
                    "Identifier": "LU0229950067",
                    "IdentifierType": "Isin"
                }
            ],
            "ValidationOptions": null,
            "UseUserPreferencesForValidationOptions": false
        },
        "Condition": {
            "QueryStartDate": "2021-12-05",
            "QueryEndDate": "2021-12-10",
            "AdjustedPrices": true
        }
    }
}
rdp-api
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.

Hi @maximilian.syndikus ,

Thank you for your participation in the forum. Is the reply below satisfactory in resolving your query?
If so please can you click the 'Accept' text on the left side of the appropriate reply? This will guide all community members who have a similar question.

Thanks,
AHS

Hi,

Please be informed that a reply has been verified as correct in answering the question, and marked as such.

Thanks,

AHS

Upvote
Accepted
1.6k 3 2 3

@maximilian.syndikus , The response to your query is correctly showing the dividend amount in EUR (0.0259) as of 2021-12-08. The USD amount of that dividend is 0.0290. However the NAV as of that day is showing the USD NAV as you stated. I believe the cause is that API only converts the specific data (i.e. the dividend value) to the currency you specified, not the related price value. It is confusing and can be a bug as the currency is showing "EUR" on the price part of the response. You can raise that as a bug to client support team for them to follow up.

Also @zoya faberov is correct that you can get the EUR (or other currency you specified) using the RDP Funds API for prices property. I cannot comment on the datascope API which you are referencing. RDP Funds API is NOT the same service as datascope. Also, notes, @zoya faberov 's sample is showing the price as of this year (2022) rather than 2021 that you used in your example.

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 Bob. I have raised it to the client support team..
Upvotes
32.2k 40 11 20

Hello @maximilian.syndikus ,

According to Funds API Developer Guide->Currency Conversion:

"...The output of some data points can be converted to different currencies."

From my testing using prices:

POST https://api.refinitiv.com/data/funds/v1/assets
{ "properties": [ { "name": "prices" } ], "universe": { "symbols": [ "LU0229950067" ] }, "settings": { "currency": "AUD" } }

coverts:

 "values": [
                        {
                            "date": "2022-12-08",
                            "currency": "AUD",
                            "priceCode": "Nav",
                            "value": 12.035287924,
                            "isEstimate": false
                        }
                    ]

and:

https://api.refinitiv.com/data/funds/v1/assets
{ "properties": [ { "name": "prices" } ], "universe": { "symbols": [ "LU0229950067" ] }, "settings": { "currency": "USD" } }

results in:

 "values": [
                        {
                            "date": "2022-12-08",
                            "currency": "USD",
                            "priceCode": "Nav",
                            "value": 8.14,
                            "isEstimate": false
                        }
                    ]

prices convert to currencies. The conversion of prices is included in dev guide, as an example of currency conversion.

From my testing, neither yields nor distributions support currency conversion, while distributions propagate the currency from request and into result, as a copy from the request

In my best understanding, DSS request is also for prices, rather than yields or distributions.

To verify the availability of specific content, I would suggest engaging with Refinitiv content support experts directly.

Hope that this information is of help


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 @zoya faberov for pointing me to the "prices" data point. I am using this now to get the NAV value in EUR

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

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