我正在粗略地使用QuantLib库中的QuantLib :: TimeSeries类。我的问题与QuantLib及其复杂性无关,但我认为在更普遍的C ++类中使用。
描述了here的QuantLib :: TimeSeries。在我的代码中(现在绝对没有返回任何内容),我在std :: vector中提供了一系列日期,并在std :: vector中包含了一系列价格。 QuantLib :: TimeSeries对象应该将日期和价格联系在一起。
#include<ql\quantlib.hpp>
int main()
{
std::vector<QuantLib::Date> dates;
std::vector<std::double> quotes;
dates.push_back(Date(12,Nov, 2012));
dates.push_back(Date(13,Nov, 2012));
dates.push_back(Date(14,Nov, 2012));
quotes.push_back(40.05);
quotes.push_back(40.84);
quotes.push_back(41.03);
// Below is the line I am stuck at
QuantLib::TimeSeries<std::vector<QuantLib::Date>, std::vector<double>> series(dates.begin(), dates.end(), quotes.begin());
// Now do something with all the stuff above
// ... ...
return 0;
}
我很感激有人提供了指导,帮助我完成这项工作。
谢谢。
答案 0 :(得分:1)
我认为你的困难线应该是:
QuantLib::TimeSeries<double> series(dates.begin(), dates.end(), quotes.begin());
来自您关联的文档:
template<class T, class Container = std::map<Date, T>>
class QuantLib::TimeSeries< T, Container >;
第一个参数是您存储的类型,在您的情况下为double
,第二个参数可能是用作实现的容器之一,它已经有一个默认实现,因此不需要任何内容。