public void select(DbConnection conn)
        {
            if (conn.State != ConnectionState.Open)
                conn.Open();

            DataTable tb = new DataTable();

            this.DAOList_ = new List<OPTION_POSITION_1928_Table_DAO>();

            DbCommand dbCommand = conn.CreateCommand();

            string selectQuery = OPTION_POSITION_1928_Table_DAOManager.SelectQuery_;



            //selectQuery = selectQuery.Replace("@KeyColumnValue@", this.KeyColumn_);

            dbCommand.CommandText = selectQuery;

            //DbDataAdapter dataAdapter = new DbDataAdapter(dbCommand, conn);
            DbDataAdapter dataAdapter = DataBaseConnectManager.CreateDataAdapter(dbCommand, conn);

            dataAdapter.Fill(tb);

            DataRow[] dr = tb.Select();
            int rowCount = dr.Length;

            foreach (DataRow item in dr)
            {
                OPTION_POSITION_1928_Table_DAO dao = new OPTION_POSITION_1928_Table_DAO();

                dao.POSITIONNAME_ = item[0].ToString();
                dao.SELLBUY_ = item[1].ToString();
                dao.UNIT_ = item[2].ToString();
                dao.EVALAMT_ = item[3].ToString();
                dao.DELTA_ = item[4].ToString();
                dao.GAMMA_ = item[5].ToString();
                dao.VEGA_ = item[6].ToString();
                dao.IMVOL_ = item[7].ToString();
                dao.DELTAPOSITION_ = item[8].ToString();
                dao.TOTALRISK_ = item[9].ToString();
                dao.DELTARISK_ = item[10].ToString();
                dao.GAMMARISK_ = item[11].ToString();
                dao.VEGARISK_ = item[12].ToString();
                dao.DEEPOTM_ = item[13].ToString();
                dao.REMAINDAYS_ = item[14].ToString();

                this.DAOList_.Add(dao);
            }



        }
        public void select(DbConnection conn)
        {
            if (conn.State != ConnectionState.Open)
            {
                conn.Open();
            }

            DataTable tb = new DataTable();

            this.DAOList_ = new List <OPTION_POSITION_1928_Table_DAO>();

            DbCommand dbCommand = conn.CreateCommand();

            string selectQuery = OPTION_POSITION_1928_Table_DAOManager.SelectQuery_;



            //selectQuery = selectQuery.Replace("@KeyColumnValue@", this.KeyColumn_);

            dbCommand.CommandText = selectQuery;

            //DbDataAdapter dataAdapter = new DbDataAdapter(dbCommand, conn);
            DbDataAdapter dataAdapter = DataBaseConnectManager.CreateDataAdapter(dbCommand, conn);

            dataAdapter.Fill(tb);

            DataRow[] dr       = tb.Select();
            int       rowCount = dr.Length;

            foreach (DataRow item in dr)
            {
                OPTION_POSITION_1928_Table_DAO dao = new OPTION_POSITION_1928_Table_DAO();

                dao.POSITIONNAME_  = item[0].ToString();
                dao.SELLBUY_       = item[1].ToString();
                dao.UNIT_          = item[2].ToString();
                dao.EVALAMT_       = item[3].ToString();
                dao.DELTA_         = item[4].ToString();
                dao.GAMMA_         = item[5].ToString();
                dao.VEGA_          = item[6].ToString();
                dao.IMVOL_         = item[7].ToString();
                dao.DELTAPOSITION_ = item[8].ToString();
                dao.TOTALRISK_     = item[9].ToString();
                dao.DELTARISK_     = item[10].ToString();
                dao.GAMMARISK_     = item[11].ToString();
                dao.VEGARISK_      = item[12].ToString();
                dao.DEEPOTM_       = item[13].ToString();
                dao.REMAINDAYS_    = item[14].ToString();

                this.DAOList_.Add(dao);
            }
        }
コード例 #3
0
        public void build(OPTION_POSITION_1928_Table_DAO dao)
        {
            this.nameParsing(dao.POSITIONNAME_);

            this.sellBuy_   = dao.SELLBUY_;
            this.unit_      = Convert.ToInt32(dao.UNIT_);
            this.evalAmt_   = Convert.ToDouble(dao.EVALAMT_);
            this.currPrice_ = this.evalAmt_ / (this.unit_ * 500000);

            //this.delta_ = Convert.ToDouble(dao.DELTA_);
            //this.gamma_ = Convert.ToDouble(dao.GAMMA_);
            //this.vega_ = Convert.ToDouble(dao.VEGA_);
            double v = Convert.ToDouble(dao.IMVOL_);

            this.imVol_ = v;
        }
        public void loadDataFromExcelSheet(Excel.Worksheet activeWorksheet)
        {
            this.optionViewModelList_.Clear();
            this.call_strikeData_.Clear();
            this.put_strikeData_.Clear();
            this.call_imvolData_.Clear();
            this.put_imvolData_.Clear();

            Excel.Range rngColumnA = activeWorksheet.get_Range("A1:A300");

            try
            {
                Excel.Range callNameRng = rngColumnA.Find("종목명");
                Excel.Range callDataRng = callNameRng.CurrentRegion;

                int callOptionCount = callDataRng.Rows.Count;

                for (int i = 1; i < callOptionCount; i++)
                {
                    OPTION_POSITION_1928_Table_DAO dao = new OPTION_POSITION_1928_Table_DAO();

                    dao.POSITIONNAME_  = (string)callNameRng.get_Offset(i, 0).Value;
                    dao.SELLBUY_       = (callNameRng.get_Offset(i, 1).Value2).ToString();
                    dao.UNIT_          = (callNameRng.get_Offset(i, 2).Value2).ToString();
                    dao.EVALAMT_       = (callNameRng.get_Offset(i, 3).Value2).ToString();
                    dao.DELTA_         = (callNameRng.get_Offset(i, 4).Value2).ToString();
                    dao.GAMMA_         = (callNameRng.get_Offset(i, 5).Value2).ToString();
                    dao.VEGA_          = (callNameRng.get_Offset(i, 6).Value2).ToString();
                    dao.IMVOL_         = (callNameRng.get_Offset(i, 7).Value2).ToString();
                    dao.DELTAPOSITION_ = (callNameRng.get_Offset(i, 8).Value2).ToString();
                    dao.TOTALRISK_     = (callNameRng.get_Offset(i, 9).Value2).ToString();
                    dao.DELTARISK_     = (callNameRng.get_Offset(i, 10).Value2).ToString();
                    dao.GAMMARISK_     = (callNameRng.get_Offset(i, 11).Value2).ToString();
                    dao.VEGARISK_      = (callNameRng.get_Offset(i, 12).Value2).ToString();
                    dao.DEEPOTM_       = (callNameRng.get_Offset(i, 13).Value2).ToString();
                    dao.REMAINDAYS_    = (callNameRng.get_Offset(i, 14).Value2).ToString();

                    OptionViewModel_1928 ovm_1928 = new OptionViewModel_1928();
                    ovm_1928.Brush_ = BrushesViewModel.BrushList_[i - 1];
                    ovm_1928.build(dao);

                    if (ovm_1928.ImVol_ > 5)
                    {
                        if (ovm_1928.CallPutEnum_ == Option.Type.Call)
                        {
                            if (!(this.call_strikeData_.Contains(ovm_1928.Strike_)))
                            {
                                this.call_strikeData_.Add(ovm_1928.Strike_);
                                this.call_imvolData_.Add(ovm_1928.ImVol_);
                            }
                        }
                        else if (ovm_1928.CallPutEnum_ == Option.Type.Put)
                        {
                            if (!(this.put_strikeData_.Contains(ovm_1928.Strike_)))
                            {
                                this.put_strikeData_.Add(ovm_1928.Strike_);
                                this.put_imvolData_.Add(ovm_1928.ImVol_);
                            }
                        }
                        else
                        {
                        }
                    }

                    this.optionViewModelList_.Add(ovm_1928);
                }

                Excel.Range kospiNameRng = rngColumnA.Find("KOSPI200");
                this.gbmParaViewModel_.CurrentPrice_ = Convert.ToDouble((kospiNameRng.get_Offset(0, 1).Value2).ToString());

                this.put_strikeData_.Reverse();
                this.put_imvolData_.Reverse();

                this.gbmParaViewModel_.Call_Interpolation_ = this.call_imvolFitting();
                this.gbmParaViewModel_.Put_Interpolation_  = this.put_imvolFitting();
            }
            catch (Exception)
            {
                System.Windows.MessageBox.Show("Load PowerBase TR_1928 Data.");
                throw;
            }
        }
        public void loadDataFromExcelSheet(Excel.Worksheet activeWorksheet)
        {
            
            this.optionViewModelList_.Clear();
            this.call_strikeData_.Clear();
            this.put_strikeData_.Clear();
            this.call_imvolData_.Clear();
            this.put_imvolData_.Clear();

            Excel.Range rngColumnA = activeWorksheet.get_Range("A1:A300");

            try
            {
                Excel.Range callNameRng = rngColumnA.Find("종목명");
                Excel.Range callDataRng = callNameRng.CurrentRegion;

                int callOptionCount = callDataRng.Rows.Count;

                for (int i = 1; i < callOptionCount; i++)
                {
                    OPTION_POSITION_1928_Table_DAO dao = new OPTION_POSITION_1928_Table_DAO();

                    dao.POSITIONNAME_ = (string)callNameRng.get_Offset(i, 0).Value;
                    dao.SELLBUY_ = (callNameRng.get_Offset(i, 1).Value2).ToString();
                    dao.UNIT_ = (callNameRng.get_Offset(i, 2).Value2).ToString();
                    dao.EVALAMT_ = (callNameRng.get_Offset(i, 3).Value2).ToString();
                    dao.DELTA_ = (callNameRng.get_Offset(i, 4).Value2).ToString();
                    dao.GAMMA_= (callNameRng.get_Offset(i, 5).Value2).ToString();
                    dao.VEGA_ = (callNameRng.get_Offset(i, 6).Value2).ToString();
                    dao.IMVOL_ = (callNameRng.get_Offset(i, 7).Value2).ToString();
                    dao.DELTAPOSITION_ = (callNameRng.get_Offset(i, 8).Value2).ToString();
                    dao.TOTALRISK_ = (callNameRng.get_Offset(i, 9).Value2).ToString();
                    dao.DELTARISK_ = (callNameRng.get_Offset(i, 10).Value2).ToString();
                    dao.GAMMARISK_ = (callNameRng.get_Offset(i, 11).Value2).ToString();
                    dao.VEGARISK_ = (callNameRng.get_Offset(i, 12).Value2).ToString();
                    dao.DEEPOTM_ = (callNameRng.get_Offset(i, 13).Value2).ToString();
                    dao.REMAINDAYS_ = (callNameRng.get_Offset(i, 14).Value2).ToString();

                    OptionViewModel_1928 ovm_1928 = new OptionViewModel_1928();
                    ovm_1928.Brush_ = BrushesViewModel.BrushList_[i - 1];
                    ovm_1928.build(dao);

                    if (ovm_1928.ImVol_ > 5 )
                    {
                        if (ovm_1928.CallPutEnum_ == Option.Type.Call)
                        {
                            if (!(this.call_strikeData_.Contains(ovm_1928.Strike_)))
                            {
                                this.call_strikeData_.Add(ovm_1928.Strike_);
                                this.call_imvolData_.Add(ovm_1928.ImVol_);
                            }
                        }
                        else if (ovm_1928.CallPutEnum_ == Option.Type.Put)
                        {
                            if (!(this.put_strikeData_.Contains(ovm_1928.Strike_)))
                            {
                                this.put_strikeData_.Add(ovm_1928.Strike_);
                                this.put_imvolData_.Add(ovm_1928.ImVol_);
                            }
                        }
                        else
                        { }
                        
                    }

                    this.optionViewModelList_.Add(ovm_1928);
                    
                }

                Excel.Range kospiNameRng = rngColumnA.Find("KOSPI200");
                this.gbmParaViewModel_.CurrentPrice_ = Convert.ToDouble((kospiNameRng.get_Offset(0, 1).Value2).ToString());

                this.put_strikeData_.Reverse();
                this.put_imvolData_.Reverse();

                this.gbmParaViewModel_.Call_Interpolation_ = this.call_imvolFitting();
                this.gbmParaViewModel_.Put_Interpolation_ = this.put_imvolFitting();

                
            }
            catch (Exception)
            {
                System.Windows.MessageBox.Show("Load PowerBase TR_1928 Data.");
                throw;
            }
        }
コード例 #6
0
        public void build(OPTION_POSITION_1928_Table_DAO dao)
        {
            this.nameParsing(dao.POSITIONNAME_);

            this.sellBuy_ = dao.SELLBUY_;
            this.unit_ = Convert.ToInt32(dao.UNIT_);
            this.evalAmt_ = Convert.ToDouble(dao.EVALAMT_);
            this.currPrice_ = this.evalAmt_ / (this.unit_ * 500000);

            //this.delta_ = Convert.ToDouble(dao.DELTA_);
            //this.gamma_ = Convert.ToDouble(dao.GAMMA_);
            //this.vega_ = Convert.ToDouble(dao.VEGA_);
            double v = Convert.ToDouble(dao.IMVOL_);

            this.imVol_ = v;

        }