Annonce

Réduire
Aucune annonce.

Ads

Réduire

[Graphe AT PRo : programmation]

Réduire
X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

  • Bonsoir hbo78,


    En fait nous n'avons à notre disposition pour le moment que le DTOSC de R. Miner qui n'est autre que le STOCHRSI (dispo page 163 de la présente file).
    On pourrait essayer de programmer ses autres outils pour GrapheAT Pro à condition d'avoir leurs cahiers des charges...

    Cordialement.

    Commentaire


    • Bonjour,

      l'indicateur lowess est en temps réel et repeint donc le passé
      Hk Lisse a programmé l'indicateur end-point pour corriger cet inconvénient

      quelqu'un aurait-il déjà converti ce programme pour grapheat

      merci beaucoup


      ///////////// programme de la courbe noire et blanche ///////////
      /////////// il faut introduire a en variable (51 par défaut) /////////////
      myke1 = CALL "kernel endpoint "[a]
      myke2 = CALL "kernel endpoint veille"[a]
      c=myke1-myke2
      return myke1 coloured by c

      /////////// programme kernel endpoint ////////////
      //////////// il faut mettre p3 en variable (51 par défaut) ///////////
      n=p3 mod 2
      p=(p3-n)/2
      p3=(2*p)+1
      once x=0
      w=abs((p-x)/p)
      w=w*w*w
      w=(1-w)
      w=w*w*w
      x=x+1
      if barindex=p3 then
      a=0
      b=0
      e=0
      for i=1 to p+1
      z=barindex-i+1
      a=a+w[z]
      b=b+w[z]*(i)
      e=e+(i)*(i)*w[z]
      next
      endif
      if barindex>p3 then
      c=0
      d=0
      for i=1 to p+1
      z=barindex-i+1
      c=c+close[p+1-i]*w[z]
      d=d+close[p+1-i]*w[z]*i
      next
      endif
      alpha=(a*d-b*c)/(a*e-b*b)
      beta=(c*e-b*d)/(a*e-b*b)
      lowess=alpha*(p+1)+beta
      if barindex<p3*2 then
      lowess=undefined
      endif
      return lowess

      //////////// programme kernel endpoint veille ///////////
      /////////// il faut introduire p3 en variable (51 par défaut) ///////////
      n=p3 mod 2
      p=(p3-n)/2
      p3=(2*p)+1
      once x=0
      w=abs((p-x)/p)
      w=w*w*w
      w=(1-w)
      w=w*w*w
      x=x+1
      if barindex=p3 then
      a=0
      b=0
      e=0
      for i=1 to p+2
      z=barindex-i+1
      a=a+w[z]
      b=b+w[z]*(i)
      e=e+(i)*(i)*w[z]
      next
      endif
      if barindex>p3 then
      c=0
      d=0
      for i=1 to p+2
      z=barindex-i+1
      c=c+close[p+2-i]*w[z]
      d=d+close[p+2-i]*w[z]*i
      next
      endif
      alpha=(a*d-b*c)/(a*e-b*b)
      beta=(c*e-b*d)/(a*e-b*b)
      lowess=alpha*(p+1)+beta
      if barindex<p3*2 then
      lowess=undefined
      endif
      return lowess

      Commentaire


      • Bonjour a tous

        je suis toujours nul en programmation mais je cherche

        En recherchant des similitudes de courbe entre les diverses moyennes
        J’ai remarqué que la courbe d’une moyenne Pondéré(Clôture,4) est très proche de celle du filtre de Kalman
        De même la courbe du filtre Alma à P1=10 est proche de la même moyenne Pondéré à 4

        Toujours dans les similitudes et pour essayer de masquer le défaut de repeindre le passé du filtre HODRICK_PRESCOTT a P2 =10 et P2 =30 élaboré par smallcaps90 page 132 de la file

        J’ai essayé de trouver une courbe approchant une de ces 2 courbes pour cela j’ai fait plusieurs essais et mélanges de différentes moyennes mais les résultats sont loin du but

        Sur la file quelqu’un aurait-il la solution ?
        Merci d’avance
        <center><a href='http://www.pro-at.com/forums-bourse/0212/24605_031811.png' target='_blank' style='display:block; width:600px; border:2px dashed #888; padding:10px'><img src="http://www.pro-at.com/forums-bourse/0212/24605_031811.png" alt='' width='600' height='518' /><em style='display:block; text-align: right'>Cliquez pour agrandir</em></a></center>

        Commentaire


        • Bonjour,Je me sers de l'indicateur de Force relative du programme et j'ai des anomalies que ne m'explique pas.

          Ainsi, pour la valeur Hermès, le l'indicateur graffe me donne 44,76 (Ecran joint), la statistique me donne 1,06 et je me suis essayé à faire le calcul et je trouve 0.84!!!
          Quelqu'un peut il m'indiquer mon erreur?
          Merci d'avance.
          Démon.

          <center><a href='http://www.pro-at.com/forums-bourse/0412/11143_151148.gif' target='_blank' style='display:block; width:600px; border:2px dashed #888; padding:10px'><img src="http://www.pro-at.com/forums-bourse/0412/11143_151148.gif" alt='' width='600' height='393' /><em style='display:block; text-align: right'>Cliquez pour agrandir</em></a></center>

          Groupe : SRD Date : 13/04/2012
          Force relative par rapport à cac40 (depuis le 13/04/2011)

          1,06 Hermes intl
          0,99 Zodiac
          0,84 Gemalto
          0,82 EADS
          0,81 Remy Cointreau

          Hermès CAC Différence
          Cours au 13/04/2012 247.7 3189.09
          Cours au 13/04/2011 150.75 4006.23
          Ecart 96.95 -817.14
          Ecar/cours 13/04/11 0.643117745 -0.203967321 0.847085066
          L'homme sage est celui qui connait ses limites (Magnum force (Callahan/Clint Eastwood))

          Commentaire


          • Bonjour Demon,


            Merci de redonner un peu de vie à la file.
            Pour ce qui concerne la "Force Relative" (externe), j'avais proposé un programme qui la recalcule et qui trouve les mêmes valeurs que la Force Relative livrée avec GAP.
            Tu pourras trouver mon post du 09/08/2003 qui en parle à l'adresse :
            <a href='/ref.php?uri=http%3A%2F%2Fwww.pro-at.com%2Fforums-bourse%2Ftopic.php%3FTOPIC_ID%3D6593%26whichpage%3D3' target="_blank">http://www.pro-at.com/forums-bourse/topic.php?TOPI...</a>

            Ton problème peut venir du fait que tes historiques de Hermes et du CAC ne commencent pas à la même date...vérifie...

            On peut aussi au lieu de démarrer les calculs à l'origine de l'historique disponible le plus court, choisir la durée sur laquelle les calculs seront effectués, 1 mois, 2 mois,..., ou 12 mois par exemple.

            Cordialement.

            Commentaire


            • Merci Smallcaps

              Je m'interroge: si la FR (Weinstein) se calcule sur 52 semaines, ne devrait on pas plutôt prendre la durée de calcul comme valeur fixe et non le point de départ.
              Et au lieu (ou en plus) de calculer la moyenne de la FR, comparer deux FR de durée différente (1an et trois mois par exemple).

              Je vois que tu es toujours attentif aux messages de cette file. Sois en mille fois remercié.
              Bonne soirée.
              Démon
              L'homme sage est celui qui connait ses limites (Magnum force (Callahan/Clint Eastwood))

              Commentaire


              • Bonjour Démon,

                Oui je pense que Tu as raison pour ce qui concerne le choix de la durée du calcul de 52 semaines si tu utilises méthode de Weinstein plutôt que de fixer le point de départ de l'indicateur.
                Ensuite tout est possible et pourquoi pas comparer deux FR de durées différentes effectivement. Reste à en tirer des conclusions utiles...
                Bonne journée à toi.

                Commentaire


                • Bonsoir;
                  j'utilise l'indicateur Cycle identifier pour tracer des canaux de tendance à partir du programme de Droite de regression. Comme je ne sais pas comment fixer le point de départ des cycles, je le fait généralement globalement en tracant sur le CAC et j'affine si nécessaire.
                  Quelqu'un peut il me dire comment modifier mon programme pour que les canaux se tracent automatiquement?
                  D'après mes observations, il faudrait que, une fois le nouveau point de cycle apparu, le nouveau canal ne devienne valide qu'une fois le canal antérieur cassé. Cela compenserai le petit défaut de repeinte du passé.

                  Le top serait que les canaux apparaissent sur le dernier chandelier (même si le calcul ne se fait que sur celui d'avant), cela permetrait de faire une statistique sur les ruptures des canaux.

                  Je sais que je demande beaucoup,c'est pourquoi, réponse ou non je remercie tous les contributeurs de cette file.
                  Merci d'avance.
                  Démon

                  Démon

                  <center><a href='http://www.pro-at.com/forums-bourse/0412/11143_211927.gif' target='_blank' style='display:block; width:600px; border:2px dashed #888; padding:10px'><img src="http://www.pro-at.com/forums-bourse/0412/11143_211927.gif" alt='' width='600' height='393' /><em style='display:block; text-align: right'>Cliquez pour agrandir</em></a></center>

                  // Droite de régression linéaire se termine à P1 périodes
                  // de la période actuelle, et commence à P1+P2 périodes de celle-ci.
                  // Canaux de régression linéaire tracés parallèlement à la droite
                  // de régression linéaire par la plus haute (ouverture-cloture) et la plus basse (ouverture-cloture)
                  //de la période.
                  //
                  Courbe1 = UBOLL
                  Courbe2 = MBOLL
                  Courbe3 = LBOLL

                  SI RANGHISTO = FINHISTO - P1
                  ALORS

                  POUR P2 COURS
                  X(0) = RANGPOUR
                  Y(0) = CLOTURE
                  FINPOUR

                  SOMX = SOMME(X,P2)
                  SOMY = SOMME(Y,P2)
                  SOMXX = SOMME(X*X,P2)
                  SOMXY = SOMME(X*Y,P2)

                  A = (P2*SOMXY-SOMX*SOMY)/(P2*SOMXX-SOMX*SOMX)
                  B = (SOMY-A*SOMX)/P2

                  POUR P2 COURS
                  HAUTC(0)=MAXVAL(Ouverture,Cloture)
                  BASC(0)=MINVAL(Ouverture,Cloture)

                  DROITE_REG(0) = A * X + B
                  ECART_HAUTC(0) = HAUTC-DROITE_REG
                  ECART_BASC(0) = DROITE_REG-BASC
                  FINPOUR

                  EH =MAX(ECART_HAUTC,P2)
                  EB =MAX(ECART_BASC,P2)

                  POUR P2 COURS
                  SI HAUTC=DROITE_REG + EH
                  ALORS
                  X1=RANGPOUR
                  HT=HAUTC
                  FINSI
                  SI BASC=DROITE_REG - EB
                  ALORS
                  X2=RANGPOUR
                  BS=BASC
                  FINSI
                  FINPOUR

                  POUR P2 COURS
                  DROITE_SUP = A*X + (HT - A*X1)
                  DROITE_INF = A*X + (BS - A*X2)
                  FINPOUR
                  FINSI

                  SI RANGHISTO = FINHISTO - P4
                  ALORS

                  POUR P3 COURS
                  V(0) = RANGPOUR
                  W(0) = CLOTURE
                  FINPOUR

                  SOMV = SOMME(V,P3)
                  SOMW = SOMME(W,P3)
                  SOMVV = SOMME(V*V,P3)
                  SOMVW = SOMME(V*W,P3)

                  C = (P3*SOMVW-SOMV*SOMW)/(P3*SOMVV-SOMV*SOMV)
                  D = (SOMW-C*SOMV)/P3

                  POUR P3 COURS
                  HAUTE(0)=MAXVAL(Ouverture,Cloture)
                  BASE(0)=MINVAL(Ouverture,Cloture)

                  DROITE_REG1(0) = C * V + D
                  ECART_HAUTE(0) = HAUTE-DROITE_REG1
                  ECART_BASE(0) = DROITE_REG1-BASE
                  FINPOUR

                  EO =MAX(ECART_HAUTE,P3)
                  EP =MAX(ECART_BASE,P3)

                  POUR P3 COURS
                  SI HAUTE=DROITE_REG1 + EO
                  ALORS
                  V1=RANGPOUR
                  OT=HAUTE
                  FINSI
                  SI BASE=DROITE_REG1 - EP
                  ALORS
                  V2=RANGPOUR
                  PS=BASE
                  FINSI
                  FINPOUR


                  POUR P3 COURS
                  DROITE_SUP1 = C*V + (OT - C*V1)
                  DROITE_INF1 = C*V + (PS - C*V2)
                  FINPOUR
                  FINSI
                  L'homme sage est celui qui connait ses limites (Magnum force (Callahan/Clint Eastwood))

                  Commentaire


                  • Bonjour,

                    je reviens sur mon problème de Force relative (Mon boulot se calme <img src='http://www.pro-at.com/style/images/icones/icon_smile_cool.gif' border='0' alt='' title='' align='middle' />).

                    J'ai essayé de programmer la force relative pour avoir cet indicateur avec 4 longueurs différentes.
                    Mais ce qui me semble interessant c'est que l'indicateur soit glissant, c'est à dire que la FR à 1 an soit calculée toujours par rapport aux cours d'un an avant- ainsi la FR au 10/04/2012 serait calculée par rapport à la valeur de clôture et celle de l'indice du 10/04/2011).
                    Mon programme est ci après mais il ne fonctionne pas du tout (Ca ne m'étonne pas, je sais juste adapter les programmes). Ou est ce que je me trompe?
                    Merci d'avance pour votre aide.
                    Démon<center><a href='http://www.pro-at.com/forums-bourse/0612/11143_181949.gif' target='_blank' style='display:block; width:600px; border:2px dashed #888; padding:10px'><img src="http://www.pro-at.com/forums-bourse/0612/11143_181949.gif" alt='' width='600' height='480' /><em style='display:block; text-align: right'>Cliquez pour agrandir</em></a></center>
                    <center><a href='http://www.pro-at.com/forums-bourse/0612/11143_181949_c1d10df05ad16739cf7a87da7279dd37.gif' target='_blank' style='display:block; width:600px; border:2px dashed #888; padding:10px'><img src="http://www.pro-at.com/forums-bourse/0612/11143_181949_c1d10df05ad16739cf7a87da7279dd37.gif" alt='' width='600' height='480' /><em style='display:block; text-align: right'>Cliquez pour agrandir</em></a></center>
                    <center><a href='http://www.pro-at.com/forums-bourse/0612/11143_181950.gif' target='_blank' style='display:block; width:600px; border:2px dashed #888; padding:10px'><img src="http://www.pro-at.com/forums-bourse/0612/11143_181950.gif" alt='' width='600' height='480' /><em style='display:block; text-align: right'>Cliquez pour agrandir</em></a></center>
                    L'homme sage est celui qui connait ses limites (Magnum force (Callahan/Clint Eastwood))

                    Commentaire


                    • Bonjour Demon,

                      J'ai écrit un petit programme pour résoudre ton pb de forces relatives multiples glissantes.
                      J'utilise les définitions que je donnais page 3 et je n'ai pas tenu compte du fait que les valeurs que l'on compare pourraient avoir des historiques de longueurs différentes. Ceci a peu de chances de se produire vu que la force relative la plus longue, l'annuelle, est calculée sur 257 périodes.
                      Plus précisément j'utilise une boucle "Pour" par durée de calcul, cela fait quatre boucles "Pour" donc.

                      <strong>Programme :</strong>
                      //==========================
                      //Forces_Relatives_Multiples
                      //==========================

                      //V1.0
                      //le 26/06/2012
                      //smallcaps90
                      //==========================
                      //P1, P2, P3 P4 sont les durées des calculs
                      //pour les forces relatives annuelle, semestrielle,
                      //trimestrielle et mensuelle
                      //P5 recul de calcul des moyennes des forces relatives
                      //=====================================================


                      //Récup de la valeur de comparaison
                      //
                      VC(0)=Reference

                      Si RangHisto=FinHisto Alors

                      //Force Relative Externe Annuelle
                      //
                      C1=Cloture(P1)
                      VC1=VC(P1)
                      Pour P1 Cours
                      ProAct1=(Cloture-C1)/C1
                      ProComp1=(VC-VC1)/VC1
                      FRE1(0)=ProAct1-ProComp1
                      MFRE1=Moyenne(FRE1,P5)
                      FinPour

                      //Force Relative Externe Semestrielle
                      //
                      C2=Cloture(P2)
                      VC2=VC(P2)
                      Pour P2 Cours
                      ProAct2=(Cloture-C2)/C2
                      ProComp2=(VC-VC2)/VC2
                      FRE2(0)=ProAct2-ProComp2
                      MFRE2=Moyenne(FRE2,P5)
                      FinPour

                      //Force Relative Externe Trimestrielle
                      //
                      C3=Cloture(P3)
                      VC3=VC(P3)
                      Pour P3 Cours
                      ProAct3=(Cloture-C3)/C3
                      ProComp3=(VC-VC3)/VC3
                      FRE3(0)=ProAct3-ProComp3
                      MFRE3=Moyenne(FRE3,P5)
                      FinPour

                      //Force Relative Externe Mensuelle
                      //
                      C4=Cloture(P4)
                      VC4=VC(P4)
                      Pour P4 Cours
                      ProAct4=(Cloture-C4)/C4
                      ProComp4=(VC-VC4)/VC4
                      FRE4(0)=ProAct4-ProComp4
                      MFRE4=Moyenne(FRE4,P5)
                      FinPour

                      FinSi

                      //Fin du code
                      =========================================

                      Tu peux supprimer les lignes de calculs des moyennes si tu ne els souhaites pas.


                      <strong>Fenêtre Propriétés :</strong>

                      <center><img src='http://www.pro-at.com/forums-bourse/0612/3668_270837.png' alt='' /></center>

                      <strong>Exemple avec Altran Technologies :</strong>

                      <center><img src='http://www.pro-at.com/forums-bourse/0612/3668_270838.png' alt='' /></center>


                      Où en es-tu avec ton programme de canaux automatiques?

                      Cordialement

                      Commentaire


                      • Bonsoir, je vois que l'on travaille toujours ici, je m'absente 5 minutes et je retrouve de nouveaux programmes, mes amitiés à tous et bonne continuation
                        Didier
                        Max imum de gains et Min imum de pertes

                        Commentaire


                        • Bonjour Smallcaps90;

                          je teremercie pour tes efforts;

                          j'ai programmé sous excel, à partir des fichiers de Cyberpapy, l'indicateur de force relative glissante tel que je pense qu'il donne des informations interessantes.
                          J'ai ajouté les FR semestrielles et trimestrielles à la FR annuelle, ce qui peut s'assimiler à une courbe de signal.
                          Exemple ci après.
                          Mais je n'arrive pas à la programmer sous GraphAt.


                          <center><a href='http://www.pro-at.com/forums-bourse/0712/11143_252014.gif' target='_blank' style='display:block; width:600px; border:2px dashed #888; padding:10px'><img src="http://www.pro-at.com/forums-bourse/0712/11143_252014.gif" alt='' width='600' height='480' /><em style='display:block; text-align: right'>Cliquez pour agrandir</em></a></center>


                          En ce qui concerne mes canaux, j'ai commencé à regarder.
                          Je pense (mais je suis très faible en programmation) utiliser la formule de pente dont tu t'est servi pour tracer les divergences.

                          Merci encore de tout ce travail que tu partages.
                          L'homme sage est celui qui connait ses limites (Magnum force (Callahan/Clint Eastwood))

                          Commentaire


                          • Bonsoir,

                            ce soir la colère m'a pris et après bien des essais, je suis arrivé à faire partir les canaux de la déclarations des cycles. Cela me permet d'avoir une visualisation automatique du déroulement des cycles.

                            Cf programme et graphe exemple.

                            / Droite de régression linéaire se termine à P1 périodes
                            // de la période actuelle, et commence à P1+P2 périodes de celle-ci.
                            // Canaux de régression linéaire tracés parallèlement à la droite
                            // de régression linéaire par la plus haute (ouverture-cloture) et la plus basse (ouverture-cloture)
                            //de la période.
                            //
                            Courbe1 = UBOLL
                            Courbe2 = MBOLL
                            Courbe3 = LBOLL

                            SI RANGHISTO = FINHISTO - 3
                            ALORS
                            pour 120 COURS
                            CycleMajeur=-CYCLE_INDENTIFIER.MajorCycleBuy+CYCLE_INDENTIFIER.MajorCycleSell
                            CycleMineur=-CYCLE_INDENTIFIER.MinorCycleBuy+CYCLE_INDENTIFIER.MinorCycleSell
                            SI CycleMajeur=1
                            ALORS
                            CM = FINHISTO-RANGHISTO-1
                            FINSI
                            SI CycleMineur=1
                            ALORS
                            CP = FINHISTO-RANGHISTO-1
                            FINSI
                            FINPOUR
                            FINSI



                            SI RANGHISTO = FINHISTO - P1
                            ALORS

                            POUR CP COURS
                            X(0) = RANGPOUR
                            Y(0) = CLOTURE
                            FINPOUR

                            SOMX = SOMME(X,CP)
                            SOMY = SOMME(Y,CP)
                            SOMXX = SOMME(X*X,CP)
                            SOMXY = SOMME(X*Y,CP)

                            A = (CP*SOMXY-SOMX*SOMY)/(CP*SOMXX-SOMX*SOMX)
                            B = (SOMY-A*SOMX)/CP

                            POUR CP COURS
                            HAUTC(0)=MAXVAL(Ouverture,Cloture)
                            BASC(0)=MINVAL(Ouverture,Cloture)

                            DROITE_REG(0) = A * X + B
                            ECART_HAUTC(0) = HAUTC-DROITE_REG
                            ECART_BASC(0) = DROITE_REG-BASC
                            FINPOUR

                            EH =MAX(ECART_HAUTC,CP)
                            EB =MAX(ECART_BASC,CP)

                            POUR CP COURS
                            SI HAUTC=DROITE_REG + EH
                            ALORS
                            X1=RANGPOUR
                            HT=HAUTC
                            FINSI
                            SI BASC=DROITE_REG - EB
                            ALORS
                            X2=RANGPOUR
                            BS=BASC
                            FINSI
                            FINPOUR

                            POUR CP COURS
                            DROITE_SUP = A*X + (HT - A*X1)
                            DROITE_INF = A*X + (BS - A*X2)
                            FINPOUR
                            FINSI

                            SI RANGHISTO = FINHISTO - P3
                            ALORS

                            POUR CM COURS
                            V(0) = RANGPOUR
                            W(0) = CLOTURE
                            FINPOUR

                            SOMV = SOMME(V,CM)
                            SOMW = SOMME(W,CM)
                            SOMVV = SOMME(V*V,CM)
                            SOMVW = SOMME(V*W,CM)

                            C = (CM*SOMVW-SOMV*SOMW)/(CM*SOMVV-SOMV*SOMV)
                            D = (SOMW-C*SOMV)/CM

                            POUR CM COURS
                            HAUTE(0)=MAXVAL(Ouverture,Cloture)
                            BASE(0)=MINVAL(Ouverture,Cloture)

                            DROITE_REG1(0) = C * V + D
                            ECART_HAUTE(0) = HAUTE-DROITE_REG1
                            ECART_BASE(0) = DROITE_REG1-BASE
                            FINPOUR

                            EO =MAX(ECART_HAUTE,CM)
                            EP =MAX(ECART_BASE,CM)

                            POUR CM COURS
                            SI HAUTE=DROITE_REG1 + EO
                            ALORS
                            V1=RANGPOUR
                            OT=HAUTE
                            FINSI
                            SI BASE=DROITE_REG1 - EP
                            ALORS
                            V2=RANGPOUR
                            PS=BASE
                            FINSI
                            FINPOUR


                            POUR CM COURS
                            DROITE_SUP1 = C*V + (OT - C*V1)
                            DROITE_INF1 = C*V + (PS - C*V2)
                            FINPOUR
                            FINSI

                            <center><a href='http://www.pro-at.com/forums-bourse/0812/11143_020207.gif' target='_blank' style='display:block; width:600px; border:2px dashed #888; padding:10px'><img src="http://www.pro-at.com/forums-bourse/0812/11143_020207.gif" alt='' width='600' height='393' /><em style='display:block; text-align: right'>Cliquez pour agrandir</em></a></center>

                            Voila. Pour vous les AS de la programmation, ce n'est rien mais moi c'est la fête et je partage ma joie avec vous.

                            Sur ce, Bonne Nuit.
                            L'homme sage est celui qui connait ses limites (Magnum force (Callahan/Clint Eastwood))

                            Commentaire


                            • Bonjour Demon,

                              Eh bien voilà tu y es arrivé, bravo!
                              Pourrais-tu poster aussi la fenêtre "Propriétés" de l'indic?
                              Elle est bien utile pour comprendre quelles sont les courbes que tu traces et connaître les valeurs de tes paramètres.
                              Je te souhaite bonne continuation.
                              Cordialement.

                              Commentaire


                              • Bonjour Smallcaps;
                                merci pour tes encouragements

                                ci joint le tableau propriété.
                                J' ai changé légèrement le programme pour mettre en variable la période ou je ne veux pas que des cycles soient détectés. En effet je me sers visuellement des canaux pour valider ou non un changement de cycle (je n'oublie pas que cet indicateur repeint le passé: par exemple un cycle majeur baissier sur le CAC déclenché le 5 juillet a disparu le 27. Il est vrai qu'avant ce jour le cycle corroborait la théorie de Dow-haut: sommet du 19 plus bas et bas du 25 plus bas).
                                Programme modifié:

                                //Sur une idée originale de Smallcaps90
                                // Droite de régression linéaire se termine à P1 périodes
                                // de la période actuelle, et commence à début des derniers cycles mineurs (à P3 & P4 jours) et majeurs de celle-ci
                                // Canaux de régression linéaire tracés parallèlement à la droite
                                // de régression linéaire par la plus haute (ouverture-cloture) et la plus basse (ouverture-cloture)
                                //de la période.
                                //
                                Courbe1 = UBOLL
                                Courbe2 = MBOLL
                                Courbe3 = LBOLL

                                SI RANGHISTO = FINHISTO - P3
                                ALORS
                                pour 220 COURS
                                CycleMajeur=-CYCLE_INDENTIFIER.MajorCycleBuy+CYCLE_INDENTIFIER.MajorCycleSell
                                SI CycleMajeur=1
                                ALORS
                                CM = FINHISTO-RANGHISTO-1
                                FINSI
                                FINPOUR
                                FINSI

                                SI RANGHISTO = FINHISTO - P4
                                ALORS
                                pour 220 COURS
                                CycleMineur=-CYCLE_INDENTIFIER.MinorCycleBuy+CYCLE_INDENTIFIER.MinorCycleSell
                                SI CycleMineur=1
                                ALORS
                                CP = FINHISTO-RANGHISTO-1
                                FINSI
                                FINPOUR
                                FINSI


                                SI RANGHISTO = FINHISTO - P1
                                ALORS

                                POUR CP COURS
                                X(0) = RANGPOUR
                                Y(0) = CLOTURE
                                FINPOUR

                                SOMX = SOMME(X,CP)
                                SOMY = SOMME(Y,CP)
                                SOMXX = SOMME(X*X,CP)
                                SOMXY = SOMME(X*Y,CP)

                                A = (CP*SOMXY-SOMX*SOMY)/(CP*SOMXX-SOMX*SOMX)
                                B = (SOMY-A*SOMX)/CP

                                POUR CP COURS
                                HAUTC(0)=MAXVAL(Ouverture,Cloture)
                                BASC(0)=MINVAL(Ouverture,Cloture)

                                DROITE_REG(0) = A * X + B
                                ECART_HAUTC(0) = HAUTC-DROITE_REG
                                ECART_BASC(0) = DROITE_REG-BASC
                                FINPOUR

                                EH =MAX(ECART_HAUTC,CP)
                                EB =MAX(ECART_BASC,CP)

                                POUR CP COURS
                                SI HAUTC=DROITE_REG + EH
                                ALORS
                                X1=RANGPOUR
                                HT=HAUTC
                                FINSI
                                SI BASC=DROITE_REG - EB
                                ALORS
                                X2=RANGPOUR
                                BS=BASC
                                FINSI
                                FINPOUR

                                POUR CP COURS
                                DROITE_SUP = A*X + (HT - A*X1)
                                DROITE_INF = A*X + (BS - A*X2)
                                FINPOUR
                                FINSI

                                SI RANGHISTO = FINHISTO - P2
                                ALORS

                                POUR CM COURS
                                V(0) = RANGPOUR
                                W(0) = CLOTURE
                                FINPOUR

                                SOMV = SOMME(V,CM)
                                SOMW = SOMME(W,CM)
                                SOMVV = SOMME(V*V,CM)
                                SOMVW = SOMME(V*W,CM)

                                C = (CM*SOMVW-SOMV*SOMW)/(CM*SOMVV-SOMV*SOMV)
                                D = (SOMW-C*SOMV)/CM

                                POUR CM COURS
                                HAUTE(0)=MAXVAL(Ouverture,Cloture)
                                BASE(0)=MINVAL(Ouverture,Cloture)

                                DROITE_REG1(0) = C * V + D
                                ECART_HAUTE(0) = HAUTE-DROITE_REG1
                                ECART_BASE(0) = DROITE_REG1-BASE
                                FINPOUR

                                EO =MAX(ECART_HAUTE,CM)
                                EP =MAX(ECART_BASE,CM)

                                POUR CM COURS
                                SI HAUTE=DROITE_REG1 + EO
                                ALORS
                                V1=RANGPOUR
                                OT=HAUTE
                                FINSI
                                SI BASE=DROITE_REG1 - EP
                                ALORS
                                V2=RANGPOUR
                                PS=BASE
                                FINSI
                                FINPOUR


                                POUR CM COURS
                                DROITE_SUP1 = C*V + (OT - C*V1)
                                DROITE_INF1 = C*V + (PS - C*V2)
                                FINPOUR
                                FINSI

                                <center><img src='http://www.pro-at.com/forums-bourse/0812/11143_041215.gif' alt='' /></center>
                                L'homme sage est celui qui connait ses limites (Magnum force (Callahan/Clint Eastwood))

                                Commentaire

                                Chargement...
                                X