1todo(3)                            QuantLib                            todo(3)
2
3
4

NAME

6       todo - Todo List
7
8
9       Class AmericanCondition
10           unify the intrinsicValues/Payoff thing
11
12       Class AmericanExercise
13           check that everywhere the American condition is applied from
14           earliestDate and not earlier
15
16       Class AmericanPayoffAtExpiry
17           calculate greeks
18
19       Class AmericanPayoffAtHit
20           calculate greeks
21
22       Class AnalyticBarrierEngine
23           rework to avoid repeated casts inside utility methods
24
25       Class AnalyticContinuousGeometricAveragePriceAsianEngine
26           handle seasoned options
27
28       Class AnalyticDigitalAmericanEngine
29           add more greeks (as of now only delta and rho available)
30
31       Class AnalyticDiscreteGeometricAveragePriceAsianEngine
32           implement correct theta, rho, and dividend-rho calculation
33
34       Class BasketOption
35           Replace with STL algorithms
36
37       Class BermudanExercise
38           it would be nice to have a way for making a Bermudan with one
39           exercise date equivalent to an European
40
41       Class BicubicSpline
42           revise end conditions
43
44       Class BinomialVanillaEngine
45           Greeks are not overly accurate. They could be improved by building
46           a tree so that it has three points at the current time. The value
47           would be fetched from the middle one, while the two side points
48           would be used for estimating partial derivatives.
49
50       Class BivariateCumulativeNormalDistributionDr78
51           check accuracy of this algorithm and compare with: 1) Drezner, Z,
52           (1978), Computation of the bivariate normal integral, Mathematics
53           of Computation 32, pp. 277-279. 2) Drezner, Z. and Wesolowsky, G.
54           O. (1990) `On the Computation of the Bivariate Normal Integral',
55           Journal of Statistical Computation and Simulation 35, pp. 101-107.
56           3) Drezner, Z (1992) Computation of the Multivariate Normal
57           Integral, ACM Transactions on Mathematics Software 18, pp. 450-460.
58           4) Drezner, Z (1994) Computation of the Trivariate Normal Integral,
59           Mathematics of Computation 62, pp. 289-294. 5) Genz, A. (1992)
60           `Numerical Computation of the Multivariate Normal Probabilities',
61           J. Comput. Graph. Stat. 1, pp. 141-150.
62
63       Class BlackVarianceCurve
64           check time extrapolation
65
66       Class BlackVarianceSurface
67           check time extrapolation
68
69       Member QuantLib::BoundaryCondition::Side
70           Generalize for n-dimensional conditions
71
72       Class CapVolatilityVector
73           either add correct copy behavior or inhibit copy. Right now, a
74           copied instance would end up with its own copy of the length vector
75           but an interpolation pointing to the original ones.
76
77       Class CashFlows
78           add tests
79
80       Class Cdor
81           check settlement days, end-of-month adjustment, and day-count
82           convention.
83
84       Class CliquetOption
85
86       · add local/global caps/floors
87
88       · add accrued coupon and last fixing
89
90       Class ContinuousAveragingAsianOption
91           add running average
92
93       Class DirichletBC
94           generalize to time-dependent conditions.
95
96       Class DiscreteGeometricASO
97           add analytical greeks
98
99       Member QuantLib::Event::hasOccurred(const Date &d, bool
100       includeToday=false) const
101           make QL_TODAYS_PAYMENT dynamically configurable?
102
103       Class ExplicitEuler
104           add Richardson extrapolation
105
106       Class FixedRateBondForward
107           Add preconditions and tests
108
109       Class FixedRateBondForward
110           Create switch- if coupon goes to seller is toggled on, don't
111           consider income in the $ P_{DirtyFwd}(t) $ calculation.
112
113       Class FixedRateBondForward
114           Verify this works when the underlying is paper (in which case
115           ignore all AI.)
116
117       Class Forward
118           Add preconditions and tests
119
120       Class ForwardRateAgreement
121           Add preconditions and tests
122
123       Class ForwardRateAgreement
124           Should put an instance of ForwardRateAgreement in the FraRateHelper
125           to ensure consistency with the piecewise yield curve.
126
127       Class ForwardRateAgreement
128           Differentiate between BBA (British)/AFB (French) [assumed here] and
129           ABA (Australian) banker conventions in the calculations.
130
131       Class FuturesRateHelper
132           implement/refactor constructors with: Index instead of (nMonths,
133           calendar, convention, dayCounter), IMM code
134
135       Member QuantLib::GeneralizedBlackScholesProcess::drift(Time t, Real x)
136       const
137           revise extrapolation
138
139       Member QuantLib::GeneralizedBlackScholesProcess::diffusion(Time t, Real
140       x) const
141           revise extrapolation
142
143       Class GenericRiskStatistics
144           add historical annualized volatility
145
146       Class IborIndex
147           add methods returning InterestRate
148
149       Class IntegralEngine
150           define tolerance for calculate()
151
152       Class InterestRateIndex
153           add methods returning InterestRate
154
155       Class Jibar
156           check settlement days and day-count convention.
157
158       Class LogLinearInterpolation
159           implement primitive, derivative, and secondDerivative functions.
160
161       Class MCVarianceSwapEngine
162           define tolerance of numerical integral and incorporate it in
163           errorEstimate
164
165       Class MixedScheme
166
167       · derive variable theta schemes
168
169       · introduce multi time-level schemes.
170
171       Class MultiCubicSpline
172
173       · allow extrapolation as for the other interpolations
174
175       · investigate if and how to implement Hyman filters and different
176         boundary conditions
177
178       Class NeumannBC
179           generalize to time-dependent conditions.
180
181       Class Option::arguments
182
183       · remove std::vector<Time> stoppingTimes
184
185       · how to handle strike-less option (asian average strike, forward,
186         etc.)?
187
188       Class RandomizedLDS
189           implement the other randomization algorithms
190
191       Member QuantLib::SampledCurve::valueAtCenter() const
192           replace or complement with a more general function valueAt(spot)
193
194       Member QuantLib::SampledCurve::firstDerivativeAtCenter() const
195           replace or complement with a more general function
196           firstDerivativeAt(spot)
197
198       Member QuantLib::SampledCurve::secondDerivativeAtCenter() const
199           replace or complement with a more general function
200           secondDerivativeAt(spot)
201
202       Class Solver1D
203
204       · clean up the interface so that it is clear whether the accuracy is
205         specified for $ x $ or $ f(x) $.
206
207       · add target value (now the target value is 0.0)
208
209       Class Swaption
210           add greeks and explicit exercise lag
211
212       Class Tibor
213           check settlement days and end-of-month adjustment.
214
215       Class TimeGrid
216           what was the rationale for limiting the grid to positive times?
217           Investigate and see whether we can use it for negative ones as
218           well.
219
220       Class TRLibor
221           check end-of-month adjustment.
222
223       Class UnitedKingdom
224           add LIFFE
225
226       Class YieldTermStructure
227           add derived class ParSwapTermStructure similar to
228           ZeroYieldTermStructure, DiscountStructure, ForwardRateStructure
229
230       Class Zibor
231           check settlement days, end-of-month adjustment, and day-count
232           convention.
233
234Version 0.8.1                     29 Oct 2007                          todo(3)
Impressum