/** * Creates a set of regions from a region id. This is useful in the case where the region is * compound (e.g. NY+LON). * * @param regionSource The region source, not null * @param regionId The region id, not null * @return a set of the region(s) */ public static Set<Region> getRegions(RegionSource regionSource, final ExternalId regionId) { Validate.notNull(regionSource, "region source"); Validate.notNull(regionId, "region id"); if (regionId.isScheme(RegionUtils.FINANCIAL) && regionId.getValue().contains("+")) { final String[] regions = regionId.getValue().split("\\+"); final Set<Region> resultRegions = new HashSet<Region>(); for (final String region : regions) { resultRegions.add( regionSource.getHighestLevelRegion(RegionUtils.financialRegionId(region))); } return resultRegions; } return Collections.singleton(regionSource.getHighestLevelRegion(regionId)); }
public static synchronized void addFixedIncomeInstrumentConventions( final ConventionBundleMaster conventionMaster) { Validate.notNull(conventionMaster, "convention master"); final BusinessDayConvention modified = BusinessDayConventionFactory.INSTANCE.getBusinessDayConvention("Modified Following"); final BusinessDayConvention following = BusinessDayConventionFactory.INSTANCE.getBusinessDayConvention("Following"); final DayCount act365 = DayCountFactory.INSTANCE.getDayCount("Actual/365"); final Frequency annual = SimpleFrequencyFactory.INSTANCE.getFrequency(Frequency.ANNUAL_NAME); final Frequency semiAnnual = SimpleFrequencyFactory.INSTANCE.getFrequency(Frequency.SEMI_ANNUAL_NAME); final Frequency quarterly = SimpleFrequencyFactory.INSTANCE.getFrequency(Frequency.QUARTERLY_NAME); final ExternalId gb = RegionUtils.financialRegionId("GB"); // TODO looked at BSYM and the codes seem right but need to check conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BP00O/N Index"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR O/N")), "GBP LIBOR O/N", act365, following, Period.ofDays(1), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BP00T/N Index"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR T/N")), "GBP LIBOR T/N", act365, following, Period.ofDays(1), 1, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BP0001W Index"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 1w")), "GBP LIBOR 1w", act365, following, Period.ofDays(7), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BP0002W Index"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 2w")), "GBP LIBOR 2w", act365, following, Period.ofDays(14), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BP0001M Index"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 1m")), "GBP LIBOR 1m", act365, modified, Period.ofMonths(1), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BP0002M Index"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 2m")), "GBP LIBOR 2m", act365, modified, Period.ofMonths(2), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BP0003M Index"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 3m"), ExternalId.of(InMemoryConventionBundleMaster.OG_SYNTHETIC_TICKER, "GBPLIBORP3M")), "GBP LIBOR 3m", act365, modified, Period.ofMonths(3), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BP0004M Index"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 4m")), "GBP LIBOR 4m", act365, modified, Period.ofMonths(4), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BP0005M Index"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 5m")), "GBP LIBOR 5m", act365, modified, Period.ofMonths(5), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BP0006M Index"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 6m"), ExternalId.of(InMemoryConventionBundleMaster.OG_SYNTHETIC_TICKER, "GBPLIBORP6M")), "GBP LIBOR 6m", act365, modified, Period.ofMonths(6), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BP0007M Index"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 7m")), "GBP LIBOR 7m", act365, modified, Period.ofMonths(7), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BP0008M Index"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 8m")), "GBP LIBOR 8m", act365, modified, Period.ofMonths(8), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BP0009M Index"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 9m")), "GBP LIBOR 9m", act365, modified, Period.ofMonths(9), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BP0010M Index"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 10m")), "GBP LIBOR 10m", act365, modified, Period.ofMonths(10), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BP0011M Index"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 11m")), "GBP LIBOR 11m", act365, modified, Period.ofMonths(11), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BP0012M Index"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 12m"), ExternalId.of(InMemoryConventionBundleMaster.OG_SYNTHETIC_TICKER, "GBPLIBORP12M")), "GBP LIBOR 12m", act365, modified, Period.ofMonths(12), 0, false, gb); // TODO need to check that these are right for deposit rates conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDR1T Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 1d")), "GBP DEPOSIT 1d", act365, following, Period.ofDays(1), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDR2T Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 2d")), "GBP DEPOSIT 2d", act365, following, Period.ofDays(1), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDR3T Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 3d")), "GBP DEPOSIT 3d", act365, following, Period.ofDays(1), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDR1Z Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 1w")), "GBP DEPOSIT 1w", act365, following, Period.ofDays(7), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDR2Z Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 2w")), "GBP DEPOSIT 2w", act365, following, Period.ofDays(14), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDR3Z Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 3w")), "GBP DEPOSIT 3w", act365, following, Period.ofDays(21), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDRA Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 1m")), "GBP DEPOSIT 1m", act365, following, Period.ofMonths(1), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDRB Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 2m")), "GBP DEPOSIT 2m", act365, following, Period.ofMonths(2), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDRC Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 3m")), "GBP DEPOSIT 3m", act365, following, Period.ofMonths(3), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDRD Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 4m")), "GBP DEPOSIT 4m", act365, following, Period.ofMonths(4), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDRE Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 5m")), "GBP DEPOSIT 5m", act365, following, Period.ofMonths(5), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDRF Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 6m")), "GBP DEPOSIT 6m", act365, following, Period.ofMonths(6), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDRG Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 7m")), "GBP DEPOSIT 7m", act365, following, Period.ofMonths(7), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDRH Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 8m")), "GBP DEPOSIT 8m", act365, following, Period.ofMonths(8), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDRI Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 9m")), "GBP DEPOSIT 9m", act365, following, Period.ofMonths(9), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDRJ Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 10m")), "GBP DEPOSIT 10m", act365, following, Period.ofMonths(10), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDRK Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 11m")), "GBP DEPOSIT 11m", act365, following, Period.ofMonths(11), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDR1 Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 1y")), "GBP DEPOSIT 1y", act365, following, Period.ofYears(1), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDR2 Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 2y")), "GBP DEPOSIT 2y", act365, following, Period.ofYears(2), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDR3 Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 3y")), "GBP DEPOSIT 3y", act365, following, Period.ofYears(3), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDR4 Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 4y")), "GBP DEPOSIT 4y", act365, following, Period.ofYears(4), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("BPDR5 Curncy"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP DEPOSIT 5y")), "GBP DEPOSIT 5y", act365, following, Period.ofYears(5), 2, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP_SWAP")), "GBP_SWAP", act365, modified, semiAnnual, 0, gb, act365, modified, semiAnnual, 0, ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 6m"), gb, true); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP_3M_SWAP")), "GBP_3M_SWAP", act365, modified, annual, 0, gb, act365, modified, quarterly, 0, ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 3m"), gb, true); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP_6M_SWAP")), "GBP_6M_SWAP", act365, modified, semiAnnual, 0, gb, act365, modified, semiAnnual, 0, ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 6m"), gb, true); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP_3M_FRA")), "GBP_3M_FRA", act365, modified, annual, 0, gb, act365, modified, quarterly, 0, ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 3m"), gb, true); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP_6M_FRA")), "GBP_6M_FRA", act365, modified, semiAnnual, 0, gb, act365, modified, semiAnnual, 0, ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 6m"), gb, true); // // conventionMaster.addConventionBundle(ExternalIdBundle.of(ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP_1Y_SWAP")), "GBP_1Y_SWAP", act365, modified, quarterly, 0, gb, // act365, modified, quarterly, 0, // ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP LIBOR 3m"), gb, true); // Overnight Index Swap Convention have additional flag, publicationLag final Integer publicationLagON = 0; // SONIA conventionMaster.addConventionBundle( ExternalIdBundle.of( SecurityUtils.bloombergTickerSecurityId("SONIO/N Index"), ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP SONIO/N")), "GBP SONIO/N", act365, following, Period.ofDays(1), 0, false, gb, publicationLagON); // OIS - SONIA conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP_OIS_SWAP")), "GBP_OIS_SWAP", act365, modified, annual, 2, gb, act365, modified, annual, 2, ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP SONIO/N"), gb, true, publicationLagON); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP_OIS_CASH")), "GBP_OIS_CASH", act365, following, null, 0, false, gb, publicationLagON); // TODO sort out the swap names so that they are consistent conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBP_IBOR_INDEX")), "GBP_IBOR_INDEX", act365, modified, 0, false); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBPCASHP1D"), ExternalId.of(InMemoryConventionBundleMaster.OG_SYNTHETIC_TICKER, "GBPCASHP1D")), "GBPCASHP1D", act365, following, Period.ofDays(1), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBPCASHP1M"), ExternalId.of(InMemoryConventionBundleMaster.OG_SYNTHETIC_TICKER, "GBPCASHP1M")), "GBPCASHP1M", act365, modified, Period.ofMonths(1), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBPCASHP2M"), ExternalId.of(InMemoryConventionBundleMaster.OG_SYNTHETIC_TICKER, "GBPCASHP2M")), "GBPCASHP2M", act365, modified, Period.ofMonths(2), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBPCASHP3M"), ExternalId.of(InMemoryConventionBundleMaster.OG_SYNTHETIC_TICKER, "GBPCASHP3M")), "GBPCASHP3M", act365, modified, Period.ofMonths(3), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBPCASHP4M"), ExternalId.of(InMemoryConventionBundleMaster.OG_SYNTHETIC_TICKER, "GBPCASHP4M")), "GBPCASHP4M", act365, modified, Period.ofMonths(4), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBPCASHP5M"), ExternalId.of(InMemoryConventionBundleMaster.OG_SYNTHETIC_TICKER, "GBPCASHP5M")), "GBPCASHP5M", act365, modified, Period.ofMonths(5), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBPCASHP6M"), ExternalId.of(InMemoryConventionBundleMaster.OG_SYNTHETIC_TICKER, "GBPCASHP6M")), "GBPCASHP6M", act365, modified, Period.ofMonths(6), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBPCASHP7M"), ExternalId.of(InMemoryConventionBundleMaster.OG_SYNTHETIC_TICKER, "GBPCASHP7M")), "GBPCASHP7M", act365, modified, Period.ofMonths(7), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBPCASHP8M"), ExternalId.of(InMemoryConventionBundleMaster.OG_SYNTHETIC_TICKER, "GBPCASHP8M")), "GBPCASHP8M", act365, modified, Period.ofMonths(8), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBPCASHP9M"), ExternalId.of(InMemoryConventionBundleMaster.OG_SYNTHETIC_TICKER, "GBPCASHP9M")), "GBPCASHP9M", act365, modified, Period.ofMonths(9), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBPCASHP10M"), ExternalId.of(InMemoryConventionBundleMaster.OG_SYNTHETIC_TICKER, "GBPCASHP10M")), "GBPCASHP10M", act365, modified, Period.ofMonths(10), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBPCASHP11M"), ExternalId.of(InMemoryConventionBundleMaster.OG_SYNTHETIC_TICKER, "GBPCASHP11M")), "GBPCASHP11M", act365, modified, Period.ofMonths(11), 0, false, gb); conventionMaster.addConventionBundle( ExternalIdBundle.of( ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "GBPCASHP12M"), ExternalId.of(InMemoryConventionBundleMaster.OG_SYNTHETIC_TICKER, "GBPCASHP12M")), "GBPCASHP12M", act365, modified, Period.ofMonths(12), 0, false, gb); }