Mql2Mq4 Conversion Tool Beta V0.2 - страница 2

 

С небольшой работой вы можете конвертировать mt2 в mt4 с помощью инструмента Юски, прилагаемый файл был конвертирован с его бета3 версией, Юски исправляет несколько ошибок и скоро выпустит бета4. Но пока вы ждете и у вас есть интересные ea в mt3, используйте его инструмент для их конвертации.

Отличный инструмент yousky спасибо

Файлы:
 

Ни один из кавертеров не работает, я перепробовал их все. Я получаю ошибки в нижнем окне.

 

Фред,

вы должны потратить время на исправление ошибок, конвертер делает большую часть работы, но оставляет код, который не используется. Этот код должен быть удален, и в mt3 есть код, на который нет ссылок, который также должен быть удален или изменен, тогда ваша ea будет работать.

Конвертер делает 95% работы, вы должны сделать все остальное.

 

Большое спасибо Foreverold за вашу помощь .

Я должен сказать, что некоторые советники очень плохо закодированы, например, в синтаксисе "while" или "if" вы можете видеть иногда одну или две скобки, которые не используются, например:

if (StopLoss > 0)) then

Здесь вы видите один открытый брекет и 2 закрытых брекета, в MQL2 компилятор не выдает ошибки, а в MQL4 ошибки есть.

Так что Mql2Mq4 работает советник хорошо закодирован, для других нужно вносить изменения вручную.

Я буду улучшать свой инструмент, так что скажите мне, что не работает, и я надеюсь исправить их.

Спасибо, до свидания

 

Привет, Юски.

Большое спасибо за этот замечательный инструмент.

Я уже конвертировал dayimpuls mql для mq4, но я не понимаю, почему он не дает то же значение...

Посмотрите, пожалуйста...

код 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);

}

Я думаю, что все хорошо, но я не понимаю этой разницы в значениях.

большое спасибо

 

Привет, hellkas,

Я попытался преобразовать твой MQL2 код в MQ4, и у меня получилось такое же значение для переменной "per". Это была твоя проблема, нет?

Вы выложили весь код вашего DayImpuls?

 
yousky:
Привет, Хелкас,

Я попытался преобразовать ваш код MQL2 в MQ4, и у меня получилось такое же значение для переменной "per". Это была ваша проблема, нет?

Вы выложили весь код вашего DayImpuls?

Я поместил "per" в то же значение (14)... И в моем коде все на месте...

Посмотрите, пожалуйста, на эти картинки.

Файлы:
implus_mql.jpg  42 kb
implus_mq4.jpg  46 kb
 

Здравствуйте, hellkas,

Значит, ваша проблема в том, что у вас нет одинакового результата после конвертации на MT3 и MT4? Не могли бы вы выложить вашу версию MT3 и я протестирую ее после конвертации.

Спасибо

 
yousky:
Здравствуйте, hellkas,

Значит, ваша проблема в том, что у вас нет одинакового результата после конвертации на MT3 и MT4? Можете выложить свою версию MT3 и я проверю ее после конвертации.

Спасибо

Да, это моя проблема...

Спасибо.

Файлы:
dayimpuls.mql  1 kb
 

Привет, hellkas,

Я хотел бы сделать тот же тест, что и вы на MT4 и MT3, но я не могу создать демо-счет на MT3 :-( Кажется, что сервер "server.fxservice.com" не очень хороший :-( Можете ли вы сказать мне хороший сервер, пожалуйста?

спасибо

Причина обращения: