Package com.opengamma.analytics.financial.interestrate.cash.derivative

Examples of com.opengamma.analytics.financial.interestrate.cash.derivative.Cash


  public static final String yieldCurveName = "Euro Yield Curve Fixed 2%";
  public static final double y = 0.02;
  // CSON

  public static void cashDemo(final PrintStream out) {
    final Cash loan = new Cash(ccy, 0.0, t, notional, r, t, yieldCurveName);

    out.println(loan.getInterestAmount());
  }
View Full Code Here


    bundle.setCurve(yieldCurveName, yieldCurve);
    return bundle;
  }

  public static void parRateDemo(final PrintStream out) {
    final Cash loan = new Cash(ccy, 0.0, t, notional, r, t, yieldCurveName);
    final YieldCurveBundle bundle = getBundle();

    final ParRateCalculator parRateCalculator = ParRateCalculator.getInstance();
    final double parRate = loan.accept(parRateCalculator, bundle);
    out.println(parRate);
  }
View Full Code Here

    final double parRate = loan.accept(parRateCalculator, bundle);
    out.println(parRate);
  }

  public static void presentValueDemo(final PrintStream out) {
    final Cash loan = new Cash(ccy, 0.0, t, notional, r, t, yieldCurveName);
    final YieldCurveBundle bundle = getBundle();

    final PresentValueCalculator presentValueCalculator = PresentValueCalculator.getInstance();
    final double presentValue = loan.accept(presentValueCalculator, bundle);
    out.println(presentValue);
  }
View Full Code Here

  }

  static YieldCurveBundle bundle = getBundle(y);

  public static void interestRateDerivativeDemo(final PrintStream out) {
    final Cash loan = new Cash(ccy, 0.0, t, notional, r, t, yieldCurveName);

    // @export "interestRateDerivatives-presentValue"
    final YieldCurveBundle bundle = getBundle(y);

    for (double i = 1.0; i < 3.0; i += 1) {
      out.format("Yield curve interest rate at %f: %f%n", i, yieldCurve.getInterestRate(i));
      out.format("Yield curve discount factor at %f: %f%n", i, yieldCurve.getDiscountFactor(i));
    }

    final double presentValue = loan.accept(presentValueCalculator, bundle);
    out.format("Present value of loan using this yield curve bundle %f%n", presentValue);

    final double zeroCouponDiscountFactor = yieldCurve.getDiscountFactor(t);
    final double checkCalculation = notional * (zeroCouponDiscountFactor * (1 + r * t) - 1);
    out.format("Manually calculating value of loan gives %f%n", checkCalculation);
View Full Code Here

  private RateReplacingInterestRateDerivativeVisitor() {
  }

  @Override
  public Cash visitCash(final Cash cash, final Double rate) {
    return new Cash(cash.getCurrency(), cash.getStartTime(), cash.getEndTime(), cash.getNotional(), rate, cash.getAccrualFactor(), cash.getYieldCurveName());
  }
View Full Code Here

  @Override
  public Cash toDerivative(final ZonedDateTime date, final String... yieldCurveNames) {
    ArgumentChecker.isTrue(!date.isAfter(_endDate), "date {} is after end date {}", date, _endDate);
    final double startTime = TimeCalculator.getTimeBetween(date, _startDate);
    if (startTime < 0) {
      return new Cash(_currency, 0, TimeCalculator.getTimeBetween(date, _endDate), _notional, 0, _rate, _accrualFactor, yieldCurveNames[0]);
    }
    return new Cash(_currency, startTime, TimeCalculator.getTimeBetween(date, _endDate), _notional, _rate, _accrualFactor, yieldCurveNames[0]);
  }
View Full Code Here

  public Cash toDerivative(final ZonedDateTime date) {
//    return toDerivative(date, new String[] {""});
    ArgumentChecker.isTrue(!date.isAfter(_endDate), "date {} is after end date {}", date, _endDate);
    final double startTime = TimeCalculator.getTimeBetween(date, _startDate);
    if (startTime < 0) {
      return new Cash(_currency, 0, TimeCalculator.getTimeBetween(date, _endDate), _notional, 0, _rate, _accrualFactor);
    }
    return new Cash(_currency, startTime, TimeCalculator.getTimeBetween(date, _endDate), _notional, _rate, _accrualFactor);
  }
View Full Code Here

  private RateReplacingVisitor() {
  }

  @Override
  public Cash visitCash(final Cash cash, final Double rate) {
    return new Cash(cash.getCurrency(), cash.getStartTime(), cash.getEndTime(), cash.getNotional(), rate, cash.getAccrualFactor());
  }
View Full Code Here

  }

  @Test(expectedExceptions = IllegalArgumentException.class)
  public void testWrongNodeNumber() {
    final List<InstrumentDerivative> list = new ArrayList<>();
    list.add(new Cash(CUR, 0, 1, 1, 0.01, 1, CURVE_NAME));
    list.add(new Cash(CUR, 0, 0.5, 1, 0.01, 0.5, CURVE_NAME));
    new MultipleYieldCurveFinderFunction(new MultipleYieldCurveFinderDataBundle(list, new double[list.size()], null, NODES, INTERPOLATORS, false, FX_MATRIX), CALCULATOR);
  }
View Full Code Here

  public void testCash() {
    final double t = 7 / 365.0;
    final YieldAndDiscountCurve curve = CURVES.getCurve(FUNDING_CURVE_NAME);
    final double df = curve.getDiscountFactor(t);
    final double r = 1 / t * (1 / df - 1);
    final Cash cash = new Cash(CUR, 0, t, 1, r, t, FUNDING_CURVE_NAME);
    doTest(cash, CURVES);
  }
View Full Code Here

TOP

Related Classes of com.opengamma.analytics.financial.interestrate.cash.derivative.Cash

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.