Codifica Insync Indicator da TradingView
Forums › ProRealTime forum Italiano › Supporto ProBuilder › Codifica Insync Indicator da TradingView
- This topic has 3 replies, 2 voices, and was last updated 3 years ago by Donello.
-
-
07/03/2020 at 10:49 AM #138247
Buongiorno, come da titolo ho necessità di convertire l’Insync Indicator dal codice di TradingView. Questo è uno strumento di consenso, un aggregatore di una decina dei più comuni indicatori ai quali vengono attribuiti o sottratti 5 punti (partendo da una linea mediana di 50) in base alle indicazioni di ipervenduto o ipercomprato che forniscono; l’Insync in questo modo raggiunge le soglie estreme in prossimità del valore 100 oppure 0 e questo crea una zona di preallarme per operare sui mercati, meglio se accompagnato dalla formazione di pattern Candlestick.
Segue il codice TradingView, fornisco anche il codice Metastock qualora fosse preferibile.
Grazie per l’aiuto.//
// @author LazyBear
//
//
// v02, April0215, Updated to have dynamic levels
//
study(title = “Insync Index [LazyBear]”, shorttitle=”II_LB”)
src=close
Line95=input(95), Line75=input(75), Line25=input(25), Line5=input(5)
div = input(10000, title=”EMO Divisor”, minval=1)
emoLength = input(14, minval=1, title=”EMO length”)
fastLength = input(12, minval=1, title=”MACD Fast EMA Length”)
slowLength=input(26,minval=1, title=”MACD Slow EMA Length”)
signalLength=input(9,minval=1, title=”MACD Signal Length”)
mfiLength = input(20, minval=1, title=”MFI Length”)calc_emo() => sma(div * change(hl2) * (high – low) / volume, emoLength)
calc_macd(source) =>
fastMA = ema(source, fastLength)
slowMA = ema(source, slowLength)
fastMA – slowMAcalc_mfi(length) =>
src = hlc3
upper = sum(volume * (change(src) <= 0 ? 0 : src), length) lower = sum(volume * (change(src) >= 0 ? 0 : src), length)
mf = rsi(upper, lower)
mfcalc_dpo(period_) =>
isCentered = false
barsback = period_/2 + 1
ma = sma(close, period_)
dpo = isCentered ? close[barsback] – ma : close – ma[barsback]
dpocalc_roc(source, length) =>
roc = 100 * (source – source[length])/source[length]
roccalc_stochD(length, smoothD, smoothK) =>
k = sma(stoch(close, high, low, length), smoothK)
d = sma(k, smoothD)
dcalc_stochK(length, smoothD, smoothK) =>
k = sma(stoch(close, high, low, length), smoothK)
//d = sma(k, smoothD)
klengthBB=input(20, title=”BB Length”), multBB=input(2.0, title=”BB Multiplier”)
lengthCCI=input(14, title=”CCI Length”)
dpoLength=input(18, title=”DPO Length”)
lengthROC=input(10, title=”ROC Length”)
lengthRSI=input(14, title=”RSI Length”)
lengthStoch=input(14, title=”Stoch Length”),lengthD=input(3, title=”Stoch D Length”), lengthK=input(1, title=”Stoch K Length”)
lengthSMA=input(10, title=”MA Length”)bolinslb=sma( src,lengthBB ) – multBB * ( stdev( src,lengthBB ) )
bolinsub=sma( src,lengthBB ) + multBB * ( stdev( src,lengthBB ) )
bolins2= (src- bolinslb ) / ( bolinsub – bolinslb )
bolinsll=( bolins2 < 0.05 ? -5 : ( bolins2 > 0.95 ? 5 : 0 ) )
cciins= ( cci(src, lengthCCI) > 100 ? 5 : ( cci(src, lengthCCI ) < -100 ? -5 : 0 ) )
emvins2= calc_emo() – sma( calc_emo(),lengthSMA)
emvinsb= ( emvins2 < 0 ? ( sma( calc_emo() ,lengthSMA ) < 0 ? -5 : 0 ) : 0 ) emvinss= ( emvins2 > 0 ? ( sma( calc_emo() ,lengthSMA ) > 0 ? 5 : 0 ) : 0 )
macdins2= calc_macd( src) – sma( calc_macd( src) ,lengthSMA )
macdinsb= ( macdins2 < 0 ? ( sma( calc_macd( src),lengthSMA ) < 0 ? -5 : 0 ) : 0 ) macdinss=( macdins2 > 0 ? ( sma( calc_macd( src),lengthSMA) > 0 ? 5 : 0 ) : 0 )
mfiins=( calc_mfi( mfiLength ) > 80 ? 5 : ( calc_mfi( mfiLength ) < 20 ? -5 : 0 ) )
pdoins2=calc_dpo( dpoLength ) – sma( calc_dpo( dpoLength ),lengthSMA )
pdoinsb=( pdoins2 < 0 ? ( sma( calc_dpo( dpoLength ),lengthSMA) < 0 ? -5 : 0 ) :0 ) pdoinss=( pdoins2 > 0 ? ( sma( calc_dpo( dpoLength ),lengthSMA) > 0 ? 5 : 0 ) :0 )
rocins2=calc_roc( src,lengthROC ) – sma( calc_roc( src,lengthROC ),lengthSMA )
rocinsb=( rocins2 < 0 ? ( sma( calc_roc( src,lengthROC ),lengthSMA ) < 0 ? -5 : 0 ) : 0 ) rocinss = ( rocins2 > 0 ? ( sma( calc_roc( src,lengthROC ),lengthSMA ) > 0 ? 5 : 0 ) : 0 )
rsiins= ( rsi(src, lengthRSI ) > 70 ? 5 : ( rsi(src, lengthRSI ) < 30 ? -5 : 0 ) ) stopdins=( calc_stochD(lengthStoch,lengthD,lengthK ) > 80 ? 5 : ( calc_stochD(lengthStoch,lengthD, lengthK ) < 20 ? -5 : 0 ) ) stopkins=( calc_stochK(lengthStoch,lengthD,lengthK) > 80 ? 5 : ( calc_stochK(lengthStoch,lengthD, lengthK ) < 20 ? -5 : 0 ) ) iidx = 50 + cciins + bolinsll + rsiins + stopkins + stopdins + mfiins + emvinsb + emvinss + rocinss + rocinsb + nz(pdoinss[10]) + nz(pdoinsb [10]) + macdinss + macdinsb ml=plot(50, color=gray, title=”Line50″) ll=plot(Line5, color= green, title=”Line5″) ul=plot(Line95, color = red, title=”Line95″) plot(Line25, color= green, style=3, title=”Line25″) plot(Line75, color = red, style=3, title=”Line75″) fill(ml, ll, color=red) fill(ml, ul, color=green) il=plot(iidx, color=maroon, linewidth=2, title=”InsyncIndex”) fill(ml,il,black) bc = iidx >= 50 ? (iidx >= Line95 ? #336600 : iidx >= Line75 ? #33CC00 : #00FF00) :
(iidx <= Line5 ? #990000 : iidx <= Line25? #CC3300 : #CC9900)ebc = input(false, title=”Enable Barcolors”)
barcolor(ebc?bc:na)———————–
Codice Metastock
BOLInSLB
Mov( C ,20 ,S ) – 2 * ( Std( C ,20 ) )BOLInSUB
Mov( C ,20 ,S ) + 2 * ( Std( C ,20 ) )BOLInS2
( C – Fml( “BOLInSLB” ) ) / ( Fml( “BOLInSUB” ) – Fml( “BOLInSLB” ) )BOLInSLL
If( Fml( “BOLInS2” ) ,< , .05 ,-5 ,If( Fml( “BOLInS2” ) ,> ,.95 ,5 ,0 ) )CCIInS
If( CCI(14 ) ,> ,100 ,5 ,If ( CCI(14 ) ,< ,-100 ,-5 ,0 ) )EMVInS2
EMV(10 ,S ) – Mov( EMV(10 ,S) ,10 ,S )EMVInSB
If( Fml( “EMVInS2” ) ,< ,0 ,If( Mov( EMV(10 ,S ) ,10 ,S ) ,< ,0 ,-5 ,0 ) ,0 )EMVInSS
If( Fml( “EMVInS2” ) ,> ,0 ,If( Mov( EMV(10 ,S ) ,10 ,S ) ,> ,0 ,5 ,0 ) ,0 )MACDInS2
MACD( ) – Mov( MACD( ) ,10 ,S )MACDinSB
If( Fml( “MACDInS2” ) ,< ,0 ,If( Mov( MACD( ) ,10 ,S ) ,< ,0 ,-5 ,0 ) ,0 )MACDInSS
If( Fml( “MACDInS2” ) ,> ,0 ,If( Mov( MACD( ) ,10 ,S) ,> ,0 ,5 ,0 ) ,0 )MFIInS
If( MFI( 20 ) ,> ,80 ,5 , If( MFI( 20 ) ,< ,20 ,-5 ,0 ) )PDOInS2
DPO( 18 ) – Mov( DPO( 18 ) ,10 ,S )PDOInSB
If( Fml( “PDOInS2” ) ,< ,0 ,If( Mov( DPO( 18 ) ,10 , S) ,< ,0 ,-5 ,0 ) ,0 )PDOInSS
If( Fml( “PDOInS2” ) ,> ,0 ,If( Mov( DPO ( 18 ) ,10 ,S) ,> ,0 ,5 ,0 ) ,0 )ROCInS2
ROC( C ,10 ,$ ) – Mov( ROC( C ,10 ,$ ) ,10 ,S )ROCInSB
If( Fml( “ROCInS2” ) ,< ,0 ,If( Mov( ROC( C ,10 ,$ ) ,10 ,S ) ,< ,0 ,-5 ,0 ) ,0 )ROCInSS Index
If( Fml( “ROCInS2” ) ,> ,0 ,If( Mov( ROC( C ,10 ,$ ) ,10 ,S ) ,> ,0 ,5 ,0 ) ,0 )RSIInS
If( RSI(14 ) ,> ,70 ,5 ,If( RSI(14 ), < ,30 ,-5 ,0 ) )STO%dInS
If( Stoch(14 ,3 ) ,> ,80 ,5 ,If( Stoch(14 ,3 ) ,< ,20 ,-5 ,0 ) )STO%kInS
If( Stoch(14 ,1) ,> ,80 ,5 ,If( Stoch(14 ,1 ) ,< ,20 ,-5 ,0 ) )InSync Index
50 + Fml( “CCIInS” ) + Fml( “BOLInSLL” ) + Fml( “RSIInS” ) + Fml( “STO%kInS ” ) + Fml( “STO%dInS” ) + Fml( “MFIInS” ) + Fml( “EMVInSB” ) + Fml( “EMVInSS” ) + Fml( “ROCInSS” ) + Fml( “ROCInSB” ) + Ref (Fml( “PDOInSS” ) ,-10 ) + Ref (Fml( “PDOInSB” ) ,-10 ) + Fml( “MACDInS S” ) + Fml( “MACDInSB” )09/25/2020 at 11:57 AM #14535209/30/2020 at 12:58 PM #145964L'indicatore è stato convertito, puoi scaricarlo da qui: Indice Insync
09/30/2020 at 5:32 PM #145990 -
AuthorPosts
Find exclusive trading pro-tools on