Мінімізуємо ціну на газ в умовах підвищеного трафіку

Фото - Мінімізуємо ціну на газ в умовах підвищеного трафіку
Що таке газ (Gas) та як розраховується його ціна? Чому плата за газ не є стійким показником? Як можна зменшити вартість транзакції в мережі Ethereum та які ресурси можна використати для цього?
Газ — це фундаментальна концепція у мережі Ethereum, яка має вирішальну роль у перевірці та проведенні транзакцій, а також у виконанні смартконтрактів. Газ є одиницею вимірювання обсягу обчислювальних зусиль, які необхідні для обробки поточних операцій у мережі.
 
Кожна транзакція чи виконання смартконтракту споживає певну кількість потужності обладнання валідаторів. І користувачі блокчейну Ethereum оплачують ці послуги в ETH — цифровому паливі, на якому працює мережа.

З чого складається ціна на газ та які чинники на це впливають?

Вартість проведення транзакції визначається ціною на газ, яка є одиницею, що має назву Гвей (Gwei). Гвей — це найменша деномінація ефіру, де 1 ETH еквівалентний 1 000 000 000 Gwei (або 1 млрд nanoether). Загальна вартість роботи валідатора розраховується множенням ціни газу на його використану кількість. Наприклад, якщо ціна газу встановлена на рівні 20 Гвей і транзакція споживає 200 000 газу, загальна вартість становитиме 0,004 ETH (20 * 200 000). Після переходу на PoS до базової ставки додалися «чайові» для валідаторів. 

Загалом ціна на газ — це ринковий чинник, який регулюється попитом та пропозицією. На нього впливають такі фактори:

1. Перевантаження мережі. Коли мережа Ethereum відчуває високий попит (наприклад, під час збільшення кількості платежів у годину пік) — ціни на газ закономірно зростають. Це відбувається через обмежену здатність мережі обробляти інформацію протягом заданого часу. У такому разі користувачі починають конкурувати між собою. Кожен пропонує вищу ставку (плата за пріоритет), щоб «проштовхнути» свою транзакцію або смартконтракт серед перших і фінансово мотивувати валідаторів. Тоді ціна за передання активу може навіть перевищувати його вартість.
 
2. Ліміт газу. Кожен блок Ethereum має обмеження за максимальною кількістю Gas, що може бути включений. Це означає, що максимальний розмір кожного блоку обмежений залежно від того, скільки коштує обробка транзакцій у ньому. (Блокчейн BTC, навпаки, обмежує розмір блоку кількістю байтів інформації). Якщо попит на газ перевищує його ліміт, деякі транзакції взагалі не потрапляють у блок, що призводить до затримок у мемпулі («залі очікування» для цифрових операцій) або навіть збоїв передання інформації. Насамперед страждають користувачі, які встановили низьку ціну. Тож це призводить до загострення конкуренції (див. п. 1).
 
3. Ринкова динаміка цін на ETH. Волатильність власної криптовалюти блокчейну напряму впливає на вартість транзакції, адже валідатори отримують свою винагороду в ETH. Тому у доларовому еквіваленті коливання іноді дуже суттєві.

Стратегії мінімізації цін на газ в умовах зростання попиту

Як ми вже писали, після переходу блокчейну Ethereum на алгоритм PoS всі очікували на зниження вартості послуг валідаторів. Але поки що цього не сталося, адже обмеження на кількість транзакцій, які можуть увійти в блок, нікуди не зникло. Ба більше, сервіси, які відстежують вартість обміну інформацією, демонструють її зростання. Це пов’язано і з мем-істерією, що охопила криптоспільноту, і з запуском великої кількості dApp в мережі Ethereum, і з використанням ботів MEV для цензурування транзакцій.

У ситуаціях, коли ціни на газ високі через підвищений попит, користувачі можуть оптимізувати свої витрати:
 
1. Рішення Layer 2. Їх використання знижує навантаження на основний блокчейн, прискорює транзакції та зменшує комісійні витрати. Найпопулярніші L2-протоколи — це OMG, Optimism, Polygon та Arbitrum.
 
2. Вибір оптимального часу проведення транзакції. Існують онлайн-сервіси, які показують, у який час доби та які дні тижня навантаження на мережу Ethereum є мінімальним. Найточніший із них — gasnow.org. Він враховує навіть часовий пояс, у якому ви перебуваєте. Якщо у вас об’ємна або багаторівнева транзакція, яка потребуватиме великої кількості газу, то краще зайнятися переказом уночі по буднях, коли азійські ринки вже закінчують свою роботу, а європейці лише прокидаються. Так ви зможете заощадити від 20% до 50% комісії.
 
3. Моделювання ситуації. Зазвичай про ціну за проведення переказу користувач дізнається постфактум (саме так і виникають ситуації, коли ціна за газ перевищує суму переведених активів). Але є застосунки, які використовують спеціальні алгоритми для попереднього розрахунку вартості транзакції. Наприклад, DeFi Saver дає змогу прорахувати свої витрати в режимі реального часу. А Blocknative перевіряє всі транзакції, які очікують на проведення в мемпулі, прогнозує, які з них можуть бути включені у наступний блок, і показує, яку ціну за газ треба встановити з урахуванням додаткового внеску за пріоритет, щоб переказ або виконання смартконтракту відбулися якнайшвидше.
 
Крім того, по змозі варто об’єднувати кілька транзакцій в одну. Наприклад, це можна зробити, якщо ви хочете перемістити ETH з кількох ваших криптогаманців у той самий застосунок dApp. Це помітно скоротить фінансові витрати.