Package com.opengamma.master.historicaltimeseries

Examples of com.opengamma.master.historicaltimeseries.HistoricalTimeSeriesResolutionResult


    // TODO: PLAT-2813 Don't perform the resolution here; request the time series directly
    final ExternalIdBundle targetIdentifiers = resolver.getExternalIdBundle(requirement.getTargetReference());
    if (targetIdentifiers == null) {
      return null;
    }
    final HistoricalTimeSeriesResolutionResult timeSeries = getHistoricalTimeSeriesResolver().resolve(targetIdentifiers, null, null, null, MarketDataRequirementNames.MARKET_VALUE, null);
    if (timeSeries == null) {
      return null;
    }
    // TODO: Requesting the whole time series isn't ideal but we don't know which points will be needed. Could the time series somehow be a lazy-fetch?
    // Is this really a problem - caching the whole time series at a calc node may be better than requesting different subsets each time?
View Full Code Here


    if ((resolutionKeyConstraints == null) || resolutionKeyConstraints.isEmpty()) {
      resolutionKey = null;
    } else {
      resolutionKey = resolutionKeyConstraints.iterator().next();
    }
    final HistoricalTimeSeriesResolutionResult resolutionResult = htsResolver.resolve(target.getSecurity().getExternalIdBundle(), null, null, null, dataField, resolutionKey);
    if (resolutionResult == null) {
      return null;
    }
    UniqueId htsId = resolutionResult.getHistoricalTimeSeriesInfo().getUniqueId();
    final ValueProperties.Builder constraints = ValueProperties.builder();
    final Set<String> ageLimitConstraints = desiredValue.getConstraints().getValues(HistoricalTimeSeriesFunctionUtils.AGE_LIMIT_PROPERTY);
    if (ageLimitConstraints != null) {
      if (ageLimitConstraints.isEmpty()) {
        if (desiredValue.getConstraints().isOptional(HistoricalTimeSeriesFunctionUtils.AGE_LIMIT_PROPERTY)) {
          constraints.withOptional(HistoricalTimeSeriesFunctionUtils.AGE_LIMIT_PROPERTY);
        } else {
          constraints.withAny(HistoricalTimeSeriesFunctionUtils.AGE_LIMIT_PROPERTY);
        }
      } else {
        constraints.with(HistoricalTimeSeriesFunctionUtils.AGE_LIMIT_PROPERTY, ageLimitConstraints);
        if (desiredValue.getConstraints().isOptional(HistoricalTimeSeriesFunctionUtils.AGE_LIMIT_PROPERTY)) {
          constraints.withOptional(HistoricalTimeSeriesFunctionUtils.AGE_LIMIT_PROPERTY);
        }
      }
    }
    // Add adjuster / normalisation constraint
    final HistoricalTimeSeriesAdjuster adjuster = resolutionResult.getAdjuster();
    final String adjustment = (adjuster == null) ? "" : adjuster.getAdjustment(resolutionResult.getHistoricalTimeSeriesInfo().getExternalIdBundle().toBundle()).toString();
    constraints.with(HistoricalTimeSeriesFunctionUtils.ADJUST_PROPERTY, adjustment);
   
    ValueRequirement valueRequirement = new ValueRequirement(ValueRequirementNames.HISTORICAL_TIME_SERIES_LATEST, ComputationTargetType.PRIMITIVE, htsId, constraints.get());
    return Collections.singleton(valueRequirement);
  }
View Full Code Here

    final Set<String> dataFieldConstraints = desiredValue.getConstraints().getValues(HistoricalTimeSeriesFunctionUtils.DATA_FIELD_PROPERTY);
    if ((dataFieldConstraints != null) && (dataFieldConstraints.size() > 1)) {
      return null;
    }
    final String dataField = ((dataFieldConstraints == null) || dataFieldConstraints.isEmpty()) ? null : Iterables.getOnlyElement(dataFieldConstraints);
    final HistoricalTimeSeriesResolutionResult resolutionResult = htsResolver.resolve(target.getSecurity().getExternalIdBundle(), null, null, null, dataField, null);
    if (resolutionResult == null) {
      return null;
    }
    final UniqueId htsId = resolutionResult.getHistoricalTimeSeriesInfo().getUniqueId();
    final ValueRequirement valueRequirement = new ValueRequirement(ValueRequirementNames.HISTORICAL_TIME_SERIES, ComputationTargetType.PRIMITIVE, htsId, desiredValue.getConstraints());
    return Collections.singleton(valueRequirement);
  }
View Full Code Here

  }

  public ValueRequirement getSeriesRequirement(final Greek greek, final FinancialSecurity security, final DateConstraint startDate, final DateConstraint endDate) {
    final String fieldName = greek.accept(FIELD_VISITOR);
    final ExternalIdBundle underlyingId = security.accept(getSecurityVisitor());
    final HistoricalTimeSeriesResolutionResult timeSeries = getTimeSeriesResolver().resolve(underlyingId, null, null, null, fieldName, getResolutionKey());
    if (timeSeries == null) {
      throw new OpenGammaRuntimeException("Could not resolve time series for " + underlyingId + " for security " + security + " for " + getResolutionKey() + "/" + fieldName);
    }
    return HistoricalTimeSeriesFunctionUtils.createHTSRequirement(timeSeries, fieldName, startDate, true, endDate, true);
  }
View Full Code Here

    final String providerIdValue = target.getPosition().getAttributes().get(ManageablePosition.meta().providerId().name());
    if (providerIdValue == null) {
      return null;
    }
    final ExternalId providerId = ExternalId.parse(providerIdValue);
    final HistoricalTimeSeriesResolutionResult resolutionResult = htsResolver.resolve(ExternalIdBundle.of(providerId), null, null, null, dataField, null);
    if (resolutionResult == null) {
      return null;
    }
    final UniqueId htsId = resolutionResult.getHistoricalTimeSeriesInfo().getUniqueId();
    final ValueRequirement valueRequirement = new ValueRequirement(ValueRequirementNames.HISTORICAL_TIME_SERIES_LATEST, ComputationTargetType.PRIMITIVE, htsId, desiredValue.getConstraints());
    return Collections.singleton(valueRequirement);
  }
View Full Code Here

  private ValueRequirement getIndexTimeSeries(final FloatingInterestRateLeg leg, final ZonedDateTime swapEffectiveDate, final DateConstraint now,
      final boolean includeEndDate, final HistoricalTimeSeriesResolver resolver) {
    final FloatingInterestRateLeg floatingLeg = leg;
    final ExternalIdBundle id = getIndexIdForSwap(floatingLeg);
    final LocalDate startDate = swapEffectiveDate.toLocalDate().minusDays(30); // To catch first fixing. SwapSecurity does not have this date.
    final HistoricalTimeSeriesResolutionResult ts = resolver.resolve(id, null, null, null, MarketDataRequirementNames.MARKET_VALUE, null);
    if (ts == null) {
      throw new OpenGammaRuntimeException("Could not get time series of underlying index " + id.getExternalIds().toString() + " bundle used was " + id);
    }
    return HistoricalTimeSeriesFunctionUtils.createHTSRequirement(ts, MarketDataRequirementNames.MARKET_VALUE, DateConstraint.of(startDate), true, now, includeEndDate);
  }
View Full Code Here

    if (leg instanceof FloatingInterestRateLeg) {
      final FloatingInterestRateLeg floatingLeg = (FloatingInterestRateLeg) leg;
      final ExternalIdBundle id = getIndexIdForSwap(floatingLeg);
      final LocalDate startDate = swapEffectiveDate.toLocalDate().minusDays(360);
      // Implementation note: To catch first fixing. SwapSecurity does not have this date.
      final HistoricalTimeSeriesResolutionResult ts = getTimeSeriesResolver().resolve(id, null, null, null, MarketDataRequirementNames.MARKET_VALUE, null);
      if (ts == null) {
        return null;
      }
      return HistoricalTimeSeriesFunctionUtils.createHTSRequirement(ts, MarketDataRequirementNames.MARKET_VALUE,
          DateConstraint.of(startDate), true, DateConstraint.VALUATION_TIME, true);
    } else if (leg instanceof InflationIndexSwapLeg) {
      final InflationIndexSwapLeg inflationIndexLeg = (InflationIndexSwapLeg) leg;
      final ExternalIdBundle id = getIndexIdForInflationSwap(inflationIndexLeg);
      final LocalDate startDate = swapEffectiveDate.toLocalDate().minusDays(360);
      // Implementation note: To catch first fixing. SwapSecurity does not have this date.
      final HistoricalTimeSeriesResolutionResult ts = getTimeSeriesResolver().resolve(id, null, null, null, MarketDataRequirementNames.MARKET_VALUE, null);
      if (ts == null) {
        return null;
      }
      return HistoricalTimeSeriesFunctionUtils.createHTSRequirement(ts, MarketDataRequirementNames.MARKET_VALUE,
          DateConstraint.of(startDate), true, DateConstraint.VALUATION_TIME, true);
View Full Code Here

    }
    return indexConvention.getIdentifiers();
  }

  private ValueRequirement getIndexTimeSeriesRequirement(final ExternalIdBundle id, final LocalDate startDate) {
    final HistoricalTimeSeriesResolutionResult timeSeries = getTimeSeriesResolver().resolve(id, null, null, null, MarketDataRequirementNames.MARKET_VALUE, null);
    if (timeSeries == null) {
      return null;
    }
    return HistoricalTimeSeriesFunctionUtils.createHTSRequirement(timeSeries, MarketDataRequirementNames.MARKET_VALUE,
        DateConstraint.of(startDate), true, DateConstraint.VALUATION_TIME, true);
View Full Code Here

    result.add(new ValueRequirement(ValueRequirementNames.CAPM_BETA, targetSpec, betaProperties));
    final HistoricalTimeSeriesResolver resolver = OpenGammaCompilationContext.getHistoricalTimeSeriesResolver(context);
    final ConventionBundleSource conventionSource = OpenGammaCompilationContext.getConventionBundleSource(context);
    final ConventionBundle bundle = conventionSource.getConventionBundle(ExternalId.of(InMemoryConventionBundleMaster.SIMPLE_NAME_SCHEME, "USD_CAPM"));
    final DateConstraint startDate = DateConstraint.VALUATION_TIME.minus(samplingPeriodName);
    HistoricalTimeSeriesResolutionResult timeSeries = resolver.resolve(bundle.getCAPMMarket(), null, null, null, MarketDataRequirementNames.MARKET_VALUE, _resolutionKey);
    if (timeSeries == null) {
      return null;
    }
    result.add(HistoricalTimeSeriesFunctionUtils.createHTSRequirement(timeSeries, MarketDataRequirementNames.MARKET_VALUE, startDate, true,
        DateConstraint.VALUATION_TIME, true));
View Full Code Here

    final Set<ValueRequirement> requirements = new HashSet<ValueRequirement>();
    final ValueProperties pvProperties = ValueProperties.builder()
        .with(ValuePropertyNames.CURRENCY, future.getCurrency().getCode())
        .with(ValuePropertyNames.CURVE, curveName).get();
    requirements.add(new ValueRequirement(ValueRequirementNames.PRESENT_VALUE, ComputationTargetType.SECURITY, future.getUniqueId(), pvProperties));
    final HistoricalTimeSeriesResolutionResult timeSeries = OpenGammaCompilationContext.getHistoricalTimeSeriesResolver(context).resolve(
        getUnderlyingIdentifier(future), null, null, null, MarketDataRequirementNames.MARKET_VALUE, _resolutionKey);
    if (timeSeries == null) {
      return null;
    }
    requirements.add(HistoricalTimeSeriesFunctionUtils.createHTSRequirement(timeSeries,
View Full Code Here

TOP

Related Classes of com.opengamma.master.historicaltimeseries.HistoricalTimeSeriesResolutionResult

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.