Gleitender Durchschnitt ( Moving Average )

Forums ProRealTime Deutsch forum ProOrder Support Gleitender Durchschnitt ( Moving Average )

  • This topic has 13 replies, 2 voices, and was last updated 4 years ago by avatarRim.
Viewing 14 posts - 1 through 14 (of 14 total)
  • #93303
    Rim

    Hallo,

    ich würde gerne den Indikator “Gleitender Durchschnitt” in automatisches Handelssystem programmieren.

    Eigentlich ganz einfach, besteht nur aus einer Linie, Aufwärtstrend grün und Abwärtstrend rot.

    Sobald der Aufwärtstrend anfängt, grüne Linie zeichnet sich, kommt es zum Einstieg long.

    Sobald der Abwärtstrend anfängt, rote Linie zeichnet sich, kommt es zum Einstieg short.

    Wenn es geht mit ganzen originalen Einstellungen wie “Berechnungsmethode, Anzahl Perioden” und so weiter wie bis “Angewandt auf”…

    Ideal wären die Standartsachen wie Stop Loss & Take Profit Möglichkeiten einzustellen sowie die Handelszeiten.

    Danke.

     

     

     

    #93333

    Sie können es mit einem einfachen Code wie folgt versuchen: https://www.prorealcode.com/topic/place-orders-when-a-curve-change-colour/#post-19898

    Die Strategie eröffnet Handelspositionen in Abhängigkeit von der Farbänderung eines gleitenden Durchschnitts. Sie können auch Stoploss und Takeprofit einstellen.

    #93398
    Rim

    Danke, ich habe es ausprobiert, es wurde aber nur ein Einstieg in Dax ausgelöst und bei EUR/USD nichts. Timeframe 1 min.

    #93503

    Um Ihnen die genaueste Antwort auf Ihr spezifisches Problem zu geben, geben Sie bitte den vollständigen Code Ihrer Strategie an. Vielen Dank.

    #93549
    Rim

    Ja, gerne. Aber es macht nicht ordentlich, nämlich viele Einstiege und Ausstiege, durcheinander.

    // Festlegen der Code-Parameter
    DEFPARAM CumulateOrders = False // Kumulieren von Positionen deaktiviert

    // Verhindert das Platzieren von neuen Ordern zum Markteintritt oder Vergrößern von Positionen vor einer bestimmten Uhrzeit
    noEntryBeforeTime = 095900
    timeEnterBefore = time >= noEntryBeforeTime

    // Verhindert das Platzieren von neuen Ordern zum Markteintritt oder Vergrößern von Positionen nach einer bestimmten Uhrzeit
    noEntryAfterTime = 213000
    timeEnterAfter = time < noEntryAfterTime

    // Bedingungen zum Einstieg in Long-Positionen
    indicator1 = TriangularAverage[5](close)
    indicator2 = TriangularAverage[5](close)
    c1 = (indicator1 >= indicator2)

    IF c1 AND timeEnterBefore AND timeEnterAfter THEN
    BUY 1 CONTRACT AT MARKET
    ENDIF

    // Bedingungen zum Einstieg in Short-Positionen
    indicator3 = TriangularAverage[5](close)
    indicator4 = TriangularAverage[5](close)
    c2 = (indicator3 <= indicator4)

    IF c2 AND timeEnterBefore AND timeEnterAfter THEN
    SELLSHORT 1 CONTRACT AT MARKET
    ENDIF

    // Stops und Targets
    SET STOP pLOSS 6

    #94201
    Rim
    #94202
    Rim

    danke für Ihre hilfe

    #94984
    Rim

    Hallo Nicolas,

    mit der Code hat es geklappt.

    Wie kann ich die ganzen Einstellungen dazu programmieren? (siehe Anhang)

    DEFPARAM CumulateOrders = False // Cumulating positions deactivated
    DEFPARAM FLATBEFORE = 080000
    DEFPARAM FLATAFTER = 180000

    X = 5 //moving average period
    takeprofit = 5 //takeprofit in points
    stoploss = 5 //stoploss in points

    ma = average[X](close)

    // the moving average is changing direction from bearish to bullish
    bullish = ma>ma[1] and ma[1]<ma[2]
    bearish = ma<ma[1] and ma[1]>ma[2]
    if not longonmarket and bullish then
    buy 1 share at market
    endif

    if not shortonmarket and bearish then
    sellshort 1 share at market
    endif

    set target pprofit takeprofit
    set stop ploss stoploss

    #94996
    Rim

    Ich habe auch bei “Average” geschaut, aber wie geht es mit

    Average[N,M](price)
    #95165

    So verwenden Sie die AVERAGE- Anweisung (siehe das zweite Beispiel der verlinkten Seite). Bitte benutzen Sie den Button "Code einfügen", wenn Sie in den Foren Code eingeben. Um perfekt zu verstehen, was Sie benötigen, posten Sie bitte Screenshots der Einträge und beenden Sie die Codierung.

    #95263
    Rim

    danke , jetzt habe ich verstanden

    #95411
    Rim

    Es funktioniert nicht ganz richtig.

    Eintieg und Ausstieg kommen bei der dritten Kerze, soll aber  bei der  zweiten sein.

    Mein Code:

     

    #95451

    Bitte verwenden Sie die Schaltfläche "Hinzufügen von PRT-Code", wenn Sie Code in Ihren Beitrag einfügen. Bestellungen werden nicht verzögert, der Code wird nur einmal beim Schließen des Kerzenständers gelesen und sie öffnen sich beim nächsten Kerzenständer Öffnen.

    #95581
    Rim

    Ich möchte jetzt mit farbwechsel versuchen. Was ist im code falsch bitte?

     

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

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