Python to download Debt Structure with issuer and subsidaires bonds

Hi team,

Below debt structure sample doesn't apply to Sates Own enterprises like 1288.HK. It will show all it's ultimate parents bonds. 1038.HK is another example.

So, wonder is it any other sample can show how to get issuer and subsidaries bonds as same as Eikon Debt Structure of bonds. Thanks.

https://developers.refinitiv.com/en/article-catalog/article/debt-structure-analysis-on-an-organizational-level



df = rdp.Search.search(


# The 'view' represents a specific domain of content we wish to search across.


view = rdp.SearchViews.GovCorpInstruments,



# The 'filter' parameter is a powerful, criteria-based, syntax that allows us to filter for specific


# results.


#


# Note: The expression below utilizes a convenient, modern Python syntax called


# 'String interpolation'.


#


# This feature utilizes f-strings to embed arguments within the string result.


# Refer to the site: https://www.programiz.com/python-programming/string-interpolation for more


# details.


#


# Disclaimer: The following expression includes bonds that are in 'default'. If you choose to ignore


# these from your result set, simply modify the expression below as follows:


#


# "..not(AssetStatus in ('MAT' 'DEF'))"


#


filter = f"ParentOAPermID eq '{org_id}' and IsActive eq true and not(AssetStatus in ('MAT'))",



# Define the upper limit of rows within our result set. This is a system imposed maximum value.


top = 10000,



# The 'select' parameter determines the fields of interest in our output. The logic below takes our


# list of properties defined and creates the appropriate comma-separated list of properties required


# by the service.


select = ','.join(properties),



# The navigator will list all the unique currencies associated with the result set. Used below for


# conversion.


navigators = "Currency"


)



# Bonds represents a simple reference to our data


bonds = df.data.df



# When using search, the order of the columns in our result set are not ordered based on the properties


# defined within the above 'select' statement. As a result, I will re-order them for a more intuitive


# display.


#


# Before I reorder them, I will need to ensure our columns exist.


populate_empty_columns(bonds)



# Now we can re-order the columns


bonds = bonds[properties]


bonds


Regards,

Sunny

expect to download as DS

1038_DS.jpg


Sample code download DS

1038_DS_Parent_Bonds.jpg

Welcome!

It looks like you're new here. Sign in or register to get started.

Best Answer

  • nick.zincone
    nick.zincone admin
    Answer ✓

    Hi @sunny.to@refinitiv.com

    Try changing the filter expression:

    filter = f"ParentOAPermID eq '{org_id}' and IsActive eq true and not(AssetStatus in ('MAT'))",

    to

    filter = f"ParentOrgID eq '{org_id}' and IsActive eq true and not(AssetStatus in ('MAT'))",  

Answers

Welcome!

It looks like you're new here. Sign in or register to get started.

Welcome!

It looks like you're new here. Sign in or register to get started.