Esempio n. 1
0
        /// <summary>
        /// 初始化平仓参数列表
        /// </summary>
        /// <param name="WeightList">权重列表</param>
        /// <param name="LiStockOrder">持仓列表</param>
        /// <param name="CT">期货</param>
        /// <param name="OP">开仓点位</param>
        /// <param name="INDEX">开仓指数</param>
        /// <param name="HD">手数</param>
        /// <returns>开仓参数实例</returns>
        /// <param name="dStockBonus">分红</param>
        /// <param name="dGiftValue">送股</param>
        /// <param name="dStockOpenCost">开仓成本</param>
        /// <param name="dFutureSellPoint">期货开仓点</param>
        /// <param name="dOpenedPoint">开仓基差点位</param>
        /// <param name="dExpectedGain">预期收益</param>
        /// <param name="dShortCharge">预估费率</param>
        /// <returns></returns>
        close_args InitArgs(Dictionary <String, double> WeightList, Dictionary <string, int> LiStockOrder,
                            String CT, string INDEX, int HD, double dStockBonus, double dGiftValue, double dStockOpenCost, double dFutureSellPoint, double dOpenedPoint, double dExpectedGain, double dShortCharge)
        {
            close_args args = new close_args();

            //List<managedstockposition> position = new List<managedstockposition>();

            String POSITIONLIST = string.Empty;
            int    positionNum  = 0;

            foreach (var item in LiStockOrder)
            {
                managedstockposition s  = new managedstockposition();
                managedsecurityindex si = new managedsecurityindex();

                string code  = item.Key.Substring(1);
                string type  = item.Key.Substring(0, 1);
                string count = item.Value.ToString();

                s.tradevolume = item.Value;

                POSITIONLIST += (code + ";" + type + ";" + count + "|");
                positionNum++;
            }

            POSITIONLIST += "*";

            args.bTradingAllowed = false;

            args.contractCode = CT;
            args.indexCode    = (INDEX == null) ? "300" : INDEX;
            args.nHands       = HD;


            args.dStockBonus      = dStockBonus;
            args.dGiftValue       = dGiftValue;
            args.dStockOpenCost   = dStockOpenCost;
            args.dFutureSellPoint = dFutureSellPoint;
            args.dOpenedPoint     = dOpenedPoint;
            args.dExpectedGain    = dExpectedGain;
            args.dShortCharge     = dShortCharge;
            args.positionNum      = positionNum;
            args.bTradingAllowed  = false;
            args.POSITION         = POSITIONLIST;

            return(args);
        }
Esempio n. 2
0
        /// <summary>
        /// 初始化平仓参数列表
        /// </summary>
        /// <param name="WeightList">权重列表</param>
        /// <param name="LiStockOrder">持仓列表</param>
        /// <param name="CT">期货</param>
        /// <param name="OP">开仓点位</param>
        /// <param name="INDEX">开仓指数</param>
        /// <param name="HD">手数</param>
        /// <returns>开仓参数实例</returns>
        /// <param name="dStockBonus">分红</param>
        /// <param name="dGiftValue">送股</param>
        /// <param name="dStockOpenCost">开仓成本</param>
        /// <param name="dFutureSellPoint">期货开仓点</param>
        /// <param name="dOpenedPoint">开仓基差点位</param>
        /// <param name="dExpectedGain">预期收益</param>
        /// <param name="dShortCharge">预估费率</param>
        /// <returns></returns>
        close_args InitArgs(Dictionary<String, double> WeightList, Dictionary<string, int> LiStockOrder,
            String CT, string INDEX, int HD, double dStockBonus, double dGiftValue, double dStockOpenCost, double dFutureSellPoint, double dOpenedPoint, double dExpectedGain, double dShortCharge)
        {
            close_args args = new close_args();

            //List<managedstockposition> position = new List<managedstockposition>();

            String POSITIONLIST = string.Empty;
            int positionNum = 0;

            foreach (var item in LiStockOrder)
            {
                managedstockposition s = new managedstockposition();
                managedsecurityindex si = new managedsecurityindex();

                string code = item.Key.Substring(1);
                string type = item.Key.Substring(0, 1);
                string count = item.Value.ToString();

                s.tradevolume = item.Value;

                POSITIONLIST += (code + ";" + type + ";" + count + "|");
                positionNum++;
            }

            POSITIONLIST += "*";

            args.bTradingAllowed = false;

            args.contractCode = CT;
            args.indexCode = (INDEX == null) ? "300" : INDEX;
            args.nHands = HD;
           

            args.dStockBonus = dStockBonus;
            args.dGiftValue = dGiftValue;
            args.dStockOpenCost = dStockOpenCost;
            args.dFutureSellPoint = dFutureSellPoint;
            args.dOpenedPoint = dOpenedPoint;
            args.dExpectedGain = dExpectedGain;
            args.dShortCharge = dShortCharge;
            args.positionNum = positionNum;
            args.bTradingAllowed = false;
            args.POSITION = POSITIONLIST;

            return args;

        }