You can subscribe to this list here.
| 2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(32) |
Oct
(144) |
Nov
(14) |
Dec
(44) |
| 2002 |
Jan
(16) |
Feb
|
Mar
|
Apr
|
May
|
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
(65) |
Nov
(4) |
Dec
(30) |
| 2003 |
Jan
(84) |
Feb
(101) |
Mar
(58) |
Apr
(30) |
May
(138) |
Jun
(336) |
Jul
(36) |
Aug
(12) |
Sep
(8) |
Oct
(4) |
Nov
(12) |
Dec
(12) |
| 2004 |
Jan
(186) |
Feb
(274) |
Mar
(248) |
Apr
(18) |
May
(104) |
Jun
(48) |
Jul
(144) |
Aug
(98) |
Sep
(60) |
Oct
(72) |
Nov
(32) |
Dec
(130) |
| 2005 |
Jan
(84) |
Feb
(130) |
Mar
(50) |
Apr
(106) |
May
(240) |
Jun
(154) |
Jul
(66) |
Aug
(82) |
Sep
(36) |
Oct
(18) |
Nov
(14) |
Dec
(4) |
| 2006 |
Jan
(68) |
Feb
(2) |
Mar
(14) |
Apr
(6) |
May
|
Jun
|
Jul
|
Aug
(2) |
Sep
|
Oct
|
Nov
(50) |
Dec
(4) |
| 2007 |
Jan
(14) |
Feb
(42) |
Mar
(70) |
Apr
(30) |
May
(8) |
Jun
|
Jul
(2) |
Aug
(2) |
Sep
|
Oct
(88) |
Nov
(168) |
Dec
(2) |
| 2008 |
Jan
(56) |
Feb
(372) |
Mar
(446) |
Apr
(112) |
May
(144) |
Jun
(94) |
Jul
(208) |
Aug
(90) |
Sep
(26) |
Oct
(10) |
Nov
(2) |
Dec
|
| 2009 |
Jan
|
Feb
(8) |
Mar
|
Apr
(46) |
May
(188) |
Jun
(120) |
Jul
(448) |
Aug
(202) |
Sep
(4) |
Oct
(72) |
Nov
(154) |
Dec
(2) |
| 2010 |
Jan
(58) |
Feb
|
Mar
(2) |
Apr
|
May
|
Jun
|
Jul
(68) |
Aug
(24) |
Sep
|
Oct
|
Nov
|
Dec
(11) |
| 2011 |
Jan
(6) |
Feb
(11) |
Mar
(8) |
Apr
(10) |
May
(4) |
Jun
|
Jul
|
Aug
(8) |
Sep
|
Oct
(3) |
Nov
(2) |
Dec
|
| 2012 |
Jan
|
Feb
(13) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(31) |
Aug
(21) |
Sep
(2) |
Oct
(1) |
Nov
(29) |
Dec
(17) |
| 2013 |
Jan
(2) |
Feb
|
Mar
|
Apr
(25) |
May
(1) |
Jun
|
Jul
|
Aug
(1) |
Sep
(3) |
Oct
(4) |
Nov
(11) |
Dec
|
| 2016 |
Jan
(1) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2018 |
Jan
(3) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2019 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2020 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2023 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
(1) |
Oct
|
Nov
|
Dec
|
|
From: Fabien F. <fa...@de...> - 2001-10-09 15:05:18
|
> > virtual_{buy,sell}_at_{open,high,low,close} et les types
> > "theoric_at_{open,high,low,close}" ...
>
> Ok, je vais les renommer pour la forme.
Voilà, c'est fait et la nouvelle version est déjà dans le cvs.
A+ Fu
|
|
From: Fabien F. <fa...@de...> - 2001-10-09 14:44:11
|
> > * Ajout du module OrderFactory/MaximumSlippage.pm
> > * Ajout de nouveaux type d'ordres : market_open, market_high, market_low et market_close
>
> Bon, ca m'a choqué ces ordres à la base (ils n'existent pas et sont
> quasi impossibles à reproduire).
Bien sûr, ça t'as peut-être choqué, mais tu as tout de suite compris qu'ils avaient un intérêt (cf.MaximumSlippage.pm) :)
> Tu aurais du les nommer en conséquence, les fonctions
> virtual_{buy,sell}_at_{open,high,low,close} et les types
> "theoric_at_{open,high,low,close}" ...
Ok, je vais les renommer pour la forme.
> Tu veux te ruiner le moral ? ;-)
J'veux surtout pas me ruiner en appliquant un système que l'on "croit" gagnant ! :)
A+ Fu
|
|
From: Raphael H. <ra...@ge...> - 2001-10-09 14:22:58
|
Le Tue, Oct 09, 2001 at 10:58:20AM +0200, Fabien Fulhaber écrivait:
> Salut Raphaël,
Salut Fu,
> * Ajout du module OrderFactory/MaximumSlippage.pm
> * Ajout de nouveaux type d'ordres : market_open, market_high, market_low et market_close
Bon, ca m'a choqué ces ordres à la base (ils n'existent pas et sont
quasi impossibles à reproduire). Mais ce qui me gêne le plus, c'est que
tu appelles cela market_{open,high,low,close} alors qu'il s'agit d'ordre
virtuels ...
Tu aurais du les nommer en conséquence, les fonctions
virtual_{buy,sell}_at_{open,high,low,close} et les types
"theoric_at_{open,high,low,close}" ...
> L'objectif de MaximumSlippage, c'est de tester un système dans des
> conditions de marché "extrèmes" : achat au plus haut du jour et vente
> au plus bas du jour.
Tu veux te ruiner le moral ? ;-)
A+
--
Raphaël Hertzog -+- http://strasbourg.linuxfr.org/~raphael/
Le bouche à oreille du Net : http://www.beetell.com
Naviguer sans se fatiguer à chercher : http://www.deenoo.com
Formation Linux et logiciel libre : http://www.logidee.com
|
|
From: Fabien F. <fa...@de...> - 2001-10-09 10:54:07
|
Salut Raphaël,
Je viens de commiter quelques changements :
* Ajout du module OrderFactory/MaximumSlippage.pm
* Ajout de nouveaux type d'ordres : market_open, market_high, market_low et market_close
L'objectif de MaximumSlippage, c'est de tester un système dans des conditions de marché "extrèmes" : achat au plus haut du jour et vente au plus bas du jour.
TFS sur Alcatel avec --order-factory="MarketPrice" :
Analysis of the portfolio :
---------------------------
Performance : 71.1% ( 30.8%) Buy & Hold : -39.2% (-22.1%) () => by year
MaxDrawDown : 21.4% Best performance : 71.1% Worst performance : -14.0%
Net gain : 7110.80 Gross gain : 7922.46
Trades statistics :
Number of gains : 4 Number of losses : 12 Win. ratio : 25.0%
Max consec. win : 2 Max consec. loss : 5
Average gain : 26.69% Average loss : -3.88% Avg. perf : 3.41%
Biggest gain : 71.84% Biggest loss : -9.58% Profit fac : 6.88
Sum of gains : 11702.82 Sum of losses : -4592.02 Risk of ruin : 19.3%
TFS sur Alcatel avec --order-factory="MaximumSlippage" :
Analysis of the portfolio :
---------------------------
Performance : 36.5% ( 16.8%) Buy & Hold : -39.2% (-22.1%) () => by year
MaxDrawDown : 44.3% Best performance : 36.5% Worst performance : -30.7%
Net gain : 3645.71 Gross gain : 4460.96
Trades statistics :
Number of gains : 3 Number of losses : 13 Win. ratio : 18.8%
Max consec. win : 1 Max consec. loss : 6
Average gain : 34.94% Average loss : -5.74% Avg. perf : 1.96%
Biggest gain : 71.35% Biggest loss : -12.95% Profit fac : 6.09
Sum of gains : 11078.89 Sum of losses : -7433.18 Risk of ruin : 46.7%
A+ Fu
|
|
From: Fabien F. <fa...@de...> - 2001-10-08 23:11:40
|
Salut Raphaël,
Je voulais juste te dire que je viens de commiter les changements nécessaires aux calculs du "risk of ruin".
## Global analysis (each position is 10keuros, value of portfolio)
Analysis of the portfolio :
---------------------------
Performance : 71.1% ( 30.8%) Buy & Hold : -39.2% (-22.1%) () => by year
MaxDrawDown : 21.4% Best performance : 71.1% Worst performance : -14.0%
Net gain : 7110.80 Gross gain : 7922.46
Trades statistics :
Number of gains : 4 Number of losses : 12 Win. ratio : 25.0%
Max consec. win : 2 Max consec. loss : 5
Average gain : 26.69% Average loss : -3.88% Avg. perf : 3.41%
Biggest gain : 71.84% Biggest loss : -9.58% Profit fac : 6.88
Sum of gains : 11702.82 Sum of losses : -4592.02 Risk of ruin : 19.3%
^^^^^^^^^^^^^^^^^^^^
Sur Alcatel et avec TFS, il y a 19.3 % de "chance" que la valeur du portefeuille soit inférieure de 40 % de la valeur initiale (10 000 EUR) avant qu'il puisse atteindre 20 000 EUR.
Pour le moment, j'ai "hard-codé" l'objectif à 2 fois la valeur initiale du portefeuille ainsi que le pourcentage de perte (40 %) par rapport à la valeur initial du portfeuille à partir duquel on se considère comme ruiné; mais bien sûr, on peut envisager d'utiliser des variables définies via backtest.pl
## Global analysis (each position is 10keuros, value of portfolio)
Analysis of the portfolio :
---------------------------
Performance : -122.4 ( nan%) Buy & Hold : -15.7% ( -8.2%) () => by year
MaxDrawDown : 142.3% Best performance : 0.0% Worst performance : -142.3
Net gain : -12244.17 Gross gain : -10288.59
Trades statistics :
Number of gains : 5 Number of losses : 34 Win. ratio : 12.8%
Max consec. win : 1 Max consec. loss : 23
Average gain : 5.15% Average loss : -4.44% Avg. perf : nan%
Biggest gain : 19.89% Biggest loss : -11.49% Profit fac : 1.16
Sum of gains : 2696.53 Sum of losses : -14940.70 Risk of ruin : 100.0
^^^^^^^^^^^^^^^^^^^^
Sur Renault et avec TFS, ça à le mérite d'être clair, il y a 100 % de "chance" que la valeur du portefeuille soit inférieure de 40 % à la valeur initiale (10 000 EUR) avant qu'il puisse atteindre l'objectif (20 000 EUR) ! :)
A+ Fu
|
|
From: Raphael H. <ra...@ge...> - 2001-10-08 18:11:02
|
Le Mon, Oct 08, 2001 at 04:31:13PM +0200, Fabien Fulhaber écrivait: > ...vraiment ? Oui, il faudrait que tu puisses voir par toi même ... si tu ne fais pas attention, tu vois des croisements apparemment bien positionnés, mais en fait, il le sont bien pour des modes non-trend, mais une fois que tu es en trend, il y a encore le dernier signal de vente d'avant qui te fait sortir et du coup tu ne profites pas du trend, d'où les performances plutôt médiocres. > Heu... c'est toi qui a le magazine avec les graphiques exemples :) Je sais, mais je pensais que tu avais peut-être un scan ou quelque chose dans ce genre. > C'est bizarre que ce soit si pourri, on devrait faire bien mieux que > TTT puisque SineWave joue les même trends que TTT + les cycles... Oui mais non, on doit pouvoir jouer les deux, mais il faut "ignorer" un ordre de sortie si on est rentré dans un trend et ca nécessite du code spécifique. A+ -- Raphaël Hertzog -+- http://strasbourg.linuxfr.org/~raphael/ Le bouche à oreille du Net : http://www.beetell.com Naviguer sans se fatiguer à chercher : http://www.deenoo.com Formation Linux et logiciel libre : http://www.logidee.com |
|
From: Fabien F. <fa...@de...> - 2001-10-08 16:36:21
|
Hello bugs, > j'ai finalement codé le "Sine", cf Indicators/HilbertSine.pm. Mais > je n'ai pas pu exploité directement l'ensemble des possibilités offertes > par cet indicateur pour une simple raison. Les croisement des deux > courbes ne doivent pas s'interpréter pareil toujours ... ...vraiment ? > croisements à ignorer en effet dans le cas de début de trend, il > faudrait que tu regardes les graphiques exemples pour t'en rendre > compte. Heu... c'est toi qui a le magazine avec les graphiques exemples :) > Je te dis que tel quel, c'est pourri, avec un stop ca s'améliore un peu. > En LongOnly des fois c'est mieux. C'est bizarre que ce soit si pourri, on devrait faire bien mieux que TTT puisque SineWave joue les même trends que TTT + les cycles... A+ Fu |
|
From: Fabien F. <fa...@de...> - 2001-10-08 15:44:13
|
On Mon, Oct 08, 2001 at 02:35:03PM +0200, Fabien Fulhaber wrote: > Aliases::TTS TTS[20,10,1] > Aliases::TTS[] S:TTS #1|CS:Stop:ExtremePrices #2 #3 Bien sûr, il faut aussi ajouter |TF:OneTrade :) A+ Fu |
|
From: Fabien F. <fa...@de...> - 2001-10-08 14:42:05
|
Salut Raphaël, J'ai codé le fameux "Turtle Trading System". =head1 Turtle Trading System (TTS) =head2 Overview The Turtle Trading System is a very simple and very easy to understand. It's an Asymetric Channel Breakout : * Enter long above the highest high of the previous X days and exit with a stop based on the lowest low of the Y previous days with Y < X * Enter short below the lowest low of the previous X days and exit with a stop based on the highest high of the Y previous days with Y < X J'ai ajouté GT/Systems/TTS.pm et GT/CloseStrategy/Stop/ExtremePrices.pm ce qui nous permet d'ajouter dans les alias les 2 lignes suivantes : Aliases::TTS TTS[20,10,1] Aliases::TTS[] S:TTS #1|CS:Stop:ExtremePrices #2 #3 A+ Fu |
|
From: Raphael H. <ra...@ge...> - 2001-10-08 00:09:49
|
Hello Fu, j'ai finalement codé le "Sine", cf Indicators/HilbertSine.pm. Mais je n'ai pas pu exploité directement l'ensemble des possibilités offertes par cet indicateur pour une simple raison. Les croisement des deux courbes ne doivent pas s'interpréter pareil toujours ... il y a des croisements à ignorer en effet dans le cas de début de trend, il faudrait que tu regardes les graphiques exemples pour t'en rendre compte. Ceci dit la base du système est là : Aliases::HilbertSine S:Generic Signals:Generic:CrossOverDown Indicators:HilbertSine/1 Indicators:HilbertSine/2 Signals:Generic:CrossOverUp Indicators:HilbertSine/1 Indicators:HilbertSine/2 | CS:OppositeSignal Je te dis que tel quel, c'est pourri, avec un stop ca s'améliore un peu. En LongOnly des fois c'est mieux. Un truc qui marche pas trop mal, c'est de passer en KeepRunUp comme stratégie de sortie... avec une valeur assez faible. Il faudrait aussi pouvoir filtrer les croisements en fonction de leur endroit, par exemple le CrossOverUp est censé arrivé avec le HilbertSine > 0.7 et le CrossOverDown en dessous de -0.7 (on peut créer un TradeFilter pour cela) ... Bref, encore du boulot autour de ce système. A+ -- Raphaël Hertzog -+- http://strasbourg.linuxfr.org/~raphael/ Le bouche à oreille du Net : http://www.beetell.com Naviguer sans se fatiguer à chercher : http://www.deenoo.com Formation Linux et logiciel libre : http://www.logidee.com |
|
From: Raphael H. <ra...@ge...> - 2001-10-03 13:50:55
|
Le Wed, Oct 03, 2001 at 01:37:43PM +0200, Fabien Fulhaber écrivait: > C'est bien ! Est-ce qu'on pourrait ajouter une option pour sélectionner > les 3/5/10/N meilleurs systèmes de chaque valeur ? Oui, pourquoi pas, marque le dans le TODO. > T'as aussi prévu > dans la série d'outils un script générateur de combinaisons de règles de > trading ? :) J'y avais pensé au début, mais ce n'est pas vraiment utile ... d'une part parce la réflexion humaine élimine beaucoup de "bruit" et fait gagner beaucoup de temps, et deuxième parce que c'est plus compliqué que cela en a l'air. Il faut discrétiser l'ensemble des domaines de valeurs et pour faire cela automatiquement, il faut donner beaucoup d'informations... donc autant le faire soi même. En tout cas, si je marque un truc comme cela dans le TODO, c'est dans la partie "long terme". A+ PS: Tu as aussi noté que j'essaie de conserver le nom des alias pour faciliter la lecture des résultats ... -- Raphaël Hertzog -+- http://strasbourg.linuxfr.org/~raphael/ Le bouche à oreille du Net : http://www.beetell.com Naviguer sans se fatiguer à chercher : http://www.deenoo.com Formation Linux et logiciel libre : http://www.logidee.com |
|
From: Fabien F. <fa...@de...> - 2001-10-03 13:30:04
|
Hello, > j'ai rajouté un nouveau script, select_combination.pl. Il fonctionne comme > analyze_backtest.pl sauf qu'il va choisir le meilleur couple > action <-> système parmi les résultats disponibles. C'est bien ! Est-ce qu'on pourrait ajouter une option pour sélectionner les 3/5/10/N meilleurs systèmes de chaque valeur ? T'as aussi prévu dans la série d'outils un script générateur de combinaisons de règles de trading ? :) A+ Fu |
|
From: Fabien F. <fa...@de...> - 2001-10-03 13:19:43
|
> Et pour analyser les résultats dispos : > ./analyze_backtest.pl data > Ou alors les résulats d'un ensemble particulier de systèmes (set) : > ./analyze_backtest.pl data --set=dmi C'est bien, en plus je vois qu'on a maintenant la performance moyenne annuelle du buy & hold : Global results : 36 gain(s) and 4 loss(es), average 8.0%, avg. buy&hold 11.4% A+ Fu |
|
From: Raphael H. <ra...@ge...> - 2001-10-03 13:19:41
|
Hello Fu, j'ai rajouté un nouveau script, select_combination.pl. Il fonctionne comme analyze_backtest.pl sauf qu'il va choisir le meilleur couple action <-> système parmi les résultats disponibles. Tu peux limiter la recherche de ces couples au sein d'un ensemble de systèmes testés préalablement et enregistrés dans un "set" (cf option --set de backtest_many) en indiquant le --set sur la ligne de commande. Ca donne ce genre de choses : $ ./select_combination.pl data 12007 12017 12019 DMI_FULL_STOP[16,10,-10,8] 12027 12032 12040 12050 DMI_FULL_STOP[16,4,-4,4] 12052 12053 DMI_FULL_STOP[16,8,-8,8] [...] Ca n'affecte aucun système à la valeur s'il n'y a pas un seul système qui a une performance positive ... ou alors si le système ne répond pas aux critères indiqués par --limit-ratio et --limit-performance. Il faut savoir que le système est choisi en fonction du ratio "performance / max_draw_down" [1], plus c'est élevé, mieux c'est. Mais tu peux limiter ta recherche en excluant les systèmes dont ce ratio est inférieur à la valeur que tu indiques avec --limit-ratio. Tu peux aussi exclure les systèmes ayant une performance inférieure à ce que tu indiques avec --limit-performance. $ ./select_combination.pl data --limit-perf 10 --limit-ratio 1 --set dmi [...] A+ [1] A noter cependant que si le max_draw_down est inférieur à 5%, j'utilise un max_draw_down de 5% malgré tout ... -- Raphaël Hertzog -+- http://strasbourg.linuxfr.org/~raphael/ Le bouche à oreille du Net : http://www.beetell.com Naviguer sans se fatiguer à chercher : http://www.deenoo.com Formation Linux et logiciel libre : http://www.logidee.com |
|
From: Raphael H. <rhe...@hr...> - 2001-10-03 07:49:33
|
Hello Fu, backtest_many a changé pour consommer moins de mémoire ... et pour sauvegarder les résultats différement. Maintenant il faut indiquer un répertoire qui va contenir les résultats. Et on peut donner un nom de code aux systèmes testés afin d'extraire ces résultats plus tard. ex : ./backtest_many.pl ../listes/fr/CAC40 ../tmp/dmi.txt --output-dir=data --set=dmi Et ensuite tu as : $ ls data 12007-dmi.bkt [...] index Et pour analyser les résultats dispos : ./analyze_backtest.pl data Ou alors les résulats d'un ensemble particulier de systèmes (set) : ./analyze_backtest.pl data --set=dmi A+ -- Raphaël Hertzog -+- http://strasbourg.linuxfr.org/~raphael/ Le bouche à oreille du Net : http://www.beetell.com Naviguer sans se fatiguer à chercher : http://www.deenoo.com Formation Linux et logiciel libre : http://www.logidee.com |
|
From: Raphael H. <ra...@ge...> - 2001-10-01 18:21:28
|
Le Mon, Oct 01, 2001 at 06:18:05PM +0200, Fabien Fulhaber écrivait: > Raphaël, > > Dis-moi ce que tu penses de ce système (cf. les résultats ci-dessous > d'un test sur le CAC40 en --full) Il est LongOnly et bien moins de temps > dans le marché que le Buy & Hold ! Ah c'est pas mal dans le sens, ou c'est un des premier qui n'a pas beaucoup de pertes ... juste une valeur en perte, mais bon il y a encore des progrès à faire dans la mesure ou le MaxDrawDown est assez important pour la plupart des valeurs et que les performances annuelles ne sont pas encore énormes ... mais c'est bien quand même ! > 16.1% 259.9% [ 50.3%] 13000 > 15.9% 254.8% [ 29.6%] 12122 > 13.3% 62.5% [ 40.8%] 13330 > 13.0% 183.8% [ 36.1%] 13046 > 11.2% 148.6% [ 31.1%] 12533 > 10.0% 126.1% [ 23.6%] 12040 > 9.7% 121.6% [ 25.1%] 12150 > 9.4% 102.4% [ 62.7%] 13110 > 8.7% 104.1% [ 24.0%] 12062 > 7.4% 84.7% [ 32.3%] 13080 > 6.7% 74.5% [ 27.1%] 13033 > 6.4% 52.1% [ 53.6%] 13190 > 6.1% 66.1% [ 30.8%] 12052 > 5.6% 19.1% [ 28.5%] 12019 > 4.5% 30.5% [ 26.1%] 12197 > 4.0% 39.6% [ 33.6%] 12500 > 3.2% 30.6% [ 77.4%] 12592 > 3.0% 29.3% [ 45.0%] 12126 > 2.7% 26.2% [ 46.4%] 12053 > 0.5% 4.7% [ 85.6%] 12132 > 0.0% 0.1% [ 53.0%] 12064 > -5.6% -5.7% [ 34.3%] 12777 > -47.6% -30.5% [ 30.5%] 7919 Toutes ces valeurs ont un maxdrawdown de plus de 23% et 85% de draw down pour 0.5% de gain pour 12132 !! ;) Mais bon, c'est bien, c'est une bonne base ;-) et c'est le premier système qui se débrouille à peu près avec toutes les valeurs ... A+ -- Raphaël Hertzog -+- http://strasbourg.linuxfr.org/~raphael/ Le bouche à oreille du Net : http://www.beetell.com Naviguer sans se fatiguer à chercher : http://www.deenoo.com Formation Linux et logiciel libre : http://www.logidee.com |
|
From: Fabien F. <fa...@de...> - 2001-10-01 18:11:11
|
Raphaël, Dis-moi ce que tu penses de ce système (cf. les résultats ci-dessous d'un test sur le CAC40 en --full) Il est LongOnly et bien moins de temps dans le marché que le Buy & Hold ! Results with constant trade size for system : S:Generic Signals::Trend::HilbertChannelBreakout 0 0 0.35 3 Signals::Trend::HilbertChannelBreakout/2 0 0 0.35 3|CS:OppositeSignal|TF:OneTrade|TF:LongOnly 63.6% 147.5% [ 19.6%] 18453 29.7% 436.0% [ 19.2%] 12970 22.0% 179.4% [ 20.7%] 13065 21.1% 417.5% [ 22.3%] 5490 16.1% 259.9% [ 50.3%] 13000 16.1% 258.2% [ 5.1%] 12148 15.9% 254.8% [ 29.6%] 12122 15.3% 39.1% [ 21.1%] 12057 15.1% 235.7% [ 12.1%] 12101 14.3% 215.3% [ 22.1%] 12050 14.1% 206.9% [ 22.4%] 12558 13.5% 196.3% [ 20.2%] 13021 13.4% 194.3% [ 7.4%] 12017 13.3% 62.5% [ 40.8%] 13330 13.0% 183.8% [ 36.1%] 13046 11.8% 161.6% [ 12.2%] 12027 11.8% 27.6% [ 12.1%] 18420 11.2% 148.6% [ 31.1%] 12533 10.0% 126.1% [ 23.6%] 12040 9.8% 123.6% [ 21.9%] 12032 9.7% 121.6% [ 25.1%] 12150 9.4% 102.4% [ 62.7%] 13110 8.7% 104.1% [ 24.0%] 12062 7.4% 84.7% [ 32.3%] 13080 6.7% 74.5% [ 27.1%] 13033 6.4% 52.1% [ 53.6%] 13190 6.1% 66.1% [ 30.8%] 12052 5.6% 19.1% [ 28.5%] 12019 4.5% 30.5% [ 26.1%] 12197 4.0% 39.6% [ 33.6%] 12500 3.2% 30.6% [ 77.4%] 12592 3.0% 29.3% [ 45.0%] 12126 2.7% 26.2% [ 46.4%] 12053 0.5% 4.7% [ 85.6%] 12132 0.1% 1.0% [ 19.1%] 12007 0.0% 0.1% [ 53.0%] 12064 -2.5% -4.3% [ 20.3%] 12822 -5.6% -5.7% [ 34.3%] 12777 -9.4% -11.1% [ 17.1%] 5730 -47.6% -30.5% [ 30.5%] 7919 Global results : 36 gain(s) and 4 loss(es), average 8.0% A+ Fu |
|
From: Raphael H. <ra...@ge...> - 2001-09-30 19:36:55
|
Le Sun, Sep 30, 2001 at 12:15:13PM +0200, Fabien Fulhaber écrivait: > On Sat, Sep 29, 2001 at 12:20:49AM +0200, Raphael Hertzog wrote: > > Si tu veux des valeurs par défaut pour DMI_FULL tu fais : > > Aliases::DMI_FULL DMI_FULL[16,12,-12] > > Aliases::DMI_FULL[] S:Generic ... | ... #1 .. #2 .. | .. #3 .. > > Je savais pas qu'on pouvait faire ça : c'est parfait ! :) Je l'ai codé juste après ton mail. :-) (mais j'y avais pensé avant déjà) A+ -- Raphaël Hertzog -+- http://strasbourg.linuxfr.org/~raphael/ Le bouche à oreille du Net : http://www.beetell.com Naviguer sans se fatiguer à chercher : http://www.deenoo.com Formation Linux et logiciel libre : http://www.logidee.com |
|
From: Fabien F. <fa...@de...> - 2001-09-30 12:12:36
|
On Sat, Sep 29, 2001 at 12:20:49AM +0200, Raphael Hertzog wrote: > Si tu veux des valeurs par défaut pour DMI_FULL tu fais : > Aliases::DMI_FULL DMI_FULL[16,12,-12] > Aliases::DMI_FULL[] S:Generic ... | ... #1 .. #2 .. | .. #3 .. Je savais pas qu'on pouvait faire ça : c'est parfait ! :) A+ Fu |
|
From: Fabien F. <fa...@de...> - 2001-09-30 11:36:54
|
On Sat, Sep 29, 2001 at 09:55:27AM +0200, Gilles Brancati wrote: > "Je rappelle qu'il faut toujours comparer avec la performance de la valeur > en parallèle ... un système n'a pas d'intérêt s'il fait moins que la > performance d'un "buy&hold" (acheter et conserver)." > > > Je ne suis pas complètement d'accord avec ton affirmation. > Il est difficile d'espèrer qu'un système qui doit être performant sur un panier important de valeurs > et sur des histo longs pour chacune puisse à chaque fois faire mieux que le B&H. > > Je parlerais plus volontiers d'objectifs de rentabilité au regard de la somme investie globalement en portefeuille et du temps d'exposition sur le marché (prise de risque) Oui, il a tout à fait raison, il faut prendre en compte le temps d'exposition sur le marché; tu ne peux pas directement comparer la performance brute d'un système avec le buy & hold. Il faut pouvoir inclure, d'une manière ou d'une autre (je sais que tu m'as dit qu'on n'a pas accès à l'ensemble des trades dans l'analyse), calculer le nombre de jours dans le marché afin de pouvoir réellement comparer le système à la perf. du Buy And Hold. A+ Fu |
|
From: Raphael H. <ra...@ge...> - 2001-09-29 00:27:51
|
Le Fri, Sep 28, 2001 at 11:36:05PM +0200, Fabien Fulhaber écrivait: > > C'est bien ! le seul truc qui manque, cependant, ce serait de pouvoir > > associer des valeurs par défaut à un alias paramétrable :) > > En ajoutant, par exemple |#1=16|#2=12|#3=-12 à la fin de la ligne > Aliases::DMI_FULL[] dans ~/.gt/options Bof, c'est trop compliqué. Si tu veux des valeurs par défaut pour DMI_FULL tu fais : Aliases::DMI_FULL DMI_FULL[16,12,-12] Aliases::DMI_FULL[] S:Generic ... | ... #1 .. #2 .. | .. #3 .. Le seul désavantage c'est que soit tu donnes aucun paramètre, soit tu les donnes tous, mais c'est vraiment pas gênant à mon humble avis. Voilà ;-) A+ -- Raphaël Hertzog -+- http://strasbourg.linuxfr.org/~raphael/ Le bouche à oreille du Net : http://www.beetell.com Naviguer sans se fatiguer à chercher : http://www.deenoo.com Formation Linux et logiciel libre : http://www.logidee.com |
|
From: Fabien F. <fa...@de...> - 2001-09-28 23:36:37
|
On Fri, Sep 28, 2001 at 11:21:37PM +0200, Fabien Fulhaber wrote: > > Dans mon ~/.gt/options : > > Aliases::DMI_FULL[] S:Generic Signals:Generic:CrossOverUp Indicators:DMI/3 #1 Limit:#2 Signals:Generic:CrossOverDown Indicators:DMI/3 #1 Limit:#3 | CS:Generic Signals:Generic:CrossOverDown Indicators:DMI/3 #1 Limit:#2 Signals:Generic:CrossOverUp Indicators:DMI/3 #1 Limit:#3 > > > > Maintenant je peux utiliser des alias de ce genre : DMI_FULL[16,12,-12] > > > > Et tu auras compris que #1 = 16, #2 = 12 et #3 = -12 dans ce cas là. > > Ca va me faciliter la tâche si jamais le gars me répond et me demande de > > tester son système avec plein de paramétrages différents. > > > > $ ./backtest.pl DMI_FULL[16,12,-12] 18453 > > C'est bien ! le seul truc qui manque, cependant, ce serait de pouvoir associer des valeurs par défaut à un alias paramétrable :) En ajoutant, par exemple |#1=16|#2=12|#3=-12 à la fin de la ligne Aliases::DMI_FULL[] dans ~/.gt/options + Fu |
|
From: Fabien F. <fa...@de...> - 2001-09-28 23:16:10
|
> Dans mon ~/.gt/options : > Aliases::DMI_FULL[] S:Generic Signals:Generic:CrossOverUp Indicators:DMI/3 #1 Limit:#2 Signals:Generic:CrossOverDown Indicators:DMI/3 #1 Limit:#3 | CS:Generic Signals:Generic:CrossOverDown Indicators:DMI/3 #1 Limit:#2 Signals:Generic:CrossOverUp Indicators:DMI/3 #1 Limit:#3 > > Maintenant je peux utiliser des alias de ce genre : DMI_FULL[16,12,-12] > > Et tu auras compris que #1 = 16, #2 = 12 et #3 = -12 dans ce cas là. > Ca va me faciliter la tâche si jamais le gars me répond et me demande de > tester son système avec plein de paramétrages différents. > > $ ./backtest.pl DMI_FULL[16,12,-12] 18453 C'est bien ! le seul truc qui manque, cependant, ce serait de pouvoir associer des valeurs par défaut à un alias paramétrable :) +Fu |
|
From: Raphael H. <ra...@ge...> - 2001-09-28 22:55:41
|
Hello Fu, come ca me faisait chier grave avec GT de recopier des alias pour changer quelques paramètres je me suis dit que je pourrais inventer des alias paramétrés ! Et puis voilà, c'est fait : Dans mon ~/.gt/options : Aliases::DMI_FULL[] S:Generic Signals:Generic:CrossOverUp Indicators:DMI/3 #1 Limit:#2 Signals:Generic:CrossOverDown Indicators:DMI/3 #1 Limit:#3 | CS:Generic Signals:Generic:CrossOverDown Indicators:DMI/3 #1 Limit:#2 Signals:Generic:CrossOverUp Indicators:DMI/3 #1 Limit:#3 Maintenant je peux utiliser des alias de ce genre : DMI_FULL[16,12,-12] Et tu auras compris que #1 = 16, #2 = 12 et #3 = -12 dans ce cas là. Ca va me faciliter la tâche si jamais le gars me répond et me demande de tester son système avec plein de paramétrages différents. $ ./backtest.pl DMI_FULL[16,12,-12] 18453 ... Voilà ! -- Raphaël Hertzog -+- http://strasbourg.linuxfr.org/~raphael/ Le bouche à oreille du Net : http://www.beetell.com Naviguer sans se fatiguer à chercher : http://www.deenoo.com Formation Linux et logiciel libre : http://www.logidee.com |
|
From: Raphael H. <ra...@ge...> - 2001-09-28 18:54:41
|
Hello Fu, j'ai commité les changements et corrections. Le nouvel indicateur est dans Indicators/DMI.pm Le système décrit par le gars est : Aliases::DMI S:Generic Signals:Generic:CrossOverUp Indicators:DMI/3 Limit:12 Signals:Generic:CrossOverDown Indicators:DMI/3 Limit:-12 | CS:Generic Signals:Generic:CrossOverDown Indicators:DMI/3 Limit:12 Signals:Generic:CrossOverUp Indicators:DMI/3 Limit:-12 (trivial non ?) Tu noteras que j'ai "implémenté" la possibilité de faire un Cross sur une valeur fixe avec le "Limit:<valeur>" ... Ce système précis marche sur 18453, mais pas sur les autres valeurs ... il faudrait essayer de chercher une meilleur valeur que 12 peut-être. Et on peut essayer d'améliorer en ajoutant des stops et autres gadgets. A+ -- Raphaël Hertzog -+- http://strasbourg.linuxfr.org/~raphael/ Le bouche à oreille du Net : http://www.beetell.com Naviguer sans se fatiguer à chercher : http://www.deenoo.com Formation Linux et logiciel libre : http://www.logidee.com |