MT4 里怎么获取当前持仓?
分享一段获取当前所有持仓并遍历的代码,配合风控用的。
// 获取当前所有持仓订单
void GetAllPositions() {
Print("=== 当前持仓 ===");
Print("总订单数:", OrdersTotal());
for(int i = 0; i < OrdersTotal(); i++) {
ulong ticket = OrderGetTicket(i);
if(OrderSelect(ticket)) {
Print("---");
Print("订单号:", ticket);
Print("品种:", OrderGetString(ORDER_SYMBOL));
Print("类型:", OrderGetInteger(ORDER_TYPE) == OP_BUY ? "买入" : "卖出");
Print("手数:", DoubleToString(OrderGetDouble(ORDER_VOLUME), 2));
Print("开仓价:", DoubleToString(OrderGetDouble(ORDER_OPENPRICE), Digits));
Print("止损:", DoubleToString(OrderGetDouble(ORDER_SL), Digits));
Print("止盈:", DoubleToString(OrderGetDouble(ORDER_TP), Digits));
Print("盈亏:", DoubleToString(OrderGetDouble(ORDER_PROFIT), 2), " USD");
}
}
}全部回复(5)
发表回复
请先登录后再回复。
