public override Excel_underlyingModel_paraViewModel Clone() { Excel_geometricBMViewModel e_gbmVM = new Excel_geometricBMViewModel(); e_gbmVM.CurrentValue_ = this.CurrentValue_; e_gbmVM.drift_ = this.Drift_; e_gbmVM.dividend_ = this.dividend_; e_gbmVM.volatility_ = this.volatility_; return(e_gbmVM); }
public override Excel_underlyingModel_paraViewModel underModel(Excel_underlyingInfoViewModel excel_uivm, Excel_instrumentViewModel excel_instrumentViewModel, DateTime dateTime) { Excel_geometricBMViewModel e_gbmvm = new Excel_geometricBMViewModel(); //excel_upvm.loadMarketData(dateTime); string value = Excel_loaderViewModel.loadMarketData(dateTime, excel_uivm.Excel_type_, excel_uivm.KrCode_); e_gbmvm.CurrentValue_ = value; e_gbmvm.Drift_ = this.GBMDriftSetting_.value(dateTime, excel_instrumentViewModel, excel_uivm); e_gbmvm.Dividend_ = this.GBMDividendSetting_.value(dateTime, excel_instrumentViewModel, excel_uivm); e_gbmvm.Volatility_ = this.GBMVolatilitySetting_.value(dateTime, excel_instrumentViewModel, excel_uivm); return(e_gbmvm); }
public override Excel_underlyingModel_paraViewModel underModel(Excel_underlyingInfoViewModel excel_uivm, Excel_instrumentViewModel excel_instrumentViewModel, DateTime dateTime) { Excel_geometricBMViewModel e_gbmvm = new Excel_geometricBMViewModel(); //excel_upvm.loadMarketData(dateTime); string value = Excel_loaderViewModel.loadMarketData(dateTime, excel_uivm.Excel_type_, excel_uivm.KrCode_); e_gbmvm.CurrentValue_ = value; e_gbmvm.Drift_ = this.GBMDriftSetting_.value(dateTime, excel_instrumentViewModel, excel_uivm); e_gbmvm.Dividend_ = this.GBMDividendSetting_.value(dateTime, excel_instrumentViewModel, excel_uivm); e_gbmvm.Volatility_ = this.GBMVolatilitySetting_.value(dateTime, excel_instrumentViewModel, excel_uivm); return e_gbmvm; }
public Excel_underlyingInfo_paraViewModel getUnderlyingParameterModel(Excel_underlyingInfoViewModel e_uivm) { Excel_underlyingInfo_paraViewModel e_uipvm = new Excel_underlyingInfo_paraViewModel(); if (e_uivm.Excel_type_.ToUpper() == "STOCK") { e_uipvm.KrCode_ = e_uivm.KrCode_; //e_uipvm.UnderName_ = e_uivm.Name_; //e_uipvm.Model_ = "GBM"; Excel_geometricBMViewModel e_gbmvm = new Excel_geometricBMViewModel(); e_gbmvm.Code_ = e_uivm.KrCode_; e_uipvm.Excel_underlyingModel_paraViewModel_ = e_gbmvm; } else if (e_uivm.Excel_type_.ToUpper() == "INTERESTRATE") { e_uipvm.KrCode_ = e_uivm.KrCode_; //e_uipvm.UnderName_ = e_uivm.Name_; //e_uipvm.Model_ = "HullWhiteOne"; Excel_hullWhiteOneFactorViewModel e_hwofvm = new Excel_hullWhiteOneFactorViewModel(); Excel_interestRateViewModel e_irvm = e_uivm as Excel_interestRateViewModel; e_hwofvm.Code_ = e_uivm.KrCode_; e_hwofvm.setInterestRateInfo(e_irvm); e_uipvm.Excel_underlyingModel_paraViewModel_ = e_hwofvm; } else { throw new NotImplementedException(); } e_uipvm.Excel_underlyingModel_paraViewModel_.parameterLoad( this.ParameterSettingManager_); return e_uipvm; }
public Excel_underlyingInfo_paraViewModel getUnderlyingParameterModel(Excel_underlyingInfoViewModel e_uivm) { Excel_underlyingInfo_paraViewModel e_uipvm = new Excel_underlyingInfo_paraViewModel(); if (e_uivm.Excel_type_.ToUpper() == "STOCK") { e_uipvm.KrCode_ = e_uivm.KrCode_; //e_uipvm.UnderName_ = e_uivm.Name_; //e_uipvm.Model_ = "GBM"; Excel_geometricBMViewModel e_gbmvm = new Excel_geometricBMViewModel(); e_gbmvm.Code_ = e_uivm.KrCode_; e_uipvm.Excel_underlyingModel_paraViewModel_ = e_gbmvm; } else if (e_uivm.Excel_type_.ToUpper() == "INTERESTRATE") { e_uipvm.KrCode_ = e_uivm.KrCode_; //e_uipvm.UnderName_ = e_uivm.Name_; //e_uipvm.Model_ = "HullWhiteOne"; Excel_hullWhiteOneFactorViewModel e_hwofvm = new Excel_hullWhiteOneFactorViewModel(); Excel_interestRateViewModel e_irvm = e_uivm as Excel_interestRateViewModel; e_hwofvm.Code_ = e_uivm.KrCode_; e_hwofvm.setInterestRateInfo(e_irvm); e_uipvm.Excel_underlyingModel_paraViewModel_ = e_hwofvm; } else { throw new NotImplementedException(); } e_uipvm.Excel_underlyingModel_paraViewModel_.parameterLoad( this.ParameterSettingManager_); return(e_uipvm); }
public Excel_underlyingCalcInfo_paraViewModel underInfo_para(Excel_underlyingCalcInfoViewModel underInfo) { Excel_underlyingCalcInfo_paraViewModel e_uc_pvm = new Excel_underlyingCalcInfo_paraViewModel(); Excel_underlyingInfo_paraViewModel e_u_pvm = new Excel_underlyingInfo_paraViewModel(); e_u_pvm.Excel_underlyingModel_paraViewModel_ = new Excel_geometricBMViewModel(); e_u_pvm.CurrentValue_ = "100"; Excel_geometricBMViewModel e_gbmvm = new Excel_geometricBMViewModel(); e_gbmvm.Dividend_ = "0.012"; e_gbmvm.Drift_ = "0.03"; e_gbmvm.Volatility_ = "0.03"; e_u_pvm.Excel_underlyingModel_paraViewModel_ = e_gbmvm; e_uc_pvm.Excel_underlyingInfo_paraViewModel_.Add(e_u_pvm); return e_uc_pvm; }
public Excel_underlyingCalcInfo_paraViewModel underInfo_para(Excel_underlyingCalcInfoViewModel underInfo) { Excel_underlyingCalcInfo_paraViewModel e_uc_pvm = new Excel_underlyingCalcInfo_paraViewModel(); Excel_underlyingInfo_paraViewModel e_u_pvm = new Excel_underlyingInfo_paraViewModel(); e_u_pvm.Excel_underlyingModel_paraViewModel_ = new Excel_geometricBMViewModel(); e_u_pvm.CurrentValue_ = "100"; Excel_geometricBMViewModel e_gbmvm = new Excel_geometricBMViewModel(); e_gbmvm.Dividend_ = "0.012"; e_gbmvm.Drift_ = "0.03"; e_gbmvm.Volatility_ = "0.03"; e_u_pvm.Excel_underlyingModel_paraViewModel_ = e_gbmvm; e_uc_pvm.Excel_underlyingInfo_paraViewModel_.Add(e_u_pvm); return(e_uc_pvm); }
private void ViewModelChanged(object sender, DependencyPropertyChangedEventArgs e) { this.viewModel_ = this.DataContext as Excel_geometricBMViewModel; //this.gbmPanel_.DataContext = this.viewModel_; }
public string set_gbmModel(string underCode, double currentValue, double drift, double dividend, double constVol) { try { Excel_standardSwapParaViewModel e_sspvm = this.InstVM_.Excel_parameterViewModel_ as Excel_standardSwapParaViewModel; bool setFlag = false; foreach (var item in e_sspvm.Excel_underlyingCalcInfo_paraViewModel_.Excel_underlyingInfo_paraViewModel_) //foreach (var item in InstVM_.Excel_interfaceViewModel_.Excel_underlyingCalcInfoViewModel_.Excel_underlyingInfoViewModel_) { if (underCode.ToUpper() == item.KrCode_.ToUpper()) { Excel_geometricBMViewModel e_gbmvm = new Excel_geometricBMViewModel(); e_gbmvm.CurrentValue_ = currentValue.ToString(); e_gbmvm.Drift_ = drift.ToString(); e_gbmvm.Dividend_ = dividend.ToString(); e_gbmvm.Volatility_ = constVol.ToString(); item.Excel_underlyingModel_paraViewModel_ = e_gbmvm; } } if (!setFlag) { throw new Exception( underCode + " doesn't exist"); } return "set gbm_model complete : " + underCode; } catch (Exception e) { string errStr = "set fail: " + e.Message; return errStr; } }
public override Excel_underlyingModel_paraViewModel Clone() { Excel_geometricBMViewModel e_gbmVM = new Excel_geometricBMViewModel(); e_gbmVM.CurrentValue_ = this.CurrentValue_; e_gbmVM.drift_ = this.Drift_; e_gbmVM.dividend_ = this.dividend_; e_gbmVM.volatility_ = this.volatility_; return e_gbmVM; }