Price Feeder

Основные отличия заключаются в следующем:

  • Все обменные курсы должны быть указаны в фиатных долларах США или стейблкоинах долларов США, например, USDC

  • Нет необходимости или использования справочных обменных курсов (например, Luna).

  • Нет необходимости или использования налога Тобина.

  • Ценовой фидер объединяет фидер и ценовой сервер в едином приложении на основе Golang для лучшего UX, тестируемости и интеграции.

Предпосылки

Ценовой фидер отвечает за выполнение следующих действий:

  1. Получение и агрегирование данных о ценах обменного курса от различных поставщиков, например, Binance и Osmosis, исходя из конфигурации оператора. Эти обменные курсы предоставляются через API и используются для передачи поминутных цен в основной процесс оракула.

  2. Агрегирование данных о ценах обменного курса и отправка этих обменных курсов по сети в модуль Umee x/oracle в соответствии со спецификацией Umee Oracle.

Применение

Инструмент подачи цен работает на основе одного файла конфигурации. Этот файл конфигурации определяет, какие обменные курсы получать и от каких поставщиков. Кроме того, он определяет ключи оракула и информацию об учетной записи фидера. Пароль определяется с помощью переменных окружения или ввода пользователя. Дополнительную информацию о связке ключей можно найти здесь. Дополнительные сведения см. в примере конфигурации.

$ price-feeder /path/to/price_feeder_config.toml

Установка

Каталог ключей dir и backend определены в файле конфигурации. Вы можете использовать переменную среды PRICE_FEEDER_PASS для установки пароля для набора ключей.

Пример: export PRICE_FEEDER_PASS=keyringPassword

Если эта переменная окружения не установлена, фидер цен предложит пользователю ввести пароль.

Конфигурация

server

Раздел server содержит конфигурацию, относящуюся к API, обслуживаемому процессом price-feeder, например, адрес прослушивания и различные тайм-ауты HTTP.

currency_pairs

Разделы currency_pairs содержат один или несколько обменных курсов, а также поставщиков, от которых можно получить рыночные данные. Важно отметить, что поставщики, представленные в каждой currency_pairs, должны поддерживать заданный обменный курс.

Например, чтобы получить несколько ценовых данных по $ATOM, вы можете определить currency_pairs так:

`[[currency_pairs]] base = "ATOM"providers = [ "binance", ] quote = "USDT"
[[currency_pairs]] base = "ATOM"providers = [ "kraken", "osmosis", ] quote = "USD"`

Указание нескольких поставщиков рыночных данных выгодно в случае, если какой-либо поставщик не может вернуть рыночные данные. Цены за обменный курс передаются в сети через сообщения предварительного голосования и голосования с использованием средневзвешенной по времени цены (TVWAP).

account

Раздел account содержит информацию об учетной записи фидера и валидатора оракула. Они используются для подписи и заполнения данных в сообщениях оракула перед голосованием и голосованием.

keyring

Раздел keyring содержит материалы, связанные с набором ключей, используемые для получения пары ключей, связанной с учетной записью оракула, которая подписывает сообщения оракула перед голосованием и во время голосования.

rpc

Раздел rpc содержит эндпоинты gRPC приложений Tendermint и Cosmos. Эти эндпоинты используются для запроса блокчейн данных, относящихся к функциям оракула, и для рассылки подписанных сообщений оракула перед голосованием и во время голосования.

Набор Ключей

Набор ключей UMEE должен быть настроен для подписи транзакций перед запуском фидера цен. Дополнительная информация о различных режимах набора ключей доступна здесь. Обратите внимание, что режимы test и memory предназначены только для целей тестирования. Не используйте эти режимы для запуска фидера цен в основной сети.

Провайдеры

Текущий список поддерживаемых провайдеров данных:

Last updated