
Файл план-факт становится отчётом об издержках за один проход
Загрузи файл план-факт – и получи суммарные издержки, объём выработки и среднюю цену за МВт·ч по актуальным ценам дисбаланса Латвии.

- 1Цена дисбаланса, показана пунктирной линией
- 2Балансирующие издержки на МВт·ч за тот же период
Что работает автоматически
Автоопределение колонок
Колонки распознаются по названию заголовка среди десятков вариантов написания, а без заголовков используется резервная раскладка. Из многостраничной книги автоматически выбирается лист с наибольшим числом строк.
Актуальные цены BTD
Определённый период уходит на Baltic Transparency Dashboard за финальной ценой дисбаланса Латвии через прокси с белым списком источников, потому что API блокирует прямые запросы из браузера.
Издержки на интервал
Дисбаланс за интервал, прогноз минус факт, умножается на цену этого интервала. Интервал без найденной цены исключается из итога, а не заполняется приблизительно.
Собрано с Claude Code за 1 день
Файл план-факт и таблица цен сводились вручную, каждый раз заново.
Одна загрузка сразу даёт издержки, объём и среднюю цену за МВт·ч.


Как устроено
01Контекст
У ошибки прогноза есть рыночная цена
Латвия сверяет выработку ВИЭ с прогнозом с шагом 15 минут: любой недобор или перебор докупается или продаётся обратно по цене дисбаланса рынка. У производителя эта цена обычно лежит в одном месте, а собственные цифры план-факт – в другом, без простого способа увидеть, во сколько обошёлся неудачный день прогноза.
02Что сделали
Загрузил файл – получил число издержек
Загружаешь Excel или CSV с колонками времени, прогноза и факта; приложение находит нужные колонки по названию заголовка или по резервной раскладке, если заголовков нет, а период определяется автоматически. Файл до 50 МБ разбирается целиком в браузере и никуда не загружается. Период сам подставляется из файла с ограничением в шесть месяцев, а приложение подтягивает финальную цену дисбаланса Латвии за это окно с Baltic Transparency Dashboard.
03Как работает
Разбор на клиенте, цены через прокси
React, TypeScript и Vite на фронтенде, Recharts для графика, xlsx для разбора файла. Объём дисбаланса – прогноз минус факт; балансирующие издержки – объём дисбаланса на цену дисбаланса; цена за МВт·ч – сумма издержек, делённая на суммарный объём выработки. Интервал без найденной цены исключается из итога, а не восстанавливается интерполяцией. Baltic Transparency Dashboard блокирует прямые запросы из браузера, поэтому в продакшене цену запрашивает Vercel Edge Function.
ANM SOLUTIONS / СВЯЗАТЬСЯ
Хотите похожее?
Первый 30-минутный звонок бесплатный. Мы описываем объём, вы решаете.


