Import und Export Transaktions- und Kontodaten

Grundidee für Daten-Abgleiche

Shareholder ist bei den meisten Anwendern selten das Erstprogramm. In den meisten Fällen wurden andere Börsenprogramme oder eigene Excellisten zuvor gepflegt. Um hier einen reibungslosen Übergang zu realisieren und eine manuelle Datenerfassung zu vermeiden, wurde eine Export/Import-Schnittstelle realisiert die einfach (Keep-It-Simple) über ein CSV-Textformat funktioniert, dass insb. von Excel sehr gut verarbeitet werden kann.

Weiteres:

Um den Export- und Import nicht nur für den einmaligen Abgleich nutzen zu können, sind die Funktionen so geschrieben, dass hiermit folgende Sonderaufgaben realisiert werden können:

Depot-Export in CSV-Dateien

Funktionsweise

image-1655627984749.png

Der Export erfolgt in einem Standardformat , welches nicht veränderbar ist. Kontobewegungen werden dabei ebenso exportiert, wie Depotumsätze. Der Export kann in dieser Form nach gewünschten Änderungen 1:1 wieder über den Import übernommen werden. Neue Einträge werden dabei hinzugenommen und geänderte in SHAREholder aktualisiert. Wenn es nicht möglich ist. die Ordernummer zu verwenden, wird die ISIN und der Zeitstempel herangezogen für den Abgleich.  

Weitere Hinweise für den Re-Import finden Sie beim Depot-Import aus CSV-Dateien - Import Assistent.

Das Standard-Export-Format ist aktuell dabei definiert über:

ciCheck.DefaultColumnSeparator = ";" 

ciName=0 
ciOrdernummer=1 
ciDepot=2 
ciBoerse=3 
ciISIN=4
ciTyp=5 

ciDatum=6
# ciDatum.shortdateformat='dd.mm.yyyy'

ciZeit=7
# ciZeit.shorttimeformat='hh:mm:ss'

ciKurs=8
ciWert=9
ciStk=10
ciGewinn=11 
ciGeb=12
ciEntscheidung=13
ciBewertung=14
ciNotiz=15

# ciOrdervolumen=16
# ciWertDatum=17
# ciStatus=18


Depot-Import aus CSV-Dateien - Import Assistent

Der Import Import-Assistent erlaubt es unterschiedlichste Formate manuell oder voll automatisch zu importieren, ohne die einzelnen Daten von Hand einpflegen zu müssen. Der Import erfolgt hierbei direkt in das aktuell geöffnete Portfolio oder kann innerhalb der Depot-Importdatei definiert werden über eine angegebene Depotnummer & Kontonummer.

Während des Imports werden bisher nicht vorhandene Titel und Aktien automatisch angelegt. Damit muss immer eine WKN, ISIN und Name beim Import definiert sein.

Formatbeschreibung für Import-Profile

Um die Arbeit zu erleichtern, werden die wichtigsten Importprofile z.B. für Comdirect, Flatex, Consors etc. vordefiniert bereitgestellt. Sie können dabei als Template genutzt werden und durch Kopieren und Verändern angepasst werden. 

Weitere Details unter:

Dialog-Aufbau 

image-1655628005056.png


Element
Beschreibung
(A)

Alle vorhandenen Broker/Depot-Import-Profile werden in diesem Bereich dargestellt und können durch "Anklicken" aktiviert werden.
Es gibt dabei Profile um verschiedene Inhalte zu importieren:

    • Trades
    • Transaktionsbewegungen und Kontobewegungen
    • Stopp-Limits und
    • Depotbestände 

Die Liste generiert sich dabei automatisch auf Basis vorhandener Import-Konfigurations-Profile die im Datenverzeichnis des Programms unter \Daten\Import liegen und die Dateiendung *.ini haben.

Dabei werden Import-Dateien die den gleichen Prefix wie das Profil haben, als "Kinder-Einträge" hinterlegt. Dies wird genutzt um insb. Beispiel-Dateien dort abzulegen. Sie können aber auch eigene Dateien dort hinterlegen.

(B)

Auf der linken Pannel-Seite wird nach Auswahl eine Vorschau die für das Profil zu nutzende Webseite des Brokers/Bank als Beispiel angezeigt. Dies soll helfen den korrekten Export-Punkt bei Ihrer Bank und Broker zu finden. Über einen linken Tab-Bereich finden Sie einen Preview und Editor-Bereich. Diese Vorschau wird durch eine gleichnamige JPG-Datei zum zugehörigen Importprofil (INI-Datei) angelegt. 

(C)

Der Import wird automatisch gestartet sobald eine Datei links unten manuell per "Drag & Drop" auf den Erfassungsbereich gezogen wird.

(D) Tab-Wechsel um in das Importprofil zu wechseln d.h. Profil-Konfiguration

Vorgehen für den Import

image-1655628013091.png

image-1655628017873.png


Vorschau-Funktion

Da die Importfunktion eine sehr hohe Relevanz für die effektive Nutzung der Software hat, wurde eine Preview-Funktion implementiert. Diese nutzt exakt die gleichen Zuordnungen und internen Logiken. Es wird dabei lediglich die finale Gewinnberechnung unter Brutto-Gewinn nicht ausgewiesen, da diese erst mit einer Gesamtberechnung des Portfolios machbar ist. Diese wird daher nur als "Vorschau" ausgewiesen.

Sie können und sollten dabei auch die Log-Daten nutzen, sollte die Vorschau unerwartete Ergebnisse zeigen.

image-1656079307760.png

Import-Setup mit allen beteiligten Schritten am Beispiel eines Smartbroker-Imports

image-1655628023167.png

Während des Imports werden Titel automatisch angelegt. Leider ist in der Importdatei nur Lang & Schwarz hinterlegt, womit Sie mit Doppelklick auf die importierten Titel die Titelnamen nochmals anpassen sollten!

Bitte konfigurieren Sie danach einfach mit folgenden Schritten in lediglich zwei Minuten abschließen das Depot:

Schritt
Details
(A)

Wenn beim Import Titel über die ISIN bisher nicht in der Stammdatenbank enthalten waren, werden diese automatisch angelegt. Sie sollten dabei versuchen direkt beim ersten Setup den richtigen Markt auszuwählen, da dadurch nachfolgende Kursaktualisierungsgruppen-Einstellungen vermieden werden können. 

Hier im Beispiel (siehe Screenshot) werden Wikifolios d.h. Zertifikate importiert. Diese sollten direkt auf "Zertifikate/OS" oder "Wikifolio" als Markt importiert werden bei den Rückfragen.

(B)

Sie sehen nach dem Import zunächst eine korrekte aber nicht schöne Depot-Liste. Insb. die Kursdaten sind noch nicht aktuell und die Depottitel sind dabei zunächst fehlerhaft beschriftet.

(C)

Wählen Sie zunächst die Titel mit <Shift>+Auswahl der Titel mehrfach aus. Über die Toolbar „Stamm-und Kursdaten“ setzen Sie die Kursaktualisierung auf eine geeignete Kursaktualisierungsgruppe. In diesem Fall für die Zertifkate z.B. auf Ariva-Lang&Schwarz.

(D)

Über die Toolbar starten Sie einen Aktualisierungslauf über „Internet-Kursdaten“

(E)

Sie warten das Ende der Aktualisierung kurz ab …

(F)

Sie wählen wieder mit <Shift>+Auswahl der Titel die zugehörigen Titel und wählen im Kontextmenü unter Fundamentaldaten den Punkt „Import-Fundamentaldaten-Autoimport“ . Danach werden die Titel insb. der Zertifikate automatisch korrigiert.

Das wars (Lächeln)

Weitere Importmöglichkeiten

Manuell automatischer Import aller bisher nicht importierten CSV-Dateien als Autoimport*.CSV

image-1655628031193.png


Automatisiert bei Programmstart

Ein automatisiertes Einlesen macht Sinn, wenn viele Depots und damit viele verschiedene Kauf- / Verkauf und Depots vorliegen und direkt beim Programmstart die Konto/Transaktionsbewegungen eingelesen werden. Hierzu müssen die Dateien lediglich wie gehabt uner \Daten\Imports abgelegt werden. Beim Programmstart werden diese automatisiert eingelesen und Sie sehen sofort den aktuellsten Stand.

Vorgehen:

image-1655628035604.png

image-1655628040178.png


Erstellung eines eigenen Import-Profils

image-1655628044998.png

Automatische Generierung eines Import-Profils auf Basis einer Beispiel-Datei

Die Importprofile erlaube eine komplette Beschreibung über Inhalt, Position der Transaktions- oder Kontodaten. Dabei sind auch bei manueller Einstellung praktisch immer bestimmte Schlüsselfelder relevant, die so auch automatisch zugeordnet werden können.

Daher ist es möglich einfach eine Beispiel-Datei zu öffnen in der Vorschau und dann automatisch ein Importprofil anzulegen. Dies funktioniert dabei nicht immer zu 100%, deckt aber bereits sehr viele Anwendungsfälle mit ab.

image-1656079319802.png

Wenn Sie dabei einen Broker/Bank verwenden, die so noch nicht vorkonfiguriert ist, starten Sie optimalerweise mit Anlage eines zunächst neuen leeren Profils über "Hinzufügen" auf der rechten Seite. Danach öffnen Sie per Drag & Drop oder manueller Dateiauswahl eine Beispieldatei. Danach können Sie es bereits mit "Erzeuge Basis-Konfiguration aus Beispiel-Kopfzeile" probieren. Es sollte dabei eine Kopfzeile und mind. eine ausgefüllte Datenzeile vorhanden sein.


CSV-Portfolioimport-Formatbeschreibung

Allgemeine Hinweise

Die Konfigurationen erfolgen innerhalb der INI-Dateien. Dabei gelten folgende Grundansätze:

Die INI-Konfiguration nutzt praktisch einen Transformationsalgorithmus, der ein Zielformat beschreibt für den Trade-Import. Die INI-Konfiguration nutzt daher alle Felder aus dem Trade-Import, die hier dann in der Position oder Default-Werten etc. zu beschreiben sind.

Nutzbare Import-Felder

Schlüssel
Typ
Benötigt (MUSS-Feld)
Automatischer
Abgleich mit den gleichnamigen Listen
Hinweise

ciName

Zeichenkette Empfohlen

Titel für die Transaktion d.h. z.B. Aktienname. Der Name wird nur verwendet, wenn mit der ISIN der zugehörige Titel nicht gefunden werden kann. Der Name wird dann für die automatische Neuanlage genutzt.

Sonderfall:

  • Soll ein Datensatz gelöscht werden, so muss hier "DELETE" eingetragen werden.

ciOrdernummer

Ganzzahlige Nummer Empfohlen

TRANSAKTIONSLISTEN

Eindeutige Transaktionsnummer. Diese wird benötigt, um Dopplungen zu vermeiden und bei einem erneuten Reimport diese Transaktion zu überspringen. Die Order-Nummer sollte eineindeutig für ein Konto sein.

ciDepot

Zeichenkette

Notwendig

KONTEN

Es wird praktisch der Name oder die Konto-Nummer des Kontos angegeben. Dabei erfolgt automatisch ein Vergleich auf einen möglichen Match mit allen vorhandenen Konten.

ciBoerse

Zeichenkette

BÖRSEN

Zuordnung zur genutzten Börse für die Transaktion. Es wird dabei der Name der Börsen entsprechend Einstellungen / Börsen verwendet.

ciISIN

Zeichenkette

Notwendig


Wenn nur eine WKN vorhanden sein, so kann das Feld auch auf das WKN-Feld gesetzt werden. Dies sollte nur im Daten-Notfall erfolgen!

ciTyp

Zeichenkette

Notwendig


Erlaubte Typen sind:

  • 'Kauf',
  • 'Verkauf'
  • 'Dividende'
  • 'Haben/Zinsen'
  • 'Kupon'
  • 'Verkauf/Bezugsrechte'
  • 'Soll/Zinsen'
  • 'Spesen'
  • 'Einzahlung'
  • 'Auszahlung'
  • 'Steuern/Allgemein'
  • 'Steuern/Zinsabschlag'
  • 'Steuern/Soli'
  • 'Steuern/Abgeltungssteuer'
  • 'Steuern/Kirchensteuer'
  • 'Steuern/Erstattung'

Ist diese Zuordnung so nicht im Import-Format vorhanden muss mittels CiCheck.Pattern (s.u.) ein entsprechender Austausch automatisch vorgenommen werden.

ciDatum

Datum

Notwendig


Transaktionsdatum im Format: DD.MM.YYYY (wenn nicht durch Spezialattribute umgeschrieben)

ciZeit

Zweit Empfohlen
Transaktionsdatum im Format: hh:nn (wenn nicht durch Spezialattribute umgeschrieben)

ciKurs

Gleitkommawert Empfohlen

Transaktionskurs z.B. Kaufkurs. Als Währung wird dabei immer Euro angenommen. Ein Wechsel ist aktuell noch nicht möglich!

ciKursWährung Zeichenkette  Empfohlen

WÄHRUNGEN

Währungskürzel für den importierten Transaktionskurs z.B. €, $ oder EUR, USD, GPD, NOK etc..

Alle Kurs, Volumen, Wert-Angaben werden dann in dieser Währung angenommen. Wird das Feld "ciKurswährungsumrechnung" angegeben, wird automatisch der zugehörige Umrechnungskurs zugeordnet. 

ciKurswährungsumrechnung

Gleitkommawert Empfohlen

Wird hier ein Umrechnungskurs von der hinterlegten Währung zur Hauptwährung angegeben. Bitte beachten Sie, dass hier nur der Umrechnungskurs zur Portfolio-Währung hinterlegt werden kann z.B. EUR/USD, wenn EUR die Portfolio-Währung ist. 

image-1655628082610.png

 

ciKurswährungsumrechnungInvert Gleitkommawert Optional

Analog ciKurswährungsumrechnung allerdings mit 1/X ausgewertet. Am Beispiel von EURUSD, wird häufig USD-EUR angegeben d.h. 0.88. Sie müssen dann hier diesen Spalten-Wert nutzen!

image-1655628087943.png

 

ciWertWährung Zeichenkette  Empfohlen

WÄHRUNGEN

Währungskürzel für den importierten Wertkurs z.B. €, $ oder EUR, USD, GPD, NOK etc..

ciWert

Gleitkommawert Optional

Aktueller Gesamtwert der Position

ciWertDatum

Datum Optional
Datum für den aktuellen Kurs

ciStk

Gleitkommawert

Notwendig


Anzahl der Stücke für die Transaktion als Gleitkommawert

ciGewinn

Gleitkommawert Optional
Vorberechneter Gewinn der Transaktion für Verkaufstransaktionen
ciGewinnWährung Zeichenkette  Empfohlen

WÄHRUNGEN

Währungskürzel für den importierten Gewinnwährungskurs z.B. €, $ oder EUR, USD, GPD, NOK etc..

ciGeb

Gleitkommawert Empfohlen
Höhe der Gebühren für die Transaktion. Ist keine Gebühr angegeben, wird über das Ordervolumen und den Kurs x Stück versucht eine Rückrechnung auf die Gebühr vorgenommen
ciGebWährung Zeichenkette  Empfohlen

WÄHRUNGEN

Währungskürzel für den importierten Gebührenkurs z.B. €, $ oder EUR, USD, GPD, NOK etc..

ciEntscheidung

Zeichenkette Optional

ENTSCHEIDUNGEN

Legt den Einscheidungsantrag an ("Name" als Zuordnungsfeld) oder ordnet einen bestehenden zu

ciBewertung

Zeichenkette Optional

BEWERTUNGEN

Legt den Bewertungsantrag an ("Name" als Zuordnungsfeld) oder ordnet einen bestehenden zu

ciNotiz

Zeichenkette Optional
Freies Textfeld, was als Kommentar für die Transaktion hinterlegt wird

ciOrdervolumen

Gleitkommawert Optional

Transaktionsvolumen inkl. Gebühren

ciOrdervolumenWährung Zeichenkette  Optional

WÄHRUNGEN

Währungskürzel für den importierten Ordervolumenkurs z.B. €, $ oder EUR, USD, GPD, NOK etc..
ciStatus Zeichenkette
"Offen" oder ""
Optional
Wenn "Offen" dann wird diese Transaktion als "vorläufig" aufgenommen. Dies ist insb. für offene Verkaufsorder d.h. Stoppkurse interessant. Es gibt nur den Status "Offen" oder leer.


Nutzbare Spezial-Attribute

Mittels folgender Spezialausprägungen können spezielle Konstellationen festgelegt werden. Die Attribute sind für alle Zuordnungs-Schlüssel technisch nutzbar. Logisch gibt es nicht in allen
Fällen eine Verwendung z.B. das .shorttimeformat macht nur für ciDatum.shorttimeformat Sinn, um das genutzte Datumsformat zu beschreiben.

Attribut
Beispiele
Hinweise
Interpretations-Vorrang-Regel

ciXXX.Wert

= XXXXX

Konstanter Wert wird festgelegt unabhängig von den Werten in der auszulesenden Datei z.B. ciBoerse.Wert = 'Frankfurt'

Wenn ein ".wert" vorgegeben wird, dann sticht dieser Wert d.h. wird immer verwendet

ciXXX.decimalseparator

="."
=","

Konkrete Beispiele:

  • ciStk.decimalseparator = '.'  
Um zwischen europäischen und amerikanischen Zahlenformaten wechseln zu können, ist es möglich für einzelne Positionen das Dezimal-Trennzeichen separat festzulegen. Der festgelegte Wert wird immer verwendet für den Wert. Im Default wird das deutsche Dezimaltrennzeichen mit "," verwendet.

ciXXX.Standard

= XXXXX

Wenn im Datensatz kein Wert gefunden werden kann, wird stattdessen dieser Wert als "Rückfall-Wert" verwendet

Wenn ein ".standard" vorgegeben wird, dann wird dieser verwendet, wenn keine Position zugeordnet wurde oder der Standardwert aus dem Datensatz leer ist

ciXXX.shortdateformat

= yyyymmdd
= dd.mm.yyyy

Konkrete Beispiele:

  • ciDatum.shortdateformat='dd.mm.yyyy'
  • ciDatum.shortdateformat='ddmmyyyy'

Datumsformat entspricht hier 4stellige Jahreszahl, 2stelliger-Monat und 2stelliger-Tag

Siehe auch
https://docwiki.embarcadero.com/Libraries/Berlin/de/System.SysUtils.FormatDateTime

Wenn ein ".shortdateformat" vorgegeben ist, dann wird hiermit der aktuelle Wert in das Standard-Datums-Format des lokalen Anwenders übersetzt nachdem aller vorherigen Regeln angewendet worden sind

ciXXX.shorttimeformat

= hh:nn:ss
= hh:nn

Konkrete Beispiele:

  • ciZeit.shorttimeformat='hh:mm:ss'

Zeitformat entspricht hier Stunden, Minuten, Sekunden

Siehe auch
https://docwiki.embarcadero.com/Libraries/Berlin/de/System.SysUtils.FormatDateTime

Wenn ein ".shorttimeformat" vorgegeben ist, dann wird hiermit der aktuelle Wert in das Standard-Datums-Format des lokalen Anwenders übersetzt nachdem aller vorherigen Regeln angewendet worden sind

ciXXX.Pattern

= '(.*) STK'
= '(.*) EUR' 

Konkrete Beispiele:

  • ciKurs.Pattern='(.*) EUR'
  • ciTyp=7 
    ciTyp.Pattern='ORDER.(Kauf|Verkauf).' 

Der eigentliche Wert muss erst ermittelt werden mittels eines Pattern insb. wenn Zusatz-Daten im Feld verwendet werden wie EUR oder STK. Es sind hier für Perl-Reguläre-Ausdrücke zu verwenden mit einer Group-Match-Logik. Es wird dabei immer der Wert der 1. Match-Gruppe verwendet.
Dies ist immer der 1. geklammerte Wert d.h. bei 1200 STK und (.*) STK ergibt dies 1200.

Siehe auch
https://docwiki.embarcadero.com/RADStudio/Seattle/en/Regular_Expressions

Wenn ein ".pattern" vorgegeben ist, dann wird dieser am Ende angewendet. Wenn dies nicht möglich ist, wird der vorherige Ergebniswert beibehalten

ciXXX.FilenamePattern

= '.*(????????).csv'

Konkrete Beispiele:

  • ciDepot.filenamepattern = 'Verrechnungskonto-([0-9]*)_.*\.csv'

Im Dateinamen wird nach dem Wert mit dem angegebenen Pattern gesucht, wobei der gesuchte Wert in runden Klammern steht (regex-Logik).
Damit lassen sich beliebige Werte auch im Dateinamen verschlüsseln und anwenden

Siehe auch
https://docwiki.embarcadero.com/RADStudio/Seattle/en/Regular_Expressions 


ciCheck.minimumfields = 5 Hiermit können bewusst unvollständige Datensätze ausgeschlossen werden. Die angegebene Anzahl sind die erwartete Anzahl von Datensätze (mit Semikolon getrennt) Wenn vorhanden wird dieser Wert initial ausgelesen, um nicht geeignete Datensätze zu ignorieren.

ciCheck.pattern.<nummer>
ciCheck.replacement.<nummer>

.pattern.1 = '&#3[8|9];'

.replacement.1=
' & '


Konkrete Beispiele:

  • ciCheck.pattern.1 = 'Gutschrift:.*'           
  • ciCheck.replacement.1 = 'Einzahlung'  

oder

  • ciCheck.pattern.2 = 'Zinsabschluss (.*)(\d){2}\.(\d){2}\.(\d){4}'   
  • ciCheck.replacement.2 = 'Soll/Zinsen'  

oder auch komplexe Varianten mit Austausch der Wert-Gruppen durch \1 \2 etc.

  • ciCheck.pattern.1 = '\ WKN\ ([A-Z,0-9]*)\ /\ ([A-Z,0-9]*)\ ([A-Z,0-9,\ ,\.,\-]*) DEPOTNR.:\ ([0-9]*)'
  • ciCheck.replacement.1 = ';\1;\2;\3;\4;'

Hiermit ist der Austausch von kompletten Stringketten möglich. Dabei wird die Zuordnung zwischen Pattern und Replacement über reguläre Ausdrücke gemacht. Die Nummer sollte eindeutig sein und bei 1 beginnen. Sie wird solange fortgesetzt, bis kein Eintrag mehr in der INI zu finden ist. Das Ersetzen erfolgt dabei priorisiert VOR allen anderen Schritten und kann daher zur Standardisierung von bestimmten Zeichenketten am Anfang der Verarbeitung genutzt werden.

Beispiel-Gruppe für drei automatische Ersetzen-Regeln:

ciCheck.pattern.1 = '&#3[8|9];'
ciCheck.replacement.1 = ' & '

ciCheck.pattern.2 = '9-997/7713'
ciCheck.replacement.2 = ''

ciCheck.pattern.3 = 'manuell'
ciCheck.replacement.3 = ''


Siehe auch
https://docwiki.embarcadero.com/RADStudio/Seattle/en/Regular_Expressions 

Die Regel werden startet bei 1 ...X durchgeführt. Der Abbruch erfolgt, wenn zur vorgehenden Nummer kein Nachfolgereintrag mehr gefunden wird.
ciCheck.DefaultColumnSeparator
  • ciCheck.DefaultColumnSeparator = ";"
Standard-Trennzeichen zwischen den Spalten, wenn es nicht ";" sein soll


Konkrete Beispiele

Inkrementelle Transaktionsdaten und Sonderfälle

Als ein Spezialfall für den Import von Transaktions-/Kontobewegungen, können die Import-Dateien Zusatzinformationen enthalten, um automatisch zu einem Konto zugeordnet zu werden oder sogar das komplette Portfolio automatisch zurückzusetzen.

Importprozess

Es ist möglich sein, im Datenverzeichnis (\Daten\Import) eine oder mehrere Autoimport-Trades-*.CSV abzulegen, die automatisch beim Depot-Start importiert werden. Die Dateien sollten im shareHOLDER spezifischen Depot-Importformat vorliegen. Die Order-IDs werden dabei auf bereits vorhandene Einträge geprüft und im Zweifel ignoriert. Quelle der Datei kann ein externes Exportmodul sein wie z.B. ein automatischer Export des IC-Market-cAlgo-Trader-Informationen.

Vorteil ist so, dass praktisch Realtime-Depottransaktionen bereitgestellt werden können, die dann beim Start von shareHOLDER importiert werden.

Im ersten Schritt wird eine Liste der vorhandenen Importdateien aus dem \Daten\Import-Verzeichnis erstellt mit dem Namensschema "Autoimport-Trades*.csv". Diese werden dann schrittweise importiert und eine Log-Datei unter Daten\Import\<Import-Filename>.log geschrieben. Importierte Dateien werden anschließend in das \Daten\Import\Archiv-Verzeichnis verschoben.

image-1655628124851.png


Konfiguration

Siehe auch

Um eine weitere Flexibilität beim Import zu erreichen, können aus der Importdatei die ersten Zeilen mit Konfigurationsparametern belegt werden:

Nachfolgend ein Konfigurationsschema einer beliebigen Autoimport-Trades-*.CSV. Diese CSV-Datei enthält somit die Basis-Transaktionsdaten und die Konfigurationsdaten


# Konfiguration
#
# Konto-Stand kann direkt festgelegt und anschließend so automatisch übernommen werden
Account-Balance=XXX.XX


# Konto-Broker als Name
Account-Brokername=XXXX


# Konto mit Kontonummer
Account-Number=XXXX


# Das angegebene SHAREholder-Depot kann genutzt werden, um ein spezifisches Depot zu laden für den Import. Dies ermöglicht so auch fließende Wechsel der Depotdateien bei Import mehrerer Auto-
# Import-Trade-Dateien aus dem Import-Verzeichnis. Das letzte geladene Depot bleibt dann allerdings für die Session erhalten.
SHAREholder-Depot=<Filename z.B. Standard.DepotR2>


# Für das geladende Depot kann erzwungen werden, dass alle vorherigen Transaktionsdaten gelöscht werden
SHAREholder-Clear-All-Existing-Data=True|False


# Trade-Daten
#
Amazon.Com Inc;;Flatex;Frankfurt;US0231351067;Kauf;25.09.2016;12:27:35;805,750;805,75;1,0000;0,00;7,65;'Undefiniert;';;
SAP SE`X;;Flatex;Frankfurt;DE0007164600;Verkauf;07.12.2015;15:46:34;73,220;-1.464,40;-20,0000;644,40;8,68;'Undefiniert;';;

XTB-Trades und XTB-Kataloge

XTB ist ein eingetragener CFD/Forex-Broker für Forex, Rohstoffe, Indizes, ETFs (https://www.xtb.com/de). Technisch kann in ShareHolder sowohl ein Abgleich zu den Katalogen, Stammdaten, Kursdaten bis hin zur Trading-Historie/Offene Positionen erfolgen. Die Aufruf-Funktionen befinden sich unter anderem direkt in der Toolbar bzw. im Hauptmenü.

image-1655628143329.png

Voraussetzung

Es muss einmal unter den Programm-Einstellungen der Zugangscode für die XTB-Plattform hinterlegt werden, um die nachfolgenden Funktionen überhaupt aufrufen zu können. Sie können dabei über eine separate Checkbox auch gerne nur einen Demo-Account für die ersten Gehversuche nutzen.

image-1655628147874.png

XTB-Katalog-Synchronisation

Es werden praktisch alle vorhandenen XTB-Kataloge ausgelesen und stehen für einen Abgleich zu den internen Markt-Listen zur Verfügung. Während der Synchronisation erfolgt ein Abgleich im folgendem Umfang:

Abgleich
Details
Kursdaten -13 Monate mit Open, High, Low, Close, Volumen, Datum
Stammdaten
  • ISIN durch das XTB-Symbol
  • Nachkommastellen durch die XTB-Precision-Definition
  • Name
  • Währungseinstellung, wenn USD oder EUR gesetzt worden sind

Über die Auswahlboxen entscheiden Sie selbst, ob gleichnamige Marktlisten automatisch erstellt werden. 

image-1655628153070.png

XTB-Kursdaten-Synchronisation

Es werden analog der Tai-Pan und Internet-Aktualisierung auf Basis der aktuellen dargestellten Liste alle Kursdaten abgerufen. Von XTB werden dabei Realtime-Kursdaten geliefert und bis max. 13M zurückgegeben als Historie.

image-1655628157386.png

XTB-Trade-Historie-Abgleich

Mittels des direkten Trade-Historie-Abgleichs können per Knopfdruck nativ die Trades übernommen werden. Dabei werden gleichzeitig automatisch die darunterliegenden Symbole/Titel der Trades einmalig mit aktualisiert. Über das Startdatum kann dabei der Umfang der Aktualisierung festgelegt werden. Der Abgleich erfolgt sowohl für Short-als auch Long-Trades. Die Konto-Bilanz (Liquidität) kann dabei mit berücksichtigt werden.

image-1655628161804.png


OnVista-Abgleich

OnVista bietet über das Webportal unter my onvista Möglichkeiten eigene Musterdepots und Watchlisten zu führen. Dabei können pro Titel auch Signale und Benachrichtigen versendet werden. Vor allem existiert eine Mobile-App, die auf den konfigurierten Datenbestand aufsetzt und sowohl eine Bearbeitung als auch Auswertung der eingetragenen Titel zulässt.

ShareHolder bietet aktuell keine eigene Mobile-App an, da hierfür auch die Daten-Provider-Infrastruktur genutzt werden müsste für eine aktuelle Depot-Bestandsanzeige. Es wird daher eine beidseitige Synchronisation der Daten angestrebt. Damit lassen sich Depottitel sowohl in onVista als auch in ShareHolder anlegen und dann per Klick in die andere Richtung synchronisieren.

Die Nutzung von ShareHolder in Kombination hat erhebliche Vorteile:

Weitere Infos für die Mobile-App:

Status der Entwicklung

Aktuell befindet sich die Entwicklung noch in einer ersten Beta-Version und es sind noch nicht alle Funktionalitäten umgesetzt und verfügbar.

  1. Iteration (Version 21.10.0)

    1. Konfigurierte Portfolios, Watchlisten aus onVista auslesen

    2. Watchlisten aus onVista

      1. Watchlisten-Titel innerhalb einer konfigurierten Watchliste aus onVista auslesen

      2. Watchlisten-Titel übernehmen per Klick auf Einzeltitel-Ebene oder Gesamt aus onVista

      3. Automatischer Vergleich der Bestände zwischen einer ShareHolder-Watchliste und einer onVista-Liste

    3. Portfolio-Übernahme aus onVista

      1. Portfolio-Transaktionen innerhalb eines konfigurierten Portfolios aus onVista auslesen und darstellen

      2. Automatischer Vergleich der Bestände zwischen einer ShareHolder-Transaktionsliste und einer onVista-Portfolio-Transaktionsliste

  2. Iteration (Version 21.10.1)

    1. Portfolio-Transaktionen zu ShareHolder übernehmen

  3. Iteration (Version 21.10.3)

    1. Synchronisation in Richtung onVista für Portfolio-Titel

  4. Iteration (in Arbeit)

    1. Synchronisation in Richtung onVista für Watchlisten-Titel

  5. Iteration (TBD)

    1. Signal-Synchronisation für Stopp-Kurse oder Zielkurse

Anmeldung und Erstkonfiguration

Sie können sich bei onVista unter my onvista registrieren bzw. anmelden. Diese Anmeldedaten müssen Sie einmal nutzen, um einen Zugriffs-Code (Token) zu erzeugen in Shareholder. Sie müssen hierzu einmalig unter Einstellungen / Kursdaten - Datenanbieter - API-Keys gehen und dort unter dem Eintrag “onVista” einmalig den Nutzername und Kennwort eingeben und danach “API-Key ermitteln …” aufrufen. Sie erhalten so den Zugriffs-Code der automatisch unter dem Reiter “API-Key” übernommen wird. Dieser ist personalisiert auf Ihren Account und wird in allen nachfolgenden Funktionen benutzt.

image-1655628190192.png

Arbeit mit Watchlisten aus onVista

INITIALVERSION

Wenn Sie in onVista angemeldet sind in der Weboberfläche (App analog) haben Sie Zugriff auf Watchlisten. Dabei können auch Fremd-Watchlisten abonniert werden von Profi-Anlegern z.B. von Hamalaya Capital Management, Yale Universitry und weitere. ShareHolder kann diese Watchlisten beidseitig synchronisieren. In der aktuellen Iteration können Watchlisten von onVista zu ShareHolder übernommen werden.

image-1655628195210.png

Sie sehen automatisch alle enthaltenen Titel aus den onVista-Watchlisten. Sie haben auch Zugriff auf alle vorhandene definierten Watchlisten aus OnVista und können direkt zwischen diesen Wechseln. Wenn Sie auf der Ziel-Watchliste “<Neu>” auswählen, wird mit dem Hinzufügen von Titeln automatisch eine gleichnamige Watchliste angelegt. Sie können auch Einzel-Titel hinzufügen und über den Switch filtern, welche Titel bisher nicht lokal vorhanden waren.

image-1655628200342.png

Besonderheiten und Vorteile bei der Titel-Übernahme

Die Datenübernahme von Watchlisten-Titel umfasst automatisierte weitere Schritte, um die sofortige Arbeit mit den Watchlisten-Titeln zu ermöglichen:

  • Automatische Titel-Anlage, wenn ein Titel bisher unbekannt war

  • Automatische Aktualisierung der Fundamentaldaten des Titels, um umgehend auch auf die Analyse mit den Fundamentaldaten einsteigen zu können

  • Automatische Kursdatenaktualisierung und Zuordnung auf onVista-Profile je nach Market-Quote

Arbeit mit Portfolios aus onVista

INITIALVERSION

Nach Anmeldung im Webportal haben Sie neben den Watchlisten auch Zugriff auf die Musterdepots und Echtdepots. Dabei sind die definierten Musterdepots synchronisierungsfähig. Echtzeitdepots sind aktuell nicht angebunden, würden hier auch keine Transaktionsdaten zeigen, sondern nur den aktuellen Depot-Bestand.

image-1655628206626.png

Nutzung neuer bisher nicht genutzter Titel

Können bei der Übernahme von Watchlisten oder Portfolio-Titel Werte gefunden, die bisher in den Aktienstammdaten nicht vorhanden waren, werden diese automatisch importiert. Dabei wird versucht möglichst wenig Arbeit beim Nutzer zu verursachen:

  • Automatische Anlage des Titels

  • Aktualisierung der Fundamentaldaten über das Fundamentaldaten-Autoimport-Profil. Dies übernimmt initial neben Bilanz-Kennzahlen auch Prognosedaten und Kern-Stammdaten für Tätigkeitsbereich, Land, Währung etc.

  • Automatische Zuordnung auf eine onVista-Kursaktualisierungsgruppe, da der Titel ja bereits seitens onVista bekannt ist. Der zugehörige Markt wird auf Basis der Marketdaten wiederverwendet

  • Aktualisierung der Kurshistorie mit einem ersten Versuch, um direkt mit dem Titel inkl. Chartanalyse starten zu können