跳到正文

研究指南

加密现货研究

Solana余额:分开账户押金与交易费用

Solana钱包的SOL减少,可能来自交易费、账户存储押金,或向其他地方转账。三类经济含义不同。把余额下降全部记作手续费,会高估不可逆支出,也会漏掉仍保存在其他账户中的可收回资金。

Solana账户结构文档将免租最低余额解释为可退的账户存储押金,费用结构文档则另行说明交易费用。研究应使用观测slot生效规则,并先验证实际关闭条件,不能把所有押金立即视为现金。

同时调节钱包与新建账户

从钱包交易前后lamports出发,确认费用付款人及实际交易费,再检查指令和相关账户余额变化。一笔交易可能涉及多个账户,付款人也不一定是创建账户的最终受益者。

分别归类不可退交易费、存储押金、普通转账、押金回收和未解决变化。不能仅按金额判断;账户供资可能高于最低要求,关闭返还也可能指定其他接收者,而不是最初付款人。

SOL余额与代币余额应分开。代币账户里的lamports押金,不是其中代币的数量。账户所属程序、操作权限和关闭权限也可能不同。账户owner是某程序,不代表某个人的钱包随时能无条件关闭它。

假设案例:创建账户的余额桥

假设虚构钱包期初1 SOL,新建两个账户,各存入假设0.002 SOL存储押金,同时支付实际交易费0.00001 SOL,没有其他转账。

变动假设SOL分类
期初钱包1钱包流动余额
两个账户押金−0.004保留在新账户的资产
交易费用−0.00001不可逆支出
期末钱包0.99599调节后的余额

钱包下降0.00401 SOL,但本例真正交易费只有0.00001。若钱包对两笔押金有已验证权利,钱包加押金资产合计0.99999 SOL;它们的流动性和关闭要求仍与钱包现金不同。

再假设以后按规则关闭其中一个账户,返还0.002 SOL,并支付新交易费0.00001,钱包净增加0.00199 SOL。把全部返还记成收入不对,大部分只是原有资产收回。示例押金并非当前网络最低要求。

核实可收回性

读取程序关闭规则及所需权限。可能必须先转出代币或满足特定状态,才能关闭。将来可能收回的押金,与现在能拿来支付新交易的资金,应分别记录。

比较应用成本时,列出钱包毛流出、真正费用、新增押金、返还押金及净支出,并保持范围一致。创建更多持久账户的应用,即使交易费更低,也可能造成更大的初始钱包流出。

由赞助方支付创建费用时,保留付款人和受益人区别。用户流出减少可能来自补贴,而不是资源消耗减少。用户收到的关闭返还,也可能最初由别人供资,归属要看真实交易和应用条款。

先用lamports整数调节,再展示舍入后的SOL。保留slot、账户大小和实际余额,不要给不同账户类型硬套同一个例子最低额。程序、权限、账户大小改变,或余额变动无法解释时,应重新核对。

合并资产视图只纳入有权利及关闭接收人证据的押金。钱包出资创建账户,不证明押金一定属于这个钱包;如果创建是为别人服务,全部计作可回收资产会夸大资源。现金桥仍记录出资,资产归属则保持未解决,直到权限和应用证据说明谁能收回。原付款人与最终接收者不同,也不自动表示异常。

关闭返还到账后,要从原押金资产桶扣除相同金额;若钱包余额增加而押金仍原额保留,合并资产就会被重复计算。

常见问题

每次SOL减少都是交易费吗?

不是。还可能是账户供资、转账或其他移动,应看交易和相关账户余额后分类。

存储押金一定能立即退回吗?

不能。取决于权限、状态、程序规则和成功关闭,可收回资产应与钱包现金分开。

相关阅读