На CPU вычисления
This commit is contained in:
28
src/day_stats.hpp
Normal file
28
src/day_stats.hpp
Normal file
@@ -0,0 +1,28 @@
|
||||
#pragma once
|
||||
#include <cstdint>
|
||||
|
||||
using DayIndex = long long;
|
||||
|
||||
// Агрегированные данные за один день
|
||||
struct DayStats {
|
||||
DayIndex day; // индекс дня (timestamp / 86400)
|
||||
double low; // минимальный Low за день
|
||||
double high; // максимальный High за день
|
||||
double open; // первый Open за день
|
||||
double close; // последний Close за день
|
||||
double avg; // среднее = (low + high) / 2
|
||||
double first_ts; // timestamp первой записи (для определения порядка open)
|
||||
double last_ts; // timestamp последней записи (для определения close)
|
||||
};
|
||||
|
||||
// Интервал с изменением >= 10%
|
||||
struct Interval {
|
||||
DayIndex start_day;
|
||||
DayIndex end_day;
|
||||
double min_open;
|
||||
double max_close;
|
||||
double start_avg;
|
||||
double end_avg;
|
||||
double change;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user