Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1518
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
А вы точно не путаете магик с тикетом???
Магик вы устанавливаете какой захотите. В каждый советник назначается свой магик и все ордера и позиции идентифицированы этим магиком. Поэтому, если в советнике вы назначили Magic = 123; то все позиции открытые этим советником будут иметь Magic 123.
Следовательно перебирая все позиции вы СНАЧАЛА получаете тикет позиции, тем самым выбирая позицию для работы с её свойствами
И только потом начинаете проверять магик. Если среди открытых позиций такой есть, то возвращаете запрет на открытие позиции — false. Если же перебрав все позиции такого магика не обнаружено, то функция проверки должна вернуть разрешение на открытие позиции — true.
Даже если взять ваш вариант
то у вас нарушена последовательность действий.
Получение тикета позиции и выбор её для работы с ней должны быть первой строкой в цикле.
И потом, было бы не плохо увидеть где у вас организован этот цикл. В основном коде или в отдельной пользовательской функции.
Магик с тикетом не путаю.
У меня были варианты с трейлингстопом и замками. Там я делал отдельные функции. А тут правила проще, все основное в OnTick.
Спасибо. Я переставил строку получения тикета в голову цикла. По графикам вижу, что условие открытия позиции есть, но не открываются...
Если можете посоветовать, как эффективно проверять ошибки, был бы очень благодарен. Принты печатаются через один или вообще не печатаются.
Принты печатаются через один или вообще не печатаются
Как говорил мой первый наставник по электронике (да, да, по электронике - ничего не путаю!), так вот, он говорил: ЧУДЕС НА СВЕТЕ НЕ БЫВАЕТ!!! )) К чему весь этот спич? Значит в какие-то моменты у Вас, просто на просто, выполнение программы не доходит до печати принтов. Ищите у себя в коде проблемы. И, да! Попробуйте освоить отладчик в метаэдиторе. Отличный инструмент для того, чтобы избавляться от чудес. ))
С уважением, Владимир.
Как говорил мой первый наставник по электронике (да, да, по электронике - ничего не путаю!), так вот, он говорил: ЧУДЕС НА СВЕТЕ НЕ БЫВАЕТ!!! )) К чему весь этот спич? Значит в какие-то моменты у Вас, просто на просто, выполнение программы не доходит до печати принтов. Ищите у себя в коде проблемы. И, да! Попробуйте освоить отладчик в метаэдиторе. Отличный инструмент для того, чтобы избавляться от чудес. ))
С уважением, Владимир.
Про то, что в документации указано, что может печататься не все, я читал в другой ветке этого форума. Закладки не делал. Врядли найду. Писал человек опытный. Так что я Вас не обманываю.
У меня в коде робота раньше было несколько функций. И чтобы понимать, в какой функции сейчас программа, в голове функции размещал принт с текстом "Вошли в такую-то функцию". Внутри были принты с именами и значениями переменных на разных этапах и комментами. Открываю, бывало лог файл и вижу целую колонку с "Вошли в такую-то функцию". А ниже вдруг колонка изменяется на строки с именами и значениями переменных. А " вошли в функцию", типа уже не надо печатать. Или возникают ошибки, по которым прописаны принты. Ошибки есть. Принтов об ошибках нет. И так постоянно. Так что выборочность работы принтов определенно имеет место. Просто алгоритм не ясен. Сейчас, вроде, и код проще, а принты почти не работают.
Если можете посоветовать, где почитать про работу отладчика, буду благодарен.
Ну, и не по теме. Что чудес не бывает, говорят те, кто их не видел.
Возможно их просто не видно во вкладке терминала. Откройте файл с логами и увидите принты.
Как раз, как открыть вкладку терминала, в которой принты видно, я не знаю. И не заморачивался с информацией. Смотрю в самом лог файле, в папке MQL5.
Как раз, как открыть вкладку терминала, в которой принты видно, я не знаю. И не заморачивался с информацией. Смотрю в самом лог файле, в папке MQL5.
На картинке показал вкладку, где нужно смотреть распечатку принтов.
С уважением, Владимир.
На картинке показал вкладку, где нужно смотреть распечатку принтов.
С уважением, Владимир.
Благодарю. Увидел. Там видно только за сегодня или можно настроить, чтобы были принты за другие дни?
Никогда не задавался таким вопросом, т.к. не было надобности. Поищите на сайте, может кто-то уже интересовался чем-то похожим. Забейте в поисковике вкладка эксперты ограничения или что-то подобное.
С уважением, Владимир.