ale73a
break even trader
il manuale l'ho trovato allora...1,3,1 dovrebbero essere min max e default, il linguaggio dovrebbe essere metastock (anch'io avevo cercato su google ) ...allego il ts, che ho scovato nei meandri di un forum, l'autore l'aveva messo in chiaro quindi non credo ci siano problemi...l'ha testato una persona e mi ha detto che su certi titoli funziona su altri no, questa è una versione base...proviamo a ragionarci su x poi tradurlo su vt
pds:=Input("EMA periods",1,2520,7)/2;
spread:=Input("Up/Low EMA bands shift %",
-900,900,2)/200;
pk:=C<Ref(C,-1) AND Ref(C,-1)>Ref(C,-2);
pkVal:=ValueWhen(1,pk,Ref(C,-1));
tr:=C>Ref(C,-1) AND Ref(C,-1)<Ref(C,-2);
trVal:=ValueWhen(1,tr,Ref(C,-1));
pkpds:=If(pds>Cum(pk),Cum(pk),pds);
pkpds:=If(pkpds<1,1,pkpds);
pkEma:=pkVal*2/(pkpds+1)+PREV*(1-2/(pkpds+1));
pkEma:=pkEma*(1+spread);
trpds:=If(pds>Cum(tr),Cum(tr),pds);
trpds:=If(trpds<1,1,trpds);
trEma:=trVal*2/(trpds+1)+PREV*(1-2/(trpds+1));
trEma:=trEma*(1-spread);
Ema:=(pkEma+trEma)/2;
Ema;
pds:=Input("EMA periods",1,2520,7)/2;
spread:=Input("Up/Low EMA bands shift %",
-900,900,2)/200;
pk:=C<Ref(C,-1) AND Ref(C,-1)>Ref(C,-2);
pkVal:=ValueWhen(1,pk,Ref(C,-1));
tr:=C>Ref(C,-1) AND Ref(C,-1)<Ref(C,-2);
trVal:=ValueWhen(1,tr,Ref(C,-1));
pkpds:=If(pds>Cum(pk),Cum(pk),pds);
pkpds:=If(pkpds<1,1,pkpds);
pkEma:=pkVal*2/(pkpds+1)+PREV*(1-2/(pkpds+1));
pkEma:=pkEma*(1+spread);
trpds:=If(pds>Cum(tr),Cum(tr),pds);
trpds:=If(trpds<1,1,trpds);
trEma:=trVal*2/(trpds+1)+PREV*(1-2/(trpds+1));
trEma:=trEma*(1-spread);
Ema:=(pkEma+trEma)/2;
Ema;