Comment trader 1% de ma position

Viewing 7 posts - 1 through 7 (of 7 total)
  • Author
    Posts
  • #160881 quote
    Noxius
    Participant
    Junior

    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

    #160899 quote
    Nicolas
    Keymaster
    Master

    Le code ci-dessous achète 1% de ton capital dans la valeur de l’instrument tradé :

    defparam cumulateorders=false
    
    StartCapital = 10000
    
    //put strategy here
    if rsi[14]crosses over 50 then 
     size = close/((startcapital+strategyprofit)*0.01)
     buy size shares at market 
     set target pprofit 100
     set stop ploss 50
    endif
    #160923 quote
    Noxius
    Participant
    Junior

    Merci !

    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.

    #160933 quote
    Nicolas
    Keymaster
    Master

    Je 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.

    #160937 quote
    Noxius
    Participant
    Junior

    Dans l’exemple mis au dessus j’ai utilisé cette stratégie:

    // Définition des paramètres du code
    DEFPARAM CumulateOrders = false // Cumul des positions désactivé
    startcapital = 10000
    // Conditions pour ouvrir une position acheteuse
    indicator1 = Average[200](close)
    c1 = (close > indicator1)
    indicator2 = RSI[2](close)
    c2 = (indicator2 < 10)
    
    IF c1 AND c2 THEN
    size = close/((startcapital+strategyprofit)*0.01)
    BUY size SHARES AT MARKET
    ENDIF
    
    // Conditions pour fermer une position acheteuse
    indicator3 = Average[5](close)
    c3 = (close > indicator3)
    
    IF c3 THEN
    SELL AT MARKET
    ENDIF
    
    // Conditions pour ouvrir une position en vente à découvert
    c4 = (close < indicator1)
    c5 = (indicator2 > 90)
    IF c4 AND c5 THEN
    SELLSHORT size SHARES AT MARKET
    ENDIF
    
    // Conditions pour fermer une position en vente à découvert
    c6 = (close < indicator3)
    
    IF c6 THEN
    EXITSHORT AT MARKET
    ENDIF
    

    Stratégie qui nécessite ni stop loss ni take profit

    #160954 quote
    Nicolas
    Keymaster
    Master

    Le calcul de la taille de position doit aussi être ajouté avant de prendre une position short, entre les lignes 26 et 27.

    #160968 quote
    Noxius
    Participant
    Junior

    J’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 ?

    // Définition des paramètres du code
    DEFPARAM CumulateOrders = false // Cumul des positions désactivé
    startcapital = 10000
    // Conditions pour ouvrir une position acheteuse
    indicator1 = Average[200](close)
    c1 = (close > indicator1)
    indicator2 = RSI[2](close)
    c2 = (indicator2 < 10)
    
    IF c1 AND c2 THEN
    size = close/((startcapital+strategyprofit)*0.01)
    BUY size SHARES AT MARKET
    ENDIF
    
    // Conditions pour fermer une position acheteuse
    indicator3 = Average[5](close)
    c3 = (close > indicator3)
    
    IF c3 THEN
    SELL AT MARKET
    ENDIF
    
    // Conditions pour ouvrir une position en vente à découvert
    c4 = (close < indicator1)
    c5 = (indicator2 > 90)
    IF c4 AND c5 THEN
    size2 = close/((startcapital+strategyprofit)*0.01)
    SELLSHORT size2 SHARES AT MARKET
    ENDIF
    
    // Conditions pour fermer une position en vente à découvert
    c6 = (close < indicator3)
    
    IF c6 THEN
    EXITSHORT AT MARKET
    ENDIF
    
Viewing 7 posts - 1 through 7 (of 7 total)
  • You must be logged in to reply to this topic.

Comment trader 1% de ma position


ProOrder : Trading Automatique & Backtests

New Reply
Author
author-avatar
Noxius @noxius Participant
Summary

This topic contains 6 replies,
has 2 voices, and was last updated by Noxius
5 years, 1 month ago.

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