Skip to content

FOMO (Fear of Missing Out)

Функция FOMO анализирует транзакции и показывает упущенную прибыль — сколько можно было бы заработать, совершив сделку в более удачный момент.

Активация

Включается/выключается через выпадающий список в шапке портфолио (раздел «Управление функциями»).

Интерфейс

Попап с таблицей по каждой транзакции. Обработка выполняется пачками с прогресс-баром (X из N транзакций обработано).

Для каждой транзакции отображаются три колонки:

КолонкаОписание
Ваша прибыльФактическая прибыль/убыток транзакции
Потенциальная прибыльМаксимально возможная прибыль при идеальном тайминге
РазницаУпущенная выгода = Потенциальная − Ваша

Расчёт

Для транзакций покупки (Buy)

  1. Загружаются исторические данные цены монеты
  2. В периоде до даты транзакции находится минимальная цена (лучший момент для покупки)
  3. Расчёт:
bestPrice = min(историческиеЦены до даты транзакции), где bestPrice < transactionPrice

potentialProfit = (marketPrice − bestPrice) × quantity
yourProfit      = (marketPrice − transactionPrice) × quantity
difference      = potentialProfit − yourProfit

Для транзакций продажи (Sell)

  1. В периоде до даты транзакции находится максимальная цена (лучший момент для продажи)
  2. Расчёт:
bestPrice = max(историческиеЦены до даты транзакции), где bestPrice > transactionPrice

potentialProfit = (bestPrice − avg) × quantity
yourProfit      = (transactionPrice − avg) × quantity
difference      = potentialProfit − yourProfit

Отображение в транзакциях

Блок «Упущенная выгода» также показывается в модальном окне информации о транзакции (покупка/продажа, майнинг) — если функция FOMO активна.

Техническая реализация

  • Компоненты: modules/fomoAssetsPopup/
  • Расчёт лучшей цены: BuySellTransaction.getBestPeriodFiat() — поиск оптимальной исторической цены в данных графика
  • Прогресс: Транзакции обрабатываются порционно для предотвращения блокировки UI