Comment trader 1% de ma position
Forums › ProRealTime forum Français › Support ProOrder › Comment trader 1% de ma position
- This topic has 6 replies, 2 voices, and was last updated 3 years ago by Noxius.
-
-
02/10/2021 at 2:23 AM #160881
Bonjour, je n’ai pas trouvé comment trader 1% de capital à chaque nouvelle position lors d’un backtest, j’ai trouvé quelques infos ici et là mais ça concerne les stratégies qui ont un stop loss.
Je n’utilise pas de stop loss pour certaines stratégies, comment faire ?
Merci
02/10/2021 at 9:16 AM #160899Le code ci-dessous achète 1% de ton capital dans la valeur de l’instrument tradé :
1234567891011defparam cumulateorders=falseStartCapital = 10000//put strategy hereif rsi[14]crosses over 50 thensize = close/((startcapital+strategyprofit)*0.01)buy size shares at marketset target pprofit 100set stop ploss 50endif02/10/2021 at 12:14 PM #160923Merci !
En modifiant le “*0.01” en “0.02” ou “0.03” pour trader 2% ou 3% du capital il se trouve que mes stratégies trades beaucoup moins et donc gagne moins au final, comment ça se fait ?
Même en laissant à “0.01” j’ai beaucoup moins de trade, je passe de 460 trades au total avec le classique “buy 1 shares at market” à 270 en prenant 1%, si j’augmente le capital le nombre de trades baisse encore plus.Autre question, faut il mettre la même valeur de startcapital que sur capital initial dans la fenêtre ou on choisis le spread, les frais, etc… pour être sur d’arriver à 1% ?
Car j’ai remarquer si je modifie l’un ou l’autre j’ai des résultat bien différents et aucun des 2 paramètres à l’air de prendre le pas sur l’autre.02/10/2021 at 1:31 PM #160933Je ne connais pas le principe de tes stratégies, comment sont gérés les ordres, etc.. donc je ne peux pas répondre sur la quantité de trades, désolé.
Il faut en effet renseigner la variable StartCapital avec la même valeur que celle de ta fenêtre ProBacktest, car il n’y a pas de moyen de récupérer cette valeur par le code.
02/10/2021 at 2:29 PM #160937Dans l’exemple mis au dessus j’ai utilisé cette stratégie:
1234567891011121314151617181920212223242526272829303132333435// Définition des paramètres du codeDEFPARAM CumulateOrders = false // Cumul des positions désactivéstartcapital = 10000// Conditions pour ouvrir une position acheteuseindicator1 = Average[200](close)c1 = (close > indicator1)indicator2 = RSI[2](close)c2 = (indicator2 < 10)IF c1 AND c2 THENsize = close/((startcapital+strategyprofit)*0.01)BUY size SHARES AT MARKETENDIF// Conditions pour fermer une position acheteuseindicator3 = Average[5](close)c3 = (close > indicator3)IF c3 THENSELL AT MARKETENDIF// Conditions pour ouvrir une position en vente à découvertc4 = (close < indicator1)c5 = (indicator2 > 90)IF c4 AND c5 THENSELLSHORT size SHARES AT MARKETENDIF// Conditions pour fermer une position en vente à découvertc6 = (close < indicator3)IF c6 THENEXITSHORT AT MARKETENDIFStratégie qui nécessite ni stop loss ni take profit
02/10/2021 at 4:34 PM #16095402/10/2021 at 6:08 PM #160968J’ai corriger, cependant j’ai toujours des trades qui disparaisse: 374 avec 1% contre 466 avec le classique “buy 1 shares at market”
J’ai regarder sur le graphique je vois bien qu’ils manquent des trades et ou ils sont mais je comprend juste pas pourquoi, les signaux sont bien les mêmes (forcément) mais certain ne sont pas pris sans raison apparente et dans les 2 cas les backtest vont jusqu’aux périodes défini finissant dans le positif.Est-ce un bug ?
123456789101112131415161718192021222324252627282930313233343536// Définition des paramètres du codeDEFPARAM CumulateOrders = false // Cumul des positions désactivéstartcapital = 10000// Conditions pour ouvrir une position acheteuseindicator1 = Average[200](close)c1 = (close > indicator1)indicator2 = RSI[2](close)c2 = (indicator2 < 10)IF c1 AND c2 THENsize = close/((startcapital+strategyprofit)*0.01)BUY size SHARES AT MARKETENDIF// Conditions pour fermer une position acheteuseindicator3 = Average[5](close)c3 = (close > indicator3)IF c3 THENSELL AT MARKETENDIF// Conditions pour ouvrir une position en vente à découvertc4 = (close < indicator1)c5 = (indicator2 > 90)IF c4 AND c5 THENsize2 = close/((startcapital+strategyprofit)*0.01)SELLSHORT size2 SHARES AT MARKETENDIF// Conditions pour fermer une position en vente à découvertc6 = (close < indicator3)IF c6 THENEXITSHORT AT MARKETENDIF -
AuthorPosts
Find exclusive trading pro-tools on