Перейти к содержимому

Как вы зарабатываете

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

Каждая константа на этой странице читается из crates/rewards в openfiat-core. Ни один узел ещё не получал выплат.

Что определяет вашу долю

Эмиссия за эпоху фиксирована. Ваше вознаграждение — ваш вес относительно веса каждого подходящего узла, а вес — это стейк, умноженный на три измерения сервиса, каждое не выше 1,0.

share = emission × (stake × connectivity × availability × pinning) ÷ Σ (the same, for every eligible node)

effective_stake

Сколько вы застейкали

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

connectivity_bps

Строите ли вы мост к Solana

1,0, если сеть видела, что ваш узел порождает анонс blockhash от Solana, и 0,4, если видела только, как он распространяет его через gossip. Узел-мост выполняет строго больше работы, и разница видна в его собственных подписанных анонсах, а не в заявлении.

availability_bps

Какую часть суток вы были в сети

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

pinning_bps

Раздаёте ли вы контент

1,0, если ваш узел вернул байты, соответствующие адресу контента, когда ему бросили вызов, и 0,7, если ему не бросали вызов или он не справился. Это единственное из трёх, что доказано, а не правдоподобно, — байты, которые сворачиваются в CID, нельзя выдать, не владея ими.

Оговорка об этом четвёртом множителе. Подтверждённая таблица в OFS-4100 §9.2 перечисляет три фактора — стейк, связность, доступность — и не упоминает пиннинг. Крейт всё равно его применяет. Там, где спецификация и код расходятся, эта страница следует коду, потому что именно код рассчитывал бы график; но читайте множитель пиннинга как нечто, опережающее спецификацию, а не определённое ею.

Ничто здесь не может превысить 1,0

Каждый множитель — доля единицы, и программа отказывается запускаться с набором параметров, где какой-то из них таковым не является.

Это не осторожность, это единственная схема, которая сходится. Пул эпохи — фиксированное число токенов, а множители решают, как этот пул делится. Множитель выше 1,0 не переплатит хорошему узлу откуда-то со стороны — он раздал бы токены, которых нет в ведре инфраструктуры. RewardParams::validate отвергает такой набор сразу, а не даёт дефициту всплыть в день выплаты.

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

Все значения, которые могут принять два ключа, при полной доступности.
СвязностьКонтентМножитель
Мост к SolanaОтветил на вызов1.00
Мост к SolanaВызова не было или не справился0.70
Только gossipОтветил на вызов0.40
Только gossipВызова не было или не справился0.28

Читайте две центральные строки вместе: узел только с gossip, раздающий контент (0.40), всё равно зарабатывает меньше, чем узел-мост, не раздающий ничего (0.70). Раздача контента — премия поверх подключения к цепочке, а не его замена.

Подставьте свои числа

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

Ваш узел

10,000 OPEN

Ниже 1000 OPEN узел вообще не взвешивается. Ему не платят уменьшенную долю — его игнорируют.

24 / 24

Из 24 часовых интервалов эпохи. Интервал засчитывается один раз, сколько бы трафика вы ни отправили в течение него.

Связность
Контент

Определяется вашими входными данными

1.00из возможных 1,00

Ваш множитель качества — три фактора сервиса, соединённые так, как их соединяет график.

связность
1.00
доступность
1.00
пиннинг
1.00
качество
1.00

Зависит от остальной сети

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

250
5,000 OPEN
1.1%
Ваша доля пула эпохи
928.72
OPEN за эпоху при этом допущении

Весь пул — 82,192 OPEN за эпоху, делённый между каждым подходящим узлом. Оба числа сдвигаются в тот же миг, как кто-то ещё стейкает, и ни одно не является прогнозом.

Пул конечен

Эмиссия начального периода — это ведро, а не ставка. Оно пустеет.

120 000 000 OPEN — 12% предложения — зарезервированы, чтобы платить узлам, пока доход протокола слишком мал, чтобы иметь значение, и распределены поровну примерно на четыре года ежедневных эпох. В день, когда оно опустеет, пул вознаграждений становится ровно долей казначейства инфраструктуры от расчётных комиссий: тем, что сеть заработала, и ничем больше. Тот, кто рассчитывает узел по числам выше, должен рассчитать его и на этот день.

120,000,000
OPEN в ведре

Начальное распределение «Инфраструктура / бутстрап узлов», 12% всего предложения.

82,192
OPEN за эпоху

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

1,460
Ежедневных эпох

Около четырёх лет, после чего эмиссия — это то, что финансирует доход протокола.

Чего эта страница вам не скажет

Трёх чисел не хватает, и каждого не хватает намеренно.

  • Сколько это стоит в вашей валюте

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

  • Доходность, APR или прибыль

    Процентная доходность звучит как обещание, а это не то, что протокол может обещать. Эмиссия за этим пустеет за четыре года, доля делится с каждым входящим узлом, и ни один из параметров не зафиксирован — §9 делает их все обновляемыми через управление. Единственное годовое число скрыло бы все три вещи.

  • Сколько сеть застейкала сегодня

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

Что на самом деле работает

Devnet · ничего не выплачено

Расчёт есть. Выплаты — нет.

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

Каждое значение здесь — параметр управления, а не константа: порог в 1,000 OPEN, 24 интервалов доступности и четыре множителя можно изменить голосованием без правки кода. Это сегодняшние значения по умолчанию.

Константы читаются из crates/rewards/src/params.rs; арифметика повторяет schedule.rs, включая места, где она округляет вниз.

Запустите узел и узнайте

Модель вознаграждений — меньшая половина решения. Бо́льшая — стоят ли машина, канал и внимание того для вас: в руководстве оператора есть реальное оборудование, реальные команды и части, которые ещё не построены.