Aide sur stratégie – code grid aménagé

Forums ProRealTime forum Français Support ProOrder Aide sur stratégie – code grid aménagé

Viewing 5 posts - 1 through 5 (of 5 total)
  • #24173
    bonjour,
    dans l’article https://www.prorealcode.com/blog/trading/averaging-techniques-automated-trading/, Nicolas nous expose à travers un exemple de programmation une technique d’accumulation, tout en en pointant ses limites, notamment à travers des drawdown, qui peuvent vite devenir insoutenables.
    Aussi, j’ai essayé d’en reprendre l’idée en tentant de minimiser les points noirs de la stratégie.
    On peut déjà y adjoindre un filtre, en initiant des positions uniquement en tendance baissière, en ajoutant une condition MM150.
    Ici, sur UT5 par exemple, le drawdown max s’en trouve déjà considérablement réduit (22,45%), avec un solde initial à 10K pour éviter tout risque.
    //////////////////////////////
    ///////////////////////////////////
    Une deuxième possibilité serait de contrebalancer les positions prises sans clôture sous la mm150 par des prises de positions en tendance haussière. Ainsi, xx achats accumulés en tendance baissière sans en trouver la cloture rapidement, seraient temporisées par l’ouverture de positions haussières au dessus de la mm150. Et la volatilité ferait son oeuvre dans un sens ou dans l’autre pour clôturer les positions.
    A cet effet, quelqu’un pourrait-il coder le prise de position haussière sur le même modèle que celle baissière? Pour valider les hypothèses. Je n’y arrive pas tout à fait…
    –    un pro-oder avec prises de positions « forcées » simultanées est-il possible ou faut-il envisager un pro-order call et un pro-order put pour éviter de solder les positions? En un mot, peux t-on prendre des positions dans PRT sans solder les précédentes (couverture des positions).
    – @ Nicolas, par ton expérience,  en minimisant le drawdown, ce système peut-il tenir la route?
    Ci-dessous, screens du backtest.
    Merci pour votre aide et échanges sur le sujet….
    #24230

    J’essaie de programmer l’ordre équivalent en tendance haussière, mais le back test ne semble pas indiquer de revente;

    @ Nicolas, peux-tu m’indiquer ce qui ne vas pas dans le code, stp?

    //////////////////////

     

    #24233

    Winnie, je te serai gré de bien vouloir utiliser le bouton INSERT PRT CODE stp .. J’ai parfois l’impression que personne ne l’utilise, et de passer mes journées à remettre en forme des messages. Il faut avouer que le code est nettement plus lisible une fois que l’on utilise ce bouton !!

    Dans ton code pour les achats, je vois un problème à la ligne 19, le countofposition ne peut être négatif pour des achats, il est toujours positif.

    On ne peut malheureusement pas avoir des positions d’achat et de vente dans la même stratégie, il faut les séparer (comme tu l’as déjà fait).

    Je l’ai écrit dans l’article je crois, je connais des gens qui vivent du grid, de différentes formes. C’est tenable, si on dé-leverage fortement (en gros être très fortement capitalisé) et si on a des nerfs suffisamment solide pour tenir les périodes difficiles. Évidemment, c’est le genre de stratégie qui ne sera jamais “LAUNCH AND FORGET”. Par expérience, si tu ne peux pas (ou ne veux pas) perdre à un moment X ou Y dans ta grille, alors elle te mènera forcément à la ruine à un instant Z. Le Black Swan est toujours catastrophique si on ne ferme pas ses pertes latentes. Ceci étant, c’est un très bon exercice de programmation et de recherches que je t’encourage à continuer à explorer, c’est très rigolo de ne jamais perdre n’est ce pas ? 🙂

     

    #24241

    Merci Nicolas pour cette réponse fort complète. Et toutes mes excuses pour le manque d’usage des fonctions offertes par le forum. Je tacherai de faire mieux la prochaine fois, promis 🙂

    En effet, l’exercice est plus éducatif , formateur et ludique dans cette configuration. Mes trades sont habituellement beaucoup plus classiques 🙂 Mais je conserve tout de même un mince espoir d’en tirer quelque chose.

    Si je décodes ce que tu exprimes, l’ajout d’un SL positionné au-dessus pour les tendances baissières, par exemple pourrait peut-être assainir les situations devenant difficilement tenables. Au détriment bien sûr de la “performance”. J’aimerai simuler ce cas de figure, avec par exemple une revente des positions, disons, à 20 pips au dessus de la mm150, au cas où elles n’ont pu être soldées avant.  Je commence à me débrouiller en code mais pas encore au top 🙂 Quelle ligne de code dois-ajouter? Je ne manquerai pas de partager mes exercices exploratoires…

    Par ailleurs, le fait d’ouvrir deux systèmes à “contresens” permet-il par ailleurs, à ton sens, de nuancer le jugement que l’on peut porter sur la grille, en profitant de tous les mouvements, avec un effet “tampon” sur les drawdown potentiels?

    J’ai remplacé comme tu me l’as dis countofposition par =1 au lieu de -1. Mais toujours pas de vente après l’achat; Peux tu jeter un oeil si cela n’est pas abuser 😉

    Merci

    #24248

    C’est pareil que la martingale, ça marchera tout le temps pourvu que le temps soit infini et le capital également. Si tu ajoutes des perdants aux perdants, donc dans les 2 sens comme tu le suggères, cela ajoutera à ton drawdown, même si l’idée de hedger les pertes par une grille inverse semble être une idée intéressante, cela n’enlèvera rien au fait que le spread s’ajoutera aux pertes latentes, etc. etc.

    Si tu veux vendre le panier d’ordres à 20 points au dessus de la mm150, le code s’écrirait ainsi:

    C’est tout de suite moins sexy quand on perd, une courbe d’équité 🙂

     

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

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