Pine script 如何将我的pinescript v2转换为pinescript v4?

Pine script 如何将我的pinescript v2转换为pinescript v4?,pine-script,Pine Script,我有一个需要转换成v4的pinescript v2,但我仍然不知道如何,任何输入都会有用,谢谢。这个脚本是很久以前开发的,现在访问它让我很困惑。我一直在读,变量需要先声明,我明白了,但是什么是将其转换为pine v4的最有效的方法呢 //@version=2 study(title="SuperTrend Oscillator",shorttitle="STO",overlay=false) //Inputs spt_ures=input(false,title="Use Cutsom Reso

我有一个需要转换成v4的pinescript v2,但我仍然不知道如何,任何输入都会有用,谢谢。这个脚本是很久以前开发的,现在访问它让我很困惑。我一直在读,变量需要先声明,我明白了,但是什么是将其转换为pine v4的最有效的方法呢

//@version=2
study(title="SuperTrend Oscillator",shorttitle="STO",overlay=false)
//Inputs
spt_ures=input(false,title="Use Cutsom Resolution?")
spt_res=input(type=resolution,defval="M")
spt_lenw=input(200,title="Length Of Warning Range")
spt_len=input(14,title="SuperTrend Length")
spt_mult=input(1,title="SuperTrend Multiple")
spt_ubc=input(true,title="Use Barcolors?")
colup=green
coldn=red
//SuperTrend
spt_atr=atr(spt_len)
spt_nsb=hl2+spt_atr*spt_mult
spt_nlb=hl2-spt_atr*spt_mult
spt_lb=close[1]>spt_lb[1]?max(spt_nlb,spt_lb[1]):spt_nlb
spt_sb=close[1]<spt_sb[1]?min(spt_nsb,spt_sb[1]):spt_nsb
spt_tdur=close>spt_sb[1]?1:close<spt_lb[1]?-1:nz(spt_tdur[1],1)
spt_td=spt_ures?(security(tickerid,spt_res,spt_tdur)):spt_tdur
spt_lvlur=(close-(spt_td==1?spt_lb:spt_sb))
spt_lvl=spt_ures?(security(tickerid,spt_res,spt_lvlur)):spt_lvlur
//Components
spt_lvlup=spt_td==1?spt_lvl:na
spt_lvldn=spt_td==-1?spt_lvl:na
spt_tdup=(spt_td==1)and(spt_td[1]==-1)
spt_tddn=(spt_td==-1)and(spt_td[1]==1)
spt_tr=spt_ures?(security(tickerid,spt_res,tr)):tr
spt_matr=sma(abs(spt_lvl),200)
spt_cls=spt_ures?(security(tickerid,spt_res,close)):close
spt_lvlwup=(spt_lvlup<spt_matr)and(spt_cls<spt_cls[1])
spt_lvlwdn=(spt_lvldn>-spt_matr)and(spt_cls>spt_cls[1])
//Color
spt_col=spt_td==1?colup:coldn
spt_colbar=(spt_td==1)and(spt_lvlwup)?#A7D1AA:(spt_td==-1)and(spt_lvlwdn)?#D1A7AE:spt_td==1?colup:coldn
spt_colhst=spt_tdup?colup:spt_tddn?coldn:spt_lvlwdn?colup:spt_lvlwup?coldn:na
//Plot
p0=plot(0,color=spt_col,style=line,linewidth=1,transp=0,title="Midline")
p1=plot(spt_lvlup,color=colup,style=linebr,linewidth=1,transp=0,title="Uptrend Line")
p2=plot(spt_lvldn,color=coldn,style=linebr,linewidth=1,transp=0,title="Downtrend Line")
plot(spt_lvl,color=spt_colhst,style=histogram,linewidth=3,transp=0,title="Trend Change")
plot(spt_lvl,color=spt_colhst,style=circles,linewidth=2,transp=0,title="Trend Change")
fill(p0,p1,color=colup,transp=90)
fill(p0,p2,color=red,transp=90)
barcolor(spt_ubc?spt_colbar:na)
/@version=2
研究(title=“SuperTrend振荡器”,shorttitle=“STO”,overlay=false)
//投入
spt\u ures=输入(假,title=“使用Cutsom分辨率?”)
spt_res=输入(类型=分辨率,deffal=“M”)
spt_lenw=输入(200,title=“警告范围的长度”)
标准长度=输入(14,title=“超趋势长度”)
spt_mult=输入(1,title=“超趋势倍数”)
spt_ubc=输入(true,title=“使用条形码?”)
颜色=绿色
科尔顿=红色
//超潮流
spt_atr=atr(spt_len)
spt_nsb=hl2+spt_atr*spt_mult
spt_nlb=hl2-spt_atr*spt_mult
spt_lb=close[1]>spt_lb[1]?最大值(spt_nlb,spt_lb[1]):spt_nlb

spt_sb=close[1]spt_sb[1]?1:close首先看一下v2到v3,一旦脚本与v3兼容,通常只需使用v4,也可以使用“转换为v4”选项


您很幸运,因为Pine v4现在有一个

您还需要研究以避免v2所遭受的前瞻性偏差

这应该给你一个领先的开始。如果你在路上遇到困难,你可以发布你的代码,让我们知道