Die öffentliche Nachfrage
Lineare Regressionsformel Ausgeschraubte Berechnungen mit Warnungen
Hier ist das Lineare Regressions-Skript für Trader, die reiche Funktionen lieben
Eigenschaften ++ Multi-Zeitrahmen -> Quellregression aus einem anderen Diagramm ++ angepasste Farben -> Dies beinhaltet die Kiefernlinien ++ Glättung -> Erlaubt gefilterte Regression; Hinweis: Mit 1 Defaults zur ursprünglichen Zeile. ++ Warnmeldungen bei Überschreitung des Kanals/der Reichweite
Verwendung ++ Verwenden Sie dies für Ausfälle und Umkehrungen ++ Dieses Skript darf nicht unabhängig verwendet werden
Risiken Bitte beachten Sie, dass dieses Skript ähnlich wie Bollinger-Bänder ist und ein Risiko eines Rückgangs in einen Trendbereich birgt. Die Signale können in die gleiche Richtung laufen, während der Markt umkehrt.
Anträge Wenn Sie irgendwelche Feature-Anfragen haben, kommentieren Sie unten oder schreiben Sie mir eine Mail. Fühlen Sie sich frei, dies auf Ihrem Diagramm zu verwenden und teilen Sie Ihre Ideen
Für Entwickler, die dies auf ihrem Diagramm verwenden möchten, bitte verwenden Sie dieses Skript Die ursprüngliche Berechnungsformel ist dort veröffentlicht.
Ich hoffe es gefällt euch.
Zurückprüfung
/*backtest start: 2022-04-23 00:00:00 end: 2022-05-22 23:59:00 period: 45m basePeriod: 5m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © LucemAnb // User Version //@version=4 study("Linear Regression ++ [Lucem Anb]", "Lin Reg ++ [Lucem Anb]", overlay=true) source = input(close) length = input(100, minval=1) offset = input(0, minval=0) dev = input(2.0, "Deviation") smoothing = input(1, minval=1) mtf_val = input("", "Resolution", input.resolution) line_thick = input(4, "S&R Thickness", minval=1, maxval=4) signals = input("Recent", "Signals Display", options=["Recent", "All"]) p = input("Lime", "Up Color", options=["Red", "Lime", "Orange", "Teal", "Yellow", "White", "Black"]) q = input("Red", "Down Color", options=["Red", "Lime", "Orange", "Teal", "Yellow", "White", "Black"]) goto = input(0, "End At Bar Index") cc(x) => x=="Red"?color.red:x=="Lime"?color.lime:x=="Orange"?color.orange:x=="Teal"? color.teal:x=="Yellow"?color.yellow:x=="Black"?color.black:color.white data(x) => sma(security(syminfo.tickerid, mtf_val!="" ? mtf_val : timeframe.period, x), smoothing) linreg = data(linreg(source, length, offset)) linreg_p = data(linreg(source, length, offset+1)) plot(linreg, "Regression Line", cc(linreg>linreg[1]?p:q), editable=false) x = bar_index slope = linreg - linreg_p intercept = linreg - x*slope deviationSum = 0.0 for i=0 to length-1 deviationSum:= deviationSum + pow(source[i]-(slope*(x-i)+intercept), 2) deviation = sqrt(deviationSum/(length)) x1 = x-length x2 = x y1 = slope*(x-length)+intercept y2 = linreg updating = goto <= 0 or x < goto dm_current = -deviation*dev + y2 dp_current = deviation*dev + y2 buy = crossunder(close, dm_current) sell = crossover(close, dp_current) alertcondition(buy, "Buy Lin Reg", "Crossing On the Lower Regression Channel") alertcondition(sell, "Sell Lin Reg", "Crossing On the Higher Regression Channel") plotshape(buy, "BUY", shape.labelup, location.belowbar, color.lime, text='BUY', textcolor=color.black, show_last=signals=="All"?99999999:length) plotshape(sell, "SELL", shape.labeldown, location.abovebar, color.red, text='SELL', textcolor=color.white, show_last=signals=="All"?99999999:length) plot(x, "Bar Index", color.aqua, line_thick, plot.style_cross, display=display.none) if buy strategy.entry("Enter Long", strategy.long) else if sell strategy.entry("Enter Short", strategy.short)