Programmierung
Last updated
Last updated
Die Agena-Indikator-Hilfe bietet umfassende Informationen über die in AgenaTrader integrierten Indikatoren (nur in deutscher Sprache verfügbar).
📌 Inhalte der Agena-Indikator-Hilfe: ✔ Beschreibung von Indikatoren und Oszillatoren ✔ Bedeutung der Parameter ✔ Anwendung und Interpretation von Signalen ✔ Syntax und Codebeispiele ✔ Weiterführende Verweise
➡ Die Agena-Indikator-Hilfe unterstützt Sie bei der effektiven Nutzung und Analyse von Indikatoren in AgenaTrader! 🚀
Die Programmierumgebung ist nach den Prinzipien des Visual-Studios aufgebaut:
Über den Toolbar kann die Programmieroberfläche gesteuert werden,
Im Editor können mehrere Komponenten gleichzeitig bearbeitet werden (Top-Tab Leiste),
Eine IntelliSense®-Funktionalität ist verfügbar,
Am unteren Ende befindet sich die Error-Liste in der Compiler-Error angezeigt werden.
Symbol
Funktion
Damit können bereits vorhandene selbstprogrammierte Indikatoren bzw. Strategien in die Programmieroberfläche geladen werden
Speichert Source-Code Änderungen ab
Auschneiden von markiertem Source Code
Kopieren von markiertem Source Code
Einfügen von kopierten bzw. ausgeschnittenem Source Code
Auskommentieren von markierten Source Code-Teilen
Rückgängig machen Kommentar-Passagen
Rückgängig machen von vorhergegangen Aktionen
Rückgängig gemachte Aktionen wieder aktivieren
Öffnet das Ausgabe-Fenster
Öffnet das Referenz-Popup
Kompiliert alle Sourcen
Suchen von SourceCode-Passagen
Suchen/Ersetzen
Öffnen der Errorliste
Löscht den File
Der aktuelle AgenaTrader 2.0.xxx unterstützt .NET Framework 4.6.
Microsoft bietet eine Gratis-Version namens Visual Studio Community Edition an, die die sich gut eignet, um einen AgenaScript Code zu entwickeln. Microsoft bietet eine kostenlose Version namens Visual Studio Community Edition an, die sich gut für die Entwicklung von AgenaScript-Code eignet.
Download: Aktuellste Version von Visual Studio
Download: Ältere Versionen von Visual Studio
Unterstützte Versionen:
• Windows 10: VS2017, VS2019 und VS2022 (neueste Builds/Updates)
• Windows 11: ausschließlich VS2022 (neueste Builds/Updates)
• Bitte beachten Sie, dass VS2015 und ältere Versionen von Microsoft nicht mehr unterstützt werden, weshalb wir auch keinen Support anbieten.
Dieser Artikel wurde erstellt von http://script-trading.com.
Man kann nun komfortabel seine AgenaScripts im Visual Studio entwickeln, testen und debuggen.
Dieser Editor ist ein nützliches Tool, wenn es darum geht ein paar Zeilen Code auf die Schnelle zu ändern oder wenn man sich lediglich ein AgenaScript ansehen will.
Für alle anderen Einsätze sollte man unbedingt Microsofts Entwicklungsumgebung Visual Studio heranziehen. Es bietet eine vielfach bewährte und allumfassende Lösung für nahezu alle Bereiche der Softwareentwicklung, so also auch für AgenaScript bzw. für C#.
Die wichtigsten Vorteile wären:
Debugging
Code Completion
Syntaxprüfung
Dazu gibt es eine Vielzahl weiterer Features die einem das Entwickeln leichter machen.
Downloaden kann man die kostenlose „Visual Studio Community“ Edition unter https://www.visualstudio.com/downloads. Bitte beachten, dass der Download und die Installation der Software ca 60 Minuten dauert!
Ab AgenaTrader 2.0 muss wegen der eingesetzten .NET Version 4.6 mindestens „Visual Studio Community 2017“ verwendet werden! Oben finden Sie eine Liste der unterstützten Versionen.
Hat man Visual Studio erfolgreich installiert, kann man es mittels der nachstehenden Allgemeine Einstellungen mit dem AgenaTrader verknüpfen. Von nun an werden alle AgenaScript-Dateien automatisch mit Visual Studio geöffnet und auch der Debugger wird mit dem AgenaTrader automatisch verlinkt.
Man kann nun komfortabel seine AgenaScripts im Visual Studio entwickeln, testen und debuggen.
Dieser Artikel wurde erstellt von http://script-trading.com.
Über Strategy Handling-> Programmierung -> Indikator -> Neu können neue Indikatoren programmiert bzw. bereits vorhandene geändert werden.
Möchte man einen bestehenden Indikator verändern, so öffnet sich über Bearbeiten folgender Auswahl-Dialog:
Tastenfunktionen:
Der Bearbeiten-Button bzw. ein Doppelklick auf einen Eintrag öffnet die Programmier-Umgebung zu diesem Indikator.
Löschen: Löscht den ausgewählten Indikator
Kompilieren: Kompiliert alle Indikatoren, Conditions, Strategien und Alarm Handler; hat man einen Indikator gelöscht, so muss danach der Kompilieren-Button betätigt werden. Erst dadurch wird das Löschen systemwirksam.
Es erscheint zuerst ein Navigations-Popup in dem man entscheiden kann, ob man einen neuen Indikator programmieren oder einen aus einer anderen Handelsplattform importieren möchte:
Schritt 1. Eingabe des Namens.
Chart-Panel: wenn angehakt, so wird dieser Indikator im Chart-Panel angezeigt.
Indicator-Panel: wenn angehakt, so wird dieser Indikator unterhalb des Charts angezeigt.
Schritt 2. Hier werden die Eingabe Parameter definiert.
Schritt 3. Danach werden die Plots-Outputs definiert, die vom Indikator ermittelt und ausgegeben werden.
Schritt 4. Falls es sich um einen Level-Lines mit fixen Schwellwerten handelt können diese hier erfasst werden.
Schritt 5. Nun kann mit der Indikator-spezifischen Programmierung begonnen werden.
Über Strategy Handling-> Programmierung -> Condition -> Neu können neue Conditions programmiert bzw. bereits vorhandene geändert werden.
Möchte man eine bestehende Condition verändern, so öffnet sich über Bearbeiten folgender Auswahl-Dialog.
Tastenfunktionen:
Der Bearbeiten-Button bzw. ein Doppelklick auf einen Eintrag öffnet die Programmier-Umgebung zu dieser Condition.
Löschen: Löscht die ausgewählte Condition
Kompilieren: Kompiliert alle Indikatoren, Conditions, Strategien und Alarm Handler; hat man eine Condition gelöscht, so muss danach der Kompilieren-Button betätigt werden. Erst dadurch wird das Löschen systemwirksam.
Schritt 1. Eingabe des Namens
Schritt 2. Hier werden die Eingabeparameter definiert
Schritt 3. Danach wird definiert, ob die Condition als Entry, Stop oder Target verwendet werden soll. Dies beeinflusst auch, wo die Condition im SetupBuilder (EntryEscorts, StopEscorts, TargetEscorts) aufscheint.
Anschließend kann man noch die Farben spezifizieren
Entry: tba
Stop occurred: definiert die Farbe der Signal-Ausschläge ("Spikes") im Indikator-Panel. Price definiert die Farbe im Chart.
Target: tba
Schritt 4. Nun kann mit der Condition-spezifischen Programmierung begonnen werden.
Über Strategy Handling-> Programmierung -> Strategie -> Neu können neue Strategien programmiert werden.
Möchte man eine bestehende Strategie verändern, so öffnet sich über Bearbeiten folgender Auswahl-Dialog:
Tastenfunktionen:
Der Bearbeiten-Button bzw. ein Doppelklick auf einen Eintrag öffnet die Programmier-Umgebung zu dieser Strategie
Löschen: löscht die ausgewählte Strategie
Kompilieren: Kompiliert alle Indikatoren, Conditions, Strategien und Alarm Handler; hat man eine Strategie gelöscht, so muss danach der Kompilieren-Button betätigt werden. Erst dadurch wird das Löschen systemwirksam.
Es erscheint zuerst ein Navigations-Popup in dem man entscheiden kann, ob man eine neue Strategie programmieren oder eine aus einer anderen Handelsplattform importieren möchte:
Schritt 1. Eingabe des Namens
Schritt 2. Hier werden die Eingabeparameter definiert.
Schritt 3. Nun kann mit der Strategie-spezifischen Programmierung begonnen werden.
In AgenaTrader können Preis- und Zeit-Alarme in einem (mehreren) selbstprogrammierten Alarm-Handler aufgefangen und behandelt werden. Mit dem Alarm Handler hat man über C#/.Net Zugriff auf die vollständige Systemumgebung und kann z.B. Emails, SMS o,ä. versenden bzw. andere Tätigkeiten (Blog-Einträge erstellen etc.) ausführen lassen.
Über Strategy Handling-> Programmierung -> Alarm Handler -> Neu können neue Alarm Handlers programmiert werden.
Legt man z.B. einen Zeit-Alarm an, so hat man die Möglichkeit einen Grund einzugeben.
Wird ein Preis- oder Zeit-Alarm ausgelöst, so werden alle vorhandenen Alarm-Handler aufgerufen und nach der Behandlung aufgrund des Alarm-Grunds (oder eines anderen Attributs) durchsucht.
Möchte man einen bestehenden Alarm Handler verändern, so öffnet sich über Bearbeiten folgender Auswahl-Dialog:
Tastenfunktionen:
Der Bearbeiten-Button bzw. ein Doppelklick auf einen Eintrag öffnet die Programmier-Umgebung zu diesem Alarm Handler
Löschen: löscht den ausgewählten Alarm Handler
Kompilieren: Kompiliert alle Indikatoren, Conditions, Strategien und Alarm Handler; hat man einen Alarm Handler gelöscht, so muss danach der Kompilieren-Button betätigt werden. Erst dadurch wird das Löschen systemwirksam.
Schritt 1. Eingabe des Namens
Schritt 2. Nach dem Klick auf Weiter kann mit der Alarm-spezifischen Programmierung begonnen werden.
Eine einfache Methode einen Preis- oder Zeit-Alarm mit einem Alarm Handler zu verbinden ist über den Alarm-Grund. In diesem Fall wird nach dem Alarm-Grund "Email senden" gesucht. Wird dieser Alarm-Grund in einem der vorhandenen Alarm Handler gefunden, so wird die darin programmierte Logik ausgeführt.
Im Ausgabe-Tab werden Nachrichten angezeigt, die in selbst programmierten Indikatoren, Strategien, Alarm Handler, usw. mit der Print-Methode eingebaut wurden.
Dieses Tab kann auch für eine Fehlersuche verwendet werden (Debugging), hat aber sonst keine weiteren Funktionalitäten.
Ein Rechtsklick in das Tab und Clear löscht die Einträge aus dem Ausgabe-Fenster.
Über Strategy Handling-> Programmierung -> Programmier Referenzen können die notwendigen Referenzen für eine Programmierung geladen bzw. bearbeitet werden.
Es öffnet sich folgendes Fenster:
In den oberen Tabs .Net, COM and Browse können Referenzen ausgewählt werden.
Tastenfunktionen:
Mit einem Klick auf Add werden die Referenzen in die References-Liste gelegt.
Mit einem Klick auf Remove wird eine Referenz aus der References-Liste gelöscht.
Beim Klick auf den OK-Button werden die Änderungen übernommen.
Bekommt man selbst programmierte AgenaTrader Alarm Handler, Indikatoren, Conditions und Strategien oder mit dem Signal-Builder erstellte Conditions von externen Quellen und möchte man diese in AgenaTrader einbinden, so kann man diese *.cs-Dateien in AgenaTrader/UserCode/ und den jeweiligen Unterordner (AlertHandlers, Indicators, ScriptedConditions, Strategies, Conditions) ablegen und durch einen Klick auf Strategy Handling-> Programmierung -> Kompilieren kompilieren und einbinden lassen.
Ordnerstruktur
Kompilier-Fehler
Tritt beim Kompilieren ein Fehler auf, so erscheint ein Dialog, in welchem man sieht wo der Fehler aufgetreten ist.
Wenn der Kompilier-Vorgang Fehler erzeugt, erscheint diese Information in einem Dialog-Fenster und zeigt an, woher der Fehler kommt.
1. Zeigt die Fehlerbeschreibung an 2. Zeigt den Dateinamen an. Linksklick auf den Filenamen öffnet den Speicherplatz.
Sie können das Visual Studio anstelle des internen Scripts (Programmier-Umgebung) verwenden. Klicken Sie einfach Use Visual Studio in den Allgemeinen Einstellungen an.
Um dieses Problem zu lösen, sollte der User die Condition-Scripts überprüfen und dann versuchen, nochmals zu kompilieren.
Wählen Sie im Hauptmenü Strategy Handling-> Scripting-> Condition ->Edit die Punkte, um die Conditions zu verifizieren.
In der folgenden Dialog Box klicken Sie den Edit Button oder öffnen mit einem Doppelklick auf einen Eintrag das Programmier-Fenster für die ausgewählte Condition.
Um dieses Problem zu lösen, sollte der User die Indikatoren-Scripts überprüfen und dann versuchen, erneut zu kompilieren.
Wählen Sie in Strategy Handlings-> Scripting-> Indicator -> Edit um den Indikator zu überprüfen.
In der folgenden Dialog Box klicken Sie den Edit Button oder öffnen mit einem Doppelklick auf einen Eintrag das Programmier-Fenster für den ausgewählten Indikator.
Um dieses Problem zu lösen, sollte der User die Strategie-Scripts überprüfen und dann versuchen, erneut zu kompilieren.
Wählen Sie in Strategy Handlings-> Scripting-> Strategie -> Edit um die Strategie zu überprüfen.
In der folgenden Dialog Box klicken Sie den Edit Button oder öffnen mit einem Doppelklick auf einen Eintrag das Programmier-Fenster für die ausgewählte Strategie.
Hier gibt es mehrere Möglichkeiten, dieses Problem zu lösen:
Laden Sie die aktuelle Version des Agena Trader herunter und installieren Sie diese: Download Link hier
Öffnen Sie Strategie Handling->Scripting und klicken auf den Kompilieren-Button
Wichtig! In manchen Fällen können Sie Kompilierfehler-Meldungen erhalten. Hinweise, wie Sie dies lösen können, finden SIe auf dieser Seite Compile Error
Bitte überprüfen Sie, an welchem Speicherort Sie Ihre Scripts abgelegt haben. Hier sollten Sie gespeichert sein: C:\Users\'User_name'\Documents\AgenaTrader\UserCode\ folders: Indicators, Scanns, ScriptedConditions, Strategies oder AlertHandlers (dies hängt vom Script-Typ ab). Sollten SIe diese an einem anderen Speicherort vorfinden, kopieren Sie sie in den Zielordner und klicken den Kompilieren-Button.
Conditions können verschwinden, weil eines Ihrer Pakete nicht auf die aktuellste Version upgedated wurde. In diesem Fall gehen Sie bitte in Tools -> Pakete -> Importierte Pakete.
Im geöffneten Tab überprüfen Sie bitte die Version Ihres AddOns. Up-to-date bedeutet, dass Ihr AddOn bereits upgedated ist.
Update Available bedeutet, dass Ihre Version veraltet ist.
Um upzudaten, klicken Sie den Update Available Button und bestätigen dann im Dialogfenster mit Yes.
Hier gibt es mehrere Möglichkeiten, dieses Problem zu lösen:
Laden Sie die aktuelle Version des Agena Trader herunter und installieren Sie diese: Download Link hier
Öffnen Sie Strategie Handling->Scripting und klicken auf den Kompilieren-Button
Wichtig! In manchen Fällen können Sie Kompilierfehler-Meldungen erhalten. Hinweise, wie Sie dies lösen können, finden SIe auf dieser Seite Compile Error
Bitte überprüfen Sie, an welchem Speicherort Sie Ihre Scripts abgelegt haben. Hier sollten Sie gespeichert sein: C:\Users\'User_name'\Documents\AgenaTrader\UserCode\ folders: Indicators, Scanns, ScriptedConditions, Strategies oder AlertHandlers (dies hängt vom Script-Typ ab). Sollten SIe diese an einem anderen Speicherort vorfinden, kopieren Sie sie in den Zielordner und klicken den Kompilieren-Button.
Conditions können verschwinden, weil eines Ihrer Pakete nicht auf die aktuellste Version upgedated wurde. In diesem Fall gehen Sie bitte in Tools -> Pakete -> Importierte Pakete.
Im geöffneten Tab überprüfen Sie bitte die Version Ihres AddOns. Up-to-date bedeutet, dass Ihr AddOn bereits upgedated ist.
Update Available bedeutet, dass Ihre Version veraltet ist.
Um upzudaten, klicken Sie den Update Available Button und bestätigen dann im Dialogfenster mit Yes.
Schritt 6. Nachdem der Indikator kompiliert wurde, ist er sofort verfügbar.
Schritt 5. Nachdem die Condition kompiliert wurde, ist sie sofort verfügbar.
Schritt 4. Nachdem die Strategie kompiliert wurde, ist sie sofort verfügbar.
Schritt 3. Nachdem der Alarm Handler kompiliert wurde, ist er sofort (mit allen anderen Alarm Handlern) aktiv. D.h. wird ein Preis- oder Zeit-Alarm ausgelöst, so wird jeder Alarm Handler auf eine eventuell notwendige Behandlung durchsucht.
Überprüfen und korrigieren Sie den Condition-spezifischen Code. Danach klicken Sie Compile (im Visual Studio den Build) Button.
Überprüfen und korrigieren Sie den Indikator-spezifischen Code. Danach klicken Sie den Compile (im Visual Studio den Build) Button.
Überprüfen und korrigieren Sie den Strategie-spezifischen Code. Danach klicken Sie Compile (im Visual Studio den Build) Button.