Traduire code Pine script vers prorealtime (stratégie renko et RSI)

Viewing 15 posts - 16 through 30 (of 37 total)
  • Author
    Posts
  • #70514 quote
    Horizion
    Participant
    New

    Et que dois-je faire pour que les ordres restent tout le temps du trade ?

    #70516 quote
    robertogozzi
    Moderator
    Master

    Vous devez les entrer à nouveau avec chaque nouvelle bougie.
    Sinon, la limite initiale de 5 points, à partir de la deuxième bougie, sera perdue et vous resterez avec le stop loss de 50 pips (si vous le mettez), sinon aucun Stop Loss.

    #70517 quote
    Horizion
    Participant
    New

    Je ne connais pas très bien le language de ProRealcode, vous avez une idée de comment je pourrais intégrer ce que vous dites and mon algo ?

     

    Merci pour vos conseils

    #70518 quote
    robertogozzi
    Moderator
    Master

    Ceci s’applique UNIQUEMENT aux commandes en attente (pending orders).

    #70519 quote
    robertogozzi
    Moderator
    Master

    Vous devez entrer le code que j’ai publié (il n’y a que 6 lignes) au début de votre stratégie, à la ligne 3 c’est super.

    #70520 quote
    Horizion
    Participant
    New

    Merci beaucoup pour vos conseils, malheureusement cela n’a pas fonctionné.

    Les deux codes suivants me donnent des résultats bien différents…

     

    L’objectif étant je le rappel de remplacer la ligne ‘SET STOP pLOSS 5’ par un stop artificiel.

    // Définition des paramètres du code
    DEFPARAM CumulateOrders = True // Cumul des positions désactivé
    
    rsiPeriod=9
    // Conditions pour ouvrir une position acheteuse
    indicator1 = Average[9](RSI[rsiPeriod](close))
    indicator2 = Average[15](RSI[rsiPeriod](close))
    c1 = (indicator1[1] >= indicator2[1])
    indicator3 = RSI[rsiPeriod](close)
    c2 = (indicator3 <= 30)
     
    // Conditions pour ouvrir une position en vente à découvert
    indicator4 = Average[9](RSI[rsiPeriod](close))
    indicator5 = Average[15](RSI[rsiPeriod](close))
    c3 = (indicator4[1] <= indicator5[1])
    indicator6 = RSI[rsiPeriod](close)
    c4 = (indicator6 >= 70)
     
    // Trade orders
    IF c1 AND c2 THEN
    BUY 1 CONTRACT AT MARKET
    ENDIF
     
    IF c3 AND c4 THEN
    SELLSHORT 1 CONTRACT AT MARKET
    ENDIF
    
    // TP
    SET TARGET pPROFIT 20
    SET STOP pLOSS 5

     

    // Définition des paramètres du code
    DEFPARAM CumulateOrders = True // Cumul des positions désactivé
    IF LongOnMarket Then
    SELL AT tradeprice - (5 * pipsize) limit
    ENDIF
    IF ShortOnMarket then
    EXITSHORT AT tradeprice + (5 * pipsize) limit
    ENDIF
    rsiPeriod=9
    // Conditions pour ouvrir une position acheteuse
    indicator1 = Average[9](RSI[rsiPeriod](close))
    indicator2 = Average[15](RSI[rsiPeriod](close))
    c1 = (indicator1[1] >= indicator2[1])
    indicator3 = RSI[rsiPeriod](close)
    c2 = (indicator3 <= 30)
     
    // Conditions pour ouvrir une position en vente à découvert
    indicator4 = Average[9](RSI[rsiPeriod](close))
    indicator5 = Average[15](RSI[rsiPeriod](close))
    c3 = (indicator4[1] <= indicator5[1])
    indicator6 = RSI[rsiPeriod](close)
    c4 = (indicator6 >= 70)
     
    // Trade orders
    IF c1 AND c2 THEN
    BUY 1 CONTRACT AT MARKET
    ENDIF
     
    IF c3 AND c4 THEN
    SELLSHORT 1 CONTRACT AT MARKET
    ENDIF
    
    // TP
    SET TARGET pPROFIT 20
    SET STOP pLOSS 50
    #70521 quote
    Horizion
    Participant
    New

    Ce forum dispose-t-il d’un chat pour pouvoir échanger plus rapidement ?

    #70554 quote
    robertogozzi
    Moderator
    Master

    Il n’y a pas de CHAT, mais de toute façon je ne l’utiliserais jamais.
    Je serais obligé de répondre immédiatement, alors que je préfère faire ce que je fais normalement et répondre quand j’ai le temps de le faire.
    Je pense que c’est comme ça pour tout le monde.
    De plus, je ne parle pas français et j’utilise le traducteur Google, qui ne convient pas a la CHAT.
    En attendant, je vais faire une correction sur le second code car les lignes où vous les mettez sont bien, mais vous ne devriez pas supprimer les deux lignes où il y a BUY et SELLSHORT:

    // Définition des paramètres du code
    DEFPARAM CumulateOrders = True // Cumul des positions désactivé
    IF LongOnMarket Then
    SELL AT tradeprice - (5 * pipsize) limit
    ENDIF
    IF ShortOnMarket then
    EXITSHORT AT tradeprice + (5 * pipsize) limit
    ENDIF
    rsiPeriod=9
    // Conditions pour ouvrir une position acheteuse
    indicator1 = Average[9](RSI[rsiPeriod](close))
    indicator2 = Average[15](RSI[rsiPeriod](close))
    c1 = (indicator1[1] >= indicator2[1])
    indicator3 = RSI[rsiPeriod](close)
    c2 = (indicator3 <= 30)
     
    // Conditions pour ouvrir une position en vente à découvert
    indicator4 = Average[9](RSI[rsiPeriod](close))
    indicator5 = Average[15](RSI[rsiPeriod](close))
    c3 = (indicator4[1] <= indicator5[1])
    indicator6 = RSI[rsiPeriod](close)
    c4 = (indicator6 >= 70)
     
    // Trade orders
    IF c1 AND c2 THEN
    BUY 1 CONTRACT AT MARKET
    SELL AT tradeprice - (5 * pipsize) limit
    ENDIF
     
    IF c3 AND c4 THEN
    SELLSHORT 1 CONTRACT AT MARKET
    EXITSHORT AT tradeprice + (5 * pipsize) limit
    ENDIF
     
    // TP
    SET TARGET pPROFIT 20
    SET STOP pLOSS 50
    #70555 quote
    robertogozzi
    Moderator
    Master

    Sur quels outils et TF utilisez-vous cette stratégie?

    #70556 quote
    Horizion
    Participant
    New

    Time frame 15 minutes et sur le pétrol brent.

     

    Je viens de tester, cela ne marche pas. Je n’ai pas les mêmes résultats qu’en utilisant un stop loss standard.

     

    Je ne comprends pas comment il peut y avoir une différence… un stop loss est bien un ordre limit non ? Où bien y’a-t-il un code magique dans la programmation de celui-ci ?

    #70559 quote
    robertogozzi
    Moderator
    Master

    Le STOP LOSS est un ordre STOP, pas un ordre LIMIT.
    Ca C’est le (deuxième) code modifié, utilisant une PERTE ARRÊT artificielle avec des ordres en attente.
    Le commentaire dans le prochain message pour être en mesure de voir les numéros de ligne:

    // Définition des paramètres du code
    DEFPARAM CumulateOrders = false // Cumul des positions désactivé
    IF LongOnMarket Then
    SELL AT tradeprice - (5 * pipsize) stop
    ENDIF
    IF ShortOnMarket then
    EXITSHORT AT tradeprice + (5 * pipsize) stop
    ENDIF
    rsiPeriod=9
    // Conditions pour ouvrir une position acheteuse
    indicator1 = Average[9](RSI[rsiPeriod](close))
    indicator2 = Average[15](RSI[rsiPeriod](close))
    c1 = (indicator1[1] >= indicator2[1])
    indicator3 = RSI[rsiPeriod](close)
    c2 = (indicator3 <= 30)
     
    // Conditions pour ouvrir une position en vente à découvert
    indicator4 = Average[9](RSI[rsiPeriod](close))
    indicator5 = Average[15](RSI[rsiPeriod](close))
    c3 = (indicator4[1] <= indicator5[1])
    indicator6 = RSI[rsiPeriod](close)
    c4 = (indicator6 >= 70)
     
    // Trade orders
    IF c1 AND c2 THEN
    BUY 1 CONTRACT AT MARKET
    SELL AT close - (5 * pipsize) stop
    ENDIF
     
    IF c3 AND c4 THEN
    SELLSHORT 1 CONTRACT AT MARKET
    EXITSHORT AT close + (5 * pipsize) stop
    ENDIF
     
    // TP
    SET TARGET pPROFIT 20
    //SET STOP pLOSS 50
    #70560 quote
    Horizion
    Participant
    New

    Ca marche!

     

    Lorsque le stop loss est commenté, cela fonctionne. Alors pourquoi lorsque je mets le stop loss, la stratégie de marche plus, il doit y avoir un problème avec tous les ordres…

    #70561 quote
    robertogozzi
    Moderator
    Master

    J’ai commenté sur la ligne 37 parce que ce n’est pas nécessaire, puisque vous utilisez un Stop Loss artificiel avec des ordres en attente.

    J’ai changé les ordres en attente, de LIMIT à STOP. Les ordres LIMIT sont utilisés pour acheter ou vendre à un prix plus favorable, tandis que les ordres STOP pour acheter ou vendre à un prix moins favorable. Le STOP LOSS n’est pas du tout favorable!

    Aux lignes 27 et 32 je mets CLOSE parce que c’est, plus ou moins, le prix d’entrée sur le marché, alors que sur les lignes 4 et 7 je mets TRADEPRICE parce qu’à la barre suivante c’est la bonne référence. Je pense que immédiatement après BUY ou SELLSHORT ProOrder n’est pas immédiatement en mesure de retourner le bon prix avec TRADEPRICE, j’ai remarqué que maintenant les 5 pips STOP sont respectés, d’abord non!

    Je l’ai essayé sur le DAX en 10 minutes et aussi sur le Brent en 15 minutes. Il me semble que cela fonctionne bien.

    Bonne nuit, je vais dormir!

    #70562 quote
    robertogozzi
    Moderator
    Master

    Aux lignes 27 et 32 je mets CLOSE parce que c’est, plus ou moins, le prix d’entrée sur le marché, alors que sur les lignes 4 et 7 je mets TRADEPRICE parce qu’à la barre suivante c’est la bonne référence. Je pense que immédiatement après BUY ou SELLSHORT ProOrder n’est pas immédiatement en mesure de retourner le bon prix avec TRADEPRICE, j’ai remarqué que maintenant les 5 pips STOP sont respectés, d’abord non!

    C’est ce que Nicolas avait dit dans son post https://www.prorealcode.com/topic/traduire-code-pine-script-vers-prorealtime/#post-70500.

    #70563 quote
    Horizion
    Participant
    New

    Mon broker requiert un minimum de 50 points pour mettre un stop loss lorsque l’on prend un trade. C’est pour cela que je cherche à faire un stop loss artificiel de 5 points (ma quantité désirée). Pensez-vous qu’en utilisant ‘stop’ et non ‘limit’ cela va outrepasser le minimum de 50 ?

Viewing 15 posts - 16 through 30 (of 37 total)
  • You must be logged in to reply to this topic.

Traduire code Pine script vers prorealtime (stratégie renko et RSI)


ProOrder : Trading Automatique & Backtests

New Reply
Author
author-avatar
Horizion @horizion Participant
Summary

This topic contains 36 replies,
has 3 voices, and was last updated by Nicolas
7 years, 10 months ago.

Topic Details
Forum: ProOrder : Trading Automatique & Backtests
Language: French
Started: 05/15/2018
Status: Active
Attachments: 1 files
Logo Logo
Loading...