> 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/vi/phat-trien/nang-cao/nguon-gia-on-chain.md).

# Nguồn giá on-chain

Chiliz Chain cung cấp hệ thống nguồn giá on-chain cấp độ tổ chức, cung cấp giá tài sản đáng tin cậy, chống giả mạo trực tiếp cho smart contract. Hệ thống này triển khai **Chainlink AggregatorV3Interface**: mọi dApp đã tích hợp với Chainlink data feeds đều có thể kết nối với những thay đổi tối thiểu.

Dữ liệu giá được lấy từ nhiều sàn giao dịch tập trung lớn, được tổng hợp qua VWAP (Giá Trung Bình Theo Khối Lượng), lọc outlier, và được đẩy lên on-chain bởi một người ký có quyền trong một pipeline tự động, tần suất cao.

## Cách Hoạt Động

Hệ thống oracle được xây dựng như một pipeline off-chain ba giai đoạn, liên tục đẩy giá đã được xác thực vào các hợp đồng on-chain.

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

**Giai đoạn 1: Fetcher**\
Lấy dữ liệu thị trường thời gian thực từ các sàn giao dịch tập trung qua luồng WebSocket (Binance, Bybit, Bitget, Mexc, OKX, BingX) và REST polling (Binance, Bybit, Bitget, Gate, Coinex), cộng với truy vấn subgraph (FanX). Tất cả giá được lấy đều được lưu trong bộ nhớ đệm nội bộ, sẵn sàng cho Aggregator.

**Giai đoạn 2: Aggregator**\
Áp dụng tính toán VWAP, đảm bảo các sàn có thanh khoản cao hơn được ưu tiên hơn, sau đó lọc outlier. Quyết định có nên gửi bản cập nhật on-chain dựa trên hai quy tắc:

* **Ngưỡng độ lệch**: bản cập nhật được gửi nếu giá tổng hợp đã di chuyển vượt quá tỷ lệ phần trăm được cấu hình (ví dụ: 0.5%) so với giá trị on-chain cuối cùng.
* **Heartbeat**: ngay cả khi giá không vượt quá ngưỡng độ lệch, một bản cập nhật được buộc thực hiện khi khoảng thời gian tối đa đã trôi qua. Điều này đảm bảo nguồn giá không bao giờ bị lỗi thời.

**Giai đoạn 3: Signer**\
Nhận các lệnh giá đã được xác thực từ Aggregator và gửi chúng on-chain qua Fireblocks, một giải pháp ký cấp độ tổ chức. Signer chỉ hoạt động khi Aggregator xác nhận giá đã sẵn sàng.

## Hệ Thống Hợp Đồng

| Hợp đồng                | Vai trò                                                                                                                                                           |
| ----------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **PriceFeed**           | Một hợp đồng cho mỗi cặp giao dịch. Đây là hợp đồng mà dApp của bạn đọc từ đó. Triển khai Chainlink AggregatorV3Interface.                                        |
| **OracleFactory**       | Registry và quản lý. Lưu trữ ánh xạ có thẩm quyền từ ký hiệu cặp (ví dụ: `"PSG/USDT"`) đến địa chỉ oracle.                                                        |
| **OracleFactoryReader** | Hợp đồng tiện ích chỉ đọc. Lấy tất cả địa chỉ oracle đang hoạt động, phân giải nhiều cặp, hoặc kiểm tra trạng thái sức khỏe trên toàn hệ thống trong một lần gọi. |

Các hợp đồng oracle đã được kiểm tra bởi [Halborn](https://www.halborn.com/audits/chiliz/oracle-contracts-40e905) (tháng 1 năm 2026).

## Địa Chỉ Hợp Đồng

Thông số mạng cho cả Mainnet và Testnet có sẵn trong [Hộp Công Cụ Developer](/vi/phat-trien/co-ban/ket-noi-voi-chiliz-chain/ket-noi-bang-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 %}

[Price Oracle Tracker](https://price-oracle-tracker.vercel.app/?network=mainnet) hiển thị tất cả các cặp có sẵn với giá trực tiếp, decimals, thông số heartbeat, và địa chỉ hợp đồng riêng lẻ.


---

# 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/vi/phat-trien/nang-cao/nguon-gia-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.
