Estados Financieros¶
Estado de Resultados¶
import pandas as pd
import requests
API_KEY = 'api_key'
payload = {
'key': API_KEY,
'companies': ['EMPRESAS CMPC S.A.'],
'type': 'EERR',
}
r = requests.post('https://dolphin.markets/api/financial-statements', json=payload)
df = pd.DataFrame(r.json())
print(df['company'].tolist())
Estado de Situación Financiera¶
Repetimos el código anterior, esta vez cambiando la variable type a ESF.
import pandas as pd
import requests
API_KEY = 'api_key'
payload = {
'key': API_KEY,
'companies': ['EMPRESAS CMPC S.A.'],
'type': 'ESF',
}
r = requests.post('https://dolphin.markets/api/financial-statements', json=payload)
df = pd.DataFrame(r.json())
print(df['company'].tolist())
Estado de Flujo Efectivo¶
Y por último, el Estado de Flujo Efectivo lo podemos obtener cambiando ESF por EFE.
import pandas as pd
import requests
API_KEY = 'api_key'
payload = {
'key': API_KEY,
'companies': ['EMPRESAS CMPC S.A.'],
'type': 'EFE',
}
r = requests.post('https://dolphin.markets/api/financial-statements', json=payload)
df = pd.DataFrame(r.json())
print(df['company'].tolist())
Listado de compañías disponibles¶
Si no estás seguro del nombre de una compañía o si quieres explorar todas las que que reportan a la CMF, tan solo al incorporar el signo ? dentro de la variable companies, la API te entrega el listado completo de empresas disponible en Dolphin Markets.
import pandas as pd
import requests
API_KEY = 'api_key'
payload = {
'key': API_KEY,
'companies': '?',
'type': 'EERR',
}
r = requests.post('https://dolphin.markets/api/financial-statements', json=payload)
df = pd.DataFrame(r.json())
print(df['company'].tolist())
Obtener cuentas específicas¶
A modo de ejemplo, obtendremos la cuenta SBIF “Resultado de los propietarios” para algunos bancos, para luego agruparlos anualmente por institución bancaria.
import pandas as pd
import requests
API_KEY = 'api_key'
banks = {
'BANCO DE CREDITO E INVERSIONES': 'BCI',
'BANCO SANTANDER-CHILE': 'Santander',
'BANCO DE CHILE': 'Chile',
'ITAU CORPBANCA': 'Itaú',
}
payload = {
"key": API_KEY,
'companies': list(banks.keys()),
'account': ['Resultado De Los Propietarios'],
}
r = requests.post('https://dolphin.markets/api/financial-statements', json=payload)
banks = pd.DataFrame(r.json())
banks['date'] = pd.to_datetime(banks['date'])
banks.company = banks.company.map(banks)
profit = banks.pivot_table(index='date', values='unit', columns='company', aggfunc='sum')
profit = profit.loc['2015':].resample('Y').sum().T
profit.columns = profit.columns.year
print(profit)
Obtener ratios financieros¶
import pandas as pd
import requests
API_KEY = 'api_key'
payload = {
"key": API_KEY,
'companies': ['EMPRESAS CMPC S.A.'],
'ratios': ['net_debt_to_ebitda']
}
r = requests.post('https://dolphin.markets/api/ratios', json=payload)
df = pd.DataFrame(r.json())
Estados financieros de un período específico¶
import pandas as pd
import requests
API_KEY = 'api_key'
payload = {
"key": API_KEY,
'companies': ['EMPRESAS CMPC S.A.'],
'type': 'ESF',
'date': '2019-12-31',
}
r = requests.post('https://dolphin.markets/api/financial-statements', json=payload)
df = pd.DataFrame(r.json())
# si se requieren las cuentas en español (CMF)
df.pivot_table(index=['cmf_index', 'tag'], values='unit', columns='company')
# o en formato en inglés (IFRS)
df.pivot_table(index=['cmf_index', 'ifrs'], values='unit', columns='company')