Indicatore Bobao per Watchlist

Collapse
X
 
  • Ora
  • Show
Clear All
new posts
  • Claudio61
    Senior Member

    • May 2011
    • 3017

    #1

    Indicatore Bobao per Watchlist

    ho provato ad adeguare l\'indicatore nativo per poterlo usare sulla wathclist ed avere un "Filtro" da applicare su una lista di titoli.
    Fino ad un certo punto è tutto facile ma per rendere la cosa più sensata vorrei che il segnale "Crossover" rimanesse in Watchlist per X barre e, ammesso che il segnale sia arrivato 2/3 barre prima, capire se la linea di Regressione è nel trend o ha invertito. Cerco di essere più chiaro: 2 colonne per segnalare short o long (meglio se su una sola ma non saprei come fare), 2 colonne che mi dicano da quante X barre è arrivato il segnale (anche qui sarebbe meglio una), 2 (o una) colonne che mi dicano come si sta muovendo la regressione rispetto al segnale precedentemente dato.
    Sono 2 gg che mi sbatto ma non ne esco vivo.
    Spero di essermi spiegato.
    Allego script fatto per ora e l\'idea della Watchlist.

    Grazie
    File Allegati
  • maxmax68
    Senior Member

    • Sep 2013
    • 186

    #2
    Originariamente Scritto da Claudio61
    ho provato ad adeguare l\'indicatore nativo per poterlo usare sulla wathclist ed avere un "Filtro" da applicare su una lista di titoli.
    Fino ad un certo punto è tutto facile ma per rendere la cosa più sensata vorrei che il segnale "Crossover" rimanesse in Watchlist per X barre e, ammesso che il segnale sia arrivato 2/3 barre prima, capire se la linea di Regressione è nel trend o ha invertito. Cerco di essere più chiaro: 2 colonne per segnalare short o long (meglio se su una sola ma non saprei come fare), 2 colonne che mi dicano da quante X barre è arrivato il segnale (anche qui sarebbe meglio una), 2 (o una) colonne che mi dicano come si sta muovendo la regressione rispetto al segnale precedentemente dato.
    Sono 2 gg che mi sbatto ma non ne esco vivo.
    Spero di essermi spiegato.
    Allego script fatto per ora e l\'idea della Watchlist.

    Grazie
    Ciao Claudio,
    potresti rispiegarmi in modo più dettagliato cosa vuoi ottenere, e in particolare cosa intendi per
    " come si sta muovendo la regressione rispetto al segnale precedentemente dato ".
    Saluti
    Massimo

    Comment

    • Claudio61
      Senior Member

      • May 2011
      • 3017

      #3
      Originariamente Scritto da maxmax68
      Ciao Claudio,
      potresti rispiegarmi in modo più dettagliato cosa vuoi ottenere, e in particolare cosa intendi per
      " come si sta muovendo la regressione rispetto al segnale precedentemente dato ".
      Saluti
      Massimo
      Ciao Massimo,

      vorrei vedere sulle colonne della Watchlist quando la linea di regressione taglia la bigtop/bigbottom (1 rosso/ 1 verde) e quindi dà il segnale short/long, da quante barre è scattato il segnale (entro un numero di barre dato ... ) e, ammesso che siano passate 2/3 barre dal segnale, vedere se la regressione continua il percorso dato dal segnale o se ha invertito. Vedi allegato.

      Claudio
      File Allegati

      Comment

      • Smash
        Senior Member

        • Feb 2012
        • 351

        #4
        Originariamente Scritto da Claudio61
        Ciao Massimo,

        vorrei vedere sulle colonne della Watchlist quando la linea di regressione taglia la bigtop/bigbottom (1 rosso/ 1 verde) e quindi dà il segnale short/long, da quante barre è scattato il segnale (entro un numero di barre dato ... ) e, ammesso che siano passate 2/3 barre dal segnale, vedere se la regressione continua il percorso dato dal segnale o se ha invertito. Vedi allegato.

        Claudio

        Ciao Claudio,

        per il momento vedi se ti potrebbe piacere questo:

        Codice:
        INPUTS: @price(CLOSE), @BandPeriods(20), @BigDev(1.6), @SmalDev(0.83), @SLperiods(7), @matype(SIMPLE)
        
        # Definiamo le variabili
        SET BigTop = BollingerBandsTop(@price, @BandPeriods, @BigDev, @matype)
        SET BigBottom = BollingerBandsBottom(@price, @BandPeriods, @BigDev, @matype)
        SET SmallTop = BollingerBandsTop(@price, @BandPeriods, @SmalDev, @matype)
        SET SmallBottom = BollingerBandsBottom(@price, @BandPeriods, @SmalDev, @matype)
        SET SignalLine = LR(@price, @SLperiods)
        
        # Calcoliamo i segnali
        SET SignalSHORT = CROSSOVER(BigTop, SignalLine)
        SET SignalLONG = CROSSOVER(SignalLine, BigBottom)
        SET Signal = SignalLONG - SignalSHORT
        SET LastSignal = CHANGEIF(Signal <> 0, Signal)
        SET BarsSince = LASTIF(Signal <> 0)
        
        # Settiamo i PLOT con i relativi colori
        SET PLOT1 = LastSignal
        SET ColorInit = IF(LastSignal > 0, COLOR_LIGHT_GREEN, COLOR_GRAY)
        SET ColorFin = IF(LastSignal < 0, COLOR_LIGHT_RED, ColorInit)
        SET PLOTCOLOR1 = ColorFin
        
        SET PLOT2 = BarsSince
        SET PLOTCOLOR2 = ColorFin

        In pratica:
        - in un\'unica colonna (PLOT1) segnala se Long o Short (+1 oppure -1 ; verde se +1 e rosso se -1)
        - in un\'unica colonna (PLOT2) indica da quante barre si è verificato il segnale (verde se riferito a segnale Long e rosso se riferito a segnale Short) e quì bisognerebbe decidere se si deve sommare o no 1 al numero che restituisce lo script.

        Purtroppo così come è ha il difetto che non segnala se dopo un primo attraversamento della BigTop o BigBottom, da intendersi come segnale, si verifica un riattraversamento in direzione contraria che annullerebbe il segnale!

        Invece per la parte sulla regressione lineare .... magari prova a descrivere che tipo di formule vorresti esattamente inserire nello script.
        Last edited by Smash; 28-11-13, 22:22.

        Comment

        • maxmax68
          Senior Member

          • Sep 2013
          • 186

          #5
          Ciao,
          scusate il ritardo ma ho faticato un po\' a trovare la soluzione, sempre sperando che funzioni !!!
          Claudio per cortesia domani provala in realtime e fammi sapere se ci sono errori.
          Per le spiegazioni leggi i commenti nel codice.
          Saluti
          Massimo

          P.S. In inglese Grigio è GREY e non GRAY. Per cortesia correggere !!!

          Codice:
          INPUTS: @price(CLOSE), @BandPeriods(20), @BigDev(1.6), @SmalDev(0.83), @SLperiods(7), @matype(SIMPLE),@x(4)
          # @x è il nunero di barre di validità del segnale !!!
          # Definiamo le variabili
          SET BigTop = BollingerBandsTop(@price, @BandPeriods, @BigDev, @matype)
          SET BigBottom = BollingerBandsBottom(@price, @BandPeriods, @BigDev, @matype)
          SET SmallTop = BollingerBandsTop(@price, @BandPeriods, @SmalDev, @matype)
          SET SmallBottom = BollingerBandsBottom(@price, @BandPeriods, @SmalDev, @matype)
          SET SignalLine = LR(@price, @SLperiods)
          # Definiamo le condizioni di crossover per long e short
          SET goLong = CROSSOVER(SignalLine, BigTop)
          SET goShort = CROSSOVER(BigBottom, SignalLine)
          # Contiamo da quante barre si è verificata la condizione di crossover
          # e superato il valore di @x azzeriamo i contatori
          SET countH = LASTIF(goLong)
          SET countH1 = IF(countH <= @x ,countH, 0)
          SET countL = LASTIF(goShort)
          SET countL1 = IF(countL <= @x ,countL, 0)
          # Assegniamo al nostro signal un valore di countH1 se crossover long 
          # di countL1 se crossover short, e zero se niente crossover 
          SET condL = (countH1 = 0 AND countL1 > 0) OR (countH1 > 0 AND countL1 > 0 AND countL1 < countH1)
          SET condH = (countL1 = 0 AND countH1 > 0) OR (countH1 > 0 AND countL1 > 0 AND countH1 < countL1)
          SET signal = IF(condH, countH1, IF(condL, (-1 * countL1), 0))
          # Assegnamo a signal2 valore di 1 se SignalLine conferma il crossover,
          # valore di -1 se la SignalLine ha ritracciato, negando il crossover, 0 quando no segnale
          SET condTrue = (signal > 0 AND SignalLine > BigTop) OR (signal < 0 AND SignalLine < BigBottom)
          SET condFalse = (signal > 0 AND SignalLine < BigTop) OR (signal < 0 AND SignalLine > BigBottom)
          SET signal2 = IF(condTrue, 1, IF(condFalse, -1, 0))
          # Settiamo i PLOT
          # Per signal in verde long ed il numero di barre dal crossover long,
          # in rosso per short ed in negativo il numero di barre dal crossover short,
          # in grigio 0 quando siamo oltre @x barre dal crossover 
          SET PLOT1 = signal
          SET PLOTCOLOR1 = IF(signal < 0, COLOR_RED, IF(signal > 0, COLOR_GREEN, COLOR_GRAY))
          # Per signal2 verde con 1 se LR conferma il crossover long o short
          # in rosso -1 se in invece LR ha ritracciato negando il crossover 
          # 0 grigio se nessun segnale
          SET PLOT2 = signal2
          SET PLOTCOLOR2 = IF(signal2 < 0, COLOR_RED, IF(signal2 > 0, COLOR_GREEN, COLOR_GRAY))

          Comment

          • maxmax68
            Senior Member

            • Sep 2013
            • 186

            #6
            Allego anche una versione che calcola sulla barra precedente,
            forse più adatta per l\'utilizzo in realtime, non essendo influenzata da ogni singolo tick in arrivo !!!
            Da testare in realtime.
            Saluti
            Massimo


            Codice:
            INPUTS: @price(CLOSE), @BandPeriods(20), @BigDev(1.6), @SmalDev(0.83), @SLperiods(7), @matype(SIMPLE),@x(4)
            # @x è il nunero di barre di validità del segnale !!!
            # Definiamo le variabili
            SET BigTop = BollingerBandsTop(@price, @BandPeriods, @BigDev, @matype)
            SET BigBottom = BollingerBandsBottom(@price, @BandPeriods, @BigDev, @matype)
            SET BigTop1 = REF(BigTop, 1)
            SET BigBottom1 = REF(BigBottom, 1)
            SET SmallTop = BollingerBandsTop(@price, @BandPeriods, @SmalDev, @matype)
            SET SmallBottom = BollingerBandsBottom(@price, @BandPeriods, @SmalDev, @matype)
            SET SignalLine = LR(@price, @SLperiods)
            SET SignalLine1 = REF(SignalLine,1)
            # Definiamo le condizioni di crossover per long e short
            SET goLong = CROSSOVER(SignalLine1, BigTop1)
            SET goShort = CROSSOVER(BigBottom1, SignalLine1)
            # Contiamo da quante barre si è verificata la condizione di crossover
            # e superato il valore di @x azzeriamo i contatori
            SET countH = LASTIF(goLong)
            SET countH1 = IF(countH <= @x ,countH, 0)
            SET countL = LASTIF(goShort)
            SET countL1 = IF(countL <= @x ,countL, 0)
            # Assegniamo al nostro signal un valore di countH1 se crossover long 
            # di countL1 se crossover short, e zero se niente crossover 
            SET condL = (countH1 = 0 AND countL1 > 0) OR (countH1 > 0 AND countL1 > 0 AND countL1 < countH1)
            SET condH = (countL1 = 0 AND countH1 > 0) OR (countH1 > 0 AND countL1 > 0 AND countH1 < countL1)
            SET signal = IF(condH, countH1, IF(condL, (-1 * countL1), 0))
            # Assegnamo a signal2 valore di 1 se SignalLine conferma il crossover,
            # valore di -1 se la SignalLine ha ritracciato, negando il crossover, 0 quando no segnale
            SET condTrue = (signal > 0 AND SignalLine1 > BigTop1) OR (signal < 0 AND SignalLine1 < BigBottom1)
            SET condFalse = (signal > 0 AND SignalLine1 < BigTop1) OR (signal < 0 AND SignalLine1 > BigBottom1)
            SET signal2 = IF(condTrue, 1, IF(condFalse, -1, 0))
            # Settiamo i PLOT
            # Per signal in verde long ed il numero di barre dal crossover long,
            # in rosso per short ed in negativo il numero di barre dal crossover short,
            # in grigio 0 quando siamo oltre @x barre dal crossover 
            SET PLOT1 = signal
            SET PLOTCOLOR1 = IF(signal < 0, COLOR_RED, IF(signal > 0, COLOR_GREEN, COLOR_GRAY))
            # Per signal2 verde con 1 se LR conferma il crossover long o short
            # in rosso -1 se in invece LR ha ritracciato negando il crossover 
            # 0 grigio se nessun segnale
            SET PLOT2 = signal2
            SET PLOTCOLOR2 = IF(signal2 < 0, COLOR_RED, IF(signal2 > 0, COLOR_GREEN, COLOR_GRAY))

            Comment

            • Claudio61
              Senior Member

              • May 2011
              • 3017

              #7
              ....azz .. quanta roba.
              Grazie Smash, grazie Massimo .... oggi metto alla prova e vi so dire.

              Grazie ancora.

              Comment

              • Francario Massimiliano
                Administrator
                • Jul 2008
                • 1033

                #8
                Salve,
                Originariamente Scritto da maxmax68
                Allego anche una versione che calcola sulla barra precedente,
                forse più adatta per l\'utilizzo in realtime, non essendo influenzata da ogni singolo tick in arrivo !!!
                Da testare in realtime.
                Saluti
                Massimo
                entrambi gli script che ha postato mi sembrano corretti per le funzionalità richieste.
                Ottimo lavoro !


                Unica annotazione, grigio in inglese è proprio Gray, con la A, almeno secondo Google Translate



                Max Francario
                Manuale di beeTrader
                Manuale di Fiuto Beta

                Comment

                • Claudio61
                  Senior Member

                  • May 2011
                  • 3017

                  #9
                  SMASH il tuo sembra corretto nei segnali ma si dovrebbe prestabilire un numero limitato di barre da tenere in considerazione dopo il segnale. Dopo 2/3/4 il segnale è andato. Poi mancherebbe il movimento della regressione.

                  Massimo ... il tuo ha i segnali invertiti ... sembra più completo ma con i segnali invertiti è difficile essere sicuri del resto.
                  Allego lo screen.

                  Ragazzi ..... un altro sforzo e ci siamo .... grazie ancora. Sta venendo proprio come volevo.

                  Per il Gra(e)y ho chiesto mia moglie che l\'inglese lo insegna ed ha parenti USA. Mi ha detto che si scrive in entrambi modi a seconda se inglese o inglese americano. E\' tipico delle differenze USA/England. La parola "mamma" si scrive con 3 vocali diverse ed è riconosciuto ugualmente.
                  File Allegati

                  Comment

                  • maxmax68
                    Senior Member

                    • Sep 2013
                    • 186

                    #10
                    Originariamente Scritto da Claudio61
                    SMASH il tuo sembra corretto nei segnali ma si dovrebbe prestabilire un numero limitato di barre da tenere in considerazione dopo il segnale. Dopo 2/3/4 il segnale è andato. Poi mancherebbe il movimento della regressione.

                    Massimo ... il tuo ha i segnali invertiti ... sembra più completo ma con i segnali invertiti è difficile essere sicuri del resto.
                    Allego lo screen.

                    Ragazzi ..... un altro sforzo e ci siamo .... grazie ancora. Sta venendo proprio come volevo.

                    Per il Gra(e)y ho chiesto mia moglie che l\'inglese lo insegna ed ha parenti USA. Mi ha detto che si scrive in entrambi modi a seconda se inglese o inglese americano. E\' tipico delle differenze USA/England. La parola "mamma" si scrive con 3 vocali diverse ed è riconosciuto ugualmente.
                    Ciao Claudio,
                    ho guardato il tuo allegato e mi sembra che sia tutto corretto.
                    L\'indicatore ti segnala rosso -4 per dirti che quattro barre fa c\'è stato un crossover segnale short.
                    E un -1 rosso per dirti che il segnale di short è stato negato dal nuovo crossover della regressione
                    lineare sulla BigBottom.
                    Saluti
                    Massimo

                    P.S. GREY = English UK ovvero l\'inglese scolastico. Ho imparato che esiste anche GRAY. Non si finisce mai
                    di imparare !!!
                    Max avete risolto il mio problema con WeBank, perché Andrea non mi ha fatto sapere più nulla. Attendo notizie.
                    Saluti
                    Massimo

                    Comment

                    • Andrea Cagalli
                      Senior Member
                      • Oct 2010
                      • 3995

                      #11
                      Originariamente Scritto da maxmax68
                      Ciao Claudio,
                      ho guardato il tuo allegato e mi sembra che sia tutto corretto.
                      L\'indicatore ti segnala rosso -4 per dirti che quattro barre fa c\'è stato un crossover segnale short.
                      E un -1 rosso per dirti che il segnale di short è stato negato dal nuovo crossover della regressione
                      lineare sulla BigBottom.
                      Saluti
                      Massimo

                      P.S. GREY = English UK ovvero l\'inglese scolastico. Ho imparato che esiste anche GRAY. Non si finisce mai
                      di imparare !!!
                      Max avete risolto il mio problema con WeBank, perché Andrea non mi ha fatto sapere più nulla. Attendo notizie.
                      Saluti
                      Massimo
                      Ciao Massimo,
                      si credo che con la versione di lunedì sarà risolto. Quindi vediamo come si comporta l\'interprete dello script con la nuova release.
                      Ci tengo anche a ringraziarti per il prezioso contributo che stai dando

                      Ciao Ciao
                      Manuale beeTrader

                      Comment

                      • Claudio61
                        Senior Member

                        • May 2011
                        • 3017

                        #12
                        Originariamente Scritto da maxmax68
                        Ciao Claudio,
                        ho guardato il tuo allegato e mi sembra che sia tutto corretto.
                        L\'indicatore ti segnala rosso -4 per dirti che quattro barre fa c\'è stato un crossover segnale short.
                        E un -1 rosso per dirti che il segnale di short è stato negato dal nuovo crossover della regressione
                        lineare sulla BigBottom.
                        Ciao Massimo,

                        confermo, il segnale era invertito. Se guardi lo screen che avevo postato, dà segnale short quando la regressione taglia la BigBottom verso il basso. Nel Bobao lo short è quando la regressione taglia verso il basso la BigTop e long quando taglia verso l\'alto la BigBottom. Poco male credo di aver corretto senza sbagliare.
                        Inoltre il conteggio delle barre non teneva conto della barra in essere quindi se il segnale, su un grafico day, fosse avvenuto oggi non veniva segnalato sulla watchlist ... e credo di aver corretto anche questo.
                        Una cosa, invece, che non funziona come intendevo (non mi sono spiegato bene io) è la verifica della regressione. Tu hai impostato lo script facendo un confronto con le Bigxxxx io invece vorrei vedere un confronto con se stessa. Se il segnale è short e il 2°/3°/4° giorno la regressione è maggiore o minore del giorno precedente; viceversa se il segnale è long se la regressione è minore o maggiore del giorno precedente.
                        Cosa per me assai ardua.
                        Allego lo script così controlli se le mie correzioni sono corrette. Nella pratica sembra ... ma meglio uno sguardo di esperti.

                        Grazie ancora

                        P.S. Mi scuso se non incollo lo script con la "E" ma non è attiva e allego uno screen
                        File Allegati

                        Comment

                        • maxmax68
                          Senior Member

                          • Sep 2013
                          • 186

                          #13
                          Originariamente Scritto da Claudio61
                          Ciao Massimo,

                          confermo, il segnale era invertito. Se guardi lo screen che avevo postato, dà segnale short quando la regressione taglia la BigBottom verso il basso. Nel Bobao lo short è quando la regressione taglia verso il basso la BigTop e long quando taglia verso l\'alto la BigBottom. Poco male credo di aver corretto senza sbagliare.
                          Inoltre il conteggio delle barre non teneva conto della barra in essere quindi se il segnale, su un grafico day, fosse avvenuto oggi non veniva segnalato sulla watchlist ... e credo di aver corretto anche questo.
                          Una cosa, invece, che non funziona come intendevo (non mi sono spiegato bene io) è la verifica della regressione. Tu hai impostato lo script facendo un confronto con le Bigxxxx io invece vorrei vedere un confronto con se stessa. Se il segnale è short e il 2°/3°/4° giorno la regressione è maggiore o minore del giorno precedente; viceversa se il segnale è long se la regressione è minore o maggiore del giorno precedente.
                          Cosa per me assai ardua.
                          Allego lo script così controlli se le mie correzioni sono corrette. Nella pratica sembra ... ma meglio uno sguardo di esperti.

                          Grazie ancora

                          P.S. Mi scuso se non incollo lo script con la "E" ma non è attiva e allego uno screen
                          Ciao Claudio,
                          per il segnale invertito mi scuso, ma non conoscevo il funzionamento del Bobao.
                          Per quanto riguarda il segnale sulla barra attuale basta scegliere tra le due versioni, e vedo che hai già risolto.
                          Per quanto riguarda il countH + 1 e countL + 1 prendo per buona la tua esperienza diretta sui dati realtime.
                          Per quanto riguarda la conferma del segnale, scusa ma continuo a non capire se vuoi il confronto solo con
                          il valore precedente di SignalLine, o con tutti i valori dal punto in cui è avvenuto il crossover in poi.
                          Se ti basta il confronto con REF(SignalLine, 1) ti basta sostituire in condTrue e condFalse i valori di BigTop
                          e BigBottom con REF(SignalLine, 1).
                          Saluti
                          Massimo

                          P.S. Grazie Andrea, aspetterò con trepidazione fino a lunedì.
                          Saluti
                          Massimo

                          Comment

                          • Claudio61
                            Senior Member

                            • May 2011
                            • 3017

                            #14
                            Originariamente Scritto da maxmax68
                            Ciao Claudio,
                            per il segnale invertito mi scuso, ma non conoscevo il funzionamento del Bobao.
                            Per quanto riguarda il segnale sulla barra attuale basta scegliere tra le due versioni, e vedo che hai già risolto.
                            Per quanto riguarda il countH + 1 e countL + 1 prendo per buona la tua esperienza diretta sui dati realtime.
                            Per quanto riguarda la conferma del segnale, scusa ma continuo a non capire se vuoi il confronto solo con
                            il valore precedente di SignalLine, o con tutti i valori dal punto in cui è avvenuto il crossover in poi.
                            Se ti basta il confronto con REF(SignalLine, 1) ti basta sostituire in condTrue e condFalse i valori di BigTop
                            e BigBottom con REF(SignalLine, 1).
                            Saluti
                            Massimo
                            Ciao Massimo,
                            Per l\'inversione del segnale non ti devi scusare ... senza conoscere il funzionamento del Bobao hai fatto fin troppo.
                            Per avere il numero di barre compresa l\'attuale ho appunto aggiunto il +1 in countH e countL .... non so se è corretto ma il risultato sì.
                            Per il SignalLine con la sostituzione che mi hai detto sopra si è risolto tutto.

                            Praticamente perfetto: segnale corretto, conteggio delle barre giusto, orientamento regressione (SignalLine) ottimo.

                            Allego 2 screen e lo script finale.

                            Grazie infinite Massimo ....grazie Smash

                            Codice:
                            INPUTS: @price(CLOSE), @BandPeriods(20), @BigDev(1.6), @SmalDev(0.83), @SLperiods(7), @matype(SIMPLE),@x(4)
                            # @x è il nunero di barre di validità del segnale !!!
                            # Definiamo le variabili
                            SET BigTop = BollingerBandsTop(@price, @BandPeriods, @BigDev, @matype)
                            SET BigBottom = BollingerBandsBottom(@price, @BandPeriods, @BigDev, @matype)
                            SET SmallTop = BollingerBandsTop(@price, @BandPeriods, @SmalDev, @matype)
                            SET SmallBottom = BollingerBandsBottom(@price, @BandPeriods, @SmalDev, @matype)
                            SET SignalLine = LR(@price, @SLperiods)
                            # Definiamo le condizioni di crossover per long e short
                            SET goLong = CROSSOVER(SignalLine, BigBottom)
                            SET goShort = CROSSOVER(BigTop, SignalLine)
                            # Contiamo da quante barre si è verificata la condizione di crossover
                            # e superato il valore di @x azzeriamo i contatori
                            SET countH = LASTIF(goLong)
                            SET countH1 = IF(countH <= @x ,countH + 1, 0)
                            SET countL = LASTIF(goShort)
                            SET countL1 = IF(countL <= @x ,countL + 1, 0)
                            # Assegniamo al nostro signal un valore di countH1 se crossover long 
                            # di countL1 se crossover short, e zero se niente crossover 
                            SET condL = (countH1 = 0 AND countL1 > 0) OR (countH1 > 0 AND countL1 > 0 AND countL1 < countH1)
                            SET condH = (countL1 = 0 AND countH1 > 0) OR (countH1 > 0 AND countL1 > 0 AND countH1 < countL1)
                            SET signal = IF(condH, countH1, IF(condL, (-1 * countL1), 0))
                            # Assegnamo a signal2 valore di 1 se SignalLine conferma il crossover,
                            # valore di -1 se la SignalLine ha ritracciato, negando il crossover, 0 quando no segnale
                            SET condTrue = (signal > 0 AND SignalLine > REF(SignalLine, 1)) OR (signal < 0 AND SignalLine < REF(SignalLine, 1))
                            SET condFalse = (signal > 0 AND SignalLine < REF(SignalLine, 1)) OR (signal < 0 AND SignalLine > REF(SignalLine, 1))
                            SET signal2 = IF(condTrue, 1, IF(condFalse, -1, 0))
                            # Settiamo i PLOT
                            # Per signal in verde long ed il numero di barre dal crossover long,
                            # in rosso per short ed in negativo il numero di barre dal crossover short,
                            # in grigio 0 quando siamo oltre @x barre dal crossover 
                            SET PLOT1 = signal
                            SET PLOTCOLOR1 = IF(signal < 0, COLOR_DARK_RED, IF(signal > 0, COLOR_DARK_GREEN, COLOR_GRAY))
                            # Per signal2 verde con 1 se LR conferma il crossover long o short
                            # in rosso -1 se in invece LR ha ritracciato negando il crossover 
                            # 0 grigio se nessun segnale
                            SET PLOT2 = signal2
                            SET PLOTCOLOR2 = IF(signal2 < 0, COLOR_DARK_RED, IF(signal2 > 0, COLOR_DARK_GREEN, COLOR_GRAY))
                            File Allegati

                            Comment

                            • Apocalips
                              Senior Member

                              • May 2011
                              • 2630

                              #15
                              Originariamente Scritto da Claudio61
                              Ciao Massimo,

                              Praticamente perfetto: segnale corretto, conteggio delle barre giusto, orientamento regressione (SignalLine) ottimo.

                              [/CODE]
                              Ottimo esercizio Claudio, siete stati bravissimi!


                              Apo
                              Last edited by Apocalips; 30-11-13, 01:49.
                              ....non si desidera ciò che è facile ottenere (Ovidio)....

                              Comment

                              Working...