Package com.opengamma.analytics.math.curve

Examples of com.opengamma.analytics.math.curve.FunctionalDoublesCurve


        final double total = accumSum[index];
        return accumProd[index] / riskFreeCurve.getDiscountFactor(t) * (spot - total);
      }
    };

    return new FunctionalDoublesCurve(f) {
      public Object writeReplace() {
        return new InvokedSerializedForm(ForwardCurveAffineDividends.class, "getForwardCurve", spot, riskFreeCurve, dividends);
      }
    };
  }
View Full Code Here


      public Double evaluate(final Double t) {
        return spot * costOfCarryCurve.getDiscountFactor(t) / riskFreeCurve.getDiscountFactor(t);
      }

    };
    return new FunctionalDoublesCurve(f) {
      public Object writeReplace() {
        return new InvokedSerializedForm(ForwardCurve.class, "getForwardCurve", spot, riskFreeCurve, costOfCarryCurve);
      }
    };
  }
View Full Code Here

        return spot * Math.exp(drift * t);
      }

    };

    return new FunctionalDoublesCurve(fwd) {

      public Object writeReplace() {
        return new InvokedSerializedForm(ForwardCurve.class, "getForwardCurve", spot, drift);
      }
    };
View Full Code Here

        final double temp = INTEGRATOR.integrate(driftFunc, 0.0, t);
        return spot * Math.exp(temp);
      }

    };
    return new FunctionalDoublesCurve(fwd) {

      public Object writeReplace() {
        return new InvokedSerializedForm(ForwardCurve.class, "getForwardCurve", spot, driftCurve);
      }
    };
View Full Code Here

        return (up - down) / 2 / _eps;
      }

    };

    return new FunctionalDoublesCurve(drift) {
      public Object writeReplace() {
        return new InvokedSerializedForm(ForwardCurve.class, "getDriftCurve", fwdCurve);
      }
    };
  }
View Full Code Here

   * @return The new curve.
   */
  public YieldAndDiscountCurve withSingleShift(final double t, final double shift) {
    final double defaultRange = 1.0E-3; // 1 day ~ 3E-3
    return new YieldAndDiscountAddZeroSpreadCurve(this._name + "WithSingleShift", false, this,
        YieldCurve.from(new FunctionalDoublesCurve(new TopHatFunction(t - defaultRange, t + defaultRange, shift))));
  }
View Full Code Here

      public Double evaluate(final Double x) {
        return (Math.abs(x - t) < 3.0e-6 ? eps : 0.0); //100 second tolerance
      }
    };

    final YieldAndDiscountCurve blipCurve = YieldCurve.from(new FunctionalDoublesCurve(blip));
    final YieldAndDiscountCurve originalCurve = curves.getCurve(curveName);
    final YieldAndDiscountCurve upCurve = new YieldAndDiscountAddZeroSpreadCurve("UpCurve", false, originalCurve, blipCurve);
    final YieldAndDiscountCurve downCurve = new YieldAndDiscountAddZeroSpreadCurve("DownCurve", true, originalCurve, blipCurve);

    curves.replaceCurve(curveName, upCurve);
View Full Code Here

      public Double evaluate(final Double x) {
        return (Math.abs(x - t) < 3.0e-6 ? eps : 0.0); //100 second tolerance
      }
    };

    final YieldAndDiscountCurve blipCurve = YieldCurve.from(new FunctionalDoublesCurve(blip));
    final YieldAndDiscountCurve originalCurve = curves.getCurve(curveName);
    final YieldAndDiscountCurve upCurve = new YieldAndDiscountAddZeroSpreadCurve("UpCurve", false, originalCurve, blipCurve);
    final YieldAndDiscountCurve downCurve = new YieldAndDiscountAddZeroSpreadCurve("DownCurve", true, originalCurve, blipCurve);

    curves.replaceCurve(curveName, upCurve);
View Full Code Here

      @Override
      public Double evaluate(final Double x) {
        return x * x;
      }
    };
    return new FunctionalDoublesCurve(f) {
      public Object writeReplace() {
        return new InvokedSerializedForm(ModelForwardCurveTest.class, "getForwardCurve");
      }
    };
  }
View Full Code Here

        result.put("detailed", detailedData);
      }
      return result;
    }
    if (value.getForwardCurve() instanceof FunctionalDoublesCurve) {
      FunctionalDoublesCurve functionalCurve = (FunctionalDoublesCurve) value.getForwardCurve();
      List<Double[]> data = new ArrayList<Double[]>();
      for (int i = 0; i < 30; i++) {
        double x = i;
        data.add(new Double[] {x, functionalCurve.getYValue(x)});
      }
      result.put("summary", data);
      if (mode == ConversionMode.FULL) {
        List<Double[]> detailedData = getData(functionalCurve);
        result.put("detailed", detailedData);
View Full Code Here

TOP

Related Classes of com.opengamma.analytics.math.curve.FunctionalDoublesCurve

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.