ProRealTime
Pour partager sur le trading automatique, nos algorithmes, nos backtests
Répondre Page 1 sur 1

Question Restriction horaire

par trappiste73 » 24 Juil 2017 11:13

Je souhaite empêcher un algo de prendre position après 23h le vendredi et avant minuit le dimanche car sinon l'ordre est rejeté "marché fermé" et l'algo plante.
Je pense écrire la condition comme çà :
IF (CurrentDayOfWeek < 5) or ((CurrentDayOfWeek = 5) and (CurrentHour < 23))
Est-ce bon sachant que le backtest me donne un résultat un peu différent ?
Merci.

Re: Question Restriction horaire

par trappiste73 » 25 Juil 2017 15:24

En fait, c'est bien ça (merci au forum d'aide prt).
sous forme de condition à ajouter :
c1 = (CurrentDayOfWeek < 5) or ((CurrentDayOfWeek = 5) and (CurrentHour < 23))
Mais je m'explique pas trop la différence de backtest avec ou sans, les robots rêvent peut-être à leurs heures perdues ?

Re: Question Restriction horaire

par trappiste73 » 26 Juil 2017 09:17

Tout bien considéré, je reste fidèle à mon principe terrien: ce que je ne comprends pas, je ne fais pas. Donc pas d'ajout de cette condition tant que je n'ai pas élucidé le mystère des backtests différents ...

Re: Question Restriction horaire

par Edd » 26 Juil 2017 11:55

Salut, le mystère est que tu ne devrais pas utiliser "Current",

CurrentTime indique l’heure du marché
Time indique l’heure de clôture de chaque barre

donc tes restrictions horaires ne fonctionnent qu'en temps réelles et non en backtest.
Il suffit donc de remplacer dans tes formules :

"CurrentDayOfWeek" par "DayOfWeek[0]" et "CurrentHour" par "Hour[0]"

La fonction "DayOfWeek" ne traite pas le dimanche, uniquement les jours 12345 (doc prt). Sur metatrader 0 c'est dimanche et 6 c'est samedi.

Si tu mets DayOfWeek[0]<5 , le robot va exclure Lu ma mer et jeudi...

Donc peut être cette formule:

c1 =
(DayOfWeek[0]<>1 and DayOfWeek[0]<>2 and DayOfWeek[0]<>3 and DayOfWeek[0]<>4 and DayOfWeek[0]<>5)
or
((DayOfWeek[0] = 5) and (Hour[0]<23))

Re: Question Restriction horaire

par trappiste73 » 26 Juil 2017 12:11

:merci: Je vais pouvoir affiner les algos.
Ce qui est louche là dedans, c'est que le cas s'est produit une fois en 2 mois et bien sûr quand je n'avais pas accès à internet ... :)


ProRealTime

Alors partagez-le 5 fois c'est bon pour la santé