QuantLib: a free/open-source library for quantitative finance
Reference manual - version 1.40
Loading...
Searching...
No Matches
TimeSeries< T, Container > Class Template Reference

Container for historical data. More...

#include <ql/timeseries.hpp>

Public Types

typedef Date key_type
typedef T value_type

Public Member Functions

 TimeSeries ()=default
template<class DateIterator, class ValueIterator>
 TimeSeries (DateIterator dBegin, DateIterator dEnd, ValueIterator vBegin)
template<class ValueIterator>
 TimeSeries (const Date &firstDate, ValueIterator begin, ValueIterator end)
Inspectors
Date firstDate () const
 returns the first date for which a historical datum exists
Date lastDate () const
 returns the last date for which a historical datum exists
Size size () const
 returns the number of historical data including null ones
bool empty () const
 returns whether the series contains any data
Historical data access
operator[] (const Date &d) const
 returns the (possibly null) datum corresponding to the given date
T & operator[] (const Date &d)

Iterators

typedef Container::const_iterator const_iterator
typedef const_iterator::iterator_category iterator_category
typedef std::conditional_t< std::is_same_v< iterator_category, std::bidirectional_iterator_tag >||std::is_base_of_v< std::bidirectional_iterator_tag, iterator_category >, std::bidirectional_iterator_tag, std::input_iterator_tag > enable_reverse
typedef reverse< Container, enable_reverse >::const_reverse_iterator const_reverse_iterator
const_iterator cbegin () const
const_iterator cend () const
const_iterator begin () const
const_iterator end () const
const_reverse_iterator crbegin () const
const_reverse_iterator crend () const
const_reverse_iterator rbegin () const
const_reverse_iterator rend () const

Utilities

const_iterator find (const Date &)
std::vector< Datedates () const
 returns the dates for which historical data exist
std::vector< T > values () const
 returns the historical data

Detailed Description

template<class T, class Container = std::map<Date, T>>
class QuantLib::TimeSeries< T, Container >

Container for historical data.

This class acts as a generic repository for a set of historical data. Any single datum can be accessed through its date, while sets of consecutive data can be accessed through iterators.

Precondition
The Container type must satisfy the requirements set by the C++ standard for associative containers.

Constructor & Destructor Documentation

◆ TimeSeries() [1/3]

template<class T, class Container = std::map<Date, T>>
TimeSeries ( )
default

Default constructor

◆ TimeSeries() [2/3]

template<class T, class Container = std::map<Date, T>>
template<class DateIterator, class ValueIterator>
TimeSeries ( DateIterator dBegin,
DateIterator dEnd,
ValueIterator vBegin )

This constructor initializes the history with a set of values passed as two sequences, the first containing dates and the second containing corresponding values.

◆ TimeSeries() [3/3]

template<class T, class Container = std::map<Date, T>>
template<class ValueIterator>
TimeSeries ( const Date & firstDate,
ValueIterator begin,
ValueIterator end )

This constructor initializes the history with a set of values. Such values are assigned to a corresponding number of consecutive dates starting from firstDate included.