Как получить информацию об "ошибке" из журнала? - страница 3

 
ydrol:

Надеюсь, я не говорю очевидного, и прошу прощения, если это так!

Я подозреваю, что все, кто отвечал, предполагали, что вы знаете, но журнал MT - это просто несколько файлов, последние несколько строк которых отображаются в графическом интерфейсе.

Файлы (для обратного тестирования) находятся в папке MetaTrader Install Folder/tester/logs.

Вы можете искать их, используя любые доступные вам инструменты - например, команду dos Findstr для извлечения файлов...

cd MetaTrader Folder/tester/logs

Findstr some_text *.log

Findstr some_text *.log > small_log.txt


Еще раз прошу прощения, если я говорю очевидное, а вам на самом деле нужно что-то другое?


В своем первом ответе я спросил: "В журнале может не быть всей информации, но файлы журнала не удалены, не так ли?".

Поэтому я предположил, что он действительно открывал журнал.

Возможно, это было неверное предположение, и он пытается проверить журнал, а не журнал.

Если он не знает, вы можете получить доступ к журналу, щелкнув правой кнопкой мыши в окне журнала и нажав "Открыть". Затем можно открыть последний файл журнала или любой другой.

 
Proximus:

+10.000 линий недостаточно, я не уверен точно, сколько их хранит MT4, но я уверен, что для меня этого недостаточно. Я обычно делаю сейчас бэктесты с 5000-7000 сделок или больше, 1 линия для ордера open, 3-4 линии для trailstops ordermodify, и 1 линия для orderclose = это 6 линий на сделку * 7000 сделок = это ~42000 линий или режим, и я уверен, что журнал MT4 не хранит столько в нем :)

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

Без проблем, я отвечал на OP. Они могут просто использовать инструменты для анализа файлов журнала? Если в Linux, grep "some text" *.log | wc -l дает быстрый подсчет совпадений, но я не смог быстро найти встроенный эквивалент в Windows (трачу здесь слишком много времени :)),

Теперь я думаю об этом и подозреваю, что у powershell есть что-то...

 
Ovo:

Не стоит извиняться, но я понял, что OP не заинтересован в поиске и исправлении ошибок, а скорее в их статистике.
На самом деле и то, и другое. Я хочу сначала узнать типы возникающих ошибок, потому что я не уверен в своем коде и довольно скептичен, поэтому я хочу исключить все ошибки в моем советнике. После того, как у меня будут некоторые данные о них, будет легче исправить их и избежать их в будущем.
ydrol:

Без проблем, я отвечал ОП. Они могут просто использовать инструменты для анализа лог-файлов? Если в Linux, grep "some text" *.log | wc -l получает быстрый подсчет совпадений, но я не смог быстро найти встроенный эквивалент в Windows (трачу слишком много времени здесь :) ),

Теперь я думаю об этом, я подозреваю, что у powershell есть что-то...

Я думаю, что вы, ребята, увлеклись поиском файлов, когда я сказал вам, что в этом нет необходимости, это тоже решение, но это "трудный путь". Хороший программист должен сначала найти оптимальный путь. Поэтому мы должны искать внутри кода, когда он еще доступен, так что в журнале, потому что журнал слишком большой в моем случае. Если бы я пошел и использовал "find" в блокноте, у меня ушли бы годы, чтобы найти все ошибки и их конкретные детали.

Также я забыл упомянуть в первом сообщении, что мне нужно видеть соседние строки в журнале. Потому что я добавил несколько "Print()", которые будут печатать некоторые ключевые данные, такие как текущее значение индикатора, SL, TP, и они будут красиво отображаться в журнале, но я должен видеть ошибку, связанную с этими данными, так что, например, если я поймаю SL со значением 0, я буду знать, что ошибка произошла из-за этого.

Так что после долгих поисков и погружения в язык mql4 я нашел это:

GetLastError();

Я думаю, что решение, которое мне нужно, лежит внутри этой функции. Я прочитал документацию о ней, и она довольно короткая. Может ли кто-нибудь помочь мне использовать ее или объяснить ее более подробно?

 
Proximus:

После долгих поисков и погружения в язык mql4 я нашел вот это:

Я думаю, что решение, которое мне нужно, лежит внутри этой функции. Я прочитал документацию о ней, и она довольно короткая. Может ли кто-нибудь помочь мне использовать ее или объяснить ее более подробно?

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

Что такое возвращаемые значения функции? Как их использовать?

Как я управляю выводом отладки в журнал

 
Proximus:

Я думаю, что вы, ребята, увлеклись поиском файлов, когда я сказал вам, что в этом нет необходимости, это тоже решение, но это "трудный путь". Хороший программист должен сначала найти оптимальный путь.


Хороший программист использует правильные инструменты для работы. Журнал - это текстовый файл. Существует огромное количество инструментов для поиска в текстовом файле и подсчета строк, а также отображения контекста/соседних строк, если вы хотите. Они существуют уже много лет. Готов поспорить, что некоторые из них даже имеют графический интерфейс, который вам понравится.

Хороший программист не будет программировать что-то, когда это не нужно (разве что из любопытства).

Сначала вы говорите программистам, насколько прост ваш код линии тренда, несмотря на отсутствие информации, теперь вы отвергаете самый простой способ поиска текстовых файлов как трудный способ?

Удачи!

 

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


ydrol:

Хороший программист использует правильные инструменты для работы. Журнал - это текстовый файл. Существует огромное количество инструментов для поиска в текстовом файле и подсчета строк, а также отображения контекста/соседних строк, если вы хотите. Они существуют уже много лет. Готов поспорить, что некоторые из них даже имеют графический интерфейс, который вам понравится.

Хороший программист не будет программировать что-то, когда это не нужно (разве что из любопытства).

Сначала вы рассказываете программистам, насколько прост ваш код трендлайна, несмотря на отсутствие информации, теперь вы отвергаете самый простой способ поиска в текстовых файлах как сложный?

Удачи!


У вас есть несколько интересных моментов. Возможно, это не так просто, но это удобно и повышает любопытство. А еще мне нравится программировать, это из-за лени, лучше, если бот делает тяжелую работу. Это их цель, они заменяют человеческий труд.