Код: Выделить всё
NPORT-P/A
false
0001145549-23-004025
0001618627
XXXXXXXX
S000048029
C000151492
...
...
ARROW BIDCO LLC
549300YHZN08M0H3O128
Arrow Bidco LLC
042728AA3
115000.000000000000
PA
USD
114754.170000000000
0.3967552449
Long
DBT
CORP
US
N
2
2024-03-15
Fixed
9.500000000000
N
N
N
N
N
N
В настоящее время я использую следующий код:
Код: Выделить всё
import numpy as np
import pandas as pd
import requests
from bs4 import BeautifulSoup
header = {"User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.75 Safari/537.36", "X-Requested-With": "XMLHttpRequest"}
n_port_file = requests.get("https://www.sec.gov/Archives/edgar/data/1618627/000114554923004968/primary_doc.xml", headers=header, verify=False)
n_port_file_xml = n_port_file.content
soup = BeautifulSoup(n_port_file_xml,'xml')
names = soup.find_all('name')
lei = soup.find_all('lei')
title = soup.find_all('title')
cusip = soup.find_all('cusip')
....
maturityDt = soup.find_all('maturityDt')
couponKind = soup.find_all('couponKind')
annualizedRt = soup.find_all('annualizedRt')
Код: Выделить всё
fixed_income_data = []
for i in range(0,len(names)):
rows = [names[i].get_text(),lei[i].get_text(),
title[i].get_text(),cusip[i].get_text(),
balance[i].get_text(),units[i].get_text(),
pctVal[i].get_text(),payoffProfile[i].get_text(),
assetCat[i].get_text(),issuerCat[i].get_text(),
invCountry[i].get_text(),couponKind[i].get_text()
]
fixed_income_data.append(rows)
fixed_income_df = pd.DataFrame(equity_data,columns = ['name',
'lei',
'title',
'cusip',
'balance',
'units',
'pctVal',
'payoffProfile',
'assetCat',
'issuerCat',
'invCountry'
'maturityDt',
'couponKind',
'annualizedRt'
], dtype = float)
Кроме того, для портфелей, которые содержат как фиксированный доход, так и долевые ценные бумаги, долевые ценные бумаги не возвращают информацию для дочернего элемента долга Secs. Есть ли способ перебирать эти данные, одновременно очищая их самым простым способом? Даже добавление «NaN» для дочерних элементов долга, на которые не ссылаются долевые ценные бумаги, было бы правильным ответом. Будем очень признательны за любую помощь!
[1]: https://www.sec.gov/Archives/edgar/data ... ry_doc.xml
Подробнее здесь: https://stackoverflow.com/questions/753 ... utifulsoup