Traduire code Pine script vers prorealtime (stratégie renko et RSI)
Forums › ProRealTime forum Français › Support ProOrder › Traduire code Pine script vers prorealtime (stratégie renko et RSI)
- This topic has 36 replies, 3 voices, and was last updated 6 years ago by Nicolas.
-
-
05/15/2018 at 6:53 PM #7051405/15/2018 at 7:10 PM #70516
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.05/15/2018 at 7:12 PM #7051705/15/2018 at 7:12 PM #70518Ceci s’applique UNIQUEMENT aux commandes en attente (pending orders).
05/15/2018 at 7:15 PM #70519Vous 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.
05/15/2018 at 7:37 PM #70520Merci 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.
123456789101112131415161718192021222324252627282930// Définition des paramètres du codeDEFPARAM CumulateOrders = True // Cumul des positions désactivérsiPeriod=9// Conditions pour ouvrir une position acheteuseindicator1 = 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écouvertindicator4 = Average[9](RSI[rsiPeriod](close))indicator5 = Average[15](RSI[rsiPeriod](close))c3 = (indicator4[1] <= indicator5[1])indicator6 = RSI[rsiPeriod](close)c4 = (indicator6 >= 70)// Trade ordersIF c1 AND c2 THENBUY 1 CONTRACT AT MARKETENDIFIF c3 AND c4 THENSELLSHORT 1 CONTRACT AT MARKETENDIF// TPSET TARGET pPROFIT 20SET STOP pLOSS 51234567891011121314151617181920212223242526272829303132333435// Définition des paramètres du codeDEFPARAM CumulateOrders = True // Cumul des positions désactivéIF LongOnMarket ThenSELL AT tradeprice - (5 * pipsize) limitENDIFIF ShortOnMarket thenEXITSHORT AT tradeprice + (5 * pipsize) limitENDIFrsiPeriod=9// Conditions pour ouvrir une position acheteuseindicator1 = 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écouvertindicator4 = Average[9](RSI[rsiPeriod](close))indicator5 = Average[15](RSI[rsiPeriod](close))c3 = (indicator4[1] <= indicator5[1])indicator6 = RSI[rsiPeriod](close)c4 = (indicator6 >= 70)// Trade ordersIF c1 AND c2 THENBUY 1 CONTRACT AT MARKETENDIFIF c3 AND c4 THENSELLSHORT 1 CONTRACT AT MARKETENDIF// TPSET TARGET pPROFIT 20SET STOP pLOSS 5005/15/2018 at 7:40 PM #7052105/15/2018 at 10:40 PM #70554Il 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:12345678910111213141516171819202122232425262728293031323334353637// Définition des paramètres du codeDEFPARAM CumulateOrders = True // Cumul des positions désactivéIF LongOnMarket ThenSELL AT tradeprice - (5 * pipsize) limitENDIFIF ShortOnMarket thenEXITSHORT AT tradeprice + (5 * pipsize) limitENDIFrsiPeriod=9// Conditions pour ouvrir une position acheteuseindicator1 = 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écouvertindicator4 = Average[9](RSI[rsiPeriod](close))indicator5 = Average[15](RSI[rsiPeriod](close))c3 = (indicator4[1] <= indicator5[1])indicator6 = RSI[rsiPeriod](close)c4 = (indicator6 >= 70)// Trade ordersIF c1 AND c2 THENBUY 1 CONTRACT AT MARKETSELL AT tradeprice - (5 * pipsize) limitENDIFIF c3 AND c4 THENSELLSHORT 1 CONTRACT AT MARKETEXITSHORT AT tradeprice + (5 * pipsize) limitENDIF// TPSET TARGET pPROFIT 20SET STOP pLOSS 5005/15/2018 at 10:43 PM #70555Sur quels outils et TF utilisez-vous cette stratégie?
05/15/2018 at 10:53 PM #70556Time 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 ?
05/15/2018 at 11:14 PM #70559Le 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:12345678910111213141516171819202122232425262728293031323334353637// Définition des paramètres du codeDEFPARAM CumulateOrders = false // Cumul des positions désactivéIF LongOnMarket ThenSELL AT tradeprice - (5 * pipsize) stopENDIFIF ShortOnMarket thenEXITSHORT AT tradeprice + (5 * pipsize) stopENDIFrsiPeriod=9// Conditions pour ouvrir une position acheteuseindicator1 = 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écouvertindicator4 = Average[9](RSI[rsiPeriod](close))indicator5 = Average[15](RSI[rsiPeriod](close))c3 = (indicator4[1] <= indicator5[1])indicator6 = RSI[rsiPeriod](close)c4 = (indicator6 >= 70)// Trade ordersIF c1 AND c2 THENBUY 1 CONTRACT AT MARKETSELL AT close - (5 * pipsize) stopENDIFIF c3 AND c4 THENSELLSHORT 1 CONTRACT AT MARKETEXITSHORT AT close + (5 * pipsize) stopENDIF// TPSET TARGET pPROFIT 20//SET STOP pLOSS 5005/15/2018 at 11:22 PM #7056005/15/2018 at 11:28 PM #70561J’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!
05/15/2018 at 11:34 PM #70562Aux 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.
05/15/2018 at 11:34 PM #70563Mon 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 ?
-
AuthorPosts
Find exclusive trading pro-tools on