# 5.7.2 The Price Model

The token price model we have developed is essentially a stochastic differential equation model based on **Geometric Brownian Motion (GBM)**. It integrates elements of supply and demand, as well as a yield curve derived from the Nelson-Siegel-Svensson model, to predict the token price ![](/files/SIydDxyvT0kOUvj3VY54)over time.

This approach allows for the consideration of multiple variables affecting the price:

* **Supply and Demand**: The model considers the cumulative supply of tokens (![](/files/StgA7aoY7j5hxBq5qEjo)) and the total demand for tokens (![](/files/fLzdO3YawUZu9G1009He)). The difference between these two factors impacts the mean return (![](/files/P4GzWwSoYNuslEtXRQEk)) of the token price.
* **Entropy**: The model also factors in entropy, which represents the randomness or uncertainty in the system. Higher entropy accelerates the token price growth rate, while lower entropy slows it down.
* **Yield Curve**: The yield curve (![](/files/CSvEMAr0pxMDpWEIG6Wm)), derived from the Nelson-Siegel-Svensson model, represents interest rates over time and is used to simulate the volatility of the token price.
* **Viscosity Factor**: As the price approaches an upper limit, a viscosity factor is applied to slow down the growth and prevent the price from exceeding this limit.
* **Random Fluctuations**: Random fluctuations in price are accounted for by incorporating a stochastic term ![](/files/fpsyuwGMJLrw9yPs8jZE), following a normal distribution.

The model algorithm:

* **Initialization**:

  o     Token price ![](/files/SIydDxyvT0kOUvj3VY54) is initialized to ![](/files/a7mGqbvBkuoN9zrgossh) which is the minimum token price limit.

  o      ![](/files/fpsyuwGMJLrw9yPs8jZE) is initialized with random normal values scaled by sqrt(dt) (square root of time step).
* **Iteration over time**: The model iterates over time from the second time step to the end (since the first time step was used for initialization).

  o     Growth Rate![](/files/P4GzWwSoYNuslEtXRQEk)calculation:  ![](/files/EQxls97EUvvQLlYmAcxV), the growth rate of token price, is calculated for each time step. It is determined by the entropy of the system and the difference between total demand for tokens and cumulative supply of tokens. The entropy reflects the unpredictability of the system, while the demand-supply difference reflects the scarcity or abundance of tokens in the system. A scaling factor (![](/files/FWefrZjce4yk59coxylg)) is used to adjust the effect of entropy.

  o     Volatility (![](/files/CSvEMAr0pxMDpWEIG6Wm)) calculation: ![](/files/xo1yJvIEeYyUqaHmwUJU), the volatility of token price, is calculated for each time step. It is determined by the yield curve and scaled by a factor ![](/files/mu1nUqOZGU6X2zhFIROS) to adjust the level of price fluctuations.

  o       Token Price Change Calculation: The change in token price ![](/files/wmI2502tuGZLNc0ylEqF) for each time step is calculated using a formula similar to geometric Brownian motion, which includes the growth rate, volatility, and a random factor ![](/files/fpsyuwGMJLrw9yPs8jZE).
* **Viscosity Effect**: If the token price exceeds a certain threshold close to the maximum limit ![](/files/CAOzDNE3N2iS4WJHuVfx), a viscosity factor is applied to slow down the price growth.
* **Token Price Adjustment**: After calculating the new token price, it is adjusted to ensure it stays within the predefined minimum and maximum limits ![](/files/3ObjMcYQDAaZ033TRl9g) and ![](/files/KZxEJjRUsMO41NB7CRvT).

<figure><img src="/files/KNgmTtJJWPr9mSpinGQ1" alt=""><figcaption><p><em>Figure 92 Token Price over time</em></p></figcaption></figure>


---

# Agent Instructions: 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:

```
GET https://dgtnetwork.gitbook.io/dgt-docs/5.-exploring-tokenomics/5.7-token-price-simulation/5.7.2-the-price-model.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
