Skip to main content

Tuning-Möglichkeiten und deren Auswirkungen

Grundeinschätzung

Das System ist grundsätzlich auf Performance ausgelegt. Dennoch sind einige Optimierungsmöglichkeiten vorhanden, um das System hinsichtlich Reaktionsmöglichkeit und Aktualisierungsgeschwindigkeit zu steigern. Verstehen Sie die nachfolgenden Punkte bitte nur als Hinweise und nicht als unabdingbare Handlungsanweisungen!

Austausch der Festplatte mit Solid-State-Disk (SSD-Platte)

Praxisbeispiel:

Test

Festplatte

SSD




Samsung HD250HJ 250 GB / SpinPoint S Corsair P128 Solid State Drive 128 GB
CMFSSD-128GBG2D, MLC-Chips

Startzeit von SHAREholder
(Hilfe / Infos) mit dem aktuellen Depot / Stammdaten

4,4s

2,8s

(grüner Stern) -37%

Tai-Pan Vollaktualisierung über alle Titel (3447)

9m / 14s
554s

4m 50s
290s

(grüner Stern) -48%

Filter "ADX über alle deutschen Titel"

44,5s

13s

(grüner Stern) -70%

Für die Nutzung von ML-Kursprognose-Systemen sollten Sie mind. 4GB freien Speicherplatz auf der SSD mit hohen Änderungsraten im System einplanen!

Nutzung von Multi-Core-Systemen

Die Nutzung von starken Multi-Core-Systemen ist grundsätzlich in einfachen Anwendungsszenarien wie Marktlisten, Depotfunktionen und Chartansichten praktisch irrelevant. Durch den Ausbau der Börsensoftware in den letzten Monaten in Richtung Kursprognose mittels ML/KI-Algorithmen und automatischen Handelsstrategien sind die Anforderungen hier jedoch deutlich gestiegen für eine optimale Benutzung des Systems.

Die Berechnungen können hier zwischen Minuten und Tagen auseinanderliegen bei Durchführung eigener Trainings von Modellen.
Nachfolgend eine einfache Einordnung von sehr rechenintensiven Prozessen.


Anwendung Einordnung Mindestens Empfehlung Optimal
1 Marktlisten mit meheren (z.B. 5) eingeblendeten Indikatoren

MITTLERE BELASTUNG

1GB nutzbarer RAM SSD, 8GB,
Core >3GHz
Nur mit CPU-Power für Single-Thread-Berechnungen kann der Prozess wesentlich beschleunigt werden. Multi-Core hat aktuell keine Auswirkungen. CPUs mit hoher Taktfrequenz sind Systemen mit hoher Core-Anzahl sind hier überlegen.
2 Durchführung von Strategieberechnungen z.B. Susan-Levermann-Strategie über alle Titel

MITTLERE BELASTUNG

3 Durchführung von ML-Kursprognose-Trainings mit H2o

EXTREME BELASTUNG

Windows 64 und Java 64 Bit zwingend

6GB RAM

Windows 64 und Java 64 Bit zwingend

SSD, 16GB RAM,
4 Core >3GHz

Die Datenvorbereitung erfolgt aus Speichermanagement-Gründen virtualisiert über das Dateisystem. Daher ist jede Optimierung in Richtung schneller SSD (.M2) hier optimal.

Daneben arbeitet das H2o-Modell sehr speicherintensiv d.h. für die HDAX-Berechnung mit 5,10,30 Tage Kursvorausberechnung und binären, gerunderter und exakter Vorhersage sind 6GB nur für H2o zwingend. Für alle US-Titel sollten bereits 12GB vorliegen. Die Nutzung des Speichers wird durch das System abgefragt und ist optimal bei 20GB Speicherzuweisung (wenn möglich), wenn bis zu 12 Modelle gleichzeitig benutzt werden.

Die Berechnung erfolgt aktuell leider noch ohne GPU-Support, nutzt aber praktisch alle Cores und Threads. Ein AMD Threadripper oder i7-Intel mit 8 Cores arbeitet daher sehr effizient, wenn die Taktfrequenz entsprechend hoch liegt.

Mittelfristig ist die Hoffnung durch GPU-Support hier die Anforderungen wieder etwas zu reduzieren.

4 Durchführung von ML-Kursprognose-Vorhersagen (mittels H2o)

HOHE BELASTUNG

Windows 64 und Java 64 Bit zwingend

1GB nutzbaren RAM

Windows 64 und Java 64 Bit zwingend


SSD, 8GB RAM,

Core >2.5 GHz

Die Datenvorbereitung erfolgt aus Speichermanagement-Gründen virtualisiert über das Dateisystem. Daher ist jede Optimierung in Richtung schneller SSD (.M2) hier optimal.

Die Prediction-Berechnung ist vor allem in der Datenaufbereitung der Eingangsdaten (Indikatoren) für die Modellberechnung sehr rechenintensiv. Diese Berechnung ist nur Single-Thread basierend möglich. Die Prediction selbst ist durch die Einschränkung der Speichermenge mit kleinen Systemen denkbar.

Daher auch hier ist CPU-Power mit Single-Thread-Power durch eine hohe Taktfrequenz optimal!


Nutzung von Sammelabfragen

Internet-Kurs-Provider wie Yahoo bieten die Möglichkeit Kursdaten für mehrere Titel gleichzeitig abzufragen. Der Geschwindigkeitsgewinn ist hier enorm, insb. durch Verwendung von CSV-Inhalten, d.h. unnötige Layout-Fragmente wie HTML-Inhalte werden vermieden. Der DAX30 kann so innerhalb von 1,5s aktualisiert werden für die Tagesdaten gegenüber 40s bei einer Einzelabfrage über Consors.

Bitte versuchen Sie daher immer Kursanbieter zu nutzen mit:

  • CSV-Datenlieferung (AlphaVantage, Finanzen, Comdirect)
  • Möglichkeit zur Sammelabfrage (AlphaVantage)


ML-Referenz-Performancewerte 

Auf dem Referenzsystem (16GB, Core™ i7-2600K, SSD)

Verwendete ShareHolder-Version 13.16.30 (04.10.2018)

Prozess
Berechnungsdauer
Anmerkungen
Berechnung Trainings-und Validierungsdaten (10er Netz)
Nasdaq, Rohstoffe, HDAX und Indizes
26min

doAutoMLBaseNetID=10
doAutoMLH2oMemoryInGB=12
doAutoMLExport=1
doAutoMLExportMarktSelections=[262144;32768;64;16]

Berechnung der ML-Modelle 5h 20min

doAutoMLTrain=1
doAutoMLTrainMarktSelections=[262144;32768;64;16]
doAutoMLTrainResponseColumnIDs=(Forecast[5d].MA[1d].ts,Forecast[5d].MA[1d].Rounded.Enum.ts,Forecast[5d].MA[1d].Binaer.ts,Forecast[10d].MA[1d].ts,Forecast[10d].MA[1d].Rounded.Enum.ts,Forecast[10d].MA[1d].Binaer.ts,Forecast[30d].MA[1d].ts,Forecast[30d].MA[1d].Rounded.Enum.ts,Forecast[30d].MA[1d].Binaer.ts)

Berechnung der Vorhersagewerte 3h

doAutoMLPrediction=1
doAutoMLPredictionModelIDs=(GBM-Net-10-HDAX.100ntrees.20depth.response[Forecast[10d].MA[1d].Binaer.ts];GBM-Net-10-HDAX.100ntrees.20depth.response[Forecast[10d].MA[1d].Rounded.Enum.ts];GBM-Net-10-HDAX.100ntrees.20depth.response[Forecast[10d].MA[1d].ts];GBM-Net-10-HDAX.100ntrees.20depth.response[Forecast[30d].MA[1d].Rounded.Enum.ts])
doAutoMLPredictionWatchlistenIDs=[4;16;512]
doAutoMLPredictionUseMaxStockDays=1000


Schrittweise Optimierungen