Hallo,
in diesem Code sind ja die Kriterien für den Einstieg in einen Trend-Trade vorgegeben.
Kann mir bitte daraus jemand einen Screener machen mit dem ich die Aktien finde, die sich in einem Aufwärtstrend befinden:
Wichtig wäre mir, dass ich nur aktien bekommen, die als zuletzt eine LL ausgebildet haben…
Vielen Dank!!!
ONCE HH = 0
ONCE HHprec = 0
ONCE LL = 0
ONCE LLprec = 0
if Not OnMarket Then
UseST = 0
ENDIF
cp = 3
IF TradePrice = 0 THEN
PositionSize1 = 1
ELSE
PositionSize1 = 1000 / sp //Compute PositionSize
ENDIF
once lastpoint = 0
if high[cp] >= highest[2*cp+1](high) then
PEAK = 1
else
PEAK = 0
endif
if low[cp] <= lowest[2*cp+1](low) then
TROUGH = -1
else
TROUGH = 0
endif
if PEAK = 1 then
TOPy = high[cp]
TOPx = barindex[cp]
endif
if TROUGH = -1 then
BOTy = low[cp]
BOTx = barindex[cp]
endif
if PEAK>0 and (lastpoint=-1 or lastpoint=0) then
//DRAWSEGMENT(lastX,lastY,TOPx,TOPy) COLOURED(127,255,0,1000)
//DRAWTEXT("■",TOPx,TOPy,Dialog,Bold,10) coloured(200,0,0,255)
lastpoint = 1
lastX = TOPx
lastY = TOPy
HHprec= HH
HH = TOPy
HHbar = TOPx
endif
if TROUGH<0 and (lastpoint=1 or lastpoint=0) then
//DRAWSEGMENT(lastX,lastY,BOTx,BOTy) COLOURED(255,0,0,255)
//DRAWTEXT("■",BOTx,BOTy,Dialog,Bold,10) coloured(0,200,0,255)
lastpoint = -1
lastX = BOTx
lastY = BOTy
LLprec= LL
LL = BOTy
LLbar = BOTx
endif
//TREND ATTEMPT
atr=AverageTrueRange[14](close)
if TOPy > TOPy[1] and topy<>lasttop then
//drawarrowup(barindex,low-atr/2) coloured(0,200,0)
lasttop=topy
trendup = 1
else
trendup = 0
endif
sp = close - 0
// Long
// ─── Persistente Variablen zurücksetzen wenn keine Position offen ───
IF NOT LongOnMarket THEN
TPReached = 0
TrailActive = 0
DynStop = 0
ENDIF
// ─── EINSTIEG ───
IF NOT LongOnMarket AND (HH > 0) AND (LL > LLprec) AND (LLprec > 0) AND (HH > HHprec) AND (HH > LL) AND (HHprec > LLprec) THEN
BUY Positionsize1 CONTRACT AT MARKET
Hallo! ich habe die Struktur-Logik aus deinem System herausgezogen und in einen ProScreener überführt.
Eine Klarstellung vorweg: In deinem Code ist LL einfach das letzte Tief, kein “Lower Low” im Sinne der Dow-Theorie — deine eigene Einstiegsbedingung verlangt ja LL > LLprec, es ist also ein höheres Tief (HL). Ich habe deine Anforderung deshalb so verstanden: der zuletzt bestätigte Pivot muss ein Tief sein, kein Hoch. Der Wert steckt also in der Korrektur, kurz vor dem nächsten Aufwärtsschub. Falls du etwas anderes gemeint hast, sag Bescheid.
// ProScreener - Aktien im Aufwaertstrend (HH + HL), letzter Pivot = Tief
// Logik uebernommen aus dem ProOrder-System von axmichi
cp = 3 // Balken links/rechts fuer die Pivot-Bestaetigung
maxAge = 20 // max. Alter des letzten Tiefs in Balken (gross setzen = kein Filter)
ONCE HH = 0
ONCE HHprec = 0
ONCE LL = 0
ONCE LLprec = 0
ONCE lastpoint = 0
ONCE TOPy = 0
ONCE BOTy = 0
ONCE BOTx = 0
ONCE LLbar = 0
// --- Pivot-Erkennung ---
if high[cp] >= highest[2*cp+1](high) then
PEAK = 1
else
PEAK = 0
endif
if low[cp] <= lowest[2*cp+1](low) then
TROUGH = -1
else
TROUGH = 0
endif
if PEAK = 1 then
TOPy = high[cp]
endif
if TROUGH = -1 then
BOTy = low[cp]
BOTx = barindex[cp]
endif
// --- Wechsel Hoch / Tief ---
if PEAK > 0 and (lastpoint = -1 or lastpoint = 0) then
lastpoint = 1
HHprec = HH
HH = TOPy
endif
if TROUGH < 0 and (lastpoint = 1 or lastpoint = 0) then
lastpoint = -1
LLprec = LL
LL = BOTy
LLbar = BOTx
endif
// --- Struktur: steigende Hochs und steigende Tiefs ---
trendOK = (HH > 0) and (LLprec > 0) and (LL > LLprec) and (HH > HHprec) and (HH > LL) and (HHprec > LLprec)
// --- Letzter bestaetigter Pivot ist ein Tief ---
lastIsLow = (lastpoint = -1)
// --- Alter des Tiefs und Abstand zum Tief ---
llAge = barindex - LLbar
if LL > 0 then
llDist = (close - LL) / LL * 100
else
llDist = 0
endif
SCREENER[trendOK and lastIsLow and llAge <= maxAge] (llAge AS "Bars seit Tief", llDist AS "% ueber Tief")