Package com.opengamma.engine.value

Examples of com.opengamma.engine.value.ValueProperties


    return ComputationTargetType.NULL;
  }

  @Override
  public Set<ValueSpecification> getResults(final FunctionCompilationContext context, final ComputationTarget target) {
    final ValueProperties properties = createValueProperties()
        .withAny(ValuePropertyNames.CURVE_CONSTRUCTION_CONFIG)
        .get();
    return Collections.singleton(new ValueSpecification(ValueRequirementNames.CURVE_INSTRUMENT_CONVERSION_HISTORICAL_TIME_SERIES, target.toSpecification(),
        properties));
  }
View Full Code Here


    for (final CurveGroupConfiguration group : groups) {
      //TODO do we want to put information in about whether or not to use fixing time series?
      //TODO do we want to exclude node types that definitely don't need fixing data?
      for (final Map.Entry<String, List<CurveTypeConfiguration>> entry : group.getTypesForCurves().entrySet()) {
        final String curveName = entry.getKey();
        final ValueProperties properties = ValueProperties.builder()
            .with(ValuePropertyNames.CURVE, curveName)
            .get();
        requirements.add(new ValueRequirement(ValueRequirementNames.CURVE_HISTORICAL_TIME_SERIES, targetSpec, properties));
        requirements.add(new ValueRequirement(ValueRequirementNames.CURVE_SPECIFICATION, targetSpec, properties));
      }
    }
    final ValueProperties properties = ValueProperties.builder()
        .with(ValuePropertyNames.CURVE_CONSTRUCTION_CONFIG, curveConstructionConfig)
        .get();
    requirements.add(new ValueRequirement(ValueRequirementNames.CURVE_CONSTRUCTION_CONFIG, targetSpec, properties));
    return requirements;
  }
View Full Code Here

      _definitionConverter = definitionConverter;
    }

    @Override
    public Set<ValueSpecification> getResults(final FunctionCompilationContext context, final ComputationTarget target) {
      final ValueProperties properties = createValueProperties().withAny(PROPERTY_DATE).get();
      return Collections.singleton(new ValueSpecification(ValueRequirementNames.NETTED_FIXED_CASH_FLOWS, target.toSpecification(), properties));
    }
View Full Code Here

      return Collections.singleton(new ValueSpecification(ValueRequirementNames.NETTED_FIXED_CASH_FLOWS, target.toSpecification(), properties));
    }

    @Override
    public Set<ValueRequirement> getRequirements(final FunctionCompilationContext context, final ComputationTarget target, final ValueRequirement desiredValue) {
      final ValueProperties constraints = desiredValue.getConstraints();
      final Set<String> dates = constraints.getValues(PROPERTY_DATE);
      if (dates == null || dates.size() != 1) {
        s_logger.error("Must supply a date from which to calculate the cash-flows");
        return null;
      }
      final String date = Iterables.getOnlyElement(dates);
View Full Code Here

          cashFlows = NETTING_CASH_FLOW_CALCULATOR.getCashFlows(definition, date);
        } else {
          cashFlows = NETTING_CASH_FLOW_CALCULATOR.getCashFlows(definition, fixingSeries.getTimeSeries(), date);
        }
      }
      final ValueProperties properties = createValueProperties().with(PROPERTY_DATE, dateString).get();
      return Collections.singleton(new ComputedValue(new ValueSpecification(ValueRequirementNames.NETTED_FIXED_CASH_FLOWS, target.toSpecification(), properties),
          new FixedPaymentMatrix(cashFlows)));
    }
View Full Code Here

    return Collections.singleton(new ValueSpecification(ValueRequirementNames.WEIGHT, target.toSpecification(), ValueProperties.all()));
  }

  @Override
  public Set<ValueRequirement> getRequirements(final FunctionCompilationContext context, final ComputationTarget target, final ValueRequirement desiredValue) {
    final ValueProperties constraints = desiredValue.getConstraints();
    Set<String> values = constraints.getValues(VALUE_PROPERTY_NAME);
    final String inputValue;
    if ((values == null) || values.isEmpty()) {
      inputValue = DEFAULT_VALUE_NAME;
    } else if (values.size() == 1) {
      inputValue = values.iterator().next();
    } else {
      return null;
    }
    // Propogate the desired value constraints onto the requirements, removing those specific to this function and adding a unit homogeneity clause
    final ValueProperties.Builder requirementConstraintsBuilder = constraints.copy().withoutAny(VALUE_PROPERTY_NAME);
    for (String unit : UnitProperties.unitPropertyNames()) {
      values = constraints.getValues(unit);
      if (values == null) {
        // Unit was not specified on the output, but we specify it on the inputs so we can check homogeneity to ensure the division is valid
        requirementConstraintsBuilder.withOptional(unit);
      }
    }
    // Request value on the value and parent
    final ValueProperties requirementConstraints = requirementConstraintsBuilder.get();
    return ImmutableSet.of(new ValueRequirement(inputValue, getValueTarget(target), requirementConstraints), new ValueRequirement(inputValue, getParentTarget(target), requirementConstraints));
  }
View Full Code Here

  @Override
  public void init(final FunctionCompilationContext context) {
    _definition = _helper.init(context, this);
    final ComputationTargetSpecification targetSpec = ComputationTargetSpecification.of(_definition.getCurrency());
    final ValueProperties properties = createValueProperties().with(ValuePropertyNames.CURVE, _curveName).get();
    _interpolator = new CombinedInterpolatorExtrapolator(Interpolator1DFactory.getInterpolator(_definition.getInterpolatorName()), new FlatExtrapolator1D());
    final String curveReqName = _isYieldCurve ? ValueRequirementNames.YIELD_CURVE : ValueRequirementNames.DISCOUNT_CURVE;
    _result = new ValueSpecification(curveReqName, targetSpec, properties);
    _specResult = new ValueSpecification(ValueRequirementNames.YIELD_CURVE_SPEC, targetSpec, properties);
    _results = Sets.newHashSet(_result, _specResult);
View Full Code Here

      } else {
        assert inputParent == null;
        inputParent = input;
      }
    }
    final ValueProperties rawResultProperties = inputValue.getProperties().intersect(inputParent.getProperties());
    final ValueProperties.Builder resultPropertiesBuilder = rawResultProperties.copy();
    for (String unit : UnitProperties.unitPropertyNames()) {
      final Set<String> valueUnits = inputValue.getProperties().getValues(unit);
      final Set<String> parentUnits = inputParent.getProperties().getValues(unit);
      if (valueUnits != null) {
        if (parentUnits != null) {
          if (rawResultProperties.getValues(unit) != null) {
            // The operation is a division, so there are no units on the result
            resultPropertiesBuilder.withoutAny(unit);
          } else {
            // No common intersection between parent and value properties for this unit
            return null;
View Full Code Here

    final Instant versionTime = atZDT.plus(1, ChronoUnit.HOURS).truncatedTo(ChronoUnit.HOURS).toInstant();
    final CurveDefinition curveDefinition = curveDefinitionSource.getCurveDefinition(_curveName, VersionCorrection.of(versionTime, versionTime));
    if (curveDefinition == null) {
      throw new OpenGammaRuntimeException("Could not get curve definition called " + _curveName);
    }
    final ValueProperties properties = createValueProperties()
        .with(ValuePropertyNames.CURVE, _curveName)
        .get();
    final ValueSpecification spec = new ValueSpecification(ValueRequirementNames.CURVE_DEFINITION, ComputationTargetSpecification.NULL, properties);
    final Set<ComputedValue> result = Collections.singleton(new ComputedValue(spec, curveDefinition));
    return new AbstractInvokingCompiledFunction(atZDT.with(LocalTime.MIDNIGHT), atZDT.plusDays(1).with(LocalTime.MIDNIGHT).minusNanos(1000000)) {
View Full Code Here

    return Collections.singleton(new ValueSpecification(ValueRequirementNames.YIELD_CURVE, target.toSpecification(), ValueProperties.all()));
  }

  @Override
  public Set<ValueRequirement> getRequirements(final FunctionCompilationContext context, final ComputationTarget target, final ValueRequirement desiredValue) {
    final ValueProperties constraints = desiredValue.getConstraints();
    final Set<String> shift = constraints.getValues(SHIFT);
    if ((shift == null) || shift.isEmpty() || constraints.isOptional(SHIFT)) {
      return null;
    }
    final ValueProperties properties = desiredValue.getConstraints().copy().withoutAny(SHIFT).with(SHIFT, "0").withOptional(SHIFT).get();
    return Collections.singleton(new ValueRequirement(desiredValue.getValueName(), target.toSpecification(), properties));
  }
View Full Code Here

TOP

Related Classes of com.opengamma.engine.value.ValueProperties

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.