Sujet : Graphe AT PRo : programmation
Premiere Page   Page précédente   Page : sur 171   Page suivante   Derniere Page
Page N°  61   Sommaire des pages établi par LONGWAY et adapté par max-et-min   
Ce sommaire ne couvre pas la totalité des pages

sphinx

(91 msg)

Plusieurs jours Plus de 3 ans Technique et fondamentale Actions françaises

#407733Posté le : le 07-09-2005 21:03:37 sphinx - sphinx -      
====================================================

j'ai une demande si c'est possible: grapheAT donne la possibilité d'avoir des moyennes mobiles simples, expo, et pondérées. On défini ce qu'on veut, on choisit la couleur et on peut même faire en sorte que pour chaque action on utilise les moyennes propres à l'action. Or quand on affiche le graphe avec les 6 moyennes (voire plus) je ne me rappelle plus des caractéristiques de celles ci. Ne serait pas possible d'avoir sur la ligne de la MM un petit texte du genre MMA 7 par exemple ou MME 20. Chose qui pourrait se faire automatiquement?
  Retourner en haut de page

lego

(21 msg)

lego' style='text-decoration:none;'>PROFIL NON RENSEIGNÉ

#407773Posté le : le 07-09-2005 22:30:08 lego - lego -      
====================================================

Bonjour Sphinx,

je pense pas que je dit une betise en te répondant, avec la version actuelle de Graphe at on ne peut pas afficher du texte directement sur le graphe
je crois que j'aie lu dans la file Smallcap avait répondu à cette question
A confirmer pas un ancien du forum.

Bonsoir
  Retourner en haut de page

smallcaps90

(1022 msg)

Plusieurs semaines Plus de 3 ans Uniquement technique Actions françaises

#407785Posté le : le 07-09-2005 23:55:18    
====================================================

Bonsoir Michka,

Merci pour ta réponse.
Pour résoudre le pb des flèches de couleurs qui se superposent je te propose une solution que j'emploie pour repèrer certains cours à l'aide d'indicateurs qui interviennent simultanément.
Pour ce faire j'emploie des courbes de style "POINTS" dont je règle les épaisseurs (et les couleurs) sur différentes valeurs. Je place ces points sur et/ou sous les cours selon les valeurs des indicateurs comme sur l'exemple ci-dessous à titre d'illustration :


L'avantage du style "POINTS" est que l'on peut les placer à une distance des cours que l'on souhaite contrairement au style "FLECHES" dont seul GrapheAT Pro contrôle la position sur le graphe des cours (pas sur les indicateurs).

Si on examine les possibilités offertes par le style "POINTS", on constate en effet qu'il est possible d'avoir plusieurs symboles en choisissant les "bonnes " épaisseurs :

Les épaisseurs 1, 3 et 4 semblent les plus lisibles et les plus différenciées.

Imaginons maintenant que l'on souhaite placer des points sous et sur les cours.
On peut utiliser pour celà les expressions suivantes qui calculent, à chaque période considérée, les valeurs de ordonnées de ces points :

POINTS_BAS = BAS - ALPHA
POINTS_HAUTS = HAUT + ALPHA
Avec ALPHA = MOYENNE((HAUT-BAS)/K, 100) par exemple.

On peut alors faire varier ces positions en "jouant" sur la valeur de K.
J'utilise K=2 et K=5 sur le graphe ci-dessus. On peut aussi choisir K=1.

Il est même possible, sans oublier les couleurs, si les variantes des points ne suffisent pas pour représenter nos résultats d'utiliser aussi le style "FLECHES". En effet des points posés avec K=1 coexistent sans pb avec des flèches...
Je pense que cela doit suffire pour repèrer les différents types de gaps qui peuvent se produire simultanément, il y en a trois au plus si je me souviens bien.

Tu souhaiterais également dis-tu : "donner une info écrite plutôt que des couleurs". C'est tout à fait possible avec GrapheAT Pro en utilisant la fenêtre d'Affichage et la fonction AFFICHER dans le programme. J'ai utilisé cette technique dans mon post sur l'anticipation des croisements de 2 moyennes mobiles récemment.

Pour la règle statistique, c'est plus complexe vu la façon dont cela fonctionne dans GrapheAT Pro. Il faut encore approfondir, on parviendra bien à quelque chose de valable...

Reste la détermination de la tendance. C'est également une difficulté réelle vu que la plupart des indicateurs disponibles en donnent l'existence une fois qu'elle est confirmée. Peut-être faudrait-il s'orienter du côté des oscillateurs/indicateurs du type "dérivée" qui possèdent peu de lag plutôt qu'utiliser de simples moyennes?

J'oublais les figures chartistes dont tu es intéressé par leur reconnaissance.
Il faut planter un cahier des charges pour cela...

Cordialement.

  Retourner en haut de page

xave06

(2329 msg)

Plusieurs semaines Plus de 3 ans Technique et fondamentale Actions françaises

#408104Posté le : le 08-09-2005 20:38:21 xave06 - xave06 -      
====================================================

A tous les programmeurs de génie sur ce site
j'ai créé sans problème des indicateurs perso utilisant des variables historisées sur graphat pro;là où ça coince est si j'essaie d'utiliser ces scripts dans des règles statistiques où il semble que l'historisation des variables pose un problème.
Si vous avez une solution je suis preneur
merci par avance
xavier
Tout trader peut une fois dans sa vie acheter au plus bas et vendre au plus haut,corollairement la regle ne dit pas combien de fois le trader achetera au plus haut pour vendre au plus bas...(extrait du livre de John Bollinger)

  Retourner en haut de page

michka

(26 msg)

michka' style='text-decoration:none;'>PROFIL NON RENSEIGNÉ

#408115Posté le : le 08-09-2005 21:01:16 michka - michka -      
====================================================

Bonsoir Smallcaps,

Merci pour toutes tes réponses, Je regarde pour modifier le programme.

Cordialement

  Retourner en haut de page

smallcaps90

(1022 msg)

Plusieurs semaines Plus de 3 ans Uniquement technique Actions françaises

#408135Posté le : le 08-09-2005 23:33:13    
====================================================

Bonsoir Lego,

Ta règle statistique est bien utile pour prolonger l'étude que j'avais postée sur la recherche de l'anticipation des croisements éventuels de 2 moyennes mobiles arithmétiques.
Je rappelle qu'il est possible d'utiliser la même démarche avec des moyennes exponentielles ou encore des DEMA. Les formules à employer sont sur le forum.

Merci pour ta contribution.


Bonsoir Xavier,

Normalement, comme l'indique la doc de Mlog, une règle statistique s'applique au jour de l'historique indiqué dans la case "date" située en haut de la fenêtre "Statistiques". Il faut évidemment que les actions du groupe sur lequel on souhaite appliquer la statistique soient définies ce jour là (çà ne marche pas le samedi, ni le dimanche...).
D'autre part, il n'est pas interdit d'utiliser les valeurs de ces actions sur des périodes antérieures dans les calculs et comparaisons qu'effectue le programme statistique, autrement dit il est possible d'y utiliser des variables historisées.
Afin de contourner la limitation due au jour unique où la stat s'applique, on peut inclure une boucle POUR qui balaiera le nombre de périodes antérieures que l'on souhaite et ainsi de pouvoir connaître les autres périodes où la stat s'appliquait, nous l'avons déjà fait ici même.

Peut-être pourrais-tu nous faire part plus précisément des problèmes que tu rencontres?

Ceci dit Xavier, le terme de "génie" que tu emploies me paraît être largement disproportionné pour qualifier les nombreux intervenants de cette file.
Restons modestes......

édité le : 08-09-2005 23:40:15 
  Retourner en haut de page

xave06

(2329 msg)

Plusieurs semaines Plus de 3 ans Technique et fondamentale Actions françaises

#408183Posté le : le 09-09-2005 08:52:13 xave06 - xave06 -      
====================================================

bonjour smallcaps90
quand je dis "génie" il faut bien sûr relativiser,la référence en la matière étant mon(très faible) niveau en programmation,un bambin de 3 ans jouant avec la télécommande du téléviseur familial fait déjà figure de "cador" comparé à moi...........
Plus sérieusement pour ce qui est de mon problème je vais essayer d'être plus clair;j'ai défini des indicateurs perso fonctionnant avec des variables historisées dans leur calcul(du genre oscillateur indic(0)/indic(N)) et qui fonctionnent très bien sur mes graphiques.Quand je crée une règle statistique en incluant leur script dans la règle,quand je lance un contrôle le soft répond qu'il n'y a pas d'erreur,puis si je lance l'éxecution le soft ne détecte aucune valeur remplissant les conditions alors que graphiquement certaines valeurs remplissent les conditions.
Puis si je retire de la règle statistique mes scripts "historisés" en ne laissant que les scripts portant sur le jour de la détection tout se passe bien.
Alors comment faire pour qu'un indic utilisant des variables historisées dans son script puisse être utilisé??
xavier
Tout trader peut une fois dans sa vie acheter au plus bas et vendre au plus haut,corollairement la regle ne dit pas combien de fois le trader achetera au plus haut pour vendre au plus bas...(extrait du livre de John Bollinger)

  Retourner en haut de page

smallcaps90

(1022 msg)

Plusieurs semaines Plus de 3 ans Uniquement technique Actions françaises

#408204Posté le : le 09-09-2005 09:56:34    
====================================================

Re Xavier,

J'avais bien compris ton problème. Mais as-tu vraiment besoin d'inclure la totalité de ta règle indicateur qui fonctionne bien dans ta règle statistique?
Il suffit pour faire le scan d'un groupe de faire référence dans la stat concernée aux variables utiles (historisées ou non) sous la forme classique : NOM INDICATEUR. NOM VARIABLE , associées vraisemblement à des tests de validation de conditions d'achat ou de vente ou de simple sélection.

Tiens je te propose de regarder cet exemple qui me semble plus simple, même pour un béotien en informatique, que la manipulation de la télécommande de ton téléviseur familial (....
Il s'agit de la stat d'achat/vente sur le CCI qui utilise la règle indic RCCI livrée par Mlog.
Une règle indicateur de nom RCCI calcule pour chaque chaque période le CCI (nommé aussi RCCI ici) .
La règle stat "Stat RCCI" utilise cette variable unique RCCI comme suit :

----------------------------------------------
//Statistique d'achat/vente sur le CCI
//On utilise la règle RCCI, pas l'indicateur CCI de GrapheAT
//

Colonne1 = RCCI.RCCI(1)
Colonne2 = RCCI.RCCI

Si CROISE(RCCI.RCCI,100)>0 Alors SelectionAchat

Si CROISE(RCCI.RCCI,-100)<0 Alors SelectionVente
----------------------------------------------

On ne fait qu'afficher la valeur précédente (donc historisée)du CCI en Colonne1 sous la forme RCCI.RCCI(1), c'est à dire : NOM INDICATEUR. NOM VARIABLE.
Puis en Colonne2, on affiche la valeur actuelle RCCI.RCCI.

Ensuite deux tests de croisements avec les lignes horizontales 100 et -100 de la valeur actuelle permettent de sélectionner, éventuellement, l'action scannée à l'achat ou à la vente.

On aurait très bien pu aussi, si cela avait été nécessaire, faire des calculs incluant valeur actuelle et valeur précédente...

Je suppose que le pb que tu rencontres peut venir du fait que tu n'utilises peut-être pas la bonne notation pour récupérer tes variables dans la stat...NOM INDICATEUR.NOM VARIABLE...
Cordialement.



  Retourner en haut de page

xave06

(2329 msg)

Plusieurs semaines Plus de 3 ans Technique et fondamentale Actions françaises

#408215Posté le : le 09-09-2005 10:20:14 xave06 - xave06 -      
====================================================

smallcaps90,
mon problème vient quand sur des critères déjà existants et opérationnels dans la règle je veux ajouter un test sur le bandwidth calculé ainsi:
bandwidth(0)=((uboll-lboll)/mboll)*100
test(0)=bandwidth(0)/bandwidth(10)
et que j'inclue un test du style
SI test(0)<test(1) ALORS SELECTIONACHAT
si tu peux me dire comment faire pour que ce put.. de test apparemment simple marche dans la règle statistique je t'en serais reconnaissant.
xavier
édité le : 09-09-2005 10:22:04Tout trader peut une fois dans sa vie acheter au plus bas et vendre au plus haut,corollairement la regle ne dit pas combien de fois le trader achetera au plus haut pour vendre au plus bas...(extrait du livre de John Bollinger)

  Retourner en haut de page

smallcaps90

(1022 msg)

Plusieurs semaines Plus de 3 ans Uniquement technique Actions françaises

#408262Posté le : le 09-09-2005 11:11:24    
====================================================

Re Xavier,

Ok çà marche.
J'ai créé une règle indic TEST_XAVIER qui reprend ton petit mprogramme :
----------------------
//Test pour Xavier le 09/09/2005
//

BANDWIDTH(0)=100*((UBOLL-LBOLL)/MBOLL)
TEST(0)=BANDWIDTH(0)/BANDWIDTH(10)

SI TEST(0)<TEST(1) ALORS ACHAT=1
---------------------
pour visualiser les variables TEST et ACHAT.

Voici ce que cela donnait hier avec Schneider :


J'ai créé une stat qui reprend la variable TEST dans la comparaison que tu fais et qui scanne le CAC 40 :
--------------------
//Stat de test pour Xavier
//le 09/09/2005
//

SI TEST_XAVIER.TEST(0)<TEST_XAVIER.TEST(1)
ALORS
SELECTIONACHAT
FINSI
--------------------

Et voici ce que cela donnait hier avec le CAC40 :

Groupe : cac40 Date : 08/09/2005
Sélection des actions dont TEST(0)<TEST(1)

ACHAT Accor
ACHAT AGF
ACHAT Air Liquide
ACHAT Alcatel
ACHAT Arcelor
ACHAT AXA
ACHAT Bnp Paribas
ACHAT Carrefour
ACHAT Casino Guichard
ACHAT Credit agricole
ACHAT Dexia
ACHAT France Telecom
ACHAT Lagardere
ACHAT Michelin
ACHAT Peugeot
ACHAT Pinault Printemps Redoute
ACHAT Publicis Group
ACHAT Renault
ACHAT Saint Gobain
ACHAT Schneider
ACHAT Societe Generale
ACHAT Suez
ACHAT TF1
ACHAT Thomson
ACHAT Vivendi universal

Comme tu le vois j'ai récupéré dans la règle stat la variable TEST calculée par la règle indic sous la forme :
TEST_XAVIER.TEST(0) ou encore TEST_XAVIER.TEST(1).
Elle est bien historisée...

Cordialement.
  Retourner en haut de page

xave06

(2329 msg)

Plusieurs semaines Plus de 3 ans Technique et fondamentale Actions françaises

#408268Posté le : le 09-09-2005 11:22:23 xave06 - xave06 -      
====================================================

smallcaps90,
une fois de plus tu m'as "ébouriffé".........,et de plus ton explication semble claire,même à moi........ la télécommande de la télé familiale n'a plus qu'à bien se tenir
Je te remercie et il me tarde de rentrer ce soir à la maison pour récupérer ton script et le faire tourner sur mon soft.
cordialement
xavier
Tout trader peut une fois dans sa vie acheter au plus bas et vendre au plus haut,corollairement la regle ne dit pas combien de fois le trader achetera au plus haut pour vendre au plus bas...(extrait du livre de John Bollinger)

  Retourner en haut de page

smallcaps90

(1022 msg)

Plusieurs semaines Plus de 3 ans Uniquement technique Actions françaises

#408275Posté le : le 09-09-2005 11:46:41    
====================================================

Allons allons Xavier...il n'y a pas de vent aujourd'hui...donc pas de quoi se faire ébouriffer pour si peu! Laisse donc la télécommande de ta télé à ton gamin...nos gosses sont bien plus doués que nous dans ce domaine là!...

Une dernière chose, sérieuse : vérifie que la date située en haut de la fenêtre dans laquelle tu lances l'exécution de la stat correspond bien à des cotations qui existent dans ta base de données.
Bonne fin de semaine.
  Retourner en haut de page

smallcaps90

(1022 msg)

Plusieurs semaines Plus de 3 ans Uniquement technique Actions françaises

#408300Posté le : le 09-09-2005 14:36:55    
====================================================

Bonjour Chctrader,

Comme promis l'autre jour, je poste les programmes indicateurs de recherche des divergences positives et négatives entre les cours et le Répulse d'Anaphrais qui t'intéressent. J'ai repris la même approche que pour la détermination des divergences cours/MACD, RSI, STOCH postée plus haut dans cette file.
Les stats correspondantes viendront un peu plus tard...

DIVERGENCES POSITIVES :
Il faut respecter la structure suivante pour cela fonctionne sans pb :

Programme de recherche :
------------------------------------
//DIV_POS_REPULSE
//

//RECHERCHER LA DIVERGENCE POSITIVE EVENTUELLE
//LA PLUS RECENTE ENTRE LES COURS ET LE REPULSE
//DANS LES LIMITES DEFINIES PAR P1, P2, P3, P4 et P5
//V 1.0 du 07/09/2005
//

//----------------------------------------------
//DEFINITION DES ROLES DES PARAMETRES P1 à P5 :
//
//LA DIVERGENCE POTENTIELLE EVENTUELLE DEVRA
//SE TROUVER P4 PERIODES AU MOINS AVANT LA FINHISTO.
//
//LE 1ER CREUX SUR LE REPULSE DEVRA SE TROUVER
//DANS LES P1 PERIODES PRECEDANT FINHISTO-P4.
//
//LE 2EME CREUX SUR LE REPULSE DEVRA SE TROUVER
//DANS LES P2 PERIODES PRECEDANT LE 1ER.
//
//CHAQUE CREUX SUR LES COURS POURRA SE TROUVER
//DANS LES P3 PERIODES PRECEDANT LES SOMMETS
//CORRESPONDANTS SUR LE REPULSE.
//
//P5=0 ACCEPTE LES DIVERGENCES DONT LES DROITES
//PRESENTENT DES INTERSECTIONS AVEC LES COURS
//ET/OU LE REPULSE.
//P5=1 NE LES ACCEPTE PAS.
//----------------------------------------------

//Initialisations
//
INDIC=REPULSE_NJ.REPULSE_NJ
MINI=1000


SI RANGHISTO=FINHISTO-P4 //On explore jusqu'à P4 périodes avant la FINHISTO
ALORS

//Chercher un 1er creux (CI1) et sa date (DATE_CI1) sur l'indicateur
//
I=0
CI1=MINI
TANTQUE I<=P1 FAIRE
SI INDIC(I+1)<0
ALORS
SI INDIC(I+2)>INDIC(I+1) ET INDIC(I+1)<INDIC(I)
ALORS
SI INDIC(I+1)<=CI1
ALORS
CI1=INDIC(I+1)
DATE_CI1=FINHISTO-P4-(I+1)
D1=I+1
FINSI
FINSI
FINSI
I=I+1
FINTANTQUE

SI D1=0
ALORS
AFFICHER "=========PAS DE 1ER CREUX RECENT SUR LE REPULSE========"
AFFICHER "================MODIFIEZ P1 ET/OU P4 =================="
STOP
FINSI

//Chercher un 1er creux (CC1) et sa date (DATE_CC1)
//sur les cours avec une tolérance de P3 périodes avant
//le 1er creux trouvé sur l'indicateur
//
CC1=BAS(FINHISTO-P4-DATE_CI1)
DATE_CC1=DATE_CI1
K=FINHISTO-P4-DATE_CI1+1
TANTQUE K<=FINHISTO-P4-DATE_CI1+P3 FAIRE
SI BAS(K)<=CC1
ALORS
CC1=BAS(K)
DATE_CC1=FINHISTO-K-P4
FINSI
K=K+1
FINTANTQUE

//Chercher un 2ème creux (CI2) plus ancien
//et sa date (DATE_CI2) sur l'indicateur
//
J=D1+1
CI2=CI1
TANTQUE J<=P2+D1 FAIRE
SI INDIC(J+2)>INDIC(J+1) ET INDIC(J+1)<INDIC(J)
ALORS
SI INDIC(J+1)<=CI2
ALORS
CI2=INDIC(J+1)
DATE_CI2=FINHISTO-P4-(J+1)
D2=1
FINSI
FINSI

SI D2=1 //CI2 est un creux possible sur l'indicateur
ALORS

SI P5=1 //On veut que la droite CI1--CI2 reste sous l'indicateur
ALORS
PENTE_I=(CI1-CI2)/(DATE_CI1-DATE_CI2)
POUR (FINHISTO-P4-DATE_CI2+1) COURS
POINT_I(0)= PENTE_I*(RANGPOUR-1)+CI2
SI POINT_I>INDIC
ALORS
N=1
BREAK
FINSI
SI RANGPOUR>(DATE_CI1-DATE_CI2) ALORS BREAK
FINPOUR
FINSI

SI N=0 //Droite de divergence CI1--CI2 correcte
ALORS
//Chercher le 2ème creux (CC2) et sa date (DATE_CC2)
//sur les cours avec une tolérance de P3 périodes
//avant le 2ème creux sur l'indicateur
//
CC2=BAS(FINHISTO-P4-DATE_CI2)
DATE_CC2=DATE_CI2
K=FINHISTO-P4-DATE_CI2+1
TANTQUE K<FINHISTO-P4-DATE_CI2+P3 FAIRE
SI BAS(K)<=CC2
ALORS
CC2=BAS(K)
DATE_CC2=FINHISTO-K-P4
FINSI
K=K+1
FINTANTQUE

SI CC2>=CC1 //CC2 est un creux possible sur les cours
ALORS

SI P5=1 //On veut que la droite CC1--CC2 reste sous les cours
ALORS
PENTE_C=(CC1-CC2)/(DATE_CC1-DATE_CC2)
POUR (FINHISTO-P4-DATE_CC2+1) COURS
POINT_C(0)=PENTE_C*(RANGPOUR-1)+CC2
SI POINT_C>BAS
ALORS
M=1
BREAK
FINSI
SI RANGPOUR>(DATE_CC1-DATE_CC2) ALORS BREAK
FINPOUR
FINSI

SI M=0 //Droite de divergence CC1--CC2 correcte
ALORS
J=P2+D1+1
SINON
D2=0
FINSI
SINON
D2=0
FINSI
SINON
D2=0
FINSI
FINSI
N=0
M=0
J=J+1
FINTANTQUE

SI D1<>0 ET D2=0 OU CC2=0
ALORS
AFFICHER "============PAS DE DIVERGENCE POTENTIELLE============="
AFFICHER "======AVEC LES VALEURS ACTUELLES DES PARAMETRES======="
AFFICHER "=MAIS IL Y A UN 1ER CREUX SUR LE REPULSE ET LES COURS="
AFFICHER "==============MODIFIEZ EVENTUELLEMENT P2=============="
STOP
FINSI

//Déterminer les points des segments de la divergence potentielle trouvée
//s'ils peuvent être tracés sur l'indicateur et sur les cours
//
SI DATE_CC1-DATE_CC2<2 //La valeur 2 peut être modifiée
ALORS
AFFICHER "=============DIVERGENCE POTENTIELLE============"
AFFICHER "==========TROP PETITE POUR ETRE TRACEE========="
AFFICHER "===========MODIFIEZ EVENTUELLEMENT P4=========="
SINON
PENTE_I=(CI1-CI2)/(DATE_CI1-DATE_CI2)
POUR (FINHISTO-P4-DATE_CI2+1) COURS
SEG_P_I(0)=PENTE_I*(RANGPOUR-1)+CI2
SI RANGPOUR>(DATE_CI1-DATE_CI2) ALORS BREAK
FINPOUR

PENTE_C=(CC1-CC2)/(DATE_CC1-DATE_CC2)
POUR (FINHISTO-P4-DATE_CC2+1) COURS
SEG_P_C(0)=PENTE_C*(RANGPOUR-1)+CC2
SI RANGPOUR>(DATE_CC1-DATE_CC2) ALORS BREAK
FINPOUR
FINSI

FINSI

------------------------------------


Programme de tracé de la divergence sur les cours :
------------------------------------
//DIV_POS_REP_COURS
//

//TRACER LE SEGMENT DE LA DIVERGENCE POSITIVE
//SUR LES COURS
//

SEG_P_COURS=SEG_P_C

------------------------------------


Un exemple :



DIVERGENCES NEGATIVES :

Programme de recherche :
------------------------------------

//DIV_NEG_REPULSE
//

//RECHERCHER LA DIVERGENCE NEGATIVE EVENTUELLE
//LA PLUS RECENTE ENTRE LES COURS ET LE REPULSE
//DANS LES LIMITES DEFINIES PAR P1, P2, P3 et P4
//V3.2 du 08/09/2004
//

//----------------------------------------------
//PARAMETRES P1 à P5 :
//
//LA DIVERGENCE POTENTIELLE EVENTUELLE DEVRA
//SE TROUVER P4 PERIODES AU MOINS AVANT LA FINHISTO.
//
//LE 1ER SOMMET SUR LE REPULSE DEVRA SE TROUVER
//DANS LES P1 PERIODES PRECEDANT FINHISTO-P4.
//
//LE 2EME SOMMET SUR LE REPULSE DEVRA SE TROUVER
//DANS LES P2 PERIODES PRECEDANT LE 1ER.
//
//CHAQUE SOMMET SUR LES COURS POURRA SE TROUVER
//DANS LES P3 PERIODES PRECEDANT LES SOMMETS
//CORRESPONDANTS SUR LE REPULSE.
//
//P5=0 ACCEPTE LES DIVERGENCES DONT LES DROITES
//PRESENTENT DES INTERSECTIONS AVEC LES COURS
//ET/OU LE REPULSE.
//P5=1 NE LES ACCEPTE PAS.
//----------------------------------------------

//Initialisations
//
INDIC=REPULSE_NJ.REPULSE_NJ
MAXI=0

SI RANGHISTO=FINHISTO-P4 //On explore jusqu'à P4 périodes avant la FINHISTO
ALORS

//Chercher un 1er sommet (SI1) et sa date (DATE_SI1) sur l'indicateur
//
I=0
SI1=MAXI
TANTQUE I<=P1 FAIRE
SI INDIC(I+1)>0
ALORS
SI INDIC(I+2)<INDIC(I+1) ET INDIC(I+1)>INDIC(I)
ALORS
SI INDIC(I+1)>=SI1
ALORS
SI1=INDIC(I+1)
DATE_SI1=FINHISTO-P4-(I+1)
D1=I+1
FINSI
FINSI
FINSI
I=I+1
FINTANTQUE

SI D1=0
ALORS
AFFICHER "=======PAS DE 1ER SOMMET RECENT SUR LE REPULSE======="
AFFICHER "===============MODIFIEZ P1 ET/OU P4 ================="
STOP
FINSI

//Chercher le 1er sommet (SC1) et sa date (DATE_SC1)
//sur les cours avec une tolérance de P3 périodes
//avant le 1er sommet sur l'indicateur
//
SC1=HAUT(FINHISTO-P4-DATE_SI1)
DATE_SC1=DATE_SI1
K=FINHISTO-P4-DATE_SI1+1
TANTQUE K<=FINHISTO-P4-DATE_SI1+P3 FAIRE
SI HAUT(K)>=SC1
ALORS
SC1=HAUT(K)
DATE_SC1=FINHISTO-K-P4
FINSI
K=K+1
FINTANTQUE

//Chercher un 2ème sommet plus ancien (SI2)
//et sa date (DATE_SI2) sur l'indicateur
//
J=D1+1
SI2=SI1
TANTQUE J<=P2+D1 FAIRE
SI INDIC(J+2)<INDIC(J+1) ET INDIC(J+1)>INDIC(J)
ALORS
SI INDIC(J+1)>=SI2
ALORS
SI2=INDIC(J+1)
DATE_SI2=FINHISTO-P4-(J+1)
D2=1
FINSI
FINSI

SI D2=1 //SI2 est un sommet possible sur l'indicateur
ALORS

SI P5=1 //La droite SI1--SI2 doit être au-dessus de l'indicateur
ALORS
PENTE_I=(SI1-SI2)/(DATE_SI1-DATE_SI2)
POUR (FINHISTO-P4-DATE_SI2+1) COURS
POINT_I(0)= PENTE_I*(RANGPOUR-1)+SI2
SI POINT_I<INDIC
ALORS
N=1
BREAK
FINSI
SI RANGPOUR>(DATE_SI1-DATE_SI2) ALORS BREAK
FINPOUR
FINSI

SI N=0 //Droite de divergence SI1--SI2 correcte
ALORS
//Chercher le 2ème sommet (SC2) et sa date (DATE_SC2)
//sur les cours avec une tolérance de P3 périodes
//avant le 2ème sommet sur l'indicateur
//
SC2=HAUT(FINHISTO-P4-DATE_SI2)
DATE_SC2=DATE_SI2
K=FINHISTO-P4-DATE_SI2+1
TANTQUE K<=FINHISTO-P4-DATE_SI2+P3 FAIRE
SI HAUT(K)>=SC2
ALORS
SC2=HAUT(K)
DATE_SC2=FINHISTO-K-P4
FINSI
K=K+1
FINTANTQUE

SI SC2<=SC1 //SC2 est un sommet possible sur les cours
ALORS

SI P5=1 //La droite SC1--SC2 doit être au-dessus des cours
ALORS
PENTE_C=(SC1-SC2)/(DATE_SC1-DATE_SC2)
POUR (FINHISTO-P4-DATE_SC2+1) COURS
POINT_C(0) =PENTE_C*(RANGPOUR-1)+SC2
SI POINT_C<HAUT
ALORS
M=1
BREAK
FINSI
SI RANGPOUR>(DATE_SC1-DATE_SC2) ALORS BREAK
FINPOUR
FINSI

SI M=0 //Droite de divergence SC1--SC2 correcte
ALORS
J=P2+D1+1
SINON
D2=0
FINSI
SINON
D2=0
FINSI
SINON
D2=0
FINSI
FINSI
N=0
M=0
J=J+1
FINTANTQUE

SI D1<>0 ET D2=0 OU SC2=0
ALORS
AFFICHER "============PAS DE DIVERGENCE POTENTIELLE============="
AFFICHER "======AVEC LES VALEURS ACTUELLES DES PARAMETRES======="
AFFICHER "=MAIS IL Y A UN 1ER SOMMET SUR LE REPULSE ET LES COURS="
AFFICHER "==============MODIFIEZ EVENTUELLEMENT P2=============="
STOP
FINSI

//Déterminer les points de la divergence potentielle trouvée
//s'ils peuvent être tracés sur l'indicateur et sur les cours
//
SI DATE_SC1-DATE_SC2=1 //La valeur 2 peut-être modifiée
ALORS
AFFICHER "=============DIVERGENCE POTENTIELLE============"
AFFICHER "==========TROP PETITE POUR ETRE TRACEE========="
AFFICHER "===========MODIFIEZ EVENTUELLEMENT P4=========="
SINON
PENTE_I=(SI1-SI2)/(DATE_SI1-DATE_SI2)
POUR (FINHISTO-P4-DATE_SI2+1) COURS
SEG_N_I(0)=PENTE_I*(RANGPOUR-1)+SI2
SI RANGPOUR>(DATE_SI1-DATE_SI2) ALORS BREAK
FINPOUR

PENTE_C=(SC1-SC2)/(DATE_SC1-DATE_SC2)
POUR (FINHISTO-P4-DATE_SC2+1) COURS
SEG_N_C(0)=PENTE_C*(RANGPOUR-1)+SC2
SI RANGPOUR>(DATE_SC1-DATE_SC2) ALORS BREAK
FINPOUR
FINSI

FINSI

----------------------------------


Programme de tracé de la divergence sur les cours :
----------------------------------
//DIV_NEG_REP_COURS
//

//TRACER LE SEGMENT DE LA DIVERGENCE NEGATIVE
//SUR LES COURS
//

SEG_N_COURS=SEG_N_C

----------------------------------


Un exemple :



Il est également indispensable que l'indicateur REPULSE_NJ soit installé dans une règle de nom REPULSE_NJ pour que les programmes de recherche ci-dessus puissent récupérer les valeurs de l'indicateur.

Je suis conscient du fait que la technique utilisée dans ces programmes n'est pas "idéale" puisque la recherche dépend des valeurs choisies pour les paramètres P1 à P5. Ces derniers ne sont pas toujours très évidents à choisir. Si vous avez d'autres idées, je suis preneur...

Cordialement.
  Retourner en haut de page

xave06

(2329 msg)

Plusieurs semaines Plus de 3 ans Technique et fondamentale Actions françaises

#408411Posté le : le 09-09-2005 21:30:42 xave06 - xave06 -      
====================================================

smallcaps90
je viens de rentrer chez moi et d'essayer sur mon graphat pro,et ça marche nickel chrome........
encore merci
xavier
Tout trader peut une fois dans sa vie acheter au plus bas et vendre au plus haut,corollairement la regle ne dit pas combien de fois le trader achetera au plus haut pour vendre au plus bas...(extrait du livre de John Bollinger)

  Retourner en haut de page

edje

(37 msg)

Plusieurs jours Plus de 3 ans Non renseigné Actions françaises

#408472Posté le : le 10-09-2005 08:55:50 edje - edje -      
====================================================

bonjour smallcaps90,
Merci à toi et aux autres programmeurs d'indicateurs de Graph AT.
Concernant le programme relatif aux divergences sur le Repulse pourrais tu m'indiquer ou à été défini le Repulse_NJ .

Merci


Jean
  Retourner en haut de page


61
Sujet : Graphe AT PRo : programmation
Premiere Page   Page précédente   Page : sur 171   Page suivante   Derniere Page
61Sat, 25 Apr 2009 20:42:05