Fehler wenn ich das System live schalte

Viewing 10 posts - 1 through 10 (of 10 total)
  • Author
    Posts
  • #128931 quote
    phoentzs
    Participant
    Master

    Hallo,

    ich habe mir aus verschiedenen Codes ein Breakout-system gebastelt. Backtest funktioniert bestens, aber wenn ich es live schalte, stoppt die Plattform sofort das System mit der Meldung “es ist ein Fehler im Programm”.

    Ich habe ihn aber noch nicht gefunden.

    Kann mir bitte jemand helfen und sagen woran es liegt?

    // Es werden keine Daten vor Start des Handelssystems geladen.
    // Im Fall eines ersten Starts dieses Handelssystems an einem Nachmittag, wird auf diese
    // Weise der nächste Tag abgewartet, um mögliche Kauf- und Verkauf-Order festzulegen.
    DEFPARAM PreLoadBars = 0
    // Die Position wird um 21 Uhr 45 (lokale Zeitzone) glattgestellt.
    
    DEFPARAM FlatAfter = 214500
    
    // Keine neue Position nach dem Candlestick, der um 17 Uhr 15 schließt.
    LimitEntryTime = 150000
    // Marktanalyse beginnt mit dem 15 Minuten-Candlestick, der um 9 Uhr 15 schließt.
    StartTime = 091500
    // Feiertage wie 24. und 31. Dezember werden ausgeschlossen.
    IF (Month = 5 AND Day = 1) OR (Month = 12 AND (Day = 24 OR Day = 25 OR Day = 26 OR Day = 30 OR Day = 31)) THEN
    TradingDay = 0
    ELSE
    TradingDay = 1
    ENDIF
    // Die Variablen können je nach Wunsch individuell angepasst werden
    PositionSize = 1
    AmplitudeMax = 73  //80 82
    AmplitudeMin = 31  //33
    OrderDistance = 2  //2
    MinPercent = 1.7     //1
    // Diese Variable wird ein einziges Mal vor dem Start des Handelssystems initialisiert.
    ONCE StartTradingDay = -1
    // Die während des Tages sich verändernden Variablen werden
    // beim ersten Balken jeden neuen Börsentages initialisiert.
    IF (Time <= StartTime AND StartTradingDay <> 0) OR IntradayBarIndex = 0 THEN
    BuyLevel = 0
    SellLevel = 0
    BuyPosition = 0
    SellPosition = 0
    StartTradingDay = 0
    ELSIF Time >= StartTime AND StartTradingDay = 0 AND TradingDay = 1 THEN
    // Der Index des ersten Balkens des Börsentages wird gespeichert.
    IndexStartDay = IntradayBarIndex
    StartTradingDay = 1
    ELSIF StartTradingDay = 1 AND Time <= LimitEntryTime THEN
    // Für jeden Börsentag legen wir alle 15 Minuten fest:
    // höchster und niedrigster Kurs des Instrumentes seit StartTime
    // solange die Kauf- und Verkauf-Levels nicht festgelegt sind.
    IF BuyLevel = 0 OR SellLevel = 0 THEN
    UpperLevel = Highest[IntradayBarIndex - IndexStartDay + 1](High)
    LowerLevel = Lowest [IntradayBarIndex - IndexStartDay + 1](Low)
    // Berechnung des Abstands zwischen höchsten Wert
    // und niedrigstem Wert des Instrumentes seit StartTime
    DayDistance = UpperLevel - LowerLevel
    // Berechnung des gewünschten geringsten Abstands zur Berücksichtigung eines Durchbruchs
    // der höchsten oder der niedrigsten Werte durch Kurse für einen signifikanten Durchbruch.
    EcartMin = DayDistance * MinPercent / 100
    // Berechnung der Kauf- und Verkauf-Levels des Tages, sollten die Bedingungen vorliegen.
    IF DayDistance <= AmplitudeMax THEN
    IF SellLevel = 0 AND (Close - LowerLevel) >= EcartMin THEN
    SellLevel = LowerLevel + OrderDistance
    ENDIF
    IF BuyLevel = 0 AND (UpperLevel - Close) >= EcartMin THEN
    BuyLevel = UpperLevel - OrderDistance
    ENDIF
    ENDIF
    ENDIF
    // Erstellen der Kauf- und Leerverkauf-Order für den Tag, wenn die Bedingungen vorliegen
    IF SellLevel > 0 AND BuyLevel > 0 AND (BuyLevel - SellLevel) >= AmplitudeMin THEN
    IF BuyPosition = 0 THEN
    IF LongOnMarket THEN
    BuyPosition = 1
    ELSE
    BUY PositionSize CONTRACT AT BuyLevel STOP
    ENDIF
    ENDIF
    IF SellPosition = 0 THEN
    IF ShortOnMarket THEN
    SellPosition = 1
    ELSE
    SELLSHORT PositionSize CONTRACT AT SellLevel STOP
    ENDIF
    ENDIF
    ENDIF
    ENDIF
    // Festlegung der Ausstiegsbedingungen, wenn Kauf-Position oder Leerverkauf-Position eingenommen wurde.
    IF LongOnMarket AND ((Time <= LimitEntryTime AND SellPosition = 1) OR Time > LimitEntryTime) THEN
    SELL AT SellLevel STOP
    ELSIF ShortOnMarket AND ((Time <= LimitEntryTime AND BuyPosition = 1) OR Time > LimitEntryTime) THEN
    EXITSHORT AT BuyLevel STOP
    ENDIF
    
    super = Supertrend[2.6,4]
    superl = close crosses under super
    supers = close crosses over super
    
    if longonmarket and superl then
    sell at market
    endif
    if shortonmarket and supers then
    exitshort at market
    endif
    
    // Festlegen des höchsten Verlustrisikos pro Position
    // im Falle eines ungünstigen Kursverlaufs des Instruments
    SET STOP LOSS AmplitudeMax
    SET TARGET %PROFIT 2.1  //120 2.1
    
    
    //************************************************************************
    //trailing stop function
    trailingstart = 9            //9   trailing will start @trailinstart points profit
    trailingstep  = 3             //2  trailing step to move the "stoploss"
    //reset the stoploss value
    IF NOT ONMARKET THEN
    newSL=0
    ENDIF
    //manage long positions
    IF LONGONMARKET THEN
    //first move (breakeven)
    IF newSL=0 AND close-tradeprice(1)>=trailingstart*pipsize THEN
    newSL = tradeprice(1)+trailingstep*pipsize
    ENDIF
    //next moves
    IF newSL>0 AND close-newSL>=trailingstep*pipsize THEN
    newSL = newSL+trailingstep*pipsize
    ENDIF
    ENDIF
    //manage short positions
    IF SHORTONMARKET THEN
    //first move (breakeven)
    IF newSL=0 AND tradeprice(1)-close>=trailingstart*pipsize THEN
    newSL = tradeprice(1)-trailingstep*pipsize
    ENDIF
    //next moves
    IF newSL>0 AND newSL-close>=trailingstep*pipsize THEN
    newSL = newSL-trailingstep*pipsize
    ENDIF
    ENDIF
    //stop order to exit the positions
    IF newSL>0 THEN
    SELL AT newSL STOP
    EXITSHORT AT newSL STOP
    ENDIF
    
    #129013 quote
    Nicolas
    Keymaster
    Master

    Es ist schwierig, ohne die wirklich genaue Fehlermeldung zu antworten, aber versuchen Sie, die Zeilen 44 und 45 zu ändern mit:

    UpperLevel = Highest[max(1,IntradayBarIndex - IndexStartDay + 1)](High)
    LowerLevel = Lowest [max(1,IntradayBarIndex - IndexStartDay + 1)](Low)
    phoentzs thanked this post
    #129041 quote
    phoentzs
    Participant
    Master

    Leider wars das nicht. Wo genau finde ich den Button um einen Bericht per Email zu schicken?

    Oder haben Sie noch eine Idee?

    #129043 quote
    phoentzs
    Participant
    Master

    Ich finde nirgends einen Fehlercode oder so. Die Plattform sagt mir nur, es wurde wegen einem Fehler gestoppt.

    Hat das vielleicht etwas mit

    Preloadbars=0

    zu tun?

    #129073 quote
    Nicolas
    Keymaster
    Master

    Was ist die Plattformversion? Das Tool für technische Berichte befindet sich im Menü Hilfe in der Software.

    #129077 quote
    phoentzs
    Participant
    Master

    V10.3

    Sehe ich später mal nach. Danke.

    #129113 quote
    phoentzs
    Participant
    Master

    Ich habe einen Bericht per Mail gesendet. Kommt das bei Ihnen an @Nicolas?

    #129117 quote
    phoentzs
    Participant
    Master

    Ich habe die Codes nochmal verglichen mit denen, die ähnlich hier auf der Plattform sind. Es muss irgendetwas mit meinen zugefügten Codes zu tun habe, denk ich. Bin leider kein Programmierer.

    Entweder mein Supertrendstop oder der BE-Trailing-Code.

    bertrandpinoy thanked this post
    #129136 quote
    robertogozzi
    Moderator
    Master

    Versuchen Sie, Zeile 4 zu entfernen.

    Möglicherweise sind nicht genügend Balken vorhanden, um SuperTrend und Highest / Lowest zu berechnen.

    phoentzs thanked this post
    #129307 quote
    phoentzs
    Participant
    Master

    Ich habe Preloloadbars=20 gesetzt, damit scheint es zu funktionieren.

    Vielen Dank.

Viewing 10 posts - 1 through 10 (of 10 total)
  • You must be logged in to reply to this topic.

Fehler wenn ich das System live schalte


ProOrder: Automatischer Handel & Backtesting

New Reply
Author
author-avatar
phoentzs @phoentzs Participant
Summary

This topic contains 9 replies,
has 3 voices, and was last updated by phoentzs
5 years, 9 months ago.

Topic Details
Forum: ProOrder: Automatischer Handel & Backtesting
Language: German
Started: 04/30/2020
Status: Active
Attachments: No files
Logo Logo
Loading...