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

  • Bonsoir à Toutes et Tous utilisateurs de GrapheAT Pro sur le site....je vous salue chaleureusement!

    Voilà,comme je suis redescendu de mes vacances dans les Dolomites (coucou Foki!), et que je n'avais pas perdu complètement le "virus", je me suis décidé à poster un petit quelque chose dans la ligne de nos travaux passés.
    J'ai découvert un article américain qui propose une approche intéressante, me semble-t-il, et qui reste à valider bien sûr: les bandes de Fong...

    Source :
    Regime-Switching Trading Bands Using A Historical Simulation Approach
    By Ka Ying Timothy Fong, CFTe, MFTA
    IFTA journal 2013 Edition (p 20-2727)


    Une petite synthèse de l'article :

    Après une "critique" des bandes de Bollinger, des enveloppes de moyennes mobiles, des bandes de Keltner et de Donchian, l'auteur aborde son système.

    Il propose une approche nouvelle pour construire et utiliser trois outils originaux et complémentaires en trading :

    1- Une simulation historique tout d’abord pour générer un système de bandes de sorte que la distribution empirique des prix puisse être capturée le mieux possible.
    2- Un filtre d'autocorrélation ensuite pour ajouter aux bandes, un système qui confirme si le prix est en tendance ou oscillant en range.
    3- Un filtre de confirmation enfinpour valider si les prix ont tendance à augmenter (ou diminuer) plutôt que de revenir à la moyenne.

    Remarques :
    On peut souligner la double originalité du travail de Fong, tout d’abord pour l’emploi très utile de l'autocorrélation si peu présente en analyse technique et ensuite pour la technique proposée par Fong pour construire des bandes qui ne préjugent aucunement que les cours suivent des processus gaussiens (cf les 95 % des cours dans les bandes de Bollinger construites avec 2 écarts-types).

    1- Simulation historique par calcul de l’autocorrélation des clôtures.
    Le moyen le plus direct, le plus intuitif aussi, qui élimine une reconnaissance cognitive pour apprécier si le prix est en tendance ou en range est d’utiliser le concept d'autocorrélation.
    Un filtre d'autocorrélation, en utilisant les 10 derniers jours du cours de clôture sera construit pour déterminer si les cours sont en tendance ou non .
    Le choix de 10 cours est plus sensible aux prix de clôture récents et cela préserve aussi le principe d'harmonicité développé par J.M. Hurst.
    Il est possible aussi d'utiliser une fenêtre de temps plus courte si nécessaire (par exemple 5 jours au lieu de 10 jours) pour calculer l'autocorrélation afin de capturer pleinement tous les mouvements du titre.
    Voici la formule d'autocorrélation d’une série de prix P :



    Où ;

    P est le cours de clôture

    h est le décalage d’autocorrélation (= 1 ici)
    N estle nombre d'observations à prendre pour chaque point (= 10 ici)
    P barre est le prix de clôture moyen sur la période d’observation (= somme des 10 clôtures précédentes et actuelle /10).


    Interprétation de l’autocorrélation pour le trading.
    Les transitions entre une tendance ascendante et une tendance descendante s’effectuent souvent par une zone de consolidation des prix plus ou moins longue. Lors de ces mouvements de consolidation, l'autocorrélation est négative en général.
    Donc :
    L'autocorrélation est positive lorsque les prix sont en tendance haussière ou baissière et
    l'autocorrélation est négative lorsque les prix sont en range (ce qui annonce un signal d'inversion).

    Si l'autocorrélation change de positif à négatif, lorsque le prix touche la bande inférieure de Fong ou la bande supérieure, cela indique que le prix peut être en cours de transition ou de consolidation et donc cela pourra donner des points d'entrée / sortie optimaux.

    2- Calcul des bandes de Fong.
    Le 5ème percentile des prix de clôture des derniers 20 jours en tout point de l’historique définira la bande de Fong supérieure en ce point et le 95ème percentile, la bande supérieure.

    Un peu de théorie...
    La valeur du percentile P d'un prix d’une série de données contenant n points ordonnés en une suite croissante, donc avec des valeurs telles que:
    v1 ≤ v2 ≤ ... ≤ vn, est défini comme Vp.
    Tout d'abord, pour calculer sa valeur il nous faut déterminer quel est le rang du percentile P.
    Il est calculé comme suit:

    Cliquez sur l'image pour la voir en taille réelle   Nom : 		Presse-papiers-2.jpg  Affichages :	1  Taille :		3,9 Ko  ID : 			1828309
    où le rang est décomposé en un entier i et une composante décimale d telle que leur somme est égale au rang.

    Ensuite, la valeur Vp du percentile P sera calculée comme suit:
    Cliquez sur l'image pour la voir en taille réelle   Nom : 		Presse-papiers-3.jpg  Affichages :	1  Taille :		6,4 Ko  ID : 			1828310
    Comme dit plus haut, la bande inférieure de Fong (L) sera calculée comme le 5ème percentile et la bande supérieure (U) sera calculée comme étant le 95e percentile de la série des derniers 20 cours de de clôtures qui sont classés dans un ordre ascendant tel que p1≤p2≤ ... ≤ p20.
    En utilisant le concept de percentile, la bande inférieure et la bande supérieure sur un jour donné seront calculées simplement comme suit:

    Cliquez sur l'image pour la voir en taille réelle   Nom : 		Presse-papiers-4.jpg  Affichages :	1  Taille :		18,4 Ko  ID : 			1828311

    3- Règle du « swing filter ».
    Un filtre de swing de 2 % validera une entrée en position.

    Par exemple, lorsque les prix évoluent en tendance baissière vers la bande inférieure, on ne déclenchera un signal d'achat légitime si, le prix étant dans un régime oscillant (c'est-à-dire avec une autocorrélation négative), la règle du « swing filter de x% » confirme que les prix sont retournés à la hausse de plus de x%.


    Je poste aussi deux graphes tirées de l’article de Fong pour résumer la méthode de trading qu ‘il propose :

    Cliquez sur l'image pour la voir en taille réelle   Nom : 		Presse-papiers-6.jpg  Affichages :	1  Taille :		53,1 Ko  ID : 			1828313


    Cliquez sur l'image pour la voir en taille réelle   Nom : 		Presse-papiers-5.jpg  Affichages :	1  Taille :		56,5 Ko  ID : 			1828312

    4- Résultats empiriques
    L’auteur procède ensuite à une comparaison des performances obtenues avec les bandes de Bollinger et les bandes de Fong sur 3 produits boursiers avec un net avantage aux bandes de Fong…selon lui...
    Il fait alterner les positions courtes et longues en utilisant des signaux d'achat et de vente légitiment générés par les bandes en respectant le critère d’autocorrélation et celui du « swing filter de X % »

    Plus précisément et comme indiqué dans la section précédente, un signal d'achat est généré lorsque les conditions suivantes sont rencontrés dans l'ordre:
    1) Le prix de clôture un jour donné devient inférieur ou égal à la bande inférieure,
    2) L’autocorrélation est négative ou proche de zéro,
    3) Le filtre de swing est déclenché lorsque tout changement de pourcentage sur un seul jour, ainsi que tous les changements quotidiens consécutifs, dépasse le seuil x%. Le seuil du filtre de swing est fixé à 2%.
    4) Un signal d'achat légitime est généré et le trader initiera une position longue au prix d'ouverture le lendemain.

    De même, un signal de vente sera généré lorsque les conditions suivantes sont en séquence:
    1) Le cours de clôture sur un jour particulier devient supérieur ou égal à la bande supérieure,
    2) L'estimation de l'autocorrélation est négative ou proche de zéro,
    3) Le « swing filter » est déclenché lorsque tout changement de pourcentage sur un seul jour, ainsi que tous les changements quotidiens consécutifs, dépasse le x% seuil. Le seuil du filtre de swing est fixé à 2%.
    4) Un signal de vente légitime est généré et le trader initiera une position courte au prix d'ouverture sur le lendemain.

    Vous pouvez vous reporter à l’article de Fong pour plus de détails si ce thême vous intéresse.
    Il me reste à vous proposer les programme pour GrapheAT Pro de l’autocorrélation et celui des bandes de Fong...puis il restera à valider (ou invalider la méthode proposée.


    PROGRAMMES ;


    Fong_Autocorrelation

    //=================
    //Fong_Autocorrelation
    //v 1.0
    //smallcaps90
    //24/07/2018
    //================

    Moy = Moyenne(Cloture,P1) //P1=10 recommandé

    Si RangHisto>=FinHisto-P2
    Alors
    S_Num = 0
    S_Den = 0

    i = 0
    TantQue i<P1-1 Faire //de t=0 à t=8
    Num(i) = (Cloture(i)-Moy)*(Cloture(i+1)-Moy)
    Den(i) = (Cloture(i)-Moy)^2
    S_Num = S_Num+Num(i)
    S_Den = S_Den+Den(i)
    i = i+1
    FinTantQue

    S_Den = S_Den + (Cloture(9)-Moy)^2
    r = S_Num/S_Den

    FinSi

    //test de vraisemblance de Bartlett
    //
    BT1=1.96/racine(P1)
    BT2=-BT1

    //Fin du code


    Fenêtre Propriétés :

    Cliquez sur l'image pour la voir en taille réelle   Nom : 		Presse-papiers-7.jpg  Affichages :	2  Taille :		36,9 Ko  ID : 			1828315


    Bandes de Fong

    //==============
    //Bandes de Fong
    //v1.0
    //smallcaps90
    //25/07/2018
    //==============

    //==================
    //1 Trier de la liste L à chaque période dans l'ordre croissant
    //(méthode de Shell)
    //

    // Recopier les P1 clôtures à trier à chaque période
    //
    k=0
    TantQue k<P1 Faire
    L(k)=cloture(k)
    k=k+1
    FinTantQue

    //Trier les P1=20 cours précédents du cours actuel
    //y compris celui-ci dans l'ordre croissant
    // par la méthode de Shell

    pas=0
    TantQue pas<P1 Faire
    pas=3*pas+1
    FinTantQue

    TantQue pas>=1 Faire
    i=pas
    TantQue i<P1 Faire
    val=L(i)
    j=i
    TantQue (j>pas-1 ET L(j-pas)>val) Faire
    L(j)=L(j-pas)
    j=j-pas
    FinTantQue
    L(j)=val
    i=i+1
    FinTantQue
    pas=(pas-1)/3
    FinTantQue

    //2 Calculs des bandes de Fong
    //

    Bande_Basse = L(0) + 0.95*(L(1)-L(0))
    Bande_Haute = L(18) + 0.05*(L(19)-L(18))


    //Fin du code


    Fenêtre Propriétés


    Cliquez sur l'image pour la voir en taille réelle   Nom : 		Presse-papiers-9.jpg  Affichages :	1  Taille :		31,8 Ko  ID : 			1828316


    Un exemple :

    Cliquez sur l'image pour la voir en taille réelle   Nom : 		Presse-papiers-10.jpg  Affichages :	1  Taille :		128,8 Ko  ID : 			1828317


    Comparativement voici la même valeur avec des bandes de Bollinger(20,2) en superposition (en noir sur le graphe ci-dessous) :

    Cliquez sur l'image pour la voir en taille réelle   Nom : 		Presse-papiers-11.jpg  Affichages :	1  Taille :		130,7 Ko  ID : 			1828318


    Voilà pour ce soir...
    Il nous reste à expérimenter la méthode de Fong...

    Cordialement.




























    Fichiers attachés

    Commentaire


    • Bonjour,

      Content de vous voir sur le forum. Depuis mon achat l'été dernier de Graphe AT je me sentais, un peu, comme le dernier des Mohicans,

      Content aussi au regard de la qualité de vos contributions que j'ai épluchées de page en page depuis la une et que j'ai mis en place lorsque j'ai pu retrouver sur GG l'image des paramètres… ou que j'ai pu les reconstituer en analysant le code.

      Ma question du jour :
      - est-il possible de récupérer dans l'action X des données en provenances de "l'action" CAC 40" et plus précisément les valeurs de 3 droites de régressions linéaires ?


      A propos de DRL merci à vous pour vos nombreux exemples, sans lesquels, avec un cursus universitaire brevet des collèges -1, je n'aurais rien compris à sa construction.

      En attente de votre réponse… ma petite contribution.

      Quelqu'un ayant écrit que "l'essentiel est déjà dans les cours" et trouvant peu de chose sur le chartisme un bout de code qui marque les Plus Haut et Plus Bas sur 364 jours… particulièrement utile si l'on cherche à exploiter les retournements,

      A vous lire et cordialement
      tradinvest

      A propos de ce bout de code :
      - j'ai opté pour un histogramme car les cours sont utilisés pour marquer les TOP et BOTTOM qui trouvent leur utilité bien au-delà des classiques doubles et triples. Une bricole à changer et je poste le code.
      - la courbe 3 n'a pour seule utilité que de masquer la ligne du zéro qui est très moche chez moi,
      PS : Je compte sur vous smallcaps90 et les autres pour corriger mon devoir.

      //
      //=================================
      Cliquez sur l'image pour la voir en taille réelle 

Nom : 		Param_PHPB.jpg 
Affichages :	261 
Taille :		42,6 Ko 
ID : 			1834414
      // Plus Haut Plus Bas sur 364 jours
      // v 1
      // tradinvest 09/2017
      //==================================
      //
      //------------------------------------------- Plus Haut
      i = 1
      EXIT = 0
      HJ0 = Haut(0)
      TantQue EXIT = 0 Faire
      Si HJ0 > Haut(i) Alors
      PH(0)= i
      i = i + 1
      SiNon
      EXIT = 1
      FinSi
      Si i = 365 Alors EXIT = 1
      FinTantQue
      //------------------------------------------- Plus Bas
      BJ0 = Bas(0)
      i = 1
      EXIT = 0
      TantQue EXIT = 0 Faire
      Si BJ0 < Bas(i) Alors
      PB(0) = -i
      i = i + 1
      SiNon
      EXIT = 1
      FinSi
      Si i = 365 Alors EXIT = 1
      FinTantQue


      Commentaire


      • Bonjour,

        Chapeau bas Mr SmallCpas90. Même si je n'ai rien compris aux formules les bandes de FONG semblent autrement plus pertinentes que celles de Bollinger.

        Exemples sur 2 mois :
        - avec Arrondi(Cloture(0),1) = Arrondi(BANDE_BASSE(0)
        c'est pas moins de 3 opportunités d'accroître la position. Voir les : =

        - avec
        Si FONG_AUTOCORRELATION.R(0) > 0.6200 Alors
        Si Arrondi(Cloture(1),1)=Arrondi(BANDE_HAUTE(1),1) Et Arrondi(Cloture(0),1)=Arrondi(BANDE_HAUTE(0),1) Alors
        Si PMS.DOJI(0) = 1 Alors

        c'est le renforcements des signaux 2 et 3.Voir les : ®

        Par contre, j'ai sans doute mal interprété les règles de FONG car je n'ai aucun signal.

        Afin que je puisse tester sur les valeurs du SRD et la totalité de leur historique pourriez corriger ce qui suit… Compte rendu détaillé garanti.

        Vous écrivez :
        //---------------------------------------------- Signaux de Fong Achat
        // ... un signal d'achat est généré lorsque les conditions suivantes sont rencontrés dans l'ordre:
        // 1) Le prix de clôture un jour donné devient inférieur ou égal à la bande inférieure,
        // 2) L’autocorrélation est négative ou proche de zéro,
        // 3) Le filtre de swing est déclenché lorsque tout changement de pourcentage sur un seul jour, ...
        // dépasse le seuil x%... fixé à 2%

        // Ce que j'ai traduis par :

        Si Cloture(1) > BANDE_BASSE(0) Et Cloture(0) <= BANDE_BASSE(0) Alors
        Si FONG_AUTOCORRELATION.R(0) < 0 Ou Arrondi(FONG_AUTOCORRELATION.R(0),0) = 0 Alors
        Si Hausse(0) >= 2 Alors
        FACH = -1
        FinSi FinSi FinSi


        //---------------------------------------------- Signaux de Fong Vente

        // ... un signal de vente sera généré lorsque les conditions suivantes sont en séquence:
        // 1) Le cours de clôture sur un jour particulier devient supérieur ou égal à la bande supérieure,
        // 2) L'estimation de l'autocorrélation est négative ou proche de zéro,
        // 3) Le « swing filter » est déclenché lorsque tout changement de pourcentage sur un seul jour...
        // dépasse le x% seuil. Le seuil du filtre de swing est fixé à 2%.

        // Ce que j'ai traduis par :

        Si Cloture(1) < BANDE_HAUTE(0) Et Cloture(0) >= BANDE_HAUTE(0) Alors
        Si FONG_AUTOCORRELATION.R(0) < 0 Ou Arrondi(FONG_AUTOCORRELATION.R(0),0) = 0 Alors
        Si Hausse(0) <= -2 Alors
        FACH = -1
        FinSi FinSi FinSi


        A vous lire et cordialement votre
        tradinvest
        Fichiers attachés

        Commentaire


        • Bonjour Tradinvest

          Merci pour ta contribution (ici on se tutoie si tu veux bien)...
          Je te comprends lorsque tu te considères comme le dernier des Mohicans. Notre file est dans un état léthargique très avancé depuis quelques temps déjà, le passage de Pro-AT à UniversBourse avec la disparition des graphes d'avant, y est sans doute pour quelque chose...Heureusement des amis bien inspirés ont sauvegardé tous nos posts publiés sur Pro-AT depuis la création de notre file en 2003 en pdf ou autre...si cela peut t'intéresser.
          Un grand merci pour ta proposition de programme " Plus Haut et Plus Bas sur 364 jours" et ton test des bandes de Fong.

          Je ne suis pas chez moi pour le moment aussi je ne peux pas "corriger" (un bien grand mot) tes devoirs (comme tu dis). Je te demande de patienter et je le ferai dès que possible. En tous cas chapeau bas pour la promptitude de ta maîtrise de la programmation avec GrapheAT Pro. Merci encore d'avoir réanimé notre file.

          Pour ce qui concerne ta question :
          - est-il possible de récupérer dans une action X des données en provenances de "l'action" CAC 40" et plus précisément les valeurs de 3 droites de régressions linéaires ?

          La réponse à ta question se trouve dans l'aide à laquelle on accède lorsque l'on crée un programme. Il y est dit :
          ''Une règle peut référencer une courbe d'une autre règle indicateur soit directement par son nom s'il s'agit d'une règle indicateur dérivée de la seconde soit en utilisant la syntaxe suivante : <Nom Indicateur>.<NomCourbe>. Une règle ne peut pas modifier les courbes d'une autre règle.."

          Autrement dit, si DRL1, DRL2, DRL3 sont les variables qui contiennent les valeurs de trois droites de régressions linéaires de l'action CAC40 et calculées par une règle REG_LINEAIRES (par exemple), il faudra que tu crées trois variables C1, C2, C3 (par exemple) dans un programme DROITES_REG_LIN (par exemple) pour l'action X qui récupèrera les valeurs de DRL1, DRL2 et DRL3.
          Ces trois variables se codant dans la règle X :

          C1= REG_LINEAIRES.DRL1
          C2= REG_LINEAIRES.DRL2
          C3= REG_LINEAIRES.DRL3


          Et que tu définiras évidemment dans la fenêtre Propriétés de la règle DROITES_REG_LIN.
          Oufff...

          Maintenant, les règles d'achat et de vente utilisant les bandes de Fong et l'Autocorrélation, ce sont celles que donne Fong dans son article et je ne les ai pas encore vérifiées.
          A suivre donc...

          Bien cordialement,,

          Daniel

          Commentaire


          • Bonjour SmallCaps90

            Réponse rapide étant en plein test des bandes de FONGUE,,, et Associés

            OK pour le tutoiement qui plus est sans difficulté de ma part.

            Pour le test faudra pas me gronder car, à défaut de signaux de FONGUE :
            - devant une belle VAD sur Vallourec au 16/02/17
            - et matérialisée par un Point de Structure de Marché (revisité y compris par ma dyslexie renaissante,,, mes PMS,,, n'importe quoi mais j'ai la flemme de changer),

            J'ai voulu voir ou serait une moyenne entre BFH et BFB.

            Bingo comme disent les petits : croisement parfait entre H et B et cette moyenne… Les Clôtures elles sont régulièrement en retard… un haut, un bas, Une clôture.

            D'où pour le test en cours avec les conditions suivantes :
            - nous marions PMS et BFM
            - nous plaçons le mariage sous la houlette de dame FR120P : pente Force Relative avec SBF120… (la preuve que je ne suis pas un misogyne invertébré),
            - nous prenons tout de même le soin de couper la dame en 6 à 8 médianes (à affiner par tests successifs)

            Et, dans le sens VAD, à la lettre L comme Legrand SA… Suis pas sûr d'arriver cette nuit à Z les résultats sont les suivants :
            - Total Signaux : 169
            - Faux : 40 dont belles surprises &gt; 2% de marge 27
            - Juste : 120 soit 66,66 %
            . Marge Max : 67,36% en 9 jrs (Engie 29/09/08)
            . Marge Moy : 7,34%
            . Nbre Jrs : 3,74

            Le tout avant :
            - règles d'invalidation à partir de 180 variables et autres indicateurs (exploités aussi pour les surprises),
            - règles de sortie suivant configuration des OHBC du jour écoulé,
            - règles de non prise de position suivant cours d'ouverture du lendemain à 08h59 (ne devrait pas beaucoup changer avec celui dont nous disposons en journalier).

            Tu trouveras ci-joint un tableau partiel car à la question que tu te poses en page 177 ma copine AF NIC me dit que pour elle c'est "pas pu".
            Je finis le test et j'interroge mon copain BO DACC plus spécialisé dans les circonvolutions sociétales.

            Même raison pour absence du code… Si le "pas pu" se confirme faudrait pas que l'on nous confonde avec des canards sauvages…

            Cordialement
            tradinvest

            PS 1 : Tu finis ton explication de la récup de 3DRL du CAC dans l'action X, par un OUF… et tu voudrais qu'avec mon cursus Brevet des Collèges -1, je comprenne. Bon OK je sais tu es… encore… en vacances au fort "présidentiel" des Dolomites.

            Promis je vais faire un effort, mais un exemple quand tu rentres serait le bienvenu.

            C'est important. Pourquoi :
            - nous créons une règle d'invalidation à partir de ce que nous voyons graphiquement et des variables disponibles et nous souhaitons la tester.

            Pour ce faire :
            - soit nous nous référons à de multiples tri dans le tableau, avec toutes les erreurs possibles (déjà fait),
            - soit nous appelons une à une les 133 actions (ma sélection actuelle mais non figée) ce qui est plus fiables (déjà fait), mais RDV à la nuit des temps,
            - soit, nous considérons GATP comme un générateur de valeur dont nous transférons les données dans un gestionnaire de base de données.

            Dès lors par une simple requête nous allons sélectionner, parmi les ± 535000 jours de cotations, en ± 8 secondes, les x cas correspondant à notre requête afin de la modifier, si nécessaire et autant de foi que de besoin.

            N'ayant pas les moyens de perdre mes petites noisettes (déjà fait il y a 20 ans), n'ayant plus l'age d'attendre la nuit des temps et connaissant par cœur mon FOXPRO 2.6 (c'est dans les vieux pot…),
            J'ai envie de partager avec quelqu'un qui m'a déjà beaucoup apporter… et certainement plus qu'il ne le pense. En outre : on va, soit disant, plus vite seul, mais on va, assurément, plus loin à plusieurs.

            PS2 : Dans l'esprit ci-dessus : 90 veut dire Belfort ? Si oui et si tu reviens des Dolomites par Genève je serais bien monté de Marignane(13) jusqu'à Mâcon pour t'inviter à déjeuner. A défaut n'étant pas du genre mesquin, Besançon où j'ai vécu 12 ans irait très bien.

            PS3 : C'est sûr je ne finirais pas le test cette nuit.

            PS4 : N'ayant pas trouvé comment faire figurer mon Email : 06 71 99 29 85. Ne répondant jamais à un phone non répertorier laisse un message sur le répondeur.
            Fichiers attachés

            Commentaire


            • Bonjour Tradinvest,

              Une petite rectification pour ce que te "conseillais" hier au sujet de ta question :
              - est-il possible de récupérer dans une action X des données en provenances de "l'action" CAC 40" et plus précisément les valeurs de 3 droites de régressions linéaires ?
              Efface ce que je t'ai dit car ce n'est pas correct!.
              Nous pourrons peut-être trouver une solution avec l'indicateur prédéfini, que je n'ai jamais utilisé, présent dans GrapheAT Pro :
              REFERENCE : Indice de référence de la Force Relative
              Je regarde cela dès que possible ainsi que ma réponse à ton dernier message.

              Cordialement,

              Daniel

              Commentaire


              • Envoyé par smallcaps90 Voir le message
                Bonsoir à Toutes et Tous utilisateurs de GrapheAT Pro sur le site....je vous salue chaleureusement!

                Voilà,comme je suis redescendu de mes vacances dans les Dolomites (coucou Foki!), et que je n'avais pas perdu complètement le "virus", je me suis décidé à poster un petit quelque chose dans la ligne de nos travaux passés.
                J'ai découvert un article américain qui propose une approche intéressante, me semble-t-il, et qui reste à valider bien sûr: les bandes de Fong...

                Source :
                Regime-Switching Trading Bands Using A Historical Simulation Approach
                By Ka Ying Timothy Fong, CFTe, MFTA
                IFTA journal 2013 Edition (p 20-2727)


                Une petite synthèse de l'article :

                Après une "critique" des bandes de Bollinger, des enveloppes de moyennes mobiles, des bandes de Keltner et de Donchian, l'auteur aborde son système.

                Il propose une approche nouvelle pour construire et utiliser trois outils originaux et complémentaires en trading :

                1- Une simulation historique tout d’abord pour générer un système de bandes de sorte que la distribution empirique des prix puisse être capturée le mieux possible.
                2- Un filtre d'autocorrélation ensuite pour ajouter aux bandes, un système qui confirme si le prix est en tendance ou oscillant en range.
                3- Un filtre de confirmation enfinpour valider si les prix ont tendance à augmenter (ou diminuer) plutôt que de revenir à la moyenne.

                Remarques :
                On peut souligner la double originalité du travail de Fong, tout d’abord pour l’emploi très utile de l'autocorrélation si peu présente en analyse technique et ensuite pour la technique proposée par Fong pour construire des bandes qui ne préjugent aucunement que les cours suivent des processus gaussiens (cf les 95 % des cours dans les bandes de Bollinger construites avec 2 écarts-types).

                1- Simulation historique par calcul de l’autocorrélation des clôtures.
                Le moyen le plus direct, le plus intuitif aussi, qui élimine une reconnaissance cognitive pour apprécier si le prix est en tendance ou en range est d’utiliser le concept d'autocorrélation.
                Un filtre d'autocorrélation, en utilisant les 10 derniers jours du cours de clôture sera construit pour déterminer si les cours sont en tendance ou non .
                Le choix de 10 cours est plus sensible aux prix de clôture récents et cela préserve aussi le principe d'harmonicité développé par J.M. Hurst.
                Il est possible aussi d'utiliser une fenêtre de temps plus courte si nécessaire (par exemple 5 jours au lieu de 10 jours) pour calculer l'autocorrélation afin de capturer pleinement tous les mouvements du titre.
                Voici la formule d'autocorrélation d’une série de prix P :



                Où ;

                P est le cours de clôture

                h est le décalage d’autocorrélation (= 1 ici)
                N estle nombre d'observations à prendre pour chaque point (= 10 ici)
                P barre est le prix de clôture moyen sur la période d’observation (= somme des 10 clôtures précédentes et actuelle /10).


                Interprétation de l’autocorrélation pour le trading.
                Les transitions entre une tendance ascendante et une tendance descendante s’effectuent souvent par une zone de consolidation des prix plus ou moins longue. Lors de ces mouvements de consolidation, l'autocorrélation est négative en général.
                Donc :
                L'autocorrélation est positive lorsque les prix sont en tendance haussière ou baissière et
                l'autocorrélation est négative lorsque les prix sont en range (ce qui annonce un signal d'inversion).

                Si l'autocorrélation change de positif à négatif, lorsque le prix touche la bande inférieure de Fong ou la bande supérieure, cela indique que le prix peut être en cours de transition ou de consolidation et donc cela pourra donner des points d'entrée / sortie optimaux.

                2- Calcul des bandes de Fong.
                Le 5ème percentile des prix de clôture des derniers 20 jours en tout point de l’historique définira la bande de Fong supérieure en ce point et le 95ème percentile, la bande supérieure.

                Un peu de théorie...
                La valeur du percentile P d'un prix d’une série de données contenant n points ordonnés en une suite croissante, donc avec des valeurs telles que:
                v1 ≤ v2 ≤ ... ≤ vn, est défini comme Vp.
                Tout d'abord, pour calculer sa valeur il nous faut déterminer quel est le rang du percentile P.
                Il est calculé comme suit:

                Cliquez sur l'image pour la voir en taille réelle  Nom : 		Presse-papiers-2.jpg  Affichages :	1  Taille :		3,9 Ko  ID : 			1828309
                où le rang est décomposé en un entier i et une composante décimale d telle que leur somme est égale au rang.

                Ensuite, la valeur Vp du percentile P sera calculée comme suit:
                Cliquez sur l'image pour la voir en taille réelle  Nom : 		Presse-papiers-3.jpg  Affichages :	1  Taille :		6,4 Ko  ID : 			1828310
                Comme dit plus haut, la bande inférieure de Fong (L) sera calculée comme le 5ème percentile et la bande supérieure (U) sera calculée comme étant le 95e percentile de la série des derniers 20 cours de de clôtures qui sont classés dans un ordre ascendant tel que p1≤p2≤ ... ≤ p20.
                En utilisant le concept de percentile, la bande inférieure et la bande supérieure sur un jour donné seront calculées simplement comme suit:

                Cliquez sur l'image pour la voir en taille réelle  Nom : 		Presse-papiers-4.jpg  Affichages :	1  Taille :		18,4 Ko  ID : 			1828311

                3- Règle du « swing filter ».
                Un filtre de swing de 2 % validera une entrée en position.

                Par exemple, lorsque les prix évoluent en tendance baissière vers la bande inférieure, on ne déclenchera un signal d'achat légitime si, le prix étant dans un régime oscillant (c'est-à-dire avec une autocorrélation négative), la règle du « swing filter de x% » confirme que les prix sont retournés à la hausse de plus de x%.


                Je poste aussi deux graphes tirées de l’article de Fong pour résumer la méthode de trading qu ‘il propose :

                Cliquez sur l'image pour la voir en taille réelle  Nom : 		Presse-papiers-6.jpg  Affichages :	1  Taille :		53,1 Ko  ID : 			1828313


                Cliquez sur l'image pour la voir en taille réelle  Nom : 		Presse-papiers-5.jpg  Affichages :	1  Taille :		56,5 Ko  ID : 			1828312

                4- Résultats empiriques
                L’auteur procède ensuite à une comparaison des performances obtenues avec les bandes de Bollinger et les bandes de Fong sur 3 produits boursiers avec un net avantage aux bandes de Fong…selon lui...
                Il fait alterner les positions courtes et longues en utilisant des signaux d'achat et de vente légitiment générés par les bandes en respectant le critère d’autocorrélation et celui du « swing filter de X % »

                Plus précisément et comme indiqué dans la section précédente, un signal d'achat est généré lorsque les conditions suivantes sont rencontrés dans l'ordre:
                1) Le prix de clôture un jour donné devient inférieur ou égal à la bande inférieure,
                2) L’autocorrélation est négative ou proche de zéro,
                3) Le filtre de swing est déclenché lorsque tout changement de pourcentage sur un seul jour, ainsi que tous les changements quotidiens consécutifs, dépasse le seuil x%. Le seuil du filtre de swing est fixé à 2%.
                4) Un signal d'achat légitime est généré et le trader initiera une position longue au prix d'ouverture le lendemain.

                De même, un signal de vente sera généré lorsque les conditions suivantes sont en séquence:
                1) Le cours de clôture sur un jour particulier devient supérieur ou égal à la bande supérieure,
                2) L'estimation de l'autocorrélation est négative ou proche de zéro,
                3) Le « swing filter » est déclenché lorsque tout changement de pourcentage sur un seul jour, ainsi que tous les changements quotidiens consécutifs, dépasse le x% seuil. Le seuil du filtre de swing est fixé à 2%.
                4) Un signal de vente légitime est généré et le trader initiera une position courte au prix d'ouverture sur le lendemain.

                Vous pouvez vous reporter à l’article de Fong pour plus de détails si ce thême vous intéresse.
                Il me reste à vous proposer les programme pour GrapheAT Pro de l’autocorrélation et celui des bandes de Fong...puis il restera à valider (ou invalider la méthode proposée.


                PROGRAMMES ;


                Fong_Autocorrelation

                //=================
                //Fong_Autocorrelation
                //v 1.0
                //smallcaps90
                //24/07/2018
                //================

                Moy = Moyenne(Cloture,P1) //P1=10 recommandé

                Si RangHisto>=FinHisto-P2
                Alors
                S_Num = 0
                S_Den = 0

                i = 0
                TantQue i<P1-1 Faire //de t=0 à t=8
                Num(i) = (Cloture(i)-Moy)*(Cloture(i+1)-Moy)
                Den(i) = (Cloture(i)-Moy)^2
                S_Num = S_Num+Num(i)
                S_Den = S_Den+Den(i)
                i = i+1
                FinTantQue

                S_Den = S_Den + (Cloture(9)-Moy)^2
                r = S_Num/S_Den

                FinSi

                //test de vraisemblance de Bartlett
                //
                BT1=1.96/racine(P1)
                BT2=-BT1

                //Fin du code


                Fenêtre Propriétés :

                Cliquez sur l'image pour la voir en taille réelle  Nom : 		Presse-papiers-7.jpg  Affichages :	2  Taille :		36,9 Ko  ID : 			1828315


                Bandes de Fong

                //==============
                //Bandes de Fong
                //v1.0
                //smallcaps90
                //25/07/2018
                //==============

                //==================
                //1 Trier de la liste L à chaque période dans l'ordre croissant
                //(méthode de Shell)
                //

                // Recopier les P1 clôtures à trier à chaque période
                //
                k=0
                TantQue k<P1 Faire
                L(k)=cloture(k)
                k=k+1
                FinTantQue

                //Trier les P1=20 cours précédents du cours actuel
                //y compris celui-ci dans l'ordre croissant
                // par la méthode de Shell

                pas=0
                TantQue pas<P1 Faire
                pas=3*pas+1
                FinTantQue

                TantQue pas>=1 Faire
                i=pas
                TantQue i<P1 Faire
                val=L(i)
                j=i
                TantQue (j>pas-1 ET L(j-pas)>val) Faire
                L(j)=L(j-pas)
                j=j-pas
                FinTantQue
                L(j)=val
                i=i+1
                FinTantQue
                pas=(pas-1)/3
                FinTantQue

                //2 Calculs des bandes de Fong
                //

                Bande_Basse = L(0) + 0.95*(L(1)-L(0))
                Bande_Haute = L(18) + 0.05*(L(19)-L(18))


                //Fin du code


                Fenêtre Propriétés


                Cliquez sur l'image pour la voir en taille réelle  Nom : 		Presse-papiers-9.jpg  Affichages :	1  Taille :		31,8 Ko  ID : 			1828316


                Un exemple :

                Cliquez sur l'image pour la voir en taille réelle  Nom : 		Presse-papiers-10.jpg  Affichages :	1  Taille :		128,8 Ko  ID : 			1828317


                Comparativement voici la même valeur avec des bandes de Bollinger(20,2) en superposition (en noir sur le graphe ci-dessous) :

                Cliquez sur l'image pour la voir en taille réelle  Nom : 		Presse-papiers-11.jpg  Affichages :	1  Taille :		130,7 Ko  ID : 			1828318


                Voilà pour ce soir...
                Il nous reste à expérimenter la méthode de Fong...

                Cordialement.



























                @ smallcaps90 , bonjour ,
                trés intéressant cet article que j'ai retrouvé
                Je ne connais pas ce type de programmation , avez -vous la possibilité de le traduire pour Prorealtime ??
                ce serait génial .
                merci par avance

                Commentaire


                • Bonjour, smallcaps90

                  Pour les DRL du CAC 40 ne cherche pas je suis stupide :
                  - la règle des 3 DRL étant déjà écrite,
                  - et le CAC 40 étant une "action" comme une autre,
                  A partir du moment ou je transfert dans Foxpro les données générées par GATP, je n'ai qu'une procédure de 3 lignes à écrire pour recopier dans toutes les actions la valeur des DRL du CAC40.

                  Ai omis de te préciser l'objectif :
                  - tous les bouquins que j'ai pu lire jusqu'à ce jour, font état de la tendance sans jamais préciser, vraiment, comment la définir,
                  - puis, sur le Net, suis tombé sur un article qui fait un rapide exposé de la théorie de Charles DOW et de ses 3 tendances Primaire, Secondaire, Tertiaire ou mineure,

                  Ayant cherché un indicateur susceptible de reproduire le raisonnement de DOW je n'ai pas trouvé mieux que tes DRL :
                  - ai opté pour 10, 50 et 150 jours (autres ?),
                  - par copier/coller dans un tableur ai fait un test :
                  . en faisant un tri sur chacune d'elles de la 150 à la 10,
                  . puis un tri par la Force Relative (mon FR120P… je ne raisonne que par pente),
                  il est devenu beaucoup plus facile d'isoler les faux signaux et de transformer certains d'entre eux en opportunités contraires.

                  Tu me diras "élémentaires mon cher Watson" et de m'expliquer qu'il est pourtant facile de comprendre qu'un indicateur haussier a, pour être valide, besoin d'une pente plus forte dans une tendance baissière que celle nécessaire dans une tendance haussière… et réciproquement.

                  Ben oui mais collège c'est pas des trucs que l'on apprend. Alors pour voir si j'ai bien compris on résume mes élucubrations :
                  - préalablement à toute analyse, ne pas définir la tendance du jour, équivaudrait à vouloir prédire le temps qu'il fera demain sans tenir compte de la saison.

                  Mais bon je te fiche la paix jusqu'à ton retour.

                  Cordialement
                  tradinvest

                  Commentaire


                  • Cliquez sur l'image pour la voir en taille réelle 

Nom : 		EURUSD 55 HEAD &amp; SHOULDERS 11 SEPTEMBRE 2018.png 
Affichages :	208 
Taille :		604,3 Ko 
ID : 			1835377

                    Commentaire


                    • Bonsoir, Parisboy

                      Merci d'abord d'intervenir dans le fil dédié au logiciel Graphe AT Pro dont certains ont manifestement décidé de programmer, non pas l’obsolescence, mais, à l'évidence la mise à mort.

                      J'en veux pour preuve une demande de devis de ma part qui n'a même pas été suivi d'une réponse de courtoisie.

                      Paragraphe 1

                      Vous ne le saviez, peut-être pas, et en ce cas vous pouvez aller, si vous le souhaitez, directement au paragraphe 2.

                      Pour ce qui est de Graphe AT Pro, "certains autres" feraient bien d'en étudier la structure afin d'essayer, essayer simplement, dans égaler la rapidité d'exécution. Je vous laisse juge :
                      - pour un Historique de 5157 jours
                      - avec 3 conditions à vérifier dont une sur 3 jours,
                      - et 95 variables, à rapatrier… toutes issues d'indicateurs différents,
                      - temps de traitement : 3s et 21 centièmes… suivant mon portable et le sucrement des fraises

                      Si vous êtes intéressé par un escargot équipé de freins à disques ayant oublié d'enlever le frein de parking,
                      Je brade, à 70% du prix affiché à ce jour, ma licence d'un autre logiciel français acheté décembre 2017 avec possibilité d'un paiement en 3 fois sans frais.

                      Paragraphe 2

                      Ceci étant merci aussi de vous intéressez à nos échanges avec SMALLCAP90.

                      Trois remarques pourtant.

                      1/- Votre graphique, en croire les 3 libellés lisible "Env." en bleu, semble montrer les Bandes de Bollinger.
                      Si c'est le cas, même avec un cursus universitaire s’arrêtant à brevet des collèges -1, il y a déjà certain temps que j'ai fais le tour de ces dames… à fortiori Monsieur SAMLLCAP90.

                      2/- Pour ce qui est des courbes en bistre, ayant, pour ma part, passé l'age des devinettes, merci d'expliquer ce dont il s'agit.

                      3/- Vous êtes à une échelle de temps qui ne permet pas d'apprécier la pertinence des courbes pour du day trading. Une deuxième image en zoom avec des commentaires serait la bienvenue.

                      Si non qu'elle est l'intérêt de votre intervention :
                      - pour du moyen terme 2 moyennes mobiles suffisent à générer du 40 % l'an (résultats sur les PEA de mes 3 petits enfants).
                      - pour du long terme on ferme les yeux et on laisse le soin à ses héritiers d'encaisser les bénéfices… et ce, même si certains prédisent, et j'ai tendance à les croire, une nouvelle crise financière pire que la dernière.


                      A vous lire, mais plus explicite, cordialement votre
                      Un Gaulois oui… mais pas forcément réfractaire. D'autant que, plus j'en apprends et plus j'ai le sentiment d'exister… le genre éponge.

                      Commentaire


                      • Tradinvest bonjour

                        a) vous ne savez visiblement pas reconnaitre des Bandes de Bollinger
                        b) la file Graphe AT est à tout le monde
                        c) je me rappelais au bon souvenir de Smallcaps
                        d) je ne crois pas aux systèmes de trading automatique
                        e) si vous faites du 40% par an avec 2 moyennes mobiles que faites vous ici

                        Commentaire


                        • Bonjour Parisboy

                          Au regard de votre point C :
                          - je suis désolé de n'avoir pas vu que vous vous adressiez spécifiquement à SMALLCAP90

                          Au regard de votre point A :
                          - vous avez tout à fait raison je n'ai pas su, "reconnaître des Bandes de Bollinger" raison pour laquelle je vous en ai demandé confirmation,

                          Au regard de votre point B :
                          - vous avez tout à fait raison "la file Graphe AT est à tout le monde" raison pour laquelle je vous ai souhaité la bienvenue… sachant que notre "patron à tous ici" SMALLCAP90 était absent,

                          Au regard de votre point D :
                          - si j'ai envie comme vous de ne pas croire "aux systèmes de trading automatique", soyons franc : faute de moyen,
                          Je suis, inversement, parfaitement convaincu que nous pouvons arriver à modéliser l'analyse que nous devrions faire chaque soir, sauf que … pour ma part, prendre en compte ± 90 paramètres sur les 129 valeurs que j'ai sélectionnées j'en suis totalement incapable.

                          Au regard de votre point E :
                          La réponse à votre question ce que "je fais ici" ici se résume en un simple calcul mathématique :
                          a/- 10 000 € de capital x 40 % x 3 effets de levier = 12 000 €
                          b/- 12 000 € - 30% = 8 400 € (on oublie la TTF et le courtier)
                          c/- 8 400 € - 10% = 7 560 € (mais on n'oublie pas l'impôt résiduel… merci les avantages en natures)
                          d/- 7 560 € / 12m = 630 € de plus par mois (bof, bof)

                          Dites moi, Grand Sage du forum, ma présence ici vous parait-elle toujours aussi illégitime ?

                          Cordialement
                          tradinvest

                          PS : J'aime bien les relations qui commencent par un accrochage. Elles sont souvent, mais pas toujours, la preuve d'une vivacités d'esprit qui peut être source de créativité.

                          Commentaire


                          • Bonjour Tradinvest

                            votre présence ici n'a rien d'illégitime - ma remarque doit être approfondie - elle signifiait pourquoi s'intéresser à des trucs compliqués (même relativement) à programmer si vous faites du + 40 % par an avec 2 banales moyennes mobiles ?

                            les Bandes de Fong ont une tronche visuellement de Canal (ou bandes) de Donchian

                            comme les "Enveloppes" sont à la base de la méthodologie que j'utilise je m'intéresse forcément à ce qu'à écrit Smallcaps qui est un puits de science, un vulgarisateur hors pair et un type charmant.

                            En effet il y a toujours à apprendre quelque chose en terme de processus ou de méthodologie

                            Commentaire


                            • Bonjour Pater,

                              Merci de t’intéresser aux bandes de Fong.
                              Malheureusement je n’ai pas le temps de les coder avec PRT. Tu trouveras sans doute l’aide que Tu souhaites sur le forum PRT. Tu pourrais aussi t’adresser à Sohocool dont le blog regorge de programmes utilisant le langage de programmation de PRT.


                              Cordialement.

                              Commentaire


                              • Bonjour,

                                Je ne souhaite pas ajouter mon grain de sel à la petite joute de ces derniers jours. Je contacterai prochainement Tradinvest en MP pour répondre à ses légitimes questions sur l'utilisation de GrapheAT Pro tant pour sa tentative de rechercher les points hauts et bas que pour l’utilisation des bandes de Fong.
                                Cordialement.

                                Commentaire

                                Chargement...
                                X