Ошибки, баги, вопросы - страница 3199
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
1. Сабер схитрил, и прекрасно понимает это, сам он бесконечный цикл в своем боевом роботе использовать не будет. Либо просто придуряется, Либо в данном случае действительно не понимает проблемы.
2. Спасибо, и Вам не хворать.
3. Пока не было никакой полезной информации от "простых смертных".
4. Именно засирают, замыливают глаз. На одно моё сообщение разработчикам куча бесполезного флуда наплодили.
5. Не видите причин горячиться? Хорошо, я попытаюсь объяснить на пальцах:
OrderSend () - асинхронная синхронная* функция, это значит, что советник (или скрипт) будет остановлен до тех пор, пока торговый сервер не пришлет ответ на торговый приказ, и функция вернёт true или false в зависимости от успешности операции.
В структуре ответа торгового сервера содержится информация с результатами торговой операции, и вот тут то и кроется проблема: структура ответа заполнена торговым сервером некорректно, tradeResult.price равен 0.0, и это при том, что функция OrderSend () вернула true!, причем сделка совершена и позиция открыта и тикет сделки есть в структуре ответа. Далее, вызываем PositionSelect (), если true то запрашиваем цену позиции PositionGetDouble (POSITION_PRICE_OPEN), которая возвращает 0.0!
И Вы до сих пор не видите причин горячиться? - налицо проблема, но всезнайки (при чем не умаляя их заслуг перед сообществом) пытаются убедить, что проблемы никакой нет. Зачем?
*синхронная, именно синхронная, это важно.
Демо открывается за 20 секунд: File->Open an Account->скопировать название сервера в поле поиска->Find your company->Next->Open a demo account.
Результат работы скрипта на ForexTimeFXTM-Demo01.
Result.price и Result.deal в нулях. И это правильно и логично. Причина многократно разбиралась на форуме.
В коде, как только PositionSelect возвращает true, сразу делается PositionGetDouble, который, конечно, ненулевой. Написал этот пост, чтобы можно было давать ссылку на него для быстрой демонстрации корректности работы MT5 в этой части.
ЗЫ Прослушивалка всех торговых операций.
Абсолютный бред! Некорректные данные в структуре ответа после вызова OrderSend () так же нелепы, как некорректные данные в структурах OnTradeTransaction ()!
Sergey Gridnev #:
PS. И на Сабере нефига наезжать, хороший тестировщик знаете функционирование системы лучше разработчика.
Буду наезжать, ибо нехфиг писать ересь.
Абсолютный бред! Некорректные данные в структуре ответа после вызова OrderSend () так же нелепы, как некорректные данные в структурах OnTradeTransaction ()!
Кусок из справки про OrderSend():
OrderSend() не может заполнить то, чего ещё не знает.
Сильно зависит от "брокера" и способа организации "торговли" у него, на сколько я понимаю. Но если OrderSend() для рыночного ордера сразу возвращает всю информацию о сделке - это скорее повод для задуматься откуда сервер МТ знает эту информацию.
Кусок из справки про OrderSend():
OrderSend() не может заполнить то, чего ещё не знает.
Сильно зависит от "брокера" и способа организации "торговли" у него, на сколько я понимаю. Но если OrderSend() для рыночного ордера сразу возвращает всю информацию о сделке - это скорее повод для задуматься откуда сервер МТ знает эту информацию.
Да, всё верно в справке написано, и задумайтесь немного, если получен тикет сделки, то разве неизвестна цена сделки? вы совершаете сделки на базаре не зная цену? - никто не совершает сделки без цены. И если есть тикет, значит сделка зарегистрирована, значит у неё есть цена. Вот если бы сервер выдал 0 тикет, то и не зачем интересоваться ценой этой сделки. Но раз тикет пришел, значит и цена есть у сделки. бл, я уже по тридцатому кругу объясняю, неужели непонятны такие простые вещи?
Задумайтесь, как так могло случится, что брокер зарегистрировал сделку, но цену по которой выполнил сделку не сообщает?! Вы понимаете что это значит? Это умышленное поведение брокера, который заполняет цену сделки спустя некоторое время любым угодным брокеру значением. Меня забанят нахвиг, из за того, что приходиться объяснять вещи, которые должны были бы дойти до вас и без меня.
Дальнейшее дискутирование по этой теме не вижу целесообразным, и даже считаю опасным с точки зрения дальнейшего пребывания на этом ресурсе. Нужно дождаться ответа разработчиков.
Да, всё верно в справке написано, и задумайтесь немного, если получен тикет сделки, то разве неизвестна цена сделки? вы совершаете сделки на базаре не зная цену? - никто не совершает сделки без цены. И если есть тикет, значит сделка зарегистрирована, значит у неё есть цена. Вот если бы сервер выдал 0 тикет, то и не зачем интересоваться ценой этой сделки. Но раз тикет пришел, значит и цена есть у сделки. бл, я уже по тридцатому кругу объясняю, неужели непонятны такие простые вещи?
Задумайтесь, как так могло случится, что брокер зарегистрировал сделку, но цену по которой выполнил сделку не сообщает?! Вы понимаете что это значит? Это умышленное поведение брокера, который заполняет цену сделки спустя некоторое время любым угодным брокеру значением. Меня забанят нахвиг, из за того, что приходиться объяснять вещи, которые должны были бы дойти до вас и без меня.
Дальнейшее дискутирование по этой теме не вижу целесообразным, и даже считаю опасным с точки зрения дальнейшего пребывания на этом ресурсе. Нужно дождаться ответа разработчиков.
Ответа разработчиков не будет. У них свое представление о синхронности. Возврат true и ненулевой тикет ордера не гарантируют наличия всей информации о сделке.
Ты вправе махать шашкой дальше, но это не конструктивно. Очевидно, что торговую модель не будут править сейчас, спустя столько лет. Нужно смириться, изучить ее, и научиться использовать. Либо переходить на "нормальный терминал".
Но раз тикет пришел, значит и цена есть у сделки. бл, я уже по тридцатому кругу объясняю, неужели непонятны такие простые вещи?
Если есть тикет сделки, но нет цены - нужны комментарии разработчиков. Сам склоняюсь, что это баг, полностью с Вами согласен.
Если есть тикет ордера, но нет цены - то это норм.
Было бы классно, если бы Вы код fxsaber/аналогичный код выполнили на реальном счете и логи показали - это конкретное доказательство, что есть ошибки.
Поймите правильно - заводить реальный счет у брокера, чтобы проверить Ваши утверждения - это реально загон.
Ответа разработчиков не будет. У них свое представление о синхронности. Возврат true и ненулевой тикет ордера не гарантируют наличия всей информации о сделке.
Ты вправе махать шашкой дальше, но это не конструктивно. Очевидно, что торговую модель не будут править сейчас, спустя столько лет. Нужно смириться, изучить ее, и научиться использовать. Либо переходить на "нормальный терминал".
Согласен с тобой по всем моментам.
Но, согласен ли ты с тем, что если известен тикет сделки, то должна быть известна и цена сделки? Простой вопрос, да или нет.
Если есть тикет сделки, но нет цены - нужны комментарии разработчиков. Сам склоняюсь, что это баг, полностью с Вами согласен.
Если есть тикет ордера, но нет цены - то это норм.
Было бы классно, если бы Вы код fxsaber/аналогичный код выполнили на реальном счете и логи показали - это конкретное доказательство, что есть ошибки.
Поймите правильно - заводить реальный счет у брокера, чтобы проверить Ваши утверждения - это реально загон.
ну, вот теперь я вижу нотки конструктива. но, только нотки. если нет возможности проверить на реальном счете, то какой смысл было начинать бодаться? то есть, все должны поверить на слово исключительно на авторитет Сабера (или кого либо ещё)?
вот в том то и дело, речь не о тикете ордера! а о тикете сделки.
мне нет смысла приводить логи, кроме разработчиков проверять это на реальном счете никто не будет. я описал предельно прозрачно свои шаги и результаты шагов, этого вполне достаточно что бы начинать думать тем кто прочитал моё сообщение. И да, нужны комментарии разработчиков, о чем я и говорил изначально, тут нет никакого смысла мериться авторитетом среди форумчан, только разработчик может пояснить за эту проблему.
ЗЫ Прослушивалка всех торговых операций.
Открытие маркет-ордера. Часть лога (в приложении).
Сразу после этого сообщения OrderSend вернул true.
Сообщение о только что пришедшей сделке в Терминал.
В обоих сообщениях выделил желтым цветом время прихода сообщений. Отлично видно, что сделка пришла через 28 миллисекунд после успешного возврата из OrderSend.
А могла и вовсе не прийти - реджект маркет-ордера, например, через несколько секунд. Однако, маркет-ордер был выставлен, поэтому true от OrderSend и можно работать дальше.
Согласен с тобой по всем моментам.
Но, согласен ли ты с тем, что если известен тикет сделки, то должна быть известна и цена сделки? Простой вопрос, да или нет.
А вас не затруднит уточнить откуда известен тикет сделки?
И уточните пожалуйста, вы говорите о счёте hadge или netting?