Regresi Linear ++

Penulis:ChaoZhang, Tarikh: 2022-05-24 14:17:42
Tag:DEV

UE kepada permintaan awam

Rumus Regresi Linear Perhitungan yang dihapuskan dengan amaran

Berikut adalah skrip regresi linear untuk peniaga yang suka ciri-ciri yang kaya

Ciri ++ Pelbagai bingkai masa -> Regresi Sumber dari carta yang berbeza ++ Warna Disesuaikan -> Ini termasuk garis pinus ++ Smoothing -> Izinkan Regresi Disaring; Nota: Menggunakan 1 Defaults untuk baris asal. ++ Isyarat mengenai saluran/penyambutan julat

Penggunaan ++ Gunakan ini untuk BreakOuts dan pembalikan ++ Script ini tidak boleh digunakan secara bebas

Risiko Sila ambil perhatian, skrip ini adalah seperti Bollinger Bands dan menimbulkan risiko jatuh dalam julat trend. Isyarat mungkin terus berjalan ke arah yang sama sementara pasaran berbalik.

Permintaan Jika anda mempunyai apa-apa permintaan ciri, komen di bawah atau dm saya. Saya akan menjawab apabila saya boleh. Jangan ragu untuk menggunakan ini pada carta anda dan berkongsi idea anda

Untuk pemaju yang ingin menggunakan ini pada carta mereka, sila gunakan skrip ini Rumus asal untuk pengiraan dipasang di sana

❤❤❤ Saya harap anda suka ini. Dari hati saya! ❤❤❤

Ujian belakang

img


/*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)

Berkaitan

Lebih lanjut