Хочу вызывать функцию сразу при инициализации советника, а потом повторно вызывать её же, но только после нескольких тиков или некоторого времени. Как можно реализовать такое?
Хочу увидеть разные примеры, интересно очень :)
Суть в чем. Пример кода:
string Func1Res = Func1(param1);
bool Access = Func2(Func1Res);
IF (Access)
{
советник работает, все функции вызываются и тд;
}
else
{
Alert("ошибка");
}
Я хочу вызывать при инициализации первые две функции, чтобы произошла ошибка или же советник заработал, далее в течение N времени не делать проверку (но при этом значение Access сохраняется), а потом снова повторить.
Так же если допустим выводится ошибка, то хочу делать TimeOut (сколько времени ждать после неудачной попытки и снова повторять попытку проверки).
Заранее спасибо!
Т.е. я могу сделать таким образом:
Вопрос: будет ли передаваться значение Access из init() в start() ?
int max=500;
int min=0;
init()
{
bool Access = Func2(Func1Res);
}
start()
{
while(max=>min)
{
max--;
}
if(max=0)
{
Func1Res = Func1(param1);
Access = Func2(Func1Res);
max=500;
}
IF (Access)
{
советник работает, все функции вызываются и тд;
}
else
{
Alert("ошибка");
}
}
Область видимости Access - функция init()
Что, тяжело было добавить, что надо инициализировать переменную там же, где min и max? -))
Хочу увидеть разные примеры, интересно очень :)
Суть в чем. Пример кода:
Я хочу вызывать при инициализации первые две функции, чтобы произошла ошибка или же советник заработал, далее в течение N времени не делать проверку (но при этом значение Access сохраняется), а потом снова повторить.
Так же если допустим выводится ошибка, то хочу делать TimeOut (сколько времени ждать после неудачной попытки и снова повторять попытку проверки).
Заранее спасибо!
Что-то мне подсказывает, что "не туды гребёте"... Может так:
bool gb_first = true; void start() { //---- проверка по времени (СХЕМАТИЧНО) if (!gb_first) { if (!time) return; if (!FuncAccess (param1)) return; } else { if (!FuncAccess (param1)) return; gb_first = false; } //---- советник работает, все функции вызываются и тд; } bool FuncAccess (param1) { string Func1Res = Func1 (param1); if (!Func2 (Func1Res)) { Alert ("ошибка"); return (false); } return (true); }??? ;)
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Хочу вызывать функцию сразу при инициализации советника, а потом повторно вызывать её же, но только после нескольких тиков или некоторого времени. Как можно реализовать такое?