> For the complete documentation index, see [llms.txt](https://docs.chiliz.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.chiliz.com/fr/developper/notions-avancees/flux-de-prix-on-chain.md).

# Flux de prix on-chain

Chiliz Chain propose un système de flux de prix on-chain de qualité institutionnelle, qui délivre des prix d'actifs fiables et infalsifiables directement aux smart contracts. Il implémente la **Chainlink AggregatorV3Interface** : toute dApp déjà intégrée avec les flux de données Chainlink peut se connecter avec des modifications minimales.

Les données de prix sont collectées auprès de plusieurs grandes bourses centralisées, agrégées via VWAP (Volume Weighted Average Price), filtrées pour éliminer les valeurs aberrantes, puis publiées on-chain par un signataire autorisé dans un pipeline entièrement automatisé à haute fréquence.

## Fonctionnement

Le système oracle repose sur un pipeline off-chain en trois étapes qui publie en continu des prix validés dans les contrats on-chain.

```mermaid
flowchart LR
    subgraph pipeline["Off-chain Pipeline"]
        direction LR
        FETCHER --> AGGREGATOR --> SIGNER
    end
    SIGNER --> pricefeed["Chiliz Chain\nPriceFeed Contracts"]
```

**Étape 1 : Fetcher**\
Récupère les données de marché en temps réel depuis des bourses centralisées via des flux WebSocket (Binance, Bybit, Bitget, Mexc, OKX, BingX) et du polling REST (Binance, Bybit, Bitget, Gate, Coinex), ainsi que des requêtes subgraph (FanX). Tous les prix collectés sont stockés dans un cache interne, prêts pour l'Aggregator.

**Étape 2 : Aggregator**\
Applique le calcul VWAP en accordant plus de poids aux plateformes à plus fort volume, puis filtre les valeurs aberrantes. Décide de soumettre ou non une mise à jour on-chain selon deux règles :

* **Seuil de déviation** : une mise à jour est soumise si le prix agrégé a dépassé un pourcentage configuré (p. ex. 0,5 %) par rapport à la dernière valeur on-chain.
* **Heartbeat** : même si le prix n'a pas dépassé le seuil de déviation, une mise à jour est forcée une fois l'intervalle de temps maximal écoulé. Cela garantit que le flux n'est jamais obsolète.

**Étape 3 : Signer**\
Reçoit les jobs de prix validés de l'Aggregator et les soumet on-chain via Fireblocks, une solution de signature de qualité institutionnelle. Le Signer n'agit que lorsque l'Aggregator indique qu'un prix est prêt.

## Système de contrats

| Contrat                 | Rôle                                                                                                                                                                      |
| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **PriceFeed**           | Un contrat par paire de trading. C'est le contrat que votre dApp lit. Implémente la Chainlink AggregatorV3Interface.                                                      |
| **OracleFactory**       | Registre et gestionnaire. Contient le mapping de référence entre le symbole de paire (p. ex. `"PSG/USDT"`) et l'adresse de l'oracle.                                      |
| **OracleFactoryReader** | Contrat de commodité en lecture seule. Récupérez toutes les adresses d'oracle actives, résolvez plusieurs paires ou vérifiez l'état de santé du système en un seul appel. |

Les contrats oracle ont été audités par [Halborn](https://www.halborn.com/audits/chiliz/oracle-contracts-40e905) (janvier 2026).

## Adresses des contrats

Les paramètres réseau pour le Mainnet et le Testnet sont disponibles dans la [Se connecter via RPC](/fr/developper/notions-de-base/se-connecter-a-chiliz-chain/se-connecter-en-utilisant-un-rpc.md).

{% tabs %}
{% tab title="Chiliz Chain Mainnet" %}

<table><thead><tr><th width="253">Contract</th><th>Address</th></tr></thead><tbody><tr><td>OracleFactory</td><td><code>Coming soon...</code></td></tr><tr><td>OracleFactoryReader</td><td><code>Coming soon...</code></td></tr></tbody></table>
{% endtab %}

{% tab title="Spicy Testnet" %}

<table><thead><tr><th width="253">Contract</th><th>Address</th></tr></thead><tbody><tr><td>OracleFactory</td><td><code>0x824A1C121DD4baeA7f074f829294Af7DD10D9723</code></td></tr><tr><td>OracleFactoryReader</td><td><code>0x8908cd1586e90b399Dbc160Be98396172ef2F378</code></td></tr></tbody></table>
{% endtab %}
{% endtabs %}

Le [Price Oracle Tracker](https://price-oracle-tracker.vercel.app/?network=mainnet) affiche toutes les paires disponibles avec les prix en direct, les décimales, les paramètres de heartbeat et les adresses de contrat individuelles.


---

# 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.chiliz.com/fr/developper/notions-avancees/flux-de-prix-on-chain.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.
