Automatische JOB-Ausführung
Ziel
Um die automatische Ausführung mit bestimmten zeitintensiven und auch oft regelmäßigen Jobs zu erlauben, gibt es die Möglichkeit einer über Programm-Parameter gesteuerten automatischen Ausführung von Jobs ( Auto-Execute-Möglichkeiten)
Anwendungsfälle sind hierfür beispielsweise:
- automatisch laufende Kursdaten-Aktualisierungen im Hintergrund um 18:00 Uhr, um kurz danach in Ruhe mit den aktuellen Kursdaten sich einen Marktüberblick zu verschaffen.
- Es können aber auch die Börse-Online-Statistiken + Kursaktualisierungen auf einem zentralen Miet-Server vorgenommen werden und die Daten automatisch verteilt werden auf verschiedene Rechnersysteme.
Weitere Beispiele für relevante Job-Steuerungen die perfekt automatisch durchgeführt werden können:
- Komplette Kursdatenaktualisierung kurz vor Feierabend für Tai-Pan + Cloud-Internetaktualisierung, um mit den Daten abends direkt zu starten
- Komplette Datenaufbereitung mehrerer Marktsegmente für das Training von H2o
- Komplette Trainings für H2o für mehrere Kursprognosemodelle und unterschiedlichen Datenmodellen
- Komplette Vorbereitung von tagesaktuellen Daten für die Kursprognose selbst auf Basis trainierter Modelle
- etc.
Aufruf
Hierbei wird als Programmparameter "AUTO-EXECUTE" mit Doppelpunkt getrennt der Pfad zur nutzenden Steuerungsdatei (INI-Datei) übergeben. Dies erlaubt die Ausführung unterschiedlicher Job-Steuerungsprofile.
Die eigentliche Job-Detail-Beschreibung liegt so in der INI-Datei selbst.
"...\proSoft24\Shareholder\Shareholder.exe" -AUTO-EXECUTE:<PATH\INIFile|INIFile>
z.B: "C:\Program Files (x86)\proSoft24\Shareholder\Shareholder.exe" -AUTO-EXECUTE:autoupdate.ini
Aufbau der Job-Steuerungs-Konfigurations-Datei (autoupdate.ini-Datei)
Es befindet sich im Datenverzeichnis in der Standard-Auslieferung bereits ein Beispiel einer autoupdate.ini-Datei. Die INI-Datei ist mit Kommentaren versehen, so dass diese selbsterklärend sein sollte.
Es gibt hierbei 3 wesentliche Sektionen in der INI-Datei:
- pre-actions: Zur Ausführung von Vorbereitungs-Skripten direkt mit Programmstart z.B. um bestimmte Einstellungsdateien aus einem Pool heraus zu kopieren. In dem Moment sind noch keine Einstellungen/Dateien für SHAREholder geladen
- auto-execute: Festlegung der automatisch auszuführenden SHAREholder-Events und dessen Detail-Einstellungen
- post-actions: Zur Ausführung von Nachbereitungs-Skrpten direkt nach dem Programmstart z.B. um bestimmten Einstellungen, Dateien anschließend im Netzwerk zu verteilen, zu sichern etc.
Eine mögliche Variante ist beispielsweise:
[pre-actions]
|
|
---|---|
doPreAction=0 |
Automatische Ausführung beim Start von Shareholder, wenn das Script existiert und doPreAction=1 Zu diesem Zeitpunkt existiert noch kein Shareholder-Objekt oder Formular, d.h. keine Datei im Filesystem wurde von Shareholder gelesen, geöffnet oder ist im Zugriff. Damit werde auch Recovery-Scripte / Transfer-Scripte für das Datenverzeichnis möglich 1=on, 0=off |
script=C:\ownCloud\transfer\Auto-Execute-Shareholder\auto-execute-pre-action.cmd | |
[auto-execute] |
|
doTaipanOnlineUpdate=0 |
Automatisch den OnlineManager von Tai-Pan aufrufen für die Online-Kursaktualisierung von Tai-Pan
|
doTaipanFilterUpdate=0 |
Automatisch den Tai-Pan-Filter aufrufen mit den mitgegebenen UseProfile oder dem Default-Setup (letzte genutzte Einstellung)
|
doInternetFilterUpdate=0 |
Automatisch den Internet-Filter aufrufen mit den mitgegebenen UseProfile oder dem Default-Setup (letzte genutzte Einstellung)
|
doInternetProxy=0 |
Automatisch den Internet-Proxy aktivieren, der unter den Programm-Einstellungen zuvor aktiviert worden ist und im spezifischen Profil mit doInternetFilterUseProfile eingestellt worden ist.
|
doInternetProxyUserID=<Account> | Automatisch den User-Account für den Proxy hinterlegen. Im Default werden die Daten aus dem doInternetFilterUseProfile verwendet, können hiermit aber überschrieben werden. |
doInternetProxyUserPassword=<Password> | Automatisch das User-Passwort für den Proxy hinterlegen. Im Default werden auch hier die Daten aus dem doInternetFilterUseProfile ausgelesen, können aber hiermit überschrieben werden. |
doTaipanFilterUseProfile=Daten\Default-Tai-Pan.Filter.Profile.stm |
Sie können die Profile nutzen in den Einstellungsdialogen, um bei der Aktualisierung ausgewählte Marktlisten auszuwählen und zu aktualisieren. Sie müssen hierzu einmalig die Einstellungen/Selektionen in SHAREholder vornehmen und speichern. Sie erhalten dann im \Daten-Verzeichnis gleichnamige <Name>.Filter.Profile.STM-Dateien. Auf diese können Sie referenzieren und diese damit für die Aktualisierung auch nutzen.doTaipanFilterUseProfile=Daten\Default-Tai-Pan.Filter.Profile.stm |
doInternetFilterUseProfile=Daten\Default-Internet.Filter.Profile.stm |
siehe doTaipanFilterUseProfile |
doReportInternetFilterUpdateErrors=1 |
Erzeuge eine Mail-Bericht für auftretende Fehler und sende diese an die hinterlegte Mailadresse direkt nach der Aktualisierung der vorhandenen Internetadressen |
doBoerseOnlineUpdate=0 |
Automatisch die Börse-Online-Statistiken aktualisieren
|
doCreateBackup=0 |
Automatische Durchführung einer Sicherung
|
doCreateBackupFor=500 | Nutze Datumsformat dd.mm.yyyy oder Anzahl Tage z.B. 100 |
doCreateSecondBackup=1 |
Es kann neben dem Hauptbackup auch ein Sekundär-Backup erstellt werden für eine andere Anzahl von Tagen (siehe doCreateSecondBackupFor)
|
doCreateSecondBackupFor=30 | Nutze Datumsformat für Startzeitpunkt als Datum dd.mm.yyyy oder Anzahl Tage z.B. 30 |
doCreateBackupAndAvoidSfxStub=1 |
Erzeugung der SFX-Stub-Lösung kann übersprungen werden, wenn nur die Inc-Datenbank-Datei erzeugt werden soll
|
[auto-machine-learning] | |
doAutoMLBaseNetID=10 |
Festlegung des zu nutzenden Netzes/Modells. Die ID wird innerhalb von ShareHolder oben rechts angezeigt |
doAutoMLExport=0 | Nutzung der automatischen Datenaufbereitung von Daten zum Training von ML-Modellen oder Netzen. Die Funktion wird mit =1 aktiviert |
doAutoMLExportMarktSelections=[262144;32768;64;16] |
Für den Export sollen folgende Marktsegmente genutzt werden. Die ID wird per Doppelklick auf die ID in der Datenaufbereitungsmaske angezeigt und in die Zwischenablage kopiert, so dass diese direkt in die Konfiguration übernommen werden kann.
|
doAutoMLExportH2oImport=0 | Führt bei Aktivierung mit 1 das nachfolgende Script nach der Datenaufbereitung aus. Das Skript wird nur ausgeführt wenn doAutoMLExport mit =1 aktiviert wurde |
doAutoMLExportScriptAction=0 doAutoMLExportScript=d:\ownCloud\transfer\Auto-Execute-Shareholder\doAutoMLExportScript.cmd |
|
doAutoMLTrain=1 | Aktivierung des automatischen Trainings über H2o. Es entspricht den H2o-Export-und Modellgenerierungsfähigkeiten in der UI |
doAutoMLTrainMarktSelections=[64;16] | siehe analog doAutoMLExportMarktSelections |
doAutoMLTrainResponseColumnIDs=(Forecast[10d].MA[1d].ts,Forecast[10d].MA[1d].Rounded.Enum.ts, Forecast[10d].MA[1d].Binaer.ts,Forecast[30d].MA[1d].Rounded.Enum.ts,Forecast[30d].MA[1d].Binaer.ts) |
Hiermit werden die Zielprognose-Typen für das Anlernen definiert. Die Auswahl sollte/kann direkt aus dem Frontend per Copy&Paste aus dem zugehörigen Feld kopiert werden: |
doAutoMLTrainAlgorithm=[GBM] | Zum jetzigen Zeitpunkt kann hier nur GBM gewählt werden |
doAutoMLPrediction=1 | Mit 1 wird die Vorbereitung für Kursvorhersagen aktiviert. Damit ist die Berechnung der internen Variablen und Daten gemeint, die anschließend als Datenset H2o übergeben werden kann für die Prediction-Funktion. Dadurch, dass hier zunächst nur die Vorbereitung für die Kursprognosen durchgeführt wird, ist hierzu nächst kein konkretes Modell zu bezeichnen. |
doAutoMLPredictionWatchlistenIDs=[512;1024] |
Die IDs der Watchlisten wird nachfolgend mit ; getrennt definiert und in eckigen Klammern definiert. Die Ids bekommt man direkt unter Einstellungen/Watchlisten mit Doppelklick auf den Label in die Zwischenablage kopiert. |
doAutoMLPredictionUseMaxStockDays=1000 | Begrenzt die Anzahl der für die Kursvorhersage verwendeten Datensätze, was sich teilweise erheblich auf die Geschwindigkeit auswirken kann |
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]) |
Liste mit Semikolon getrennt der gewünschten vorherzusagenden Modelle. |
doAutoMLPredictionExportCSV=1 |
|
doAutoMLPredictionExportHTML=1 |
|
doAutoMLPredictionExportMail=support@shareholder24.de |
|
doAutoMLPredictionScriptAction=0 |
Nachfolgendes Skript wird nur bei Aktivierung mit =1 ausgeführt |
doLoadDepotFileName= | Ermöglicht die Nutzung eines spezifisches Depots insb. für den Abgleich mit FXCM-Imports etc. Dieses Depot wird direkt beim Start geladen und nachfolgende Ausführungen somit innerhalb dieses Depots durchgeführt |
[post-actions] | |
doPostAction=0 script=C:\ownCloud\transfer\Auto-Execute-Shareholder\auto-execute-post-action.cmd |
Automatische Ausführung nach dem Start von Shareholder, wenn das Script existiert und doPostAction=1. Zu diesem Zeitpunkt sind bereits alle Shareholder-Objekte gespeichert, Formulare geschlossen und alle Dateien aktuell ins Filesystem geschrieben. Damit werden Backup-Scripte möglich, die spezielle Sicherungsmethoden umsetzen oder Dateien z.B. in eine Cloud sichern.
|