Annonce
Réduire
Aucune annonce.
Ads
Réduire
S' entrainer avec les Outils d'Eric Lefort
Réduire
X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

  • Commentaire


    • heureusement que j'avais sauvegardé le post sur l'indicateur de force relative de E.Lefort
      qui date d'un ancien site
      j'ai aussi trouvé par chance la notice du code whs pdf sans lequel je n'arrivais pas à comprendre le code


      Citation de : Eric_Lefort (au 11-10-2012 10:36:58)

      Si intéressés, voici le code de la force relative pour la nano de WHS.

      Express E_Indice_de_force
      // Ecrit par Eric Lefort pour Mogalef

      Vars

      Input $Longueur(1,50,10); // longueur sur laquelle est examinée la force

      input $Compare_Study(0,1,0); //Donner juste la Force (0) ou comparer les forces (1)

      series haut1,bas1,haut2,bas2;
      series Force,Force2; /Force du principal (CAC?) et force de l'indice comparé (DAX?)
      series null,CP,CP2,N,N2;
      series CLO(Study.close),HI(Study.high),LO(Study.low); // on va chercher les valeurs de l'indice que l'on va comparer au CAC

      Calculation

      CalculateAtEveryTick(false);


      // *********************** Calcul de la Force du CAC : ceci est le meilleur algorythme que j'ai trouvé.

      Haut1=Highest(h,$longueur);
      Bas1=Lowest(l,$longueur);
      N=(h+l+c)/3;
      //if IsFinalBar() then
      ExpMovingAverage(N,CP,3);

      Force=((cp-haut1[5]) / (haut1[5]-bas1[5])) + ((cp-bas1[5]) / (haut1[5]-bas1[5]))
      + ((cp-haut1[5+($longueur/2)]) / (haut1[5+($longueur/2)]-bas1[5+($longueur/2)])) + ((cp-bas1[5+($longueur/2)]) / (haut1[5+($longueur/2)]-bas1[5+($longueur/2)]))
      + ((cp-haut1[5+$longueur]) / (haut1[5+$longueur]-bas1[5+$longueur])) + ((cp-bas1[5+$longueur]) / (haut1[5+$longueur]-bas1[5+$longueur])) ;

      // ************************ Calcul de la force de l'indice comparé
      If $compare_study =1 then begin
      haut2=Highest(hi,$longueur);
      bas2=Lowest(lo,$longueur);
      N2=(hi+lo+clo)/3;
      ExpMovingAverage(N2,cp2,3);

      Force2=((cp2-haut2[5]) / (haut2[5]-bas2[5])) + ((cp2-bas2[5]) / (haut2[5]-bas2[5]))
      + ((cp2-haut2[5+($longueur/2)]) / (haut2[5+($longueur/2)]-bas2[5+($longueur/2)])) + ((cp2-bas2[5+($longueur/2)]) / (haut2[5+($longueur/2)]-bas2[5+($longueur/2)]))
      + ((cp2-haut2[5+$longueur]) / (haut2[5+$longueur]-bas2[5+$longueur])) + ((cp2-bas2[5+$longueur]) / (haut2[5+$longueur]-bas2[5+$longueur])) ;

      end
      // ************************
      if $compare_study>1 then begin
      haut2=Highest(hi,$longueur);
      bas2=Lowest(lo,$longueur);
      N2=(hi+lo+clo)/3;
      ExpMovingAverage(N2,cp2,3);

      Force2=((cp2-haut2[5]) / (haut2[5]-bas2[5])) + ((cp2-bas2[5]) / (haut2[5]-bas2[5]))

      + ((cp2-haut2[5+($longueur/2)]) / (haut2[5+($longueur/2)]-bas2[5+($longueur/2)])) + ((cp2-bas2[5+($longueur/2)]) / (haut2[5+($longueur/2)]-bas2[5+($longueur/2)]))
      + ((cp2-haut2[5+$longueur]) / (haut2[5+$longueur]-bas2[5+$longueur])) + ((cp2-bas2[5+$longueur]) / (haut2[5+$longueur]-bas2[5+$longueur])) ;
      Force=Force-Force2;
      Force2=0;
      end

      Interpretation
      begin
      end

      Plot (Force2,red,1);
      Plot (Force,black,2);

      Plot (null,black,1);

      il me semble que le code pour un seul sous-jacent, pour prorealtime devrait ressembler à cela :
      sans oublier de créer la variable integer ou entier "longueur"

      N=(High+Low+Close)/3
      CP=ExponentialAverage[3](N)

      demiL=ROUND(longueur/2)

      H5=highest[5](High)
      L5=lowest[5](Low)

      HdL=highest[demiL](High)
      LdL=lowest[demiL](Low)

      HL=highest[longueur](High)
      LL=lowest[longueur](Low)

      Force=( (CP-H5) / (H5-L5) ) + ( (CP-L5) / (H5-L5) ) + ( (CP-HdL) / (HdL-LdL) ) + ( (CP-LdL) / (HdL-LdL) ) + ( (CP-HL) / (HL-LL) ) + ( (CP-LL) / (HL-LL) )

      return force as"force",0 as "0"
      le code nano permet d'extraire la FR d'un autre indice et de faire la soustraction de ces 2 forces relatives
      ça je ne sais pas le faire en programmation prt

      peut être est il possible "en chargeant" les valeurs comparées et indicateurs

      Commentaire


      • Bonjour Raptor

        Les lignes de code copiées depuis le post de ci-dessus

        N=(High+Low+Close)/3
        CP=ExponentialAverage[3](N)

        demiL=ROUND(longueur/2)

        H5=highest[5](High)
        L5=lowest[5](Low)

        HdL=highest[demiL](High)
        LdL=lowest[demiL](Low)

        HL=highest[longueur](High)
        LL=lowest[longueur](Low)

        Force=( (CP-H5) / (H5-L5) ) + ( (CP-L5) / (H5-L5) ) + ( (CP-HdL) / (HdL-LdL) ) + ( (CP-LdL) / (HdL-LdL) ) + ( (CP-HL) / (HL-LL) ) + ( (CP-LL) / (HL-LL) )

        return force as"force",0 as "0"

        QUE SONT LES VARIABLES A CREER : INTEGER ou ENTIER "LONGUEUR" ?
        "sans oublier de créer la variable integer ou entier "longueur""

        Merci à toi

        Commentaire


        • longueur : c'est la taille du plus grand rectangle de mesure (diapo du webi d'hier)
          Cliquez sur l'image pour la voir en taille réelle 

Nom : 		FR.png 
Affichages :	1 
Taille :		106,1 Ko 
ID : 			1563984

          ce qui manque c'est la possibilité de mesurer une autre valeur et d'en faire la différence
          (et entre nous ça été un plus compliqué (l'interprétation du code nano) que d'enlever les ; )

          Commentaire


          • Bonjour Raptor

            Merci pour le code : ma petite contribution

            J'ai compris qu'Eric regarde les 5 dernières bougies par rapport au 15 et 30 bougies qui précèdent ces 5 dernières bougies : donc je rajouterais un 5 devant demiL et longueur ( c'est ce que semble faire Eric dans son code )

            Pour aller au bout de la comparaison faite par Eric , il faudrait avoir sur le ratio valeur/cac mais ça je crois que PRT ne sait pas gérer sur un indicateur autre que les force relative version PRT

            Commentaire


            • Bonjour Raptor

              Merci pour ton retour -

              Belle journée

              Commentaire


              • Envoyé par ririprems Voir le message
                Bonjour Raptor

                Merci pour le code : ma petite contribution

                J'ai compris qu'Eric regarde les 5 dernières bougies par rapport au 15 et 30 bougies qui précèdent ces 5 dernières bougies : donc je rajouterais un 5 devant demiL et longueur ( c'est ce que semble faire Eric dans son code )

                Pour aller au bout de la comparaison faite par Eric , il faudrait avoir sur le ratio valeur/cac mais ça je crois que PRT ne sait pas gérer sur un indicateur autre que les force relative version PRT
                Bonjour Riri,


                comme je ne connais rien en programmation, la modification que tu proposes donne quoi en termes de lignes de code ?

                Désolée de demander cette précision, mais un indicateur mal programmé peut mener à la cata !!!

                Merci par avance et belle journée à toi aussi

                Commentaire


                • A maryeva: ça donne ça . En tous cas ça à l'aire de correspondre a ce que fait Eric sur Nano . C'est un peu different de ce qu'il decrit dans le webi car la par exemple j'ai l'impresion que ça regarde les 5 dernieres bougies par rapport aux 35 dernieres alors que dans le webi , il regardent les 5 dernieres par rapport aux 30 bougies qui précèdent . ce qui se coderait un peu differemment ...


                  N=(High+Low+Close)/3
                  CP=ExponentialAverage[3](N)

                  demiL=ROUND(longueur/2)

                  H5=highest[5](High)
                  L5=lowest[5](Low)

                  HdL=highest[5+demiL](High)
                  LdL=lowest[5+demiL](Low)

                  HL=highest[5+longueur](High)
                  LL=lowest[5+ longueur](Low)

                  Force=( (CP-H5) / (H5-L5) ) + ( (CP-L5) / (H5-L5) ) + ( (CP-HdL) / (HdL-LdL) ) + ( (CP-LdL) / (HdL-LdL) ) + ( (CP-HL) / (HL-LL) ) + ( (CP-LL) / (HL-LL) )

                  return force as"force",0 as "0"

                  Commentaire


                  • bonjour Riri

                    Tu es super - je te remercie et vais essayer cet indicateur dès ce soir

                    Je te tiens au courant

                    Belle journée

                    Commentaire

                    Chargement...
                    X