Новая версия платформы MetaTrader 5 build 1730: Проекты в MetaEditor и синтетические инструменты - страница 3
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
этот кусок кода я писал год назад по справке(значит там были такие рекомендации), и все работало и работает на терминалах которые еще не успели обновиться
1) вы сделали заявление, прямо противоречащее документации и здравому смыслу
2) вы не показали кода
3) ошибка в другом месте возможно
Дело в том, что при обсуждении технических тем нельзя пользоваться словесными и сравнительными методами. Тем более, когда делаете публичные заявления.
было (и работало)
теперь чтобы работало сделал так
было (и работало)
теперь чтобы работало сделал так
Во первых, код написан в режиме самострела. Так писать категорически нельзя - в нем ошибок наделано наверняка немало.
Во вторых, вы утверждаете, что раньше вот такой код работал?
Вы же передаете индекс j вместо тикета. Он и не должен был работать.
Только в тестере иногда получалось, да и то не на всех операциях. Просто там индексы от нуля могли попадать на номера тикетов, начинающиеся с единицы.
Мое мнение - безусловно ошибки в вашем коде и работа в тестере без проверок на демо/реальных счетах.
Вы же передаете индекс j вместо тикета. Он и не должен был работать.
но работал, вот у меня еще не все терминалы обновились)
кстати зачем нужно было узнавать номер тикета если мы "всегда" сюда передавали номер тикета?
Я проверю.
Вот ваш код, оформленный и правильно переписанный:
У вас на самом деле была ошибка в передаче индекса j вместо номера тикета в функциях HistoryDealGetXXXX.
Но она нивелировалась нашей ошибкой, когда мы при неудаче поиска по переданному неверному индексу не сбрасывали кеш выбранной сделки и выдавали значения этой сделки. А сделка была выбрана на предыдущем шаге HistoryDealGetTicket - поэтому вы раньше получали верные значения даже при неудачном поиске.
В 1730 билде мы нашли и исправили эту ошибку(теперь сбрасываем кеш при неудаче поиска), в результате чего проявилась ваша ошибка обращения по неверному тикету.
я понимаю что сейчас правильно так, но остается два вопроса
о какой дальнейшей обработке идет речь?
зачем предусмотрено свойство DEAL_TICKET, если для вызова функции HistoryDealGetInteger() обязательно необходимо знать тикет сделки?
я понимаю что сейчас правильно так, но остается два вопроса
о какой дальнейшей обработке идет речь?
зачем предусмотрено свойство DEAL_TICKET, если для вызова функции HistoryDealGetInteger() обязательно необходимо знать тикет сделки?
Эти свойства были добавлены позже для единообразия. Так как являются такими же атрибутами торговой сущности как и остальные свойства.
Получилось немного "масло масляное".