#pragma once #include 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; };