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

RickenBroc

(88 msg)

Plusieurs semaines De 1 à 3 ans Non renseigné Actions françaises

Posté le : le 16-07-2003 14:08:42 RickenBroc - RickenBroc  Voir le page de RickenBroc     
====================================================

Bonjour,

Comme Altistock voit ses utilisateurs proposer des programmations d'indicateurs et de TS, je propose que les utilisateurs de Graphe AT Pro fassent profiter de leurs compétences en programmation.

Pour commencer, je vous délivre quelques indicateurs que j'ai programmé à la suite de la lecture du dernier livre d'Alexander Elder ("Come Into My Trading Room")


//====================================================
// Force Index
//====================================================

// P1 = longueur de la Moyenne Exponentielle
FI_Court= EXPOSUIV(FI_Court,Volume*(Cloture-Cloture(1)),P1)

// Impulse System selon Alexander Elder
// p 157 de Come Into My Trading Room
// Principe:
// si EMA(13) et MACD histo sont en phase alors signal
// la fin du signal indique de sortir de ses positions
// Très utile pour entrer au bon moment en utilisant le Triple Screen
// en n'allant pas contre l'Impulse.

//EMA P1


EMA = EXPOSUIV(EMA,cloture,P1)

SI ((EMA>EMA(1)) ET (RMACDHISTO.RMACDHISTO>RMACDHISTO.RMACDHISTO(1))) ALORS
IMPULSE = Bas * 0.99
SINON
SI ((EMA<EMA(1)) ET (RMACDHISTO.RMACDHISTO<RMACDHISTO.RMACDHISTO(1))) ALORS
IMPULSE = Haut * 1.01
SINON
IMPULSE = (Haut+Bas)/2
FINSI
FINSI



Le résultat à; l'écran:


La suite un peu plus tard...
et puis il y eu le Big Bang...
  Retourner en haut de page

RickenBroc

(88 msg)

Plusieurs semaines De 1 à 3 ans Non renseigné Actions françaises

#109921Posté le : le 16-07-2003 14:49:18 RickenBroc - RickenBroc -   Voir le page de RickenBroc      
====================================================

Le MACD histo ne me plaisait pas, alors je l'ai redéfini comme suit:

Ca, c'est la version redéfinie de MLog que je conserve
//====================================================
// MACD
//====================================================

ema1 = ema1+(Cloture-ema1) * 2/(1+P1)
ema2 = ema2+(Cloture-ema2) * 2/(1+P2)
RMACD = ema1 - ema2


// Moyenne exponentielle du MACD
RMMACD = EXPOSUIV(RMMACD,RMACD,P3)




Ca c'est ma version de l'histogramme dérivé du MACD redéfini
//====================================================
// MACD Histogramme
//====================================================

RMACDHISTO = (RMACD-RMMACD)*4 // x4 pour bien le voir
MACDS = RMACD
MACDL = RMMACD


//SI l'histogramme croît, alors en vert
Si RMACDHISTO>RMACDHISTO(1) Alors
HISTO_POS = RMACDHISTO
HISTO_NEG = 0
Sinon
//en rouge
HISTO_NEG = RMACDHISTO
HISTO_POS = 0
Finsi



Et pour finir le résultat à l'affichage (ex carrefour) :



La suite au prochain message!
et puis il y eu le Big Bang...
  Retourner en haut de page

RickenBroc

(88 msg)

Plusieurs semaines De 1 à 3 ans Non renseigné Actions françaises

#109939Posté le : le 16-07-2003 15:09:38 RickenBroc - RickenBroc -   Voir le page de RickenBroc      
====================================================

Le thermomètre:
//====================================================
// Market Thermometer selon Alexander Elder
// p162 de 'Come Into My Trading Room'

//====================================================
// Histo de la température
TEMPERATURE = MAXVAL(Haut-Haut(1), Bas(1)-Bas)
SI TEMPERATURE < 0 ALORS TEMPERATURE = 0

// P1 = longueur de l'EMA
MTEMPERATURE = EXPOSUIV(MTEMPERATURE,TEMPERATURE,P1)



Interprétation (4 signaux)
- le meilleur moment pour de nouvelles positions est quand la T° < sa moyenne
- Sortir des positions quand la T° > 3 x sa moyenne
- si la T° reste sous sa moyenne pendant 5 à 7 séances de bourse, il faut s'attendre à un mouvement violent
- déterminer l'objectif pour le lendemain (CT):
- HA -> obj = moyenne T° + haut(veille)
- VAD -> obj = bas(veille) - moyenne T°

Un petit graphe:


Dites-moi si tout cela vous intéresse, j'ai encore en magasin le SafeZone, les canaux, le calcul du coefficient des canaux (pas aidé par le language pour celui-là), et le Chandelier Exit.

Bon trades,
RickenBroc

et puis il y eu le Big Bang...
  Retourner en haut de page

jeopardy

(86 msg)

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

#109962Posté le : le 16-07-2003 15:38:25 jeopardy - jeopardy -      
====================================================

En lalalalala, le copieur ;)

Juste une question ca veut dire quoi EXPOSUIV??
Et une autre haut(1)??
  Retourner en haut de page

RickenBroc

(88 msg)

Plusieurs semaines De 1 à 3 ans Non renseigné Actions françaises

#109988Posté le : le 16-07-2003 16:05:39 RickenBroc - RickenBroc -   Voir le page de RickenBroc      
====================================================

Bah, je fait comme les autres, j'utilise ce que des gens plus "expérimentés" ont mis au point...

Haut(1) c'est le plus haut de la veille

EXPOSUIV c'est la formule pour calculer une moyenne mobile exponentielle
donc FI_court c'est la MME à P1 jours (typiquement 2 jours) du volume par la différence du cours de cloture avec celui de la veille



et puis il y eu le Big Bang...
  Retourner en haut de page

asynergy

(1432 msg)

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

#109991Posté le : le 16-07-2003 16:06:31 asynergy - asynergy -      
====================================================

J'ai tenté de programmer la formule de KST de Martin Pring, mais le résultat est erroné.
Voici ce que j'ai programmé pour le KST COURT TERME :
//====================================================
// ROC
//====================================================

ROC3 = CLOTURE/CLOTURE(3)
ROC4 = CLOTURE/CLOTURE(4)
ROC6 = CLOTURE/CLOTURE(6)
ROC10 = CLOTURE/CLOTURE(10)
MERROC3 = EXPOSUIV(MERROC3,ROC3,3)
MERROC4 = EXPOSUIV(MERROC4,ROC3,4)
MERROC6 = EXPOSUIV(MERROC6,ROC6,6)
MERROC10 = EXPOSUIV(MERROC10,ROC10,8)
M1=MERROC3*1
M2=MERROC4*2
M3=MERROC6*3
M4=MERROC10*4


// KST CT
KSTCT=M1+M2+M3+M4
MKSTCT=EXPOSUIV(MKSTCT,cloture,8)


Sur Metastock la forume est la suivante :
(Mov(ROC(C,3,%),3, E)*1) +
(Mov(ROC(C,4,%),4, E)*2) +
(Mov(ROC(C,6,%),6, E)*3) +
(Mov(ROC(C,10,%),8, E)*4)

Si quelqu'un veut bien me corriger, Je l'en remercie par avance
francis
  Retourner en haut de page

RickenBroc

(88 msg)

Plusieurs semaines De 1 à 3 ans Non renseigné Actions françaises

#110044Posté le : le 16-07-2003 16:51:41 RickenBroc - RickenBroc -   Voir le page de RickenBroc      
====================================================

Bonjour,

D'après moi le calcul est correct, (il faut juste penserà vérifier que le ROC en % de Métastock donne bien CLOTURE/CLOTURE(periode) et non pas un pourcentage de progression par rapport à la valeur du ROC de la veille).
Sinon la dernière ligne me paraît inexacte, si c'est la MME du KSTCT que tu veux. Il faut remplacer cloture par KSTCT, ce qui donne:
MKSTCT = EXPOSUIV(MKSTCT, KSTCT, 8)

A l'écran cela donne:


Si ce n'est toujours pas bon, donne moi des valeurs du KSTCT calculées par MetaStock, pour comparer.
et puis il y eu le Big Bang...
  Retourner en haut de page

RickenBroc

(88 msg)

Plusieurs semaines De 1 à 3 ans Non renseigné Actions françaises

#110149Posté le : le 16-07-2003 18:15:23 RickenBroc - RickenBroc -   Voir le page de RickenBroc      
====================================================

Bon alors ça roule...

======================================================

// The Chandelier Exit selon Alexander Elder
// p180 de 'Come Into My Trading Room'
// -> sorties de tendances fortes MT

// P1: True Range sur P1 jour
// P2: Extrème sur P2 jour
// P3: coef multiplicateur ATR

//pour affichage EMA sur courbe
EMA = EXPOSUIV(EMA,Cloture,P1)
// ##### VERSION CORRIGÉE #####
// True Range : la plus grande valeur absolue entre
// - le plus haut et le plus bas du jour
// - le plus haut du jour et la cloture d'hier
// - le plus bas du jour et la cloture d'hier
TR(0) = 0
TR = MAXVAL( MAXVAL(Haut-Bas,ABSOLU(Haut-Cloture(1))), ABSOLU(Bas-Cloture(1)) )
// ############################

// Average True Range = la moyenne sur P1 jours
// P1 = 22 équivaut à 1 mois si l'échelle est le jour
ATR(0)=0
ATR = MOYENNE(TR, P1)

// Calcul du Chandelier: 2 courbes

// tendance haussiere
CHANDELIER_UPT = MAX(Haut, P2) - P3*ATR

//tendance baissière
CHANDELIER_DNT = MIN(Bas, P2) + P3*ATR

=========================================================


Ce qui donne à l'écran:



édité le : 30-07-2003 16:22:46et puis il y eu le Big Bang...
  Retourner en haut de page

RickenBroc

(88 msg)

Plusieurs semaines De 1 à 3 ans Non renseigné Actions françaises

#110153Posté le : le 16-07-2003 18:30:33 RickenBroc - RickenBroc -   Voir le page de RickenBroc      
====================================================

Le SafeZone

Je l'affiche de deux manières:
- sur la courbe en appliquant un coef
- en tant qu'histogramme (dérivé) pour calcul de stops quand les courbes ne sont pas en phase avec les prix.

// D'après Alexander Elder
// p173 de 'Come Into My Trading Room'

// P1 : longueur de la période de recul (entre 10 et 20)
// P2 : coefficient multiplicateur de l'écart (entre 2 et 3)

EMA = EXPOSUIV(EMA,cloture,22)

//Déclaration de données historisées (équivalent à les utiliser comme courbes non affichées)
Val_UpPen(0)=0
Top_UpPen(0)=0
Avg_UpPen(0)=0
Val_DnPen(0)=0
Top_DnPen(0)=0
Avg_DnPen(0)=0

// ___ SafeZone en tendance baissière ___
SI(Haut>Haut(1)) ALORS
Val_UpPen = Haut-Haut(1)
Top_UpPen = 1
FINSI

NbPen = SOMME(Top_UpPen,P1)
SI(SOMME(Val_UpPen, P1)>0) ALORS
Avg_UpPen = SOMME(Val_UpPen, P1) / NbPen
FINSI

SAFEZONE_DNT = MIN(Haut(1)+P2*Avg_UpPen(1), 3)

// ___ SafeZone en tendance haussière ___
SI(Bas(1)>Bas) ALORS
Val_DnPen = Bas(1)-Bas
Top_DnPen = 1
FINSI

NbPen = SOMME(Top_DnPen,P1)
SI(SOMME(Val_DnPen, P1)>0) ALORS
Avg_DnPen = SOMME(Val_DnPen, P1) / NbPen
FINSI

SAFEZONE_UPT = MAX(Bas(1)-P2*Avg_DnPen(1),3)


Vous remarquerez la déclaration de deux courbes <Aucun> qui sont utilisées dans l'indicateur dérivé suivant(histogrammes)

//pénétrations
PEN_BAS= -Avg_DnPen
PEN_HAUT = AVG_UPPEN



Ce qui donne :



et puis il y eu le Big Bang...
  Retourner en haut de page

RickenBroc

(88 msg)

Plusieurs semaines De 1 à 3 ans Non renseigné Actions françaises

#110157Posté le : le 16-07-2003 18:35:28 RickenBroc - RickenBroc -   Voir le page de RickenBroc      
====================================================

Le Canal

D'abord, faisons simple, pour le dessiner:

// P1 = longueur de MCANAL
// P2 = Coefficient du Canal
//MACANAL P1
EMA13=MOYENNE2
MCANAL = EXPOSUIV(MCANAL,cloture,P1)

//Ligne haute du canal
UCANAL = MCANAL * (1 + P2%)

//Ligne basse du canal
LCANAL = MCANAL - MCANAL * P2%



Voir le Thermomètre pour le dessin du canal
et puis il y eu le Big Bang...
  Retourner en haut de page

RickenBroc

(88 msg)

Plusieurs semaines De 1 à 3 ans Non renseigné Actions françaises

#110165Posté le : le 16-07-2003 18:50:22 RickenBroc - RickenBroc -   Voir le page de RickenBroc      
====================================================

Enfin the big part: le calcul du coefficient de canal.

Là c'est un peu plus compliqué. Il n'est pas possible (ou alors j'ai pas compris) de faire une boucle simple dans le language de Graphe AT. La boucle s'opère obligatoirement par balayage des cours, ce qui modifie le pointeur de l'historique.
Bref j'aurais aimé pouvoir faire un truc du genre
POUR K = 1 à 30
ma routine de calcul
FIN POUR

Donc là, c'est du copier-coller de la même routine 30 fois jusqu'à obtention du bon résultat (et encore parce que je suppose que K <= 30)...

// P1 = nb de pénétrations pendant la période
// P2 = longueur de l'historique de calcul

K=1
UpPen=0
DnPen=0
POUR P2 COURS
SI (Haut>(CANAL.MCANAL*(1+K%))) ALORS UpPen = UpPen + 1
SI (Bas<(CANAL.MCANAL*(1-K%))) ALORS DnPen = DnPen + 1
SI((UpPen>P1) OU (DnPen>P1)) ALORS break
FINPOUR
SI ((UPPen<=P1)ET(DnPen<=P1)) ALORS STOP

// ------ DEBUT PARTIE DU CODE A COPIER/COLLER 28 FOIS -------
K=K+1
UpPen=0
DnPen=0
POUR P2 COURS
SI (Haut>(CANAL.MCANAL*(1+K%))) ALORS UpPen = UpPen + 1
SI (Bas<(CANAL.MCANAL*(1-K%))) ALORS DnPen = DnPen + 1
SI((UpPen>P1) OU (DnPen>P1)) ALORS break
FINPOUR
SI ((UPPen<=P1)ET(DnPen<=P1)) ALORS STOP
//---------- FIN PARTIE DU CODE A COPIER/COLLER 28 FOIS -------



pour calculer K et le reporter dans le P2 de CANAL il suffit alors de cliquer sur le bouton "Tester":


Donc ici K = 8 issu d'un calcul de 4 pénétrations sur 80 jours de cours.


et puis il y eu le Big Bang...
  Retourner en haut de page

RickenBroc

(88 msg)

Plusieurs semaines De 1 à 3 ans Non renseigné Actions françaises

#110169Posté le : le 16-07-2003 19:04:09 RickenBroc - RickenBroc -   Voir le page de RickenBroc      
====================================================

Voilà.
Si vous avez d'autres façon de faire, des améliorations, des extensions, je suis preneur.

En ce qui me concerne, j'utilise plutôt le MACD histo et le ForceIndex(2) en tant qu'oscillateurs (en Journalier) et les MME comme indicateurs de tendances (en Hebdomadaire).
Je n'ai pas de flux intraday, et je n'en ai pas besoin pour l'horizon de trading que je me suis fixé.

Bien sûr je m'appuie également sur le Elder-Ray (Bull et Bear Power) pour confirmer, mais pour cela je préfère m'assurer que l'Impulse System ne donne pas de signal contraire à mon analyse.

Pour le moment je suis encore en phase d'apprentissage et de "ressenti" du marché, mais en backtestant (comme décrit dans le livre), et en appliquant les règles de money management, ça donne de bons résultats.
Y'a plus qu'a réunir le capital pour me relancer (ben oui, les warrant m'ont déjà ruiné une fois , alors maintenant on y va avec méthode )

Bon trades et à bientôt,
RickenBroc


et puis il y eu le Big Bang...
  Retourner en haut de page

portalis

(968 msg)

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

#110197Posté le : le 16-07-2003 21:01:05 portalis - portalis -      
====================================================

citation :
Citation de RickenBroc


// True Range: la plus grande valeur entre
// - le plus haut et le plus bas du jour
// - le plus haut du jour et le plus bas d'hier
// - le plus bas du jour et le plus haut d'hier
TR(0) = 0
TR = MAX(MAX(Haut-Bas,Haut-Bas(1)),Haut(1)-Bas)

// Average True Range = la moyenne sur P1 jours
// P1 = 22 équivaut à 1 mois si l'échelle est le jour
ATR(0)=0
ATR = MOYENNE(TR, P1)



Salut,

Je ne suis pas d'accord avec ta formule de l'ATR, voici la composition officiel de cet indicateur:

The True Range indicator is the greatest of the following:

The distance from today's high to today's low.

The distance from yesterday's close to today's high.

The distance from yesterday's close to today's low.
The Average True Range is a moving average (typically 14-days) of the True Ranges.

Perso j'ai programmé un indicateur avec 3 courbes: TR, ATR à 5j et ATR à 20j

M1= Haut-Bas
M2= Cloture(1)- Haut
M3= Cloture(1)- Bas

TR = Maxval(MAXval(M2,M3), M1)

ATR = MOYENNE(TR, P2)

M2ATR = MOYENNE(TR, P1)


// P1=5
// P2=20

Sinon tu sais où trouver une documentation sur la façon de programmer graphe AT pro.... pour le moment j'y vais un peu à taton.


  Retourner en haut de page

providence

(14121 msg)

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

#110204Posté le : le 16-07-2003 21:41:35 providence - providence -      
====================================================

Merci RickenBroc pour tous ces nouveaux indicateurs.Mais cela va m'obliger à acheter le livre d'Elder.
Merci aussi à Portalis et Asynergy pour leur participation.
  Retourner en haut de page

portalis

(968 msg)

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

#110247Posté le : le 17-07-2003 07:03:58 portalis - portalis -      
====================================================

Correction pour la formule du True Range:

M2 = Haut - Cloture(1)
  Retourner en haut de page

RickenBroc

(88 msg)

Plusieurs semaines De 1 à 3 ans Non renseigné Actions françaises

#110687Posté le : le 17-07-2003 17:19:09 RickenBroc - RickenBroc -   Voir le page de RickenBroc      
====================================================

Bonjour,

**----------------------------
il a quelques jours je disais:
Portalis: la définition du True Range que j'utilise est celle que donne Alexander Elder pour construire son signal de stop: il cherche en fait a dissocier le bruit (la dispersion des prix) de la tendance. Certes, je t'accorde qu'il n'aurait pas du utiliser la terminologie True Range de Welles Wilder.
*** bon, j'ai vérifié la définition qu'en donne Alexander Elder, et il utilise le véritable True Range, donc mea culpa, mea maxima culpa. Merci Portalis pour ta perspicacité...
**----------------------------

En ce qui concerne la programmation de Graphe AT, à ma connaissance il n'existe que le fichier d'aide de MLog et les quelques exemples qu'il a fourni. Amha, le principe qu'il faut bien intégrer est le fonctionnement des variables qui sont de 2 types:
- statique, ex M1 =2
- de type tableau indicé ex: CLOTURE ou une courbe ou une variable déclarée explicitement comme MAVAR(0)=0
L'incide est un pointeur qui pointe la valeur courante - indice jours

Ex: dans une boucle, c'est la valeur courante qui varie
donc à la fin de la boucle nous sommes au jour le plus récent de l'historique; donc quand on dit CLOTURE(1) on a:

9 8 7 6 5 4 3 2 1 0
................|
............CLOTURE(1)


si dans la boucle la valeur courante est 5 alors on pointe vers
9 8 7 6 5 4 3 2 1 0
......|
..CLOTURE(1)

on peut même alors pointer vers la valeur du lendemain avec:
9 8 7 6 5 4 3 2 1 0
..........|
.......CLOTURE(-1)


Une fois qu'on a saisi ce concept, il devient plus facile de programmer les indicateurs.

C'est vrai qu'il manque un didacticiel de programmation, mais bon, cette file est aussi là pour aider à mieux utiliser ce nouvel outil de Graphe AT, voire à l'améliorer si MLog nous lit !

Cordialement,
RickenBroc
édité le : 29-07-2003 09:45:48et puis il y eu le Big Bang...
  Retourner en haut de page


Sujet : Graphe AT PRo : programmation
Page : sur 171   Page suivante   Derniere Page