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; } }
/// <summary> /// /// </summary> /// <param name="date"></param> /// <param name="Holder"></param> /// <param name="HolderISIN"></param> /// <param name="HoldAsset"></param> /// <param name="Quantity"></param> /// <param name="MarketValue"></param> /// <param name="BookValue"></param> /// <param name="FaceAmount"></param> public AssetHolding(DateTime Date, string ISIN, Asset HoldAsset, Composite Holder = null, float?Quantity = null, CurrencyAndAmount MarketValue = null, CurrencyAndAmount BookValue = null, CurrencyAndAmount FaceAmount = null, PercentageRate Weight = null) : base(ISIN, Date) { // le code ISIN est celui du conteneur (portfolio , index) if (Holder != null) { this.Parent = Holder; } // lien sur l actif detenu this.Asset = HoldAsset; if (ISIN == null) { this.ISINId = HoldAsset.ISINId; } this.Quantity = Quantity; this.FaceAmount = FaceAmount ?? new CurrencyAndAmount(); this.BookValue = BookValue ?? new CurrencyAndAmount(); this.MarketValue = MarketValue ?? new CurrencyAndAmount(); this.Weight = Weight ?? new PercentageRate(); }
public PortfolioValuation(DateTime Date, float?NbParts = null, Composite Valuated = null, CurrencyAndAmount MarketValue = null, CurrencyAndAmount BookValue = null, CurrencyAndAmount FaceAmount = null, Yield Yield = null, DebtDataCalculation DebtDataCalculation = null, DebtYield DebtYield = null, DebtSpread DebtSpread = null) : base(Date, Valuated, MarketValue, BookValue, FaceAmount, Yield, DebtDataCalculation, DebtYield, DebtSpread) { this.NumberOfParts = NbParts; }
public IndexValuation(DateTime Date, double?IndexPriceValue = null, double?IndexGrossValue = null, double?IndexNetValue = null, DateTime?BaseDate = null, double?BaseValue = null, Composite Valuated = null, CurrencyAndAmount MarketValue = null, CurrencyAndAmount BookValue = null, CurrencyAndAmount FaceAmount = null, Yield Yield = null, DebtDataCalculation DebtDataCalculation = null, DebtYield DebtYield = null, DebtSpread DebtSpread = null) : base(Date, Valuated, MarketValue, BookValue, FaceAmount, Yield, DebtDataCalculation, DebtYield, DebtSpread) { this.IndexPriceValue = IndexPriceValue; this.IndexGrossValue = IndexGrossValue; this.IndexNetValue = IndexNetValue; this.IndexBaseDate = BaseDate; this.IndexBaseValue = BaseValue; }
public Capital(DateTime?Date = null, double?Unit = null, CurrencyAndAmount Amount = null, CapitalTypeCode Type = null) { this.Date = Date; this.Unit = Unit; this.Amount = Amount; if (Type == null) { this.Type = CapitalTypeCode.OUTSTANDING; } else { this.Type = Type; } }
public SecuritiesPricing(CurrencyAndAmount Price, DateTime Date, TypeOfPriceCode PriceType) { this.Price = Price; this.PriceType = PriceType ?? (TypeOfPriceCode)"MARKET"; this.Date = Date; this.DebtPriceCalculation = new DebtPriceCalculation(); this.DebtDataCalculation = new DebtDataCalculation(); this.PriceFactType = new PriceFactType(); this.Yield = new Yield(); this.DebtSpread = new DebtSpread(); this.DebtYield = new DebtYield(); }
/// <summary> /// /// </summary> /// <param name="ISINHolder"></param> /// <param name="HoldAsset"></param> /// <param name="Quantity"></param> /// <param name="MarketValue"></param> /// <param name="BookValue"></param> /// <param name="FaceAmount"></param> internal Valuation(DateTime Date, Composite Valuated = null, CurrencyAndAmount MarketValue = null, CurrencyAndAmount BookValue = null, CurrencyAndAmount FaceAmount = null, Yield Yield = null, DebtDataCalculation DebtDataCalculation = null, DebtYield DebtYield = null, DebtSpread DebtSpread = null) { if (Valuated != null) { Valuated.Add(this); this.Valuated = Valuated; } this.Date = Date; this.FaceAmount = FaceAmount ?? new CurrencyAndAmount(); this.BookValue = BookValue ?? new CurrencyAndAmount(); this.MarketValue = MarketValue ?? new CurrencyAndAmount(); this.Yield = Yield ?? new Yield(); this.DebtYield = DebtYield ?? new DebtYield(); this.DebtSpread = DebtSpread ?? new DebtSpread(); this.DebtDataCalculation = DebtDataCalculation ?? new DebtDataCalculation(); }
public SecuritiesPricing(CurrencyAndAmount Price, DateTime Date, TypeOfPriceCode PriceType, double?AskPrice = null, double?BidPrice = null, double?MidPrice = null, PriceFactType PriceFactType = null, Yield Yield = null, DebtPriceCalculation DebtPriceCalculation = null, DebtDataCalculation DebtDataCalculation = null, DebtYield DebtYield = null, DebtSpread DebtSpread = null) { this.Price = Price; this.PriceType = PriceType ?? (TypeOfPriceCode)"MARKET"; this.Date = Date; this.AskPrice = AskPrice; this.BidPrice = BidPrice; this.MidPrice = MidPrice; this.PriceFactType = PriceFactType ?? new PriceFactType(); this.Yield = Yield ?? new Yield(); this.DebtPriceCalculation = DebtPriceCalculation ?? new DebtPriceCalculation(); this.DebtDataCalculation = DebtDataCalculation ?? new DebtDataCalculation(); this.DebtSpread = DebtSpread ?? new DebtSpread(); this.DebtYield = DebtYield ?? new DebtYield(); }
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; } }