|
| Envoyé par trader2005 le 05 Août 2005 à 23:57
|
|
|
salut marc
je m'interesse depuis peu à L'EL, j'ai d'ailleurs acheté ton guide de réference que je trouve tres complet et pédagogique.
malheuresement il ya beaucoup de point qui reste encore flou pour moi par exemple:
cpteur qui stocke le nombre de barre depuis le dernier chandelier de retournement
variable: compteur(-1)
if compteur <>-1 then
compteur=compteur+1;
if low<low(1) AND close>High(1) then
compteur=0
pkoi on initialise le compteur a -1 et pas à 1 et je n'est pas compris l'utilité de l'incrementation, et enfin pkoi il stocke la valeur 0
merci pour ton aide
|
|
Haut de la page |
| |
|
|
| |
| Envoyé par marcd le 06 Août 2005 à 10:49
|
|
|
Bonjour trader2005,
Merci pour le commentaire sympathique sur le document ca fait plaisir. Un livre sur les systemes de trading est en preparation mais "patience et longueur de temps ,..." donc pas avant decembre.
Pour le compteur, hors du contexte c'est un peu difficile de repondre exactement. Je vais repondre de maniere generale. Imagine que tu veuilles acheter a la 4eme barre suivant un chandelier d'avalement haussier.
Tu definis d'abord un compteur qui va s'initialiser a 0 des que tu rencontres un chandelier d'avalement
if low<low(1) AND close>High(1) then
compteur=0
Maintenant tu incrementes ton compteur de 1 unite a chaque nouvelle barre (TradeStation evalue chaque barre les unes a pres les autres). Tu ne l'incrementes par contre que s'il est different de -1. En effet s'il est egal a -1 tu sais que tu n'as pas encore rencontre de chandelier d'avalement (sinon ton compteur serait a 0). Tu ecris donc
if compteur <>-1 then
compteur=compteur+1;
Et enfin, tu peux entrer en position a la 4eme barre suivant la figure d'avalement:
if compteur = 4 then
buy this bar on close;
Dans l'exemple que tu avais copie, les lignes
if compteur <>-1 then
compteur=compteur+1;
sont avant les lignes if low<low[1], etc car sinon tu incrementes ton compteur d'une unite meme sur la barre du chandelier d'avalement. Pour eviter cela et ne commencer a incrementer que sur la barre suivante tu positionnes l'incrementation du compteur avant.
J'espere que ca repond a la question
__________________ Marc Defosse
|
|
Haut de la page |
| |
| Envoyé par trader2005 le 06 Août 2005 à 19:24
|
|
|
bonjour marc
oui je commence un peu a comprendre, mais c'est vrai qu'au debut c'est pas évident.
En fait on initialise le compteur à -1, mais on peut tres bien l'initialiser à -2 ou 3 c'est juste pour ne pas incrémenter le compteur quand on ne rencontre pas de chandelier d'avalement.
et quand on dit :
if compteur <>-1 then
compteur=compteur+1
on sous entend que le compteur est egale à o et on incremente de 1
(est ce que compteur <>-1 = compteur=o)
merci pour ton aide.
|
|
Haut de la page |
| |
| Envoyé par marcd le 08 Août 2005 à 12:45
|
|
|
Salut Trader2005,
les compteurs c'est jamais evident! ... mais tu as tout fait raison. On peut initialiser le compteur a -2, -3 ou -1499 ca n'a aucune importance.
Par contre quand on dit :
if compteur <>-1 then
compteur=compteur+1
on ne sous entend pas forcement que le compteur est egale à 0 et on incremente de 1
(est ce que compteur <>-1 = compteur=0) NON.
Le compteur peut etre egal a 0 ou a n'importe quel autre nombre superieur a 0. Si on reprend notre exemple, chaque fois (et non pas uniquement la premiere fois) que EasyLanguage reconnait une figure de type Avalement Haussier, il remet le compteur a 0. Puis sur chaque barre suivante il incremente le compteur de 1 jusqu'a rencontrer a nouveau un avalement haussier. A cet instant il remet le compteur a 0.
Ainsi dans notre exemple, compteur = -1 a l'initialisation (sur la 1ere barre). Compteur est egal a 0 chaque fois qu'il rencontre une figure de type avalement haussier. Et entre 2 figures de type Avalement Haussier le compteur stocke le nombre de barres depuis le dernier avalement haussier.
Est ce que c'est plus clair ?
__________________ Marc Defosse
|
|
Haut de la page |
| |
| Envoyé par trader2005 le 08 Août 2005 à 14:09
|
|
|
bonjour marc
oui maintenant c'est clair.
mais c'est vrai que tout seul je n'y serait jamais arrivé.
je te propose d'étudier de temps en temps des codes voir des systemes entiers pour les décortiquer et comprendre comment on les a bati, ca peut etre interssant pour moi et pour d'autres personnes qui debute ou qui s'interesse à la programmation?
|
|
Haut de la page |
| |
| Envoyé par trader2005 le 09 Août 2005 à 13:44
|
|
|
salut marc
je souhaite construire un systeme qui qui sort de la position acheteuse toujours 5 bars apres que cette derniere est lieu.
est ce que je dois utiliser un compteur ou ya t il un mot résérvé.
merci pour ton aide
|
|
Haut de la page |
| |
| Envoyé par marcd le 09 Août 2005 à 14:02
|
|
|
Bonne question.
Pourquoi ne pas utiliser le mot cle BarsSinceEntry qui fait exactement cela ?
Editer par marcd sur 09 Août 2005 à 14:03
__________________ Marc Defosse
|
|
Haut de la page |
| |
| Envoyé par trader2005 le 09 Août 2005 à 17:14
|
|
|
ok ca va etre plus simple
|
|
Haut de la page |
| |
| Envoyé par trader2005 le 11 Août 2005 à 21:20
|
|
|
salut marc
j'ai construit ce code basé sur une strategie simple de croisement e moyennes mobiles avec un systeme de stop.
mais lors de la verification le mot entryprice n'est pas reconnu et je n'arrive pas a corriger le probleme il ya surement une erreur au niveau de la structure du code.
inputs:price(close),fastlength(9),slowlength(18),dollarrisk( 150);
vars:riskcalc(0),orderprice(0);
value1=average(close,9)
value2=average(close,18)
condition1=value1 crosses above value2
if condition1 then buy("dragon") this bar on close
and
riskcalc=dollarrisk/current contract;
orderprice=entryprice-riskcalc;
sell next bar at orderprice stop;
end;
merci de bien vouloir me mettre sur la piste.
|
|
Haut de la page |
| |
| Envoyé par trader2005 le 11 Août 2005 à 23:03
|
|
|
autre petite question
que signifie le mot "PositionBasis"
|
|
Haut de la page |
| |