Reprendre le lendemain apres 3 pertes

Viewing 11 posts - 1 through 11 (of 11 total)
  • Author
    Posts
  • #45828 quote
    goalgo
    Participant
    New

    Bonjour

    ça fait déjà quelques jours que je me creuse la tête et j avoue que je ne suis pas assez calé pour résoudre ce probleme.

    Je voudrai qu apres 3 pertes, mon robot arrete de trader pour la journée en cours et revienne le lendemain.

    J ai bien sur la fonction “QUIT”, mais ça oblige a surveiller tous les jours le robot.

    C est un trading intraday entre 08h00 et 21h50.

    J ai essayé plusieurs façons de faire mais peut être que l un d entre vous à déjà fait ça, ou alors c est peut etre impossible !

    Merci d avance

    #45831 quote
    Nicolas
    Keymaster
    Master

    J’ai déplacé le sujet dans le forum ProOrder, puisqu’il s’agit de trading automatique.

    C’est bien entendu possible, il suffirait de créer une condition autorisant ou non le trading et de la réinitialiser à la première barre chaque jour.

    Comment les ordres de la stratégie sont-ils fermer ? Par un stoploss ou par le code lui même ? (pour savoir comment comptabiliser les orders perdants).

    Avec le code de la stratégie ce sera bien plus rapide et efficace pour t’aider 😉

    #45834 quote
    goalgo
    Participant
    New

    Voilà un exemple de procédure de fermeture des ordres, merci d avance

     

    // Définition des paramètres du code
    DEFPARAM CumulateOrders = False
    defparam flatafter = 215500
    defparam flatbefore = 080000
    
    nblot = 1
    
    mytp = nblot * 40
    mysl = nblot * 20
    // -------------------------------------- -----------------------
    // ------------------------- ------------------------------------
    // if positionperf (1) <0 et positionperf (2) <0 et
    // positionperf (3) <0 puis
    // quit
    // endif
    // ------------------------------ -------------------------------
    // ----------------- --------------------------------------------
    if intradaybarindex=0 then
    once pose=1
    endif
    // -------------------------------------------- -----------------
    // ------------------------------- ------------------------------
    // si positionperf (1) <0 then
    //
    // if barindex-tradeindex (1 ) <15 alors
    // pose = 0
    // else
    // pose = 1
    // endif
    // endif
    // if positionperf (1) <0 et positionperf (2) <0 puis
    //
    // pose = 0
    // else
    // pose = 1
    // endif
    //
    // ------------------------------------------ -------------------
    // ----------------------------- --------------------------------
    
    // ------------------------------------------------ -------------
    // ----------------------------------- --------------------------
    mm20 = moyenne [20]
    mm50 = moyenne [50]
    
    // ------------------------------------------------ -------------
    // ----------------------------------- --------------------------
    // Conditions pour ouvrir une position acheteuse
    
    achat = mm20 croise sur mm50
    
    vente = mm20 croise sous mm50
    // ------------------------------------------ -------------------
    // ----------------------------- --------------------------------
    
    // ------------------------------------------------ -------------
    // ----------------------------------- --------------------------
    IF achat THEN
    BUY nblot CONTRACT AT MARKET
    
    ENDIF
    // Conditions pour fermer une position acheteuse
    
    IF vente THEN
    SELL AT MARKET
    ENDIF
    // Conditions pour ouvrir une position en vente à découvert
    
    // ------------------------------------------------ -------------
    // ----------------------------------- --------------------------
    
    // ------------------------------------------------ -------------
    // ----------------------------------- --------------------------
    
    IF vente THEN
    SELLSHORT nblot CONTRACT AT MARKET
    
    ENDIF
    
    // Conditions pour fermer une position en vente à découvert
    IF achat THEN
    EXITSHORT AT MARKET
    ENDIF
    // Stops et objectifs
    
    set target $ profit mytp
    set stop $ loss mysl
    #45857 quote
    Nicolas
    Keymaster
    Master

    > Pour la clarté des messages sur les forums de ProRealCode, merci d’utiliser le bouton “insert PRT code” pour séparer la partie texte de la partie code, merci ! <<

    Bon dans ce cas, je vais faire aussi un exemple, il faudra l’intégrer dans ton code.

    if intradaybarindex=0 then 
     bartoday = barindex
    endif
    
    count = 0
    for i = 1 to 3 do 
     if positionperf(i)<0 then 
      if tradeindex(i)>bartoday then 
       count=count+1
      endif
     endif
    next
    
    notrading = count>=3
    
    if not notrading then 
     //insérer ici la stratégie 
    endif

    Je n’ai pas testé, à vérifier merci.

    #45925 quote
    goalgo
    Participant
    New

    Merci beaucoup

    J avais pas pensé à utiliser tradeindex, en effet c est mieux comme ça 😉

    #46779 quote
    AlexMarlier
    Participant
    Average

    Nicolas,

    J’ai essayé de reprendre ce code. Je souhaitais l’adapter afin de pouvoir mettre un profit target a 1 point (au lieu de 50 admet on)  aprè 2 trades perdants.

    L’idée derriere est de pouvoir arreter une série de trades perdants (après 2, 3 ou x trade perdants) en mettant un taking profit au niveau du spread (1 dans mon cas moi qui utilise comme sous jacent le DAX).

    Comme cela au lieu d’avoir une troisième perte d’affilé (dans le cas d’un changement de stop au bout de 2 trades perdants) j’ai un trade neutre. Je voulais également que le stop se remette à son niveau initial une fois un trade neutre/gagnant cloturé.

    j’ai essayé pas mal de solutions mais aucune n’a fonctionné

    je crois que cela bloque car les trades perdants ne sont pas forcement le meme jour; le plus important étant qu’au bout de 2, j’ai un trade qui soit neutre ou gagnant d1 point admettons pour couper la série de pertes en cours

    #46800 quote
    Nicolas
    Keymaster
    Master

    @AlexMarlier

    J’avoue avoir du mal à suivre, que faut-il faire premièrement ? Enlever la limitation de trade par jour ? Puis au bout de 2 ordres perdants changer la valeur du takeprofit ? On est très loin de la demande initiale de @goalgo 🙂

    #46804 quote
    goalgo
    Participant
    New

    @AlexMarlier  est ce que tu peux répéter la question ? 😉

    #46862 quote
    AlexMarlier
    Participant
    Average

    je vous concede volontiers que l’explication de ce que je souhaite coder n’est pas clai !

    je souhaite intégrer un code à certaines de mes stratégies:

    -en cas de trade neutre ou gagnant:  stop ploss de 50 points

    -si il y a deux trades perdants de suite , le stop loss passe a 1 points (de sorte d’avoir le 3eme trade neutre afin de revenir sur le stop ploss de 50 pts)

    petite precision: il peut y avoir plusieurs jours entre deux trades

     

    je crois que c’est plus clair comme ca !

    Merci

    #46882 quote
    Nicolas
    Keymaster
    Master

    D’accord, les explications sont bien plus claires, merci !

    On peut donc reprendre en partie le code de mon précédent message qui répondait à la question de @goalgo :

    //on compte la quantité de trade perdants d'affilés
    count = 0
    for i = 1 to 3 do 
     if positionperf(i)<0 then 
        count=count+1
     else 
        count=0
     endif
    next
    
    //on définit la taille du stoploss en fonction 
    if count=2 then 
     mySL = 1
    else 
     mySL = 50
    endif
    
    //*** PLACER ICI LA STRATEGIE ***
    
    // placer le stoploss à la fin du code : 
    set stop ploss mySL

    Pas testé, à vérifier merci.

    #46916 quote
    AlexMarlier
    Participant
    Average

    une réponse claire pour une question claire 😉 merci nicolas

Viewing 11 posts - 1 through 11 (of 11 total)
  • You must be logged in to reply to this topic.

Reprendre le lendemain apres 3 pertes


ProOrder : Trading Automatique & Backtests

New Reply
Author
author-avatar
goalgo @goalgo Participant
Summary

This topic contains 10 replies,
has 3 voices, and was last updated by AlexMarlier
8 years, 5 months ago.

Topic Details
Forum: ProOrder : Trading Automatique & Backtests
Language: French
Started: 09/09/2017
Status: Active
Attachments: No files
Logo Logo
Loading...