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

 

Добрый день, уважаемые эксперты.

Спасибо за ранее предоставленные ответы, они мне помогли. 

Подскажите, пожалуйста, можно ли (если можно то как) запустить тестер стратегий из скрипта. Я хочу реализовать алгоритм самообучения, который периодически будет сам запускать тестер стратегий и проверять актуальность текущих настроек и необходимость их коррекции.   В документации нашел как программно работать с результатами оптимизации,  а как запустить сам  тестер не нашел.

 
A100:

Вот пример без #import:

Похоже эта ошибка имеет другие корни (может он пытаеться сделать приведение к типу пустого места или еще чего =))))). Уодного знакомого все решал принт. Т.е. наличие принта какиме то чудо оброзом убирало баги. Причем там было Print(""); при его удалении компилирование выдовало сотню ошибок... (это один из старых билдов)

Виртуальный хостинг для MetaTrader 5
Виртуальный хостинг для MetaTrader 5
  • www.mql5.com
Виртуальный хостинг для MetaTrader 4/5 является лучшим VPS-решением для Форекса. Оно не требует настройки, дает минимальные задержки до сервера и отличается низкими ценами. Всего за 15 USD в месяц вы получите виртуальную платформу, которая работает круглые сутки, экономит вашу прибыль и даже окупает себя. Создать удаленную копию приложения...
 
AlexInRush:

Добрый день, уважаемые эксперты.

Спасибо за ранее предоставленные ответы, они мне помогли. 

Подскажите, пожалуйста, можно ли (если можно то как) запустить тестер стратегий из скрипта. Я хочу реализовать алгоритм самообучения, который периодически будет сам запускать тестер стратегий и проверять актуальность текущих настроек и необходимость их коррекции.   В документации нашел как программно работать с результатами оптимизации,  а как запустить сам  тестер не нашел.

Ищите в кодобазе и статьях - есть разные варианты. Например, есть такой - Validate.

 
Alexey Viktorov:

Как-же вас научить читать документацию?


Это я видел

 
Ошибка при выполнении:
//Test.mqh
#import "Test2.ex5"
        int StringFind( string, string, bool, int = 0 );
        int f();
#import
//Test.mq5
#include "Test.mqh"
void OnStart()
{
        Print(f());
}
//Test2.mq5
#property library
#include "Test.mqh"
int StringFind( string, string, bool, int ) export
{
        return 999;
}
int f() export
{
        string text = "";
        return StringFind( text, text, true );
}

Результат:   -1

Ожидалось: 999

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

        return Test2::StringFind( text, text, true );

- что нонсенс вдвойне

 
Комментарии, не относящиеся к этой теме, были перенесены в "Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам".
 

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


В англоязычной КБ русскоязычный автор выкладывает свою работу. Пишу на нее комментарий автору на русском и английском языках. Русский удаляют. Это норма?

Речь об этой ветке. Неоднократно сталкивался с удалением своив постов, сделал скрин текущего.


Хочу знать, где и за что будут удалены мои посты, чтобы больше их никогда не писать.

Scripts: TickCompressor
Scripts: TickCompressor
  • 2020.08.26
  • www.mql5.com
Articles, Library comments: Scripts: TickCompressor
 
А какой смысл лишать MQL статуса передового языка?
class A {
public:
        void f( int ) {}      //(1)
};
class B : public A {
public:
        void f( int, int ) {} //(2)
};
void OnStart()
{
        B b;
        b.f( 1 ); //(*) Warning: deprecated behavior, hidden method calling will be disabled in a future MQL compiler version
}

(*) предупреждение... а скоро видимо будет ошибка. Функции (1) и (2) однозначно различаются по числу параметров. В C++ там понятно почему, но MQL всегда был в этом смысле более передовым

 
fxsaber:

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


В англоязычной КБ русскоязычный автор выкладывает свою работу. Пишу на нее комментарий автору на русском и английском языках. Русский удаляют. Это норма?

Речь об этой ветке. Неоднократно сталкивался с удалением своив постов, сделал скрин текущего.


Хочу знать, где и за что будут удалены мои посты, чтобы больше их никогда не писать.

тоже сталкивался с таким, но это не есть неадекватность, а это есть выполнение своих обязанностей. Нужно поменять давно устаревшее правило - "русский форум = русский язык" => исчезнут обязанности => удалять перестанут.

Автопереводчики сейчас справляются с разговорным языком на 4 (все же, что то теряется) и поэтому нужно внедрить новое правило - "пиши на том языке, который лучше знаешь". Лучше пусть носитель английского напишет на своем родном и с помощью разных переводов (яндекс, гугл, deepl.com, своя голова, в конце концов) его поймут, чем он оставит сообщение на русском и тем самым лишит нас исходиков. 

Уберите правило "национальный форум = национальный язык" к лешему уже!

 
Ошибка при компиляции:
template<typename T>
class A {
public:
        void f( int ) {}      //(1)
};
class B : public A<int> {
public:
        void f( int, int ) {} //(2)
};
void OnStart()
{
        B b;
        b.A<int>::f( 1 ); //Error: 'A' - undeclared identifier
}

Исправление этой ошибки особенно актуально в свете этого нововведения. Иначе (1) будет не вызвать