yukarıdaki formülün farklı bir versiyonu
Factor:=Input("Factor",1,10,3);
Pd:=Input("ATR Periods",1,200,10);
Up:=MP()+(factor*ATR(Pd));
Dn:=MP()-(factor*ATR(Pd));
Cu:=Cross(C,LLV(Up,13));
Cd:=Cross(HHV(Dn,13),C);
I:=Cum(IsDefined(Cd+Cu))=1;
Td:=ValueWhen(1,Cu+Cd+I,Cu-Cd);
I:=Cum(IsDefined(Cd+Cu))=2;
Hs:=Dn=HighestSince(1,I+Cross(Td,0),Dn);
Ls:=Up=LowestSince(1,I+Cross(0,Td),Up);
Dnx:=ValueWhen(1,Hs,Dn);
Upx:=ValueWhen(1,Ls,Up);
SuperTrend:=If(Td=1,Dnx,Upx);
SuperTrend;

kaynak https://forum.metastock.com/posts/t1...rend-Indicator

matriks için mp() yerine (H+L)/2 yazarak düzenlersek
Factor:=Input("Factor",1,10,3);
Pd:=Input("ATR Periods",1,200,10);
Up:=(H+L)/2+(factor*ATR(Pd));
Dn:=(H+L)/2-(factor*ATR(Pd));
Cu:=Cross(C,LLV(Up,13));
Cd:=Cross(HHV(Dn,13),C);
I:=Cum(cd+Cu)=1;
Td:=ValueWhen(1,Cu+Cd+I,Cu-Cd);
I:=Cum(Cd+Cu)=2;
Hs:=Dn=HighestSince(1,I+Cross(Td,0),Dn);
Ls:=Up=LowestSince(1,I+Cross(0,Td),Up);
Dnx:=ValueWhen(1,Hs,Dn);
Upx:=ValueWhen(1,Ls,Up);
SuperTrend:=If(Td=1,Dnx,Upx);
SuperTrend

isteyen trend yönü için isteyen stop için kullanabilir.