Retour d’expérience : un mois de PRT

Forums ProRealTime forum Français Support plateforme ProRealTime Retour d’expérience : un mois de PRT

  • This topic has 1 reply, 2 voices, and was last updated 5 days ago by avatarIván.
Viewing 2 posts - 1 through 2 (of 2 total)
  • #250610

    Ce qui suit constitue mon retour d’expérience après un mois d’utilisation de PRT.

    A la faveur de la retraite, j’ai développé un algorithme boursier qui fonctionne bien puisqu’en deux ans, il m’a permis de gagner 100 000€ (dans mon PEA).

    (le plus long a été d’arriver à une version stabilisée de l’algo, et surtout, de lui faire confiance (on essaie toujours d’être plus malin que son algo, c’est une erreur)..).

    Cela m’a pris plusieurs milliers d’heures… Au début, je ne jouais que sur BNP, GLE et ALO. J’ai depuis peu élargi à OVH, SU, TTE et ENGIE (mais je n’ai investi que (très peu), sur OVH.

    L’algorithme est grosso modo toujours le même, mais il faut sur chaque valeur ajuster les paramètres gouvernant les critères d’achat ou de vente, ce qui bien sûr est fastidieux et nécessite d’avoir un historique sur au moins 20 ans.

    Le problème c’est que j’avais de gros fichiers (près de 100 Mégas) LibreOffice et Excel (Excel était une concession à mes gosses, qui ne veulent pas entendre parler de LibreOffice (que je préfère, pourtant). Donc, gérer de front les mises à jour de tout ça, plus enregistrer les cotations dans tous ces fichiers devenait très, très lourd..

    Je me suis donc finalement décidé à m’abonner à Pro Real Time.

    Au début, j’étais assez pessimiste sur la possibilité de transposer mon algo sous PRT, mais finalement, à ma grande surprise, j’ai réussi à reconstituer l’essentiel en trois semaines. Le reste va suivre, je pense, c’est juste un pb de motivation, je suis certain de pouvoir y arriver, maintenant …

    La première surprise a été de constater que les valeurs des historiques de cours PRT ne coïncidaient pas avec ce que j’avais dans mes fichiers. J’ai finalement résussi à comprendre que, par défaut, PRT ajoute au cours d’une valeur la somme des dividendes déjà versés. L’avantage est que ce cours ajusté reflète pleinement la création de valeur. L’inconvénient c’est que ce n’est pas à partir de ça que j’ai conçu mon algorithme …

    Heureusement la parade a été simple (et je l’ai trouvée tout seul!) = décocher la case « adjust historical data » (Settings → Platform Settings–→ Historical Data !

    Il faut se couler dans la logique particulière de cette programmation, où chaque morceau de code est comme un peigne que l’on promène sur tout l’historique, sans qu’il soit nécessaire de faire une boucle…

    Si on écrit par exemple :

    ONCE PreviousMM150=0 (le ONCE indique une instruction qui n’est exécutée qu’une seule fois)

    MM150=Average[150]

    PenteMM150 = (MM150-PreviousMM150)/MM150

    PreviousMM150 = MM150

    Cela lui suffit pour calculer la pente de la MM150, sur l’ensemble des valeurs de l’historique chargé ! …

    J’ai buté à un moment sur le passage en argument d’une variable temporelle à un sous-programme (un indicateur, dans la terminologue PRT). Pour des raisons qui restent obscures (mais qui tiennent probablement au fait que la variable DAYS donnerait des jours qui ne seraient pas tous des jours de bourse) , mon code de recherche de SPA, disons « Recherche SPA CAC » n’a jamais voulu accepter comme argument une variable de type « Days » (qui code le nombre de jours écoulés depuis le premier Janvier 1900), et qui était pourtant la solution la plus évidente. Il m’a fallu utiliser une variable de type « Date », au format YYYYMMJJ, qui a pour inconvénient que lorsque l’on veut calculer un temps écoulé entre deux dates, il faut transformer ces données de type date en un nombre de jours, avec l’indicateur NPSEUDODAYS, car sinon la différence ne donne pas un nombre de jours.

    (heureusement, j’ai pu alors bénéficier du support de programmeurs PRT aguerris du forum ProRealCode, que je remercie) :

    A un moment j’ai aussi découvert avec stupéfaction que le RSI6 que je calcule pour mon algo n’a pas la même valeur dans PRT, parce que PRT utilise par défaut une moyenne spéciale (moyenne de Wilder), au lieu de la moyenne normale.

    Un intervenant du forum m’a alors fourni aimablement le code du RSI6 (CustomRSI6) qui répondait à mon besoin.

    Je me suis également aperçu (j’avais oublié …) que mon calcul de MACD est une espèce de moyenne exponentielle un peu exotique, que je n’ai pas réussi à retrouver dans PRT. Il m’a donc fallu la recalculer « à la main » …

    Idem, je me suis aperçu que les indicateurs standard BollingerDown[N](price)/BollingerUp[N](price) sont calculés à partir de la moyenne des cours de clôture, alors que mon algo utilise une moyenne (High+Low+Close)/3. Là encore, il m’a fallu trouver un moyen de calculer ce que je voulais ….

    Même compte tenu de toutes les précautions ci-avant décrites pour m’assurer que PRT va bien calculer les mêmes données que mes fichiers Excel, il subsiste des écarts (mineurs), mais qui nécessitent de customiser légèrement les paramètres de l‘algorithme,, par rapport à Excel. Ceci est probablement du à des écarts dans l’historique de cotation (je pense que les données Boursorama ne sont pas exemptes d’erreurs, et il n’est pas non plus exclu que j’aie fait des erreurs de saisie, c’est très difficile à vérifier).

    Mon espace de travail PRT est organisé en Workspaces = fenêtres chacune dédiée à une valeur (CAC, BNP, GLE …). De cette façon, on passe facilement et instantanément d’une valeur à une autre, c’est vraiment royal par rapport aux fichiers excel…. Mon algo travaillant avec un pas de temps d’un jour, je n’ai pas de raisons d’aller chercher un pas de temps plus court, mais pour le fun je l’ai fait pour ALO, avec un Workspace spécial (umrk_ALO_Intraday). Avec Pro Real Time , on peut descendre à la seconde, mais je vois pas l’intérêt, je ne suis pas un day trader …

    Pour la sauvegarde du code Pro Real Time (Format itf, propriétaire), il faut normalement faire un « export », fichier par fichier. Heureusement, il y a un truc sympa : si on demande l’export d’un code de haut niveau, il exporte également dans la foulée tous les sous programmes appelés…

    Plus récemment un intervenant du forum à donné une solution définitive au problème.

    Donc pour conclure je suis extrêmement satisfait de cette expérience. Je remercie la société IT Finance pour leur excellent produit,ainsi que tous les intervenants du forum qui m’ont aidé.

    Je ne suis pas trop demandeur d’échanges sur les algos de trading, étant très satisfait du mien, mais je répondrai en termes très généraux sur ce qu’a été mon approche, sur demande éventuelle ….

    6 users thanked author for this post.
    #250613

    Bonjour. Merci beaucoup d’avoir partagé ton expérience.

    1 user thanked author for this post.
Viewing 2 posts - 1 through 2 (of 2 total)

Create your free account now and post your request to benefit from the help of the community
Register or Login