// Downloaded From https://www.WiseStockTrader.com Find the linear regression value in Weekly // *** RANGE *** // Alan Hull's ActVest Tradestation formula converted to AmiBroker // Note this is the old version; His latest (unpublished) version has a slightly higher CC and some other slight variations. SetChartOptions(0,chartShowArrows|chartShowDates); //_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) Vol " +WriteVal( V, 1.0 ) +" {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 )) )); TimeFrameSet(inWeekly); //Use weekly data // Central Cord - Find the Highest linear regression value in 13 to 52 week range i = 52; CC = 0; while (i > 12) { LR = LinearReg(C, i); CC = Max(CC, LR); i = i-1; } //Boundary displacement // 23.6%, 38.2%, 50.0%, 61.8%, 100%, 161.8%, 261.8% and 423.6% // dodatek //MoveUP = 2.618 * CC * ATR(52)/MA(C,52); // ory //MoveDown = 2.618 * CC * ATR(52)/MA(C,52); // ory //MoveUP = 1.618 * CC * ATR(52)/EMA(C,52); //MoveDown = 1.618 * CC * ATR(52)/EMA(C,52); MoveUP = 1.618 * CC * ATR(52)/WMA(C,52); MoveDown = 1.618 * CC * ATR(52)/WMA(C,52); // Upper deviation UD = CC + MoveUp; // Lower deviation LD = CC - MoveDown; for (i = 1; i < BarCount; i++ ) { if (LD[i] < LD[i-1]) // if falling LD[i] = LD[i-1]; // then hold value if (LD[i] >= CC[i]) // if collides with descending central cord LD[i] = CC[i]; // then follow central cord } // Now plot it all Plot(C, "", colorBlack, styleCandle); Plot(UD,"\nUpper deviation",colorGreen,1); Plot(CC,"Central Cord",colorBlue,1); Plot(LD,"Lower deviation",colorRed,1); TimeFrameRestore();