- Типы матриц и векторов
- Создание и инициализация матриц и векторов
- Копирование матриц, векторов и массивов
- Копирование таймсерий в матрицу или вектор
- Копирование истории тиков в матрицу или вектор
- Вычисление выражений с матрицами и векторами
- Манипуляции над матрицами и векторами
- Произведения матриц и векторов
- Преобразования (разложение) матриц
- Получение статистики
- Характеристики матриц и векторов
- Решение уравнений
- Методы машинного обучения
Копирование таймсерий в матрицу или вектор
Метод matrix<T>::CopyRates копирует временные ряды с историей котировок прямо в матрицу или вектор. Данный метод работает по аналогии с функциями, которые мы подробно рассмотрим в 5-ой Части, в главе о временных рядах, а именно: CopyRates и раздельные Copy-функции для каждого поля структуры MqlRates.
bool matrix<T>::CopyRates(const string symbol, ENUM_TIMEFRAMES tf, ulong rates_mask,
ulong start, ulong count)
bool matrix<T>::CopyRates(const string symbol, ENUM_TIMEFRAMES tf, ulong rates_mask,
datetime from, ulong count)
bool matrix<T>::CopyRates(const string symbol, ENUM_TIMEFRAMES tf, ulong rates_mask,
datetime from, datetime to)
В параметрах требуется указать символ, таймфрейм, а также диапазон запрашиваемых баров: либо по номеру и количеству, либо по диапазону дат. Данные копируются таким образом, что самый старый по времени элемент помещается в начало матрицы/вектора.
Параметр rates_mask предназначен для указания комбинации флагов из перечисления ENUM_COPY_RATES с набором доступных полей. Комбинация флагов позволяет за один запрос получить несколько временных рядов из истории. При этом порядок строк в матрице будет соответствовать порядку значений в перечислении ENUM_COPY_RATES, в частности, строка с данными High будет в матрице всегда выше строки с данными Low.
При копировании в вектор можно указать только одно значение из перечисления ENUM_COPY_RATES, иначе будет ошибка.
Идентификатор |
Значение |
Описание |
---|---|---|
COPY_RATES_OPEN |
1 |
цены Open |
COPY_RATES_HIGH |
2 |
цены High |
COPY_RATES_LOW |
4 |
цены Low |
COPY_RATES_CLOSE |
8 |
цены Close |
COPY_RATES_TIME |
16 |
времена открытия баров |
COPY_RATES_VOLUME_TICK |
32 |
тиковые объемы |
COPY_RATES_VOLUME_REAL |
64 |
реальные объемы |
COPY_RATES_SPREAD |
128 |
спреды |
|
Комбинации |
|
COPY_RATES_OHLC |
15 |
Open, High, Low, Close |
COPY_RATES_OHLCT |
31 |
Open, High, Low, Close, Time |
Мы покажем пример использований этой функции в разделе о Решении уравнений.