//------------------------------------------------------------------------- public FunctionRequirements requirements(SecurityId securityId, LegalEntityId issuerId, Currency currency) { // repo RepoGroup repoKey = repoCurveSecurityGroups.get(securityId); if (repoKey == null) { repoKey = repoCurveGroups.get(issuerId); } if (repoKey == null) { throw new System.ArgumentException(Messages.format("Legal entity discounting lookup has no repo curve defined for '{}' and '{}'", securityId, issuerId)); } CurveId repoCurveId = repoCurves.get(Pair.of(repoKey, currency)); if (repoCurveId == null) { throw new System.ArgumentException(Messages.format("Legal entity discounting lookup has no repo curve defined for '{}' and '{}'", securityId, issuerId)); } // issuer LegalEntityGroup issuerKey = issuerCurveGroups.get(issuerId); if (issuerKey == null) { throw new System.ArgumentException(Messages.format("Legal entity discounting lookup has no issuer curve defined for '{}'", issuerId)); } CurveId issuerCurveId = issuerCurves.get(Pair.of(issuerKey, currency)); if (issuerCurveId == null) { throw new System.ArgumentException(Messages.format("Legal entity discounting lookup has no issuer curve defined for '{}'", issuerId)); } // result return(FunctionRequirements.builder().valueRequirements(ImmutableSet.of(repoCurveId, issuerCurveId)).outputCurrencies(currency).observableSource(observableSource).build()); }
public override Builder set(string propertyName, object newValue) { switch (propertyName.GetHashCode()) { case 1574023291: // securityId this.securityId_Renamed = (SecurityId)newValue; break; case 1585636160: // notional this.notional_Renamed = (Payment)newValue; break; case 1905311443: // dayCount this.dayCount_Renamed = (DayCount)newValue; break; case -1895216418: // yieldConvention this.yieldConvention_Renamed = (BillYieldConvention)newValue; break; case 866287159: // legalEntityId this.legalEntityId_Renamed = (LegalEntityId)newValue; break; case 135924714: // settlementDateOffset this.settlementDateOffset_Renamed = (DaysAdjustment)newValue; break; default: throw new NoSuchElementException("Unknown property: " + propertyName); } return(this); }
/// <summary> /// Restricted copy constructor. </summary> /// <param name="beanToCopy"> the bean to copy from, not null </param> protected internal Builder(ResolvedBill beanToCopy) { this.securityId_Renamed = beanToCopy.SecurityId; this.notional_Renamed = beanToCopy.Notional; this.dayCount_Renamed = beanToCopy.DayCount; this.yieldConvention_Renamed = beanToCopy.YieldConvention; this.legalEntityId_Renamed = beanToCopy.LegalEntityId; this.settlementDateOffset_Renamed = beanToCopy.SettlementDateOffset; }
/// <summary> /// Restricted copy constructor. </summary> /// <param name="beanToCopy"> the bean to copy from, not null </param> internal Builder(BillSecurity beanToCopy) { this.info_Renamed = beanToCopy.Info; this.notional_Renamed = beanToCopy.Notional; this.dayCount_Renamed = beanToCopy.DayCount; this.yieldConvention_Renamed = beanToCopy.YieldConvention; this.legalEntityId_Renamed = beanToCopy.LegalEntityId; this.settlementDateOffset_Renamed = beanToCopy.SettlementDateOffset; }
//------------------------------------------------------------------------- public IssuerCurveDiscountFactors issuerCurveDiscountFactors(LegalEntityId issuerId, Currency currency) { LegalEntityGroup legalEntityGroup = lookup.IssuerCurveGroups.get(issuerId); if (legalEntityGroup == null) { throw new MarketDataNotFoundException("Unable to find issuer curve mapping for ID: " + issuerId); } return(issuerCurveDiscountFactors(legalEntityGroup, currency)); }
public RepoCurveDiscountFactors repoCurveDiscountFactors(LegalEntityId issuerId, Currency currency) { RepoGroup repoGroup = lookup.RepoCurveGroups.get(issuerId); if (repoGroup == null) { throw new MarketDataNotFoundException("Unable to find repo curve mapping for ID: " + issuerId); } return(repoCurveDiscountFactors(repoGroup, currency)); }
//------------------------------------------------------------------------- public IssuerCurveDiscountFactors issuerCurveDiscountFactors(LegalEntityId issuerId, Currency currency) { LegalEntityGroup legalEntityGroup = issuerCurveGroups.get(issuerId); if (legalEntityGroup == null) { throw new System.ArgumentException("Unable to find map for ID: " + issuerId); } return(issuerCurveDiscountFactors(legalEntityGroup, currency)); }
public RepoCurveDiscountFactors repoCurveDiscountFactors(LegalEntityId issuerId, Currency currency) { RepoGroup repoGroup = repoCurveGroups.get(issuerId); if (repoGroup == null) { throw new System.ArgumentException("Unable to find map for ID: " + issuerId); } return(repoCurveDiscountFactors(repoGroup, currency)); }
/// <summary> /// Restricted constructor. </summary> /// <param name="builder"> the builder to copy from, not null </param> protected internal ResolvedBill(ResolvedBill.Builder builder) { JodaBeanUtils.notNull(builder.securityId_Renamed, "securityId"); JodaBeanUtils.notNull(builder.notional_Renamed, "notional"); JodaBeanUtils.notNull(builder.dayCount_Renamed, "dayCount"); JodaBeanUtils.notNull(builder.yieldConvention_Renamed, "yieldConvention"); JodaBeanUtils.notNull(builder.legalEntityId_Renamed, "legalEntityId"); JodaBeanUtils.notNull(builder.settlementDateOffset_Renamed, "settlementDateOffset"); this.securityId = builder.securityId_Renamed; this.notional = builder.notional_Renamed; this.dayCount = builder.dayCount_Renamed; this.yieldConvention = builder.yieldConvention_Renamed; this.legalEntityId = builder.legalEntityId_Renamed; this.settlementDateOffset = builder.settlementDateOffset_Renamed; }
//------------------------------------------------------------------------- public virtual FunctionRequirements requirements(T target, ISet <Measure> measures, CalculationParameters parameters, ReferenceData refData) { // extract data from product CapitalIndexedBond product = target.Product; Currency currency = product.Currency; SecurityId securityId = product.SecurityId; LegalEntityId legalEntityId = product.LegalEntityId; // use lookup to build requirements RatesMarketDataLookup ratesLookup = parameters.getParameter(typeof(RatesMarketDataLookup)); FunctionRequirements ratesReqs = ratesLookup.requirements(ImmutableSet.of(), ImmutableSet.of(product.RateCalculation.Index)); LegalEntityDiscountingMarketDataLookup ledLookup = parameters.getParameter(typeof(LegalEntityDiscountingMarketDataLookup)); FunctionRequirements ledReqs = ledLookup.requirements(securityId, legalEntityId, currency); return(ratesReqs.combinedWith(ledReqs)); }
/// <summary> /// Creates an instance. </summary> /// <param name="securityId"> the value of the property, not null </param> /// <param name="notional"> the value of the property, not null </param> /// <param name="dayCount"> the value of the property, not null </param> /// <param name="yieldConvention"> the value of the property, not null </param> /// <param name="legalEntityId"> the value of the property, not null </param> /// <param name="settlementDateOffset"> the value of the property, not null </param> internal Bill(SecurityId securityId, AdjustablePayment notional, DayCount dayCount, BillYieldConvention yieldConvention, LegalEntityId legalEntityId, DaysAdjustment settlementDateOffset) { JodaBeanUtils.notNull(securityId, "securityId"); JodaBeanUtils.notNull(notional, "notional"); JodaBeanUtils.notNull(dayCount, "dayCount"); JodaBeanUtils.notNull(yieldConvention, "yieldConvention"); JodaBeanUtils.notNull(legalEntityId, "legalEntityId"); JodaBeanUtils.notNull(settlementDateOffset, "settlementDateOffset"); this.securityId = securityId; this.notional = notional; this.dayCount = dayCount; this.yieldConvention = yieldConvention; this.legalEntityId = legalEntityId; this.settlementDateOffset = settlementDateOffset; validate(); }
/// <summary> /// Sets the legal entity identifier. /// <para> /// This identifier is used for the legal entity that issues the bill. /// </para> /// </summary> /// <param name="legalEntityId"> the new value, not null </param> /// <returns> this, for chaining, not null </returns> public virtual Builder legalEntityId(LegalEntityId legalEntityId) { JodaBeanUtils.notNull(legalEntityId, "legalEntityId"); this.legalEntityId_Renamed = legalEntityId; return(this); }
internal static ResolvedCapitalIndexedBond sut2() { return(ResolvedCapitalIndexedBond.builder().securityId(CapitalIndexedBondTest.sut2().SecurityId).dayCount(NL_365).legalEntityId(LegalEntityId.of("OG-Ticker", "US-Govt1")).nominalPayment(PERIODIC[1].withUnitCoupon(PERIODIC[0].StartDate, PERIODIC[0].UnadjustedStartDate)).periodicPayments(PERIODIC[0], PERIODIC[1]).frequency(CapitalIndexedBondTest.sut2().AccrualSchedule.Frequency).rollConvention(CapitalIndexedBondTest.sut2().AccrualSchedule.calculatedRollConvention()).settlementDateOffset(DaysAdjustment.ofBusinessDays(3, GBLO)).yieldConvention(GB_IL_FLOAT).rateCalculation(CapitalIndexedBondTest.sut2().RateCalculation).build()); }
//------------------------------------------------------------------------- public virtual void coverage() { BillSecurity test1 = BillSecurity.builder().dayCount(DAY_COUNT).info(INFO).legalEntityId(LEGAL_ENTITY).notional(NOTIONAL).settlementDateOffset(SETTLE).yieldConvention(YIELD_CONVENTION).build(); coverImmutableBean(test1); BillSecurity test2 = BillSecurity.builder().dayCount(DayCounts.ACT_365F).info(SecurityInfo.of(SecurityId.of("OG-Test", "ID2"), PRICE_INFO)).legalEntityId(LegalEntityId.of("OG-Ticker", "LE2")).notional(AdjustablePayment.of(CurrencyAmount.of(CCY, 10), MATURITY_DATE_ADJ)).settlementDateOffset(DaysAdjustment.ofBusinessDays(2, EUTA, BUSINESS_ADJUST)).yieldConvention(BillYieldConvention.INTEREST_AT_MATURITY).build(); coverBeanEquals(test1, test2); }
internal static FixedCouponBond sut2() { BusinessDayAdjustment adj = BusinessDayAdjustment.of(MODIFIED_FOLLOWING, SAT_SUN); PeriodicSchedule sche = PeriodicSchedule.of(START_DATE, END_DATE, Frequency.P12M, adj, StubConvention.SHORT_INITIAL, true); return(FixedCouponBond.builder().securityId(SECURITY_ID2).dayCount(DayCounts.ACT_360).fixedRate(0.005).legalEntityId(LegalEntityId.of("OG-Ticker", "BUN EUR 2")).currency(GBP).notional(1.0e6).accrualSchedule(sche).settlementDateOffset(DaysAdjustment.ofBusinessDays(2, SAT_SUN)).yieldConvention(FixedCouponBondYieldConvention.GB_BUMP_DMO).build()); }
internal static CapitalIndexedBond sut2() { return(CapitalIndexedBond.builder().securityId(SECURITY_ID2).notional(5.0e7).currency(GBP).dayCount(NL_365).rateCalculation(InflationRateCalculation.builder().index(GB_RPI).lag(Period.ofMonths(2)).indexCalculationMethod(INTERPOLATED).firstIndexValue(124.556).build()).exCouponPeriod(EX_COUPON).legalEntityId(LegalEntityId.of("OG-Ticker", "US-Govt-1")).yieldConvention(GB_IL_FLOAT).settlementDateOffset(DaysAdjustment.ofBusinessDays(2, GBLO)).accrualSchedule(PeriodicSchedule.of(START, END, FREQUENCY, BusinessDayAdjustment.of(BusinessDayConventions.FOLLOWING, GBLO), StubConvention.NONE, RollConventions.NONE)).build()); }