如何更准确估计以太坊手续费?一文了解Gas价格指示器GasNow
大多数 Gas 价格指示器都是根据历史数据来预测未来,而 GasNow 基于星火矿池节点交易池中交易的 Gas 价格分布。
对于以太坊用户来说,真正的灵魂三问莫过于:我在做什么交易?我该给多少的 Gas?应该把 Gas Price 设成多少才经济实惠?
简单来说,Gas 是用来度量以太坊上一笔交易所需花用的计算量的单位。一笔交易的复杂度越高,所需花用的 Gas 也就越多,所以,越是复杂的交易,在发起交易时越要设定(预留)较多的 Gas 额度,如果发起者预留的 Gas 数量不够多,交易会因为计算资源耗尽而失败。
但是好就好在,这事用不着操心,可以设一个自己的账户支付得起又充分大的数值,因为,没有用掉的 Gas 是不会计算手续费的,换言之,虽然你设置了这笔交易可以用掉 100 Gas,但实际上只用掉了 20 Gas,那打包你的交易的出块者就只能得到 20 Gas 的手续费,不能白收你的。此外,现在的 Gas 使用量估算技术已经很普遍了,用户使用 Metamask 钱包插件跟应用交互的时候,会发现自己根本不需要手动设置 Gas Limit,插件已经帮你估算好了。
但是讲到 Gas Price,就头疼了。大家都知道,这个参数表达的是交易发起者自己愿意为每一单位的 Gas 支付的价格,而这部分价格最终会被打包该笔交易的出块者得到;有鉴于此,出块者当然青睐那些 Gas Price 高的交易。但是,谁不想让手续费便宜一些呢?谁不想经济实惠地达成交易呢?
因此,几乎所有的以太坊用户在日常使用中都会接触到一种工具:Gas 价格指示器,它的作用是告诉你,你设置多少的 Gas Price,就能让自己的交易在自己想要的时间内被打包。比如下图展示的就是生态里可能是最常用的 Gas 价格指示器:Gas Station。
它的大意是说:如果你想要自己的交易在 2 分钟之内被打包,那就要设置 95 Gwei 乃至更高的 Gas 价格;如果你只需要它在 5 分钟之内被打包,那设置成 79 Gwei 以上就好
大多数像你我一样的用户,在使用 Gas Station 时都不会发觉有什么问题。但是,假如你要做高频的交易呢?或者假如你要写一个交易机器人呢?Gas Station 真的可以依赖吗?
这可不是在找茬,也不是装神弄鬼。这篇文章就提到了 2020 年 3 月 14 日(因 ETH 价格暴跌而导致链上活动大量增加)时候许多用户的艰难遭遇:在以太坊协议中,一个账户发起的交易是有顺序的,由一个只增不减的流水号 nonce 来标记顺序;当你的前序交易因为 Gas Price 太低而被出块节点丢弃的时候,不论你给后序交易设置再高的 Gas Price,都于事无补,因为节点不能越过前序交易直接打包后序交易,但是前序交易已经丢弃了,这就等于使你的账户锁死了。唯一的解救办法就是找回你最早一笔还未上链的交易,使用这笔交易的流水号重发一笔交易,并且 Gas Price 要足够高。同样地,许多交易机器人也因为同样的原因被卡,原因就是因为它们依赖的 Gas 价格报告器对网络 Gas 价格的预估有误,发出几笔交易之后,机器人就卡死了。
这些血淋淋的教训充分说明了,为每一笔交易安排合适的 Gas 价格,有多么重要。因为当链上应用活跃的时候(比如前一段时间的 Yield Farming 热潮),一笔交易的成功不仅会影响这笔交易,还会影响后序交易。
但是,是什么阻碍了我们获得准确的 Gas 价格估计呢?我们能克服吗?
在最根本上来说,阻碍我们的是区块链网络的 点对点网络架构:所有节点都是分散的,当某一笔交易被发送到一个节点时,该节点做一定的校验之后会把交易数据广播给其它节点;这种网络结构决定了,没有任何一个节点能实时获得整个网络的未处理交易的全局状态,交易的传播需要时间,也需要偶然(某些节点可能会用更高的 Gas Price 作为门槛、拒收低手续费的交易来保护自己)。对于这一点,我们只能改善,不可能从根本上克服,因为我们不想要一个中心化的网络结构。
但另一方面,至关重要的是我们预估 Gas 价格的方法。目前为止,绝大部分 Gas 价格指示器所用的方法,都是根据过去一段时间里被打包到区块里的交易的 Gas 价格加以统计方法处理,得出对未来 Gas 价格的估计。仔细想想这其实很不合理,在你发交易的这一刻,决定你的交易多快能上链的是现有未处理交易中比你交易的 Gas 价格更高的交易有多少,以及在你的交易还未打包的这段时间里有多少人发出了比你的 Gas 价格更高的交易。拿已经上链的交易,也就是历史数据,去做这样的预估,貌似合理,实则荒谬。当网络活动快速增加、Gas 价格快速攀升的时候,按历史数据估计的方法大概率只能给出低估的 Gas 价格。更准确的估计应该基于现有未处理交易的 Gas 价格分布,哪怕还需要统计方法处理,也会比拿历史数据来估计要更简单。
这就是 GasNow厉害的地方。它不再基于历史数据来预测未来,它基于星火矿池节点的交易池中交易的 Gas 价格分布。为了收益的最大化,矿池一方面要尽可能地收集交易,另一方面,要从高到低打包交易池中待打包的交易。所以,GasNow 给出的数据,是真正具有参考意义的。
如图,网页直接告诉了你矿池交易队列中由高到低排序的第 50 笔、第 200 笔、第 400 笔交易的 Gas 价格。这就有的放矢了
理论上来说,所有的 Gas 价格指示器,都应该转变成 GasNow 这样的模式,不再根据历史数据,而是根据实时数据,来帮助用户做决策。但饶是如此,GasNow 也是有竞争力的。因为矿池的交易池会比普通的、没有优化的节点的交易池更全面,更有参考意义。
Gas Station 在自述中说,「希望能提高 Gas 价格的透明度」,这当然是个很有意义的目标;而且,Gas 价格的不清晰,其实根值于网络的点对点特性(因此,我个人非常不愿意把这种不清晰当成是一种 「问题」),值得更多人作出更多的尝试,用服务本身的分散性来降低点对点网络带来的不确定性、使我们获得更全局的视野。
但至少,GasNow 应该是离这个理想更近一步了。
你可能感兴趣的文章
-
为什么说用自己的电脑挖比特币挖不到
-
为什么说用自己的电脑挖比特币挖不到
矿工有诱因却维持比特币的基础建设,因为如果比特币网络失败了,他们通过挖矿赚得的,或者可以赚得的所有尚未转换的比特币将损失或者失去价值,或者是蒙受高风险,再深入探...
2024-10-18
什么是比特币买卖价差?比特币的买卖价差率介绍
-
什么是比特币买卖价差?比特币的买卖价差率介绍
三、交易平台对比特币买卖价差影响因素交易网站的功能是提供一个在线交易平台,使用户能够购买或出售比特币
2024-10-18
比特币交易费都有哪些?如何降低这些费用呢?
-
比特币交易费都有哪些?如何降低这些费用呢?
调整矿工费设置:在进行比特币交易时,投资者可以根据网络拥堵情况和自身需求,合理调整矿工费设置
2024-10-18
虚拟货币交易方式介绍,如何交易虚拟货币
-
虚拟货币交易方式介绍,如何交易虚拟货币
就比特币交易而言,除了通过交易所持有和储存货币外,还有另外一种选择
2024-10-18
比特币交易市场现状是什么?比特币还值得投资吗?
-
比特币交易市场现状是什么?比特币还值得投资吗?
然而,投资者在参与比特币交易时,需要充分了解市场的风险性,谨慎选择交易平台,并根据自身的风险承受能力和投资目标制定合适的投资策略
2024-10-18
虚拟货币交易攻略: 虚拟货币怎么玩?
-
虚拟货币交易攻略: 虚拟货币怎么玩?
本文将从四个方面对虚拟货币交易攻略进行详细阐述,包括投资策略、技术分析、风险管理和市场趋势
2024-10-18
热门虚拟币推荐,看哪些地方能购买虚拟币
-
热门虚拟币推荐,看哪些地方能购买虚拟币
虽然市场上有数百种不同的虚拟币,但并非每一种都具备潜力
2024-10-18
以太币价格美金如何兑换,一个以太币值多少美元
-
以太币价格美金如何兑换,一个以太币值多少美元
四、总结 要获取最新的以太币行情分析,可以访问专业的加密货币市场分析网站、金融新闻平台或使用实时行情追踪工具
2024-10-18
详解印度区块链,你不可错过的二三事
-
详解印度区块链,你不可错过的二三事
区块链在印度发展可谓一波三折,但数字货币的快速升值也引起了印度媒体的关注,主流媒体对加密货币进行了密集报道,大多数文章对比特币和加密币持支持的态度,会给出“投资...
2024-10-17
为什么很多 区块链公司 都注册在新加坡?
-
为什么很多 区块链公司 都注册在新加坡?
新加坡作为一个主要的金融和航运中心,吸引了全球投资者前来落户,尤其是很多区块链企业,使得新加坡在短时间内已经成为全球顶级的加密货币中心。2021年底,全球加密货...
2024-10-17