Cách nhận giá hiện tại của ETH, BTC và các loại tiền điện tử khác trong Solidity

Nhận dữ liệu giá bằng cách sử dụng nguồn cấp dữ liệu giá của Chainlink
Nhận dữ liệu giá bằng cách sử dụng API bên ngoài thông qua các nhà tiên tri Chainlink
tiêu đề cấp đầu tiên
Nhu cầu về dữ liệu giá chính xác và đáng tin cậy trong hợp đồng thông minh
Các giao thức DeFi đã có sự tăng trưởng bùng nổ trong năm nay và tổng giá trị bị khóa của DeFi đã tăng từ 680 triệu đô la vào tháng 1 lên 14 tỷ đô la hiện nay. Các giao thức DeFi này dựa vào dữ liệu giá bên ngoài làm nguồn dữ liệu, vì chuỗi khối không thể truy cập trực tiếp dữ liệu bên ngoài cục bộ. Ngoài ra, các ứng dụng này cần cung cấp đảm bảo dữ liệu để bảo vệ ứng dụng khỏi các hành vi khai thác, chẳng hạn như các cuộc tấn công tiên tri về giá và các cuộc tấn công khác.
Nguồn cấp dữ liệu giá Chainlink giảm thiểu rủi ro của các cuộc tấn công này bằng cách cung cấp dữ liệu được tổng hợp từ nhiều nhà cung cấp dữ liệu chất lượng cao và cung cấp dữ liệu trên chuỗi thông qua các nhà tiên tri phi tập trung trên mạng Chainlink. Cơ chế tiên tri phi tập trung của Chainlink đảm bảo rằng dữ liệu giá cuối cùng phản ánh phạm vi rộng của thông tin thị trường, có nghĩa là dữ liệu giá cuối cùng được xác định sau khi tổng hợp nhiều dữ liệu giá khác nhau trên toàn thị trường, không chỉ một phần nhỏ Thông tin mà còn tính đến các dữ liệu khác các yếu tố, chẳng hạn như khối lượng và tính thanh khoản.
tiêu đề cấp đầu tiên
Sử dụng Chainlink để cung cấp giá trên Ethereum
tiêu đề cấp đầu tiên
Tạo một hợp đồng thông minh
Bước đầu tiên là lấy ETH của testnet làm phí gas cho hợp đồng thông minh. Sau khi kiếm được một số ETH, cách dễ nhất để xây dựng hợp đồng thông minh sử dụng Chainlink để cung cấp giá là bắt đầu với hợp đồng tiêu dùng giá tiêu chuẩn. Đây là hợp đồng cơ sở được sử dụng để bắt đầu yêu cầu nguồn cấp dữ liệu giá cho Chainlink. Phần này dành cho mục đích trình diễn, chúng tôi sẽ sử dụng nguồn cấp giá ETH/USD đã được xác định trong hợp đồng tiêu dùng giá tiêu chuẩn, nhưng chúng tôi sẽ giải thích chi tiết phần mã này để bạn có thể hiểu cách thức hoạt động của nó.
Đầu tiên, chúng ta có thể thấy rằng giao diện hợp đồng AggregatorV3Interface đã được nhập. Bằng cách này, hợp đồng thông minh của chúng tôi có thể tham khảo hợp đồng nguồn cấp dữ liệu giá được triển khai trên mạng thử nghiệm Kovan. Tiếp theo, chúng tôi tạo một phiên bản hợp đồng và lưu trữ nó trong một biến cục bộ.

Tiếp theo, chúng ta có thể thấy rằng hợp đồng tham chiếu nguồn cấp dữ liệu giá được khởi tạo trong hàm tạo. Hợp đồng tham chiếu nguồn cấp dữ liệu giá ETH/USD trên mạng thử nghiệm Kovan được triển khai tại địa chỉ 0x9326BFA02ADD2366b30bacB125260Af641031331.

tiêu đề cấp đầu tiên

Triển khai và thử nghiệm hợp đồng thông minh
Bây giờ chúng tôi đã sẵn sàng để triển khai và kiểm tra hợp đồng của mình. Biên dịch hợp đồng trong Remix, sau đó trên tùy chọn "Triển khai", thay đổi môi trường thành "Injected Web3" và đảm bảo rằng địa chỉ ví bên dưới là địa chỉ ví mà bạn đã nhận được ETH trước đó trong ví MetaMask của mình, nhấp vào nút triển khai, và làm theo các bước Chỉ cần thao tác. Kết quả cuối cùng là bạn đã triển khai hợp đồng thông minh của mình lên mạng thử nghiệm Kovan. Cần ghi lại địa chỉ hợp đồng đã triển khai được ghi thông qua đầu ra giao dịch trong bảng điều khiển Remix.
Mô tả hình ảnh
tiêu đề cấp đầu tiên
Nhận dữ liệu giá bổ sung trong Solidity
Nguồn cấp dữ liệu giá Chainlink cung cấp một lượng lớn dữ liệu giá trên các cặp giá DeFi hàng đầu. Nếu bạn cần dữ liệu về giá tài sản trong hợp đồng thông minh của mình mà dữ liệu này không có trong các hợp đồng cung cấp giá hiện có, chẳng hạn như giá của một loại cổ phiếu cụ thể, thì bạn có thể tùy chỉnh lời tiên tri Chainlink để gọi bất kỳ API bên ngoài nào. Cách dễ nhất để sử dụng lời tiên tri Chainlink để lấy dữ liệu giá bên ngoài là bắt đầu với hợp đồng APIConsumer tiêu chuẩn của Chainlink. Đây là một hợp đồng được tiêu chuẩn hóa để khởi tạo các yêu cầu đối với dữ liệu bên ngoài thông qua các nhà tiên tri Chainlink.
Sau khi tạo hợp đồng APIConsumer, bạn có thể tìm thấy API mà bạn muốn lấy dữ liệu về giá. Ví dụ: bạn có thể sử dụng Alpha Vantage API để tìm giá hiện tại của cổ phiếu IBM.
Khi bạn có điểm cuối API, bạn chỉ cần đặt các tham số chính xác trong hợp đồng và gửi yêu cầu tới nhà tiên tri Chainlink. Bạn có thể tìm thêm thông tin về điều này và cách sử dụng hợp đồng APIConsumer tiêu chuẩn trong tài liệu Chainlink.
tóm tắt
tóm tắt
Nguồn cấp dữ liệu giá Chainlink cung cấp một cách đáng tin cậy để đưa dữ liệu giá Bitcoin, Ethereum và tiền điện tử chất lượng cao khác vào các hợp đồng thông minh của Solidity. Ngoài ra, khung tiên tri của Chainlink cung cấp sự linh hoạt để có được dữ liệu giá khác một cách nhanh chóng và dễ dàng, chẳng hạn như dữ liệu về cổ phiếu, hàng hóa và các tài sản khác.


