> For the complete documentation index, see [llms.txt](https://docs.enzyme.finance/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.enzyme.finance/onyx-protocol/architecture/share-value.md).

# Share Value

## Core Concepts

The Onyx valuation system is designed to aggregate diverse **positions** into a single **value**.

### Positions

**Positions** are totally arbitrary and can be:

* on-chain (e.g., ERC20 tokens, NFT, RWA)
* off-chain (e.g., bank account balance, real estate appraisal)
* cross-chain
* on EVM chain or non-EVM chain
* debts (e.g., pro-rata management costs)
* credits (e.g., pro-rata rewards)

### Value

**Value** is ALWAYS quoted:

* in the "**value asset**" (e.g., "USD") set in `Shares`
* with 18-decimal precision (e.g., 1e18 = $1)

### Share Value vs Share Price

The system distinguishes between two related but different concepts:

**Share Value**: The **net value per share**, inclusive of all positions and fees

**Share Price**: The issuance rate for deposits and redemptions, which may include premiums, discounts, or other repricing behavior

Generally, **share value** and **share price** are the same, except where value is 0, in which case price defaults to one unit of the value asset (i.e., `1e18`).

### Timestamps

**Share value** and **share price** include a timestamp indicating when the calculation was performed. It is then the responsibility of consumers to assess the staleness of the timestamp.

## Share Value Calculations

Value calculations are handled by `ValuationHandler`.

There are three categories of value that are aggregated:

1. **Tracked positions**: holdings or liabilities that are explicitly added to `ValueInterpreter` via `IPositionTracker` instances. These are automatically reported during share value updates.
2. **Untracked positions**: any holdings or liabilities not added as (1). These are self-reported during share value updates.
3. **Unclaimed fees**: any fees that have been assessed but not transferred to the recipient

### Basic formula

value = tracked positions + untracked positions - unclaimed fees

share value = value / total shares

## Share Value Update Flow

See [Share Value Update](/onyx-protocol/general-flows/share-value-update.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.enzyme.finance/onyx-protocol/architecture/share-value.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
