Ваши вопросы по языку MQL4

Leonup

Новичок форума
Здравствуйте!
Написал советник для mt4, в котором нет абсолютно ничего "экзотического". Нет никаких графических построений. Только используется одна тригонометрическая функция.
На демо-счете работает нормально. Но в тестере стратегий его можно протестировать только!!! в визуальном режиме, и даже при максимальной скорости :).
А его ведь нужно еще и оптимизировать, но он этого не хочет.
Что делать? Помогите, знающие люди!
 

Leonup

Новичок форума
Выкиньте своего сова и займитесь теорией для начала...
Спасибо за совет. Есть вопросы:
1. Теория - понятие растяжимое. В каком направлении копать?
2. Если тригонометрию из советника выбросить, то он нормально оптимизируется. Какая связь между тригонометрией и тестером стратегий?
3. Почему советник нужно выбросить?
Еще раз спасибо.
 

AlexeNP

Гуру форума
Здравствуйте!
Написал советник для mt4, в котором нет абсолютно ничего "экзотического". Нет никаких графических построений. Только используется одна тригонометрическая функция.
На демо-счете работает нормально. Но в тестере стратегий его можно протестировать только!!! в визуальном режиме, и даже при максимальной скорости :).
А его ведь нужно еще и оптимизировать, но он этого не хочет.
Что делать? Помогите, знающие люди!
наверное он что-то пишет при этом...
 

Ugar

Гуру форума
Здравствуйте!
Написал советник для mt4, в котором нет абсолютно ничего "экзотического". Нет никаких графических построений. Только используется одна тригонометрическая функция.
На демо-счете работает нормально. Но в тестере стратегий его можно протестировать только!!! в визуальном режиме, и даже при максимальной скорости :).
А его ведь нужно еще и оптимизировать, но он этого не хочет.
Что делать? Помогите, знающие люди!
Похоже на наличие графических объектов. Какая функция то?
 

Leonup

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

Leonup

Новичок форума
Похоже на наличие графических объектов. Какая функция то?
Повторюсь. В своем первом сообщении я писап, что нет никаких графических построений, а только одна тригонометрическая функция для определения угла.
 

vladradon

Программист
Тригонометрия вычисляет угол. При выключенной визуализации в журнале сообщается, что он равен нулю, всегда. А на демо в журнале показывает значение, отличное от 0, и ордер, как и должно быть, открывается.
И вот что в этом послании Вы хоть что-то прояснили?:( Тригонометрия - это наука, определяющая математически и графически возможные варианты геометрических пересечений на текущий момент .
 

AlexeNP

Гуру форума
Тригонометрия вычисляет угол. При выключенной визуализации в журнале сообщается, что он равен нулю, всегда. А на демо в журнале показывает значение, отличное от 0, и ордер, как и должно быть, открывается.
ну вот мы на шажок пододвинулись к разгадке... все дело в квантовой запутанности, эффект наблюдателя - когда смотришь на робота, он работает, только отвернулся - он забил на это дело...
итак, дело все-таки обстоит в вычислении этой самой тригонометрической функции Шредингера. Какие параметры для ее высчитывания используются?
 

Leonup

Новичок форума
ну вот мы на шажок пододвинулись к разгадке... все дело в квантовой запутанности, эффект наблюдателя - когда смотришь на робота, он работает, только отвернулся - он забил на это дело...
итак, дело все-таки обстоит в вычислении этой самой тригонометрической функции Шредингера. Какие параметры для ее высчитывания используются?
2 последних значения (на 2-х закрытых барах) скользящей средней и время их появления. Спасибо, добрый человек.
 

AlexeNP

Гуру форума
2 последних значения (на 2-х барах) скользящей средней и время их появления. Спасибо, добрый человек.
при вычислении значений скользящей средней производится проверка на достаточное количество данных в истории?
с высокой долей вероятности дело в том что при запуске тестера не хватает данных...
к примеру, берем и быстренько делаем советник
смотрим сколько баров в истории он видит при запуске обычном и визуальном тестировании...
ак при оптимизации у него история еще хужее... поэтому нужно добавить в код проверку - хватает ли баров для расчета...MetaTrader 4.pngMetaTrader 42.png
 

Вложения

  • 11.mq4
    3,6 КБ · Просмотры: 17

Leonup

Новичок форума
при вычислении значений скользящей средней производится проверка на достаточное количество данных в истории?
с высокой долей вероятности дело в том что при запуске тестера не хватает данных...
к примеру, берем и быстренько делаем советник
смотрим сколько баров в истории он видит при запуске обычном и визуальном тестировании...
ак при оптимизации у него история еще хужее... поэтому нужно добавить в код проверку - хватает ли баров для расчета...Посмотреть вложение 367764Посмотреть вложение 367765
Данные по обычному тестированию (первый по времени) и по визуальному - идентичны. Период тестирования: 03.01.2019 - 03.09.2019
 

Вложения

  • 20200220.xlsx
    9,9 КБ · Просмотры: 9

AlexeNP

Гуру форума
Данные по обычному тестированию (первый по времени) и по визуальному - идентичны. Период тестирования: 03.01.2019 - 03.09.2019
Ну и в чем тут подвох?
что при обычном тестировании, что при тестировании с визуализацией терминал выдает ровно те же самые данные, только при визуализации он еще и показывает как это все выглядит...
а вот при оптимизации, терминал становится шибко злым, и может обидеться на то что ему подсовывают...
если лень дописать в советник элементарную проверку на количество баров в истории, то оптимизация может улыбаться долго-долго...
 

Leonup

Новичок форума
Ну и в чем тут подвох?
что при обычном тестировании, что при тестировании с визуализацией терминал выдает ровно те же самые данные, только при визуализации он еще и показывает как это все выглядит...
а вот при оптимизации, терминал становится шибко злым, и может обидеться на то что ему подсовывают...
если лень дописать в советник элементарную проверку на количество баров в истории, то оптимизация может улыбаться долго-долго...
Вчера я подумал, что если тестируется только при визуализации, то при ней количество баров должно быть больше.
Код вставил в OnInit. Сегодня включил оптимизацию "все тики". На данный момент сделано более 500 проходов.
В журнале чисто, результатов оптимизации - 0. А лень тут не причем.
 

AlexeyVik

Программист mql4 mql5
Вчера я подумал, что если тестируется только при визуализации, то при ней количество баров должно быть больше.
Код вставил в OnInit. Сегодня включил оптимизацию "все тики". На данный момент сделано более 500 проходов.
В журнале чисто, результатов оптимизации - 0. А лень тут не причем.
А код совершенно секретный? О чём можно говорит и как найти ошибку без кода???
 

mobidik

-----
Ну, Вы меня повеселили. Код очень и очень "секретный".
И не будет оптимизации: ChartTimePriceToXY - данная функция ничего не вернет, вернее, всегда выдаст ошибку, т.к. в режиме оптимизации советник не находится на графике, а отрабатывает где-то там, глубоко в терминале...

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

Ugar

Гуру форума
Ну, Вы меня повеселили. Код очень и очень "секретный".
Ну вот она, графика.
// Преобразование логических координат в физические пиксели
От куда могут взяться пиксели при отсутствии самого графика? В тестере, в обычном режиме или при оптимизации никакого графика не отображается. График есть только при работе на счёте или в тестере в визуальном режиме.
Да и mobidik правильно написал. Такие функции применяют для отображения чего то на графике, а не для принятия торговых решений.
 
Верх