private UnderlyingInfo_paraViewModel underInfo_paraVM(string itemCode)
        {
            UnderlyingInfo_paraViewModel underInfo_paraVM = new UnderlyingInfo_paraViewModel();

            QueryStr queryStr = new QueryStr(this.fileInfo_);

            queryStr.VariableMap_.Add("ITEM_CODE", itemCode);
            queryStr.VariableMap_.Add("STD_DATE", this.ReferenceDate_.ToString("yyyyMMdd"));

            conn_.addQuery("underInfo", queryStr.getQuery());

            conn_.excute();

            DataTable tb = conn_.ResultDataSet_.Tables["underInfo"];

            string krCode;
            string underName;
            string currentValue;
            string drift;
            string dividend;
            string volatility;

            List <string> underCode = new List <string>();

            foreach (DataRow item in tb.Rows)
            {
                krCode       = item["STOCK_ID"].ToString();
                underName    = item["STOCK_NAME"].ToString();
                currentValue = item["CURR_PRICE"].ToString();
                drift        = (Convert.ToDouble(item["RF"].ToString()) / 100).ToString();
                dividend     = (Convert.ToDouble(item["DIVIDEND_RATE"].ToString()) / 100).ToString();
                volatility   = (Convert.ToDouble(item["VOL"].ToString()) / 100).ToString();

                underCode.Add(krCode);

                GeometricBMViewModel gbmVM = this.makeGBM(krCode, underName, currentValue, drift, dividend, volatility);

                underInfo_paraVM.Underlying_paraViewModel_.Add(gbmVM);
            }

            underInfo_paraVM.CorrelationInfo_paraViewModel_ = this.makeCorrInfo(underCode);

            return(underInfo_paraVM);
        }
        public override void buildXml()
        {
            
            GeometricBMViewModel gbmvm = new GeometricBMViewModel();

            gbmvm.KrCode_ = this.krCode_;
            gbmvm.UnderName_ = this.underName_;

            gbmvm.CurrentValue_ = this.currentValue_;
            gbmvm.Drift_ = this.drift_;
            gbmvm.Dividend_ = this.dividend_;
            gbmvm.Volatility_ = this.volatility_;

            //viewModel_.buildXml(xmlWriter);

            this.viewModel_ = gbmvm;


        }
        public GeometricBMViewModel makeGBM(string krCode,
                                            string underName,
                                            string currentValue,
                                            string drift,
                                            string dividend,
                                            string volatility)
        {
            GeometricBMViewModel gbmVm = new GeometricBMViewModel();

            gbmVm.Type_         = "geometricBM";
            gbmVm.KrCode_       = krCode;
            gbmVm.UnderName_    = underName;
            gbmVm.CurrentValue_ = currentValue;
            gbmVm.Drift_        = drift;
            gbmVm.Dividend_     = dividend;
            gbmVm.Volatility_   = volatility;

            return(gbmVm);
        }
        public GeometricBMViewModel makeGBM(string krCode,
                                            string underName,
                                            string currentValue,
                                            string drift,
                                            string dividend,
                                            string volatility)
        {
            GeometricBMViewModel gbmVm = new GeometricBMViewModel();

            gbmVm.Type_ = "geometricBM";
            gbmVm.KrCode_ = krCode;
            gbmVm.UnderName_ = underName;
            gbmVm.CurrentValue_ = currentValue;
            gbmVm.Drift_ = drift;
            gbmVm.Dividend_ = dividend;
            gbmVm.Volatility_ = volatility;

            return gbmVm;
        }