Вознаграждение при делегировании: различия между версиями

Материал из Minter Wiki
Строка 1: Строка 1:
 
{{Страница редактируется}}
 
{{Страница редактируется}}
'''Вознаграждение при делегировании''' или ревард (англ. ''"reward"'') - это некая сумма в монете [[BIP]] которая зачисляется на адрес [[Делегатор]]а после того как он [[Делегирование | заделегировал]] свои средства [[Валидатору]]. Данное вознаграждение рассчитывается на каждом блоке после подписания, то есть приблизительно 1 раз в 5 секунд и начисляется на адрес Делегатора каждые 120 блоков, то есть примерно 1 раз в минуту.
+
'''Вознаграждение при делегировании''' или ревард (англ. ''"reward"'') - это некая сумма в монете [[BIP]] которая зачисляется на адрес [[Делегатор]]а после того как он [[Делегирование | заделегировал]] свои средства [[Валидатор]]у. Данное вознаграждение рассчитывается на каждом блоке после подписания, то есть приблизительно 1 раз в 5 секунд и начисляется на адрес Делегатора каждые 120 блоков, то есть примерно 1 раз в минуту.
  
 
== Расчет вознаграждения при делегировании ==
 
== Расчет вознаграждения при делегировании ==
Упрощенно можно сказать, что вознаграждение при делегировании - это [[Вознаграждение за блок]] разделенное на всех Делегаторов пропорционально их [[стейк]]ам. Такой расчет легко представить, если бы в сети Minter делегирование происходило бы только в нативном токене, как например в блокчейне Waves. Тогда бы формула (1) выглядела так:
+
Упрощенно можно сказать, что Вознаграждение при делегировании - это [[Вознаграждение за блок]] разделенное на всех Делегаторов пропорционально их [[стейк]]ам. Такой расчет легко представить, если бы в сети Minter делегирование происходило только в нативном токене BIP, как, например, в блокчейне Waves. Тогда бы формула (1) выглядела так:
  
 
'''Вознаграждение при делегировании за 1 BIP = Вознаграждение за блок / Общая сумма заделегированных средств в BIP'''
 
'''Вознаграждение при делегировании за 1 BIP = Вознаграждение за блок / Общая сумма заделегированных средств в BIP'''
Строка 26: Строка 26:
 
*Распределяем полученное количество BIP на делегаторов пропорционально их стейкам</blockquote>
 
*Распределяем полученное количество BIP на делегаторов пропорционально их стейкам</blockquote>
  
Формула расчета стоимости Кастомных монет при делегировании будет следующая:
+
Формула расчета стоимости Кастомных монет при делегировании будет следующая (формула 3):
  
 
'''PriceD =  (reserve * (1 - (1 - sellAmount / supply) ^ (100 / crr))) / sellAmount'''   
 
'''PriceD =  (reserve * (1 - (1 - sellAmount / supply) ^ (100 / crr))) / sellAmount'''   
Строка 35: Строка 35:
 
'''supply''' - объем монет в обращении;</br>
 
'''supply''' - объем монет в обращении;</br>
 
'''crr''' - CRR монеты
 
'''crr''' - CRR монеты
 +
 +
По этой формуле мы можем пересчитать параметр '''Общая сумма заделегированных средств в BIP'''. Мы берем все монеты BIP в делегировании и для каждой кастомной монеты, которая есть в делегировании пересчитываем ее стоимость и прибавляем к общей сумме:
 +
 +
'''Общая сумма заделегированных средств в BIP = Заделегированные BIP + PriceD<sub>i</sub> + PriceD<sub>i+1</sub> +...PriceD<sub>n</sub> ''', где:
 +
*Заделегированные BIP - общая сумма монет BIP в делегировании
 +
*PriceD - стоимость Кастомной монеты при делегировании в BIP
 +
*i - порядковый номер каждой Кастомной монеты
 +
*n - количество видов Кастомных монет участвующих в делегировании
 +
 +
Теперь нам осталось посчитать параметр '''Размер вложенных средств (в BIP)''', если пользователь делегировал в кастомной монете. Для этого мы должны посчитать какая доля нашей заделегированной монеты из Общего резерва монеты.
 +
 +
Сначала в системе выделяют общее количество заделегированной кастомной монеты и рассчитывают её резерв в BIP. Условно все кастомные монеты продаются и смотрят сколько BIP можно за них получить. Используется формула 3, только '''sellAmount''' будет равен нашему количеству заделегированных монет.
 +
 +
'''PriceD<sub>i</sub> =  (reserve<sub>i</sub> * (1 - (1 - sellAmount<sub>i</sub> / supply<sub>i</sub>) ^ (100 / crr<sub>i</sub>))) / sellAmount<sub>i</sub>''' , где i - показывает что расчет ведется для отдельной и конкретной Кастомной монеты
 +
 +
После этого высчитывается наша доля как отношение к количеству заделегированных монет
 +
 +
'''PriceD<sub>our share</sub> = PriceD<sub>i</sub> * sellAmount<sub>our share</sub> / sellAmount<sub>i</sub>, где
 +
*PriceD<sub>our share</sub> - наша доля в резерве заделегированных монет
 +
*sellAmount<sub>our share - количество наших заделегированных монет
 +
 +
Таким образом мы посчитали сколько стоит в BIP наши заделегированные монеты и можем посчитать какое мы получим вознаграждение с каждой Кастомной монеты которую мы заделегировали:
 +
 +
'''Вознаграждение при делегировании за конкретную кастомную монету = (Вознаграждение за блок / (Заделегированные BIP + PriceD<sub>i</sub> + PriceD<sub>i+1</sub> +...PriceD<sub>n</sub>)) * (PriceD<sub>i</sub> * sellAmount<sub>our share</sub> / sellAmount<sub>i</sub>)'''
 +
 +
После чего нам осталось высчитать вознаграждение по каждому отдельному стейку в отдельной кастомной монете и просуммировать их - так мы получим общую сумму вознаграждения при Делегировании.
 +
 +
=== Комиссия валидатора ===
 +
Не забываем, что каждый Валидатор удерживает комиссию за свои услуги. Поэтому в расчет следует добавлять ее и наше вознаграждение будет уменьшено.
 +
  
 
== Примечания ==
 
== Примечания ==
 
<references />
 
<references />

Версия 20:55, 14 сентября 2019

Minter Sticker 0.png
Страница редактируется!
Данная страница активно редактируется.
Просим Вас зайти немного позже и пока не вносить никаких изменений в текст во избежание конфликта правок.
Объявление размещено пользователем Master114.

Вознаграждение при делегировании или ревард (англ. "reward") - это некая сумма в монете BIP которая зачисляется на адрес Делегатора после того как он заделегировал свои средства Валидатору. Данное вознаграждение рассчитывается на каждом блоке после подписания, то есть приблизительно 1 раз в 5 секунд и начисляется на адрес Делегатора каждые 120 блоков, то есть примерно 1 раз в минуту.

Расчет вознаграждения при делегировании

Упрощенно можно сказать, что Вознаграждение при делегировании - это Вознаграждение за блок разделенное на всех Делегаторов пропорционально их стейкам. Такой расчет легко представить, если бы в сети Minter делегирование происходило только в нативном токене BIP, как, например, в блокчейне Waves. Тогда бы формула (1) выглядела так:

Вознаграждение при делегировании за 1 BIP = Вознаграждение за блок / Общая сумма заделегированных средств в BIP

и после этого каждому Делегатору начислялась бы следующая сумма (формула 2):

Вознаграждение при делегировании = Вознаграждение при делегировании за 1 BIP * Размер вложенных средств (в BIP)

Но в сети Minter делегировать можно любые кастомные монеты. Возникает проблема расчета параметров приведенных формул - Общая сумма заделегированных средств в BIP и Размер вложенных средств (в BIP). Самым очевидным решением кажется, что можно при расчете вознаграждения взять текущий курс каждой кастомной монеты, которая заделегирована и умножить его на количество заделегированых монет и мы получим так называемую Капитализацию.

Но Разработчики еще на стадии проектирования блокчейна Minter обозначили следующую проблему[1]:

Однако была проблема, которая возникла при делегировании пользовательских монет. Предположим, что есть монета А. Продажа 100 единиц приносит 10 BIP, но продажа 200 единиц принесет всего 15 BIP. Это происходит из-за плавающей цены каждой проданной монеты. Представим сценарий:

  • Пользователь создает 2 кошелька
  • С одного кошелька делегирует 100 монет
  • Со второго кошелька делегирует ту же сумму

Реальная стоимость 200 монет — 15 BIP. Однако стейки считаются отдельно, поэтому реальное количество делегированных монет будет 100 монет + 100 монет = 20 BIP. Выходит, что таким образом можно обмануть систему и делегировать больше монет, чем есть у пользователя.

Чтобы решить эту проблему, нам пришлось ввести следующий механизм:

  • Суммируем все делегированные монеты одного типа
  • Считаем, сколько принесет продажа всех стейков суммарно
  • Распределяем полученное количество BIP на делегаторов пропорционально их стейкам

Формула расчета стоимости Кастомных монет при делегировании будет следующая (формула 3):

PriceD = (reserve * (1 - (1 - sellAmount / supply) ^ (100 / crr))) / sellAmount

PriceD - стоимость Кастомной монеты при делегировании в BIP;
reserve - резерв для монеты в BIP;
sellAmount - количество продаваемых монет;
supply - объем монет в обращении;
crr - CRR монеты

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

Общая сумма заделегированных средств в BIP = Заделегированные BIP + PriceDi + PriceDi+1 +...PriceDn , где:

  • Заделегированные BIP - общая сумма монет BIP в делегировании
  • PriceD - стоимость Кастомной монеты при делегировании в BIP
  • i - порядковый номер каждой Кастомной монеты
  • n - количество видов Кастомных монет участвующих в делегировании

Теперь нам осталось посчитать параметр Размер вложенных средств (в BIP), если пользователь делегировал в кастомной монете. Для этого мы должны посчитать какая доля нашей заделегированной монеты из Общего резерва монеты.

Сначала в системе выделяют общее количество заделегированной кастомной монеты и рассчитывают её резерв в BIP. Условно все кастомные монеты продаются и смотрят сколько BIP можно за них получить. Используется формула 3, только sellAmount будет равен нашему количеству заделегированных монет.

PriceDi = (reservei * (1 - (1 - sellAmounti / supplyi) ^ (100 / crri))) / sellAmounti , где i - показывает что расчет ведется для отдельной и конкретной Кастомной монеты

После этого высчитывается наша доля как отношение к количеству заделегированных монет

PriceDour share = PriceDi * sellAmountour share / sellAmounti, где

  • PriceDour share - наша доля в резерве заделегированных монет
  • sellAmountour share - количество наших заделегированных монет

Таким образом мы посчитали сколько стоит в BIP наши заделегированные монеты и можем посчитать какое мы получим вознаграждение с каждой Кастомной монеты которую мы заделегировали:

Вознаграждение при делегировании за конкретную кастомную монету = (Вознаграждение за блок / (Заделегированные BIP + PriceDi + PriceDi+1 +...PriceDn)) * (PriceDi * sellAmountour share / sellAmounti)

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

Комиссия валидатора

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


Примечания