docs(portfolio): describe asset allocation

This commit is contained in:
2026-09-09 21:30:13 +03:00
parent 0e8c8c803f
commit 174bab3566
+32 -1
View File
@@ -65,6 +65,37 @@ Metadata инструмента ищется сначала по instrument UID,
сводка не обещает полной оценки портфеля. Отсутствующие валюты не дополняются сводка не обещает полной оценки портфеля. Отсутствующие валюты не дополняются
карточками; при пустом списке итогов доступный состав портфеля остаётся видимым. карточками; при пустом списке итогов доступный состав портфеля остаётся видимым.
## Структура портфеля
После валютной сводки, перед составом портфеля, показана структура по типам:
акции, облигации, другие активы и свободные деньги. Этот же блок используется
в обзоре «Все счета». Mantine Charts 9.5.1 с Recharts 3.10.1 отображает кольцо
и подсказку сегмента; суммы и доли всегда доступны в соседнем списке.
На узком экране список расположен под кольцом. При нескольких валютах
доступен Select, при одной — дополнительный control отсутствует.
Backend формирует `Portfolio.structure` из нормализованных позиций и денег,
используя точную decimal-арифметику. Сводные итоги повторно не прибавляются.
Тип `CURRENCY` относится к другим активам; денежные остатки — к свободным
деньгам. Доли учитывают деньги той же валюты, без FX. Доли на существующих
карточках позиций сохраняют прежний знаменатель без денег.
Суммы категорий передаются без потери точности. Сервер округляет процент до
шести знаков, клиент отображает его до сотых; положительная доля меньше
0,01% обозначается «< 0,01 %», если она не округлилась в ноль на сервере.
В графическую библиотеку передаются только числовые проценты для геометрии,
а суммы в списке и подсказке форматируются из исходных decimal strings.
`unvaluedCategories` сохраняет типы и количество позиций без оценки. Их
валюту нельзя определить по текущей стоимости, поэтому при наличии таких
позиций кольцо и доли недоступны для всех валют. UI показывает объяснение,
известные суммы и категории без оценки, не выдавая неизвестное за ноль.
Отрицательная позиция или остаток отключает кольцо своей валюты даже при
положительной сумме категории; суммы со знаком остаются в списке. В общем
режиме проверка использует остатки отдельных счетов до их взаимозачёта.
При пустом или нулевом составе вместо кольца показано текстовое состояние.
Блок использует тот же snapshot и lifecycle обновления, что и валютная сводка.
## Свежесть и ошибки ## Свежесть и ошибки
При первом открытии Portfolio frontend показывает structural skeleton заголовка, При первом открытии Portfolio frontend показывает structural skeleton заголовка,
@@ -91,4 +122,4 @@ stale-предупреждение зависит от `isStale` нового о
## Ограничения MVP ## Ограничения MVP
In-memory cache теряется после перезапуска и рассчитан на одного User. Нет истории Snapshot, операций, графиков, валютной конвертации, виртуальных позиций, заблокированных средств, ручного обновления и поддержки нескольких backend instances. In-memory cache теряется после перезапуска и рассчитан на одного User. Нет истории Snapshot, графиков стоимости и доходности, валютной конвертации, виртуальных позиций, заблокированных средств, ручного обновления и поддержки нескольких backend instances.