Обсуждение статьи "Какие проверки должен пройти торговый робот перед публикацией в Маркете" - страница 14

 
Ivan Titov #:

Имеется в виду функция OrderCheck()? В документации написано, что она проверяет достаточность средств для совершения операции. Тоже хотелось бы функцию проверки закрытия рынка, в т.ч. для MT4

Не только достаточность средств. Вот например

ENUM_ORDER_TYPE order_type;
double tp = 0.0,
       price = 0.0;
MqlTick mqlTick;
MqlTradeRequest           my_request;               //  request data
MqlTradeResult            my_result;                //  result data
MqlTradeCheckResult       my_check_result;          //  result check data
long chart_id = ChartID();
/********************Script program start function*******************/
void OnStart()
 {
  ZeroMemory(my_request);
  ZeroMemory(my_check_result);
//--- setting my_request
  int k = order_type%2 == ORDER_TYPE_BUY ? 1 : -1;
  double pr = price != 0.0 ? price : order_type == ORDER_TYPE_BUY ? mqlTick.ask : mqlTick.bid;
  ENUM_TRADE_REQUEST_ACTIONS action = order_type == ORDER_TYPE_BUY || order_type == ORDER_TYPE_SELL ? TRADE_ACTION_DEAL : TRADE_ACTION_PENDING;
  my_request.action     = action;
  my_request.symbol     = _Symbol;
  my_request.volume     = 0.1;
  my_request.type       = order_type;
  my_request.price      = pr;
  my_request.sl         = 0.0;
  my_request.tp         = tp > 0.0 ? pr+tp*k : 0.0;
//my_request.magic      = Magic;
  my_request.deviation  = 10;
  bool check = OrderCheck(my_request, my_check_result);
  if(!check)
    Print(my_check_result.retcode);
  DebugBreak();
 }/******************************************************************/

10027

TRADE_RETCODE_CLIENT_DISABLES_AT

Автотрейдинг запрещен клиентским терминалом


Также неправильная цена в запросе,


неправильные стопы и многое другое, а что касается ошибки 10018, да я поспешил с ответом и не проверил. А оказалось, всё что угодно только не 10018…

 

Обнаружилось, что советники с void OnTesterInit() не оптимизируются, если скачена демо версия.

Планируется ли это исправлять? И, почему не давать бы предупреждение об этом разработчику при валидации продукта.

А то год я ждал, что кто-то купит советник, при этом было скачивание, но в итоге оказалось, что его нельзя было оптимизировать, что требовалось согласно инструкции к нему.

 
ошибок в советнике нету а при проверке есть... не могу понять что делать , ошибок нету проверял как тут описано в журнале