Esta estratégia usa técnicas de regressão linear para calcular a interceptação de regressão linear e usa-o como um sinal de negociação para construir uma estratégia de negociação quantitativa.
A interceptação de regressão linear indica o valor previsto de Y (geralmente o preço) quando o valor da série de tempo X é 0. Esta estratégia predefine o parâmetro Duração, toma o preço de fechamento como a sequência de origem e calcula a interceptação de regressão linear (xLRI) dos dias de Duração mais recentes.
A fórmula específica de cálculo é a seguinte:
xX = Length *(Length - 1)* 0.5
xDivisor = xX *xX - Length* Length *(Length - 1) *(2 * Length - 1) / 6
xXY = Σ(i *Closing Price[i]), i from 0 to Length-1
xSlope = (Length *xXY - xX* Σ(Closing Price, Length))/ xDivisor
xLRI = (Σ(Closing Price, Length) - xSlope * xX) / Length
Através de tais cálculos, a interceptação de regressão linear xLRI para os dias de comprimento mais recentes pode ser obtida.
Esta estratégia tem as seguintes vantagens:
Esta estratégia tem também alguns riscos:
Contramedidas:
Esta estratégia pode também ser otimizada nos seguintes aspectos:
Esta estratégia constrói uma estratégia de negociação quantitativa simples baseada na interceptação de regressão linear.
/*backtest start: 2023-11-28 00:00:00 end: 2023-12-28 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 21/03/2018 // Linear Regression Intercept is one of the indicators calculated by using the // Linear Regression technique. Linear regression indicates the value of the Y // (generally the price) when the value of X (the time series) is 0. Linear // Regression Intercept is used along with the Linear Regression Slope to create // the Linear Regression Line. The Linear Regression Intercept along with the Slope // creates the Regression line. // // You can change long to short in the Input Settings // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// strategy(title="Line Regression Intercept Backtest", overlay = true) Length = input(14, minval=1) xSeria = input(title="Source", defval=close) reverse = input(false, title="Trade reverse") xX = Length * (Length - 1) * 0.5 xDivisor = xX * xX - Length * Length * (Length - 1) * (2 * Length - 1) / 6 xXY = 0 for i = 0 to Length-1 xXY := xXY + (i * xSeria[i]) xSlope = (Length * xXY - xX * sum(xSeria, Length)) / xDivisor xLRI = (sum(xSeria, Length) - xSlope * xX) / Length pos = iff(close > xLRI, 1, iff(close < xLRI, -1, nz(pos[1], 0))) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(xLRI, color=blue, title="LRI")