question

Upvotes
Accepted
3 0 0 2

IRS Template Definitions in Instrument Pricing Analytics

Hey. I am looking for a way to download the templates available in the Instrument Pricing Analytics api.

For example. I want to know the definition of: CNY_QM7R .

As well as definitions of standard templates for other currencies. My use case is then to modify them slightly and make additional requests.

Is there such an API route available?

#technologyapiswapstemplate
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
Accepted
5.6k 18 2 7

Hi @mikael.ohman ,


Thank you for your question. Our latest Refinitiv Data Library offers functions to get IPA data, including Financial Contracts and Curves/Surfaces. Please have a look at the example templates from our Github Repo for financial contracts and for Curves/Surfaces.

Hope that will be helpful. Feel free to let me know should your have any further questions.

Best regards,

Haykaz

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
3 0 0 2
response = swap.Definition(
    tenor='65M',
    start_date='2022-05-14',
    template='MXN_MB1T',
    pricing_parameters=swap.PricingParameters(
        valuation_date='2022-02-03', discounting_ccy="MXN", discounting_tenor="OIS"
    ),


Thanks for the links. Using the above idea, I could find the answer to some of the details of how the templates are defined. I was not able to value the Brazilian Lira swap but will start a separate topic for that.

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
25.3k 89 12 25

Hi @mikael.ohman

Not a content expert so not sure what CNY_QM7R represents - however, looking at one of the above examples:

Example.DataLibrary.Python/EX-2.08.03-IPA-CurvesAndSurfaces-ZCCurveDefinitions.ipynb at main · Refinitiv-API-Samples/Example.DataLibrary.Python (github.com)

If I access the raw output from the Definitions request:

response = zc_curve_definitions.Definition(source="Refinitiv").get_data()
response.data.raw

I can see the raw output includes the following CNY

    {'currency': 'CNY',
     'mainConstituentAssetClass': 'Swap',
     'riskType': 'InterestRate',
     'indexName': 'REPO',
     'source': 'Refinitiv',
     'name': 'CNY REPO Swap ZC Curve',
     'firstHistoricalAvailabilityDate': '2007-02-28',
     'id': 'cdcec3d8-6fc5-4c37-b9e4-969c8f2ae82f',
     'owner': 'Refinitiv',
     'availableTenors': ['7D'],
     'availableDiscountingTenors': ['7D']},


If you want to see the detailed definition of a curve, you can request the curve itself and then review the output.

response = zc_curves.Definition(
    constituents={},
    curve_parameters=zc_curves.ZcCurveParameters(
    ),
    curve_definition=zc_curves.ZcCurveDefinitions(
        id="cdcec3d8-6fc5-4c37-b9e4-969c8f2ae82f",
        discounting_tenor="7D"
    ),
).get_data()

response.data.raw

which includes the curve data as well as the definition e.g.:

{'data': [{'curveDefinition': {'currency': 'CNY',
    'mainConstituentAssetClass': 'Swap',
    'riskType': 'InterestRate',
    'indexName': 'REPO',
    'source': 'Refinitiv',
    'name': 'CNY REPO Swap ZC Curve',
    'id': 'cdcec3d8-6fc5-4c37-b9e4-969c8f2ae82f',
    'discountingTenor': '7D',
    'ignoreExistingDefinition': False,
    'constituentOverrideMode': 'MergeWithDefinition',
    'availableTenors': ['7D'],
    'availableDiscountingTenors': ['7D'],
    'owner': 'Refinitiv',
    'indexTenors': ['7D']},
   'curveParameters': {'extrapolationMode': 'None',
    'interpolationMode': 'CubicDiscount',
..... and so on...



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.

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.