Debug backtest avant passage en prod
-
X@vi3r
- Membre du Conseil Jedi
- Messages : 8068
- Enregistré le : 26 avr. 2021 14:13
Re: Debug backtest avant passage en prod
Bougie terminée ou courante ?
Je vais essayer de dire ce que je constate.
un algo en cours fait cette operation : si high supérieur à Niveau alors Achat au marché.
L'achat se produit sur l'open de la barre suivante.
Ma conclusion était donc que les open high low close (OHLC ?) de la barre courante ne soit en réalité pris en copte qu'à la close de la barre courante (à 0'59'' de la barre 1min par ewemple).
C'est donc dans le cas d'un achat (ou vente), il est donc possible que pour d'autre calculs les high low soient pris en compte en mode tick par tick.
Je vais essayer de dire ce que je constate.
un algo en cours fait cette operation : si high supérieur à Niveau alors Achat au marché.
L'achat se produit sur l'open de la barre suivante.
Ma conclusion était donc que les open high low close (OHLC ?) de la barre courante ne soit en réalité pris en copte qu'à la close de la barre courante (à 0'59'' de la barre 1min par ewemple).
C'est donc dans le cas d'un achat (ou vente), il est donc possible que pour d'autre calculs les high low soient pris en compte en mode tick par tick.
-
falex
- Le Gladiateur
- Messages : 34275
- Enregistré le : 12 févr. 2013 15:41
Re: Debug backtest avant passage en prod
Le problème du . n’y tick est que nous n’avions pas assez de puissance de calcul à dispotion pour réagir en « tick ».
Le gros avantage de prêt est que le code tourne côté serveur et qu’ils sont proche du brocker.
MTx ça tourne en local par défaut donc tu prends l’aller retour du tick, ton ordre (si il y en a ) et le tout étant soumis à la puissance de ta machine et ton éloignement « réseau » des serveurs du blockers.
Pour contrer ce point il y a des offres de VM mais bon franchement est-ce que tu crois que Mme Michu sait gérer un serveur ?
Donc faut bien voir que nous ne sommes que du zoo plancton. Et que l’on fait avec ce que l’on nous comme outils à disposition.
Le gros avantage de prêt est que le code tourne côté serveur et qu’ils sont proche du brocker.
MTx ça tourne en local par défaut donc tu prends l’aller retour du tick, ton ordre (si il y en a ) et le tout étant soumis à la puissance de ta machine et ton éloignement « réseau » des serveurs du blockers.
Pour contrer ce point il y a des offres de VM mais bon franchement est-ce que tu crois que Mme Michu sait gérer un serveur ?
Donc faut bien voir que nous ne sommes que du zoo plancton. Et que l’on fait avec ce que l’on nous comme outils à disposition.
-
Lorci
- Compagnon Jedi
- Messages : 1978
- Enregistré le : 31 mai 2020 16:24
Re: Debug backtest avant passage en prod
X@vi3r, oui pour définition de ohlc.
Tout dépend si vous lancez vos backtests en mode tick par tick.
Dans ce cas, vous pouvez effectivement exploiter le ohlc de la bougie courante, mais je n'en vois pas trop l'intérêt puisque si j'ai bien compris, les ordres ne sont exécutés comme tu le dis qu'à la close de la barre courante (ou à l'open de la suivante comme sur MTx ? )
Donc, en mode tick par tick, la dernière fois que vous testez le ohlc de la bougie courante, c'est à xxh59.59.999
Sauf si pour gagner du temps d'exécution , si au cours de la bougie courante, vous constater par exemple que high - low > range, et à ce moment, vous mettez une variable à 1 par exemple comme témoin et QUE VOUS ARRÊTEZ de tester le high - low.
Tout dépend si vous lancez vos backtests en mode tick par tick.
Dans ce cas, vous pouvez effectivement exploiter le ohlc de la bougie courante, mais je n'en vois pas trop l'intérêt puisque si j'ai bien compris, les ordres ne sont exécutés comme tu le dis qu'à la close de la barre courante (ou à l'open de la suivante comme sur MTx ? )
Donc, en mode tick par tick, la dernière fois que vous testez le ohlc de la bougie courante, c'est à xxh59.59.999
Sauf si pour gagner du temps d'exécution , si au cours de la bougie courante, vous constater par exemple que high - low > range, et à ce moment, vous mettez une variable à 1 par exemple comme témoin et QUE VOUS ARRÊTEZ de tester le high - low.
-
Lorci
- Compagnon Jedi
- Messages : 1978
- Enregistré le : 31 mai 2020 16:24
Re: Debug backtest avant passage en prod
falex, "Le gros avantage de prt est que le code tourne côté serveur et qu’ils sont proche du brocker."
C'est vrai que ça a beaucoup d'avantages (pas besoin de VPS, ou de laisser tourner son ordi avec tous les risques de problème réseau que ça comporte, temps du ping réduit ...)
Mais ça me fait un peu peur qu'IG concentre sur ses serveurs toute la puissance de calcul nécessaire à tous ses clients, notamment ceux qui lancent des backtests gourmands en puissance de calcul.
C'est vrai que ça a beaucoup d'avantages (pas besoin de VPS, ou de laisser tourner son ordi avec tous les risques de problème réseau que ça comporte, temps du ping réduit ...)
Mais ça me fait un peu peur qu'IG concentre sur ses serveurs toute la puissance de calcul nécessaire à tous ses clients, notamment ceux qui lancent des backtests gourmands en puissance de calcul.
-
falex
- Le Gladiateur
- Messages : 34275
- Enregistré le : 12 févr. 2013 15:41
Re: Debug backtest avant passage en prod
Les serveurs d’IG et de prt sont disjoint.
Et puis il vaut mieux que ce soit ton brocker qui paye les serveurs la Clim le réseau plutôt que toi vue le prix …
Sans compter le simple fait que ces serveurs sont surveillés et normalement redondant.
Et puis il vaut mieux que ce soit ton brocker qui paye les serveurs la Clim le réseau plutôt que toi vue le prix …
Sans compter le simple fait que ces serveurs sont surveillés et normalement redondant.
-
Lorci
- Compagnon Jedi
- Messages : 1978
- Enregistré le : 31 mai 2020 16:24
Re: Debug backtest avant passage en prod
Ah oui, donc ce sont les serveurs de prt qui servent pour les backtests et ceux d'ig pour le traitement des ordres ?
-
falex
- Le Gladiateur
- Messages : 34275
- Enregistré le : 12 févr. 2013 15:41
-
trappiste73
- Membre du Conseil Jedi
- Messages : 5208
- Enregistré le : 08 déc. 2016 11:38
Re: Debug backtest avant passage en prod
En 7 ans, c'est tombé moins de 5 fois en panne et peut-être 2-3 fois avec retour des sauvegardes genre de la veille. Sans incidence sur le trading. Et il me semble pas depuis 18 mois.
-
Lorci
- Compagnon Jedi
- Messages : 1978
- Enregistré le : 31 mai 2020 16:24
Re: Debug backtest avant passage en prod
D'accord, et pas de temps de latences en manu ou en auto ?
-
G'sT
- Maître Jedi
- Messages : 4719
- Enregistré le : 01 mars 2012 18:45
Re: Debug backtest avant passage en prod
Hello Falex
Voila j’ai fait mon relevé d’écarts sur le Nasdaq.
Tout d’abord le protocole : j’ai pris les 20 trades réels passés par mon algo entre 9 h et 17h30 le mardi 5 juin (puisque j’étais en full "nasdaq"ce jour là). J’ai backtesté sur le même créneau avec un spread de 2 points et comparé avec les trades réels.
Au final voici le résultat pour les 20 trades, sachant que les "-" sont à mon avantage et les "+" sont à mon désavantage :
0/-0,4/-0,2/0/-0,4/-0,3/1,5/0,1/-0,7/-0,1/-1,1/-0,4/0,2/0,1/0/-0,6/-0,5/-0,7/-0,7/-0,8
On voit dans cet échantillon que 3 achats réels se font au prix exact du backtest, et que la majorité des écarts se font à mon avantage. Les écarts sont finalement assez raisonnables (mais ce n’est qu’un échantillon pas une loi).
Voila j’ai fait mon relevé d’écarts sur le Nasdaq.
Tout d’abord le protocole : j’ai pris les 20 trades réels passés par mon algo entre 9 h et 17h30 le mardi 5 juin (puisque j’étais en full "nasdaq"ce jour là). J’ai backtesté sur le même créneau avec un spread de 2 points et comparé avec les trades réels.
Au final voici le résultat pour les 20 trades, sachant que les "-" sont à mon avantage et les "+" sont à mon désavantage :
0/-0,4/-0,2/0/-0,4/-0,3/1,5/0,1/-0,7/-0,1/-1,1/-0,4/0,2/0,1/0/-0,6/-0,5/-0,7/-0,7/-0,8
On voit dans cet échantillon que 3 achats réels se font au prix exact du backtest, et que la majorité des écarts se font à mon avantage. Les écarts sont finalement assez raisonnables (mais ce n’est qu’un échantillon pas une loi).
-
falex
- Le Gladiateur
- Messages : 34275
- Enregistré le : 12 févr. 2013 15:41
Re: Debug backtest avant passage en prod
Super pour ton retour g’st.
Merci Trapiste73.
Côté ig à part le souci de notification push qu’avait certains ça fait bien longtemps que l’on a pas eu de panne sèche.
Y compris bourse sous-jacente avec des quotations « farfelues ».
Merci Trapiste73.
Côté ig à part le souci de notification push qu’avait certains ça fait bien longtemps que l’on a pas eu de panne sèche.
Y compris bourse sous-jacente avec des quotations « farfelues ».
-
Lorci
- Compagnon Jedi
- Messages : 1978
- Enregistré le : 31 mai 2020 16:24
Re: Debug backtest avant passage en prod
Bonjour,
Je me suis mis à prt démo via Prorealtime depuis quelques semaines.
J'essaie de tester des stratégies en écrivant quelques algos et je découvre petit à petit les particularités
de prt étant habitué à MT4/MT5
Les moyens de debug sont très limités pour les systèmes. (GRAPH, GRAPHONPRICE), mais savez vous, je viens de le découvrir par hasard, qu'il existe une fonction PRINT sur la V12 ?
https://www.prorealcode.com/documentation/print/
Je me suis mis à prt démo via Prorealtime depuis quelques semaines.
J'essaie de tester des stratégies en écrivant quelques algos et je découvre petit à petit les particularités
de prt étant habitué à MT4/MT5
Les moyens de debug sont très limités pour les systèmes. (GRAPH, GRAPHONPRICE), mais savez vous, je viens de le découvrir par hasard, qu'il existe une fonction PRINT sur la V12 ?
https://www.prorealcode.com/documentation/print/
-
X@vi3r
- Membre du Conseil Jedi
- Messages : 8068
- Enregistré le : 26 avr. 2021 14:13
Re: Debug backtest avant passage en prod
Merci pour l'info 
ça me fait penser : j'ai découvert un peu tard mais chatGPT est capable de coder pour prt.
ça me fait penser : j'ai découvert un peu tard mais chatGPT est capable de coder pour prt.
-
dav
- Chevalier Émérite Jedi
- Messages : 3763
- Enregistré le : 08 mars 2015 14:34
Re: Debug backtest avant passage en prod
Bonsoir
Quel est l'interet de passer par chat GPT ? je ne vois pas trop
Quel est l'interet de passer par chat GPT ? je ne vois pas trop
-
nuts
- Membre du Conseil Jedi
- Messages : 15618
- Enregistré le : 06 juil. 2023 21:02
Re: Debug backtest avant passage en prod
il code pour toi
pas besoin d'y comprendre quelque chose en codage
surtout la dernière version (o1 d'OpenAi)
pas besoin d'y comprendre quelque chose en codage
surtout la dernière version (o1 d'OpenAi)
-
trappiste73
- Membre du Conseil Jedi
- Messages : 5208
- Enregistré le : 08 déc. 2016 11:38
Re: Debug backtest avant passage en prod
Hello, alors prorealcode qui ressemble à du visualbasic pour débutants est tellement simple que l’aide d’une IA ne sert à rien.
Si on n’est pas prêt à apprendre ce langage, mieux vaut ne pas faire d’algorithme : le résultat sera à l hauteur de ses efforts…
Si on n’est pas prêt à apprendre ce langage, mieux vaut ne pas faire d’algorithme : le résultat sera à l hauteur de ses efforts…
-
nuts
- Membre du Conseil Jedi
- Messages : 15618
- Enregistré le : 06 juil. 2023 21:02
Re: Debug backtest avant passage en prod
il y'a bien des "hackers" qui suivent des tutos avec le package tout prêt tout codé...
y'a plus qu'à...
y'a plus qu'à...
-
trappiste73
- Membre du Conseil Jedi
- Messages : 5208
- Enregistré le : 08 déc. 2016 11:38
Re: Debug backtest avant passage en prod
Oui mais le trading, ce n'est pas aussi simple que de copier une technique ou un code et hop de gagner de l'argent ... 
-
nuts
- Membre du Conseil Jedi
- Messages : 15618
- Enregistré le : 06 juil. 2023 21:02
-
nuts
- Membre du Conseil Jedi
- Messages : 15618
- Enregistré le : 06 juil. 2023 21:02
