29 {
31
32 while (reader.next()) {
33 QuantLib::Real shiftSize = QuantLib::Null<QuantLib::Real>();
34 QuantLib::Real baseNpv = QuantLib::Null<QuantLib::Real>();
35 QuantLib::Real delta = QuantLib::Null<QuantLib::Real>();
36 std::string id = reader.get(idColumn);
37 std::string key = reader.get(riskFactorColumn);
38 std::string currency = reader.get(currencyColumn);
42 if (validDelta && validNpv && validShiftSize && !QuantLib::close_enough(delta, 0.0)) {
43 sensitivities_[id].push_back({key, delta, currency, baseNpv, shiftSize});
44 }
45 }
46}
std::map< std::string, std::vector< ZeroSensitivity > > sensitivities_
bool tryParseReal(const string &s, QuantLib::Real &result)