コード例 #1
0
        public void CheckValidUserInput(double S, double K, double t, double sigma, double r)
        {
            BlackScholesParametersModel inputs = new BlackScholesParametersModel(S, K, t, sigma, r);

            Assert.IsTrue(UsefulTools.IsBlackScholesVariablesValid(new List <double>()
            {
                S, K, t, sigma, r
            }));
        }
コード例 #2
0
        public void TestResetCalculator(double S, double K, double t, double sigma, double r)
        {
            BlackScholesParametersModel inputs = new BlackScholesParametersModel(S, K, t, sigma, r);

            MainViewModel mvm = new MainViewModel
            {
                Inputs = inputs
            };

            mvm.ComputeOptionsPrice();
            mvm.Reset();

            Assert.IsNull(mvm.Call);
            Assert.IsNull(mvm.Put);
            Assert.IsFalse(UsefulTools.IsBlackScholesVariablesValid(mvm.Inputs.InputParametersDict.Values.ToList()));
        }
コード例 #3
0
        public void ComputeOptionsPrice()
        {
            try
            {
                if (!UsefulTools.IsBlackScholesVariablesValid(Inputs.InputParametersDict.Values.ToList()))
                {
                    UpdateAppStatus("Invalid input, Please enter all five variables.");
                    return;
                }

                CallOption callOption = new CallOption();
                Call = callOption.GetOptionData(Inputs);

                PutOption putOption = new PutOption();
                Put = putOption.GetOptionData(Inputs);

                UpdateAppStatus("Compute operation successfully completed.");
            }
            catch (Exception ex)
            {
                UpdateAppStatus(ex.Message);
            }
        }