Page 1 sur 2

Debutante EA - donner ne affiche pas

Publié : 16 déc. 2016, 21:58
par lucinda
Bonjour,

je debute dans la programmation EA,

et dans la visualisation du plus haut, plus bas de la veille... mon EA adpater du livre Henri Baltez ne me les renvoy pas...
le voici...

--------
int iDate;
double dPlusHaut;
double dPlusBas;
bool bRecuperation = False;

string debutMessage = "la valeur la plus haute est";
string finMessage = "et la valeur la bas haute est";
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int init()
{

return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
int Deinit()
{
Print(debutMessage,dPlusHaut, finMessage, dPlusBas);
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
int start()
{
if(bRecuperation==False)
{
iDate = Day();
dPlusHaut = iHigh(Symbol(),PERIOD_D1,1);
dPlusBas = iHigh(Symbol(),PERIOD_D1,1);
bRecuperation=True;


}
if(iDate!=Day())
bRecuperation = False;

return(INIT_SUCCEEDED);
----------

j ai essaye avec la boite message... celle si me donne qu'une des valeurs.

Pouvez-vous m'aider a trouver le pourquoi?!

merci

Re: Debutante EA - donner ne affiche pas

Publié : 16 déc. 2016, 23:39
par Jeff719
Bon, y a du boulot. 8)

Parce qu'il y a plein de soucis.

Cependant, au premier regard, je dirais que ça doit aller mieux ainsi :

dPlusBas = iLow(Symbol(),PERIOD_D1,1);

iHigh étant en l'occurrence une mauvaise idée. :mrgreen:

Le reste du code est dans l'ensemble assez... critiquable, mais bon si ça marche...

Re: Debutante EA - donner ne affiche pas

Publié : 17 déc. 2016, 16:42
par lucinda
Merci Jeff!!!

:D :D

Consciente, du boulot. :( :( Moi motivait!!! :D :D ...

Et meme si j'ai modifier le iLow (trés judicieux) ... toujous pas de valeurs trasmit... Comme on peu constater.

Re: Debutante EA - donner ne affiche pas

Publié : 17 déc. 2016, 22:52
par Trader55
Bon courage Jeff,

demandes lui une photo avant pour la motivation...

Re: Debutante EA - donner ne affiche pas

Publié : 18 déc. 2016, 12:03
par Jeff719
Eh oui, les grandes heures de trading automatique sont bien loin, quand il y avait 15 gus prêts à aider.

Les interventions en programmation se font rares ici malgré les membres compétents : Zechadoc, uXXar, neo-13... plein d'autres, il y a aussi Loverotten compétent et dynamique (j'ai avec lui un petit différent... sémantique en ce moment, mais c'est un autre sujet, qui va d'ailleurs vite se régler).

Sans doute une lassitude. On n'a plus envie de répondre. Parce que même quelqu'un de très compétent, de pro, va être environné de tous les ingrédients pour faire des EA qui ont toutes les chances d'être piteux sur le long terme... alors quand on voit un Newbee en programmation, à quoi bon ?

Et puis on a tout ce qu'on veut sur ForexFactory. Une fois pris l'habitude de lire et d'écrire en anglais, on constate aussi que concernant des articles de fond quantitatif il n'y a plus que de l'anglais...

Le plaisir de parler en français peut être, surtout quand c'est les vacances. :D

Re: Debutante EA - donner ne affiche pas

Publié : 18 déc. 2016, 12:59
par neo-13
Salut,
je ne sais pas où tu souhaites les afficher, mais si j'en juge ta copie d'écran, je pense que tu souhaites, via l'onglet EXPERT, t'assurer que tes variables ont bien les valeurs attendues.
Pour cela tu dois alors appeler Print().

Code : Tout sélectionner

if(bRecuperation==False)
{
iDate = Day();
dPlusHaut = iHigh(Symbol(),PERIOD_D1,1);
dPlusBas = iHigh(Symbol(),PERIOD_D1,1);
bRecuperation=True;
Print("PH: "+dPlusHaut);
Print("PB: "+dPlusBas);
}

Re: Debutante EA - donner ne affiche pas

Publié : 18 déc. 2016, 13:37
par Jeff719
Je suppose que de la façon dont est écrit l'EA, l'idée est de le faire afficher en remouvant à la main l'EA afin que le deinit() fasse son office de print. Et donc voir si on a bien attrapé les valeurs daily de la veille. Je suppose aussi que l'objet pédagogique est de mettre en œuvre les 3 fonctions d'accès à l'EA et de voir qu'elles fonctionnent effectivement.

Ça ne peut pas marcher.

Parce que deinit(), ça s'écrit deinit() et pas Deinit() :wink:



Ceci dit, comme on est en week end et qu'il faut recevoir au moins un tick pour que s'effectue l'acquisition des H et L, il vaut mieux mettre les iHigh et Ilow dans l'init().

Re: Debutante EA - donner ne affiche pas

Publié : 18 déc. 2016, 13:57
par neo-13
Tu as sans doute raison, car si on regarde sa copie d'écran il y a une ligne d'erreur pour un fichier .exe introuvable et par ailleurs son EA s'en trouve être "removed".
Mon print n'est donc pas la bonne réponse.

Re: Debutante EA - donner ne affiche pas

Publié : 18 déc. 2016, 14:15
par Jeff719
Hum... je ne crois pas. Il y a 30 secondes entre le message d'erreur puis le lancement effectif de l'EA. Il doit y avoir une compil entre les deux (quel que soit la raison pour laquelle l'EXE a été flingué ou flagé pas à jour - souvent on bidouille le source puis oublie la compil).

Sinon, il n'y aurait pas de load, pas d'init ni de desinit non plus.

Re: Debutante EA - donner ne affiche pas

Publié : 18 déc. 2016, 14:46
par Jeff719
neo-13 a écrit :Salut,
je ne sais pas où tu souhaites les afficher, mais si j'en juge ta copie d'écran, je pense que tu souhaites, via l'onglet EXPERT, t'assurer que tes variables ont bien les valeurs attendues.
Pour cela tu dois alors appeler Print().
Ceci dit, c'est aussi une bonne idée de mettre les print dans la réception des ticks. En effet si on veut s'amuser à laisser l'EA tourner et constater qu'à minuit (et des brouettes le temps de recevoir un tick) s'affiche les nouveaux HL daily, c'est le seul endroit où mettre les print. Pareil si on le lance en backtest.

Re: Debutante EA - donner ne affiche pas

Publié : 18 déc. 2016, 15:24
par neo-13
Par contre, sauf erreur de ma part, si c'est un EA la fonction start n'existe pas, start est pour un indic, bien que maintenant c'est onCalculate, pour un EA c'est onTick ou onTimer.
Perso j'ai testé et ça fonctionne, j'ai bien le H-1 et le L-1.

Re: Debutante EA - donner ne affiche pas

Publié : 18 déc. 2016, 15:33
par Jeff719
Oui tu as raison. Mais j'attend que notre élève ait lu les posts précédents avant de faire un petit exposé concernant la révolution des builds 600 (sinon on comprend rien). :wink:

Ça marche parce que la compatibilité ascendante est maintenue.

Re: Debutante EA - donner ne affiche pas

Publié : 19 déc. 2016, 10:50
par lucinda
Bonjour

Je vous remercie pour vos differents outils, intervention, trés utile...

J'ai donc reecrit la fonction deinit() correctement, et il affiche valeurs.
Des fautes innatention :oops:

Je tient aussi a m'excuse... si francais pas toujours correct, j'ai eux trés peu de cours en francais. je suis pas francaise... et j'avoue que pas toujours evident.

Ah!!! oui... plusieurs removed et loaded, car je realisée quelques changements.

merci a tous.

Et a bientot :wink:

Re: Debutante EA - donner ne affiche pas

Publié : 19 déc. 2016, 12:52
par Trader55
Debutante pip aurait été plus motivant pour aider ;)

Re: Debutante EA - donner ne affiche pas

Publié : 19 déc. 2016, 15:46
par Loverotten
Non mais HOOOOO les Gars !! Réveillez vous bordel !!!

Lucinda ? Mais c'est quoi ce délire sérieux vous marchez à fond dans ces conneries, que dis-je, VOUS COURREZ !!

Pas française mais, les accents sont parfois respectés et parfois non, les virgules bien placées, et MT4 qui n'est pas dans la langue maternelle de la demoiselle alors qu' "elle" a le choix...

Pour moi ça sonne faux direct mais bon, peut être que je me trompe. Prenez quand même le temps 5 minutes d'observer les dernières lignes de ce fantasme ambulant... Vous verrez ya un truc zarby...

A+.
Thierry.

Re: Debutante EA - donner ne affiche pas

Publié : 19 déc. 2016, 16:10
par Loverotten
Ce que je veux dire c'est qu'une femme serait certainement moins à l'aise que ça surtout dans un milieu d'hommes. Je doute aussi fortement qu'elle mettrait des smilley ect...

La femme par nature se sent toujours un peu "diminuée" par rapport à l'homme, donc si elle intervient dans un milieu masculin comme le Forex, elle souhaiterait paraitre la plus sérieuse possible.

Enfin c'est juste mon avis. Pour moi 400 contre 1 que c'est un mec. (oui levier de 400 :mrgreen: ).

Bon j'arrete de me la jouer rabajoie... Imaginons là comme ça :
fille.jpg
A+.
Thierry. :mrgreen: :mrgreen: :mrgreen:

Re: Debutante EA - donner ne affiche pas

Publié : 19 déc. 2016, 16:54
par Trader55
Loverotten a écrit :Non mais HOOOOO les Gars !! Réveillez vous bordel !!!

Pas française mais, les accents sont parfois respectés et parfois non
Le problème quand on fait des fautes de Français c'est qu'on pense que les autres n'en font pas.

Ainsi il y a des fautes d'accents partout, trés en fait s'écrit très.

Maintenant, ce n'était que de l'humour . Que Lucinda soit portugaise , bulgare, poilue comme Leonarda ou soit un travelo, on s'en fout. :)

Re: Debutante EA - donner ne affiche pas

Publié : 19 déc. 2016, 17:02
par Loverotten
C'est sure on s'en fout mais j'avais envie de souligner ce fait, pour moi c'est certainement pas une femme...

A+.
Thierry.

Re: Debutante EA - donner ne affiche pas

Publié : 19 déc. 2016, 17:47
par neo-13
Ca c'est vraiment le type de question que je ne me pose pas quand je souhaite aider. Et se la poser est vraiment une perte de temps.

Re: Debutante EA - donner ne affiche pas

Publié : 19 déc. 2016, 17:53
par Loverotten
Ça va c'est pas la peine d'en faire tout un foin, j'ai rien dit de mal. Juste un p'tit soupçon basta.

Pas la peine d’être aussi sérieux c'est une période de fête nan ?
Prendre les choses un peu à la légère c'est bon parfois aussi...

PS : Ça m'étonne un peu que personne ne parle de la bombe atomique que j'ai poster plus haut... :mrgreen:

A+.
Thierry.

Re: Debutante EA - donner ne affiche pas

Publié : 19 déc. 2016, 19:46
par neo-13
Oui tu as raison, pour ce qui est d'être bien, c'est la fête, et c'est un truc que tu devrais t'appliquer, car je ne vois pas où je t'ai agressé?
Désolé si tu t'es senti agressé, ça n'était pas le but.

Re: Debutante EA - donner ne affiche pas

Publié : 19 déc. 2016, 19:57
par Loverotten
Mais ne t'excuse pas, je t'en prie. Je ne me suis pas du tout senti agresser.

Le problème de l'écriture c'est qu'on ne peux pas mettre le ton comme au téléphone par exemple... Donc parfois les propos sont mal interprétés.

Pourtant c'est facile de sentir quand une personne est sérieuse ou quand c'est plus léger nan ?...
Ma foi...

Bref, je ne vais plus vous dérangez avec mes conneries, continuer d'aller au secours de cette pauvre fille perdu dans le MQL.

Re: Debutante EA - donner ne affiche pas

Publié : 22 déc. 2016, 11:59
par Jeff719
Eh oui, il est loin le temps des grandes heures de trading automatique. En fait on a vu une évolution progressive.

Stade 1) - Face à une question de débutant programmeur, les gens se bousculent pour donner des réponses
Stade 2) - Les réponses se font plus rares, une lassitudes sans doute, ainsi que des échecs répétés dans la confection d'EA
Stade 3) - Les débutants posent des questions. Pas de réponse ou presque, parfois, rarement.
Stade 4) - C'est le stade supérieur, quand des fâcheux viennent se foutre de la gueule tant du newbie que de ceux qui essayent de l'aider.



Nous en sommes au Stade 4. :roll:

Re: Debutante EA - donner ne affiche pas

Publié : 23 déc. 2016, 08:58
par Jeff719
A l'occasion, précisons qu'il existe un gros piège. Depuis 2013, les fonctions d'appel des EA ont changé. Comme il y a plein de sources existant on peut tout aussi bien tomber sur une ancienne mouture qui fonctionne au prix de modifications mineures.
OLD : init(), start() and deinit() entry points may have any parameters and any return type

NEW : OnInit(), OnTick(), OnDeinit() should exactly match their signatures
Inutile de dire qu'il faut écrire nouvelle mouture. L'ancienne à la rigueur pour regarder vite fait un vieux source.

Re: Debutante EA - donner ne affiche pas

Publié : 23 déc. 2016, 11:16
par Trader55
Jeff719 a écrit :A l'occasion, précisons qu'il existe un gros piège. Depuis 2013, les fonctions d'appel des EA ont changé. Comme il y a plein de sources existant on peut tout aussi bien tomber sur une ancienne mouture qui fonctionne au prix de modifications mineures.
OLD : init(), start() and deinit() entry points may have any parameters and any return type

NEW : OnInit(), OnTick(), OnDeinit() should exactly match their signatures
Inutile de dire qu'il faut écrire nouvelle mouture. L'ancienne à la rigueur pour regarder vite fait un vieux source.
Je me demande si le compilateur ne corrige pas automatiquement ?