Выпущена бета-версия MetaTrader 4 Build 529 с новым компилятором - страница 19

 
tara:

Младен, мне проще ответить по-русски, тем более, что Вы свободно читаете.

Вот мое решение этой проблемы. В код init() включаю функцию ReInit(), которая повторно инициализирует те глобальные переменные, значения которых должны быть восстановлены при смене таймфрейма, или символа:

Он о другом. Теряется строковое значение из extern-переменной при смене символа/ТФ графика.
 
komposter:
Он о другом. Теряется строковое значение из extern-переменной при смене символа/ТФ графика.
Ну да. Это однозначно баг.
 
komposter:
Он о другом. Теряется строковое значение из extern-переменной при смене символа/ТФ графика.


Есть замечательное решение - наложить один баг на другой. Кривой Static спасет,- он в MQL инициализируется один раз - перед первым вызовом init() :)

ЗЫ Кстати, тогда это будут две фичи :)

 

Соберу немного из того, на что наткнулся сам (о многом уже говорили):

  1. Стрелочки открытия/закрытия при тестировании (и с визуализацией и без) создаются со временем = 0, поэтому не видны на графике. Линия от открытия до закрытия - есть.
  2. Тестер, окно настроек советника: При попытке указать параметру значение 0, ничего не происходит (остается старое значение). Если удалить введенное и нажать Ентер, получается 0.
  3. Отладка не работает (советник вылетает с "shutdown by timeout")
  4. start() (равно как и OnTick()) без RefreshRates в начале не обновляет предопределенные Bid и Ask.
  5. Иногда при перезапуске советника после перекомпиляции Bars возвращает что-то левое (меньше 100) (возможно, это тоже с RefreshRates связано)
И один краш словил, запуская тестирование. Ну, с ним вы сами разберетесь.
 
6. Слип в тестере "усыпляет" не историческое время, а реальное =)
 

Разъясните пожалуйста, почему отличаются результаты двух функций для копирования:

ArrayCopy (llow,Low);             и              ArrayCopySeries (llow,  1);

Читал справку, но все равно не доходит почему ArrayCopySeries() возвращает верный результат,а ArrayCopy нет.

Подскажите как реализовать копирование значение массива-таймсерии (пусть Low[]) в масcив llow в количестве Х но со сдвигом в Y баров.

ArrayCopy (llow, Low, Y, 0, X);

как-то не катит, оно то что-то делает, но не то что надо.

 

Не могу загрузить историю. Минутки загружает, а потом пишет, что файл неверный и остальную историю уже не пересчитывает.


Первый раз загрузил, получил такую ошибку, удалил всю историю нафиг, загрузил по-новой, та же песня. Что не так?

 
ALXIMIKS:

Разъясните пожалуйста, почему отличаются результаты двух функций для копирования:

Читал справку, но все равно не доходит почему ArrayCopySeries() возвращает верный результат,а ArrayCopy нет.

Подскажите как реализовать копирование значение массива-таймсерии (пусть Low[]) в масcив llow в количестве Х но со сдвигом в Y баров.

как-то не катит, оно то что-то делает, но не то что надо.

У вас хоть один вариант где-то (в старом МТ4 или в МТ5) работает?

 

Прошу разработчиков вернуться к рассмотрению мое заявки #751279

На мой взгляд самое время

 
ALXIMIKS:

Разъясните пожалуйста, почему отличаются результаты двух функций для копирования:

Читал справку, но все равно не доходит почему ArrayCopySeries() возвращает верный результат,а ArrayCopy нет.

Подскажите как реализовать копирование значение массива-таймсерии (пусть Low[]) в масcив llow в количестве Х но со сдвигом в Y баров.

как-то не катит, оно то что-то делает, но не то что надо.

Zhunko:

Да. Неприятность. :-(

Подозреваю, что "Предопределенные переменные" не имеют непрерывность данных, как в массивах. Наверно, это обращение к членам структур баров.

Получается, что "Предопределенные переменные" не являются массивами.
Причина обращения: