Traduzione codice “Indicatore di tendenza”

Forums ProRealTime forum Italiano Supporto ProBuilder Traduzione codice “Indicatore di tendenza”

  • This topic has 6 replies, 3 voices, and was last updated 5 days ago by avatarIván.
Viewing 7 posts - 1 through 7 (of 7 total)
  • #246802

    Ivan, gentilmente puoi tradurre il codice allegato? Mi sembra interessante.

     

    // @version= 5
    indicator ( “Segnali di tendenza a ritardo zero (MTF) + Filtro laterale” , overlay = true ) 

    // === INPUT ===
    // Input di tendenza a ritardo zero
    lunghezza = input.int ( 70 , “Lunghezza” , gruppo = “Calcoli principali” )       
    mult = input.float ( 1.2 , “Moltiplicatore di banda” , gruppo = “Calcoli principali” )       
    t1 = input.timeframe ( “5” , “Intervallo di tempo 1” , gruppo = “Intervalli di tempo aggiuntivi” )       
    t2 = input.timeframe ( “15” , “Intervallo di tempo 2” , gruppo = “Intervalli di tempo aggiuntivi” )       
    t3 = input.timeframe ( “60” , “Intervallo di tempo 3” , gruppo = “Intervalli di tempo aggiuntivi” )       
    t4 = input.timeframe ( “240” , “Intervallo di tempo 4” , gruppo = “Intervalli di tempo aggiuntivi” )       
    t5 = input.timeframe ( “1D” , “Intervallo di tempo 5” , gruppo = “Intervalli di tempo aggiuntivi” )       
    verde = input.color ( #00ffbb , “Colore rialzista” , gruppo = “Aspetto” )       
    rosso = input.color ( #ff1100 , “Colore ribassista” , gruppo = “Aspetto” )       
    fillBullColor1Input = input.color ( #00ffbb , “Riempimento esterno rialzista” , gruppo = “Aspetto” )       
    fillBullColor2Input = input.color ( #00ffbb , “Riempimento interno rialzista” , gruppo = “Aspetto” )       
    fillBearColor1Input = input.color ( #ff1100 , “Riempimento esterno ribassista” , gruppo = “Aspetto” )       
    fillBearColor2Input = input.colore ( #ff1100 , “Riempimento interno ribassista” , gruppo = “Aspetto” )      

    // Input di mercato laterale
    rsiLength = input ( 14 , title = “Lunghezza RSI” , group = “Filtro mercato laterale” )     
    adxLength = input ( 14 , title = “Lunghezza ADX” , group = “Filtro mercato laterale” )     
    showSidewaysCircles = input.bool ( true , “Mostra cerchi laterali” , group = “Filtro mercato laterale” )     
    circleColor = input.color ( color.gray , “Colore cerchio laterale” , group = “Filtro mercato laterale” )    

    // === CALCOLO DEL MERCATO LATERALE ===
    rsiValue = ta.rsi ( close , rsiLength )    
    tr = ta.tr ( true )   
    upMove = high ta.highest ( high [ 1 ] , 1 )      
    downMove = ta.lowest ( low [ 1 ] , 1 ) low      
    diPlus = ta.rma ( upMove > downMove e upMove > 0 ? upMove : 0 , adxLength ) / ta.rma ( tr , adxLength ) * 100                   
    diMinus = ta.rma ( downMove > upMove e downMove > 0 ? downMove : 0 , adxLength ) / ta.rma ( tr , adxLength ) * 100                   
    dx = math.abs ( diPlus diMinus ) / ( diPlus + diMinus ) * 100           
    adx = ta.rma ( dx , adxLength )    
    rsiCondition = rsiValue > 40 e rsiValue < 60         
    adxCondition = adx <= 25 e adx < diPlus e adx < diMinus             
    lateralmente = rsiCondition e adxCondition    

    // Traccia il mercato lateralmente come una
    forma circolare ( showSidewaysCircles e lateralmente ? chiudi : in , titolo = “Mercato Sideways” , style = shape.labelup , location = location.belowbar , color = circleColor );          

    // === CALCOLO DEL TREND A RITARDO ZERO ===
    src = close   
    lag = math.floor (( length 1 ) / 2 )       
    zlema = ta.ema ( src + ( src src [ lag ]) , length )        
    volatility = ta.highest ( ta.atr ( length ) , length * 3 ) * mult        
    var trend = 0   

    se non lateralmente   se ta.crossover ( chiusura , zlema + volatilità ) tendenza : = 1 altrimenti se ta.crossunder ( chiusura , zlema volatilità ) tendenza : = -1
            
              
             
              

    zlemaColor = trend == 1 ? color.new ( verde , 70 ) : trend == -1 ? color.new ( rosso , 70 ) : na                 
    m = plot ( zlema , titolo = “Base a ritardo zero” , larghezza riga = 2 , colore = zlemaColor )      
    superiore = plot ( trend == -1 ? zlema + volatilità : na , stile = plot.style_linebr , colore = color.new ( rosso , 90 ) , titolo = “Banda di deviazione superiore” )               
    ​​inferiore = plot ( trend == 1 ? zlema volatilità : na , stile = plot.style_linebr , colore = color.new ( verde , 90 ) , titolo = “Banda di deviazione inferiore” )              

    riempimento ( m , superiore , ( apri + chiudi ) / 2 , zlema + volatilità , colore.nuovo ( fillBearColor1Input , 90 ) , colore.nuovo ( fillBearColor2Input , 70 ))              
    riempimento ( m , inferiore , ( apri + chiudi ) / 2 , zlema volatilità , colore.nuovo ( fillBullColor1Input , 90 ) , colore.nuovo ( fillBullColor2Input , 70 ))             

    plotshape ( non lateralmente e ta.crossover ( trend , 0 ) ? zlema + volatilità : na , “Trend ribassista” , shape.labeldown , location.absolute , rosso , testo = “▼” , colore del testo = chart.fg_color , dimensione = size.small )                  
    plotshape ( non lateralmente e ta.crossover ( trend , 0 ) ? zlema volatilità : na , “Trend rialzista” , shape.labelup , location.absolute , verde , testo = “▲” , colore del testo = chart.fg_color , dimensione = size.small )                 

    plotchar ( non lateralmente e ta.crossover ( chiudi , zlema ) e trend == 1 e trend [ 1 ] == 1 ? zlema volatilità * 1,5 : na , “Entrata rialzista” , “▲” , posizione.assoluta , verde , dimensione = dimensione.piccola )                          
    plotchar ( non lateralmente e ta.crossunder ( chiudi , zlema ) e trend == -1 e trend [ 1 ] == -1 ? zlema + volatilità * 1,5 : na , “Entrata ribassista” , “▼” , posizione.assoluta , rosso , dimensione = dimensione.piccola )                         

    s1 = richiesta.sicurezza ( syminfo.tickerid , t1 , tendenza )     
    s2 = richiesta.sicurezza ( syminfo.tickerid , t2 , tendenza )     
    s3 = richiesta.sicurezza ( syminfo.tickerid , t3 , tendenza )     
    s4 = richiesta.sicurezza ( syminfo.tickerid , t4 , tendenza )     
    s5 = richiesta.sicurezza ( syminfo.tickerid , t5 , tendenza )    

    s1a = s1 == 1 ? “Rialzista” : “Ribassista”         
    s2a = s2 == 1 ? “Rialzista” : “Ribassista”         
    s3a = s3 == 1 ? “Rialzista” : “Ribassista”         
    s4a = s4 == 1 ? “Rialzista” : “Ribassista”         
    s5a = s5 == 1 ? “Rialzista” : “Ribassista”        

    se barstate.islast  var data_table = table.new ( posizione = position.top_right , colonne = 2 , righe = 6 , colore sfondo = chart.bg_color , larghezza bordo = 1 , colore bordo = chart.fg_color , colore cornice = chart.fg_color , larghezza cornice = 1 ) table.cell ( data_table , text_halign = text.align_center , colonna = 0 , riga = 0 , testo = “Intervallo di tempo” , colore testo = chart.fg_color ) table.cell ( data_table , text_halign = text.align_center , colonna = 1 , riga = 0 , testo = “Segnale” , colore testo = chart.fg_color )
                  
             
             

        table.cell ( data_table , text_halign = text.align_center , column = 0 , row = 1 , text = t1 , text_color = chart.fg_color )      table.cell ( data_table , text_halign = text.align_center , column = 1 , row = 1 , text = s1a , text_color = chart.fg_color , bgcolor = s1a == “Ottimista” ? color.new ( green , 70 ) : color.new ( red , 70 ))
                      

        table.cell ( data_table , text_halign = text.align_center , column = 0 , row = 2 , text = t2 , text_color = chart.fg_color )      table.cell ( data_table , text_halign = text.align_center , column = 1 , row = 2 , text = s2a , text_color = chart.fg_color , bgcolor = s2a == “Ottimista” ? color.new ( green , 70 ) : color.new ( red , 70 ))
                      

        table.cell ( data_table , text_halign = text.align_center , column = 0 , row = 3 , text = t3 , text_color = chart.fg_color )      table.cell ( data_table , text_halign = text.align_center , column = 1 , row = 3 , text = s3a , text_color = chart.fg_color , bgcolor = s3a == “Ottimista” ? color.new ( green , 70 ) : color.new ( red , 70 ))
                      

        table.cell ( data_table , text_halign = text.align_center , column = 0 , row = 4 , text = t4 , text_color = chart.fg_color )      table.cell ( data_table , text_halign = text.align_center , column = 1 , row = 4 , text = s4a , text_color = chart.fg_color , bgcolor = s4a == “Ottimista” ? color.new ( green , 70 ) : color.new ( red , 70 ))
                      

        table.cell ( data_table , text_halign = text.align_center , column = 0 , row = 5 , text = t5 , text_color = chart.fg_color )      table.cell ( data_table , text_halign = text.align_center , column = 1 , row = 5 , text = s5a , text_color = chart.fg_color , bgcolor = s5a == “Ottimista” ? color.new ( green , 70 ) : color.new ( red , 70 ))
                      

    // === AVVISI ===
    alertcondition ( non laterale e ta.crossover ( close , zlema ) e trend == 1 e trend [ 1 ] == 1 , “Segnale di ingresso rialzista” , message = “Segnale di ingresso rialzista rilevato. Si consideri l’inserimento di  una posizione lunga.” )               
    alertcondition ( non laterale e ta.crossunder ( close , zlema ) e trend == -1 e trend [ 1 ] == -1 , “Segnale di ingresso ribassista” , message = “Segnale di ingresso ribassista rilevato. Si consideri l’inserimento di  una posizione corta.” )               
    alertcondition ( non laterale e ta.crossover ( trend , 0 ) , “Tendenza rialzista” )      
    alertcondition ( non laterale e ta.crossunder ( trend , 0 ) , “Tendenza ribassista” )      
    alertcondition ( non laterale e ta.cross ( trend , 0 ) , “Tendenza (rialzista o ribassista)” )    

    Grazie

    #246811

    Ciao. Posso tradurlo, ma ho bisogno di un codice funzionante. Quello che hai fornito sembra una traduzione dall’inglese all’italiano e contiene diversi errori.
    Se mi fornisci il codice funzionante e, soprattutto, lo aggiungi con il pulsante “Add PRT code”, posso farlo.

    #246819

    Salvo errori, c’è già questa versione senza tabella timeframes:

    https://www.prorealcode.com/topic/zero-lag-trend-signals-indicator-by-algoalpha/

    #246820
    #246830

    Adesso sì!

    #246832

    Grazie funziona bene, ma non ci sono etichette sui vari TF

    #246833

    Quando avremo le funzioni nella v13, potrò farlo facilmente.
    Per ora si può fare solo copiando e incollando il codice più volte, tante quante sono le timeframe che vogliamo visualizzare.

Viewing 7 posts - 1 through 7 (of 7 total)

Create your free account now and post your request to benefit from the help of the community
Register or Login