max_et_min ![]() (245
msg) L'inconvenient par rapport à
une vrai loupe c'est que l'on par de 0 pour les indicateurs et ce n'est pas forcement
excellent, encore que !!!!! ![]() Max de gains et min de pertes. Logiciel gratuit
d'aide à la programmation de graph at et index sur mon profil
smallcaps90 ![]() (1022
msg) Bonjour à tous, Merci aux amis qui ont déjà noté leur tableau Excel. Je demande à ceux d'entre-vous qui ne l'auraient pas encore fait, de noter leur tableau avant lundi prochain à midi date à laquelle je pense clore l'opération. Dans la foulée j'enverrai le résultat à MLOG. Cordialement.
smallcaps90 ![]() (1022
msg) Bonjour à tous, La consultation est terminée. Un grand merci aux 11 amis qui ont accepté de donner leur avis. Voici le classement final des souhaits d'évolution de GrapheAT Pro qui en ressort. Le nombres de points obtenus sont indiqués entre () : ========================================================================= CLASSEMENT DES EVOLUTIONS SOUHAITEES PAR LES UTILISATEURS DE GRAPHEAT PRO. 1/ ASPECTS GRAPHIQUES : 1-4 (44 pts) Augmenter le nombre des styles de graphes de 16 à 30. 1-8 (43 pts) Augmenter la largeur de l'affichage des indicateurs dans le bandeau supérieur de la fenêtre principale, ce qui éviterait d'être obligé d'ouvrir la fenêtre pour voir la totalité du nom de l'indicateur. 1-9 (42 pts) Accès à la règle directement sous ou à coté de l'indicateur par un bouton (R sur la vue APRES ci-dessous). Ainsi Les fenêtres d'ouverture deviendraient obsolètes. ![]() 1-7 (41 pts) Pouvoir accéder au graphe d'une action alors qu'une fenêtre règle indicateur est ouverte sans refermer celle-ci (actuellement il faut refermer la fenêtre de la règle pour pouvoir le faire). 1-3 (38 pts) Augmenter le nombre de courbes de 12 à 20. 1-1 (35 pts) Augmenter le nombre des niveaux du zoom sur le graphe. Un zoom paramétrable serait le bienvenu. 1-2 (35 pts) Fenêtre d'affichage de GAP (GrapheAT Pro pour faire rapide) accessible par bouton (actuellement il faut faire Règle/Fenêtre d’affichage…). 1-5 (35 pts) Augmenter le nombre de type de flèches : par exemple des flèches avec un petit numéro pour donner le nombre d'indicateurs qui donnent l'ordre. Eventuellement dans un dossier "Flèches" externe au logiciel pour y implanter des logos perso style une micro boule avec un chiffre dedans… 1-11 (35 pts) Disposer d’un type de courbe «Histogramme» grâce auquel il serait possible d’avoir les deux limites calculables. Actuellement l’une de ces deux limites est obligatoirement 0, il serait intéressant qu’elle puisse être différente de 0 si on le souhaite. 1-6 (33 pts) Possibilité d'ouvrir un dossier externe pour incorporer un logo ou un symbole sur le graphique ou les indicateurs. (Dossier pour pouvoir y incorporer les images ou flèches ou autre à notre souhait, ce ne serait simplement qu'un complément de ce qui existe avec le texte, mais il est compliqué de changer les polices pour mettre des logos). 1-10 (32 pts) Pouvoir surligner, mettre en gras ou en couleurs certaines valeurs que l’on choisirait dans la colonne de droite de la fenêtre principale qui contient les cotations. 2- ASPECTS PROGRAMMATION : 2-1 (50 pts) Augmenter le nombre des paramètres P de 5 à 10 dans la fenêtre Propriétés de chaque règle indicateur. 2-9 (50 pts) Créer un programme de backtest pour des prises de position autres que celles de type "stop and reverse". 2-7 (49 pts) Pouvoir récupérer des valeurs de variables calculées dans les statistiques dans un programme indicateur. 2-11(48 pts) Disposer de davantage de niveaux d'imbrication des règles indicateurs : règles dérivées à 3 ou 4 niveaux au lieu de 2 actuellement serait suffisant. 2-3 (47 pts) Pouvoir attribuer par programme des couleurs rouge/vert par exemple aux barcharts suivant leur présence dans un trend haussier/baissier. 2-8 (47 pts) Créer deux fonctions "BUY" et "SELL" utilisables dans les programmes indics sous forme de flèches et directement récupérées dans le prog de backtest. 2-10 (47 pts) Pouvoir transmettre des variables alphanumériques en programmation. 2-2 (46 pts) Pouvoir changer la valeur d'un paramètre (P) directement sur le graphe de l'indic en agissant sur un bouton par exemple sans être obligé de repasser dans la fenêtre du programme de la règle. 2-12 (44 pts) Pouvoir traiter chaque règle indicateur comme une fonction appelable avec ses paramètres propres dans toute autre règle indicateur et ce y compris pour les règles indicateurs basiques livrés avec le logiciel (RSI, MACD...). 2-6 (43 pts) Incorporer une fonction de backtest dans les statistiques. 2-5 (43 pts) Pouvoir prolonger des courbes indic dans la partie droite du graphe au delà de la dernière période de l'historique avec des notations du style indic(-1), indic(-2)...(la taille de la marge doite étant déjà paramétrable dans les options du graphe mais inutilisable en programmation). 2-4 (40 pts) Pouvoir disposer de la représentation en Heiken Ashi. Auxquels j’ajoute un point intéressant proposé par LONGWAY concernant les statistiques (ce point n’a pas été proposé à la notation compte-tenu de sa proposition tardive) : Ajouter un 4ème onglet Année aux onglets Mois/Semaine/Jour dispos dans la fenêtre « Règle Statistique ». 3- ASPECT GESTION DE LA MEMOIRE : (49 pts) Pouvoir charger en mémoire un nombre limité N de lignes des historiques. Cette fonctionnalité serait fondamentale pour accélérer les processus et très utile pour conduire certains backtests avec signaux d’entrée/sortie rétroactifs par exemple. ========================================================================= Je vais envoyer cette liste à Mr Métois de MLOG qui choisira d'implémenter nos propositions suivant ses propres critères de développeur évidemment et, autant qu'il lui sera possible, en respectant au mieux notre classement pour chaque rubrique. Cordialement.
smallcaps90 ![]() (1022
msg) Texte de l'email envoyé
ce jour à Monsieur Métois de MLOG : ========================== Bonjour Monsieur Métois, Suite à votre accord de principe, nous avons lancé une consultation des utilisateurs de GrapheAT Pro sur le forum Pro-AT. Des propositions d'évolutions ont été faites par certains, puis une notation de ces propositions a été réalisée. Je me permets de vous la soumettre en pièce-jointe. Vous y trouverez 3 rubriques : Evolutions Graphiques, Evolutions de le Programmation et Evolution de la Base de données. Dans chaque rubrique les propositions ont été classées (les points obtenus sont indiqués entre parenthèses). Comme vous le constaterez une proposition n'a pas été notée car arrivée tardivement alors que la consultation finale était lancée. Elle m'a semblé intéressante à vous proposer car facile à implémenter. Il s'agirait d'ajouter un onglet "Année" aux onglets "Mois", "Semaine" et "Jour" dans la fenêtre "Règle statistique". A vous de choisir maintenant parmi nos propositions d'évolution celles qui vous paraissent implémentables suivant vos propres critères de développeur évidemment et, si possible, en respectant notre classement pour chaque rubrique autant que vous pourrez le faire. Je vous remercie très sincèrement pour votre acceptation de prendre en compte nos souhaits. J'espère qu'ainsi notre logiciel préféré connaîtra une nouvelle version utile pour ses utilisateurs. Je suis à votre disposition pour tout complément d'informations que vous souhaiteriez obtenir. Bien cordialement. ========================== édité
le : 22-12-2008 12:16:44
Jean4713 ![]() (1947
msg) ![]() je me trompe souvent, et
le doute m\'habite ! ![]()
ftrillat ![]() (105
msg) ![]() ![]() ![]() Super Daniel, bonnes fêtes à tous Fabrice
smallcaps90 ![]() (1022
msg) Bonsoir
à tous, Je suis heureux de vous transmettre le premier email reçu ce soir de MLOG qui propose des solutions à 2 propositions d'évolutions que nous lui avons soumises ce midi : ======================================== Expéditeur : "mlog" <mlog@graphat.com> 22/12/08 18:28 Bonjour, Je vous répond au moins sur un point pour l'instant. Il est facile de modifier le programme de trading system pour qu'il ne fasse que des achats ou que des ventes au lieu du stop and reverse actuel. Je joint le source du programme modifié. Un nouveau paramètre P4 permet de choisir le mode voulu pour les achats/ventes. Il n'y a que 4 ou 5 lignes de rajoutées par rapport à la règle d'origine (c'est celles où le paramètre P4 est utilisé). Pour la fenêtre d'affichage des règles si il n'y a pas de bouton pour l'appeler, il y a un raccourci clavier CTRL+F qui évite d'aller dans le menu. Cordialement. ======================================== Il s'agit pour le premier point du mail de la proposition 2-9 qui est arrivée en tête de nos demandes : 2-9 (50 pts) Créer un programme de backtest pour des prises de position autres que celles de type "stop and reverse". La solution proposée par MLOG consiste en une nouvelle version du programme "Trad Gains 2" qui est une règle indicateur dérivée de "Trading system 2". Un nouveau paramètre P4 apparaît qui permet de sélectionner le mode de prise de position que l'on souhaite : Si P4 = 0 on est en Stop & Reverse Si P4 = 1 on est positionné à l'achat seulement Si P4 = -1 on est positionné à la vente seulement Le nouveau programme est le suivant : //============================================================ //Trad Gains 2 // // Calcul de la courbe des gains du Signal d'Achat/Vente // et des statistiques sur les opérations dans la fenêtre d'Affichage (rapport de backtest) // P1 = 0 : Opération au cours de Cloture du jour du signal // P1 = 1 : Opération au cours d'Ouverture du jour suivant le signal // P1 = 2 : Opération au cours moyen du jour suivant le signal // P2 : Stop de protection à -P2% de perte // P2 = 0 : Pas de stop de protection // P3 = 1 : Affichage de chaque opération d'Achat/Vente dans la fenêtre d'affichage des règles // P4 = 0 : Stop & Reverse // P4 = 1 : Positionné qu'à l'achat // P4 = -1 : Positionné qu'à la vente GAINS = GAINS(1) GAINSREEL = GAINSREEL(1) BUYANDHOLD = BUYANDHOLD(1) Pos = Pos(1) SIGNALSTOP=SIGNAL // Affichage des statistiques sur les opérations Si RANGHISTO=FINHISTO Alors Afficher "" Afficher "======== Statistiques sur les opérations d'Achat/Vente ========" Afficher "" Afficher "Nombre d'opérations : " & Trade & " Gagnantes : " & Win & " (" & ARRONDI(Win/Trade*100,2) & "%)" & " Perdantes : " & Lost & " (" & ARRONDI(Lost/Trade*100,2) & "%)" Afficher "" Afficher "Total des gains : " & ARRONDI(GAINSREEL,2) & " Des opérations gagnantes : " & ARRONDI(SomWin,2) & " Des opérations perdantes : " & ARRONDI(SomLost,2) Afficher "Moyenne des gains : " & ARRONDI(GAINSREEL/Trade,2) & " Des opérations gagnantes : " & ARRONDI(SomWin/Win,2) & " Des opérations perdantes : " & ARRONDI(SomLost/Lost,2) Afficher "" Afficher "Meilleur opération gagnante : " & ARRONDI(MaxWin,2) & " Plus petite opération gagnante : " & ARRONDI(MinWin,2) Afficher "Plus grande opération perdante : " & ARRONDI(MaxLost,2) & " Plus petite opération perdante : " & ARRONDI(MinLost,2) Afficher "" Afficher "Maximum d'opérations gagnantes consécutives : " & ARRONDI(MaxNbConsWin,2) & " Gain total : " & ARRONDI(MaxConsWin,2) Afficher "Maximum d'opérations perdantes consécutives : " & ARRONDI(MaxNbConsLost,2) & " Perte totale : " & ARRONDI(MaxConsLost,2) Afficher "" Afficher "Perte maximale atteinte en intraday (MaxIntraDrawDown) : " & ARRONDI(MaxIntraDrawDown,2) & " (le " & DateMaxIntra$ & ")" Afficher "" Afficher "====================================================" Afficher "" FinSi // Calcul cours de l'opération Si P1=0 Alors CoursOper = Cloture // Opération au cours de Cloture si P1=0 Sinon Si RANGHISTO=FINHISTO Alors Stop Si P1=1 Alors CoursOper = Ouverture(-1) // Opération au cours d'ouverture du jour suivant si P1=1 Sinon CoursOper = (Haut(-1) + Bas(-1) + Cloture(-1)) / 3 // Opération au cours moyen du jour suivant si P1=2 FinSi Si RANGHISTO = 1 Alors // Début historique Cours0 = CoursOper Pos = SIGNALSTOP Si Pos=-1 ET P4=1 Alors Pos=0 Si Pos=1 ET P4=-1 Alors Pos=0 CoursDebOper = CoursOper DateDebOper$ = DateHisto$ Stop FinSi // Stop de protection Si P2>0 ET Pos<>0 ET SIGNALSTOP=0 Alors Si Pos>0 Alors Perte = (CoursDebOper-Bas)/CoursDebOper Sinon Perte = (Haut-CoursDebOper)/CoursDebOper Si Perte >= P2% Alors SIGNALSTOP = -2 * Pos CoursOper = CoursDebOper * (1-Pos*P2%) Si CoursOper>Haut Alors CoursOper = Haut Si CoursOper<Bas Alors CoursOper = Bas Finsi FinSi // Calcul de la courbe des Gains PlusValue = (CoursOper - CoursDebOper) * Pos GAINS = GAINSREEL + PlusValue BUYANDHOLD = CoursOper - Cours0 // Calcul du MaxIntraDrawDown Si Pos<>0 Alors Si Pos>0 Alors Perte = Bas-CoursDebOper Sinon Perte = CoursDebOper-Haut Si Perte>0 Alors Perte = 0 PerteTotale = (GAINSREEL-MaxGains)+Perte Si PerteTotale<MaxIntraDrawDown Alors MaxIntraDrawDown = PerteTotale DateMaxIntra$ = DateHisto$ FinSi FinSi // Calcul des statistiques de fin d'opération Si Pos<>SIGNALSTOP ET SIGNALSTOP<>0 ET Pos<>0 Alors Trade = Trade+1 Si GAINS>MaxGains Alors MaxGains = GAINS Si PlusValue>0 Alors Win = Win+1 SomWin = SomWin+PlusValue Si Win=1 Alors MinWin = PlusValue Si PlusValue<MinWin Alors MinWin = PlusValue Si PlusValue>MaxWin Alors MaxWin = PlusValue ConsWin = ConsWin+PlusValue Si ConsWin>MaxConsWin Alors MaxConsWin = ConsWin NbConsWin = NbConsWin+1 Si NbConsWin>MaxNbConsWin Alors MaxNbConsWin = NbConsWin ConsLost = 0 NbConsLost = 0 Sinon Lost = Lost+1 SomLost = SomLost+PlusValue Si Lost=1 Alors MinLost = PlusValue Si PlusValue>MinLost Alors MinLost = PlusValue Si PlusValue<MaxLost Alors MaxLost = PlusValue ConsLost = ConsLost+PlusValue Si ConsLost<MaxConsLost Alors MaxConsLost = ConsLost NbConsLost = NbConsLost+1 Si NbConsLost>MaxNbConsLost Alors MaxNbConsLost = NbConsLost ConsWin = 0 NbConsWin = 0 FinSi FinSi // Affichage des opérations si P3=1 Si P3=1 ET Pos<>SIGNALSTOP ET SIGNALSTOP<>0 ET Pos<>0 Alors Si Pos>0 Alors Operation$="ACHAT" Sinon Operation$="VENTE" DateFinOper$ = DateHisto$ Afficher Operation$ & " " & DateDebOper$ & " " & CTXT$(CoursDebOper,2) & " " & DateFinOper$ & " " & CTXT$(CoursOper,2) & " " & CTXT$((CoursOper-CoursDebOper)/CoursDebOper*Pos*100,2) & "%" FinSi // Début d'une nouvelle opération (ou seulement fin de la précédente) Si Pos<>SIGNALSTOP ET SIGNALSTOP<>0 Alors GAINSREEL = GAINS Si SIGNALSTOP=-1 ET P4=1 Alors SIGNALSTOP=-2 Si SIGNALSTOP=1 ET P4=-1 Alors SIGNALSTOP=2 Si ABSOLU(SIGNALSTOP)=1 ALors // Début d'une nouvelle opération Pos = SIGNALSTOP CoursDebOper = CoursOper DateDebOper$ = DateHisto$ Sinon Pos = 0 // Arrêt de l'opération à cause d'un stop loss FinSi Finsi //============================================================ L'autre demande concerne le point 1-2 (arrivé en 7ème position dans notre enquête). Il concerne l'accès à la fenêtre d'affichage : 1-2 (35 pts) Fenêtre d'affichage de GAP (GrapheAT Pro pour faire rapide) accessible par bouton (actuellement il faut faire Règle/Fenêtre d’affichage…). SOLUTION : Le raccourci CTRL+F comme indiqué dans le mail de ce soir permet donc d'afficher cette fenêtre sans passer par le menu "Règle/Fenêtre d'affichage...". Ce raccourci est déjà cité dans l'aide (paragraphe : Backtest avec la règle Trading System 2) à laquelle on accède lorsqu'on se trouve dans la fenêtre "Règle Indicateur". Nous ne l'avions pas pris en compte... Voilà, le processus d'évolution est lancé, nous ne pouvons que nous en réjouir. Je remercie très sincèrement Monsieur Métois de MLOG pour sa grande réactivité. Cordialement. édité
le : 23-12-2008 08:57:47
![]() alexandre' - ![]() (203
msg) Bonnes fêtes à toutes
et à tous. Merci Daniel ![]()
bamal ![]() (50
msg) Bonnes fêtes de fin d'année,et
encore bravo pour le travail founit par tous les participants de cette rubrique
et plus particulierement a Smallcaps90 et Max-Min
sphinx ![]() (91
msg) bonnes fêtes de fin d'année
à tous et merci pour tout cordialement Sphinx
fredifly ![]() (54
msg) bonnes fêtes de fin d'année
à vous tous et un grand merci aux animateurs et programmateurs de la file
GAP. Fredifly.
maxakool' - maxakool - maxakool' - ![]() (11 msg)
maxakool' style='text-decoration:none;'>PROFIL NON RENSEIGNÉ Si on écrit : M1=Moyenne(Cloture,7) M1=Moyenne(M1,7) M2=Moyenne(Moyenne(Cloture,7),7) Est ce que M1 donne le même résultat que M2 ?
fredifly ![]() (54
msg) Citation de : maxakool (au 26-12-2008 09:20:50) Bonjour maxakool et bienvenue sur la file, Comme tu as écris ton programme M1 n'est pas egal à M2. Voici ce que donne ton programme: ![]() Comme tu peux le constater la valeur M1 diffère de M2. Tu as 2 calcul différent pour une même valeur qui est en l'occurence M1. C'est à dire que M1 est égal à ça : M1=Moyenne(Cloture,7) et aussi à ça : M1=Moyenne(M1,7) Il faut donc que tu dissocie le nom attribue à ces 2 calculs. Par exemple M11 pour le premier et M1 pour le second calcul. Par ailleurs le premier calcul (M11=Moyenne(Cloture,7)) sert de base au calcul de la seconde condition (M1=Moyenne(M1,7)) Si tu ne veux pas que le premier calcul apparaisse sur le graph il faut que historise le calcul en mettant (0) juste après M11. Voici en d'autre terme ce que donnerais ton programme pour que M1 soit égal à M2: M11(0)=Moyenne(Cloture,7) M1=Moyenne(M11(0),7) M2=Moyenne(Moyenne(Cloture,7),7) Et voici les valeurs obtenues : ![]() Comme tu peux le constater M1 est egal à M2 dans ces conditions. J'espère avoir répondu à ta question. Fredifly. édité
le : 26-12-2008 11:57:37
Jeff_X ![]() (18
msg) Jeff_X' style='text-decoration:none;'>PROFIL NON RENSEIGNÉ Il manque cruellement une variable
dite "composite" dans GraphAT Pro. Il s'agit d'une variable (indice) qui serait créée à l'aide du rapport entre 2 autres variables. Exemple: - l'indice CRB divisé par l'indice T-Bond - Résultat; création d'un nouvel indice "CRB/T-Bond". Ceci existe depuis longtemps dans Metastock. On peut faire de même aussi lorsqu'on utilise StockCharts. J'avais envoyé un email à Mlog à ce sujet, mais il n'a pas du en tenir compte !!
135
|