Math

分配係數

  • October 20, 2021

我正在建構一個 dapp,我需要一些幫助來創建“分佈係數/指數”的公式(我的數學已經生鏽了)。其背後的想法是:

  1. 有一個總餘額。我們稱它為“X”。
  2. 在“X”上有不同份額的使用者:A、B、C 和 D(使用者)。
  3. 每個使用者都有一個百分比分配,具體取決於他們在“X”上的風險。比方說:
  • A –> 10 個單位 –> 10%
  • B –> 20 個單位 –> 20%
  • C –> 30 個單位 –> 30%
  • D –> 40 個單位 –> 40%
  • X = 100 個單位 —> 100%

我需要一個能夠確定每個使用者的新分配百分比的係數(我們稱之為“Y”),一旦他們中的任何一個向“X”(以及他們的份額)添加了更多單位,以及計算這個係數的公式。它會是這樣的:

  • A –> 30 (10 [ oldUnits] + 20 [ newUnits]) –> Y –> 25%
  • B –> 20 –> Y –> 16.66%
  • C –> 30 –> Y –> 25%
  • D –> 40 –> Y –> 33.33%

限制/約束/要求是:

  1. 我(我的應用程序)可以自由修改的唯一參數是“Y”。
  2. 使用者負責修改自己的“單位”權益。
  3. 分配百分比是“單位”與“Y”——也許還有“X”(?)——相互作用的結果,當所有使用者的分配百分比相加時,它必須返回 100%。

我沒有高級數學背景(我的這是生意),所以請放輕鬆。

我知道 Maker 和 Aave 對這些原則有自己的實現,但他們的更複雜,因為涉及更多的變數,而且我的數學水平不允許我理解他們公式背後的複雜性。因此,這篇文章的原因。:)

非常感謝!

將 Y 設置為 (1/X)。X 是所有質押單位的總和(第一個範例中為 100,第二個範例中為 120)。

如果你將每個使用者的股份除以質押的總金額,你就得到了使用者在包中的百分比。

引用自:https://ethereum.stackexchange.com/questions/111853