ethers.js: provider.getGasPrice()

В ты можешь использовать чтобы получить наиболее точную оценку стоимости газа, которую вы должны заплатить. Есть ли что-нибудь простое, что я могу вызвать или преобразовать в это значение, чтобы получить то, что было бы эквивалентом «быстрой» транзакции вместо «средней» скорости транзакции?

1 ответ

В getGasPrice()запрашивает у вашего провайдера JSON-RPC метод eth_gasPrice и просто проксирует то, что вернул ваш провайдер.


Чтобы рассчитать «быструю» и «среднюю» скорость, вам необходимо определить, какие показатели вы считаете этими показателями. Например, вы можете собрать все транзакции в течение последних 20 блоков (примерно 5 минут) и искать процентили в исторических данных:

  • Верхний 10% процентиль цен на газ - "Быстрый".
  • Верхние 50% процентов цен на газ - "Средняя".

Получить транзакции в блоке можно с помощью метода getBlockWithTransactions() ethers.js. В каждой транзакции вы ищете gasPrice имущество.

Другие вопросы по тегам