Новая версия платформы MetaTrader 5 build 2485: улучшения в iCustom и общая оптимизация в MQL5 - страница 13

 

Изменил код до минимально возможного, что то опять не соответствие началось.
Сдвига не должно быть, а если принудительно сдвинуть Shift +1, то не совсем точно сходятся линии.
Возможно всё это напрямую зависит от некорректного масштабирования, который сейчас имеется, или я что то всё же упустил.

 


Добавлено.
rates_total-1 не помогает для сдвига.

Ещё заметил, может это тоже важно.
На выходных, когда рынок закрыт и не поступают тики, заметен возможный баг.
В настройках терминала Макс. баров в окне 100 000
Закрыл терминал не удаляя индикатор с графика, и запустил терминал снова.
При первом запуске в комменте видно rates_total-1 равен 98820,
и видна некорректность линии цены и индикатора.



Так как на выходных тики не поступают, через меню ПКМ нажимаю Обновить.
rates_total-1 изменился на 100252, некорректность линии цены и индикатора не изменились.


Прокручиваю колесом мышки график в сторону, график улетает на произвольную дату для отображения.
Кручу колесо на начало графика, начальная некорректность исчезла, но нарушен сдвиг.

 

Такое подозрение, что есть некорректное обращение к данным кастомного символа, при первом запросе, синхронизации и т.д.
На старте  rates_total-1 был  98820
На первом тике (имитированный кнопкой Обновить)  rates_total-1  стал  100252

Файлы:
 

2489. У меня данный код робота статистики записывает в переменную значение баланса, а не максимальной просадки, хоть убей, раньше такого не было. 

double drawdown = AccountInfoDouble(ACCOUNT_BALANCE) - AccountInfoDouble(ACCOUNT_EQUITY);

double Maxdrawdown = NormalizeDouble(GlobalVariableGet("STAT_MaxDrawdown"),0);

if (Maxdrawdown < drawdown) GlobalVariableSet("STAT_MaxDrawdown", NormalizeDouble(drawdown,0)); 

Обнуляю вручную глобальную переменную, какое то время показывает правильно, затем опять записывает баланс.
 

Пока выходной и нет котировок, зафиксил на гифку.


 

Цвет слова group.


 

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

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

YanGillan, 2020.06.21 19:51

А куда слать багрепорты, чтобы на них отреагировали разработчики?

Начиная с какого-то релиза сломана компиляция шаблонных классов, вызывающих статические функции. Пример:

Класс Bar компилировался ранее и 64 битным и 32 битным MQL5. Сейчас выдает ошибку. build 2485 05 Jun 2020

class Foo {
public:
    static void Start() {
        Print("Hallo!");
    }
};

template<typename T>
class Bar {
public:
    Bar() {
        T::Start();
    }
};

class Foz {
public:
    Foz() {
    }

    void Start() {
        Print("Hallo!");
    }
};

template<typename T>
class Baz {
public:
    Baz() {
        T t;
        t.Start();                                                                                                                                                                                          
    }
};

void OnStart() {
    Bar<Foo> var;
    Baz<Foz> vaz;
}

template_static_bug.mq5 : information: compiling 'template_static_bug.mq5'
template_static_bug.mq5(12,12) : error 256: 'Start' - undeclared identifier
Result: 1 errors, 0 warning

 

В статусной строке тиковые объемы отображаются только в случае, если включены на чарте.


 

Компилятор снова сломан на обеих платформах . Этот код работал пару месяцев назад в MT5. Сейчас не работает.

ПРОТОКОЛ параметр шаблона не заменяется. Я использую прямое имя (CoreºFile) для родительских звонков не сбои

Но забавная вещь не работает в MT4 1264 также. Я использую метаредактор MT4 1262 для этого кода можно скомпилировать. Возможно, кто-нибудь из сотрудников даст письмо для отправки исходного кода? Теперь я не могу принять участие в какой-либо платформе из-за этого и просто испортил мои 4 года работы. Заранее благодарю


 

Баг в .mqproj

Добавлял папку с бинарными файлами в "Settings and files".

Затем удалил эти файлы на диске. Эксперт перестал запускаться в тестере, в логе "Tester file <NAME> open error [3]". 

Удалил папку из "Settings and files" проекта. Проект не изменился (звёздочка не появилась, файл .mqproj на диске не изменился).

Попробовал изменить проект насильно, изменил одну из галочек в проекте, звёздочка появилась, сохранил, файл изменился. Результат запуска тот же. В файле .mqproj список файлов в "Settings and files" остался.

Пришлось править файл вручную. Перекомпилировал, та же ошибка.

Удалил файл .ex5. Перекомпилировал, та же ошибка.

В тестере поменял эксперта на другого, вернул обратно - тогда заработало.

Вопрос - сколько здесь ошибок?

 

В последних билдах на вкладке Optimization results галочка Expected payoff восстанавливается при каждой оптимизации.

Раньше много раз писал, что многие состояния интерфейса не сохраняются между перезапусками терминала (например, ширины столбцов на всех вкладках). Это не критические проблемы, но это требует очень небольших усилий для исправления. И такие грязные мелочи интерфейса неприличны для профессиональной программы. Как и, например, неокруглённые значения на шкалах цен, времени и номера прохода (что я в 1986г в своей графической программе на Windows 2.1 решил за часы).

 

поиск и замена в файлах работает?

хотел в заголовках поменять названия, через поиск в файлах находит файлы, а кнопка "Заменить в файлах" пишет - "Поиск отменен" 

пробовал на 2485 и 2498

add

нашел, папка Include скрыта была и недоступна для замены, один из моих файлов там завалялся, хорошо бы иметь возможность скрывать в редакторе не нужные папки, на уровне windows конфликты обновлений и т.д.

интересно, классы видит в скрытых папках, а обновить при Обновлении МТ и поиск с заменой не может