Perte incompréhensible sur un BACKTESTE
Forums › ProRealTime forum Français › Support ProBuilder › Perte incompréhensible sur un BACKTESTE
- This topic has 10 replies, 4 voices, and was last updated 2 years ago by Nicolas.
-
-
08/23/2022 at 7:48 PM #199492
Bonjour à tous,
j’ai coder une stratégie très simple avec le MACD avec la prise de bénéfice très rapide, ce code je vous l’affiche et vous l’explique en dessous :
- a=Average[200](close)
- b= MACDline[12,26,9](close)
- c=MACDSignal[12,26,9](close)
- ACHAT1= b CROSSES OVER c and close >a
- VENTE1= b CROSSES UNDER c and close <a
- IF ACHAT1 then
- buy 1000000LOTS AT MARKET
- SET STOP PLOSS MYSTOP
- SET TARGET PPROFIT MYPROFIT
- MYSTOP= -0.01
- MYPROFIT = +0.01
- IF VENTE1 then
- SELLSHORT 1000000LOTS AT MARKET
- SET STOP PLOSS MYSTOP
- SET TARGET PPROFIT MYPROFIT
- MYSTOP= -0.01
- MYPROFIT = +0.01
- ENDIF
pour décrire il y a une prise de position à l’achat quand le MACD croise à la hausse et que le prix est au dessus de la moyenne mobile 200, et une prise de de position vendeuse quand le MACD croise à la baisse et que le prix et en dessous de la moyenne mobile 200, les prise de bénéfice et les stop sont très rapide, c’est a dire par exemple quand il y a un achat au marché est que le prix est a 1.19455 est que le prix monte à 1.19456 le take profit est atteint très rapidement, à l’inverse le stop fait en sorte de ne pas perde plus de 0.00001
j’ai donc tester ce code sur l’année est tout les Trade ont été gagnant, à l’exception de quelque un qui m’on fait perde beaucoup d’agent ( heureusement que s’était un backteste) mais je ne comprend pas du tout l’exécution de ces trades,
pour un achat il a été exécuté en dessous de la moyenne mobile 200 alors que les condition d’achat indiquer au dessus de la moyenne mobile 200 et le stop a été exécuter 100 fois plus loin que ce que j’avais indiquer dans le code, comme exemple l’achat s’est exécuté à 1.19455 et le stoploss à stoper la perte à 1.19155 donc bien plus loin que ce que j’avais coder
quelqu’un peut t il m’expliquer si cela est du à un beug et comment peut on corriger cela pour améliorer le backteste
merci beaucoup de votre aide =)
08/28/2022 at 11:27 AM #199730ENDIF manque après la ligne 11, juste avant ceci :
1IF VENTE1 thenAvec ce correctif, il me semble que tout fonctionne bien.
08/30/2022 at 5:05 PM #199897merci beaucoup =)
09/07/2022 at 7:04 PM #200327re bonjour a tous ,
bin écouter le problème persiste encore, mais cette fois se sont des positions acheteuse ou vendeuse qui dure longtemps , exemple une position se déclenche le 30 aout a 4h29 et se referme a 06h11 cela engendre donc un perte énorme et fais foirer tout les autre Trade gagnant, je ne comprend pas pourquoi les Trade dure aussi longtemps car le stop loss et le take profit sont petit,
pouvez vous m’aider car je ne sais plus quoi faire ……………………………………..
pour information lors du bacteste j’ai mis le spread a 0.8 et le capital initial a 1500 euros
si vous voulais avoir un petit aperçus voici le code que vous pouvez bactester du 29 aout 2022 a 9h00 jusqu’au 31 aout 2022 jusqu’a 17h30
123456789101112131415161718192021a=Average[200](close)b= MACDline[12,26,9](close)c=MACDSignal[12,26,9](close)ACHAT1= b CROSSES OVER c and close >aVENTE1= b CROSSES UNDER c and close <aIF ACHAT1 thenBUY 10000LOTS AT MARKETSET STOP PLOSS MYSTOPSET TARGET PPROFIT MYPROFITMYSTOP= -0.01MYPROFIT = +0.01ENDIFIF VENTE1 thenSELLSHORT 10000LOTS AT MARKETSET STOP PLOSS MYSTOPSET TARGET PPROFIT MYPROFITMYSTOP= -0.01MYPROFIT = +0.01ENDIF09/07/2022 at 7:40 PM #20032809/08/2022 at 9:13 AM #200344Au premier achat (ou vente) ligne 10, il n’y a aucune valeur de MYSTOP ou MYPROFIT de connu, donc c’est 0.
Puis tu renseignes la valeur avec des distances en prix alors que tu utilises des instructions qui attendent une valeur en points (PLOSS, PPROFIT)
Au deuxième trade, ces valeurs seront utilisés, mais elles ne sont pas correctes, puisque par ailleurs tu donnes une valeur négative à une distance pour le stoploss et avec des +/- devant !? 🙂
Bref, cela devrait plutôt se coder pour suit:
1234567891011121314151617181920212223//valeur à adapter:MYSTOP = 10 //10 pointsMYPROFIT = 10 //10 points// ------------a=Average[200](close)b= MACDline[12,26,9](close)c=MACDSignal[12,26,9](close)ACHAT1= b CROSSES OVER c and close >aVENTE1= b CROSSES UNDER c and close <aIF ACHAT1 thenBUY 10000 LOTS AT MARKETSET STOP PLOSS MYSTOPSET TARGET PPROFIT MYPROFITENDIFIF VENTE1 thenSELLSHORT 10000 LOTS AT MARKETSET STOP PLOSS MYSTOPSET TARGET PPROFIT MYPROFITENDIFPour mémoire le code est lu de haut en bas, donc si tu veux initialiser des valeurs statiques dans tes variables, place les en tête de code.
09/08/2022 at 5:44 PM #200379Bonsoir,
le forex sur EUR/USD en 1min
merci beaucoup
09/08/2022 at 6:37 PM #200384juste pour te donner encore un autre exemple, tu prend la journée du 29 aout de 09h00 à 17h59, tu verra que il y a deux Trade perdant, un trade a 16h17 et un autre a 17h28 , tu teste le code suivant en 1 min avec un spread a 0.8 pip et tu verra les deux trade sont perdant et dur longtemps,
c’est ce que j’essaye de comprendre mais je n’arrive pas a trouver la solution
voici le code :
a=Average[200](close)
b= MACDline[12,26,9](close)
c=MACDSignal[12,26,9](close)ACHAT1= b CROSSES OVER c and close>a
VENTE1= b CROSSES UNDER c and close<aIF ACHAT1 then
BUY 10000LOTS AT MARKET
SET STOP PLOSS MYSTOP
SET TARGET PPROFIT MYPROFIT
MYSTOP= -0.01
MYPROFIT = +0.01
ENDIFIF VENTE1 then
SELLSHORT 10000LOTS AT MARKET
SET STOP PLOSS MYSTOP
SET TARGET PPROFIT MYPROFIT
MYSTOP= -0.01
MYPROFIT = +0.01
ENDIF09/08/2022 at 7:48 PM #200387le code doit etre ecrit comme ceci
123456789101112131415161718192021222324a=Average[200](close)b= MACDline[12,26,9](close)c=MACDSignal[12,26,9](close)ACHAT1= b CROSSES OVER c and close>aVENTE1= b CROSSES UNDER c and close<aIF ACHAT1 thenBUY 10000LOTS AT MARKETMYSTOP= -0.01MYPROFIT = +0.01SET STOP PLOSS MYSTOPSET TARGET PPROFIT MYPROFITENDIFIF VENTE1 thenSELLSHORT 10000LOTS AT MARKETMYSTOP= -0.01MYPROFIT = +0.01SET STOP PLOSS MYSTOPSET TARGET PPROFIT MYPROFITENDIF09/08/2022 at 7:52 PM #20038809/09/2022 at 10:28 AM #200406Voir mon message ci-dessus où le code a été corrigé: https://www.prorealcode.com/topic/perte-incomprehensible-sur-un-backteste/#post-200344
Merci d’utiliser cette version pout les tests 🙂
1 user thanked author for this post.
-
AuthorPosts
Find exclusive trading pro-tools on