feat: add portfolio

This commit is contained in:
2026-08-13 22:48:40 +03:00
parent ebf34e01ca
commit 4ffc374bd8
2 changed files with 63 additions and 2 deletions
+4 -2
View File
@@ -28,10 +28,12 @@ sequenceDiagram
- `TOKEN_ENCRYPTION_KEY` - закодированный в base64 32-байтный ключ AES-256-GCM; обязателен при запуске.
- `TBANK_GRPC_ENDPOINT` по умолчанию имеет значение `invest-public-api.tbank.ru:443`.
- `TBANK_RATE_LIMIT_PER_SECOND` по умолчанию имеет значение `5`.
- `TBANK_RATE_LIMIT_PER_SECOND` задаёт максимальное число T-Bank RPC в секунду на экземпляр backend; значение по умолчанию -- `5`.
- `TBANK_CA_CERT_PATH` - необязательный путь к корневому CA-сертификату PEM для сетей с TLS-инспекцией; проверка TLS остается включенной.
FIFO-ограничитель на экземпляр запускает не более 5 запросов в секунду и принимает не более 50 ожидающих вызовов. Для `UNAVAILABLE`, `DEADLINE_EXCEEDED` и `RESOURCE_EXHAUSTED` выполняется одна повторная попытка через секунду. Deadline каждой попытки - 10 секунд.
FIFO-ограничитель на экземпляр запускает не более 5 запросов в секунду и принимает не более 50 ожидающих вызовов. Для `UNAVAILABLE`, `DEADLINE_EXCEEDED` и `RESOURCE_EXHAUSTED` выполняется одна повторная попытка через секунду. Deadline каждой попытки - 15 секунд.
Портфель с большим числом ранее не кэшированных инструментов создаёт отдельные metadata lookup. Если в такой ситуации очередь переполняется и позиции получают FIGI вместо names, увеличьте `TBANK_RATE_LIMIT_PER_SECOND` в соответствии с разрешённой upstream-квотой; для локального портфеля из множества позиций использовалось значение `50`.
## MVP limits