ROI в криптовалюте — это показатель доходности вложенного капитала: он показывает, насколько стоимость позиции выросла или уменьшилась относительно суммы, которую инвестор реально вложил. Базовая формула выглядит просто: ROI = (итоговая стоимость − вложенный капитал) / вложенный капитал × 100%. Но именно в криптовалюте эта формула часто применяется неправильно, потому что пользователь забывает комиссии сети, пополнения, частичные продажи, вознаграждения, изменение количества токенов, стоимость газа, проскальзывание и разницу между реализованным и нереализованным результатом.

Если человек вложил 100 000 рублей, а через несколько месяцев позиция стоит 130 000 рублей, грубый ROI равен 30%. Но если за вход, переводы, работу со смарт-контрактами и выход было потрачено 8 000 рублей, реальный результат уже не 30%. Если часть капитала добавлялась позже, простое деление прибыли на первоначальные 100 000 тоже становится ошибкой. Если инвестор получил токены стейкинга, но базовый актив подешевел, высокий процент начислений может сопровождаться отрицательным ROI в рублях.

Поэтому профессиональный расчёт ROI начинается не с процента на экране, а с определения денежного потока. Нужно записать, сколько капитала внесено, когда он внесён, сколько выведено, какие расходы были понесены и какова текущая ликвидная стоимость остатка. Только после этого можно сравнивать стратегии, активы или периоды.

ROI особенно полезен как первая метрика, потому что отвечает на понятный вопрос: сколько я заработал или потерял относительно вложенного капитала. Но он не отвечает на другой важный вопрос — сколько времени понадобилось для этого результата. ROI 20% за два месяца и ROI 20% за три года — экономически разные достижения. Именно поэтому дальше мы отдельно разберём APR, APY, CAGR, IRR и time-weighted return.

Если вы только собираете инвестиционный портфель, сначала полезно определить размер позиции и риск. Для этого на OneMagic есть отдельный материал о том, на какую сумму покупать криптовалюту и как не перегружать портфель одной идеей. ROI нужен уже после этого — как система измерения фактического результата.

ROI считается не по красивой цене входа и не по проценту доходности продукта, а по всем вашим реальным денежным потокам. Если расходы, пополнения и выводы не учтены, цифра ROI может быть математически аккуратной и экономически ложной.

Что такое ROI в криптовалюте простыми словами

Что показывает схемаКомиссии и дополнительные внесения легко делают красивую цифру неверной.
Что запомнитьROI полезен только при корректной себестоимости и не показывает риск, время или путь к результату.

ROI показывает эффективность вложенного капитала

Аббревиатура ROI расшифровывается как Return on Investment — возврат или доходность на инвестиции. Показатель сопоставляет финансовый результат с суммой капитала, которая была использована для получения этого результата. Если вложено 100 000 рублей, а чистая прибыль составила 25 000 рублей, ROI равен 25%. Если получен убыток 20 000 рублей, ROI равен −20%.

Это относительная метрика. Прибыль в 50 000 рублей может быть отличным результатом при капитале 100 000 и слабым при капитале 5 млн. ROI позволяет сравнивать сделки и стратегии разных размеров, потому что переводит результат в процент к базе.

Базовая формула ROI

ROI = (Final Value − Invested Capital) / Invested Capital × 100%. В самом простом случае Final Value — сумма, которую вы получили при закрытии позиции, а Invested Capital — все деньги, потраченные на её создание. Если позиция ещё не закрыта, вместо Final Value используется текущая рыночная стоимость, но тогда ROI является нереализованным.

Например, покупка на 200 000 рублей выросла до 250 000. ROI = (250 000 − 200 000) / 200 000 × 100% = 25%. Если цена упала и позиция стоит 150 000, ROI = −25%.

ROI может быть положительным, нулевым и отрицательным

Положительный ROI означает, что стоимость капитала после учёта выбранных расходов выше базы. Нулевой — что результат примерно равен вложенному. Отрицательный — что часть капитала потеряна. При криптовалюте важно заранее решить, в какой валюте измеряется результат: в рублях, долларах, BTC, ETH или другой единице.

Один и тот же портфель может иметь положительный ROI в количестве монет и отрицательный ROI в рублях. Например, стейкинг увеличил число токенов на 8%, но их цена упала на 30%. Количество выросло, а стоимость капитала снизилась.

ROI не является прогнозом

Показатель описывает уже произошедшее или текущую переоценку. Он не говорит, что результат повторится. ROI +200% за прошлый год не означает, что актив даст ещё +200%. Напротив, высокая историческая доходность часто сопровождается большой волатильностью и риском глубокой просадки.

Поэтому ROI используется как элемент анализа, но не как основание для обещания будущей доходности.

Нереализованный и реализованный ROI

Если токен просто подорожал на кошельке, прибыль пока нереализована. Рыночная цена может измениться до продажи. Реализованный ROI возникает, когда позиция полностью или частично закрыта и итоговый денежный поток известен.

Это различие особенно важно для малоликвидных активов. Экран может показывать ROI +300%, но продать весь объём по последней цене невозможно. Реальный результат после price impact способен быть значительно ниже. Поэтому перед крупной фиксацией полезно понимать ликвидность и глубину криптовалютного рынка.

ROI по позиции и ROI по всему портфелю

ROI отдельной монеты отвечает на вопрос о конкретной инвестиции. Portfolio ROI должен учитывать все позиции, наличный резерв, реализованные сделки, комиссии и выводы. Нельзя усреднять проценты отдельных монет арифметически, если размеры позиций различаются.

Если половина портфеля дала +10%, а другая половина +50%, общий ROI около +30% при одинаковых долях. Но если первая позиция составляла 90% капитала, а вторая 10%, результат будет примерно +14%. Вес капитала имеет значение.

Ситуация Вложено Итоговая стоимость ROI
Рост позиции 100 000 ₽ 130 000 ₽ +30%
Без изменения 100 000 ₽ 100 000 ₽ 0%
Просадка 100 000 ₽ 75 000 ₽ −25%
Рост с расходами 5 000 ₽ 105 000 ₽ 130 000 ₽ +23,8%
Стейкинг: монет больше, цена ниже 100 000 ₽ 82 000 ₽ −18%

Как правильно считать ROI криптовалюты с комиссиями и расходами

В знаменатель входят все затраты на создание позиции

Главная ошибка — считать Invested Capital только по номинальной сумме покупки. Если для получения позиции пришлось заплатить комиссию сети, gas, bridge fee, сервисную комиссию, депозит за доступ к стратегии или другие неизбежные расходы, они увеличивают стоимость входа. Без этого ROI завышен.

Например, вы направили 100 000 рублей в стратегию, но ещё 3 000 рублей ушли на комиссии. Экономически вложено 103 000. Если итоговая ликвидная стоимость 120 000, ROI равен 16,5%, а не 20%.

Комиссии выхода тоже уменьшают реальный ROI

Пока позиция не продана, многие считают её по последней цене без учёта стоимости выхода. Для ликвидного актива это может быть небольшая погрешность. Для DeFi-позиции с несколькими транзакциями, bridge, unwrap или большим price impact разница бывает существенной.

Поэтому для консервативной оценки полезно использовать net liquidation value — сумму, которую вы реально получите после всех расходов закрытия прямо сейчас.

Gas нужно распределять по стратегии

Если одна транзакция gas обслуживает конкретную позицию, её стоимость относится к этой инвестиции. Если транзакция объединяет несколько действий, расход можно распределять пропорционально капиталу или учитывать на уровне портфеля.

При небольших суммах gas способен полностью изменить экономику. Доход 10 долларов при расходах 30 долларов означает отрицательный ROI, даже если протокол показывает положительную доходность.

Slippage и price impact — скрытые расходы

Пользователь может не видеть отдельной строки «комиссия», но исполнение происходит по цене хуже ожидаемой. Разница между теоретической и фактической ценой входит в реальный PnL. В тонком пуле или при крупном объёме этот эффект может быть больше явной комиссии.

Для измерения ROI используйте фактический полученный объём и фактическую цену, а не котировку, которая была на экране до подтверждения транзакции.

Bridge fee и изменение цены во время переноса

При переносе активов между сетями возникают явные комиссии и иногда временной риск. Если актив блокируется, а representation появляется позже, рынок может измениться. Само движение цены не является комиссией, но влияет на результат стратегии и должно отражаться в итоговой стоимости.

Если bridge использует wrapped-версию, дополнительно учитывайте возможное отклонение её цены от базового актива.

Вознаграждения нужно оценивать по рыночной стоимости

Если стратегия начисляет reward token, нельзя просто прибавить его номинальный APY к ROI. Нужно определить, сколько токенов реально получено и сколько они стоят после учёта ликвидности и расходов продажи.

Вознаграждение в токене с низкой ликвидностью может выглядеть большим на дашборде и почти не иметь реализуемой стоимости.

Налоги и инфляция — отдельный слой

Для инвестиционного контроля обычно сначала считают pre-tax ROI, потому что налоговые правила зависят от страны и статуса пользователя. Затем можно считать after-tax return. Investor.gov определяет real return как результат после учёта налогов и инфляции; это полезное напоминание, что номинальная прибыль и рост покупательной способности — разные вещи.

Для криптовалюты особенно важно не смешивать бухгалтерский ROI стратегии и налоговый результат. Они могут использовать разные базы и даты признания.

Расход Учитывать в ROI? Как
Комиссия входа Да Добавить к invested capital
Gas Да Отнести к позиции или портфелю
Slippage Да Использовать фактическую цену исполнения
Bridge fee Да Добавить к расходам стратегии
Комиссия выхода Да Вычесть из final value
Налог Отдельно Считать after-tax ROI при необходимости
Инфляция Отдельно Для real return

ROI, прибыль, PnL, APR, APY, CAGR и IRR: в чём разница

Прибыль — абсолютная сумма

Profit показывает, сколько денег заработано или потеряно. Если вложено 500 000 рублей и получено 600 000, прибыль 100 000. ROI переводит те же 100 000 в процент: +20%. Оба показателя нужны: один показывает денежный результат, другой — эффективность капитала.

Большой ROI на маленькой сумме может быть менее значим для портфеля, чем умеренный ROI на крупной позиции.

PnL шире простого ROI

PnL — profit and loss, финансовый результат. Его можно считать по позиции, сделке, дню или портфелю. PnL обычно выражается в денежной сумме, но интерфейсы также показывают PnL%. ROI чаще связывает результат именно с вложенным капиталом.

В сложных позициях denominator для PnL% может быть margin, notional или cost basis, поэтому нужно читать методику.

APR — годовая ставка без обязательного сложного процента

APR используют для представления годовой ставки. В криптопродуктах этот термин часто применяется свободнее, чем в регулируемых банковских продуктах. Он не всегда отражает reinvestment, изменение ставки, комиссии или цену reward token.

Поэтому APR нельзя напрямую приравнивать к фактическому ROI пользователя. Подробнее различие ставок разобрано в материале OneMagic о APR и APY в криптовалюте.

APY учитывает эффект капитализации

APY отражает годовую доходность при определённой частоте начисления и реинвестирования. CFPB в официальной формуле связывает APY с процентом и частотой compounding. Но в криптовалюте рекламный APY может меняться каждый блок, зависеть от incentive token или предполагать автоматический compound.

ROI, напротив, показывает фактический результат конкретного пользователя за его реальный период. Если рекламный APY был 30%, а пользователь заработал чистыми 8% за четыре месяца, его ROI — 8%, независимо от баннера.

CAGR отвечает на вопрос о среднегодовом темпе

Compound Annual Growth Rate полезен, когда нужно сравнить многолетние инвестиции. Формула CAGR = (Final / Initial)^(1/Years) − 1. ROI +100% за четыре года не равен 25% в год; CAGR около 18,9%.

CAGR предполагает плавный эквивалентный темп и не показывает путь цены. Портфель мог пережить просадку −80% и закончить тем же CAGR, что более стабильный актив.

IRR учитывает время денежных потоков

Если капитал вносится и выводится в разные даты, простой ROI становится менее информативным. Internal Rate of Return ищет такую ставку дисконтирования, при которой приведённая стоимость всех денежных потоков равна нулю. Для нерегулярных дат обычно используют XIRR.

IRR полезен для личного портфеля с пополнениями, но может давать необычные результаты при сложных знаках cash flow. Он не заменяет подробный журнал операций.

Time-weighted return отделяет результат стратегии от пополнений

Time-weighted return разбивает историю на периоды между внешними денежными потоками и геометрически соединяет их доходности. Это позволяет оценить качество стратегии независимо от того, когда пользователь добавлял капитал.

Для сравнения стратегий TWR часто информативнее money-weighted return. Для личного результата инвестора IRR, наоборот, лучше отражает влияние его дат пополнений.

ROI нельзя годизировать простым умножением

Если позиция дала 5% за месяц, умножение на 12 и объявление «60% годовых» предполагает, что одинаковый результат повторится каждый месяц без изменения риска. Это сильное допущение. При compounding эквивалентный годовой темп будет другим, а в реальности месячные доходности изменяются.

Поэтому всегда показывайте фактический период ROI: +12% за 94 дня, а не просто +12%.

Метрика Что измеряет Учитывает время? Лучшее применение
Profit Абсолютную прибыль/убыток Нет Сколько денег заработано
ROI Результат к вложенному капиталу Не напрямую Простая эффективность
APR Годовую ставку Да Сравнение ставок
APY Годовую ставку с compounding Да Доходные продукты
CAGR Эквивалентный среднегодовой рост Да Многолетнее сравнение
IRR/XIRR Доходность с cash flow Да Портфель с пополнениями
TWR Доходность стратегии без влияния cash flow Да Сравнение стратегий

Как считать ROI при нескольких покупках, DCA, пополнениях и частичных продажах

Одна цена входа перестаёт существовать

Если актив покупался пять раз, у позиции нет одной фактической цены входа. Есть несколько lots с разными cost basis. Для приблизительного контроля используют средневзвешенную цену: сумма затрат / количество приобретённых токенов.

Но при частичной продаже возникает вопрос метода списания себестоимости. Для инвестиционного журнала можно отслеживать конкретные lots; для налогового учёта правила определяет юрисдикция.

Средняя цена должна включать комиссии покупки

Если куплено 10 токенов по 100 долларов и уплачено 20 долларов расходов, cost basis — 1020 долларов, а не 1000. Средняя экономическая цена — 102 доллара за токен.

Без включения расходов ROI систематически завышается, особенно при частых небольших операциях.

DCA меняет money-weighted return

При регулярных покупках важна дата каждого вложения. Сто тысяч, вложенные год назад, работали в рынке дольше, чем сто тысяч, внесённые вчера. Простой ROI на общую сумму не различает это время.

Для оценки личного результата удобно сочетать простой ROI с XIRR. ROI показывает общий процент на внесённый капитал, XIRR — годовой темп с учётом дат.

Частичная продажа возвращает часть капитала

Если вы вложили 100 000, затем продали часть позиции за 60 000, а остаток сейчас стоит 70 000, экономический итог = 60 000 + 70 000 = 130 000. Общий ROI около +30% до расходов.

Ошибка — смотреть только на остаток 70 000 и считать убыток −30%, забыв уже выведенные деньги.

Возврат первоначального капитала не делает остаток бесплатным

Инвесторы иногда говорят: «я вывел первоначальный депозит, оставшиеся монеты бесплатные». Психологически это удобно, но экономически у остатка есть opportunity cost и текущая рыночная стоимость. Если его цена падает на 50%, капитал действительно уменьшается.

Для портфельного учёта продолжайте оценивать остаток по рынку, даже если cash invested net стал нулевым.

Net invested capital может становиться отрицательным

Если из стратегии уже выведено больше, чем внесено, net cash invested становится отрицательным. Обычная формула ROI с таким знаменателем теряет смысл. В таких случаях лучше показывать cumulative profit, IRR и текущую стоимость остатка.

Не пытайтесь насильно получить красивый ROI из формулы, для которой denominator больше не соответствует экономической задаче.

Modified Dietz как практический компромисс

Для портфелей с множеством cash flow существует приближённая методика Modified Dietz: прибыль за период делится на средневзвешенный капитал с учётом времени нахождения каждого потока в портфеле. Она проще IRR и часто достаточно точна для регулярной отчётности.

Но для обычного пользователя можно начать с XIRR в таблице, если известны даты и денежные потоки.

Дата Денежный поток Смысл
1 января −100 000 ₽ Первая покупка
1 марта −50 000 ₽ DCA-пополнение
1 июня +40 000 ₽ Частичная продажа
1 сентября −20 000 ₽ Дополнительная покупка
Сегодня +180 000 ₽ Текущая стоимость как условный финальный поток

ROI стейкинга, лендинга и пассивного дохода: почему процент начислений обманывает

Стейкинг увеличивает количество, но ROI считают по стоимости

Допустим, инвестор держал 100 токенов и получил ещё 8 за год. Token yield = 8%. Но если цена упала с 100 до 60 долларов, начальная стоимость была 10 000, итоговая — 6480. ROI около −35,2%, несмотря на положительное начисление.

Поэтому доходность в монетах и доходность капитала должны отображаться отдельно.

Staking rewards имеют собственную цену реализации

Вознаграждение часто начисляется тем же активом. Если пользователь не продаёт его сразу, оно продолжает нести рыночный риск. При расчёте нереализованного ROI reward оценивается по текущей цене, при реализованном — по фактическим продажам.

Если награда заблокирована или находится в unbonding, используйте консервативную стоимость и учитывайте невозможность немедленного выхода.

Validator fee и slashing влияют на net ROI

Делегирование может иметь комиссию валидатора, а нарушение правил — риск штрафов. Рекламная staking rate до этих факторов не равна чистой доходности пользователя.

Отдельная статья OneMagic о стейкинге криптовалюты разбирает механику валидаторов, unbonding и риски.

Лендинг: процент — только одна часть результата

При кредитовании токенов пользователь получает interest, но базовый актив может меняться в цене. Если депозит в волатильной монете дал 12% токенами, а сама монета потеряла 40%, ROI в фиатной базе остаётся отрицательным.

Для стейблкоина рыночная волатильность меньше, но появляются риск depeg, smart contract risk и возможность потери ликвидности.

Высокий APY incentive token может быть номинальным

Протокол способен показывать трехзначный APY, выплачивая вознаграждение собственным токеном. Если emission высока, а спрос слаб, цена reward может падать быстрее начисления.

Для ROI фиксируйте фактическую стоимость полученных reward после возможного price impact.

Compounding стоит денег

Автоматическое или ручное реинвестирование повышает теоретический APY, но каждая операция может иметь gas и комиссию. На маленьком капитале слишком частый compound уменьшает ROI.

Оптимальная частота зависит от суммы, ставки, gas и периода. Нет универсального правила «реинвестировать каждый день».

Сравнивайте yield-стратегию с простым hold

Если стратегия дала +18% ROI, а простое хранение того же актива дало +30%, стратегия фактически уступила benchmark на 12 процентных пунктов. Сам положительный ROI не означает, что дополнительный smart-contract риск был оправдан.

Benchmark нужен для ответа: что стратегия добавила относительно более простого пути.

Показатель Стейкинг Лендинг Что нужно для ROI
Начисление Новые токены Процент/токены Рыночная стоимость
Цена базового актива Меняется Меняется Учесть полностью
Комиссии Validator/gas Gas/protocol Вычесть
Ликвидность Unbonding возможен Может ограничиваться Оценить выход
Benchmark Hold Hold/денежная альтернатива Сравнить

ROI пула ликвидности и DeFi-позиции: fees не равны прибыли

LP получает комиссии, но меняется состав позиции

Поставщик ликвидности в AMM получает комиссии, однако количество каждого актива в позиции изменяется по мере движения относительной цены. Поэтому нельзя считать ROI как «полученные fees / депозит» без переоценки самих резервов.

Итог LP = стоимость активов при выходе + начисленные комиссии и incentives − расходы.

Impermanent loss сравнивает LP с hold

Impermanent loss — не самостоятельная сумма, исчезающая со счёта; это разница между стоимостью LP-позиции и контрольным портфелем тех же активов при определённых условиях. Поэтому ROI LP и IL отвечают на разные вопросы.

Для точного понимания используйте материал OneMagic про impermanent loss.

Fee APR может быть высоким при слабом total ROI

Пул способен генерировать много комиссий во время волатильности, но один из токенов может резко дешеветь. Пользователь получает fees и одновременно держит всё больше слабого актива. Итоговый ROI может быть отрицательным.

Нужно считать стоимость всей позиции на момент выхода, а не только fee counter.

Concentrated liquidity добавляет риск диапазона

В concentrated AMM капитал работает только в заданном диапазоне. Если цена выходит из него, позиция становится преимущественно одним активом и перестаёт собирать комиссии до возврата цены или ребалансировки.

Ребалансировки сами создают gas, slippage и возможную реализацию убытка. Эти расходы входят в ROI.

Incentives нужно отделять от organic fees

Протокол может субсидировать LP дополнительным токеном. Тогда полезно считать два компонента: fee ROI от реальной активности и incentive ROI от эмиссии. Первый показывает экономику пула, второй — временную субсидию.

Если incentive исчезнет, стратегия может стать невыгодной.

TVL не определяет ваш ROI

Большой TVL говорит о масштабе капитала, но не гарантирует хорошую доходность или безопасность. Высокий TVL может снижать fee yield, если объём операций не растёт пропорционально.

Для конкретной позиции важны active liquidity, volume, fees, диапазон и стоимость выхода.

LP ROI нужно считать относительно двух benchmarks

Первый benchmark — просто держать исходные активы. Второй — держать выбранную базовую валюту, например рубли или доллары. Это позволяет понять одновременно эффективность LP-механики и общий рыночный результат.

Стратегия может обыграть hold, но проиграть денежной базе, если оба токена сильно подешевели.

Компонент LP Влияние на ROI
Изменение цены токенов Может быть главным драйвером
Trading fees Положительный поток
Incentives Дополнительный, часто временный поток
Impermanent loss Отставание от hold benchmark
Gas и ребалансировки Уменьшают ROI
Price impact при выходе Уменьшает реализованный результат

Как считать ROI токена, который ещё не продан: unrealized return, ликвидность и оценка

Последняя цена подходит не всегда

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

Поэтому крупную позицию лучше оценивать по executable price или моделировать price impact.

Market cap не является вашей ликвидационной стоимостью

Даже если токен имеет капитализацию 100 млн долларов, это не означает, что держатели вместе могут вывести 100 млн по текущей цене. Market cap масштабирует последнюю цену на supply. Подробнее это разобрано в статье OneMagic о капитализации крипторынка.

Для ROI конкретного инвестора имеет значение объём ликвидности около цены.

Locked и vested tokens нужно оценивать отдельно

Если часть токенов ещё заблокирована, пользователь не может реализовать их сейчас. Можно показывать theoretical value и liquid value отдельно. Особенно это важно для allocations, vesting и airdrop-наград.

График vesting и unlock влияет и на доступ пользователя, и на будущий supply рынка.

Airdrop с нулевой cost basis даёт необычный ROI

Если токены получены бесплатно, denominator обычной ROI-формулы равен нулю, поэтому процент не определён или математически бесконечен. Нельзя писать «ROI бесконечный» как полезный инвестиционный показатель.

Лучше показывать полученную стоимость, расходы на claim и последующий ROI от даты, когда актив стал частью портфеля.

Миграция токена не должна искусственно обнулять cost basis

Если старый токен обменён на новый по технической миграции, экономическая позиция может продолжаться. Для внутреннего инвестиционного учёта переносите исходную стоимость и фиксируйте коэффициент миграции, если сама операция не является продажей по вашей методологии.

Иначе ROI нового токена будет выглядеть завышенным.

Wrapped asset требует оценки underlying

Wrapped token может торговаться с небольшим отклонением от базового актива. Для ROI используйте фактическую стоимость wrapper и учитывайте возможность redemption. Если redemption временно ограничен, discount становится реальным риском.

Не предполагайте автоматическую стоимость 1:1 только из названия.

Утерянный или недоступный актив экономически отличается от liquid portfolio

Если приватный ключ утрачен или контракт не позволяет вывод, экранный баланс не равен реализуемой стоимости. В инвестиционном учёте такая позиция требует отдельной оценки вплоть до полного списания.

ROI должен отражать экономическую реальность, а не только данные explorer.

Тип позиции Оценка для ROI
Ликвидный токен Текущая исполнимая цена
Тонкий рынок Цена с учётом depth/price impact
Locked token Отдельно theoretical и liquid value
Airdrop с нулевой базой Показывать value, а не обычный ROI
Wrapped asset Рынок + redeemability
Недоступный актив Консервативная оценка/списание

Почему высокий ROI без учёта риска почти бесполезен

ROI ничего не говорит о просадке

Две стратегии могут закончить год с ROI +30%. Первая максимальную просадку имела −10%, вторая −80%. Для пользователя это совершенно разный риск. Если во второй стратегии капитал мог практически исчезнуть, итоговые +30% не описывают путь.

Поэтому всегда записывайте maximum drawdown вместе с ROI.

Волатильность показывает нестабильность результата

Высокая разбросанность дневных или недельных доходностей означает, что конечный ROI менее предсказуем. Волатильность не равна риску полностью, но помогает сравнить стабильность.

Особенно опасно экстраполировать короткий высокий ROI из периода аномального роста.

Leverage способен резко улучшить и разрушить ROI

Плечо увеличивает чувствительность капитала к движению базового актива. ROI на собственный капитал может быть огромным при небольшом движении цены, но одновременно растёт вероятность ликвидации.

Сравнивать ROI leveraged и unleveraged стратегии без указания риска некорректно.

Benchmark нужен обязательно

Если крипторынок вырос на 100%, стратегия с ROI +20% формально прибыльна, но сильно уступила простому benchmark. Если рынок упал на 50%, ROI −10% может быть относительно хорошим результатом.

Выбирайте benchmark, соответствующий задаче: базовый актив, корзина рынка, stable reserve или простое hold.

Opportunity cost — скрытая цена стратегии

Капитал, занятый в одной позиции, не мог работать в другой. Если стратегия дала 5% за год при высоком риске, а более простая альтернатива дала 7%, экономический выбор был слабым.

ROI должен сравниваться не только с нулём, но и с разумной альтернативой.

Sharpe и другие risk-adjusted metrics дополняют ROI

Sharpe ratio сопоставляет excess return с волатильностью. Sortino фокусируется на негативной волатильности. Calmar сравнивает доходность с maximum drawdown. Эти метрики помогают понять, сколько результата получено на единицу риска.

Они не являются универсальной истиной и чувствительны к выбору периода, но лучше простого рейтинга «у кого ROI выше».

Survivorship bias и выбор удачного периода

Можно показать ROI проекта только с локального дна и получить впечатляющий процент. Другой пользователь, вошедший месяцем раньше, увидит противоположный результат. Поэтому честный анализ фиксирует заранее выбранный период и не подбирает точки после события.

Для портфеля полезно хранить ROI по месяцам, кварталам и с момента первого вложения.

Высокий ROI может быть результатом единственного удачного события

Если 90% результата стратегии пришло от одного токена, устойчивость метода не доказана. Разберите attribution: какой актив, какая стратегия и какой источник создали прибыль.

Это помогает отличить повторяемый процесс от удачи.

Метрика рядом с ROI Что добавляет
Maximum drawdown Размер худшей просадки
Volatility Стабильность доходности
Benchmark return Относительную эффективность
Sharpe/Sortino Доходность на единицу риска
Liquidity Реализуемость результата
Attribution Источник прибыли
Time period Сопоставимость результата

Практический алгоритм расчёта ROI криптопортфеля и типичные ошибки

Шаг 1. Выберите базовую валюту

Решите, в чём измеряется успех: рубли, доллары, BTC или другая единица. Для личных финансов обычно разумно использовать валюту будущих расходов. Для криптостратегии дополнительно можно считать BTC-relative или ETH-relative return.

Не меняйте базу посередине периода, иначе сравнение потеряет смысл.

Шаг 2. Соберите все внешние денежные потоки

Запишите каждое пополнение и вывод. Переводы между собственными кошельками не являются новым вложением и не должны менять portfolio ROI, хотя network fee остаётся расходом.

Отделите external cash flow от внутренних перемещений.

Шаг 3. Соберите cost basis каждой позиции

Для каждой покупки запишите дату, количество, фактическую стоимость и комиссии. Для rewards отдельно фиксируйте источник и количество.

Если данных нет, восстановите их по TxID и истории кошелька, но не подменяйте фактическую цену текущей.

Шаг 4. Определите текущую ликвидную стоимость

Для каждой позиции оцените объём, который реально можно получить при выходе. Для крупных или низколиквидных позиций применяйте discount или моделируйте price impact.

Locked, vested и illiquid assets показывайте отдельной строкой.

Шаг 5. Посчитайте простой ROI

Если период не содержит сложных cash flow, используйте формулу: (Current Value + Withdrawals − Contributions) / Contributions. Но внимательно следите за знаменателем: если выводы превышают внесения или потоков много, переходите к IRR/TWR.

Для одной простой сделки стандартная формула остаётся самой прозрачной.

Шаг 6. Добавьте XIRR для портфеля с пополнениями

В таблице создайте две колонки: date и cash flow. Вложения записываются отрицательными значениями, выводы положительными. Текущая стоимость портфеля добавляется как финальный положительный cash flow на дату расчёта.

XIRR даст annualized money-weighted return, учитывающий фактические даты.

Шаг 7. Сравните с benchmark

Посчитайте, что произошло бы, если бы все внешние cash flows шли в выбранный benchmark. Это помогает понять, добавили ли активные решения ценность.

Не выбирайте benchmark после результата; определите его заранее.

Шаг 8. Разложите ROI по источникам

Отдельно покажите price return, staking/lending income, LP fees, incentives, realized trading PnL и расходы. Тогда видно, откуда действительно возник результат.

Стратегия, где большая часть ROI обеспечена временными incentives, требует другого прогноза, чем стратегия с устойчивыми fees.

Шаг 9. Проверьте риски и ликвидность

Добавьте maximum drawdown, volatility, долю крупнейшей позиции и стоимость немедленного выхода. Высокий ROI без этих полей легко создаёт ложное чувство качества.

Перед новой инвестицией полезно также пройти проверку токена перед покупкой.

Ошибка 1. Игнорировать комиссии

Даже 1–2% расходов на каждом цикле резко снижают результат при частой активности. SEC Investor.gov отдельно подчёркивает, что fees уменьшают капитал, который продолжает работать и приносить доход. Этот эффект на длинном горизонте накапливается.

Для криптостратегий с gas и rebalance это особенно заметно.

Ошибка 2. Считать начисления доходом без переоценки базового токена

Количество монет увеличилось на 20%, но цена упала на 50% — ROI отрицательный. Всегда отделяйте token yield от portfolio return.

Эта ошибка типична для staking и incentive farming.

Ошибка 3. Сравнивать ROI разных сроков

+30% за месяц и +30% за пять лет нельзя ставить в одну колонку без периода. Показывайте holding period и, при необходимости, CAGR или XIRR.

Но не годизируйте короткие случайные результаты как прогноз.

Ошибка 4. Забывать уже выведенную прибыль

Если часть позиции продана, полученные деньги входят в total return. Оценка только оставшегося wallet balance занижает результат.

Держите журнал realized cash flows.

Ошибка 5. Считать last price реализуемой

Для тонкого рынка высокий экранный ROI может исчезнуть при попытке продажи. Оценивайте depth и price impact.

Именно поэтому ликвидность — часть честной ROI-отчётности.

Финальный шаблон отчёта

Поле Что записывать
Период Дата начала и дата расчёта
Contributions Все внешние пополнения
Withdrawals Все внешние выводы
Current liquid value Реализуемая стоимость остатка
Fees Gas, комиссии, slippage
Simple ROI Общий процент результата
XIRR/CAGR Годизированная метрика при необходимости
Benchmark Доходность альтернативы
Max drawdown Худшая просадка
Attribution Цена, rewards, fees, incentives

Итог

ROI в криптовалюте — полезная базовая метрика, если считать её по реальным денежным потокам. Для простой покупки достаточно сопоставить вложенную сумму и стоимость на выходе. Для портфеля с DCA, стейкингом, частичными продажами и DeFi нужен журнал пополнений, выводов, комиссий и текущей ликвидной стоимости.

Главное — не путать ROI с APR или APY, не сравнивать разные горизонты без annualized метрики и не считать экранный рост токенов фактической прибылью. Хорошая отчётность показывает одновременно ROI, период, benchmark, liquidity и risk. Тогда процент перестаёт быть рекламной цифрой и становится инструментом управления капиталом.

Если задача — не просто измерить прошлый результат, а построить инвестиционный процесс, используйте материал OneMagic об инвестициях в криптовалюту: сначала определяются цель, горизонт и риск, затем размер позиции и только после этого оценивается фактический ROI.

Кейс: покупка в три этапа и частичная фиксация

Инвестор вносит 100 000 рублей, через месяц добавляет 50 000, ещё через два месяца продаёт часть позиции и получает 40 000. К дате отчёта остаток можно реализовать за 145 000 после комиссий. Простая экономическая прибыль равна 35 000: 40 000 + 145 000 − 150 000. На общую сумму contributions простой ROI около 23,3%. Но этот процент не учитывает, что вторые 50 000 находились в рынке меньше времени, поэтому для годизированного личного результата полезнее XIRR.

Если инвестор ошибочно возьмёт только первоначальные 100 000 в знаменатель, он получит завышенный ROI. Если забудет частичную продажу 40 000 и посмотрит только на остаток 145 000, результат тоже будет искажён. Полный cash-flow журнал устраняет обе ошибки.

Кейс: staking rate 15%, но капитал потерял стоимость

Начальная позиция стоит 300 000 рублей. За год количество токенов увеличивается на 15%, но рыночная цена снижается на 35%. Без точной арифметики пользователь может сказать: «я заработал 15% стейкингом и потерял 35% по цене, значит итог −20%». Это неточно, потому что price change применяется к увеличившемуся количеству. Упрощённо 1,15 × 0,65 = 0,7475 от исходной стоимости, то есть итоговый ROI около −25,25% до расходов.

Пример показывает, почему складывать проценты разных компонентов опасно. Правильнее сначала получить итоговую денежную стоимость, а уже затем рассчитать ROI.

Кейс: LP получил много fees и всё равно проиграл hold

Пользователь внёс два актива общей стоимостью 10 000 долларов. Через шесть месяцев LP-позиция вместе с комиссиями стоит 13 000 — ROI +30%. Но если бы те же исходные активы просто хранились, они стоили бы 15 000. Значит, стратегия дала положительный абсолютный результат и одновременно отстала от hold на 2000 долларов. Без benchmark пользователь увидел бы только успех.

Если LP потребовал десятки транзакций ребалансировки, фактический разрыв может стать ещё больше. Поэтому ROI стратегии и relative return против benchmark должны находиться рядом.

Кейс: экран показывает +400%, но ликвидность не позволяет выйти

В кошельке 1 млн токенов, последняя цена 0,50 доллара. Интерфейс оценивает позицию в 500 000 долларов и показывает огромный ROI. Но в пуле доступная глубина такова, что продажа всего объёма даст лишь 120 000 после price impact. Для portfolio accounting консервативная liquid value ближе к 120 000, а не к 500 000.

Можно хранить две оценки: mark-to-market по последней цене и liquidation value. Для управления риском вторая важнее.

Кейс: airdrop не имеет обычного ROI

Пользователь получил airdrop без покупки и потратил 20 долларов gas на claim. Токены можно продать за 2000 долларов. Формально denominator, равный нулю, делает обычный ROI неинформативным. Если использовать только gas как инвестиционную базу, получится огромный процент, но он описывает эффективность расхода на claim, а не инвестиционную доходность токена.

Корректнее показать gross value 2000, claim cost 20 и net value 1980. После того как пользователь решил продолжить держать актив, можно зафиксировать новую management base и считать дальнейшую доходность от этой стоимости.

Кейс: два портфеля с одинаковым ROI и разным риском

Портфель A за год вырос со 100 000 до 130 000 и в худший момент снижался до 92 000. Портфель B также закончил на 130 000, но в середине года падал до 25 000. Финальный ROI обоих +30%, однако капитал и психологические требования радикально различаются. Инвестор B должен был выдержать drawdown −75%.

Если стратегия требует риск, который пользователь не способен выдержать, высокий финальный ROI не делает её подходящей.

Кейс: сравнение ROI и CAGR

Инвестиция выросла со 100 000 до 180 000 за четыре года. Общий ROI +80%. Делить 80 на четыре и получать 20% годовых неверно. CAGR равен примерно 15,8%: это такой постоянный сложный годовой темп, который превратил бы 100 000 в 180 000 за четыре года.

CAGR не показывает волатильность, но позволяет честнее сравнить эту инвестицию с другой, которая дала 40% за один год.

Что показывает схемаДля сравнения добавьте время, риск, drawdown и ликвидность.
Что запомнитьROI — одна метрика результата, а не полноценная оценка качества инвестиционного решения.

Кейс: комиссии превращают рабочую стратегию в убыточную

Стратегия совершает 100 операций за год и до расходов зарабатывает 0,3% на каждую успешную итерацию. Если совокупные transaction costs, slippage и gas составляют 0,35% на итерацию, математическое преимущество исчезает. Dashboard может показывать положительный gross PnL, а net ROI будет отрицательным.

Поэтому backtest и отчёт должны использовать net execution assumptions. В криптовалюте расходы часто зависят от нагрузки сети и размера сделки, то есть они не постоянны.

Кейс: benchmark вырос быстрее самой стратегии

Инвестор активно управлял позицией, получал staking rewards и несколько раз ребалансировал. За год portfolio ROI составил +42%. Базовый актив за тот же период вырос на 60%. Active return = −18 процентных пунктов. Стратегия заработала деньги, но активность снизила результат относительно простого hold.

Такой анализ полезен, потому что позволяет оценить стоимость сложности. Если дополнительный риск и время не добавляют return, процесс стоит упростить.

Расширенная формула ROI для портфеля с выводами и остатком

Для портфеля, где были частичные продажи, удобно сначала считать total ending wealth: сумма всех внешних выводов за период плюс текущая ликвидная стоимость остатка. Затем из total ending wealth вычитают все внешние contributions и прямые расходы. Полученная прибыль делится на contributions, если denominator остаётся экономически осмысленным. Такая схема лучше, чем попытка считать доходность только по текущему балансу кошелька, потому что уже выведенный капитал остаётся частью результата.

Например, инвестор внёс 400 000 рублей, затем получил 120 000 частичными выводами, а остаток портфеля сейчас стоит 390 000 после консервативной оценки выхода. Total ending wealth = 510 000. Простая прибыль = 110 000, ROI около 27,5% до учёта дополнительных расходов. Если комиссии составили 10 000, чистая прибыль уменьшается до 100 000, а ROI — до 25%.

Как считать ROI, если базовая валюта сама волатильна

Некоторые инвесторы измеряют результат в BTC или ETH, потому что их цель — увеличить количество базового криптоактива. В таком случае рублёвый рост не обязательно означает успех. Если портфель вырос с 1 млн до 1,5 млн рублей, но стоимость одного BTC за это время удвоилась, BTC-relative return может быть отрицательным. Портфель стал дороже в рублях и одновременно позволял купить меньше BTC.

Поэтому полезно вести две колонки: absolute fiat ROI и relative crypto ROI. Первая отвечает за покупательную способность в выбранной фиатной валюте, вторая — за эффективность относительно стратегического benchmark. Это особенно важно для активного управления альткоинами, где главная проверка состоит в том, добавила ли сложность больше BTC или ETH, чем простое хранение базового актива.

Как отделить инвестиционный ROI от операционного дохода

Если пользователь получает криптовалюту за работу, майнинг, валидаторскую деятельность или предоставление инфраструктуры, часть результата возникает не из инвестирования капитала, а из труда, оборудования или операционных расходов. Смешивать всё в один ROI нежелательно. Например, доход майнера нужно сравнивать не только с ценой оборудования, но и с электричеством, ремонтом, временем простоя и остаточной стоимостью техники.

Для чистоты аналитики разделяйте capital return и operating income. Capital return показывает, что произошло с вложенным активом; operating income — сколько заработано за оказанную услугу или инфраструктурную функцию. Если их объединить, стратегия может казаться чрезвычайно прибыльной, хотя значительная часть результата фактически оплачивает труд и амортизацию.

ROI токена проекта и ROI участия в проекте — разные вещи

Основатель или ранний участник может получить токены по низкой стоимости, но одновременно вложить годы работы, юридические расходы, разработку и маркетинг. ROI токен-позиции, рассчитанный только от цены приобретения, не описывает общую экономику проекта. Для предпринимательского решения нужно включать все реальные денежные и неденежные затраты, которые имеют измеримую стоимость.

То же касается пользователей, которые выполняют тестнеты, кампании активности или сложные задания ради будущих наград. Если потрачены сотни часов и комиссии, нулевая цена получения токена не означает нулевую стоимость. Для практического учёта можно отдельно считать cash ROI и economic ROI с оценкой времени.

Как считать ROI стратегии с регулярными ребалансировками

Ребалансировка продаёт часть выросших активов и докупает отставшие. Из-за этого cost basis постоянно меняется, а простой ROI каждой отдельной монеты уже не объясняет результат портфеля. Лучше считать доходность на уровне всего портфеля между датами внешних cash flow, а внутри использовать attribution: сколько результата дали market exposure, выбор активов, ребалансировка и комиссии.

Если ребалансировка происходила без внешнего внесения или вывода денег, она не должна менять denominator portfolio ROI. Это внутреннее перераспределение капитала. Комиссии и slippage при этом уменьшают portfolio value и автоматически ухудшают return. Такая методика не даёт двойного счёта, когда одна продажа ошибочно записывается как внешний доход, а следующая покупка — как новое вложение.

ROI и ребалансировка после сильного роста

Представим портфель 50/50 из двух активов. Первый вырос в три раза, второй не изменился. Без ребалансировки вес первого стал значительно больше. Если инвестор продаёт часть первого и возвращает структуру к 50/50, он фиксирует часть прибыли и снижает концентрацию. Будущий ROI может стать ниже, если первый актив продолжит рост, и выше, если он затем упадёт.

Поэтому оценивать качество ребалансировки только по одному следующему периоду неправильно. Нужно сравнивать её с заранее заданной risk policy: задача может состоять не в максимизации абсолютного ROI, а в ограничении концентрации и drawdown.

Как сравнивать ROI портфелей разного размера

Процент ROI нормализует размер капитала, но ликвидность нарушает полную сопоставимость. Стратегия, которая даёт 50% на капитале 1 000 долларов, может невозможно масштабировать до 1 млн без роста slippage. Поэтому профессиональная оценка добавляет capacity: сколько капитала стратегия может принять до заметного ухудшения execution.

Если увеличение позиции в десять раз снижает ожидаемый net ROI с 30% до 8%, нельзя считать исторические 30% масштабируемой характеристикой. Для DeFi capacity зависит от TVL, активной ликвидности, глубины пула, borrow utilization и скорости изменения рынка.

ROI и риск смарт-контракта

Стратегия может месяцами показывать стабильный ROI +1% в месяц, а затем потерять большую часть капитала из-за ошибки контракта. Историческая волатильность такого ряда будет выглядеть низкой до инцидента. Это пример tail risk, который плохо отражается стандартными метриками доходности.

Поэтому для on-chain стратегии ROI нужно дополнить архитектурным риском: audits, admin keys, upgradeability, oracle dependency, bridge exposure, emergency pause и концентрация протокольных ролей. Высокий ожидаемый ROI может быть компенсацией за риск редкого, но тяжёлого события.

ROI и риск контрагента

Если актив передан третьей стороне, появляется риск, что обязательство не будет исполнено. Процентная ставка может быть высокой именно потому, что рынок требует премию за кредитный риск. Нельзя сравнивать такой ROI с self-custody стратегией, где нет того же контрагента, как будто это одинаковые продукты.

Практический отчёт должен указывать не только доход, но и максимальную сумму, которую можно потерять при дефолте контрагента. Если потенциальный убыток 100%, дополнительные несколько процентных пунктов yield могут не компенсировать риск.

ROI и риск depeg

Для позиции в стейблкоине многие считают ценовой компонент нулевым и смотрят только на процент. Но при depeg итоговая стоимость может быстро измениться. Если токен приносил 12% годовых, а затем потерял 20% к целевой валюте, фактический ROI может стать отрицательным.

Поэтому stablecoin ROI нужно считать в целевой валюте с текущей реальной ценой, а не автоматически приравнивать один токен к одному доллару. Если redemption ограничен, используйте рыночную цену и стоимость выхода.

ROI и диверсификация источников дохода

Если портфель получает доход из staking, lending, LP fees и роста цены, полезно строить attribution. Например, общий ROI +24% может состоять из +18% price return, +5% staking reward и +1% net DeFi income после расходов. Такая разбивка помогает понять, какие источники устойчивы и какие зависят от рыночного роста.

Если почти весь результат создаётся повышением цены, стратегия «пассивного дохода» на самом деле мало добавила к hold. Если fees и rewards дали значимую долю при стабильной цене, стратегия имеет более самостоятельную экономику.

ROI и cash drag

Портфель может держать значительную долю капитала в резерве. Это снижает волатильность, но в период сильного роста уменьшает portfolio ROI относительно полностью инвестированного benchmark. Называть резерв «неэффективным» только по итогам бычьего периода неправильно: его функция — ликвидность и снижение риска.

При сравнении стратегий нужно учитывать policy. Портфель с обязательным резервом 30% нельзя напрямую сравнивать с портфелем, который всегда инвестирован на 100%, без поправки на риск и доступную ликвидность.

Как измерять ROI после перевода между собственными кошельками

Перевод между своими адресами не является инвестицией или выводом, потому что экономический владелец не изменился. Если записать исходящую транзакцию как withdrawal, а входящую как contribution, portfolio cash flow будет искусственно раздут. Внешним потоком считается только передача капитала между портфелем и внешним миром.

Сетевая комиссия при таком переводе, наоборот, является реальным расходом. Она уменьшает количество активов и должна отражаться в portfolio return. Это простое правило особенно важно для пользователей с десятками адресов и несколькими сетями.

Как считать ROI после bridge

Bridge между собственными адресами тоже является внутренним перемещением. Сам transferred principal не меняет invested capital. Но bridge fee, gas, возможный haircut representation и потери из-за price impact являются расходами. Если на другой стороне получен wrapped asset, его стоимость оценивается по реальному рынку.

Если bridge задержал средства на длительное время, opportunity cost можно показывать отдельно, но не нужно придумывать фиктивный денежный расход. Достаточно отметить период недоступности и сравнить фактический return с benchmark.

Как считать ROI при займе под криптозалог

Если пользователь закладывает актив и получает заём, borrowed funds не являются прибылью. Это обязательство, которое нужно вернуть. Ошибка возникает, когда человек видит выросший cash balance и считает его частью ROI, забывая долг. Net equity = стоимость активов минус обязательства.

Для leveraged portfolio ROI нужно считать по equity, одновременно показывая debt, interest expense и liquidation risk. Рост gross assets на 20% не равен росту собственного капитала на 20%, если позиция финансируется заёмными средствами.

Как считать ROI после погашения займа

Погашение principal — не инвестиционный убыток: это возврат ранее полученного обязательства. Interest и fees — расходы. Если пользователь записывает всю сумму погашения как расход текущего периода, ROI будет искусственно занижен.

Хороший журнал разделяет principal, interest и collateral. Это позволяет видеть реальную стоимость leverage и не смешивать движение баланса с финансовым результатом.

ROI и funding income

В некоторых стратегиях инвестор получает или платит периодические funding payments. Они являются частью PnL стратегии и должны входить в ROI. Но funding rate меняется и может менять знак, поэтому нельзя экстраполировать текущую ставку на год.

Если стратегия зависит от funding, отдельно показывайте gross funding income, execution costs, hedge slippage и basis movement. Только net result сравнивается с вложенным капиталом.

ROI и доходность NFT или неликвидных активов

Для уникального актива может не существовать надёжной текущей цены. Последняя продажа похожего объекта не равна цене вашего объекта. Поэтому нереализованный ROI имеет широкий диапазон неопределённости. Консервативный подход — использовать floor только для действительно сопоставимой коллекции и учитывать комиссии продажи.

Если ликвидность почти отсутствует, лучше показывать cost basis и последнюю подтверждённую market evidence отдельно, а не превращать оценку в точный процент.

ROI и стоимость времени

Две стратегии могут дать одинаковые 15%, но первая требует десять минут в месяц, а вторая — ежедневный мониторинг, ручные транзакции и анализ. Для частного пользователя время имеет альтернативную стоимость. Финансовый ROI не обязан включать её, но decision ROI желательно дополнить оценкой часов.

Если после пересчёта дохода на затраченное время стратегия уступает обычной профессиональной работе или более пассивному подходу, её привлекательность снижается.

ROI и ошибка результата задним числом

После сильного роста легко найти момент, когда «надо было купить», и посчитать огромный hypothetical ROI. Такой показатель не имеет отношения к реальной стратегии, если правило входа не было определено заранее. Backtest должен использовать данные и решения, которые были доступны в тот момент.

Look-ahead bias особенно опасен при подборе токенов, фильтров и дат. Чем больше вариантов перебиралось после события, тем выше вероятность получить случайно красивую историю.

ROI и качество данных

Даже идеальная формула бесполезна, если операции импортированы с ошибками. Частые проблемы: дубли транзакций, неверные decimals токена, неправильный курс фиатной валюты, пропущенный gas, неверная классификация внутреннего перевода и отсутствие токенов после миграции.

Перед расчётом крупных периодов полезно сверить начало и конец каждого кошелька: opening balance + inflows − outflows + adjustments должно согласовываться с closing balance. Несовпадение означает, что данные требуют очистки.

Как вести минимальный журнал ROI

Минимальная таблица содержит timestamp, network, asset, transaction type, quantity, fiat value, fee, external/internal flag и note. Из неё можно восстановить contributions, withdrawals, cost basis и расходы. Для DeFi добавьте protocol и position ID.

Чем раньше начинается такой журнал, тем меньше ручной реконструкции потребуется через год. Сохранение TxID позволяет проверить спорную операцию независимо от интерфейса кошелька.

Как часто пересчитывать ROI

Для долгосрочного инвестора ежедневный пересчёт может создавать шум и провоцировать лишние решения. Ежемесячный или квартальный отчёт часто полезнее. Для активной стратегии период может быть короче, но правила должны быть постоянными.

Важно не менять методику вслед за результатом. Если в одном месяце используется last price, а в другом liquidation value, временной ряд становится несопоставимым.

Дополнительный контроль: ROI по кварталам, а не только с начала года

Один итоговый процент за год скрывает смену режима. Портфель мог дать +40% в первом квартале, −25% во втором, +5% в третьем и почти не измениться в четвёртом. Если смотреть только итог, невозможно понять, когда стратегия работала и при каких условиях ломалась. Квартальная декомпозиция помогает связать результат с волатильностью, изменением ликвидности, ребалансировками и рыночным режимом.

При этом квартальные ROI нельзя просто складывать. Последовательные доходности соединяются геометрически: (1+r1) × (1+r2) × … − 1. Это важно, потому что +50% и затем −50% дают не ноль, а −25% от исходного капитала.

Почему +100% и −50% не компенсируют друг друга

Асимметрия процентов — базовая причина, почему восстановление после просадки становится всё сложнее. Если капитал упал со 100 до 50, убыток составляет −50%. Чтобы вернуться со 50 к 100, нужен рост +100%. После просадки −80% требуется +400% до первоначального уровня. Поэтому maximum drawdown критичен для оценки качества стратегии.

Высокий средний ROI по удачным периодам не спасает модель, если редкие глубокие потери уничтожают капитал. Инвестору важна геометрия compounding: сохранение базы иногда ценнее максимизации дохода в одном периоде.

Как учитывать реинвестирование полученной прибыли

Если прибыль выводится, она больше не участвует в дальнейшей капитализации. Если остаётся в стратегии, future returns применяются к большему капиталу. Поэтому два пользователя с одинаковыми ставками могут получить разный cumulative ROI из-за разной политики reinvestment. Историю нужно считать по фактическим cash flows, а не по предположению, что всё всегда реинвестировалось.

Для сравнения стратегии с APY отдельно фиксируйте, какой compound действительно происходил. Если rewards лежали без работы, advertised compound assumption не выполнялся. Если reinvestment требовал расходов, вычитайте их.

Как считать ROI стратегии после смены правил

Протокол может изменить комиссии, reward emissions, collateral factors или порядок распределения дохода. После такого события исторический ROI становится статистикой старого режима. Полезно разделить временной ряд на policy regimes и считать return отдельно до и после изменения.

Это защищает от ложной экстраполяции. Стратегия могла давать 25% годовых при щедрых субсидиях и только 6% после сокращения incentives. Среднее за весь период скроет текущую экономику.

Когда простой ROI всё же лучший показатель

Сложные метрики не нужны для каждой сделки. Если была одна покупка, одна продажа, небольшой период и нет промежуточных cash flows, обычный ROI остаётся самым понятным и проверяемым показателем. Ошибка — усложнять отчёт ради вида и терять связь с реальными деньгами.

Хорошая система использует минимально достаточную метрику: простой ROI для простой сделки, CAGR для длинного фиксированного периода, XIRR для нерегулярных потоков, TWR для оценки стратегии независимо от действий клиента.

Финальная проверка отчёта перед выводом о доходности

Перед тем как назвать итоговый процент, полезно пройти короткую сверку. Совпадает ли сумма внешних пополнений с банковскими и on-chain записями? Все ли частичные выводы учтены? Не попал ли перевод между своими кошельками одновременно в contribution и withdrawal? Все ли комиссии записаны в той же базовой валюте? Не используется ли текущая котировка там, где позицию нельзя реализовать без большого price impact? Такая проверка часто меняет результат сильнее, чем выбор сложной математической формулы.

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

ROI должен помогать принимать решение, а не украшать отчёт

Метрика полезна только тогда, когда после неё можно сделать действие. Если net ROI стратегии стабильно ниже benchmark после расходов, есть основание упростить подход. Если высокий ROI сопровождается неприемлемым drawdown, нужно уменьшить размер позиции. Если основная часть прибыли создаётся временным incentive, следует моделировать доходность после его окончания. Если результат хорош только до учёта gas, стратегия требует другого капитала или другой частоты операций.

Такой подход превращает ROI из ретроспективной цифры в инструмент управления. Цель не в том, чтобы каждый месяц показывать максимальный процент, а в том, чтобы последовательно понимать, какой риск, капитал, время и инфраструктура создали полученный результат.

Что хранить вместе с итоговым ROI

Минимальный архив отчёта должен содержать дату расчёта, базовую валюту, список используемых кошельков, opening value, contributions, withdrawals, closing liquid value, fees, benchmark и методику оценки неликвидных активов. Для сложных стратегий добавьте protocol version и параметры позиции. Тогда через полгода можно воспроизвести расчёт и понять, почему цифра изменилась.

Если методика документирована, новый период можно сравнить со старым без подгонки. Это особенно важно для сайта, инвестиционного дневника или семейного учёта, где разные люди должны одинаково понимать, что означает показатель ROI.

Почему 8 000 слов не заменяют точность расчёта

Подробный материал полезен только при сохранении одной логики на всех примерах. Поэтому в практической работе сначала фиксируют формулу и определения, а затем расширяют анализ. Если в одном разделе ROI считается до комиссий, в другом после комиссий, а в третьем denominator внезапно меняется с invested capital на margin, итоговая статья создаёт больше путаницы, чем пользы. В этой методике базовый принцип остаётся неизменным: сначала реальный денежный результат, затем подходящая база капитала и только после этого процент.

То же относится к данным из интерфейсов. Разные сервисы способны использовать собственные определения PnL, ROI и yield. Пользователь должен уметь воспроизвести результат самостоятельно из cash flows и текущей стоимости. Если процент невозможно пересчитать из исходных данных, его нельзя считать надёжной основой для инвестиционного решения.

Окончательная формула здравого смысла

Для большинства частных инвесторов достаточно помнить последовательность: сколько денег реально внесено; сколько уже выведено; сколько можно получить за остаток после расходов; сколько времени капитал находился в работе; какой риск пришлось выдержать; что дал простой benchmark. Эти шесть вопросов охватывают большую часть ошибок, которые не исправит ни один красивый дашборд.

ROI становится сильной метрикой именно тогда, когда перестаёт быть одинокой цифрой. В связке с периодом, benchmark, drawdown, liquidity и attribution он показывает не только размер результата, но и его качество. Это и есть задача инвестиционной отчётности: не доказать, что прошлое решение было правильным, а улучшить следующее решение.

Поэтому итоговый отчёт всегда должен позволять независимо проверить исходные суммы, период, расходы, остаток капитала и выбранную формулу.