public void CanAddAndGetAllInstrumentTypes() { using (FinancialClient financialClient = Context.CreateFinancialClient()) { InterpolatedYieldCurveDefinitionMaster interpolatedYieldCurveDefinitionMaster = financialClient.InterpolatedYieldCurveDefinitionMaster; YieldCurveDefinitionDocument yieldCurveDefinitionDocument = GenerateDocument(); foreach (StripInstrumentType stripInstrumentType in Enum.GetValues(typeof(StripInstrumentType))) { var fixedIncomeStrip = new FixedIncomeStrip { ConventionName = "DEFAULT", CurveNodePointTime = Tenor.Day, InstrumentType = stripInstrumentType }; if (stripInstrumentType == StripInstrumentType.Future) { fixedIncomeStrip.NthFutureFromTenor = 12; } yieldCurveDefinitionDocument.YieldCurveDefinition.AddStrip(fixedIncomeStrip); } AssertRoundTrip(interpolatedYieldCurveDefinitionMaster, yieldCurveDefinitionDocument); } }
public void CanAddAndGet() { using (FinancialClient financialClient = Context.CreateFinancialClient()) { InterpolatedYieldCurveDefinitionMaster interpolatedYieldCurveDefinitionMaster = financialClient.InterpolatedYieldCurveDefinitionMaster; YieldCurveDefinitionDocument yieldCurveDefinitionDocument = GenerateDocument(); AssertRoundTrip(interpolatedYieldCurveDefinitionMaster, yieldCurveDefinitionDocument); } }
private YieldCurveDefinitionDocument PostDefinition(YieldCurveDefinitionDocument document, string path) { var created = _restTarget.Resolve("definitions").Resolve("save").Post <YieldCurveDefinitionDocument>(document); if (created.UniqueId == null) { throw new ArgumentException("No UID returned"); } document.UniqueId = created.UniqueId; return(document); }
public YieldCurveDefinitionDocument Add(YieldCurveDefinitionDocument document) { var created = _restTarget.Resolve("definitions").Post <YieldCurveDefinitionDocument>(document); if (created.UniqueId == null) { throw new ArgumentException("No UID returned"); } document.UniqueId = created.UniqueId; return(document); }
public void CanAddAndRemove() { using (FinancialClient financialClient = Context.CreateFinancialClient()) { InterpolatedYieldCurveDefinitionMaster interpolatedYieldCurveDefinitionMaster = financialClient.InterpolatedYieldCurveDefinitionMaster; YieldCurveDefinitionDocument yieldCurveDefinitionDocument = GenerateDocument(); AssertRoundTrip(interpolatedYieldCurveDefinitionMaster, yieldCurveDefinitionDocument); interpolatedYieldCurveDefinitionMaster.Remove(yieldCurveDefinitionDocument.UniqueId); Assert.Throws <DataNotFoundException>(() => interpolatedYieldCurveDefinitionMaster.Get(yieldCurveDefinitionDocument.UniqueId)); } }
public void CanAddAndGetRegions() { using (FinancialClient financialClient = Context.CreateFinancialClient()) { InterpolatedYieldCurveDefinitionMaster interpolatedYieldCurveDefinitionMaster = financialClient.InterpolatedYieldCurveDefinitionMaster; foreach (ExternalId region in new[] { null, new ExternalId("XX", "12"), new ExternalId("asd", "asd") }) { YieldCurveDefinitionDocument yieldCurveDefinitionDocument = GenerateDocument(); yieldCurveDefinitionDocument.YieldCurveDefinition.Region = region; AssertRoundTrip(interpolatedYieldCurveDefinitionMaster, yieldCurveDefinitionDocument); } } }
private static void AssertRoundTrip(InterpolatedYieldCurveDefinitionMaster interpolatedYieldCurveDefinitionMaster, YieldCurveDefinitionDocument yieldCurveDefinitionDocument) { interpolatedYieldCurveDefinitionMaster.Add(yieldCurveDefinitionDocument); YieldCurveDefinitionDocument roundtrippedDoc = interpolatedYieldCurveDefinitionMaster.Get(yieldCurveDefinitionDocument.UniqueId); YieldCurveDefinition roundTripped = roundtrippedDoc.YieldCurveDefinition; var yieldCurveDefinition = yieldCurveDefinitionDocument.YieldCurveDefinition; Assert.Equal(yieldCurveDefinition.Name, roundTripped.Name); Assert.Equal(yieldCurveDefinition.InterpolatorName, roundTripped.InterpolatorName); Assert.Equal(yieldCurveDefinition.Currency, roundTripped.Currency); Assert.Equal(roundTripped.Region, roundTripped.Region); Assert.True(roundTripped.Strips.SequenceEqual(roundTripped.Strips)); }
public YieldCurveDefinitionDocument AddOrUpdate(YieldCurveDefinitionDocument document) { return(PostDefinition(document, "save")); }