Example #1
0
        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);
        }
Example #2
0
        public static string GetDirection(trade.TradeDirectionType direction)
        {
            switch (direction)
            {
            case trade.TradeDirectionType.BUY:
                return("买入");

            case trade.TradeDirectionType.SELL:
                return("卖出");

            default:
                return("未知");
            }
        }