Ошибки, баги, вопросы - страница 1995

 
fxsaber:

Напакостить на MQL5 без возможности на том же MQL5 исправить можно следующим образом.

Через ChartSaveTemplate создаем шаблоны, пока диск не забьется. А удалить их... никак!

Предлагаете добавить другую пакость - удаление шаблонов?
 
Slava:
Предлагаете добавить другую пакость - удаление шаблонов?

Какое-то соломоново-решение все равно нужно. Потому как советник может наплодить в папке всяких ненужных шаблонов с десяток/другой и использование терминала руками станет дискомфортным.


ЗЫ Разделить папки для ручных шаблонов и автоматических. Автоматическая папка на полном доступе. Ручная - только на ручном.

 
Slava:
Предлагаете добавить другую пакость - удаление шаблонов?

Разрешите сохранять шаблоны в files\\любой каталог  вот и все, У меня то же проблемы с шаблонами....

 
fxsaber:

Поясните.

поясняю - только что сделал 2 теста одного и того же советника на периоде в 7 лет по всем тикам - наблюдаю в первом случае на 3 сделки меньше. тестирую еще раз - получаю такие же сделки как и в в тесте по OHLC M1

Вот у меня и проблема. Разнятся тесты. Вчера тестировал на своих серверах - получил одни результаты, потом в одиночном прогоне другие сделки. Как такое может быть? Индикаторы не использую - только цены свечек h1

 
К разработчикам вопрос. Когда планируется метатрейдеру дать возможность графики отделять от программы? В большинстве других программ есть уже давно. У меня 3 монитора - очень не удобно. Приходится параллельно скачивать еще 2 терминала, а это кстати доп нагрузка на сервера брокера
 
Anton Ohmat:

поясняю - только что сделал 2 теста одного и того же советника на периоде в 7 лет по всем тикам - наблюдаю в первом случае на 3 сделки меньше. тестирую еще раз - получаю такие же сделки как и в в тесте по OHLC M1

Вот у меня и проблема. Разнятся тесты. Вчера тестировал на своих серверах - получил одни результаты, потом в одиночном прогоне другие сделки. Как такое может быть? Индикаторы не использую - только цены свечек h1

Извините - ошибка в моем коде. Но возник вопрос все-таки. 

Получается я столкнулся с такой проблемой. Объявил массив bool на 13 элементов и не правильно сделал ArayFill(массив,0,12 вместо 13, true). Получучилось что 13 элемент массива 2-3 запуска true, а потом 2-3 запуска false.

Поидее элементы bool массива по умолчанию должны быть false всегда. Правильно же?

 
Anton Ohmat:

Извините - ошибка в моем коде. Но возник вопрос все-таки. 

Получается я столкнулся с такой проблемой. Объявил массив bool на 13 элементов и не правильно сделал ArayFill(массив,0,12 вместо 13, true). Получучилось что 13 элемент массива 2-3 запуска true, а потом 2-3 запуска false.

Поидее элементы bool массива по умолчанию должны быть false всегда. Правильно же?

В mql5 это отдано на откуп программиста. В этом случае можно использовать ArrayInitialize(массив, true) или так ArayFill(массив,0,ArraySize(массив), true)

 
Anton Ohmat:

Извините - ошибка в моем коде. Но возник вопрос все-таки. 

Получается я столкнулся с такой проблемой. Объявил массив bool на 13 элементов и не правильно сделал ArayFill(массив,0,12 вместо 13, true). Получучилось что 13 элемент массива 2-3 запуска true, а потом 2-3 запуска false.

Поидее элементы bool массива по умолчанию должны быть false всегда. Правильно же?

Мусор там должен быть. Это как раз тот самый случай

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Ошибки, баги, вопросы

fxsaber, 2017.09.10 17:17

Конечно, нужно исключить фактор собственной глупости. Например, что советник не работает рэндомно.

Предлагаю модераторам добавить предупреждение о подобной рэндомности в пояснение к Документации тестера, почему разнятся результаты.
 
Vladimir Pastushak:

Разрешите сохранять шаблоны в files\\любой каталог  вот и все

Кто мешает?

ChartSaveTemplate(chart_id,"\\Files\\MyPreferredTemplates\\cewl.tpl");

 
Alexey Viktorov:

В mql5 это отдано на откуп программиста. В этом случае можно использовать ArrayInitialize(массив, true) или так ArayFill(массив,0,ArraySize(массив), true)

Задумался, а правильно ли это, раз порождает такие на самом деле ОЧЕНЬ сложно выявляемые ошибки.

Сам факт-то, что программа работает неправильно крайне тяжело уловить. Потом для выяснения причин нужно добиться воспроизведения ошибочности, а это не менее тяжело. И затем откопать в огромном коде не полноценную инициализацию какой-нибудь переменной - жуть. Warnings очень помогают с этим. Но только простые случаи. Такие же, как инициализация не на весь массив нереально проверить на стадии компиляции.