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

smallcaps90

(1022 msg)

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

#499775Posté le : le 15-06-2006 17:41:27    
====================================================

Afin de complèter la comparaison précédente, je vous soumets ce graphe qui comporte, outre l'EPMA, la moyenne arithmétique, la moyenne exponentielle, la moyenne pondérée et la moyenne de Hull, toutes calculées sur 10 périodes glissantes.
On remarque nettement que la moyenne de Hull possède de très bonnes qualités de lissage avec un lag mini et des points de retournement qui apparaissent souvent simultanément avec ceux de l'EPMA, voire parfois1 à 2 periodes avant ceux-ci.


Peut-on envisager une anticipation de ceux-ci sur une Hull...?
FOKI où en es-tu?
A suivre...
  Retourner en haut de page

FOKI

(2011 msg)

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

#499791Posté le : le 15-06-2006 19:56:45 FOKI - FOKI -      
====================================================

Bonjour Smallcaps

MP dans ta bal.
Laisser au marché, nous donner la direction...
  Retourner en haut de page

glave79

(11 msg)

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

#499796Posté le : le 15-06-2006 20:37:25 glave79 - glave79 -      
====================================================

Bonsoir Smallcaps,

Bien évidemment un grand merci et vraiment bravo pour ton érudition.

1) effectivement la moyenne EPMA et l'indicateur de régression linéaire sont très proches;
2) la moyenne de HULL donne également des résultats intéressants, qui méritent d'être comparés avec ceux de l'EPMA (le Pb est de savoir comment les comparer); Au fait cette moyenne de HULL, comment l'obtient t-on (excuse mon ignorance) ?

En fait mon idée de départ est toute simple : l'EPMA me semblant réaliser un bon lissage avec, et surtout une bonne anticipation, je voulais l'utiliser pour détecter au plus tôt les changements de tendance : au moment ou la dérivée de la courbe EPMA est nulle, pour celà j'affectais une moyenne mobile exponentielle à l'EPMA, de période nettement plus courte (2 pour 10 par ex.), le croisement étant censé répondre à peu prêt à mon objectif.

Bref, voilà, est-ce vraiment une bonne idée ?

J'en profite pour me présenter : je teste en ce moment la version de démo de Graphe AT PRO, mais sans aucune hésitation je vais en faire l'achat, ses possibilités de programmation sont très intéressantes, quant au prix, il est sans concurrence. Jusqu'à maintenant j'utilisais une vieille version de Waldata, que je laisse tomber (ne gère pas les codes ISIN).

Cordialement et à bientôt.
  Retourner en haut de page

FOKI

(2011 msg)

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

#499827Posté le : le 15-06-2006 22:55:22 FOKI - FOKI -      
====================================================

Bonsoir Glave79

Tu trouveras des infos sur la Moyenne de Hull en page 57 de cette même file

FOKI
édité le : 15-06-2006 23:01:09Laisser au marché, nous donner la direction...
  Retourner en haut de page

glave79

(11 msg)

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

#499836Posté le : le 15-06-2006 23:30:11 glave79 - glave79 -      
====================================================

Merci FOKI
  Retourner en haut de page

augusseau

(178 msg)

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

#500175Posté le : le 17-06-2006 15:12:11 augusseau - augusseau -      
====================================================

bonjour a tous, un indicateur de plus pour ceux que ca interesse
voici le code pour représenter un pseudo market profile

/////
Z1(0)=0
Z2(0)=0
Z3(0)=0
Z4(0)=0
Z5(0)=0
Z6(0)=0
Z7(0)=0
Z8(0)=0
Z9(0)=0
Z10(0)=0
Z11(0)=0
ZC1(0)=0
ZC2(0)=0
ZC3(0)=0
ZC4(0)=0
ZC5(0)=0
ZC6(0)=0
ZC7(0)=0
ZC8(0)=0
ZC9(0)=0
ZC10(0)=0
ZC11(0)=0

POC(0)=0
M=MOIS
J=JOUR
H(0)=HAUT
ZPOC(0)=0
COMPT(0)=0
i = 0
TantQue i<JOUR Faire
si MOIS(I)=M ALORS NBJOUR(0)=NBJOUR(0)+1
i = i + 1
FinTantQue
HIGH=MAX(HAUT,NBJOUR)
MINU=MIN(BAS,NBJOUR)
ECART(0)=(HIGH-MINU)/11


i = 0
tantQue i<NBJOUR Faire

si haut(i)<HIGH-ECART alors Z1=Z1 sinon Z1=Z1+1
si HAUT(i)<=(HIGH-2*ECART) ou BAS(i)>=(HIGH-1*ECART) alors Z2=Z2 sinon Z2=Z2+1
si HAUT(i)<=(HIGH-3*ECART) ou BAS(i)>=(HIGH-2*ECART) alors Z3=Z3 sinon Z3=Z3+1
si HAUT(i)<=(HIGH-4*ECART) ou BAS(i)>=(HIGH-3*ECART) alors Z4=Z4 sinon Z4=Z4+1
si HAUT(i)<=(HIGH-5*ECART) ou BAS(i)>=(HIGH-4*ECART) alors Z5=Z5 sinon Z5=Z5+1
si HAUT(i)<=(HIGH-6*ECART) ou BAS(i)>=(HIGH-5*ECART) alors Z6=Z6 sinon Z6=Z6+1
si HAUT(i)<=(HIGH-7*ECART) ou BAS(i)>=(HIGH-6*ECART) alors Z7=Z7 sinon Z7=Z7+1
si HAUT(i)<=(HIGH-8*ECART) ou BAS(i)>=(HIGH-7*ECART) alors Z8=Z8 sinon Z8=Z8+1
si HAUT(i)<=(HIGH-9*ECART) ou BAS(i)>=(HIGH-8*ECART) alors Z9=Z9 sinon Z9=Z9+1
si HAUT(i)<=(HIGH-10*ECART) ou BAS(i)>=(HIGH-9*ECART) alors Z10=Z10 sinon Z10=Z10+1
si bas(i)>(HIGH-10*ECART) alors Z11=Z11 sinon Z11=Z11+1

i = i + 1
FinTantQue

ZPOC=Z1
COMPT=1
si Z2>=ZPOC alors
ZPOC=Z2
COMPT=2
finsi
si Z3>=ZPOC alors
ZPOC=Z3
COMPT=3
finsi
si Z4>=ZPOC alors
ZPOC=Z4
COMPT=4
finsi
si Z5>=ZPOC alors
ZPOC=Z5
COMPT=5
finsi

si Z6>=ZPOC alors
ZPOC=Z6
COMPT=6
finsi
si Z7>ZPOC alors
ZPOC=Z7
COMPT=7
finsi
si Z8>ZPOC alors
ZPOC=Z8
COMPT=8
finsi
si Z9>ZPOC alors
ZPOC=Z9
COMPT=9
finsi
si Z10>ZPOC alors
ZPOC=Z10
COMPT=10
finsi
si Z11>ZPOC alors
ZPOC=Z11
COMPT=11
finsi
POC=HIGH-(COMPT-0.5)*ECART
POC2(0)=HIGH-(COMPT-0.5)*ECART

i=1
TantQue i<=NBJOUR Faire

si Z1>=i alors ZC1(NBJOUR-i)=HIGH-0.5*ECART sinon ZC1(NBJOUR-i)=0
si Z2>=i alors ZC2(NBJOUR-i)=HIGH-1.5*ECART sinon ZC2(NBJOUR-i)=0
si Z3>=i alors ZC3(NBJOUR-i)=HIGH-2.5*ECART sinon ZC3(NBJOUR-i)=0
si Z4>=i alors ZC4(NBJOUR-i)=HIGH-3.5*ECART sinon ZC4(NBJOUR-i)=0
si Z5>=i alors ZC5(NBJOUR-i)=HIGH-4.5*ECART sinon ZC5(NBJOUR-i)=0
si Z6>=i alors ZC6(NBJOUR-i)=HIGH-5.5*ECART sinon ZC6(NBJOUR-i)=0
si Z7>=i alors ZC7(NBJOUR-i)=HIGH-6.5*ECART sinon ZC7(NBJOUR-i)=0
si Z8>=i alors ZC8(NBJOUR-i)=HIGH-7.5*ECART sinon ZC8(NBJOUR-i)=0
si Z9>=i alors ZC9(NBJOUR-i)=HIGH-8.5*ECART sinon ZC9(NBJOUR-i)=0
si Z10>=i alors ZC10(NBJOUR-i)=HIGH-9.5*ECART sinon ZC10(NBJOUR-i)=0
si Z11>=i alors ZC11(NBJOUR-i)=HIGH-10.5*ECART sinon ZC11(NBJOUR-i)=0
si ZPOC>=i alors POC(NBJOUR-i)=HIGH-(COMPT-0.5)*ECART sinon POC(NBJOUR-i)=0


Z1(NBJOUR-i)=Z1
Z2(NBJOUR-i)=Z2
Z3(NBJOUR-i)=Z3
Z4(NBJOUR-i)=Z4
Z5(NBJOUR-i)=Z5
Z6(NBJOUR-i)=Z6
Z7(NBJOUR-i)=Z7
Z8(NBJOUR-i)=Z8
Z9(NBJOUR-i)=Z9
Z10(NBJOUR-i)=Z10
Z11(NBJOUR-i)=Z11
COMPT(NBJOUR-i)=COMPT
POC2(NBJOUR-i)=POC2

i = i + 1
FinTantQue

// calcul de value area
CAL(0)=Z1
CAL(1)=Z2
CAL(2)=Z3
CAL(3)=Z4
CAL(4)=Z5
CAL(5)=Z6
CAL(6)=Z7
CAL(7)=Z8
CAL(8)=Z9
CAL(9)=Z10
CAL(10)=Z11
VARIABILITE(0)=ECARTYPE(CAL,10)
si MOIS(1)<>MOIS(0)
alors
VA(1)=POC2(1)-VARIABILITE(1)*ECART(1)
VA(2)=POC2(1)+VARIABILITE(1)*ECART(1)
sinon VA=0

//////


le principe retenu est le suivant :
pour la représentation, je prends en compte les cotations du mois,
je decompose en 11 zones de prix de larguer égale, à partir du plus haut et du plus bas du mois
je comptabilise durant le mois le temps passé dans chaque zone
je représente le temps passé dans chaque zone le temps passé
en bleu pour chque zone,
en vert le POC (zone ou le temps passé est maximale)
je représente, centré sur le POC, la distribution des cours à un écart type (en jaune)

au final, voir la littérature pour l'exploitation
application concrête, le POC ou les extremités de la value area en jaune peuvent servir de support/résistance




carca
  Retourner en haut de page

augusseau

(178 msg)

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

#500177Posté le : le 17-06-2006 15:14:12 augusseau - augusseau -      
====================================================

et on obtient des graphes comme celui ci



a titre d'exemple, on voit bien que l'extremite basse de la value area de mai a servi de resistance (segment jaune)
carca
  Retourner en haut de page

jmc

(46 msg)

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

#500293Posté le : le 19-06-2006 08:07:10 jmc - jmc -      
====================================================

Un grand merci à jean-luc M. pour le document word : je ne me rappelle plus ton pseudo ici ....

signé : bge-37@.....com
  Retourner en haut de page

michka

(26 msg)

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

#500500Posté le : le 19-06-2006 21:16:05 michka - michka -      
====================================================

Bonjour jmc

Je t'en pris, ce n'est qu'une simple participation au travail de tous les acteurs de cette file.

Cordialement

  Retourner en haut de page

glave79

(11 msg)

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

#501020Posté le : le 21-06-2006 15:36:43 glave79 - glave79 -      
====================================================

Retour sur la moyenne mobile EPMA

Smallcaps90, je reviens te solliciter, j'ai retranscrit textuellement ton programme sur l'indicateur EPMA_10 (quand même après l'avoir compris !); mais mille fois hélas, l'indicateur reste contamment à zéro (bouton "tester"), ainsi bien sur, que la courbe associée.
Visiblement quelque chose m'échappe !

Un petit coup de main serait le bienvenu.

Cordialement
  Retourner en haut de page

smallcaps90

(1022 msg)

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

#501161Posté le : le 21-06-2006 20:53:10    
====================================================

Bonsoir glave79,

As-tu vérifié le contenu de ta fenêtre Propriétés de l'indicateur?
  Retourner en haut de page

glave79

(11 msg)

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

#501172Posté le : le 21-06-2006 22:16:27 glave79 - glave79 -      
====================================================

Bonsoir Smallcaps90

J'ai trouvé mon erreur due à ma grande ignorance : la courbe résultat doit être désignée par "Courbe1" et non par "EPMA", c'est aussi bête que cela. Mais n'est-ce pas grace à ses erreurs que l'on progresse ? Il faut dire que dans mon cas la route est longue....
Etant d'un naturel têtu et laborieux, je commence par étudier chacune des 78 pages du forum.
Encore merci smallcaps90 et à bientôt.

Cordialement
  Retourner en haut de page

smallcaps90

(1022 msg)

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

#501209Posté le : le 22-06-2006 08:10:29    
====================================================

Bonjour glave79,

Il n'est pas nécessaire que la courbe de l'indicateur soit désignée par "Courbe1" pour quelle apparaisse sur le graphe.

Le programme définit la variable EPMA et la fenêtre Propriétés de la règle comporte bien EPMA dans le champ "Nom" de la courbe1, avec Simple dans le champ "Affichage"...Par conséquent si tu as bien coché la case "Affichage sur les cours", la courbe de l'EPMA doit apparaître sur les cours...


Pour ce qui concerne les 78 pages de la file, il est vrai qu'il n'est pas très facile d'y retrouver qq chose vu que la fonction "Rechercher" n'accède pas à la page où se trouve le sujet qui t'intéresse...Néanmoins tu peux demander à Longway de t'envoyer son tableau Excel qui résout ce problème. Michka et jlr ont réalisé des documents Word reprenant l'intégralité de la file également. Cà aide bien! Merci à eux ...

Cordialement.


  Retourner en haut de page

glave79

(11 msg)

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

#501881Posté le : le 25-06-2006 19:23:55 glave79 - glave79 -      
====================================================

Merci smallcaps90,

J'ai enfin compris, qu'il est nécessire de conserver la cohérence entre l'appellation de la courbe, déclarée dans l'onglet "Propriétés", et celle utilisée dans le corps du programme, chose que je n'avais pas faîte ! (dur, dur).

Je suis bien évidemment preneur de tout programme qui établit une synthèse des 78 pages du forum (j'en suis actuellement à la 4ème !) et j'en remercie à l'avance les auteurs, qui voudront bien me le faire parvenir (ordi.tel@free.fr).

Cordialement.

glave79
  Retourner en haut de page

FOKI

(2011 msg)

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

#503002Posté le : le 29-06-2006 12:42:20 FOKI - FOKI -      
====================================================

Bonjour

Visuellement la Hull semble être intéressante ... ici appliquée sur le CAC avec un réglage de 10




MAIS qu'en est il numériquement ... pourrait-on en faire un système de trading ??

Les outils utilisés :

Programme de la Hull avec segment de couleur :

//====
//HULL
//====

//Moyenne de Hull
//V1.0 du 29/06/2005
//V2.0 du 16/05/2006
//

M_HULL = PONDERE(2*PONDERE(CLOTURE,P1/2)-
PONDERE(CLOTURE,P1),RACINE(P1))


//Tracé des segments croissants en vert
//des segments décroissants en rouge pour M_HULL

//1- Initialisations
SI RANGHISTO=2
ALORS
SI M_HULL>=M_HULL(1)
ALORS
V(0)=1
R(0)=0
SINON
V(0)=0
R(0)=1
FINSI
FINSI

//3- Détermination de la tendance
SI RANGHISTO>2
ALORS

SI M_HULL(1)>M_HULL
ALORS
R=1
V=0
FINSI

SI M_HULL(1)<M_HULL
ALORS
V=1
R=0
FINSI

SI M_HULL(1)=M_HULL
ALORS
SI V(1)=1 ALORS V=V(1)
SI R(1)=1 ALORS R=R(1)
FINSI

//Traitement des tracés
//
//Segments verts
//
SI V=1 ET V(1)=0
ALORS
SI A=0
ALORS
M_HULL_V1(1)=M_HULL(1)
M_HULL_V1=M_HULL
SINON
M_HULL_V2(1)=M_HULL(1)
M_HULL_V2=M_HULL
FINSI
FINSI

SI V=1 ET V(1)=1
ALORS
SI A=0 ALORS M_HULL_V1=M_HULL
SI A=1 ALORS M_HULL_V2=M_HULL
FINSI

SI V=0 ET V(1)=1
ALORS
SI A=0 ALORS M_HULL_V1(1)=M_HULL(1)
SI A=1 ALORS M_HULL_V2(1)=M_HULL(1)
A=NON(A)
FINSI


//Segments rouges
//
SI R=1 ET R(1)=0
ALORS
SI B=0
ALORS
M_HULL_R1(1)=M_HULL(1)
M_HULL_R1=M_HULL
SINON
M_HULL_R2(1)=M_HULL(1)
M_HULL_R2=M_HULL
FINSI
FINSI

SI R=1 ET R(1)=1
ALORS
SI B=0 ALORS M_HULL_R1=M_HULL
SI B=1 ALORS M_HULL_R2=M_HULL
FINSI

SI R=0 ET R(1)=1
ALORS
SI B=0 ALORS M_HULL_R1(1)=M_HULL(1)
SI B=1 ALORS M_HULL_R2(1)=M_HULL(1)
B=NON(B)
FINSI

FINSI





Programme de détection d'inversion de sens de la HULL :

//==============
//CONV_CONC_HULL
//==============

//Recherche des zones convexes/concaves et ascendantes/descendantes
//sur une moyenne de Hull
//le 30/06/2005
//

M(0)=HULL.M_HULL


CONVEXE = (M-2*M(1)+M(2)>=0) //Approximation de la dérivée seconde
CONCAVE = NON(CONVEXE)
ASCENDANT = (M>M(1))
DESCENDANT = NON(ASCENDANT)

HAUSSE_DEBUT = CONVEXE ET ASCENDANT
HAUSSE_FIN = CONCAVE ET ASCENDANT
BAISSE_DEBUT = -(CONCAVE ET DESCENDANT)
BAISSE_FIN = -(CONVEXE ET DESCENDANT)




Le programme de test :

Voici la structure des répertoires :



Programme "Trading system HULL" :

//=================
// Trading System 2
//=================

// Similaire à "Trading System" avec en plus utilisation de la fenêtre
// d'affichage des règles pour un rapport de backtest (voir règle "Trad Gains 2")

//Système basé sur la Concavité de la moyenne de HULL
ACHAT=HULL.M_HULL_V1(2)=0 ET HULL.M_HULL_V1(1)<>0 ET HULL.M_HULL_V1<>0
OU
HULL.M_HULL_V2(2)=0 ET HULL.M_HULL_V2(1)<>0 ET HULL.M_HULL_V2<>0
VENTE=HULL.M_HULL_R1(2)=0 ET HULL.M_HULL_R1(1)<>0 ET HULL.M_HULL_R1<>0
OU
HULL.M_HULL_R2(2)=0 ET HULL.M_HULL_R2(1)<>0 ET HULL.M_HULL_R2<>0

//Signal Achat/Vente : 1 = Achat, 0 = Neutre, -1 = Vente
SIGNAL = Achat - Vente





Le programme "Trad AchatVente HULL"

// Position Acheteuse ou Vendeuse

ACHATVENTE = GAINS2.POS





Le programme "Trad AV sur cours HULL"

//==================
//TradAV sur cours 2
//==================

// Signal d'achat/Vente sur les cours (flèches)

Si SIGNAL = 1 Alors FACHAT = -1 // Achat : flèche haut en dessous des cours
Si SIGNAL = -1 Alors FVENTE = 1 // Vente : flèche bas au dessus des cours

Si GAINS2.SIGNALSTOP = 2 Alors FACHAT = 1 // Achat par Stop loss Vente
Si GAINS2.SIGNALSTOP = -2 Alors FVENTE = -1 // Vente par Stop loss Achat

COURBE_UP1=HULL.M_HULL_V1
COURBE_UP2=HULL.M_HULL_V2
COURBE_DN1=HULL.M_HULL_R1
COURBE_DN2=HULL.M_HULL_R2/blue





Le programme "Trad Gains HULL"


// 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


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 SUR HULL "
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
CoursDebOper = CoursOper
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 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




RESULTAT DES COURSES A SUIVRE ...

édité le : 29-06-2006 19:43:15Laisser au marché, nous donner la direction...
  Retourner en haut de page


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