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
20 lines
362 B
C++
20 lines
362 B
C++
/**
|
|
* @file Payoff.cpp
|
|
* @brief Payoff function implementations.
|
|
*/
|
|
|
|
#include "Payoff.hpp"
|
|
#include <algorithm>
|
|
|
|
double CallPayoff::operator()(double S) {
|
|
return std::max(0., S - strike_);
|
|
}
|
|
|
|
double PutPayoff::operator()(double S) {
|
|
return std::max(0., strike_ - S);
|
|
}
|
|
|
|
double DigitalPayoff::operator()(double S) {
|
|
return S > strike_ ? 1. : 0.;
|
|
}
|