Expand description
Defines pluggable payout models for computing the total reward value from an input signal.
Payouts are abstracted as transformation models that convert an input quantity into a single distributable value.
§Concept
- A payout model determines how much total value should be generated.
- The computed payout acts as the source value for downstream distribution.
§In this model:
- Input is a scalar representing a measurable quantity.
- Output is a single payout value.
§Purpose
Payout models provide flexibility in defining reward generation:
- Control how total rewards are computed from inputs.
- Enable configurable reward policies.
- Serve as the first stage in reward distribution pipelines.
Structs§
- Constant
Payout - The ConstantPayout model returns a fixed reward value regardless of the provided input.
- Constant
Payout Config - Defines the configuration for the
ConstantPayoutmodel. - Curve
Params - Defines parameters for a logistic (sigmoid) curve used in piecewise reward modeling.
- ExpDecay
Payout - The ExpDecayPayout model computes rewards using a continuous exponential decay based on the input variable.
- ExpDecay
Payout Config - Defines the configuration for the
ExpDecayPayoutmodel. - Fixed
Annual Config - Defines the configuration for the
FixedAnnualPayoutmodel. - Fixed
Annual Payout - The FixedAnnualPayout model computes rewards using a per-period rate derived from an annual percentage rate (APR).
- Fixed
Rate Config - Defines the configuration for the
FixedRatePayoutmodel. - Fixed
Rate Payout - The FixedRatePayout model computes rewards using a fixed proportional rate, scaling linearly with the input asset.
- Halving
Payout - The HalvingPayout model computes rewards using a binary exponential decay based on the input interval.
- Halving
Payout Config - Defines the configuration for the
HalvingPayoutmodel. - Inflation
Payout - The InflationPayout model computes rewards as a fixed proportion of the input asset, based on a configured inflation rate.
- Inflation
Payout Config - Defines the configuration for the
InflationPayoutmodel. - Inverse
Proportional Config - Defines the configuration for the
InverseProportionalPayoutmodel. - Inverse
Proportional Payout - The InverseProportionalPayout model computes rewards using an inverse function of the input asset.
- Linear
Payout - The LinearPayout model computes rewards using a linear function of the input asset.
- Linear
Payout Config - Defines the configuration for the
LinearPayoutmodel. - Logarithmic
Config - Defines the configuration for the
LogarithmicPayoutmodel. - Logarithmic
Payout - The LogarithmicPayout model computes rewards using a logarithmic function, producing fast initial growth followed by diminishing returns.
- Piecewise
Config - Defines the configuration for the
PiecewisePayoutmodel. - Piecewise
Payout - The PiecewisePayout model computes rewards using a piecewise-defined function, selecting different behaviors depending on the input range.
- Quadratic
Payout - The QuadraticPayout model computes rewards using a quadratic function of the input asset.
- Quadratic
Payout Config - Defines the configuration for the
QuadraticPayoutmodel. - Sigmoid
Payout - The SigmoidPayout model computes rewards using a logistic (S-shaped) function, producing slow start, rapid growth, and eventual saturation.
- Sigmoid
Payout Config - Defines the configuration for the
SigmoidPayoutmodel. - Zero
Payout - A payout model that always returns zero.
Enums§
- Segment
- Defines a piecewise segment used in
PiecewisePayout.