Announcement

Collapse
No announcement yet.

Help - costruzione efs

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #61
    Fra
    Le coordinate per il posizionamento del testo sono I primi due valori nella parentesi di drawTextAbsolute. Quindi prova a modificare il primo portandolo da 40 a (per esempio) 25 o 30 e questo spostera' la scritta verso sinistra. Dopo di che incrementa il secondo valore da 1 a 3 che spostera la scritta verso il basso e vedi quale e' il risultato.
    Fammi sapere
    Alex

    Comment


    • #62
      Fra
      Un'altra cosa che puoi fare e' eliminare (o ridurre) alcune parti del testo riportato dal comando drawTextAbsolute(). Per fare questo devi modificare la variabile sStr che viene definita nelle righe 643 e 646. Se l'unica cosa che ti serve visualizzare e' il valore dell'ATR allora lascia soltanto sStr = rnd( nATR, 2) in quelle due righe.
      Alex

      Comment


      • #63
        Allora Alexis

        prima cosa ho ridotto le informazioni da visualizzare
        poi ho impostato il primo parametro a 35

        PHP Code:
        //display our ATR
            
        if ( nATRType != ) {
                if ( 
        nATRType == ) {
                    
        sStr "ATR : "+rndnATR2) ;
                }
                
        drawTextAbsolute(45,1sStr,  nATRColor,  null nATRFlags Text.LEFT |  Text.RELATIVETOLEFT 
                                 
        Text.RELATIVETOTOPnullnATRFontSizegID());           
            } 
        risultato : in uno chart è perfetto nell'altro non si vede

        mistero
        Attached Files
        Sostieni il Meglio di te , aiutaci a fare di più!

        Fra

        Comment


        • #64
          Fra
          Nei due grafici I settaggi del Pivot Console sono gli stessi? Considera infatti che le righe da modificare sono due perche sono basate su due condizioni/settaggi diversi.
          Alex

          Comment


          • #65
            Alexis

            intendevi così?

            PHP Code:
            //display our ATR
                
            if ( nATRType != ) {
                    if ( 
            nATRType == ) {
                        
            sStr "ATR : "+rndnATR2) ;
                    }
                    else {
                        
            sStr "ATR : "+rndnAtr2);
                    }
                    
            drawTextAbsolute(30,3sStr,  nATRColor,  null nATRFlags Text.LEFT |  Text.RELATIVETOLEFT 
                                     
            Text.RELATIVETOTOPnullnATRFontSizegID());           
                } 
            Attached Files
            Sostieni il Meglio di te , aiutaci a fare di più!

            Fra

            Comment


            • #66
              gli altri due chart (come prima)
              Attached Files
              Sostieni il Meglio di te , aiutaci a fare di più!

              Fra

              Comment


              • #67
                Fra
                Si esattamente cosi. A parte questo ho riguardato l'immagine che hai postato precedentemente (quella nel quale non appare il valore del ATR) ed in effetti il valore viene scritto sul grafico ma a causa del fatto che hai compresso il grafico e il titolo del simbolo e' molto piu esteso il valore viene coperto da quest'ultimo (guarda sotto STOXX).
                Alex

                Comment


                • #68
                  Fra
                  Eccoti la soluzione per far si che la scitta non si muova quando comprimi/allarghi il grafico.
                  Anziche drawTextAbsolute() che dipende in parte anche dalla spaziatura delle barre usa il comando drawTextPixel() che si basa invece valori assoluti. Quindi cambia soltanto il comando e come coordinate inzia con 350 e 5 e aggiusta da li.
                  Alex

                  Comment


                  • #69
                    Perfetto !!!

                    l'hai tirato fuori dal cilindro mentre stavo per abbandonare

                    Thanks...proprio quello che serviva...anche per altre cosucce...
                    Sostieni il Meglio di te , aiutaci a fare di più!

                    Fra

                    Comment


                    • #70
                      et voilà

                      PHP Code:
                      //display our ATR
                          
                      if ( nATRType != ) {
                              if ( 
                      nATRType == ) {
                                  
                      sStr "ATR : "+rndnATR2) ;
                              }
                              else {
                                  
                      sStr "ATR : "+rndnAtr2);
                              }
                              
                      drawTextPixel(350,5sStr,  nATRColor,  null nATRFlags Text.LEFT |  Text.RELATIVETOLEFT 
                                            
                      Text.RELATIVETOTOPnullnATRFontSizegID());           
                          } 
                      Attached Files
                      Sostieni il Meglio di te , aiutaci a fare di più!

                      Fra

                      Comment


                      • #71
                        volevo fare una modifica a questo "vecchio" efs, ossia sostuire a una normale MM un efs preso dall'archivio , la MedianAdaptiveFilter...ma avrei bisogno di una mano

                        partendo dal precedente efs...

                        PHP Code:
                        var vCCI20 = new CCIStudy(20"Close");
                        var 
                        vWMA15 = new MAStudy(150"Close"MAStudy.WEIGHTED);
                        var 
                        Price1=null;
                        var 
                        Price2=null
                        ho sostituito


                        PHP Code:
                        var vCCI20 = new CCIStudy(20"Close");
                        var 
                        Price1=null;
                        var 
                        Price2=null
                        e in main ho inserito (non la voleva al di fuori)
                        var vAdMav = call("/ad get/medianadaptivefilter.efs");

                        poi al posto di
                        PHP Code:
                        if (vCCI20.getValue(CCIStudy.CCI) > && close() >= vWMA15.getValue(MAStudy.MA)){
                                
                        onAction5();
                            }else{
                                
                        onAction5b(); 
                        ho inserito
                        PHP Code:
                         if (vCCI20.getValue(CCIStudy.CCI) > && close() >= vAdMav.getValue()){
                                
                        onAction5();
                            }else{
                                
                        onAction5b(); 
                        ma applicando l'efs ho errore... ReferenceError vAdMav is not defined

                        il problema è il fatto che all'interno della parentesi non c'è nulla (quella dopo getvalue)...come correggere? cosa devo inserire?
                        Sostieni il Meglio di te , aiutaci a fare di più!

                        Fra

                        Comment


                        • #72
                          Fra
                          Quando usi la funzione call() il risultato non e' una serie dati - dalla quale quindi puoi estrarre un valore singolo con il metodo .getValue() - ma e' un valore singolo che rappresenta il valore di quello studio alla barra attuale.
                          Le soluzioni sono due. La prima e' quella di usare semplicemente il nome della variabile nella tua condizione
                          PHP Code:
                          var vAdMav call("/ad get/medianadaptivefilter.efs");
                          if (
                          vCCI20.getValue(CCIStudy.CCI) > && close() >= vAdMav){
                              
                          onAction5();
                          }else{
                              
                          onAction5b(); 
                          Alternativamente puoi usare la nuova funzione efsExternal() che a differenza di call() crea invece una vera e propria serie dati. In questo caso scriveresti
                          PHP Code:
                          var vAdMav efsExternal("/ad get/medianadaptivefilter.efs");
                          if (
                          vCCI20.getValue(CCIStudy.CCI) > && close() >= vAdMav.getValue(0)){
                              
                          onAction5();
                          }else{
                              
                          onAction5b(); 
                          Se ti interessa c'e' un thread dedicato specificamente alla spiegazione delle funzioni call() e callFunction() che si trova qui ed uno per le funzioni EFS2 come efsExternal() e efsInternal() che si trova qui
                          Alex

                          Comment


                          • #73
                            grazie Alexis

                            allora utilizzando efsExternal ho sempre il referenceError on line 76 ...considera che allego linee da 70 a 79, quindi è il secondo if

                            PHP Code:
                            if (vCCI20.getValue(CCIStudy.CCI) > && close() >= vAdMav.getValue(0)){
                                    
                            onAction5();
                                }else{
                                    
                            onAction5b();
                                }
                                 
                                if (
                            vCCI20.getValue(CCIStudy.CCI) < && close() < vAdMav.getValue(0)){
                                    
                            onAction6();
                                }else{
                                    
                            onAction6b(); 
                            Sostieni il Meglio di te , aiutaci a fare di più!

                            Fra

                            Comment


                            • #74
                              nulla cambia se utilizzo il comando call e levo i getvalue(0)
                              Sostieni il Meglio di te , aiutaci a fare di più!

                              Fra

                              Comment


                              • #75
                                forse ho capito


                                ora devo prendermi i valori in un altra variabile...finora ho solo chiesto di prenderli...ma per utilizzarli devo farli passare per una seconda var...giusto?
                                Sostieni il Meglio di te , aiutaci a fare di più!

                                Fra

                                Comment

                                Working...
                                X