public void ManualCloseOrder(string symbol, trade.TradeDirectionType direction, DateTime openDate, int quantity, Action <bool, string> closeDoneHandler) { Func <string, trade.TradeDirectionType, DateTime, int, OperationResult> closeFunc = new Func <string, trade.TradeDirectionType, DateTime, int, OperationResult> (_client.ManualCloseOrder); closeFunc.BeginInvoke(symbol, direction, openDate, quantity, delegate(IAsyncResult ar) { try { var or = closeFunc.EndInvoke(ar); if (closeDoneHandler != null) { closeDoneHandler(or.Success, or.ErrorMessage); } } catch (System.Exception ex) { LogManager.Logger.ErrorFormat("Manual close order failed due to {0}", ex.Message); if (closeDoneHandler != null) { closeDoneHandler(false, "手动平仓时发生未知错误"); } } }, null); }
public static string GetDirection(trade.TradeDirectionType direction) { switch (direction) { case trade.TradeDirectionType.BUY: return("买入"); case trade.TradeDirectionType.SELL: return("卖出"); default: return("未知"); } }