@Override public PortfolioItemSummary summarize() { // 2Y Buy USD 1mm ENTITY / 1.5% : 21Jan18-21Jan20 PeriodicSchedule paymentSchedule = product.getPaymentSchedule(); StringBuilder buf = new StringBuilder(96); buf.append(SummarizerUtils.datePeriod(paymentSchedule.getStartDate(), paymentSchedule.getEndDate())); buf.append(' '); buf.append(product.getBuySell()); buf.append(' '); buf.append(SummarizerUtils.amount(product.getCurrency(), product.getNotional())); buf.append(' '); buf.append(product.getLegalEntityId().getValue()); buf.append(" / "); buf.append(SummarizerUtils.percent(product.getFixedRate())); buf.append(" : "); buf.append(SummarizerUtils.dateRange(paymentSchedule.getStartDate(), paymentSchedule.getEndDate())); return SummarizerUtils.summary(this, ProductType.CDS, buf.toString(), product.getCurrency()); }
@Override protected Object propertyGet(Bean bean, String propertyName, boolean quiet) { switch (propertyName.hashCode()) { case 244977400: // buySell return ((Cds) bean).getBuySell(); case 866287159: // legalEntityId return ((Cds) bean).getLegalEntityId(); case 575402001: // currency return ((Cds) bean).getCurrency(); case 1585636160: // notional return ((Cds) bean).getNotional(); case -1499086147: // paymentSchedule return ((Cds) bean).getPaymentSchedule(); case 747425396: // fixedRate return ((Cds) bean).getFixedRate(); case 1905311443: // dayCount return ((Cds) bean).getDayCount(); case -480203780: // paymentOnDefault return ((Cds) bean).getPaymentOnDefault(); case 2103482633: // protectionStart return ((Cds) bean).getProtectionStart(); case 852621746: // stepinDateOffset return ((Cds) bean).getStepinDateOffset(); case 135924714: // settlementDateOffset return ((Cds) bean).getSettlementDateOffset(); } return super.propertyGet(bean, propertyName, quiet); }
/** * Restricted copy constructor. * @param beanToCopy the bean to copy from, not null */ private Builder(Cds beanToCopy) { this.buySell = beanToCopy.getBuySell(); this.legalEntityId = beanToCopy.getLegalEntityId(); this.currency = beanToCopy.getCurrency(); this.notional = beanToCopy.getNotional(); this.paymentSchedule = beanToCopy.getPaymentSchedule(); this.fixedRate = beanToCopy.getFixedRate(); this.dayCount = beanToCopy.getDayCount(); this.paymentOnDefault = beanToCopy.getPaymentOnDefault(); this.protectionStart = beanToCopy.getProtectionStart(); this.stepinDateOffset = beanToCopy.getStepinDateOffset(); this.settlementDateOffset = beanToCopy.getSettlementDateOffset(); }
assertEquals(test.getFixedRate(), COUPON); assertEquals(test.getLegalEntityId(), LEGAL_ENTITY); assertEquals(test.getNotional(), NOTIONAL); assertEquals(test.getPaymentOnDefault(), PaymentOnDefault.NONE); assertEquals(test.getProtectionStart(), ProtectionStartOfDay.NONE);
public void test_of() { BusinessDayAdjustment bussAdj = BusinessDayAdjustment.of(FOLLOWING, SAT_SUN); PeriodicSchedule expected = PeriodicSchedule.builder() .startDate(START_DATE) .endDate(END_DATE) .businessDayAdjustment(bussAdj) .startDateBusinessDayAdjustment(BusinessDayAdjustment.NONE) .endDateBusinessDayAdjustment(BusinessDayAdjustment.NONE) .frequency(P3M) .rollConvention(RollConventions.NONE) .stubConvention(SMART_INITIAL) .build(); assertEquals(PRODUCT_STD.getPaymentSchedule(), expected); assertEquals(PRODUCT_STD.getBuySell(), BUY); assertEquals(PRODUCT_STD.getCurrency(), USD); assertEquals(PRODUCT_STD.getDayCount(), ACT_360); assertEquals(PRODUCT_STD.getFixedRate(), COUPON); assertEquals(PRODUCT_STD.getLegalEntityId(), LEGAL_ENTITY); assertEquals(PRODUCT_STD.getNotional(), NOTIONAL); assertEquals(PRODUCT_STD.getPaymentOnDefault(), ACCRUED_PREMIUM); assertEquals(PRODUCT_STD.getProtectionStart(), BEGINNING); assertEquals(PRODUCT_STD.getSettlementDateOffset(), SETTLE_DAY_ADJ); assertEquals(PRODUCT_STD.getStepinDateOffset(), STEPIN_DAY_ADJ); Cds test = Cds.of(BUY, LEGAL_ENTITY, USD, NOTIONAL, START_DATE, END_DATE, P3M, SAT_SUN, COUPON); assertEquals(test, PRODUCT_STD); }
.buySell(cdsProduct.getBuySell()) .currency(cdsProduct.getCurrency()) .notional(cdsProduct.getNotional()) .cdsIndexId(cdsIndexId) .legalEntityIds(legalEntityIds)