Hallo an alle,
anbei findet ihr einen PRT-Code für ein Handelssystem, welches auf den Wechsel der Heikin-Ashi-Kerzen basiert. Mein Problem ist das mein Stop Loss nicht funktioniert. Anhand der Bilder ist zu sehen, dass der Stop Loss nicht auf dem tiefsten Tief der letzten 5 Perioden gelegt wird. Der Stop Loss müsste auf der schwarzen Linie unterhalb der Heikin-Ashi-Kerzen liegen. Kann mir jemand sagen wo mein Fehler im PRT-Code liegt? Warum wird der Stop Loss nicht auf der schwarzen Linie platziert?
Für eure Rückmeldungen sage ich jetzt schoneinmal Danke!!!
DEFPARAM CUMULATEORDERS =false
defparam preloadbars = 1000
//Heikin-Ashi Berechnung
xClose = (Open+High+Low+Close)/4
xLow = Min(xOpen, xClose)
if(barindex>2) then
xOpen = (xOpen[1] + xClose[1])/2
endif
//Heikin-Ashi Bedingungen
c1 = xClose>xOpen AND xClose[1]>xOpen[1] AND xClose[2]<xOpen[2] AND xClose[3]<xOpen[3] AND xClose[4]<xOpen[4]
//Signal-Berechnung
If c1 Then
Signal = 1
Else
Signal = 0
Endif
// Bedingungen zum Einstieg in Long-Positionen
IF NOT LongOnMarket AND Signal = 1 THEN
BUY 1 CONTRACTS AT MARKET
ENDIF
// Stops und Targets: Legen Sie hier schützende Stops und Profit Targets fest
SET TARGET PPROFIT 50
SET STOP PLOSS close - Lowest[5](xLow) //Stop Loss doesnt work??????
Hallo blumtste,
könnte daran liegen, dass er in der aktuellen Kerze den close und das lowest[x](low) noch nicht kennt.
Probier doch mal:
SET STOP PLOSS close[1] - Lowest[5](xLow)[1]
Hilft das weiter?
So ein ähnliches Problem hatte ich Anfangs auch mal mit dem LowestLow.
Bei mir war das die Lösung.
LG,
Soma
Hallo Soma,
danke für deine schnelle Antwort. Aber leider hat mich dein Vorschlag nicht zum Ziel gebracht. Nach wievor setzt PRT den Stop Loss 2 Punkte unter das Open. Er müsste aber auf der schwarzen Linie gesetzt werden. Die schwarze Linie ist ein simpler Indikator, der auf dem Lowest[5](Low) beruht. auch mit einer Call-Funktion des Indikators kann ich den Stop Loss nicht auf der schwarzen Linie platzieren.
LG blumste
Hallo blumste,
die schwarze Linie hast du sicher als eigenen Indikator programmiert.
Zieh doch mal den Code für den Indikator mit in den Handelssystemcode (die Zeile mit return … löschen).
Dann könntest du für den Ausstieg programmieren:
if longonmarket and low<="Variable des Indikators" then
sell at market
endif
Hallo,
ich habe es nicht ausprobiert, aber vielleicht hilft es auch den Stopp-Wert in Klammern zu setzen und dann ein “*PointSize” zu ergänzen, also
SET STOP PLOSS (close – Lowest[5])*PointSize
VG,
Percy