Ошибки, баги, вопросы - страница 1819

 

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Ошибки, баги, вопросы

fxsaber, 2017.02.09 09:12

Кстати, а почему при выставлении отложки через OrderSend он возвращает true сразу, как состояние ордера становится ORDER_STATE_STARTED, а не дожидается ORDER_STATE_PLACED?

Это же не асинхронная OrderSendAsync. 


Ответ из СД

Синхронный метод ожидает подтверждения выполнения торгового запроса - конечного состояния торгового запроса. Транзакции изменения ордеров, сделок и позиций приходят асинхронно относительно транзакций торгового запроса.

Кто понял ответ, поясните. Так и не понял, почему для OrderSend считается нормальной ситуация

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

ФОРТС. Вопросы по исполнению

fxsaber, 2017.02.09 08:56

Правильно ли понимаю, что в данном случае OrderSend вернул true практически мгновенно, но 65 секунд наблюдалось (ENUM_ORDER_STATE)::OrderGetInteger(ORDER_STATE) == ORDER_STATE_STARTED ?

Когда после успешного OrderSend невозможно ничего сделать с этим ордером, поскольку он STARTED.
 
fxsaber:

Ответ из СД

Кто понял ответ, поясните. Так и не понял, почему для OrderSend считается нормальной ситуация

Когда после успешного OrderSend невозможно ничего сделать с этим ордером, поскольку он STARTED.
Вероятно в СД не могут проверить Ваше утверждение.
 
prostotrader:
Вероятно в СД не могут проверить Ваше утверждение.
Мне надо понять, это нормальная ситуация или нет. Если нет - состряпаю воспроизводящий код.
 
fxsaber:
Мне надо понять, это нормальная ситуация или нет. Если нет - состряпаю воспроизводящий код.
По задумке должно быть как отвечают в СД, а на практике... Вы знаете как.
 
prostotrader:
По задумке должно быть как отвечают в СД, а на практике... Вы знаете как.
Ну тогда не ясно, почему СД посчитали, что бага нет, и закрыли заявку. Наверное, не поняли проблемы. Буду открывать ее заново.
 
fxsaber:
Ну тогда не ясно, почему СД посчитали, что бага нет, и закрыли заявку. Наверное, не поняли проблемы. Буду открывать ее заново.
Приложите этот советник
Файлы:
 

input string Somevalue = "Maxim";
...
void OnTick(){
   Comment(Somevalue);
}


Программа MQL5 выводит комментарий:

"1487811600"

Почему так происходит? Как вывести правильное строковое значение?

 
Maksym Mudrakov:

input string Somevalue = "Maxim";
...
void OnTick(){
   Comment(Somevalue);
}


Программа MQL5 выводит комментарий:

"1487811600"

Почему так происходит? Как вывести правильное строковое значение?

Ищите ошибку. Или выкладывайте полный воспроизводимый код. Проверочный код

//+------------------------------------------------------------------+
//|                                                        Test.mql5 |
//|                                      Copyright 2017, CompanyName |
//|                                       http://www.companyname.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2017, Vladimir Karputov"
#property link      "http://wmua.ru/slesar/"
#property version   "1.00"
#property script_show_inputs
//--- input parameters
input string Somevalue="Maxim";
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   Comment(Somevalue);
  }
//+------------------------------------------------------------------+


ошибку не воспроизводит.

Также рекомендую заменить Comment на Print - ибо есть  вероятность, что другая программа банально  затирает комментарий на графике

Файлы:
test.mq5  2 kb
 
перезапустил советника на другом графике, заработа всё правильно. Странно. Но спасибо за помощь.
 
Maksym Mudrakov:
перезапустил советника на другом графике, заработа всё правильно. Странно. Но спасибо за помощь.
Тем более у Вас переменная input - переменную такого типа в коде нельзя переназначить - остаётся вариант со второй программой (советником или индикатором) который тайно шкодит и выводит свой комментарий.