错误、漏洞、问题 - 页 1796

 
如果OrderSend(Async)做同样的检查,那么调用OrderCheck 有什么意义?
 
Vladimir Pastushak:

干净的绞盘,干净的卡斯帕,我把终端放进去,卡斯帕疯狂地把它切出来。

没有办法将其添加到例外......

不能重现。你可以写信给ServiceDesk,说明详情。Windows版本,终端版本,防病毒版本。
 
Aleksey Pak:
不能重现它。你可以给ServiceDesk一个请求,并详细描述。Windows版本,终端版本,防病毒版本。

DrWeb一无所获。

 
编译错误
#define MACRO  \
  if (true)    \
  {            \
    Print(""); \
//    Print(""); \
  }

void OnStart()
{
  MACRO
}
 
Vladislav Andruschenko:

DrWeb一无所获。

它总是发现没有什么))))
 
Vladimir Pastushak:
它总是发现没有什么))))

不,它经常发现病毒,但它在mt中没有发现任何东西。

 

继续这个话题。当对挂单进行请求时,Request.type_filling 字段不再有一个值,这是什么原因?

现在,无论我如何填充,OrderGetInteger(ORDER_TYPE_FILLING) == ORDER_FILLING_RETURN

脚本

void OnStart()
{
  MqlTradeRequest Request = {0};
  
  Request.action = TRADE_ACTION_PENDING;

  Request.symbol = _Symbol;
  Request.volume = 1;
  Request.price = SymbolInfoDouble(_Symbol, SYMBOL_BID) - 100 * _Point;

  Request.deviation = 10;
  Request.type = ORDER_TYPE_SELL_STOP;
  
  Request.type_filling = ORDER_FILLING_FOK;
  
  MqlTradeResult Result = {0};
  
  if (OrderSend(Request, Result))
  {
    Sleep(100);
    
    if (OrderSelect(Result.order))    
      Print(EnumToString((ENUM_ORDER_TYPE_FILLING)::OrderGetInteger(ORDER_TYPE_FILLING)));
  }        
}

结果

ORDER_FILLING_RETURN

type_filling必须为同一个ORDER_TYPE_SELL_STOP设置。ORDER_FILLING_FOK写在脚本中--它意味着当止损单被接受时,应该产生一个ORDER_FILLING_FOK类型的市场请求(全或无)。导致这种情况的原因是什么呢?

Pending Order

一个交易指令,放置一个待定订单。需要指定11个字段

  • 行动
  • 标志
  • 价格
  • 停止限制
  • 俚语
  • tp
  • 类型
  • Type_filling
  • type_time
  • 到期
Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура торгового запроса
Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура торгового запроса
  • www.mql5.com
Стандартные константы, перечисления и структуры / Структуры данных / Структура торгового запроса - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
fxsaber:
编译错误
#define MACRO  \
  if (true)    \
  {            \
    Print(""); \
/*    Print(""); */ \
  }
这是正确的,否则括号}本身就不正确。
 
A100:
#define MACRO  \
  if (true)    \
  {            \
    Print(""); \
/*    Print(""); */ \
  }
这是正确的,否则括号内的}就会自行行动
为什么双斜杠会作用于反斜杠?还有,为什么该宏在激活时带有双斜线的注释?
 
MetaQuotes-Demo
OrderSend(Symb,OP_BUYLIMIT,1,Ask-100*Point,100,0,0,My Order)
Request.action = TRADE_ACTION_PENDING (5)
Request.magic = 0
Request.order = 0
Request.symbol = CHFRUB_TOM
Request.volume = 1.0
Request.price = 57.9
Request.stoplimit = 0.0
Request.sl = 0.0
Request.tp = 0.0
Request.deviation = 100
Request.type = ORDER_TYPE_BUY_LIMIT (2)
Request.type_filling = ORDER_FILLING_RETURN (2)
Request.type_time = ORDER_TIME_DAY (1)
Request.expiration = 1970.01.01 00:00:00
Request.comment = My Order
Request.position = 0
Request.position_by = 0
Result.retcode = 10018
Result.deal = 0
Result.order = 0
Result.volume = 0.0
Result.price = 0.0
Result.bid = 0.0
Result.ask = 0.0
Result.comment = Market closed 53.327 + 0.000 ms
Result.request_id = 334
Result.retcode_external = 0
CHFRUB_TOM--据说是封闭市场。请纠正它。