|
| Envoyé par player le 06 Octobre 2005 à 19:03
|
|
|
Bonjour,
Je souhaite faire un indicateur tout simple, qui me renvoie la plus haute valeur des X barres précédente. Voici le code
if intradaybarindex = 0 then
result = high
else
result = highest[intradaybarindex](high)
endif
return result
Sur les 4 premières semaines, tout fonctionne. Par contre par la suite la fonction me trouve des Plus Hauts Complétement irationnels !
Quelqu'un aurait il la gentillesse de m'expliquer ce qui ne va pas ?
Marc
Ps : photo du résultat est jointe
Je connais différents langage tel que l'assembleur, le C, VBA etc... donc peu de soucis de compréhension pour vos explications 800 x 600 pixels Cliquez sur l'image pour l'agrandir
|
|
Haut de la page |
| |
|
|
| |
| Envoyé par marcd le 06 Octobre 2005 à 19:36
|
|
|
Marc,
C'est bien le plus haut depuis l'ouverture du jour que tu recherches ?
__________________ Marc Defosse
|
|
Haut de la page |
| |
| Envoyé par player le 06 Octobre 2005 à 19:58
|
|
|
Bonjour,
Oui c'est bien ça. Je pourrais faire une boucle "For" toute simple mais le code dessus me paraît plus sensé, sauf qu'il ne fonctionne pas
|
|
Haut de la page |
| |
| Envoyé par marcd le 07 Octobre 2005 à 00:21
|
|
|
Salut player,
La fonction Highest prend en compte le nombre de barres que tu veux utiliser dans l'analyse.
Donc Highest[2](high)=> renvoie le plus haut des 2 dernieres barres
Highest[1](high) => Te renvoie High
Donc je dirai au global :
Highest[intradaybarindex + 1](High) => Sur le 2eme chandelier de chaque jour intradaybarindex = 1 et Highest[intradaybarindex + 1](High) => Highest[2](high)=>
Est-ce que ca marche pour toi ?
__________________ Marc Defosse
|
|
Haut de la page |
| |
| Envoyé par Invités le 07 Octobre 2005 à 12:04
|
|
|
Bonjour Marc,
******************************
Highest[1](high) => Te renvoie High
******************************
Ok, je ne pensait pas qu'il prenait en compte le High de la barre courante.
Mais voici 2 façon de procédés différentes, qui bien que identiques au niveau de la valeur du paramêtre x "highest[x](high)", me donne des résultats différents ???
******************************
if intradaybarindex = 1 then
resultat = highest[intradaybarindex + 1](high)
sera différent de :
resultat = highest[2](high)
endif
return resultat
******************************
Pourtant x, vaut 2 dans les deux cas ??
As tu une idée sur le pourquoi ?
Merci pour ton aide Marc
Marc
|
|
Haut de la page |
| |
| Envoyé par yanga le 07 Octobre 2005 à 12:58
|
|
|
|
|
Haut de la page |
| |
| Envoyé par marcd le 09 Octobre 2005 à 20:32
|
|
|
la je vois pas ca devrai etre effectivement la meme chose !
quel est la veleur retournee dans le cas 1 et dans le cas 2 ?
__________________ Marc Defosse
|
|
Haut de la page |
| |
| Envoyé par Aurel le 15 Décembre 2005 à 08:31
|
|
|
Bonjour,
Je souhaiterai obtenir la valeur la plus haute avant une certaine heure donnée :
IF TIME < 120000 then
haut = highest
ENDIF
Est ce que "haut" va bien prendre la valeur du maximum avant 12h00?
Merci d'avance
|
|
Haut de la page |
| |
| Envoyé par marcd le 15 Décembre 2005 à 10:52
|
|
|
ca depend de ton unite de temps. Il faut que tu fasses
if time = 120000 then
haut = highest[X](high)
ENDIF
ou X represente le nombre de barres entre l'ouverture et 12. Par exemple en chandelier 30mn sur 3 heures tu ecris
if time = 120000 then
haut = highest[6](high)
ENDIF
__________________ Marc Defosse
|
|
Haut de la page |
| |
| Envoyé par Aurel le 15 Décembre 2005 à 11:32
|
|
|
Merci,
Mais est ce qu'il n'est pas possible d'obtenir le plus haut sans avoir à compter le nombre de chandelier précédent. D'autant plus que ça marche si la valeur de time correspond à la fermeture d'un chandelier mais si je prends comme heure 12h05 avec des chandeliers de 30 min, est ce que ça va encore marcher ?
Si je reprends ton exemple :
if time = 120500 then
haut = highest[7](high)
ENDIF
Supposons que je sois en chandelier 30 min, je suppose que je dois mettre Highest[7], mais va-t-il bien s'arrêter à 12h05 et pas 12h30 étant donné que mon chandelier est en 30 min. (Je ne sais pas si je suis bien clair!).
De plus pourquoi faut il mettre (hight) après highest[7], highest ne signifie pas déjà le plus haut ?
Merci encore pour ton aide.
|
|
Haut de la page |
| |