Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Я согласен с Raptor, единственный способ, которым кто-то действительно сможет помочь, это если вы опубликуете соответствующий код, в противном случае это все равно, что просто делать выстрелы в темноте.
Извините, но я не могу выложить код. Это 72 страницы и это код продукта, который я буду выпускать.
А пока я реализовал вызовы журнала, которые предложил WHRoeder в своем первом ответе,
записывая отладочную информацию, которую можно просмотреть с помощью dbgView от Microsoft.
Эта отладочная информация точно такая же, как и моя собственная отладочная информация, которая показывает,
что мы можем доверять тому, что видим в лог-файлах.
Итак, лог-файл сообщает нам, что start() завершается, но больше не запускается.
Похоже, что это связано с объемом работы, выполняемой в CreateHistory(), которая вызывается внутри start().
Когда я вызываю ту же CreateHistory() в init(), точно такой же объем работы выполняется без проблем.
Можем ли мы привлечь разработчика MT4, чтобы он посмотрел на это?
Где я могу найти дополнительную информацию о сбое MT4 (версия моего индикатора для советника сбоит в MT4)?
Я не смог ничего увидеть в средстве просмотра событий windows.
Когда я сказал "выложите соответствующий код", я не имел в виду весь код, я имел в виду, что вы изменили или добавили в него с момента последнего успешного запуска? Я предполагаю, что вы не писали 72 страницы прямого кода без какого-либо тестирования по пути ...
Что я изменил: я перенес CreateHistory() из init() в start().
Текущая ситуация выглядит следующим образом:
Когда я вызываю CreateHistory() в start без задержки: работает нормально.
Когда я вызываю CreateHistory() в start с задержкой >= 1 сек: MT4 зависает.
Однако зависает не CreateHistory(), а функция start().
Вот код для start() :
Ниже приведены 2 лог-файла:
один для кода выше с TimeLocal() >= IndiStartTime + 0 (работает нормально), другой для кода выше с TimeLocal() >= IndiStartTime + 1 (зависает).
В последнем случае CreateHistory() работает и возвращается правильно.
Она вызывается только один раз внутри start().
Больше ничего не делается в start(), тем не менее start() больше никогда не вызывается MT4, и MT4 зависает, съедая CPU.
CreateHistory() вызывает 80% моего кода.
Я не могу его опубликовать.
лог-файл для задержки 0 сек:
2013.12.04 12:34:10 Тест уменьшен: USDJPY M15 Debug Init() begin:
2013.12.04 12:34:10 Тест уменьшен: USDJPY M15 Debug Init() return:
2013.12.04 12:34:10 Тест уменьшен: USDJPY M15 DebugStart: begin ---------------------------------------:
2013.12.04 12:34:10 Тест уменьшен: USDJPY M15 DebugStart: in loop +++++++++++++: IndexCount: 1 <----------- CreateHistory() вызывается немедленно
2013.12.04 12:34:10 Тест уменьшен: USDJPY M15 Отладка CreateHistoryTimeFrame(), старт: CurrencyIndex: 1 TF: 1 ShiftsArray[1, TF]: 4996 TheShift: 0
2013.12.04 12:34:10 Test reduced: USDJPY M15 Debug CreateHistoryTimeFrame(), final return: CurrencyIndex: 1 TF: 1
2013.12.04 12:34:10 Тест уменьшен: USDJPY M15 DebugStart: в цикле +++++++++++++: IndexCount: 2
2013.12.04 12:34:10 Тест уменьшен: USDJPY M15 DebugStart: возврат ...
2013.12.04 12:34:11 Тест уменьшен: USDJPY M15 DebugStart: begin ---------------------------------------: <------------ start() срабатывает неоднократно
2013.12.04 12:34:11 Тест уменьшен: USDJPY M15 DebugStart: in loop +++++++++++++: IndexCount: 1
2013.12.04 12:34:11 Тест уменьшен: USDJPY M15 DebugStart: в цикле +++++++++++++: IndexCount: 2
2013.12.04 12:34:11 Тест уменьшен: USDJPY M15 DebugStart: возврат ...
2013.12.04 12:34:11 Тест уменьшен: USDJPY M15 DebugStart: begin ---------------------------------------:
2013.12.04 12:34:11 Тест уменьшен: USDJPY M15 DebugStart: in loop +++++++++++++: IndexCount: 1
2013.12.04 12:34:11 Тест уменьшен: USDJPY M15 DebugStart: в цикле +++++++++++++: IndexCount: 2
2013.12.04 12:34:11 Тест уменьшен: USDJPY M15 DebugStart: возврат ...
лог-файл для 1 секунды задержки:
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 Debug Init() begin:
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 Debug Init() return:
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: begin ---------------------------------------:
2013.12.04 12:32:17 Test reduced 0: USDJPY M15 DebugStart: in loop +++++++++++++: IndexCount: 1
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: в цикле +++++++++++++: IndexCount: 2
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: возврат ...
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: begin ---------------------------------------:
2013.12.04 12:32:17 Test reduced 0: USDJPY M15 DebugStart: in loop +++++++++++++: IndexCount: 1
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: в цикле +++++++++++++: IndexCount: 2
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: возврат ...
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: begin ---------------------------------------:
2013.12.04 12:32:17 Test reduced 0: USDJPY M15 DebugStart: in loop +++++++++++++: IndexCount: 1
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: в цикле +++++++++++++: IndexCount: 2
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: возврат ...
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: begin ---------------------------------------:
2013.12.04 12:32:17 Test reduced 0: USDJPY M15 DebugStart: in loop +++++++++++++: IndexCount: 1
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: в цикле +++++++++++++: IndexCount: 2
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: возврат ...
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: begin ---------------------------------------:
2013.12.04 12:32:17 Test reduced 0: USDJPY M15 DebugStart: in loop +++++++++++++: IndexCount: 1
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: in loop +++++++++++++: IndexCount: 2
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: возврат ...
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: begin ---------------------------------------:
2013.12.04 12:32:17 Test reduced 0: USDJPY M15 DebugStart: in loop +++++++++++++: IndexCount: 1
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: in loop +++++++++++++: IndexCount: 2
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: возврат ...
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: begin ---------------------------------------:
2013.12.04 12:32:17 Test reduced 0: USDJPY M15 DebugStart: in loop +++++++++++++: IndexCount: 1
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: в цикле +++++++++++++: IndexCount: 2
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: возврат ...
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: begin ---------------------------------------:
2013.12.04 12:32:17 Test reduced 0: USDJPY M15 DebugStart: in loop +++++++++++++: IndexCount: 1
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: в цикле +++++++++++++: IndexCount: 2
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: возврат ...
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: begin ---------------------------------------:
2013.12.04 12:32:17 Test reduced 0: USDJPY M15 DebugStart: in loop +++++++++++++: IndexCount: 1
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: в цикле +++++++++++++: IndexCount: 2
2013.12.04 12:32:17 Тест уменьшен 0: USDJPY M15 DebugStart: возврат ...
2013.12.04 12:32:18 Тест уменьшен 0: USDJPY M15 DebugStart: begin ---------------------------------------:
2013.12.04 12:32:18 Test reduced 0: USDJPY M15 DebugStart: in loop +++++++++++++: IndexCount: 1
2013.12.04 12:32:18 Тест уменьшен 0: USDJPY M15 Debug CreateHistoryTimeFrame(), start: CurrencyIndex: 1 TF: 1 ShiftsArray[1, TF]: 4996 TheShift: 0 <----------- через 1 сек CreateHistory() вызывается
2013.12.04 12:32:18 Test reduced 0: USDJPY M15 Debug CreateHistoryTimeFrame(), final return: CurrencyIndex: 1 TF: 1
2013.12.04 12:32:18 Test reduced 0: USDJPY M15 DebugStart: in loop +++++++++++++: IndexCount: 2
2013.12.04 12:32:18 Test reduced 0: USDJPY M15 DebugStart: returning ... <---------- start() is never triggerd again
CreateHistory() создает автономные графики, записывая их в файлы .hst.
Она НЕ записывает в живые файлы .hst.
CreateHistory() создает автономные графики, записывая их в файлы .hst.
Она НЕ записывает в живые файлы .hst.
Как убедиться, что это именно так?
В MT4 нет инструмента с именем CI_EUR.
В MT4 не существует инструмента с именем CI_EUR.