Page 1 of 1

if-Anweisung mit mehreren und-verknüpften Bedingungen

Posted: 17 Nov 2017 16:45
by Albert P
Hallo,
ich experimentiere in ersten Schritten mit Express und habe eine eigentlich sehr simple Anweisung geschrieben, die auf den ersten Blick kein Problem ergeben dürfte. Die Series "senti" soll, wenn ich sie plotte, immer auf das Low der aktuellen Candle wechseln, wenn drei Kerzen mit absteigendem High auf eine Kerze folgen, deren High niedriger als die Candle davor war (also h[0]<h[1]<h[2]>h[3]). Und umgekehrt auf das High der jeweils aktuellen Kerzen, wenn dies genau umgekehrt der Fall ist, siehe zweite Zeile.

if(h[0]<h[1] and h[1]<h[2] and h[2]>h[3]) then senti=l[0];
if(h[0]>h[1] and h[1]>h[2] and h[2]<h[3]) then senti=h[0];

Das Problem: Egal, mit welchem Chart ich dies anwende, landet senti immer auf den Highs, auch, wenn bei manuellem Nachvollziehen nun eigentlich senti auf dem Low weiterlaufen müsste.
Ich mache irgendwas schrecklich Simples falsch, oder?

Albert P

Re: if-Anweisung mit mehreren und-verknüpften Bedingungen

Posted: 20 Nov 2017 10:55
by WHS Support
Hallo Albert,

Sie sollten im Editor wann immer möglich mit Klammern "()" arbeiten. Testen Sie es einmal mit dem modifizierten Code:

Code: Select all

Express Test

Vars

Series
senti;

Calculation
senti = senti[1];
if(h[0]<h[1]) and (h[1]<h[2]) and (h[2]>h[3]) then senti=l[0];
if(h[0]>h[1]) and (h[1]>h[2]) and (h[2]<h[3]) then senti=h[0];

Interpretation
begin
end

plot (senti, blue, 2);
Mit freundlichen Grüßen,
Timo
WH SELFINVEST