waves_logo Docs
  • Почему Waves
    Почему Waves
  • Основные понятия
    Основные понятия
  • Аккаунт
    • Создание аккаунта
      Создание аккаунта
    • Адрес
      Адрес
    • Баланс аккаунта
      Баланс аккаунта
    • Хранилище данных аккаунта
      Хранилище данных аккаунта
    • Псевдоним
      Псевдоним
    • dApp и смарт-аккаунт
      dApp и смарт-аккаунт
    Аккаунт
  • Токен (ассет)
    • NFT: невзаимозаменяемый токен
      NFT: невзаимозаменяемый токен
    • Смарт-ассет
      Смарт-ассет
    • ID токена
      ID токена
    • WAVES
      WAVES
    Токен (ассет)
  • Транзакция
    • Комиссия за транзакцию
      • Спонсирование комиссии
        Спонсирование комиссии
      Комиссия за транзакцию
    • Подпись и подтверждения
      Подпись и подтверждения
    • Типы транзакций
      • Вызов скрипта
        Вызов скрипта
      • Выпуск
        Выпуск
      • Генезис
        Генезис
      • Данные
        Данные
      • Довыпуск
        Довыпуск
      • Закрытие лизинга
        Закрытие лизинга
      • Лизинг
        Лизинг
      • Массовый перевод
        Массовый перевод
      • Обмен
        • Ордер
          Ордер
        Обмен
      • Обновление информации ассета
        Обновление информации ассета
      • Перевод
        Перевод
      • Сжигание токена
        Сжигание токена
      • Cоздание псевдонима
        Cоздание псевдонима
      • Спонсирование
        Спонсирование
      • Установка скрипта
        Установка скрипта
      • Установка скрипта ассета
        Установка скрипта ассета
      • Ethereum-like транзакция
        Ethereum-like транзакция
      Типы транзакций
    • Валидация транзакции
      Валидация транзакции
    Транзакция
  • Блок
    • Корневой хеш транзакций
      Корневой хеш транзакций
    • Блок генезиса
      Блок генезиса
    Блок
  • Нода
    • Лизинг
      Лизинг
    • Доход генератора блока
      Доход генератора блока
    • Монетарная политика
      Монетарная политика
    Нода
  • Mainnet, Testnet, Stagenet
    Mainnet, Testnet, Stagenet
  • Unit Zero
    Unit Zero
  • Оракул
    Оракул
  • Протоколы и форматы данных
    • [en] Cryptographic practical details
      [en] Cryptographic practical details
    • Leased Proof of Stake
      Leased Proof of Stake
    • [en] Waves-NG solution
      [en] Waves-NG solution
    • Протокол Waves-NG
      Протокол Waves-NG
    • Waves 1.5
      Waves 1.5
    • Типы данных блокчейна
      Типы данных блокчейна
    • Бинарные форматы
      • Бинарный формат адреса
        Бинарный формат адреса
      • Бинарный формат псевдонима
        Бинарный формат псевдонима
      • Бинарный формат блока
        Бинарный формат блока
      • [en] Network message binary format
        • [en] Block message binary format
          [en] Block message binary format
        • [en] Checkpoint message binary format
          [en] Checkpoint message binary format
        • [en] Get block message binary format
          [en] Get block message binary format
        • [en] Get peers message binary format
          [en] Get peers message binary format
        • [en] Get signatures message binary format
          [en] Get signatures message binary format
        • [en] Handshake message binary format
          [en] Handshake message binary format
        • [en] Peers message binary format
          [en] Peers message binary format
        • [en] Score message binary format
          [en] Score message binary format
        • [en] Signatures message binary format
          [en] Signatures message binary format
        • [en] Transaction message binary format
          [en] Transaction message binary format
        [en] Network message binary format
      • Бинарный формат ордера
        Бинарный формат ордера
      • Бинарный формат транзакции
        • Вызов скрипта
          Вызов скрипта
        • Выпуск
          Выпуск
        • Генезис
          Генезис
        • Данные
          Данные
        • Довыпуск
          Довыпуск
        • Лизинг
          Лизинг
        • Массовый перевод
          Массовый перевод
        • Обмен
          Обмен
        • Обновление информации ассета
          Обновление информации ассета
        • Отмена лизинга
          Отмена лизинга
        • Сжигание токена
          Сжигание токена
        • Cоздание псевдонима
          Cоздание псевдонима
        • Спонсирование
          Спонсирование
        • Перевод
          Перевод
        • Установка скрипта
          Установка скрипта
        • Установка скрипта ассета
          Установка скрипта ассета
        • Ethereum-like
          Ethereum-like
        Бинарный формат транзакции
      • Бинарный формат подтверждений
        Бинарный формат подтверждений
      Бинарные форматы
    • [en] Validation rules
      [en] Validation rules
    Протоколы и форматы данных
  • Термины
    Термины
      • English
      • Русский
      On this page
        • Вознаграждение за блок
        • Распределение вознаграждения
        • Основные принципы голосования
        • Текущий статус голосования
        • Как голосовать
        • Подсчет голосов
        • Пример
        • Голосование в период действия фичи № 23
      waves_logo Docs

          # Монетарная политика, управляемая сообществом

          # Вознаграждение за блок

          Вознаграждение за блок — это дополнительная эмиссия токена WAVES с появлением каждого нового блока на блокчейне. Вознаграждение распределяется между генератором блока, Waves DAO и смарт-контрактом для выкупа XTN.

          Текущий размер вознаграждения за блок — 6 WAVES. С момента активации фичи № 23 “Boost Block Reward” вознаграждение за блок будет увеличено до 60 WAVES (коэффициент ×10 действует 300 000 блоков на Mainnet, 2000 блоков на Testnet и Stagenet). Сообщество генераторов может изменить размер вознаграждения за блок посредством голосования.

          Вознаграждение за блок введено с момента активации фичи № 14 “Block Reward and Community Driven Monetary Policy”. Распределение вознаграждения введено с момента активации фичи № 19 “Block Reward Distribution” и скорректировано фичей № 20 “Capped XTN buy-back & DAO amounts”.

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

          До активации фичи № 23 “Boost Block Reward” и через 300 000 блоков после активации:

          • Если вознаграждение за блок более 6 WAVES, то Waves DAO и смарт-контракт для выкупа XTN получают по 2 WAVES, а генератор блока — остальное.
          • Если вознаграждение за блок — от 2 до 6 WAVES, то Waves DAO и смарт-контракт для выкупа XTN получают по (R - 2) / 2 (подразумевается целочисленное деление), где R — вознаграждение за блок.
          • Если вознаграждение за блок менее 2 WAVES, генератор блока получает вознаграждение за блок полностью.

          В диапазоне 300 000 блоков с момента активации фичи № 23 доля каждого участника рассчитывается как описано выше, а затем умножается на 10.

          Если будет активирована фича № 21 “Cease XTN buy-back” (но не ранее чем через 100 000 блоков после активации фичи № 19), начисление доли вознаграждения смарт-контракту для выкупа XTN будет прекращено. Его долю будет получать генератор блока.

          # Основные принципы голосования

          • Каждая генерирующая нода может голосовать за то, чтобы увеличить, уменьшить или оставить без изменения текущий размер вознаграждения.
          • Голосование длится 10 000 блоков.
          • В результате голосования вознаграждение может увеличиться или уменьшиться на 0,5 WAVES либо остаться прежним.
          • Выбранный размер вознаграждения остается неизменным на протяжении 50 000 блоков (около 35 дней), которые следуют за моментом окончания голосования. (До активации фичи № 20 этот период составлял 100 000 блоков.)
          • Последние 10 000 блоков из периода в 50 000 блоков проходит голосование для следующего периода.

          # Текущий статус голосования

          Посмотреть текущий статус голосования и размер вознаграждения можно с помощью запроса к Node REST API.

          Пример запроса:

          curl -X 'GET' \
            'http://nodes.wavesnodes.com/blockchain/rewards' \
            -H 'accept: application/json'
          

          Пример ответа:

          {
            "height": 3751610,
            "totalWavesAmount": 11206966600000000,
            "currentReward": 600000000,
            "minIncrement": 50000000,
            "term": 50000,
            "nextCheck": 3789999,
            "votingIntervalStart": 3780000,
            "votingInterval": 10000,
            "votingThreshold": 5001,
            "votes": {
              "increase": 0,
              "decrease": 0
            },
            "daoAddress": "3PEgG7eZHLFhcfsTSaYxgRhZsh4AxMvA4Ms",
            "xtnBuybackAddress": "3PFjHWuH6WXNJbwnfLHqNFBpwBS5dkYjTfv"
          }
          

          В примере выше значение JSON-поля currentReward равняется 600 000 000 WAVELET — то есть 6 WAVES.

          # Как голосовать

          Генерирующая нода указывает новый желаемый размер вознаграждения с помощью настройки waves.rewards.desired в файле конфигурации ноды. Значение настройки указывается в WAVELET.

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

          Когда нода генерирует блок, она записывает в него значение настройки waves.rewards.desired из своего файла конфигурации. Если значение настройки не задано в файле конфигурации, то в блок записывается -1.

          За время голосования в 10 000 блоков одна нода может сгенерировать несколько блоков — таким образом, одна нода может проголосовать несколько раз. Как часто нода генерирует блоки, определяется консенсусом LPoS.

          # Подсчет голосов

          Для подсчета голосов проверяются значения всех 10 000 блоков, которые были сгенерированы в период голосования.

          Если в блоке записана -1 или величина, которая совпадает с текущим размером вознаграждения, то генератор блока голосует за сохранение текущего размена вознаграждения.

          Если в блоке записано значение, которое больше текущего размера вознаграждения, то генератор голосует за увеличение вознаграждения; если меньше — за уменьшение.

          Вознаграждение за генерацию блока увеличивается/уменьшается, только если за увеличение/уменьшение отдано более половины голосов из 10 000 — то есть 5001 голос или более. Размер текущего вознаграждения увеличивается/уменьшается с шагом в 0,5 WAVES.

          # Пример

          На высоте блокчейна 3 751 610 размер вознаграждения за генерацию блока составляет 6 WAVES. На высоте 3 780 000 начинается очередное голосование.

          Предположим, в течение 10 000 блоков голосования 4500 голосов будет отдано за увеличение размера вознаграждения, 1500 — за уменьшение, 4000 — за то, чтобы размер вознаграждения остался прежним.

          В результате с высоты 3 790 000 по высоту 3 839 999 размер вознаграждения останется прежним — 6 WAVES. Несмотря на то что за увеличение вознаграждения отдано больше всего голосов, этого недостаточно для изменения текущего размера вознаграждения. Чтобы текущий размер был увеличен, за увеличение должно быть отдано не менее 5001 голоса.

          Следующее голосование будет проходить с высоты 3 830 000 по 3 839 999.

          # Голосование в период действия фичи № 23

          Фича № 23 не влияет на процедуру голосования. Коэффициент ×10 применяется только к итоговому вознаграждению за блок.

          Таким образом:

          • Генератор указывает желаемый размер вознаграждения до применения коэффициента ×10: например, 700 000 000, то есть 7 WAVES.
          • При подсчете голосов желаемый размер вознаграждения сравнивается с текущим размером до применения коэффициента, то есть 6 WAVES.
          • Если более половины голосов отдано за увеличение размера вознаграждения, текущий размер до применения коэффициента увеличивается на 0,5 WAVES, с 6 до 6,5 WAVES. Далее применяется коэффициент ×10, и на протяжении 50 000 блоков (но в пределах 300 000 блоков с момента активации фичи № 23) генератор блока, Waves DAO и смарт-контракт для выкупа XTN получают суммарно 65 WAVES за блок. (В случае уменьшения размера вознаграждения расчет аналогичный.)
          Доход генератора блока
          Mainnet, Testnet, Stagenet
          Доход генератора блока
          Mainnet, Testnet, Stagenet