Ошибки, баги, вопросы - страница 3197
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
1. пипец какое самомнение, даже не знаю, хорошо это или плохо в данном случае. но, попрошу не отвечать мне больше здесь по этой ошибки. можно мне дождаться ответа разработчиков, а? ну пожалуйста!!!
2. Вы наверное издеваетесь?! какой код бага нужен? извольте проверить свои утверждения на указанном брокере. подозреваю, что не поняли о чем вообще речь.
На форуме полно информации по этой теме. Отвечать не буду.
На форуме полно информации по этой теме. Отвечать не буду.
так никто и не просил у Вас ответа по этой ошибке! - вопрос был адресован разработчикам.
Вопрос 1. функцией PositionGetDouble () получаем значение, к примеру SL или TP позиции, получаем 0.0, что это будет означать, что SL или TP у позиции нет, или что получена ошибка при выполнении функции? - неизвестно.
Вопрос 2. у брокера Just2Trade при исполнении функции OrderSend () структура MqlTradeResult значение price (Цена в сделке, подтверждённая брокером) всегда возвращает 0.0, чья это ошибка, MT5 или брокера? - очевидно, что брокера, но не это самое интересное, а то, что в тестере эта функция заполняет структуру результата нормально. таким образом, советник, отлаженный и протестированный в тестере, не сможет нормально работать на счете брокера в некоторых случаях построения логики. причем если сразу же запросить цену позиции после выполнения функции OrderSend () функцией PositionGetDouble (), то получим 0.0 (см. Вопрос 1), но, подождав 1 секунду, запросив снова цену позиции функцией PositionGetDouble (), получим.... цену позиции!!!
Наверное нарвусь на грубость, т.к. не отношусь к разработчикам :) но всё же отвечу на Ваши вопросы. Разработчики если и отвечают - то не быстро, а я по этим граблям находился уже достаточно, опыт есть.
По вопросу номер 1 - в справке по PositionGetDouble(), указано
Соответственно, если предварительно был PositionSelect()==true, то PositionGetDouble() возвращает то, что есть в выбранной позиции, ошибки там быть уже не может.
Если PositionSelect()==false или не делался - PositionGetDouble() выполнять смысла нет - об этом и говорится в справке.
По вопросу номер - 2.
Тоже кусок из справки:
То, что важно подчеркнул - в тестере исполнение мгновенное - и там всё заполняется сразу.
А в реальности - если запросить после OrderSend() сразу PositionSelect(), то она, как правило, вернет false. И цена сделки 0 в структуре по той же причине - её ещё не было.
А через секунду PositionSelect() уже вернет true - и можно будет делать PositionGetDouble().
Решается или через OnTrade или OnTradeTransaction или через таймер - тут зависит уже от фантазии программиста.
Зря Вы на fxsaber ругаетесь - видится, что он Вам искренне помочь хотел.
Это сообщение написано не ради спора/ругани, а просто из желания сэкономить вам время - повторюсь, сам потратил его много на понимание логики.
Наверное нарвусь на грубость, т.к. не отношусь к разработчикам :) но всё же отвечу на Ваши вопросы. Разработчики если и отвечают - то не быстро, а я по этим граблям находился уже достаточно, опыт есть.
По вопросу номер 1 - в справке по PositionGetDouble(), указано
Соответственно, если предварительно был PositionSelect()==true, то PositionGetDouble() возвращает то, что есть в выбранной позиции, ошибки там быть уже не может.
Если PositionSelect()==false или не делался - PositionGetDouble() выполнять смысла нет - об этом и говорится в справке.
По вопросу номер - 2.
Тоже кусок из справки:
То, что важно подчеркнул - в тестере исполнение мгновенное - и там всё заполняется сразу.
А в реальности - если запросить после OrderSend() сразу PositionSelect(), то она, как правило, вернет false. И цена сделки 0 в структуре по той же причине - её ещё не было.
А через секунду PositionSelect() уже вернет true - и можно будет делать PositionGetDouble().
Решается или через OnTrade или OnTradeTransaction или через таймер - тут зависит уже от фантазии программиста.
Зря Вы на fxsaber ругаетесь - видится, что он Вам искренне помочь хотел.
Это сообщение написано не ради спора/ругани, а просто из желания сэкономить вам время - повторюсь, сам потратил его много на понимание логики.
о, наверное Вы уже проверили свои утверждения у брокера Just2Trade? ну нет же, так?
в том то и дело, что PositionSelect()==true, но PositionGetDouble() возвращает цену позиции 0.0, хотя позиция успешно уже открыта, о чем свидетельствует возвращённый структурой результата тикет сделки, однако цена в этой структуре возврата ровна 0.0.
вместо поучений проведите простой эксперимент самостоятельно у брокера Just2Trade.
подобное поведение у этого брокера наблюдается уже более 5 лет, но так и присутствует сейчас. это единственная контора, у которой проявляется данная ошибка - нулевая цена в структуре возврата при успешно исполненной сделке.
Зря Вы на fxsaber ругаетесь - видится, что он Вам искренне помочь хотел.
в данном случае не знаю что он хочет, но точно не помочь. заявлять, что знает платформу лучше разработчиков - высшая степень хамства и наглости.
в том то и дело, что PositionSelect()==true, но PositionGetDouble() возвращает цену позиции 0.0
Если это так - то это конечно конкретный баг.
Открывать счет и проверять, простите, не буду - очень жалко время.
Чем смог, как говорится...
Если это так - то это конечно конкретный баг.
Открывать счет и проверять, простите, не буду - очень жалко время.
Чем смог, как говорится...
ну так какого лешего Вы лезли тогда вместе с Сабером?
Если это так - то это конечно конкретный баг.
Это не так.
Результат на Just2Trade.
Это не так.
Результат на Just2Trade.
ага, очень смешно))
а что же не распечатали сразу цену сделки после выполнения OrderSend ()?
и, небось, деньги положили на счет реальный, что бы проверить?
ну так какого лешего Вы лезли тогда вместе с Сабером?
Не пойму - зачем так нервничать и набрасываться на добрых людей?