Старт распродаж! Черная пятница - 50%


Новые сообщения · Участники · Правила форума · Поиск · RSS · Вход · Регистрация ·

Страница 1 из 812378»
Форум трейдеров » Скрипты Советники Индикаторы для Metatrader4/Metatrader5 » MT 4 MQL программирование, помощь. » Новое поколение терминала МТ4 под новым билдом 574-584 (Помогите скомпилировать советник под новый билд 600)
Новое поколение терминала МТ4 под новым билдом 574-584

expforexДата: Вторник, 28.01.2014, 17:26 | Сообщение # 1
Главный Администартор
Группа: Администраторы
Сообщений: 8951
Награды: 29
Статус: Offline


[Бонусы за сообщения ]



Новое поколение терминала МТ4 под новым билдом 574

В данный момент идет бета-тестирование новой версии MetaTrader 4. Главной ее особенностью стало изменение языка программирования MQL4 - он был существенно доработан и приближен по функциональным возможностям к языку MQL5.

Будьте готовы к выходу свежего MetaTrader 4 с обновленным языком MQL4

Разумеется, мы приложили максимум усилий, чтобы обеспечить совместимость со старыми MQL4-программами, однако в редких случаях возможны накладки. Если при компиляции нового кода вы все же наткнулись на ошибки, обратитесь, пожалуйста, в соответствующую ветку форума.



Новый терминал МТ4 6хх (600-604-608) Решение проблем с советниками

3 февраля официально вышел новый терминал Метатрейдер 4 (MetaTrader 4) с абсолютно новым движком как самого терминала, так и языка программирования. За 1 неделю после выхода 578 билда - компания MetaQuotes обновила терминал до 604 билда.

Советники, ранее работавшие на терминале 509 билда - требуют тщательного вмешательства в свой код. Некоторые советники и индикаторы перестали работать? Не беда! Мы раскроем некоторые секреты редактирования старого кода, использования старых советников на новом билде, и собственно, покажем, как пользоваться новым терминалом.

Читать дальше




Программирование на заказ || Наши Разработки

 
Сообщение

Новое поколение терминала МТ4 под новым билдом 574

В данный момент идет бета-тестирование новой версии MetaTrader 4. Главной ее особенностью стало изменение языка программирования MQL4 - он был существенно доработан и приближен по функциональным возможностям к языку MQL5.

Будьте готовы к выходу свежего MetaTrader 4 с обновленным языком MQL4

Разумеется, мы приложили максимум усилий, чтобы обеспечить совместимость со старыми MQL4-программами, однако в редких случаях возможны накладки. Если при компиляции нового кода вы все же наткнулись на ошибки, обратитесь, пожалуйста, в соответствующую ветку форума.



Новый терминал МТ4 6хх (600-604-608) Решение проблем с советниками

3 февраля официально вышел новый терминал Метатрейдер 4 (MetaTrader 4) с абсолютно новым движком как самого терминала, так и языка программирования. За 1 неделю после выхода 578 билда - компания MetaQuotes обновила терминал до 604 билда.

Советники, ранее работавшие на терминале 509 билда - требуют тщательного вмешательства в свой код. Некоторые советники и индикаторы перестали работать? Не беда! Мы раскроем некоторые секреты редактирования старого кода, использования старых советников на новом билде, и собственно, покажем, как пользоваться новым терминалом.

Читать дальше



Автор - expforex
Дата добавления - 28.01.2014 в 17:26

expforexДата: Вторник, 28.01.2014, 17:28 | Сообщение # 2
Главный Администартор
Группа: Администраторы
Сообщений: 8951
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

Хотим обратить особое внимание на следующие моменты:
1) В новом билде изменилась файловая структура для хранения исходных кодов. Если ранее все MQL4 программы хранились в корневой папке Program Files\<каталог_установки_терминала>\, то теперь они должны находиться в папке Users\<каталог_данных>\MQL4\. Поэтому если в программе прописан абсолютный путь к тому или иному файлу, в компиляторе можно нарваться на сообщение об ошибке. Во избежание такой ситуации следует указать относительный путь в исходном коде и заново его перекомпилировать. Каталог данных открывается из меню "Файл -> Открыть каталог данных".

2) Все старые EX4 файлы, если их никоим образом не изменять, будут корректно работать и в новом терминале. Для сохранения совместимости используется копия исполнимой среды предыдущей версии MQL4 - таким образом обеспечивается работоспособность всех старых кодов. 
Подробнее обо всех изменениях в новом билде MetaTrader 4 вы можете узнать здесь. Настоятельно рекомендуем внимательно ознакомиться с указанным материалом.



Программирование на заказ || Наши Разработки

 
СообщениеХотим обратить особое внимание на следующие моменты:
1) В новом билде изменилась файловая структура для хранения исходных кодов. Если ранее все MQL4 программы хранились в корневой папке Program Files\<каталог_установки_терминала>\, то теперь они должны находиться в папке Users\<каталог_данных>\MQL4\. Поэтому если в программе прописан абсолютный путь к тому или иному файлу, в компиляторе можно нарваться на сообщение об ошибке. Во избежание такой ситуации следует указать относительный путь в исходном коде и заново его перекомпилировать. Каталог данных открывается из меню "Файл -> Открыть каталог данных".

2) Все старые EX4 файлы, если их никоим образом не изменять, будут корректно работать и в новом терминале. Для сохранения совместимости используется копия исполнимой среды предыдущей версии MQL4 - таким образом обеспечивается работоспособность всех старых кодов. 
Подробнее обо всех изменениях в новом билде MetaTrader 4 вы можете узнать здесь. Настоятельно рекомендуем внимательно ознакомиться с указанным материалом.

Автор - expforex
Дата добавления - 28.01.2014 в 17:28

expforexДата: Четверг, 30.01.2014, 21:09 | Сообщение # 3
Главный Администартор
Группа: Администраторы
Сообщений: 8951
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

Некоторые способы решения проблем с новым билдом для старых экспертов

1. Декомпилы скорее всего больше не будут работать больше нигде.
2. в самом начале любого эксперта пропишите код #property strict
3. Новое расположение файлов теперь они находятся в папке Ваш терминал - MQL4
4. Пример в картинках: 
Открываете терминал - Меню файл - Открыть каталог данных - папка MQL4 - в ней уже подпапки с экспертами индикаторами скриптами







4. В новом программном языке при компиляции у Вас будет море предупреждений. Они не влияют на работу эксперта. А относятся лишь к новому языку и помогают вовремя устранить неполадка.

5. Если эксперт не виден в навигаторе, Терминал можно попробовать запустить от имени администратора



Варианты чтобы Ваша папка была локальной. 

1. "D:\Forex\FX Start\MetaTrader4\terminal.exe" /portable - если в пути до проги есть пробелы
2. D:\Forex\Alpari\MetaTrader4\terminal.exe /portable - если пробелов в пути до файла нет
Таким образом общая схема такая - Путь до проги + пробел + "/" + ключ (portable)...

Прикрепления: 3035092.png(86Kb) · 0742850.png(94Kb) · 7440849.png(27Kb) · 2737596.png(33Kb)


Программирование на заказ || Наши Разработки

 
СообщениеНекоторые способы решения проблем с новым билдом для старых экспертов

1. Декомпилы скорее всего больше не будут работать больше нигде.
2. в самом начале любого эксперта пропишите код #property strict
3. Новое расположение файлов теперь они находятся в папке Ваш терминал - MQL4
4. Пример в картинках: 
Открываете терминал - Меню файл - Открыть каталог данных - папка MQL4 - в ней уже подпапки с экспертами индикаторами скриптами







4. В новом программном языке при компиляции у Вас будет море предупреждений. Они не влияют на работу эксперта. А относятся лишь к новому языку и помогают вовремя устранить неполадка.

5. Если эксперт не виден в навигаторе, Терминал можно попробовать запустить от имени администратора



Варианты чтобы Ваша папка была локальной. 

1. "D:\Forex\FX Start\MetaTrader4\terminal.exe" /portable - если в пути до проги есть пробелы
2. D:\Forex\Alpari\MetaTrader4\terminal.exe /portable - если пробелов в пути до файла нет
Таким образом общая схема такая - Путь до проги + пробел + "/" + ключ (portable)...

Автор - expforex
Дата добавления - 30.01.2014 в 21:09

expforexДата: Воскресенье, 02.02.2014, 19:28 | Сообщение # 4
Главный Администартор
Группа: Администраторы
Сообщений: 8951
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

Метаквотс - сделала, чтобы эксперты автоматически раскидывались по нужным папкам!!!

Версия последняя 584 - глюков пока много.



Программирование на заказ || Наши Разработки

 
СообщениеМетаквотс - сделала, чтобы эксперты автоматически раскидывались по нужным папкам!!!

Версия последняя 584 - глюков пока много.

Автор - expforex
Дата добавления - 02.02.2014 в 19:28

sdДата: Воскресенье, 02.02.2014, 20:46 | Сообщение # 5
Трейдер - Рядовой
Группа: Пользователи
Сообщений: 1
Награды: 0
Статус: Offline


[Бонусы за сообщения ]

Спасибо. все толково

 
СообщениеСпасибо. все толково

Автор - sd
Дата добавления - 02.02.2014 в 20:46

burgboshДата: Понедельник, 03.02.2014, 00:35 | Сообщение # 6
Трейдер - Лейтенант
Группа: Пользователи
Сообщений: 58
Награды: 0
Статус: Offline


[Бонусы за сообщения ]

Проблема с компиляцией,раньше всё работало на новом mt4 не хочет,пытался исправить ошибку ни чего не вышло.

Прикрепления: tga.mq4(32Kb)
 
СообщениеПроблема с компиляцией,раньше всё работало на новом mt4 не хочет,пытался исправить ошибку ни чего не вышло.

Автор - burgbosh
Дата добавления - 03.02.2014 в 00:35

expforexДата: Понедельник, 03.02.2014, 00:45 | Сообщение # 7
Главный Администартор
Группа: Администраторы
Сообщений: 8951
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

Цитата burgbosh ()
Проблема с компиляцией,раньше всё работало на новом mt4 не хочет,пытался исправить ошибку ни чего не вышло.


switch(MarketInfo(Symbol(),MODE_MINLOT))     
{      
case 0.001:         digits=3;         break;      
case 0.01:         digits=2;         break;      
case 0.1:         digits=1;         break;      
case 1.0:         digits=0;    
}'

MarketInfo' - illegal switch expression type tga.mq4
98 11'0.001' - constant expression is not integral tga.mq4
100 12'0.01' - constant expression is not integral tga.mq4
103 12'0.1' - constant expression is not integral tga.mq4
106 12'1.0' - constant expression is not integral tga.mq4
109 12

заменил на
double minlot=MarketInfo(Symbol(),MODE_MINLOT);

if(minlot== 0.001)         gd_204=3;
if(minlot== 0.01)         gd_204=2;
if(minlot== 0.1)         gd_204=1;
if(minlot== 1)         gd_204=0;

все работает.

Прикрепления: tga_edit.mq4(32Kb)


Программирование на заказ || Наши Разработки

 
Сообщение
Цитата burgbosh ()
Проблема с компиляцией,раньше всё работало на новом mt4 не хочет,пытался исправить ошибку ни чего не вышло.


switch(MarketInfo(Symbol(),MODE_MINLOT))     
{      
case 0.001:         digits=3;         break;      
case 0.01:         digits=2;         break;      
case 0.1:         digits=1;         break;      
case 1.0:         digits=0;    
}'

MarketInfo' - illegal switch expression type tga.mq4
98 11'0.001' - constant expression is not integral tga.mq4
100 12'0.01' - constant expression is not integral tga.mq4
103 12'0.1' - constant expression is not integral tga.mq4
106 12'1.0' - constant expression is not integral tga.mq4
109 12

заменил на
double minlot=MarketInfo(Symbol(),MODE_MINLOT);

if(minlot== 0.001)         gd_204=3;
if(minlot== 0.01)         gd_204=2;
if(minlot== 0.1)         gd_204=1;
if(minlot== 1)         gd_204=0;

все работает.

Автор - expforex
Дата добавления - 03.02.2014 в 00:45

burgboshДата: Понедельник, 03.02.2014, 00:54 | Сообщение # 8
Трейдер - Лейтенант
Группа: Пользователи
Сообщений: 58
Награды: 0
Статус: Offline


[Бонусы за сообщения ]

Спасибо! ошибок как и не бывало. А  3 warning это о чём предуприждение?

 
СообщениеСпасибо! ошибок как и не бывало. А  3 warning это о чём предуприждение?

Автор - burgbosh
Дата добавления - 03.02.2014 в 00:54

expforexДата: Понедельник, 03.02.2014, 01:01 | Сообщение # 9
Главный Администартор
Группа: Администраторы
Сообщений: 8951
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

да всякие предупреждения

декомпилы говорят вообще работ ать перестанут.

function must return a value tga.mq4 581 39
check operator precedence for possible error; use parentheses to clarify precedence tga.mq4 874 31
check operator precedence for possible error; use parentheses to clarify precedence tga.mq4 874 31



Программирование на заказ || Наши Разработки

 
Сообщениеда всякие предупреждения

декомпилы говорят вообще работ ать перестанут.

function must return a value tga.mq4 581 39
check operator precedence for possible error; use parentheses to clarify precedence tga.mq4 874 31
check operator precedence for possible error; use parentheses to clarify precedence tga.mq4 874 31

Автор - expforex
Дата добавления - 03.02.2014 в 01:01

expforexДата: Понедельник, 03.02.2014, 01:02 | Сообщение # 10
Главный Администартор
Группа: Администраторы
Сообщений: 8951
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

проверить приоритет операций для возможной ошибки; использовать скобки для уточнения приоритет



Программирование на заказ || Наши Разработки

 
Сообщениепроверить приоритет операций для возможной ошибки; использовать скобки для уточнения приоритет

Автор - expforex
Дата добавления - 03.02.2014 в 01:02
Форум трейдеров » Скрипты Советники Индикаторы для Metatrader4/Metatrader5 » MT 4 MQL программирование, помощь. » Новое поколение терминала МТ4 под новым билдом 574-584 (Помогите скомпилировать советник под новый билд 600)
Страница 1 из 812378»
Поиск:


WebMoney Яндекс цитирования.