File: SwaptionVolatilityStructure.java

package info (click to toggle)
quantlib-swig 1.15-1
  • links: PTS
  • area: main
  • in suites: buster
  • size: 103,484 kB
  • sloc: cpp: 2,029,354; cs: 61,237; java: 45,425; perl: 27,362; python: 22,024; ruby: 989; sh: 741; makefile: 319
file content (131 lines) | stat: -rw-r--r-- 4,928 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
/* ----------------------------------------------------------------------------
 * This file was automatically generated by SWIG (http://www.swig.org).
 * Version 3.0.12
 *
 * Do not make changes to this file unless you know what you are doing--modify
 * the SWIG interface file instead.
 * ----------------------------------------------------------------------------- */

package org.quantlib;

public class SwaptionVolatilityStructure {
  private transient long swigCPtr;
  protected transient boolean swigCMemOwn;

  protected SwaptionVolatilityStructure(long cPtr, boolean cMemoryOwn) {
    swigCMemOwn = cMemoryOwn;
    swigCPtr = cPtr;
  }

  protected static long getCPtr(SwaptionVolatilityStructure obj) {
    return (obj == null) ? 0 : obj.swigCPtr;
  }

  protected void finalize() {
    delete();
  }

  public synchronized void delete() {
    if (swigCPtr != 0) {
      if (swigCMemOwn) {
        swigCMemOwn = false;
        QuantLibJNI.delete_SwaptionVolatilityStructure(swigCPtr);
      }
      swigCPtr = 0;
    }
  }

  public SWIGTYPE_p_SwaptionVolatilityStructure __deref__() {
    long cPtr = QuantLibJNI.SwaptionVolatilityStructure___deref__(swigCPtr, this);
    return (cPtr == 0) ? null : new SWIGTYPE_p_SwaptionVolatilityStructure(cPtr, false);
  }

  public boolean isNull() {
    return QuantLibJNI.SwaptionVolatilityStructure_isNull(swigCPtr, this);
  }

  public Observable asObservable() {
    return new Observable(QuantLibJNI.SwaptionVolatilityStructure_asObservable(swigCPtr, this), true);
  }

  public SwaptionVolatilityStructure() {
    this(QuantLibJNI.new_SwaptionVolatilityStructure(), true);
  }

  public Date referenceDate() {
    return new Date(QuantLibJNI.SwaptionVolatilityStructure_referenceDate(swigCPtr, this), true);
  }

  public DayCounter dayCounter() {
    return new DayCounter(QuantLibJNI.SwaptionVolatilityStructure_dayCounter(swigCPtr, this), true);
  }

  public Calendar calendar() {
    return new Calendar(QuantLibJNI.SwaptionVolatilityStructure_calendar(swigCPtr, this), true);
  }

  public Period maxSwapTenor() {
    return new Period(QuantLibJNI.SwaptionVolatilityStructure_maxSwapTenor(swigCPtr, this), true);
  }

  public double maxSwapLength() {
    return QuantLibJNI.SwaptionVolatilityStructure_maxSwapLength(swigCPtr, this);
  }

  public double minStrike() {
    return QuantLibJNI.SwaptionVolatilityStructure_minStrike(swigCPtr, this);
  }

  public double maxStrike() {
    return QuantLibJNI.SwaptionVolatilityStructure_maxStrike(swigCPtr, this);
  }

  public double volatility(Date start, Period length, double strike, boolean extrapolate) {
    return QuantLibJNI.SwaptionVolatilityStructure_volatility__SWIG_0(swigCPtr, this, Date.getCPtr(start), start, Period.getCPtr(length), length, strike, extrapolate);
  }

  public double volatility(Date start, Period length, double strike) {
    return QuantLibJNI.SwaptionVolatilityStructure_volatility__SWIG_1(swigCPtr, this, Date.getCPtr(start), start, Period.getCPtr(length), length, strike);
  }

  public double volatility(double start, double length, double strike, boolean extrapolate) {
    return QuantLibJNI.SwaptionVolatilityStructure_volatility__SWIG_2(swigCPtr, this, start, length, strike, extrapolate);
  }

  public double volatility(double start, double length, double strike) {
    return QuantLibJNI.SwaptionVolatilityStructure_volatility__SWIG_3(swigCPtr, this, start, length, strike);
  }

  public double blackVariance(Date start, Period length, double strike, boolean extrapolate) {
    return QuantLibJNI.SwaptionVolatilityStructure_blackVariance__SWIG_0(swigCPtr, this, Date.getCPtr(start), start, Period.getCPtr(length), length, strike, extrapolate);
  }

  public double blackVariance(Date start, Period length, double strike) {
    return QuantLibJNI.SwaptionVolatilityStructure_blackVariance__SWIG_1(swigCPtr, this, Date.getCPtr(start), start, Period.getCPtr(length), length, strike);
  }

  public double blackVariance(double start, double length, double strike, boolean extrapolate) {
    return QuantLibJNI.SwaptionVolatilityStructure_blackVariance__SWIG_2(swigCPtr, this, start, length, strike, extrapolate);
  }

  public double blackVariance(double start, double length, double strike) {
    return QuantLibJNI.SwaptionVolatilityStructure_blackVariance__SWIG_3(swigCPtr, this, start, length, strike);
  }

  public Date optionDateFromTenor(Period p) {
    return new Date(QuantLibJNI.SwaptionVolatilityStructure_optionDateFromTenor(swigCPtr, this, Period.getCPtr(p), p), true);
  }

  public void enableExtrapolation() {
    QuantLibJNI.SwaptionVolatilityStructure_enableExtrapolation(swigCPtr, this);
  }

  public void disableExtrapolation() {
    QuantLibJNI.SwaptionVolatilityStructure_disableExtrapolation(swigCPtr, this);
  }

  public boolean allowsExtrapolation() {
    return QuantLibJNI.SwaptionVolatilityStructure_allowsExtrapolation(swigCPtr, this);
  }

}