Hallo,
ich wollte mal fragen ob mir hier jemand helfen kann.
Dieser einfache Code soll so verändert werden, dass der Stop Loss nachgezogen wird wenn der Kurs 50 % seines Zieles erreicht hat.
Das wären beim Target von 62 Punkten 31 Punkte.
Hier der Code:
Defparam flatafter = 173000
if (time = 170000) then
buy 1 contracts at market
endif
SET STOP Ploss 34
set target pprofit 62
Wäre gut wenn es in % angegeben wäre, aber auch die Variante in Punkten würde gehen.
Vielleicht kann jemand helfen?!
Freue mich auf antworten
LG axmichi
Hallo und Danke,
ich gebe also einfach nur das hier in den Code ein?
IF breakevenLevel>0 THEN
SELL AT breakevenLevel STOP 31
ENDIF
Ist das richtig
Danke Nicolas, habe nach langen versuchen den Code zum laufen bekommen.
Jetzt habe ich noch eine Nachfrage
Wie wäre der Code zu ändern, wenn zum Beispiel bei einer Gap Strategie der Take Profit jeden Tag anders wäre und ich möchte, das der Stop Los auf Breakeven gezogen wird, wenn das Ziel (Take Profit) zu 80 % erreicht ist.
Geht das auch?
Lieben Gruß
Hallo, ist das Grundsätzlich möglich den Breakeven Stop prozentual nachzuziehen?
Gruß axmichi
Du kannst den Stop setzen, wie du willst (nur nicht zu nahe an den aktuellen Kurs (minimum stop distance beachten)). Positionperf gibt dir die Performance der aktuellen Position in %. Damit kannst du dir das bauen wie du willst.
Hi und danke für die Antwort, leider ist mir ja nicht klar wie ich bei einem Code den Break even stopp in % im code umsetzen soll??
Ich will dir gerne helfen, aber ich habe dein Problem nicht richtig verstanden. Was soll dein Programm genau machen?
Breakeven stop heisst ja den Stop auf deinen Kaufpreis zu ziehen und das willst du machen, wenn die Position XX% Gewinn hat? Fuer das Ausrechnen dieses Gewinns, XX% von was den?
Gerade codiert diese breakeven Funktion mit Prozentsatz anstelle von Punkten. Ich hoffe es hilft!
defparam cumulateorders = false
startBreakeven = 0.1 //how much percentage in price gain to activate the breakeven function?
PercentToKeep = 0.05 //how much percentage in price to keep in profit above of below our entry price when the breakeven is activated (beware of spread)
c1 = RSI[14] crosses over 50
if c1 then
BUY 1 LOT AT MARKET
SET STOP %LOSS 1
endif
//reset the breakevenLevel when no trade are on market
IF NOT ONMARKET THEN
breakevenLevel=0
ENDIF
// --- BUY SIDE ---
//test if the price have moved favourably of "startBreakeven" percent already
IF LONGONMARKET AND positionperf>=startBreakeven THEN
//calculate the breakevenLevel
PointsToKeep = (tradeprice(1)/100)*PercentToKeep
breakevenLevel = tradeprice(1)+PointsToKeep
ENDIF
//place the new stop orders on market at breakevenLevel
IF breakevenLevel>0 THEN
SELL AT breakevenLevel STOP
ENDIF
// --- end of BUY SIDE ---
// --- SELL SIDE ---
//test if the price have moved favourably of "startBreakeven" percent already
IF SHORTONMARKET AND positionperf>=startBreakeven THEN
//calculate the breakevenLevel
PointsToKeep = (tradeprice(1)/100)*PercentToKeep
breakevenLevel = tradeprice(1)-PointsToKeep
ENDIF
//place the new stop orders on market at breakevenLevel
IF breakevenLevel>0 THEN
EXITSHORT AT breakevenLevel STOP
ENDIF
// --- end of SELL SIDE ---
Natürlich musst du es an deine eigene Strategie anpassen!
Wow !!!! ,danke!!!!
meine Strategie ist ne Gap Strategie, dabei ändert sich ja ständig das Gewinnziel. – mal ist das Gap größer mal kleiner.
Der Stop ist immer gleich! Ich wollte nun dass der Stop auf Breakeven gezogen wird, wenn der Kurs z.B. 50 % des Gewinnzieles erreicht hat.
mal sehen ob ich den code in meine Strategie integriert bekomme?!
Danke schon mal
LG
once sl=0
IF abs(close-positionprice)>=Gapsize/2 and not sl THEN //Gapsize ist dein Gapgrösse
sl=1
ENDIF
IF sl THEN
IF longonmarket THEN
sell at positionprice stop
ELSIF shortonmarket THEN
exitshort at positionprice stop
ENDIF
ENDIF
IF not onmarket THEN
sl=0
ENDIF
Das hier sollte den Job erledigen. GapSize ist dein Gewinnziel.
Hi und danke, aber ich bin wohl einfach nicht fit genug.
Schaut mal: das hier ist der Code wo der Stop nachgezogen werden soll, das natürlich erst bei einer Gapgröße von 10 Punkten, von 3 – 10 Punkten bleibt das system ohne die Break even variante
//Gapsystem
defparam preloadbars=10000
defparam flatafter=220000
timetotrade=time=080000
nbpoint=3
if time=220000 then
close220000=close
endif
if intradaybarindex=0 then
lastclose220000=close220000
endif
if not longonmarket and timetotrade and close <= lastclose220000-nbpoint*pointsize then
buy 1 share at market
sell at lastclose220000 limit
endif
if longonmarket then
sell at lastclose220000 limit
endif
if not shortonmarket and timetotrade and close >= lastclose220000+nbpoint*pointsize then
sellshort 1 share at market
exitshort at lastclose220000 limit
endif
if shortonmarket then
exitshort at lastclose220000 limit
endif
set stop ploss 57
___________________________________________________
Wie ich es auch integriert hatte es hat nie gebacktestet.
Danke Euch schon mal
Lieben Gruß
Das ist doch nur copy/paste. Fuege meinen code deinem hinzu und dann noch gapsize=abs(close-lastclose220000). Hast du das probiert?
Hi, 🙂
DANKE DIR!!!
Das hat funktioniert.
Ich bin Happy
Hast du hier auch schon mal nen eigenen Ansatz gepostet??
Lieben Gruß
Mit eigenem Ansatz meinst du, ob ich schon eine meiner Straegien hier veröffentlicht habe? Dann ist die Antwort, bis jetzt noch nicht. 🙂