Искусственный расчет количества газа, необходимого для выполнения транзакции¶
Введение¶
При проведении ончейн-обмена важно учитывать затраты на газ, которые могут существенно варьироваться в зависимости от сети и параметров транзакции. Ниже представлена формула искусственного расчета необходимого газа для выполнения транзакции, основанная на базовых переменных и множителях.
Почему мы используем искусственный расчет, а не симуляции?¶
Очень часто в обмен попадает две транзакции: апрув и только потом свап. Если апрув не выдан, то невозможно выполнить estimateGas для обмена, так как он просто не пройдет. Поэтому приходится прибегать к искусственным расчетам, чтобы заранее оценить стоимость выполнения транзакции.
Формула расчета газа¶
Формула для расчета стоимости газа:
((((N + M * (Ss - 1) + Y) * Gs * Ps) * L1) + (((N + M * (Sd - 1) + Y) * Gd * Pd) * L1) + (K * Gs * Ps)) * L2
Описание переменных¶
- N — базовое потребление газа при ончейн обмене.
- Y — базовое потребление газа нашим контрактом.
- M — потребление газа за каждый дополнительный шаг.
- Ss — количество шагов на исходной сети.
- Sd — количество шагов на целевой сети.
- K — количество газа, потребляемое мостом на отправку сообщения.
- Gs — цена газа в нативном токене на исходной сети.
- Gd — цена газа в нативном токене на целевой сети.
- Ps — цена нативного токена на исходной сети.
- Pd — цена нативного токена на целевой сети.
- L1 — множитель 1.
- L2 — множитель 2.
Разбор формулы¶
-
Расчет затрат газа на исходной сети:
(N + M * (Ss - 1) + Y)— общее потребление газа с учетом количества шагов и базового потребления нашего контракта на исходной сети.- Умножается на
Gs(цену газа в нативном токене) иPs(цену нативки). - Дополнительно учитывается множитель
L1.
-
Расчет затрат газа на целевой сети:
(N + M * (Sd - 1) + Y)— общее потребление газа с учетом количества шагов и базового потребления нашего контракта на целевой сети.- Умножается на
GdиPd. - Также учитывается множитель
L1.
-
Добавление затрат моста:
K * Gs * Ps— дополнительный газ, потребляемый мостом.
-
Применение итогового множителя
L2:- Общий результат умножается на
L2.
- Общий результат умножается на
Заключение¶
Эта формула позволяет оценить необходимые затраты на газ при выполнении транзакции в кроссчейн-обмене. Точные значения переменных зависят от конкретных параметров сети и стоимости газа на момент выполнения операции. Использование данной методики помогает избежать неожиданно высоких затрат и более точно планировать расходы.