Я имею грубое использование класса QuantLib :: TimeSeries из библиотеки QuantLib. Моя проблема не связана с QuantLib и его сложностями, но я думаю, что в более общем случае используется класс C ++.
Описан 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;
}
Я был бы признателен, если бы кто-то дал мне руководство и помог мне сделать эту работу
Спасибо.
Я думаю, что ваша сложная строка должна быть примерно такой:
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
а второй, вероятно, является контейнером, используемым для использования в качестве реализации, и он уже имеет реализацию по умолчанию, поэтому ничего не нужно.
Других решений пока нет …