Finansiella nyckeltal från kassaflödesanalysen

Analysera finansiella rapporter i Python

Rohan Chatterjee

Risk Modeler

Läsa in JSON-data

  • Data i verkligheten kommer inte alltid i kalkylblad
  • Ibland levereras den i JSON-format ("JavaScript Object Notation")
  • Företag kan dela finansiell information i JSON
  • Vi kan läsa JSON-filer till Python med pandas
cash_flow = pd.read_json("cash_flow_statement.json")
print(cash_flow.head())

Den här bilden visar de 5 översta raderna i kassaflödesdata som laddades in.

Analysera finansiella rapporter i Python

Kassaflöde i förhållande till nettoresultat

  • Andelen kassaflöde från rörelseverksamheten i förhållande till nettoresultatet

  • Rörelseaktiviteter är företagets kärnverksamhet

  • Ett högt nyckeltal innebär att företaget genererar en stor del av sitt kassaflöde från rörelseverksamheten

Formel:

$$\dfrac{\text{Cash flow from operating activities}}{\text{Net income}}$$

Analysera finansiella rapporter i Python

Rörelsekassaflödets nyckeltal

  • Andelen kassaflöde från rörelseverksamheten i förhållande till kortfristiga skulder
  • Mäter hur många gånger företaget kan betala sina kortfristiga åtaganden med kassaflödet från kärnverksamheten
  • Ett nyckeltal över ett innebär att företaget genererar mer kassaflöde än vad som krävs för att möta de kortfristiga åtagandena

Formel:

$$\dfrac{\text{Cash flow from operating activities}}{\text{Current liabilities}}$$

Analysera finansiella rapporter i Python

Imputera saknade värden

  • Verkliga data innehåller ofta saknade värden
  • Täljaren i ett nyckeltal kan finnas, men nämnaren saknas – eller tvärtom
  • Lösning: imputera saknade värden med data från andra företag
Analysera finansiella rapporter i Python

Imputera saknade värden

  • I DataFrame:en dataset saknas vissa värden i "Total Current Liabilities", markerade med NaN

Den här bilden visar de översta raderna i en kassaflödesanalys där vissa poster i kolumnen för totala skulder saknar värden.

  • Saknade kortfristiga skulder för ett företag kan imputeras med tillgängliga värden för samma företag
Analysera finansiella rapporter i Python

Imputera saknade värden

  • Vi fyller i saknade värden med medelvärdet av befintliga värden per företag:
imputation = dataset.groupby("company")["Total Current Liabilities"].transform("mean")

dataset["Imputed Total Current Liabilities"] = dataset["Total Current Liabilities"].fillna(imputation)
  • Efter imputering ser dataset ut så här:

Den här bilden visar de översta raderna i en kassaflödesanalys där vissa poster i kolumnen för totala skulder saknar värden. En extra kolumn med imputerade kortfristiga skulder har lagts till.

  • Använd percentiler för ett mer konservativt resultat
Analysera finansiella rapporter i Python

Imputera saknade värden med percentiler

  • Att imputera ett saknat värde med det 70:e percentilens sämsta icke-saknade värde ger en mer konservativ imputering.

  • Det kan vara mer försiktigt att beräkna nyckeltal med den mer konservativa imputeringen om nyckeltalet ska användas i beslutsfattande.

  • Imputering med 70:e percentilen, grupperad per company:
imputation = dataset.groupby("company")["Total Current Liabilities"]\
    .transform(lambda x: np.nanquantile(x, 0.7))

dataset["Imputed Total Current Liabilities"] = dataset["Total Current Liabilities"]\
    .fillna(imputation)
Analysera finansiella rapporter i Python

Nu kör vi en övning!

Analysera finansiella rapporter i Python

Preparing Video For Download...