mirror of
https://github.com/fhswf/aki_prj23_transparenzregister.git
synced 2025-06-21 21:43:55 +02:00
Spellchecking with PyCharm (#133)
Co-authored-by: KM-R <129882581+KM-R@users.noreply.github.com>
This commit is contained in:
@ -1,23 +1,29 @@
|
||||
# Sentimentanalyse
|
||||
|
||||
Sentimentanalyse ist eine Technik des maschinellen Lernens und der künstlichen Intelligenz, die verwendet wird, um das Stimmungs- oder Emotionsniveau in Texten oder anderen Inhalten zu identifizieren. Die Sentimentanalyse basiert auf der Verarbeitung natürlicher Sprache (Natural Language Processing, NLP) und nutzt Algorithmen, um das Vorkommen von positiven, negativen oder neutralen Ausdrücken in einem Text zu erkennen.
|
||||
|
||||
Sentimentanalyse ist eine Technik des maschinellen Lernens und der künstlichen Intelligenz, die verwendet wird, um das
|
||||
Stimmungs- oder Emotionsniveau in Texten oder anderen Inhalten zu identifizieren. Die Sentimentanalyse basiert auf der
|
||||
Verarbeitung natürlicher Sprache (Natural Language Processing, NLP) und nutzt Algorithmen, um das Vorkommen von
|
||||
positiven, negativen oder neutralen Ausdrücken in einem Text zu erkennen.
|
||||
|
||||
## Techniken der Sentimentanalyse:
|
||||
|
||||
1. Regelbasiert: Nutzt eine Sammlung von Regeln und lexikalischen Ressourcen, um das Sentiment zu erkennen. Beispiel: Das SentiWordNet-Lexikon ordnet jedem Wort in einem Text eine positive, negative oder neutrale Bewertung zu
|
||||
2. Machine-Learning-basiert: Nutzt Algorithmen des maschinellen Lernens, beispielsweise Naive Bayes, Entscheidungsbäume und Support-Vector-Machines (SVM).
|
||||
3. Deep-Learning-basiert: Nutzt neuronale Netze, beispielsweise Convolutional Neural Networks (CNN) und Recurrent Neural Networks (RNN).
|
||||
1. Regelbasiert: Nutzt eine Sammlung von Regeln und lexikalischen Ressourcen, um das Sentiment zu erkennen. Beispiel:
|
||||
Das SentiWordNet-Lexikon ordnet jedem Wort in einem Text eine positive, negative oder neutrale Bewertung zu
|
||||
2. Machine-Learning-basiert: Nutzt Algorithmen des maschinellen Lernens, beispielsweise Naive Bayes, Entscheidungsbäume
|
||||
und Support-Vector-Machines (SVM).
|
||||
3. Deep-Learning-basiert: Nutzt neuronale Netze, beispielsweise Convolutional Neural Networks (CNN) und Recurrent Neural
|
||||
Networks (RNN).
|
||||
|
||||
[Deep Data Analytics](https://deep-data-analytics.com/faq/sentiment-analyse/)
|
||||
|
||||
|
||||
## Python Bibliotheken:
|
||||
|
||||
Pattern, VADER, BERT, TextBlob, spacy, CoreNLP, scikit-learn, Polyglot, PyTorch, Flair
|
||||
|
||||
[Top 10 Libraries](https://www.unite.ai/10-best-python-libraries-for-sentiment-analysis/)
|
||||
|
||||
### FinBERT
|
||||
|
||||
Financial Sentiment Analysis with BERT
|
||||
|
||||
[Paper](https://arxiv.org/pdf/1908.10063.pdf)
|
||||
@ -26,18 +32,16 @@ Financial Sentiment Analysis with BERT
|
||||
|
||||
[Minimal Example](https://huggingface.co/yiyanghkust/finbert-tone)
|
||||
|
||||
|
||||
# Topic Modeling
|
||||
|
||||
- Text-Mining-Methode, um Themen in Textsammlungen zu finden
|
||||
- Suche nach Trends und Mustern in unstrukturierten Daten
|
||||
- Verfahren: Latent Dirichlet Allokation (LDA), Probabilistic Latent Semantic Analysis (PLSA), Non-Negative Matrix Factorization (NMF)
|
||||
- Verfahren: Latent Dirichlet Allokation (LDA), Probabilistic Latent Semantic Analysis (PLSA), Non-Negative Matrix
|
||||
Factorization (NMF)
|
||||
- Document Clustering
|
||||
|
||||
[Beispiel Blog-Analyse](https://blog.codecentric.de/topic-modeling-codecentric-blog-articles)
|
||||
|
||||
## Python Bibliotheken:
|
||||
|
||||
Gensim (ggf. Erweiterung gensim-finance), spacy, NLTK, scikit-learn, PyCaret
|
||||
|
||||
|
||||
|
||||
|
@ -1,11 +1,19 @@
|
||||
# Von der Problemstellung zum Lösungskonzept
|
||||
Um ein Softwaresystem für das Transparenzregister implementieren zu können, ist es notwendig Anforderungen zu formulieren. Diese legen die Eigenschaften der Software fest und werden benötigt, um die fachliche und technische Lösung zu modellieren / entwerfen und ein Produkt zu implementieren.
|
||||
|
||||
Zu Beginn sind die Anforderungen wenig eingeschränkt ("Benötigt wird eine Möglichkeit Daten zu speichern."), im Verlauf der Modellierung wird der Lösungsraum eingeschränkt ("Es bietet sich eine Datenbanklösung oder Dateiablage an.") und abschließend auf eine zu implementierende Lösung festgelegt ("Die Software verwendet ein relationales Modell unter Verwendung einer SQLite Datenbank.").
|
||||
Um ein Softwaresystem für das Transparenzregister implementieren zu können, ist es notwendig Anforderungen zu
|
||||
formulieren. Diese legen die Eigenschaften der Software fest und werden benötigt, um die fachliche und technische Lösung
|
||||
zu modellieren / entwerfen und ein Produkt zu implementieren.
|
||||
|
||||
Zu Beginn sind die Anforderungen wenig eingeschränkt ("Benötigt wird eine Möglichkeit Daten zu speichern."), im Verlauf
|
||||
der Modellierung wird der Lösungsraum eingeschränkt ("Es bietet sich eine Datenbanklösung oder Dateiablage an.") und
|
||||
abschließend auf eine zu implementierende Lösung festgelegt ("Die Software verwendet ein relationales Modell unter
|
||||
Verwendung einer SQLite Datenbank.").
|
||||
|
||||
## Requirements Engineering Transparenzregister
|
||||
Unser Weg zum Pflichtenheft und zur Spezifikation der Systemanforderungen ist folgend dargestellt.
|
||||
Von unspezifizierten Anforderungen werden wir immer konkreter und beantworten iterativ die Fragen *Was ist das Problem/Anforderung?* und *Wie lösen wir das Problem/Anforderung?*.
|
||||
|
||||
Unser Weg zum Pflichtenheft und zur Spezifikation der Systemanforderungen ist folgend dargestellt.
|
||||
Von unspezifizierten Anforderungen werden wir immer konkreter und beantworten iterativ die Fragen *Was ist das
|
||||
Problem/Anforderung?* und *Wie lösen wir das Problem/Anforderung?*.
|
||||
|
||||
### 1. Anforderungen aus Projektvorstellung
|
||||
|
||||
@ -20,21 +28,28 @@ Von unspezifizierten Anforderungen werden wir immer konkreter und beantworten it
|
||||
|
||||
- Es werden Datenquellen benötigt, um Unternehmenskennzahlen ermitteln zu können.
|
||||
- Es werden Datenquellen benötigt, um über die öffentliche Darstellung der Unternehmen zu erfahren.
|
||||
- Es werden Werkzeuge benötigt, um Sentimentanalyse über Unternehmen durchzuführen.
|
||||
- Es werden Werkzeuge benötigt, um Sentimentanalyse über Unternehmen durchzuführen.
|
||||
- Die rechtmäßige Verwendung der Daten muss geklärt werden.
|
||||
- Die ermittelten Daten müssen gespeichert werden.
|
||||
- Es werden Werkzeuge benötigt, um Text Mining zu betreiben.
|
||||
|
||||
### 3. Identifikation von Domänen zur Lösungsfindung
|
||||
Aus den Anforderungen der Projektvorstellung und der Projektgruppe wurden sechs Domänen identifiziert, welche benötigt werden, um ein Softwaresystem für Transparenzregister zu erarbeiten.
|
||||
|
||||
Aus den Anforderungen der Projektvorstellung und der Projektgruppe wurden sechs Domänen identifiziert, welche benötigt
|
||||
werden, um ein Softwaresystem für Transparenzregister zu erarbeiten.
|
||||
Um das benötigte Domänenwissen zu vertiefen, bearbeitet jedes Mitglied ein Cluster.
|
||||
|
||||
### 4. technische/fachliche Lösungen
|
||||
Mit dem Domänenwissen können technische und fachliche Lösungen definiert werden ("Zur Datenspeicherung von Unternehmenskennzahlen ist *xy* notwendig, weil *abc*.") und erste Modelle (z.B. GUI-Modell) erstellt werden.
|
||||
|
||||
Mit dem Domänenwissen können technische und fachliche Lösungen definiert werden ("Zur Datenspeicherung von
|
||||
Unternehmenskennzahlen ist *xy* notwendig, weil *abc*.") und erste Modelle (z.B. GUI-Modell) erstellt werden.
|
||||
|
||||
### 5. Priorisierung von Anforderungen
|
||||
Die Gruppe diskutiert die Anforderungen und legt eine Priorisierung fest.
|
||||
|
||||
### 6. Pflichtenheft
|
||||
Das Team legt sich mit dem Pflichtenheft auf einen definierten Umfang und konkrete Inhalte der Lösung fest. Es wird in *Muss-* und *Kann-*Anforderungen unterschieden.
|
||||
Das Pflichtenheft ist das **Project Proposal**.
|
||||
Die Gruppe diskutiert die Anforderungen und legt eine Priorisierung fest.
|
||||
|
||||
### 6. Pflichtenheft
|
||||
|
||||
Das Team legt sich mit dem Pflichtenheft auf einen definierten Umfang und konkrete Inhalte der Lösung fest. Es wird in
|
||||
*Muss-* und *Kann-*Anforderungen unterschieden.
|
||||
Das Pflichtenheft ist das **Project Proposal**.
|
||||
|
@ -1,44 +1,83 @@
|
||||
# Timeseries (deutsch: Zeitreihen) im Kontext des Transparenzregisters Kapitalgesellschaften
|
||||
|
||||
## Leitfragen
|
||||
|
||||
1. Was zeichnet Timeseries Daten aus?
|
||||
2. Wie werden Timeseries effizient gespeichert?
|
||||
3. Welche Daten sind für den vorstehenden Use Case relevant und wie werden diese möglichts optimal (gemäß Software Qualitätskriterien wie Skalierbarkeit u.ä.) modelliert?
|
||||
3. Welche Daten sind für den vorstehenden Use Case relevant und wie werden diese möglichts optimal (gemäß Software
|
||||
Qualitätskriterien wie Skalierbarkeit u.ä.) modelliert?
|
||||
4. Passt die Struktur und Handhabung von Timeseries Daten auf den Use Case?
|
||||
5. Wo können die benötigten Daten abgerufen werden?
|
||||
6. Wie könnte ein beispielhafter Datensatz (ggf. in Form eines Pandas DataFrames) aussehen?
|
||||
|
||||
## Timeseries
|
||||
Hinter Timeseries (oder Zeitreihen) verbergen sich Datenpunkte meistens numerischer Natur aber auch andere Datentypen sind möglich, die Werte einer Kennzahl oder Entität entlang der Zeit-Achse darstellen. Nennenswerte Beispiele sind die Herzfrequenz eines Menschen sowie Aktienkurse börsennotierter Unternehmen. Es wird generell zwischen `Metriken` (engl.: Metrics; bei regelmäßigem Intervall) und `Ereignissen` (engl.: Events; bei unregelmäßigen Intervallen) unterschieden.
|
||||
|
||||
Hinter Timeseries (oder Zeitreihen) verbergen sich Datenpunkte meistens numerischer Natur aber auch andere Datentypen
|
||||
sind möglich, die Werte einer Kennzahl oder Entität entlang der Zeit-Achse darstellen. Nennenswerte Beispiele sind die
|
||||
Herzfrequenz eines Menschen sowie Aktienkurse börsennotierter Unternehmen. Es wird generell zwischen `Metriken` (engl.:
|
||||
Metrics; bei regelmäßigem Intervall) und `Ereignissen` (engl.: Events; bei unregelmäßigen Intervallen) unterschieden.
|
||||
|
||||
--<cite>vgl. [influxdata - What is time series data?](https://www.influxdata.com/what-is-time-series-data/)
|
||||
|
||||
Einige zentrale Eigenschaften von Daten, die als Zeitreihen modelliert werden, sind:
|
||||
1. `Unveränderbarkeit` (engl.: Immutability):
|
||||
Da Zeitreihen in der Regel in zeitlicher Reihenfolge aufgenommen werden, werden sie normalerweise lediglich an die bestehende Reihe angehangen und nachträglich nicht mehr angepasst. Der entscheidende Identifikator des Datensatzes besteht dabei aus dem Zeitstempel (engl.: Timestamp) sowie der zugeordneten Entität (z.B. einem Sensor). Andere Features, die als Primärschlüssel fungieren können, sind nicht vorgesehen.
|
||||
2. `Lebensdauer` (engl.: Retention policy):
|
||||
Da Zeitreihen in hoher Frequenz geschrieben aber mit höherem Alter seltener gelesen werden, ist es üblich alte Daten zu löschen bzw. aggregiert zu speichern, um langfristig Speicher zu sparen.
|
||||
3. `Aggregation` (engl.: Aggregation):
|
||||
In den meisten Use Cases werden nicht alle Daten gleichzeitig oder nur einzelne Datensätze sondern Werte eines definierten Zeitraumes abgefragt und häufig aggregiert (z.B. als Summe oder Durchschnitt) zurückgegeben.
|
||||
4. `Hohes Schreib- zu Lese-Verhältnis` (engl.: High write/read ratio):
|
||||
Timeseries Daten werden in der Regel in hoher Frequenz (kurzen Intervallen) geschrieben jedoch nur gelegentlich bzw. wie in Punkt 3 angemerkt aggregiert abgerufen, so dass schreibende Zugriffe zur Datenbank die lesenden an Volumen übertreffen.
|
||||
|
||||
<cite>-- vgl. [TDengine - Characteristics of Time-Series Data](https://tdengine.com/tsdb/characteristics-of-time-series-data/)
|
||||
1. `Unveränderbarkeit` (engl.: Immutability):
|
||||
Da Zeitreihen in der Regel in zeitlicher Reihenfolge aufgenommen werden, werden sie normalerweise lediglich an die
|
||||
bestehende Reihe angehangen und nachträglich nicht mehr angepasst. Der entscheidende Identifikator des Datensatzes
|
||||
besteht dabei aus dem Zeitstempel (engl.: Timestamp) sowie der zugeordneten Entität (z.B. einem Sensor). Andere
|
||||
Features, die als Primärschlüssel fungieren können, sind nicht vorgesehen.
|
||||
2. `Lebensdauer` (engl.: Retention policy):
|
||||
Da Zeitreihen in hoher Frequenz geschrieben aber mit höherem Alter seltener gelesen werden, ist es üblich alte Daten
|
||||
zu löschen bzw. aggregiert zu speichern, um langfristig Speicher zu sparen.
|
||||
3. `Aggregation` (engl.: Aggregation):
|
||||
In den meisten Use Cases werden nicht alle Daten gleichzeitig oder nur einzelne Datensätze, sondern Werte eines
|
||||
definierten Zeitraumes abgefragt und häufig aggregiert (z.B. als Summe oder Durchschnitt) zurückgegeben.
|
||||
4. `Hohes Schreib- zu Lese-Verhältnis` (engl.: High write/read ratio):
|
||||
Timeseries Daten werden in der Regel in hoher Frequenz (kurzen Intervallen) geschrieben jedoch nur gelegentlich bzw.
|
||||
wie in Punkt 3 angemerkt aggregiert abgerufen, sodass schreibende Zugriffe zur Datenbank die lesenden an Volumen
|
||||
übertreffen.
|
||||
|
||||
<cite>--
|
||||
vgl. [TDengine - Characteristics of Time-Series Data](https://tdengine.com/tsdb/characteristics-of-time-series-data/)
|
||||
|
||||
## Modellierung relevanter Kennzahlen
|
||||
|
||||
### Ist die Timeseries Modellierung für den Use Case geeignet?
|
||||
Die im Rahmen der vorher durchgeführten Analyse von für den Use Case [relevanten Unternehmenskennzahlen](../data_and_metrics.md) zeichnen sich durch ein Merkmal aus: sie basieren auf einer jährlich bis maximal jedes Quartal aufgestellten Kennzahl wie den Gewinn oder Umsatz des Unternehmens. Daraus resultiert eine für Zeitreihen geringe Datenfrequenz - üblich sind hier minütlich bis unter sekündlich geschriebene Daten.
|
||||
|
||||
Des Weiteren ist jeder Datensatz nicht nur an die Zeit-Achse sondern eine weitere Entität wie einen Quartals oder Jahresabschluss gebunden. Dies spiegelt nicht nur in der Berechnung der Kennzahl für ein einzelnes Unternehmen sondern auch den Vergleich zwischen Mehreren wieder: Hier ist es möglich, dass Unternehmen ihre Ergebnisse zu unterschiedlichen Zeiten aber den selben Ereignissen veröffentlichen. Immerhin ist es realistisch, dass ein Unternehmen seinen Jahresabschluss deutlich früher als ein anderes der Öffentlichkeit zur Verfügung stellt. So eine Abfrage ließe sich zwar durchaus über die Einführung einer zeitlichen Einschränkung filtern, jedoch ist auch hier die Verknüpfung zu einem Jahres- oder Quartalsabschluss von höherem Interesse.
|
||||
Die im Rahmen der vorher durchgeführten Analyse von für den Use
|
||||
Case [relevanten Unternehmenskennzahlen](../data_and_metrics.md) zeichnen sich durch ein Merkmal aus: sie basieren auf
|
||||
einer jährlich bis maximal jedes Quartal aufgestellten Kennzahl wie den Gewinn oder Umsatz des Unternehmens. Daraus
|
||||
resultiert eine für Zeitreihen geringe Datenfrequenz - üblich sind hier minütlich bis unter sekündlich geschriebene
|
||||
Daten.
|
||||
|
||||
In Folge dessen eignet sich eine Zeitreihen basierte Modellierung nicht für die zentralen Unternehmenskennzahlen.
|
||||
Des Weiteren ist jeder Datensatz nicht nur an die Zeit-Achse, sondern eine weitere Entität wie eines Quartals oder
|
||||
Jahresabschluss gebunden. Dies spiegelt nicht nur in der Berechnung der Kennzahl für ein einzelnes Unternehmen, sondern
|
||||
auch den Vergleich zwischen Mehreren wieder: Hier ist es möglich, dass Unternehmen ihre Ergebnisse zu unterschiedlichen
|
||||
Zeiten aber den selben Ereignissen veröffentlichen. Immerhin ist es realistisch, dass ein Unternehmen seinen
|
||||
Jahresabschluss deutlich früher als ein anderes der Öffentlichkeit zur Verfügung stellt. So eine Abfrage ließe sich zwar
|
||||
durchaus über die Einführung einer zeitlichen Einschränkung filtern, jedoch ist auch hier die Verknüpfung zu einem
|
||||
Jahres- oder Quartalsabschluss von höherem Interesse.
|
||||
|
||||
Für die Speicherung und Verwaltung von Aktienkursen börsennotierter Unternehmen - folglich nicht aller Kapitalgesellschaften, die im Use Case behandelt werden - bietet sich der Einsatz einer Timeseries Datenbank jedoch durchaus an, da Daten hier nicht nur in sehr hoher Frequenz geschrieben sondern auch im bekannten Muster abgefragt werden. Demzufolge mag sich eine Modellierung auf Basis der `Polyglot persistence` (Verwendung verschiedener Datenspeicherungs Technologien) auf Gesamtsicht eignen, so dass Kennzahlen sowie Stammdaten von Unternehmen in einer relationalen DB gespeichert und abhängig ihrer Unternehmensform mit Aktiekursen aus einer Timeseries DB angereichert werden.
|
||||
In Folge dessen eignet sich eine zeitreihenbasierte Modellierung nicht für die zentralen Unternehmenskennzahlen.
|
||||
|
||||
Dieser Ansatz wäre nicht nur für diese Anforderung lohnenswert, sondern kann auch die effiziente Speicherung der Unternehmensverflechtungen vereinfachen, da für diesen Anwendungszweck eine Graphen-Datenbank ins Spiel gebracht werden könnte, die die Relationen zwischen Unternehmen und Unternehmen leicht traversierbar speichert. Es ist daher auch abzuwägen, ob diese nicht auch die Aufgaben des relationalen Modells übernehmen könnte, um die Fülle anforderungsspezifischen DB Technologien zu reduzieren, um auch so die Komplexität des Gesamtsystem gering zu halten.
|
||||
Für die Speicherung und Verwaltung von Aktienkursen börsennotierter Unternehmen - folglich nicht aller
|
||||
Kapitalgesellschaften, die im Use Case behandelt werden - bietet sich der Einsatz einer Timeseries Datenbank jedoch
|
||||
durchaus an, da Daten hier nicht nur in sehr hoher Frequenz geschrieben, sondern auch im bekannten Muster abgefragt
|
||||
werden. Demzufolge mag sich eine Modellierung auf Basis der `Polyglot persistence` (Verwendung verschiedener
|
||||
Datenspeicher-Technologien) auf Gesamtsicht eignen, sodass Kennzahlen sowie Stammdaten von Unternehmen in einer
|
||||
relationalen DB gespeichert und abhängig ihrer Unternehmensform mit Aktienkursen aus einer Timeseries DB angereichert
|
||||
werden.
|
||||
|
||||
Um einen geeigneten Zugang zu den Daten von extern (z.B. der Datenvisualisierungs-Schicht in Form einer Web App) zu ermöglichen, ist der Einsatz von `GraphQL` sinnvoll. Dies ermöglicht dem Client die gesamte Datenbasis zu durchforsten und den benötigten Datenbestand abzufragen. Der ``GraphQL`` Server kann dabei durch seine `Resolver` Struktur problemlos mehrere Datenquellen (siehe oben angesprochene `Polyglot Persistence`) kombinieren.
|
||||
Dieser Ansatz wäre nicht nur für diese Anforderung lohnenswert, sondern kann auch die effiziente Speicherung der
|
||||
Unternehmensverflechtungen vereinfachen, da für diesen Anwendungszweck eine Graphen-Datenbank ins Spiel gebracht werden
|
||||
könnte, die die Relationen zwischen Unternehmen und Unternehmen leicht traversierbar speichert. Es ist daher auch
|
||||
abzuwägen, ob diese nicht auch die Aufgaben des relationalen Modells übernehmen könnte, um die Fülle
|
||||
anforderungsspezifischen DB Technologien zu reduzieren, um auch so die Komplexität des Gesamtsystems gering zu halten.
|
||||
|
||||
Um einen geeigneten Zugang zu den Daten von extern (z.B. der Datenvisualisierungs-Schicht in Form einer Web-App) zu
|
||||
ermöglichen, ist der Einsatz von `GraphQL` sinnvoll. Dies ermöglicht dem Client die gesamte Datenbasis zu durchforsten
|
||||
und den benötigten Datenbestand abzufragen. Der ``GraphQL`` Server kann dabei durch seine `Resolver` Struktur problemlos
|
||||
mehrere Datenquellen (siehe oben angesprochene `Polyglot Persistence`) kombinieren.
|
||||
|
||||
### Überblick über Datenrelationen
|
||||
|
||||
|
@ -1,32 +1,35 @@
|
||||
# Daten und Kennzahlen von Unternehmen
|
||||
|
||||
|
||||
## Basisdaten der Firma
|
||||
|
||||
* Name
|
||||
* Sitz
|
||||
* Sitz
|
||||
* Rechtsform bzw. Art der Kapitalgesellschaft (AG, KGaA, GmbH, UG)
|
||||
* Branche
|
||||
* Gründungsdatum
|
||||
|
||||
## Personen
|
||||
|
||||
## Personen
|
||||
* Gesellschafter/innen (Verteilung der Anteile, Höhe der Anteile)
|
||||
* Geschäftsführung bzw. Vorstand (Vorsitzende/r, Stellvertretung, weitere)
|
||||
* Aufsichtsrat (Vorsitzende/r, Stellvertretung, weitere)
|
||||
* Wirtschaftsprüfung (Unternehmen, verantwortliche/r Wirtschaftsprüfer/in)
|
||||
|
||||
Im Fall von realen Personen könnte die eindeutige Identifikation schwierig sein. Hier wären neben dem Nachnamen auch der Vorname wünschenswert.
|
||||
|
||||
Im Fall von realen Personen könnte die eindeutige Identifikation schwierig sein. Hier wären neben dem Nachnamen auch der
|
||||
Vorname wünschenswert.
|
||||
|
||||
## Bewertung der Größe der Kapitalgesellschaft
|
||||
|
||||
*Nach HGB §267: https://www.gesetze-im-internet.de/hgb/__267.html*
|
||||
|
||||
* Durchschnittliche Mitarbeiterzahl (Anzahl beschäftigte Arbeitnehmer am 31.03., 30.06., 30.09., 31.12.)
|
||||
* Bilanzsumme bzw. Gesamtkapital
|
||||
* Umsatz bzw. Umsatzerlöse
|
||||
|
||||
|
||||
## Kennzahlen bei Aktiengesellschaften
|
||||
|
||||
*Angelehnt an https://www.tagesschau.de/wirtschaft/boersenkurse/ und https://boerse.de*
|
||||
|
||||
* ISIN (International Securities Identification Number)
|
||||
* WKN (Wertpapierkennnummer)
|
||||
* Aktienkurs
|
||||
@ -36,37 +39,43 @@ Im Fall von realen Personen könnte die eindeutige Identifikation schwierig sein
|
||||
* Dividendenrendite
|
||||
* Ausschüttungsquote = Dividende je Aktie / Gewinn je Aktie * 100
|
||||
* Marketkapitalisierung = Anzahl Anteilsscheine * Aktienkurs
|
||||
* Kurs-Gewinn-Verhältnis (KGV) = Aktienkurs / Gewinn pro Aktie
|
||||
* Kurs-Gewinn-Verhältnis (KGV) = Aktienkurs / Gewinn pro Aktie
|
||||
* Kurs-Umsatz-Verhältnis (KUV) = Marktkapitalisierung / Umsatz
|
||||
* Kurs-Gewinn-Wachstumsverhältnis (PEG) = KGV / erwarteter Gewinnwachstum im kommenden Geschäftsjahr
|
||||
|
||||
|
||||
## Mögliche Kennzahlen zur Unternehmensbewertung
|
||||
|
||||
*Handbuch Aktien- und Unternehmensbewertung - Peter Seppelfricke*
|
||||
|
||||
### Erfolgskennzahlen
|
||||
|
||||
* Umsatz
|
||||
* Gewinn bzw. Jahresüberschuss
|
||||
* Gewinn vor Steuern (EBT)
|
||||
* Gewinn vor Steuern und Zinsen (EBIT/Betriebsergebnis): Bei Gesamtkostenverfahren Summe 1-8, bei Umsatzkostenverfahren Summe 1-7
|
||||
* Gewinn vor Steuern und Zinsen (EBIT/Betriebsergebnis): Bei Gesamtkostenverfahren Summe 1-8, bei Umsatzkostenverfahren
|
||||
Summe 1-7
|
||||
|
||||
### Finanzkennzahlen
|
||||
|
||||
* Eigenkapitalquote = Eigenkapital / Gesamtkapital * 100
|
||||
* Fremdkapitalquote = Fremdkapital / Gesamtkapital * 100
|
||||
* Verschuldungsgrad = Fremdkapital / Eigenkapital * 100
|
||||
|
||||
### Rentabilitätskennzahlen
|
||||
|
||||
* Eigenkapitalrentabilität = Jahresüberschuss / Eigenkapital * 100
|
||||
* Return on Investment (ROI) = Gewinn / Gesamtkapital
|
||||
* Umsatzrentabilität = Gewinn / Umsatz * 100
|
||||
|
||||
### _Nichtfinanzielle Kennzahlen_
|
||||
|
||||
* _CO<sub>2</sub>-Emissionen_
|
||||
* _Unfallrate_
|
||||
|
||||
## Gewünschte Kennzahlen
|
||||
|
||||
## Gewünschte Kennzahlen
|
||||
*E-Mail vom 13.04.2023*
|
||||
|
||||
* Umsatz
|
||||
* EBIT
|
||||
* EBIT Marge
|
||||
@ -78,28 +87,40 @@ Im Fall von realen Personen könnte die eindeutige Identifikation schwierig sein
|
||||
* Umschlaghäufigkeit des Gesamtkapitals (Umsatz / Bilanzsumme)
|
||||
|
||||
## Kurzdefinitionen
|
||||
|
||||
### Umsatz (Erlös)
|
||||
|
||||
*https://www.lexoffice.de/lexikon/umsatz/*
|
||||
|
||||
* Wert aller Produkte und Dienstleistungen, die in einem bestimmten Zeitraum abgesetzt wurden
|
||||
* Muss in der GuV ausgewiesen werden
|
||||
* Berechnung: Bruttoumsatz = Verkaufspreis (pro Stück) x abgesetzte Menge, Nettoumsatz = Bruttoumsatz - Erlösschmälerungen (z.B. Rabatte, Boni, Skonti) - Umsatzsteuer
|
||||
* Berechnung: Bruttoumsatz = Verkaufspreis (pro Stück) x abgesetzte Menge, Nettoumsatz = Bruttoumsatz -
|
||||
Erlösschmälerungen (z.B. Rabatte, Boni, Skonti) - Umsatzsteuer
|
||||
|
||||
### EBIT (Earnings Before Interest and Taxes/Gewinn vor Zinsen und Steuern/Betriebsergebnis/Operativer Gewinn)
|
||||
|
||||
*https://www.bwl-lexikon.de/wiki/ebit/*
|
||||
|
||||
* Kennzahl, die den Unternehmensgewinn angibt, der aus der gewöhnlichen Geschäftstätigkeit entsteht
|
||||
* Stellt das operative Ergebnis eines Unternehmens dar
|
||||
* Gibt Auskunft über die Effizienz und die Ertragskraft eines Unternehmens
|
||||
* Berechnung: Jahresüberschuss/-fehlbetrag + Steueraufwand - Steuerertrag + außerordentlicher Aufwand - außerordentlicher Ertrag + Finanzaufwand - Finanzertrag = EBIT
|
||||
* Berechnung: Jahresüberschuss/-fehlbetrag + Steueraufwand - Steuerertrag + außerordentlicher Aufwand -
|
||||
außerordentlicher Ertrag + Finanzaufwand - Finanzertrag = EBIT
|
||||
|
||||
### EBIT-Marge
|
||||
|
||||
*https://www.bwl-lexikon.de/wiki/ebit-marge/*
|
||||
* Eignet sich zum Vergleich von verschiedenen Unternehmen, zur Messung der operativen Veränderung und gibt Rückschlüsse auf die zukünftige Rentabilität
|
||||
|
||||
* Eignet sich zum Vergleich von verschiedenen Unternehmen, zur Messung der operativen Veränderung und gibt Rückschlüsse
|
||||
auf die zukünftige Rentabilität
|
||||
* Verhältnis von EBIT und Umsatz
|
||||
* Eine EBIT-Marge in Höhe von 10% und mehr ist als positiv zu bewerten
|
||||
* Berechnung: EBIT-Marge = EBIT / Umsatz
|
||||
|
||||
### Bilanzsumme (Gesamtvermögen/Gesamtkapital)
|
||||
|
||||
*https://www.bwl-lexikon.de/wiki/bilanzsumme/*
|
||||
|
||||
* Summe des Vermögens bzw. der Aktiva und des Kapitals bzw. der Passiva eines Unternehmens
|
||||
* Kriterium für die Größe von Kapitalgesellschaften
|
||||
* Aktiva = Anlagevermögen + Umlaufvermögen
|
||||
@ -107,7 +128,9 @@ Im Fall von realen Personen könnte die eindeutige Identifikation schwierig sein
|
||||
* Liefert Anhaltspunkte dafür, ob und wie schnell ein Unternehmen wächst
|
||||
|
||||
### Eigenkapitalquote
|
||||
|
||||
*https://www.bwl-lexikon.de/wiki/eigenkapitalquote/*
|
||||
|
||||
* Informiert über die Kapitalstruktur eines Unternehmens
|
||||
* Geht aus der Bilanz eines Unternehmens vor
|
||||
* Je größer der Abstand zwischen eigenen und fremden Mittel, umso freier kann die Unternehmensleitung agieren
|
||||
@ -115,21 +138,28 @@ Im Fall von realen Personen könnte die eindeutige Identifikation schwierig sein
|
||||
* Berechnung: Eigenkapital / Gesamtkapital
|
||||
|
||||
### Fremdkapitalquote
|
||||
|
||||
*https://www.bwl-lexikon.de/wiki/fremdkapitalquote/*
|
||||
|
||||
* Anteil des Fremdkapitals am gesamten Kapital
|
||||
* Anzeichen für die Zahlungsfähigkeit eines Unternehmens
|
||||
* Je höher die Quote, desto abhängiger ist das Unternehmen von Fremdkapitalgebern, die Kreditwürdigkeit sinkt
|
||||
* Berechnung: Fremdkapital / Gesamtkapital
|
||||
|
||||
### Verschuldungsgrad
|
||||
|
||||
*https://www.bwl-lexikon.de/wiki/verschuldungsgrad/*
|
||||
|
||||
* Informiert über die wirtschaftliche Stabilität eines Unternehmens
|
||||
* Bei einem hohen Verschuldungsgrad wird mehr Fremdkapital in einem Unternehmen eingesetzt, die Gefahr der Insolvenz steigt
|
||||
* Bei einem hohen Verschuldungsgrad wird mehr Fremdkapital in einem Unternehmen eingesetzt, die Gefahr der Insolvenz
|
||||
steigt
|
||||
* Bei einem niedrigen Verschuldungsgrad ist die Eigenkapitalfinanzierung höher
|
||||
* Berechnung: Fremdkapital / Eigenkapital
|
||||
|
||||
### Eigenkapitalrentabilität (Return on Equity ROE)
|
||||
|
||||
*https://www.bwl-lexikon.de/wiki/eigenkapitalrentabilitaet/*
|
||||
|
||||
* Informiert über die Wirtschaftlichkeit des Unternehmens und die Sinnhaftigkeit des Kapitaleinsatzes
|
||||
* Misst die Ertragskraft des Unternehmens
|
||||
* Gewünschte Höhe der Eigenkapitalrentabilität differiert je nach Branche
|
||||
@ -138,14 +168,19 @@ Im Fall von realen Personen könnte die eindeutige Identifikation schwierig sein
|
||||
* Berechnung: Gewinn bzw. Jahresüberschuss / Eigenkapital
|
||||
|
||||
### Gesamtkapitalumschlag (Kapitalumschlag/Umschlagshäufigkeit)
|
||||
|
||||
*https://www.bwl-lexikon.de/wiki/kapitalumschlag/*
|
||||
|
||||
* Verhältnis vom Umsatz zum Eigen- oder Gesamtkapital
|
||||
* Legt fest, wie viel Umsatz mit dem vorhandenen Kapital eines Unternehmens erwirtschaftet werden kann
|
||||
* Gibt an, wie oft das eingesetzte Kapital durch die Umsatzerlöse zurück in das Unternehmen gelangt ist (desto häufiger, desto besser)
|
||||
* Gibt an, wie oft das eingesetzte Kapital durch die Umsatzerlöse zurück in das Unternehmen gelangt ist (desto häufiger,
|
||||
desto besser)
|
||||
* Berechnung: Umsatz / Bilanzsumme bzw. Gesamtkapital
|
||||
|
||||
### Umsatzrentabilität (Umsatzrendite/Umsatzmarge/Nettomarge)
|
||||
|
||||
*https://www.bwl-lexikon.de/wiki/umsatzrentabilitaet/*
|
||||
|
||||
* Verhältnis von Gewinn und Umsatz
|
||||
* Betrag, den ein Unternehme pro Euro Umsatz erwirtschaftet
|
||||
* Eine steigende Umsatzrendite deutet darauf hin, dass die Produktivität des Unternehmens steigt
|
||||
@ -154,14 +189,18 @@ Im Fall von realen Personen könnte die eindeutige Identifikation schwierig sein
|
||||
* Berechnung: Gewinn / Umsatz
|
||||
|
||||
### Gesamtkapitalrentabilität (Return on Investment ROI, Kapitalrendite)
|
||||
|
||||
*https://www.bwl-lexikon.de/wiki/gesamtkapitalrentabilitaet/*
|
||||
|
||||
* Relation zwischen dem investierten Kapital und dem Gewinn
|
||||
* Beurteilungsmaßstad für die Rentabilität
|
||||
* Positiver ROI ist für ein Unternehmen vorteilhaft
|
||||
* Berechnung: Umsatzrentabilität x Kapitalumschlag
|
||||
|
||||
# Fazit
|
||||
Insgesamt sollen folgende Größen bzw. Kennzahlen betrachtet werden:
|
||||
|
||||
Insgesamt sollen folgende Größen bzw. Kennzahlen betrachtet werden:
|
||||
|
||||
* Unternehmensgröße
|
||||
* Umsatz
|
||||
* EBIT
|
||||
@ -175,8 +214,8 @@ Insgesamt sollen folgende Größen bzw. Kennzahlen betrachtet werden:
|
||||
* Gesamtkapitalrentabilität
|
||||
* Gesamtkapitalumschlag
|
||||
|
||||
|
||||
Dazu werden folgende Daten benötigt:
|
||||
|
||||
* Umsatz
|
||||
* Bilanzsumme
|
||||
* EBIT
|
||||
@ -186,5 +225,8 @@ Dazu werden folgende Daten benötigt:
|
||||
* Durchschnittliche Mitarbeiterzahl
|
||||
|
||||
Vergleichsmöglichkeiten:
|
||||
* Zeitvergleich: Vergleich der ermittelten Kennzahlen in verschiedenen Perioden, mit Hilfe von Zeitvergleichen über längere Zeiträume lassen sich Trends oder Zyklen erkennen
|
||||
* Betriebsvergleich: Gegenüberstellung der Kennzahlen von Unternehmen der gleichen Branche oder Vergleich der Werte eines Unternehmens mit dem Branchendurchschnitt
|
||||
|
||||
* Zeitvergleich: Vergleich der ermittelten Kennzahlen in verschiedenen Perioden, mit Hilfe von Zeitvergleichen über
|
||||
längere Zeiträume lassen sich Trends oder Zyklen erkennen
|
||||
* Betriebsvergleich: Gegenüberstellung der Kennzahlen von Unternehmen der gleichen Branche oder Vergleich der Werte
|
||||
eines Unternehmens mit dem Branchendurchschnitt
|
||||
|
@ -3,24 +3,27 @@
|
||||
## **Twitter API v2**
|
||||
|
||||
### **Access Levels**
|
||||
**Free:**
|
||||
|
||||
**Free:**
|
||||
|
||||
- 1,500 Tweets per months
|
||||
- 1 AppID
|
||||
- Login with Twitter
|
||||
|
||||
**Basic:**
|
||||
|
||||
- 100 per month
|
||||
|
||||
**Enterprise:**
|
||||
|
||||
- Monthly subscribtion tiers
|
||||
|
||||
Postman Besipiele: https://developer.twitter.com/en/docs/tutorials/postman-getting-started
|
||||
|
||||
Getting started: https://github.com/twitterdev
|
||||
|
||||
|
||||
|
||||
## **NewsAPI**
|
||||
|
||||
- Developer ist kostenlos
|
||||
- 24 Stunden verspätet sind die Artikel erreichabr
|
||||
- Bis zu einem Monat alte Artikel abrufbar
|
||||
@ -28,47 +31,49 @@ Getting started: https://github.com/twitterdev
|
||||
- CORS geht nur für local host
|
||||
- Hat extra einen Punkt für deutsche Nachrichten: https://newsapi.org/s/germany-news-api
|
||||
|
||||
|
||||
Benötigt einen Account um einen API Key zu generieren.
|
||||
Doku: https://newsapi.org/docs/get-started
|
||||
|
||||
**Hinweis**: *Bietet die Möglichkeit nach Artikel mit einem bestimmten Wort zu suchen*
|
||||
|
||||
## **Bloomberg API**
|
||||
|
||||
- Link: https://www.bloomberg.com/professional/support/api-library/
|
||||
- generell kostenlos, bei starker Nutzung muss ein Preis angefragt werden
|
||||
- sehr gut für Marktanalysen geeignet
|
||||
|
||||
|
||||
## **New York Times API**
|
||||
|
||||
- die ersten 1000 Anfragen pro Tag sind kostenlos
|
||||
- 11 verschiedene APIs
|
||||
|
||||
|
||||
## **PressePortal**
|
||||
Bietet eine API zur DPA Gruppe an. Eher schlecht beschrieben und der API-Key muss via Email beantragt werden, bietet aber potentiell Zugriff auf deutsche Nachrichten.
|
||||
|
||||
Bietet eine API zur DPA Gruppe an. Eher schlecht beschrieben und der API-Key muss via E-Mail beantragt werden, bietet
|
||||
aber potenziell Zugriff auf deutsche Nachrichten.
|
||||
|
||||
Demo: https://api.presseportal.de/v2/demo/index.htx?mod=section_all&newsroom=&office=&city=&keyword=&topic=&police_officetype=&police_federalstate=&media=dokument&limit=&language=de&companyinfo=6344
|
||||
|
||||
API-Key Anfragen: https://api.presseportal.de/
|
||||
|
||||
|
||||
## **Tagesschau API 2.0**
|
||||
|
||||
https://tagesschau.api.bund.dev/
|
||||
|
||||
## **Yahoo finance API**
|
||||
|
||||
https://financeapi.net/
|
||||
|
||||
## **Google News API**
|
||||
|
||||
- deprecated
|
||||
- kostenlos
|
||||
- gut dokumentiert
|
||||
|
||||
|
||||
## **Sonstiges**
|
||||
Bing News API, ESPN, Guardian API, BBC News API Yahoo News API und Financial Times fallen raus, da diese immer mit kosten verbunden sind oder sich nur mit Sport oder Kommentare befassen.
|
||||
|
||||
- "Die Zeit" hatte mal eine API die abgeschaltet wurde.
|
||||
Bing News API, ESPN, Guardian API, BBC News API Yahoo News API und Financial Times fallen raus, da diese immer mit
|
||||
kosten verbunden sind oder sich nur mit Sport oder Kommentare befassen.
|
||||
|
||||
|
||||
-> RSS Feeds Irgendwie abgreifen
|
||||
- "Die Zeit" hatte mal eine API, welche aber abgeschaltet wurde.
|
||||
- RSS-Feeds irgendwie abgreifen
|
||||
|
@ -1,6 +1,5 @@
|
||||
# Research Central
|
||||
|
||||
|
||||
## Sentiment Analysis
|
||||
|
||||
### FinBert
|
||||
@ -9,4 +8,5 @@ FinBert is a specialised sentiment Analysis for Financial Data.
|
||||
Sadly it isn't a very good model, and it does not work at all for texts in german.
|
||||
|
||||
Experiments can be found here:
|
||||
|
||||
* [FinBert Jupyter](../../Jupyter/AI-models/"Sentiment Analysis"/FinBert.ipynb)
|
||||
|
Reference in New Issue
Block a user