Módulos
Price Oracle
Cliente para feeds de preço compatíveis com Chainlink AggregatorV3Interface.
arc_devkit.oracle lê feeds de preço compatíveis com o padrão AggregatorV3Interface da Chainlink — um padrão público estável, usado de forma idêntica em várias EVM chains, não específico da Arc.
Uso
from arc_devkit.oracle import PriceOracle
from arc_devkit.core.connection import get_web3
oracle = PriceOracle(w3=get_web3(), feed_address="0xEnderecoDoFeed")
data = oracle.latest_price()
print(data.description) # ex: "ETH / USD"
print(data.price) # Decimal já convertido pelas casas decimais do feed
Convertendo valores
resultado = oracle.convert(Decimal("10")) # 10 unidades convertidas pelo preço do feed
⚠Nenhum feed bundled
Nenhum endereço de feed específico da Arc está incluído — passe o endereço do contrato do feed que você quer consultar.
CLI
arcdevkit oracle price 0xEnderecoDoFeed...
Referência da API
PriceOracle(w3, feed_address, abi=None)
| Método | Retorno |
|---|---|
latest_price() | PriceData(description, price, decimals, updated_at, round_id) |
convert(amount) | Decimal — amount * price |