StrategyQuant
Q AI AssistantAlgoCloudQuantAnalyzerQuantDataManager
Kostenloser KursUnternehmen
BlogDokumentationForumKontakt
BlogMarktplatz
Anmelden
Kostenloses Konto erstellen

Produkt

  • Preise & Lizenzen
  • Lernen
  • Marktplatz
  • Kostenlose Testversion starten

Rechtliches

  • Nutzungsbedingungen
  • Datenschutzerklärung
  • Cookies

Kontakt

[email protected]

Unternehmen

StrategyQuant s.r.o.

Korunní 2569/108, Vinohrady, 101 00 Praha 10, Tschechische Republik, EU

IČ: 04000498

DIČ: CZ04000498

Social Media

  • Impressum | VERARBEITUNG UND SCHUTZ PERSONENBEZOGENER DATEN

    Die Wertentwicklung in der Vergangenheit ist keine Garantie für zukünftige Erfolge. Alle Informationen sollten ausschließlich zu Bildungszwecken betrachtet werden

    VEREINIGTE STAATEN Gesetzlich vorgeschriebener Haftungsausschluss – Die Commodity Futures Trading Commission informiert: Der Handel mit Futures und Optionen birgt großes Gewinnpotenzial, aber auch erhebliche Verlustrisiken. Sie müssen sich der Risiken bewusst sein und bereit sein, diese zu akzeptieren, um an den Futures- und Optionsmärkten zu investieren. Handeln Sie nicht mit Geld, dessen Verlust Sie sich nicht leisten können. Dies ist weder eine Aufforderung noch ein Angebot zum Kauf/Verkauf von Futures, Aktien oder Optionen darauf. Es wird keine Zusicherung gemacht, dass ein Konto Gewinne oder Verluste erzielen wird oder wahrscheinlich erzielen wird, die denen in diesem Dokument genannten ähnlich sind. Die vergangene Wertentwicklung eines Handelssystems oder einer Methodik lässt nicht notwendigerweise auf zukünftige Ergebnisse schließen.

    CFTC-REGEL 4.41 – HYPOTHETISCHE ODER SIMULIERTE PERFORMANCE-ERGEBNISSE UNTERLIEGEN BESTIMMTEN EINSCHRÄNKUNGEN. IM GEGENSATZ ZU EINER TATSÄCHLICHEN PERFORMANCE-HISTORIE STELLEN SIMULIERTE ERGEBNISSE KEINEN ECHTEN HANDEL DAR. DA DIE TRADES NICHT TATSÄCHLICH AUSGEFÜHRT WURDEN, KÖNNEN DIE ERGEBNISSE AUSSERDEM DIE AUSWIRKUNGEN GEWISSER MARKTFAKTOREN WIE MANGELNDE LIQUIDITÄT ETWAIG KOMPENSIERT HABEN. SIMULIERTE HANDELSPROGRAMME UNTERLIEGEN IM ALLGEMEINEN ZUDEM DER TATSACHE, DASS SIE IM NACHHINEIN ENTWICKELT WURDEN. ES WIRD KEINE ZUSICHERUNG GEMACHT, DASS EIN KONTO GEWINNE ODER VERLUSTE ERZIELEN WIRD ODER WAHRSCHEINLICH ERZIELEN WIRD, DIE DEN DARGESTELLTEN ÄHNLICH SIND.

    ES WIRD KEINE ZUSICHERUNG GEMACHT, DASS EIN KONTO GEWINNE ODER VERLUSTE ERZIELEN WIRD ODER WAHRSCHEINLICH ERZIELEN WIRD, DIE DEN AUF DIESER WEBSITE BESPROCHENEN ÄHNLICH SIND. WENN SIE SICH ENTSCHEIDEN, ECHTES GELD ZU INVESTIEREN, SOLLTEN ALLE HANDELSENTSCHEIDUNGEN AN DEN FINANZMÄRKTEN IHRE EIGENEN SEIN.

    © StrategyQuant 2026

    Bereitgestellt von Klaudie.ai

    Zurück zum MarktplatzDIGITAL

    Strategy-Init-Variablen auslesen

    StrategyQuantPlugins
    Strategy-Init-Variablen auslesen

    Beispiel für Custom Analysis, das zeigt, wie Variablenwerte aus Strategy-Init-Regeln ausgelesen werden. Demonstriert die Verwendung von toInitValue für den Zugriff auf Initialisierungsparameter und das Erstellen benutzerdefinierter Datenbankspalten.

    In einer Regel, die bei Strategy Init ausgelöst wird, weist StrategyQuant für jede Assign-Funktion Ihrer Variable anstelle eines Wertes eine „AssignVrbVleEntMlt“-Variable zu.

    Während der Initialisierung wird Ihrer Variable dann der Wert von AssignVrbVleEntMlt zurückgegeben

    Aus einer Strategie, die mit der „H1388 Test Variable Template“ erstellt wurde, können wir im Code Folgendes ablesen:

    AssignVrbVleEntMlt = 210

    AssignVrbVleEntMlt erhält den Wert anstelle von MALength

    Anschließend gibt AssignVrbVleEntMlt den Wert bei der Initialisierung an MALength zurück.

    1/ Dieses Codebeispiel für Custom Analysis zeigt Ihnen, wie Sie einen Wert Ihrer Variable in einer Regel abrufen, die bei Strategy Init ausgelöst wird

    Wir erhalten den Wert aus einer Funktion „toInitValue“, aus einer ResultsGroup, dem Regelnamen „Init“ und einem Variablennamen: MALength (in diesem Beispiel)

    Anschließend verwenden wir die Funktion rg.specialValues(), um den Wert in „CA_MALength“ zu setzen

    package SQ.CustomAnalysis;
    import com.strategyquant.lib.*;
    import java.util.ArrayList;
    import com.strategyquant.datalib.*;
    import com.strategyquant.tradinglib.*;
    import SQ.Utils.Bouillant;
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    import java.util.*; 
    // Created in France by Emmanuel Bouillant-Evrard
    public class CA_InitStratsSettings extends CustomAnalysisMethod 
    {
        public static final Logger Log = LoggerFactory.getLogger(CA_InitStratsSettings.class);
        public CA_InitStratsSettings() 
        {
            super("CA MALength Settings", TYPE_FILTER_STRATEGY);
        }
        //------------------------------------------------------------------------
        @Override
        public boolean filterStrategy(String project, String task, String databankName, ResultsGroup rg) throws Exception 
        {
            try 
            {
                Bouillant BouilltParaObj1 = new Bouillant();
                String IntTemp = BouilltParaObj1.toInitValue(rg, false,"Init", "MALength", 100); 
                rg.specialValues().set("CA_MALength", Double.parseDouble(IntTemp));
                return true;
          	} catch(Exception e)
            {
                Log.error("Error CA_InitStratsSettings", e);
                return false;																																							       // "Error: " + e.getMessage();
            }
        }
        //------------------------------------------------------------------------
        @Override
        public ArrayList<ResultsGroup> processDatabank(String project, String task, String databankName, ArrayList<ResultsGroup> databankRG) throws Exception {
            return databankRG;
        }
    }

    2/ Danach ruft der DatabankColumn-Code den Wert der Custom Analysis ab

    Wir verwenden rg.specialValues, um den Wert aus CA_MALength abzurufen
    package SQ.Columns.Databanks;
    import com.strategyquant.lib.*;
    import com.strategyquant.datalib.*;
    import com.strategyquant.tradinglib.*;
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    // Created in France by Emmanuel Bouillant-Evrard 
    public class StratSettingsMALength extends DatabankColumn 
    {
      public static final Logger Log = LoggerFactory.getLogger(StratSettingsMALength.class);
      public StratSettingsMALength()
      {
        super("MALength Settings", DatabankColumn.Decimal2, ValueTypes.Maximize, 0, 0, 100); 
      }
      //------------------------------------------------------------------------
      /**
       * This method should return computed value of this new column. You should typically compute it from the list of orders 
       * or from some already computed statistical values (other databank columns). 
       */
      @Override
      public String getValue(ResultsGroup rg, String resultKey, byte direction, byte plType, byte sampleType) throws Exception 
      {   
        try 
        {
          double value = rg.specialValues().getDouble("CA_MALength", -1);
          if(value == -1) 
          {
            // this means value was not set
            return NOT_AVAILABLE;
          } else 
          {
            // return value converted to String
            return java.lang.Double.toString(value);
          }
        } catch(Exception e)
        {
          Log.error("Error StratSettingsMALength", e);
          return "";																																							       // "Error: " + e.getMessage();
        }
      }
    }

    3/ So installieren Sie es

    • Importieren Sie die Snippets im Code Editor
    • Alle kompilieren
    • Starten Sie StrategyQuant neu
    • Wählen Sie anschließend die Custom Analysis im Builder aus:

    Danach fügen wir diese neue Spalte zu einer Databank hinzu und lesen den Wert unserer Init-Regeln aus

    Wenn die Custom Analysis nicht mehr verwendet wird, muss die Databank-Spalte entfernt werden, um Fehler im Log zu vermeiden

    Mein Name ist Emmanuel Bouillant-Evrard, Ingenieur mit Spezialisierung auf Finanzen. Ich war 24 Jahre lang in Forschung und Entwicklung im Finanzbereich in den USA, Kanada und Frankreich tätig.

    Die Wertentwicklung in der Vergangenheit ist keine Garantie für zukünftigen Erfolg. Alle Informationen sollten ausschließlich zu Bildungszwecken betrachtet werden. Von der Regierung der VEREINIGTEN STAATEN vorgeschriebener Haftungsausschluss – Die Commodity Futures Trading Commission weist darauf hin: Der Handel mit Futures und Optionen birgt große potenzielle Erträge, aber auch große potenzielle Risiken. Sie müssen sich der Risiken bewusst und bereit sein, diese zu akzeptieren, um an den Futures- und Optionsmärkten zu investieren. Handeln Sie nicht mit Geld, dessen Verlust Sie sich nicht leisten können. Dies ist weder eine Aufforderung noch ein Angebot zum Kauf/Verkauf von Futures, Aktien oder darauf basierenden Optionen. Es wird keine Zusicherung gegeben, dass irgendein Konto Gewinne oder Verluste erzielen wird oder wahrscheinlich erzielen wird, die den in diesem Dokument besprochenen ähnlich sind. Die vergangene Wertentwicklung eines Handelssystems oder einer Handelsmethodik lässt nicht notwendigerweise auf zukünftige Ergebnisse schließen. CFTC-REGEL 4.41 – HYPOTHETISCHE ODER SIMULIERTE PERFORMANCE-ERGEBNISSE UNTERLIEGEN BESTIMMTEN EINSCHRÄNKUNGEN. IM GEGENSATZ ZU EINER AUFZEICHNUNG DER TATSÄCHLICHEN WERTENTWICKLUNG STELLEN SIMULIERTE ERGEBNISSE KEINEN TATSÄCHLICHEN HANDEL DAR. DA DIE TRADES NICHT AUSGEFÜHRT WURDEN, KÖNNEN DIE ERGEBNISSE AUSSERDEM DEN EINFLUSS BESTIMMTER MARKTFAKTOREN WIE ETWA MANGELNDE LIQUIDITÄT AUSGEGLICHEN HABEN. SIMULIERTE HANDELSPROGRAMME UNTERLIEGEN IM ALLGEMEINEN ZUDEM DER TATSACHE, DASS SIE IM NACHHINEIN ENTWICKELT WURDEN. ES WIRD KEINE ZUSICHERUNG GEGEBEN, DASS EIN KONTO GEWINNE ODER VERLUSTE ERZIELEN WIRD ODER WAHRSCHEINLICH ERZIELEN WIRD, DIE DEN DARGESTELLTEN ÄHNLICH SIND. ES WIRD KEINE ZUSICHERUNG GEGEBEN, DASS IRGENDEIN KONTO GEWINNE ODER VERLUSTE ERZIELEN WIRD ODER WAHRSCHEINLICH ERZIELEN WIRD, DIE DEN AUF DIESER WEBSITE BESPROCHENEN ÄHNLICH SIND. WENN SIE SICH ENTSCHEIDEN, ECHTES GELD ZU INVESTIEREN, SOLLTEN ALLE HANDELSENTSCHEIDUNGEN AN DEN FINANZMÄRKTEN IHRE EIGENEN SEIN.
    Kostenlos

    Dateien

    • Snippet-ReadStrategyInitVariables.sqm20 KBGesperrt

    Der Download wird nach dem Kauf oder mit einem aktiven Tier freigeschaltet.

    Details
    Version1.0.0
    Veröffentlicht19. Oktober 2026
    Zuletzt aktualisiert2. November 2026
    AppSQ
    TypeSnippet
    AuthorEmmanuel
    App version145.3058
    Codebase categoryCustom Analysis