//----------------------------------------------------
Params
Numeric RetracePct(2);
Vars
Series<Numeric> SwingPrice;
Numeric SwingHighPrice;
Numeric SwingLowPrice;
Series<Numeric> PreBar(0);
Series<Numeric> UpDn(0);
Bool SaveSwing(False);
Bool NewTL(False);
Bool UpdateTL(False);
Series<numeric> x0;
Series<numeric> y0;
Series<numeric> cb;
Series<numeric> k;
Series<numeric> b;
numeric dt;
numeric up;
numeric dn;
Events
OnInit()
{
printclear;
}
OnBar(ArrayRef<Integer> indexs)
{
If(date+time == 20250407)
{
x0 = currentbar;
y0 = close;
PlotNumeric("line",close);
}
//PlotNumeric("line",close);
Commentary("cb:"+text(CurrentBar));
If(date+time>20250407)
{
k = (close - y0) / (CurrentBar - x0);
b = close - k * CurrentBar ;
Commentary("k:"+text(k));
Commentary("b:"+text(b));
numeric i;
for i = 0 to CurrentBar - x0 - 1
{
Unplot("line", i);
PlotNumeric("line", close - k * i,0,rgb(100,50,200),i);
//Commentary(text(close-k*i));
dt = close[i] - close + k*i;
If(dt>0) up = up + dt;
If(dt<0) dn = dn + dt;
}
Commentary("up:"+text(up));
Commentary("dn:"+text(dn));
}
}
//----------------厉害👍