Restructure C++ core into cpp module and package bindings.
Move the pricing engine sources out of src/ into cpp/, add the closed-form engine and pybind wiring, and align tests/build targets with the new project layout. Made-with: Cursor
This commit is contained in:
40
cpp/YieldCurve.hpp
Normal file
40
cpp/YieldCurve.hpp
Normal file
@@ -0,0 +1,40 @@
|
||||
/**
|
||||
* @file YieldCurve.hpp
|
||||
* @brief Abstract yield curve: discount factors and zero rates.
|
||||
*/
|
||||
|
||||
#ifndef QUANTENGINE_YIELDCURVE_HPP
|
||||
#define QUANTENGINE_YIELDCURVE_HPP
|
||||
|
||||
/**
|
||||
* @brief Risk-free rate term structure for discounting and risk-neutral drift.
|
||||
*/
|
||||
class YieldCurve {
|
||||
public:
|
||||
YieldCurve() = default;
|
||||
|
||||
YieldCurve(const YieldCurve &other) {
|
||||
}
|
||||
|
||||
YieldCurve(YieldCurve &&other) noexcept {
|
||||
}
|
||||
|
||||
YieldCurve & operator=(const YieldCurve &other) {
|
||||
if (this == &other)
|
||||
return *this;
|
||||
return *this;
|
||||
}
|
||||
|
||||
YieldCurve & operator=(YieldCurve &&other) noexcept {
|
||||
if (this == &other)
|
||||
return *this;
|
||||
return *this;
|
||||
}
|
||||
virtual ~YieldCurve() = default;
|
||||
virtual double discount(double t) const = 0;
|
||||
virtual double zeroRate(double t) const = 0;
|
||||
|
||||
};
|
||||
|
||||
|
||||
#endif //QUANTENGINE_YIELDCURVE_HPP
|
||||
Reference in New Issue
Block a user