Fehlermeldung beim Code für Oil Strategie

Forums ProRealTime Deutsch forum ProOrder Support Fehlermeldung beim Code für Oil Strategie

  • This topic has 1 reply, 2 voices, and was last updated 1 day ago by avatarIván.
Viewing 2 posts - 1 through 2 (of 2 total)
  • #244911

    Hallo zusammen.

    Könnt Ihr mir helfen? Ich möchte eine Strategie Backtesten und benötige den richtigen Code dafür. Mithilfe von Copilot habe ich die Strategie-Parameter in einen Code schreiben lassen. Jedoch funktioniert er nicht. Könnte jemand bitte mal rüber schauen?

    Strategie:

    Handelsstrategie für Brent Oil (5-Minuten-Chart) in ProRealTime

    1. Basiswerte & Indikatoren
    Instrument: Brent Oil
    Zeiteinheit: 5-Minuten-Chart
    Indikatoren:
    Bollinger Bänder (Standard-Einstellungen)
    SMA200 (Gleitender Durchschnitt mit Periode 200)
    2. Einstiegskriterien (Order-Platzierung um 9:55 Uhr)
    Long Order:

    Bedingung: Schlusskurs des 9:50-Uhr-Kerzenbalkens liegt über dem SMA200.
    Einstieg: Oberes Bollinger Band von 9:50 Uhr.
    Ordertyp:
    Limit Buy Order, falls der aktuelle Kurs um 9:55 Uhr unter dem oberen Bollinger Band liegt.
    Stop Buy Order, falls der aktuelle Kurs um 9:55 Uhr über dem oberen Bollinger Band liegt.
    Short Order:

    Bedingung: Schlusskurs des 9:50-Uhr-Kerzenbalkens liegt unter dem SMA200.
    Einstieg: Unteres Bollinger Band von 9:50 Uhr.
    Ordertyp:
    Limit Sell Order, falls der aktuelle Kurs um 9:55 Uhr über dem unteren Bollinger Band liegt.
    Stop Sell Order, falls der aktuelle Kurs um 9:55 Uhr unter dem unteren Bollinger Band liegt.
    3. Stop-Loss & Take-Profit (CRV 2:1)
    Stop-Loss:

    Long Order: Stop-Loss auf dem unteren Bollinger Band von 9:50 Uhr.
    Short Order: Stop-Loss auf dem oberen Bollinger Band von 9:50 Uhr.
    Take-Profit:

    Berechnung der Bandbreite:
    Bandbreite
    =
    Oberes Bollinger Band

    Unteres Bollinger Band
    Bandbreite=Oberes Bollinger Band−Unteres Bollinger Band
    Long Order: Take-Profit = Einstiegspreis + (2 × Bandbreite).
    Short Order: Take-Profit = Einstiegspreis – (2 × Bandbreite).
    4. Ausstiegsregeln (Falls Trade oder Order noch offen ist)
    Falls der Trade um 21:40 Uhr noch offen ist:
    Market-Exit (Trade wird unabhängig vom Gewinn/Verlust geschlossen).
    Falls die Order bis 18:00 Uhr nicht ausgeführt wurde:
    Order wird storniert, inklusive Stop-Loss und Take-Profit.
    Zusätzliche Punkte:
    ✔ Jeden Tag nur eine Order: Entweder Long oder Short, basierend auf der SMA200-Bedingung.
    ✔ Trading nach festen Uhrzeiten: Alle Berechnungen basieren auf den Daten von 9:50 Uhr, Orderplatzierung um 9:55 Uhr.
    ✔ Striktes Risikomanagement: Stop-Loss immer festgelegt, Take-Profit mit festem CRV von 2:1.

    Der Code wurde erstellt aber leider mit Fehlermeldung:

    // Indikatoren

    indicator(“Handelsstrategie für Brent Oil”, shorttitle=”Brent Strategy”, overlay=true)

    SMA200 = sma[close](200)

    BollingerUp = bbands[close](20, 2)[1]

    BollingerLow = bbands[close](20, 2)[2]

     

    // Variablen für Zeit und Preis

    var float entryPrice = na

    var float stopLoss = na

    var float takeProfit = na

    var float bandWidth = na

     

    // Bedingung für Long Order

    if (hour(timenow) == 9 and minute(timenow) == 50)

    if (close > SMA200)

    entryPrice = BollingerUp

    stopLoss = BollingerLow

    bandWidth = BollingerUp – BollingerLow

    takeProfit = entryPrice + 2 * bandWidth

    if (close < BollingerUp)

    buy 1 contract at limit entryPrice

    else

    buy 1 contract at stop entryPrice

     

    // Bedingung für Short Order

    if (hour(timenow) == 9 and minute(timenow) == 50)

    if (close < SMA200)

    entryPrice = BollingerLow

    stopLoss = BollingerUp

    bandWidth = BollingerUp – BollingerLow

    takeProfit = entryPrice – 2 * bandWidth

    if (close > BollingerLow)

    sell 1 contract at limit entryPrice

    else

    sell 1 contract at stop entryPrice

     

    // Exit Regeln

    if (marketposition != 0)

    if (time > timenow(21, 40, 0))

    exitshort “Market Exit” from entry(“”), close

    if (time > timenow(18, 0, 0))

    exitshort “Cancel Order” from entry(“”), close

    if (marketposition == 1)

    exitlong from entry(“”), stoploss(“Stop Loss”, stopLoss)

    exitlong from entry(“”), takeprofit(“Take Profit”, takeProfit)

    else if (marketposition == -1)

    exitshort from entry(“”), stoploss(“Stop Loss”, stopLoss)

    exitshort from entry(“”), takeprofit(“Take Profit”, takeProfit)

     

    #244924

    Hola. Hier ist ein Code:

Viewing 2 posts - 1 through 2 (of 2 total)

Create your free account now and post your request to benefit from the help of the community
Register or Login