QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.38
|
Container for historical data. More...
#include <timeseries.hpp>
Classes | |
struct | reverse |
struct | reverse< container, std::bidirectional_iterator_tag > |
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 More... | |
Date | lastDate () const |
returns the last date for which a historical datum exists More... | |
Size | size () const |
returns the number of historical data including null ones More... | |
bool | empty () const |
returns whether the series contains any data More... | |
Historical data access | |
T | operator[] (const Date &d) const |
returns the (possibly null) datum corresponding to the given date More... | |
T & | operator[] (const Date &d) |
Private Attributes | |
Container | values_ |
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 |
typedef Container::value_type | container_value_type |
typedef std::function< Date(const container_value_type &)> | projection_time |
typedef std::function< T(const container_value_type &)> | projection_value |
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< Date > | dates () const |
returns the dates for which historical data exist More... | |
std::vector< T > | values () const |
returns the historical data More... | |
static const Date & | get_time (const container_value_type &v) |
static const T & | get_value (const container_value_type &v) |
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.
Container
type must satisfy the requirements set by the C++ standard for associative containers. Definition at line 51 of file timeseries.hpp.
Definition at line 53 of file timeseries.hpp.
typedef T value_type |
Definition at line 54 of file timeseries.hpp.
typedef Container::const_iterator const_iterator |
Definition at line 110 of file timeseries.hpp.
typedef const_iterator::iterator_category iterator_category |
Definition at line 111 of file timeseries.hpp.
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 |
Definition at line 150 of file timeseries.hpp.
typedef reverse<Container,enable_reverse>::const_reverse_iterator const_reverse_iterator |
Definition at line 154 of file timeseries.hpp.
|
private |
Definition at line 171 of file timeseries.hpp.
|
private |
Definition at line 173 of file timeseries.hpp.
|
private |
Definition at line 175 of file timeseries.hpp.
|
default |
Default constructor
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.
Definition at line 65 of file timeseries.hpp.
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.
Definition at line 76 of file timeseries.hpp.
Date firstDate |
returns the first date for which a historical datum exists
Definition at line 200 of file timeseries.hpp.
Date lastDate |
returns the last date for which a historical datum exists
Definition at line 206 of file timeseries.hpp.
Size size |
returns the number of historical data including null ones
Definition at line 212 of file timeseries.hpp.
bool empty |
returns whether the series contains any data
Definition at line 217 of file timeseries.hpp.
returns the (possibly null) datum corresponding to the given date
Definition at line 96 of file timeseries.hpp.
Definition at line 102 of file timeseries.hpp.
TimeSeries< T, C >::const_iterator cbegin |
TimeSeries< T, C >::const_iterator cend |
const_iterator begin | ( | ) | const |
Definition at line 158 of file timeseries.hpp.
const_iterator end | ( | ) | const |
Definition at line 159 of file timeseries.hpp.
const_reverse_iterator crbegin | ( | ) | const |
Definition at line 160 of file timeseries.hpp.
const_reverse_iterator crend | ( | ) | const |
Definition at line 163 of file timeseries.hpp.
const_reverse_iterator rbegin | ( | ) | const |
const_reverse_iterator rend | ( | ) | const |
TimeSeries< T, C >::const_iterator find | ( | const Date & | d | ) |
Definition at line 235 of file timeseries.hpp.
std::vector< Date > dates |
returns the dates for which historical data exist
Definition at line 245 of file timeseries.hpp.
std::vector< T > values |
returns the historical data
Definition at line 254 of file timeseries.hpp.
|
staticprivate |
Definition at line 188 of file timeseries.hpp.
|
staticprivate |
Definition at line 191 of file timeseries.hpp.
|
mutableprivate |
Definition at line 56 of file timeseries.hpp.