Annonce
Réduire
Aucune annonce.
Ads
Réduire
[Graphe AT PRo : programmation]
Réduire
X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

  • Un grand merci à SmallCaps et à son complice Rickenbroc pour leur travail sur GrahtAT...
    Je me suis amusé à dériver deux indices sur Zerolagmacd. Dessous graph avec amazon.com et les indics.

    Z'auriez pas un zérolagmacd lissé mâtiné de volatilité et de force relative ?
    <center><a href='http://upload.pro-at.com/02/histoire%20d'indics.png' target='_blank' style='display:block; width:600px; border:2px dashed #888; padding:10px'><img src="http://upload.pro-at.com/02/histoire%20d'indics.png" alt='' width='600' height='352' /><em style='display:block; text-align: right'>Cliquez pour agrandir</em></a></center>

    Commentaire


    • Morbleu, ça ne passe pas ! (le gtraph).*

      Je réessaye en Gif (j'étais en PNG);
      <center><a href='http://upload.pro-at.com/02/histoire%20d'indics.gif' target='_blank' style='display:block; width:600px; border:2px dashed #888; padding:10px'><img src="http://upload.pro-at.com/02/histoire%20d'indics.gif" alt='' width='600' height='352' /><em style='display:block; text-align: right'>Cliquez pour agrandir</em></a></center>

      Commentaire


      • Toujours pas...
        On essaye autrement...
        <center><a href='http://upload.pro-at.com/02/histoire%20d'indics1.gif' target='_blank' style='display:block; width:600px; border:2px dashed #888; padding:10px'><img src="http://upload.pro-at.com/02/histoire%20d'indics1.gif" alt='' width='600' height='352' /><em style='display:block; text-align: right'>Cliquez pour agrandir</em></a></center>
        Ca ne marche toujour pas,.... Ya + simple comme syteme. Morbleu !
        <center><a href='http://upload.pro-at.com/02/histoire%20d'indics1.gif' target='_blank' style='display:block; width:600px; border:2px dashed #888; padding:10px'><img src="http://upload.pro-at.com/02/histoire%20d'indics1.gif" alt='' width='600' height='352' /><em style='display:block; text-align: right'>Cliquez pour agrandir</em></a></center>

        en prévisualization que dall...

        J'envoie, peut-être quéqu'chose apparaitra ?...

        Commentaire


        • Bonsoir Orpale,

          ne serait ce pas çà que tu essaies de poster ?

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

          Apparemment, le système n'apprécie pas beaucoup les apostrophes ou les espaces dans les noms de fichier . gif uploadés.
          Essaie de nouveau en virant ce genre de caractère dans tes noms de fichiers.





          Bruno.

          Commentaire


          • Tu l'as retrouvé où ?

            C'est quoi un gif "uploadé" ?

            Pardonnez l'intermède, je suis habitué à des systèmes plus simples d'insertions d'images. Je ne comprends pas pourquoi ça n'a pas marché (j'ai relu plusieurs fois l'aide).

            Merci, si vous avez une explication de me la poster.

            En revenant aux indics, intégrer du lissage, des notions de volatilité, et de force relative dans des dérivés de MACD me plairait bien.

            Commentaire


            • Smallcaps90,

              Merci pour ta réponses et je ne manquerais pas de te demander si besoin.


              Actuellement, j ai pas fini de lire le post en entier et n'en suis qu'au début.

              J'essaye de programmer impulse mais il ne s'affiche pas correctement (comme démontré sur le post de Rickenbroc), enfin je vais voir ça...

              Je te tiens au courant,<img src='http://www.pro-at.com/style/images/icones/icon_smile_cool.gif' border='0' alt='' title='' align='middle' />

              Commentaire


              • Bonjour,

                Voici le code GrapheAT PRO d'un des systèmes "MESA" de J. Ehlers.
                Il permet de déterminer le mode dans lequel le cours se trouve : Cycle court terme ou Tendance selon Ehlers.
                Le programme recherche à chaque instant le cycle dominant présent dans le cours en calculant sa période, sa phase et le rapport signal/bruit en dB.
                La méthode est basée sur la transformation de Hilbert et les travaux de J. P. Burg sur le "maximum d'entropie" pour extraire d'un signal sa composante sinuisoïdale dominante.

                On pourra se reporter à la file : "TRAITEMENT DU SIGNAL, systèmes dynamiques autoadaptatifs" du forum " Recherche et systèmes" pour trouver plus de renseignements sur ces techniques.

                Le programme comporte plusieurs indicateurs à placer dans un même répertoire :

                <center><em style='border:2px dashed #888; padding:10px'>image : <a href='/ref.php?uri=http%3A%2F%2Fupload.pro-at.com%2F02%2Frepertoire1.gifintrouvable' target="_blank">http://upload.pro-at.com/02/repertoire1.gifintrouvable</a> ou format inconnu</em></center>

                PROGRAMME :
                <pre>
                INDICATEUR "PERIODE" :

                ----------------------------
                <font size="1">//TRENDLINE DE J. EHLERS
                //CALCUL DE LA PERIODE DU CYCLE DOMINANT (en jours)
                //v 1.3 du 02/06/2004
                //

                PRIX(0)= (HAUT+BAS)/2 //SINUSOIDE.SINUSOIDE ou CLOTURE

                SI RANGHISTO<=5
                ALORS
                PERIODE3(0)=0
                V5(0)=0
                FINSI

                SI RANGHISTO>5
                ALORS

                //Détermination de la phase de chaque tic
                //(PHASE_DEG)
                //
                V1(0) = PRIX-PRIX(6)
                V2(0) = V1(3)
                V3(0) = 0.75*(V1-V1(6))+0.25*(V1(2)-V1(4))
                EN_PHASE(0) = 0.33*V2+0.67*EN_PHASE(1)
                EN_QUADRATURE(0) = 0.2*V3+0.8*EN_QUADRATURE(1)

                SI ABSOLU(EN_PHASE+EN_PHASE(1))>0
                ALORS
                A = ABSOLU((EN_QUADRATURE+EN_QUADRATURE(1))/(EN_PHASE+EN_PHASE(1)))
                PHASE_RAD(0) = ATAN(A) //résultat en radians
                PHASE_DEG(0) = 180*PHASE_RAD/PI //en degrés
                FINSI

                //Correction si autres quadrants
                //
                SI EN_PHASE<0 ET EN_QUADRATURE>0 ALORS PHASE_DEG = 180 - PHASE_DEG
                SI EN_PHASE<0 ET EN_QUADRATURE<0 ALORS PHASE_DEG = 180 + PHASE_DEG
                SI EN_PHASE>0 ET EN_QUADRATURE<0 ALORS PHASE_DEG = 360 - PHASE_DEG

                //Phase différentielle et corrections éventuelles
                //(DELTA_PHASE)
                //
                DELTA_PHASE(0) = PHASE_DEG(1) - PHASE_DEG
                SI PHASE_DEG(1)<90 ET PHASE_DEG>270 ALORS DELTA_PHASE = 360 + DELTA_PHASE

                SI DELTA_PHASE<1 ALORS DELTA_PHASE=1
                SI DELTA_PHASE>60 ALORS DELTA_PHASE=60

                //Calcul de la période instantanée du cycle actuel
                //et correction éventuelle
                //(PERIODE_INSTANT)
                //
                PERIODE_INSTANT(0) = 0
                V4 = 0
                I = 0
                TANTQUE I<41 FAIRE
                V4 = V4 + DELTA_PHASE(I)
                SI V4>360 ET PERIODE_INSTANT=0 ALORS PERIODE_INSTANT = I
                I=I+1
                FINTANTQUE

                SI PERIODE_INSTANT=0 ALORS PERIODE_INSTANT=PERIODE_INSTANT(1)

                //Calcul de la PERIODE
                //
                V5 = 0.25*PERIODE_INSTANT + 0.75*V5(1)

                PERIODE = V5
                LISSE_PERIODE(0) = 0.33*PERIODE+0.67*LISSE_PERIODE(1)

                FINSI</font id="size1">
                ----------------------------
                </pre>
                Propriétés :

                <center><img src='http://upload.pro-at.com/02/prop-periode1.gif' alt='' /></center>

                INDICATEUR PHASE :

                ----------------------------
                <font size="1">//TRENDLINE DE J. EHLERS
                //CALCUL DE LA PHASE DU CYCLE DOMINANT (en degrés)
                //v 1.2 du 02/06/2004
                //

                SI RANGHISTO>5
                ALORS

                PRIX(0) = PERIODE.PRIX
                PERIODE(0) = ENTIER(PERIODE.V5)

                PARTIE_REELLE = 0
                PARTIE_IMAGINAIRE = 0
                K = 0
                TANTQUE K<PERIODE FAIRE //calculs en radians
                PARTIE_REELLE = PARTIE_REELLE + SIN(2*PI*K/PERIODE)*PRIX(K)
                PARTIE_IMAGINAIRE = PARTIE_IMAGINAIRE + COS(2*PI*K/PERIODE)*PRIX(K)
                K = K+1
                FINTANTQUE

                SI ABSOLU(PARTIE_IMAGINAIRE)>0.001
                ALORS
                DCPHASE_RAD = ATAN(PARTIE_REELLE/PARTIE_IMAGINAIRE)
                DCPHASE_DEG = 180*DCPHASE_RAD/PI
                FINSI

                SI ABSOLU(PARTIE_IMAGINAIRE)<=0.001
                ALORS
                SI PARTIE_REELLE>=0
                ALORS
                SIGNE_PARTIE_REELLE=1
                SINON
                SIGNE_PARTIE_REELLE=-1
                FINSI
                DCPHASE_DEG = 90*SIGNE_PARTIE_REELLE
                FINSI

                DCPHASE_DEG = DCPHASE_DEG + 90

                SI PARTIE_IMAGINAIRE<0 ALORS DCPHASE_DEG = DCPHASE_DEG + 180

                //SI DCPHASE_DEG>315 ET DCPHASE_DEG<=360 ALORS DCPHASE_DEG = DCPHASE_DEG - 360

                PHASE = DCPHASE_DEG
                DELTA_PHASE = PERIODE.DELTA_PHASE

                FINSI</font id="size1">
                ----------------------------

                Propriétés :

                <center><img src='http://upload.pro-at.com/02/prop-phase.gif' alt='' /></center>

                INDICATEUR RSB :

                ----------------------------
                <font size="1">//TRENDLINE DE J. EHLERS
                //CALCUL DU RAPPORT SIGNAL/BRUIT (RSB en dB)
                //v 1.0 du 12/06/2004
                //

                L6 = 6
                SI RANGHISTO<=8
                ALORS
                RSB(0) = 0
                RANGE(0) = 0
                EN_PHASE(0) = 0
                EN_QUADRATURE(0) = 0
                FINSI

                SI RANGHISTO>8
                ALORS
                PRIX(0)= PERIODE.PRIX

                //Détermination des composantes en phase et en quadrature
                //Transformation de Hilbert
                //
                RANGE(0) = 0.2*(HAUT-BAS) + 0.8*RANGE(1)
                V1(0) = PRIX-PRIX(6)
                V2(0) = V1(3)
                V3(0) = 0.75*(V1-V1(6))+0.25*(V1(2)-V1(4))
                EN_PHASE(0) = 0.33*V2+0.67*EN_PHASE(1)
                EN_QUADRATURE(0) = 0.2*V3+0.8*EN_QUADRATURE(1)

                //Lissage du rapport signal/bruit
                //
                V2 = 0.2*(EN_PHASE^2 + EN_QUADRATURE^2) + 0.8*V2(1)

                //Calcul du rapport signal/bruit lissé
                //
                SI V2<0.001 ALORS V2=0.001
                SI RANGE>0
                ALORS
                RSB = 0.25*(10*LOG10(V2/(RANGE^2))+4.7) + 0.75*RSB(1)
                FINSI

                FINSI</font id="size1">
                ----------------------------

                Propriétés :

                <center><img src='http://upload.pro-at.com/02/prop-rsb.gif' alt='' /></center>

                INDICATEUR SINEWAVE :

                ----------------------------
                <font size="1">//TRENDLINE DE J. EHLERS
                //CALCUL DU SINEWAVE et du LEAD_SINEWAVE
                //(Sinus de la phase et ce même sinus avancé de 45°)
                //v 1.5 du 01/06/2004
                //

                SI RANGHISTO>5
                ALORS
                PHASE = PI*PHASE.DCPHASE_DEG/180

                SINEWAVE = SIN(PHASE)
                LEAD_SINEWAVE = SIN(PHASE + PI/4)

                FINSI</font id="size1">
                ----------------------------

                Propriétés :

                <center><img src='http://upload.pro-at.com/02/prop-sinewave.gif' alt='' /></center>


                INDICATEUR TRENDLINE :

                (A afficher sur les cours...)

                ----------------------------
                <font size="1">//TRENDLINE INDICATOR DE J. EHLERS
                //CALCUL DE LA TRENDLINE ET DU FILTRE DE KALMAN
                //(Utilisés comme 2 moyennes mobiles adaptatives en mode Tendance)
                //v 1.0 du 02/06/2004
                //

                SI RANGHISTO>5
                ALORS
                PRIX(0)=PERIODE.PRIX
                PERIODE = ENTIER(PERIODE.V5)
                TRENDLINE = 0
                J = 0
                TANTQUE J<PERIODE+2 FAIRE
                TRENDLINE = TRENDLINE + PRIX(J)
                J = J+1
                FINTANTQUE

                SI PERIODE>0 ALORS TRENDLINE = TRENDLINE/(PERIODE+2)

                //Filtre de Kalman 0 lag
                //
                KALMAN = 0.33*(PRIX + 0.5*(PRIX-PRIX(3))) + 0.67*KALMAN(1)

                SI RANGHISTO<26
                ALORS
                TRENDLINE = PRIX
                K = PRIX
                FINSI

                FINSI</font id="size1">
                ----------------------------

                Propriétés :

                <center><img src='http://upload.pro-at.com/02/prop-trendline.gif' alt='' /></center>


                Un exemple avec A NOVO :

                <center><img src='http://upload.pro-at.com/02/anovo_syst2.gif' alt='' /></center>

                Quelques explications succinctes :

                En A, le filtre de Kalman croise à la hausse la Trendline, la période du cycle dominant est d'environ 14 jours.
                On compte le nombre de jours qui s'écoulent à partir de ce croisement.
                Si Kalman ne croise pas la Trendline à la baisse avant un demi-cycle, soit 7 jours, nous sommes en mode Tendance. Ce qui est le cas ici.
                On prend position à l'achat.
                On vend dès que Kalman croise la Trendline à la baisse. Ceci se produit en B. On quitte alors le mode Tendance pour entrer en mode Cycle.
                On se positionne à l'achat en C au croisement vers le haut du Sinewave par son signal Lead-Sinewave. On revend en D lorsque le croisement se fait vers le bas entre ces deux mêmes courbes.
                L'encadré 1 montre la forme quasi-parfaite du sinus de la phase pendant ce cycle, alors que l'encadré 2 montre la variation parfaitement linéaire de la phase de 0° à 360° (ce n'était pas le cas pendant la période de Tendance de A à B).
                On peut remarquer aussi la valeur du signal rapport/bruit > 6dB pendant cette phase de C à D, ce qui conforte l'hypothèse du cycle dominant.

                Commentaire


                • Bonjour smallcap

                  J'ai suivi tes infos pour la prog de ces indicateurs mais quand je fais tester le prog "Phase" sur graph AT, il me met une erreur sur :

                  PERIODE.DELTA_PHASE

                  Il ne connait pas cette bête !!!

                  Commentaire


                  • Bonjour FOKI,

                    Tu as du copier la première version que j'ai corrigée ensuite. En effet on la voit apparaître maintenant dans les Propriétés du programme "PERIODE" (ligne : Courbe 5), ce qui permet de la transmettre sans problème au programme "PHASE".
                    En réalité la variable "DELTA_PHASE" n'est pas utilisée dans le programme "PHASE". Je l'y ai juste introduite une effectuer une vérification sur son évolution.

                    Tu peux donc au choix :
                    - effacer cette ligne du programme "PHASE" si tu ne souhaites pas utiliser la variable "DELTA_PHASE";
                    - ou recopier la dernière version corrigée dans mon post.

                    Commentaire


                    • <br />
                      Merci Smallcap

                      Commentaire


                      • Pour Smallcap


                        Est ce que cela serait compliqué de faire une règle de stat dans graph at sur le croisement (Jour,semaine) de trendline / kalman.



                        Commentaire


                        • Bravo encore une fois Smallcaps90 ! Je viens de jeter un coup d'oeil au site de Ehlers : www.mesasoftware.com, où on peut trouver un ensemble de textes librement accessibles pour avoir des détails sur la méthode. Ce qui serait génial, ce serait d'avoir directement les barres de cours colorées de couleurs différentes selon que l'on est en phase de Cycle ou de Trend, comme le fait le logiciel Mesa. Tu penses que c'est possible, Smallcaps90 ?

                          Commentaire


                          • Re FOKI,

                            Cà n'est pas très compliqué.
                            Tu as tous les éléments en main pour le faire...

                            Commentaire


                            • Bonsoir Pwaget,

                              Merci pour tes encouragements, mais je n'ai fait que traduire un programme écrit par Ehlers en Easy Langage avec celui de GrapheAT Pro qui en est assez proche en fait.
                              Pour ce qui concerne la détermination des périodes en mode tendance ou en mode cycle, Ehlers utilise un autre indicateur qui est égal à 0 si les cours sont en mode cycle et égal à 1 en mode tendance. Je ne l'ai pas encore introduit, cela peut se faire ou encore comme tu le dis, colorier les barres (ou les chandeliers) des cours d'une couleur différente selon le mode. Je vais voir çà...

                              Commentaire


                              • Pour Smallcap

                                J'ai essayé mais ça veut pas LOL !!


                                Voilà ce que j'ai mis (on ne rigole pas !!)


                                Si CROISE(KALMAN,TRENDLINE)>0 Alors SelectionAchat

                                Si CROISE(KALMAN,TRENDLINE)<0 Alors SelectionVente

                                Commentaire

                                Chargement...
                                X