Bonjour j’ai une question concernant le backtest.
Je m’aperçois que suivant le style de coding, le résultat des variables optimales en jouant un backtest est différent.
Ci-dessous 2 codes pour prise de position à l’achat.
Dans le premier code, la condition est calculée en prenant en compte les jours et l’heure.
Dans le second, la condition est calculé de maniéré générale et la position est prise suivant les jours et l’heure.
dans les premier cas, les variables optimales sont (par exemple) : (7, 100, 22) et dans le second (10, 50, 10)
Quelle est la maniéré juste de coder ? est-ce important ?
est-ce exact de dire que dans le deuxième code, le backtest va jouer toutes les positons non réalistes car en dehors des horaires ?
Merci
//===================== code1 =======================
AllowedTradeDay = dayofweek <> 6 and dayofweek <> 0
AllowedTime = time >= 090000 and time < 174000
if (AllowedTradeDay and AllowedTime) then
CUMRSI = SUMMATION[Period](RSI[Period](close))
AVG = average[nbAverage](close)
Condition = Close > AVG AND CUMRSI < maxCum
if Condition then
Buy 1 shares at market
endif
endif
//===================== code 2 =======================
AllowedTradeDay = dayofweek <> 6 and dayofweek <> 0
AllowedTime = time >= 090000 and time < 174000
CUMRSI = SUMMATION[Period](RSI[Period](close))
AVG = average[nbAverage](close)
Condition = Close > AVG AND CUMRSI < maxCum
if (AllowedTradeDay and AllowedTime) and Condition then
Buy 1 shares at market
endif
Le résultat des variables optimisées est différent par ce que les stratégies sont différentes.
Dans ton premier code tes 3 variables CUMRSI, AVG et Condition sont calculés uniquement durant “AllowedTime”, tandis que dans le code 2 c’est en continu. Je pense que si tu GRAPH les variables tu verrais une différence dans leurs résultats.
Merci pour ta réponse
donc si je ne veux prendre des positions que pendant (AllowedTradeDay and AllowedTime) utiliser le code2 sera faux car le backtest va calculer des positions hors ces temps la
Est-ce mon raisonnement correct ?
Nicolas
peux -tu stp verifier si mon raisonnement correct ?
Merci
Faux, tout dépend du point de vue, mais différent oui bien entendu.
Nicolas
je ne comprends pas ta reponse !
pour moi le code2 est faux
Ok il est faux, c’est pas ma stratégie 🙂 Si il ne correspond pas à la façon dont tu as créé la stratégie, alors il faux de ton point de vue, voilà ce que je voulais dire, pas de soucis.