Nach Positionsschließung keine neue Order direkt ausführen

Viewing 15 posts - 16 through 30 (of 42 total)
  • Author
    Posts
  • #183322 quote
    MatzeDue
    Participant
    Junior

    hey,

    leider ändert es nichts.

    Hier mal anbei ein Screenshot: Der Kauf sollte in der 5min-Kerze mit dem weißen Pfeil ausgeführt werden.

    Wie müsste ich den Code ändern?

    Bildschirmfoto-2021-12-14-um-21.20.46.png Bildschirmfoto-2021-12-14-um-21.20.46.png
    #183328 quote
    robertogozzi
    Moderator
    Master

    Wenn Sie möchten, dass nur CLOSE über dem Durchschnitt liegt, müssen Sie CLOSE in Zeile 7 und vielleicht auch in den Zeilen 16 und 17 verwenden, je nachdem, was Sie bevorzugen.

    MatzeDue thanked this post
    #183845 quote
    MatzeDue
    Participant
    Junior

    Hi Roberto,

    das klappt danke Dir.

    Ich hätte noch einmal zwei Fragen, um mein Setup zu optimieren.

    1. wie kann ich Pivot in mein System programmieren? Ich möchte, dass meine Position im 15 min Chart bei dem R2 des 2-Stunden-Pivots geschlossen wird, sobald eine Kerze den PivotPunkt R2 während ihrer Periode überschreitet.
    2. ich möchte nur einen Kauf auslösen, wenn zwei EMA’s (20 und 50) maximal 20 Punkte, bspw. beim S&P 500 von einander entfernt liegen.

    Wie würde für diese beiden Bedingungen der Code lauten?

    Es wäre fantastisch, wenn mir hier jemand weiterhelfen kann. Besten Dank im Voraus.

    #183870 quote
    robertogozzi
    Moderator
    Master

    Ich werde es Ihnen so schnell wie möglich zukommen lassen.

    MatzeDue thanked this post
    #184137 quote
    MatzeDue
    Participant
    Junior

    Hi Roberto,

    wie sieht es denn aus?

    Hättest Du schon eine Rückmeldung?

    #184179 quote
    robertogozzi
    Moderator
    Master

    Möchten Sie einen neuen Code oder möchten Sie einen bestehenden Code ändern? Wenn es bereits existiert, posten Sie bitte den Code, den Sie ändern möchten.

    #184233 quote
    MatzeDue
    Participant
    Junior

    Gerne kann der folgende Code mit den oben genannten Bedingungen erweitert werden.

    1. Long Exit im Pivot R2
    2. nur Long Entry, wenn EMA 20 und EMA 50 max 20 Punkte voneinander entfernt
    3. Stopp-Loss bei Open < low[2]

    Vielen Dank vorab

    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    // Festlegen der Code-Parameter
    DEFPARAM CumulateOrders = False // Kumulieren von Positionen deaktiviert
    TimeFrame(5 minute)
    ONCE Flag = 0
    // Bedingungen zum Einstieg in Long-Positionen
    indicator1 = ExponentialAverage[8](totalPrice)
    c1 = (open > indicator1)
    IF c1 AND Not OnMarket AND Flag = 0 THEN
       BUY 1 CONTRACT AT MARKET
       Flag = 1
    ENDIF
    // Bedingungen zum Ausstieg von Long-Positionen
    indicator2 = ExponentialAverage[8](totalPrice)
    c2 = (open < indicator2)
    c3 = (open < low[2])
    IF c2 OR c3 AND LongOnMarket THEN
       SELL AT MARKET
    ENDIF
    IF c2 THEN
       Flag = 0
    ENDIF
    //
    Timeframe(default)
    #184427 quote
    robertogozzi
    Moderator
    Master

    Los geht’s:

    // Festlegen der Code-Parameter
    DEFPARAM CumulateOrders = False // Kumulieren von Positionen deaktiviert
    Timeframe(2h,UpdateOnClose)                          //2h
    // Pivot calculations
    Pivot = (High + Low + Close) / 3       //Pivot
    ResR1 = Pivot + (Pivot - low)
    ResR2 = Pivot + (high - low)
    ResR3 = high + (2 * (Pivot - low))
    SupS1 = Pivot - (high - Pivot)
    SupS2 = Pivot - (high - low)
    SupS3 = low - (2 * (high - Pivot))
    //
    Timeframe(default)                                   // 15min
    ONCE Flag = 0
    // Bedingungen zum Einstieg in Long-Positionen
    indicator1 = ExponentialAverage[8](totalPrice)
    c1 = (open > indicator1)
    Ema20 = average[20,1](close)
    Ema50 = average[50,1](close)
    Distance  = (abs(Ema20 - Ema50) <= 20 * pipsize)
    IF c1 AND Not OnMarket AND Flag = 0 AND Distance THEN
       BUY 1 CONTRACT AT MARKET
       Flag = 1
    ENDIF
    // Bedingungen zum Ausstieg von Long-Positionen
    indicator2 = ExponentialAverage[8](totalPrice)
    c2 = (open < indicator2)
    c3 = (open < low[2])
    c4 = close CROSSES OVER ResR2
    IF (c2 OR c3 OR c4) AND LongOnMarket THEN
       SELL AT MARKET
    ENDIF
    IF c2 THEN
       Flag = 0
    ENDIF
    MySystemPIVOT.itf
    #185195 quote
    MatzeDue
    Participant
    Junior

    Hi Roberto,

    ich bräuchte nochmal deine Hilfe.

    Wie kann ich es programmieren, dass nach einer Positionsschließung, nicht sofort der nächste CS erneut eine Position eröffnet, sondern eine Kerze ablaufen muss?

    Geht das mit einer Flag? Wenn wie würde dann der Code lauten?

    Danke Dir.

    #185217 quote
    robertogozzi
    Moderator
    Master

    Ich habe die TradeON-Flagge hinzugefügt:

    // Festlegen der Code-Parameter
    DEFPARAM CumulateOrders = False // Kumulieren von Positionen deaktiviert
    Timeframe(2h,UpdateOnClose)                          //2h
    // Pivot calculations
    Pivot = (High + Low + Close) / 3       //Pivot
    ResR1 = Pivot + (Pivot - low)
    ResR2 = Pivot + (high - low)
    ResR3 = high + (2 * (Pivot - low))
    SupS1 = Pivot - (high - Pivot)
    SupS2 = Pivot - (high - low)
    SupS3 = low - (2 * (high - Pivot))
    //
    Timeframe(default)                                   // 15min
    ONCE Flag    = 0
    ONCE TradeON = 1
    // Bedingungen zum Einstieg in Long-Positionen
    indicator1 = ExponentialAverage[8](totalPrice)
    c1 = (open > indicator1)
    Ema20 = average[20,1](close)
    Ema50 = average[50,1](close)
    Distance  = (abs(Ema20 - Ema50) <= 20 * pipsize)
    IF c1 AND Not OnMarket AND Flag = 0 AND Distance AND TradeON THEN
       BUY 1 CONTRACT AT MARKET
       Flag    = 1
       TradeON = 0
    ENDIF
    // Bedingungen zum Ausstieg von Long-Positionen
    indicator2 = ExponentialAverage[8](totalPrice)
    c2 = (open < indicator2)
    c3 = (open < low[2])
    c4 = close CROSSES OVER ResR2
    IF (c2 OR c3 OR c4) AND LongOnMarket THEN
       SELL AT MARKET
    ENDIF
    IF c2 THEN
       Flag = 0
    ENDIF
    IF Not OnMarket AND TradeON[1] = 0 THEN
       TradeON = 1
    ENDIF
    MatzeDue thanked this post
    #185306 quote
    MatzeDue
    Participant
    Junior

    Hi Roberto,

    danke Dir.

    Ich werde noch ein wenig ausprobieren. Bisher hat es nicht zu der gewünschten Verbesserung geführt.

    Ich habe noch ein weiteres Anliegen:

    Wie kann ich eine Verkaufsbedingung schreiben, dass die große rote Kerze während sie das Low der höchsten grünen Kerze (gelbe Linie aus dem Bild) nach unten crossed sofort einen Verkauf auslöst. – Nicht erst bei der nächsten Kerze.

    Danke vorab.

    Bildschirmfoto-2022-01-12-um-20.59.57.png Bildschirmfoto-2022-01-12-um-20.59.57.png
    #185334 quote
    robertogozzi
    Moderator
    Master

    Hier ist es (habe ich noch nicht probiert):

    // Festlegen der Code-Parameter
    DEFPARAM CumulateOrders = False // Kumulieren von Positionen deaktiviert
    Timeframe(2h,UpdateOnClose)                          //2h
    // Pivot calculations
    Pivot = (High + Low + Close) / 3       //Pivot
    ResR1 = Pivot + (Pivot - low)
    ResR2 = Pivot + (high - low)
    ResR3 = high + (2 * (Pivot - low))
    SupS1 = Pivot - (high - Pivot)
    SupS2 = Pivot - (high - low)
    SupS3 = low - (2 * (high - Pivot))
    //
    Timeframe(default)                                   // 15min
    ONCE Flag    = 0
    ONCE TradeON = 1
    ONCE HIbar   = 0
    Bullish      = close > open
    Bearish      = close < open
    IF Bullish THEN
       IF Bearish[1] THEN
          HIbar = BarIndex
       ELSE
          IF high > high[BarIndex-HIbar] THEN
             HIbar = BarIndex
          ENDIF
       ENDIF
    ENDIF
    // Bedingungen zum Einstieg in Long-Positionen
    indicator1 = ExponentialAverage[8](totalPrice)
    c1 = (open > indicator1)
    Ema20 = average[20,1](close)
    Ema50 = average[50,1](close)
    Distance  = (abs(Ema20 - Ema50) <= 20 * pipsize)
    IF c1 AND Not OnMarket AND Flag = 0 AND Distance AND TradeON THEN
       BUY 1 CONTRACT AT MARKET
       Flag    = 1
       TradeON = 0
    ENDIF
    // Bedingungen zum Ausstieg von Long-Positionen
    indicator2 = ExponentialAverage[8](totalPrice)
    c2 = (open < indicator2)
    c3 = (open < low[2])
    c4 = close CROSSES OVER ResR2
    IF (c2 OR c3 OR c4) AND LongOnMarket THEN
       SELL AT MARKET
    ENDIF
    IF c2 THEN
       Flag = 0
    ENDIF
    IF Not OnMarket AND TradeON[1] = 0 THEN
       TradeON = 1
    ENDIF
    IF OnMarket AND close > low[BarIndex-HIbar] THEN
       SELL AT low[BarIndex-HIbar] STOP
    ENDIF
    MatzeDue thanked this post
    #185618 quote
    MatzeDue
    Participant
    Junior

    Hi Roberto,

    es klappt!

    Kannst du mir das ebenfalls noch für Long programmieren, dass die Position geschlossen wird, sobald das High der Vor-Vor-Kerze überschritten wird. (siehe Bild)

    Außerdem wollte ich noch einen Verkauf einbauen, sobald eine Kerze den Pivot ResR4 überschreitet. Mit folgendem Code klappt es nicht.

    Was ist hier falsch:

    if longonmarket and high > ResR4 then
    sell at ResR4 stop
    endif

    Es wäre toll, wenn Du beide Punkte in den Code integrieren könntest.

    Danke.

    <!–more–>

    Bildschirmfoto-2022-01-16-um-14.44.39.png Bildschirmfoto-2022-01-16-um-14.44.39.png
    #185726 quote
    robertogozzi
    Moderator
    Master

    Soll ich eine LONG-Position schließen, weil sie ein Maximum überschreitet?

    #185747 quote
    MatzeDue
    Participant
    Junior
    1. Eine Long-Position soll geschlossen werden, wenn das ResR4 überschritten wird.
    2. Eine Short-Position soll geschlossen werden, wenn das High der Vor-Vor-Kerze überschritten wird.

    Dankeschön

Viewing 15 posts - 16 through 30 (of 42 total)
  • You must be logged in to reply to this topic.

Nach Positionsschließung keine neue Order direkt ausführen


ProOrder: Automatischer Handel & Backtesting

New Reply
Author
author-avatar
MatzeDue @matzedue Participant
Summary

This topic contains 41 replies,
has 3 voices, and was last updated by MatzeDue
4 years, 1 month ago.

Topic Details
Forum: ProOrder: Automatischer Handel & Backtesting
Language: German
Started: 12/08/2021
Status: Active
Attachments: 10 files
Logo Logo
Loading...