예제 #1
0
        public void SecurityPricingSimpleContructionTest()
        {
            Debt s;
            SecuritiesPricing price;

            try
            {
                using (var db = new FGABusinessComponent.BusinessComponent.FGAContext("TEST", compiledModel))
                {
                    s = new Debt(ISIN: "PR0000000001", FinancialInstrumentName: "Pricing Security 1", MaturityDate: new DateTime(2013, 1, 1), interestCoupon: new InterestCalculation(new PercentageRate(2.365), new FrequencyCode(1)));
                    db.Debts.Add(s);
                    CurrencyAndAmount p = new CurrencyAndAmount(1.25, (CurrencyCode)"EUR");
                    price = new SecuritiesPricing(p, DateTime.Parse("31/07/2012"), (TypeOfPriceCode)"MARKET");
                    price.Set(s);
                    db.SecuritiesPricings.Add(price);

                    db.SaveChanges();
                }
            }
            catch (Exception e)
            {
                System.Console.WriteLine(e);
                throw e;
            }
        }
예제 #2
0
        public void SecurityPricingCompleteContructionTest()
        {
            Debt s;
            SecuritiesPricing price;

            try
            {
                using (var db = new FGABusinessComponent.BusinessComponent.FGAContext("PREPROD", compiledModel))
                {
                    s = new Debt(ISIN: "PR0000000002", FinancialInstrumentName: "Pricing Security 2", MaturityDate: new DateTime(2013, 1, 1), interestCoupon: new InterestCalculation(new PercentageRate(2.365), new FrequencyCode(1)));
                    db.Debts.Add(s);
                    CurrencyAndAmount    p                    = new CurrencyAndAmount(1.25, (CurrencyCode)"EUR");
                    Yield                yield                = new Yield(ChangePrice_MTD: 2.1);
                    PriceFactType        priceFact            = new PriceFactType(101.2, 100.1, 100.1, 100.3, 100.4, 100.6);
                    DebtYield            dy                   = new DebtYield(YieldToMaturityRate: 6.2, YieldToWorstRate: 3.5);
                    DebtSpread           ds                   = new DebtSpread(OptionAdjustedSpread: 3.32);
                    DebtPriceCalculation debtPriceCalculation = new DebtPriceCalculation(CleanPrice: 100.1,
                                                                                         AccruedInterest: 2.36);

                    DebtDataCalculation debtDataCalculation = new DebtDataCalculation(MacaulayDuration: 9.5,
                                                                                      ModifiedDuration: 9.6,
                                                                                      TimeToMaturity: 9.3);

                    price = new SecuritiesPricing(p, DateTime.Parse("31/07/2012"), (TypeOfPriceCode)"MARKET",
                                                  100.3, 100.4, 100.35, priceFact, yield, debtPriceCalculation, debtDataCalculation, dy, ds);
                    price.Set(s);
                    db.SecuritiesPricings.Add(price);

                    db.SaveChanges();
                }
            }
            catch (Exception e)
            {
                System.Console.WriteLine(e);
                throw e;
            }
        }
예제 #3
0
 public void Remove(ref SecuritiesPricing r)
 {
     this.Pricing.Remove(r);
 }
예제 #4
0
        public static SecuritiesPricing LookupSecurityPricingObject(FGAContext db, Security sec, DateTime dateOfData, string ValuationSource)
        {
            SecuritiesPricing secV = db.SecuritiesPricings.Where <SecuritiesPricing>(t => (t.SecurityId == sec.Id && t.Date == dateOfData && t.PriceSource == ValuationSource)).FirstOrDefault <SecuritiesPricing>();

            return(secV);
        }
예제 #5
0
 public void Add(SecuritiesPricing r)
 {
     this.Pricing.Add(r);
 }