Outil de conversion Mql2Mq4 Beta V0.2 - page 2

 

Avec un peu de travail, vous pouvez convertir mt2 en mt4 avec l'outil de yousky, le fichier joint a été converti avec sa version beta3, yousky est en train de corriger quelques bugs et aura bientôt la beta4. Mais pendant que vous attendez et que vous avez des ea intéressants dans mt3, utilisez son outil pour les convertir.

GReat outil yousky merci

Dossiers :
 

Aucun des coverters ne fonctionne, je les ai tous essayés. J'obtiens des erreurs dans la fenêtre du bas.

 

Fred,

vous devez prendre le temps de corriger les erreurs, le convertisseur fait la plupart du travail, mais il laisse dans le code qui n'est pas utilisé. Ce code doit être supprimé, et il y a un certain code dans mt3 qui n'est pas référencé, qui doit également être supprimé ou modifié, alors votre ea fonctionnera.

Le convertisseur fait 95% du travail, vous devez faire le reste.

 

Grand merci Foreverold pour votre aide .

Je dois dire que certains EA sont très mal codés, par exemple dans la syntaxe "while", ou "if" vous pouvez voir parfois un ou deux crochets qui ne sont pas utilisés par exemple :

if (StopLoss > 0)) then

Ici vous pouvez voir une parenthèse ouverte et 2 parenthèses fermées, dans MQL2 le compilateur ne donne pas d'erreur, mais dans MQL4 il y a des erreurs.

Donc Mql2Mq4 fonctionne un EA bien codé pour les autres vous devez faire des changements manuels.

Je vais améliorer mon outil, alors dites-moi ce qui ne fonctionne pas et j'espère les corriger.

Merci bye bye

 

salut yousky...

Merci beaucoup pour ce super outil

J'ai déjà converti le mql de dayimpuls pour le mq4, mais je ne comprends pas pourquoi il ne donne pas la même valeur...

Jetez un coup d'oeil, s'il vous plaît...

code mql

/*[[

Name := DayImpuls

Author := Copyright © 2005, HomeSoftware Corp.

Link := spiky@sinet.spb.ru

Notes := Èíäèêàòîð ïðåäíàçíà÷åí äëÿ îïðåäåëåíèÿ òåíäåíöèè ðûíêà çà ïîñëåäíèå 24 ÷àñà íà ãðàôèêàõ Ì15

Separate Window := Yes

First Color := Yellow

First Draw Type := Line

First Symbol := 217

Use Second Data := Yes

Second Color := Red

Second Draw Type := Line

Second Symbol := 218

]]*/

Input : per(14),d(100),porog(30);

Variables : shift(0),i(0),imp(0),mBar(0),trigger(0);

SetLoopCount(0);

// loop from first bar to current bar (with shift=0)

For shift=Bars-1 Downto 0 Begin SetIndexValue(shift,0);SetIndexValue2(shift,0); End; mBar=d*per;

for shift=mBar downto per Begin imp=0;

for i=shift downto shift-per Begin imp=imp+(O-C);end;

imp=round(imp/point);if imp==0 then imp=0.0001;

if imp!=0 then Begin imp=-imp;SetIndexValue(shift-per,imp);end;

if imp>0 then trigger=porog;if imp<0 then trigger=-porog;

SetIndexValue2(shift-per,trigger);end;

[/PHP]

and mq4 code

[PHP]

//+------------------------------------------------------------------+

//| DayImpuls.mq4

//+------------------------------------------------------------------+

#property copyright ""

#property link ""

#property indicator_separate_window

#property indicator_buffers 2

#property indicator_color1 Gold

//---- input parameters

extern int per=14;

extern int d=100;

extern int porog=30;

//---- buffers

double ExtMapBuffer1[];

double ExtMapBuffer2[];

//+------------------------------------------------------------------+

//| Custom indicator initialization function |

//+------------------------------------------------------------------+

int init()

{

//---- indicators

SetIndexStyle(0,DRAW_LINE);

SetIndexBuffer(0,ExtMapBuffer1);

SetIndexStyle(1,DRAW_LINE);

SetIndexBuffer(1,ExtMapBuffer2);

//----

return(0);

}

//+------------------------------------------------------------------+

//| Custor indicator deinitialization function |

//+------------------------------------------------------------------+

int deinit()

{

//----

//----

return(0);

}

//+------------------------------------------------------------------+

//| Custom indicator iteration function |

//+------------------------------------------------------------------+

int start()

{

int counted_bars=IndicatorCounted();

int shift,i;

double imp,mBar,trigger;

for(shift=Bars-1;shift>=0 ;shift--)

{

ExtMapBuffer1[shift]=0;

ExtMapBuffer2[shift]=0;

}

mBar=d*per;

for(shift=mBar;shift>=per ;shift--)

{

imp=0;

for(i=shift;i>=shift-per ;i--)

{

imp=imp+(Open-Close);

}

imp=MathRound(imp/Point);

if( imp == 0 ) imp=0.0001;

if( imp != 0 )

{ imp=-imp;

ExtMapBuffer1[shift-per]=imp;

}

if( imp>0 ) trigger=porog;

if( imp<0 ) trigger=-porog;

ExtMapBuffer2[shift-per]=trigger;}

return(0);

}

Je pense que tout est bon mais je ne comprends pas cette différence de valeurs.

merci beaucoup

 

Salut hellkas,

J'ai essayé de convertir votre code MQL2 en MQ4, et j'ai la même valeur pour la variable "per". C'était votre problème non ?

Vous avez posté tout le code de vos DayImpuls ?

 
yousky:
Bonjour Hellkas,

J'ai essayé de convertir votre code MQL2 en MQ4, et j'ai la même valeur pour la variable "per". C'était votre problème non ?

Vous avez posté tout le code de votre DayImpuls ?

J'ai mis le "per" à la même valeur (14)... Et mon code est là...

Jetez un coup d'oeil à ces images s'il vous plaît ?

Dossiers :
implus_mql.jpg  42 kb
implus_mq4.jpg  46 kb
 

Bonjour hellkas,

Votre problème est donc que vous n'avez pas le même résultat après conversion sur MT3 et MT4 ? Pouvez-vous poster votre version de MT3 et je la testerai après la conversion.

Merci

 
yousky:
Bonjour hellkas,

Votre problème est donc que vous n'avez pas le même résultat après la conversion sur MT3 et MT4 ? Pouvez-vous poster votre version de MT3 et je la testerai après la conversion.

Merci

Oui, c'est mon problème...

Merci...

Dossiers :
dayimpuls.mql  1 kb
 

Salut hellkas,

Je voudrais faire le même test que vous sur MT4 et MT3 mais je n'arrive pas à créer un compte démo sur MT3 :-( Il semble que le serveur "server.fxservice.com" ne soit pas bon :-( Pouvez-vous m'indiquer le bon serveur s'il vous plaît ?

Merci