去中心化金融 (DeFi) 彻底改变了我们与金融服务互动的方式,为收益生成、流动性提供和去中心化交易带来了前所未有的机会。然而,伴随这些机会而来的是准确追踪复杂交易以实现税务合规和投资组合管理的挑战。
传统会计方法难以应对 DeFi 的独特特性:自动化做市商、流动性挖矿、无常损失和多代币奖励。这份综合指南将向你展示如何使用 Beancount.io 强大的纯文本记账系统来掌握 DeFi 会计。
理解 DeFi 会计挑战
DeFi 交易的复杂性
DeFi 协议带来了传统金融中不存在的会计挑战:
- 多代币交易:涉及多种加密货币的单一操作
- 自动复投:奖励自动再投资
- 无常损失:流动性池中因价格背离导致的价值变化
- Gas 费用优化:跨不同网络的复杂费用结构
- 协议治理:投票权和治理代币分配
- 跨协议交互:跨多个 DeFi 平台的交易
DeFi 活动的税务影响
美国国税局将 DeFi 活动视为应税事件:
- 流动性提供:存入资产时可能触发应税事件
- 收益耕作奖励:按公允市场价值作为普通收入征税
- 无常损失:从资金池中提取时可能产生税务影响
- 治理代币:空投和奖励应税为收入
- 质押奖励:收到时应税为收入
Beancount.io 中 DeFi 账户的设置
全面的账户结构
创建一个详细的账户层级,以记录所有 DeFi 活动:
; Wallet Accounts
1970-01-01 open Assets:Crypto:Wallet:MetaMask:ETH
1970-01-01 open Assets:Crypto:Wallet:MetaMask:USDC
1970-01-01 open Assets:Crypto:Wallet:MetaMask:DAI
1970-01-01 open Assets:Crypto:Wallet:MetaMask:WBTC
; Uniswap V3 Liquidity Pools
1970-01-01 open Assets:DeFi:Uniswap:ETH-USDC-LP
1970-01-01 open Assets:DeFi:Uniswap:DAI-USDC-LP
1970-01-01 open Assets:DeFi:Uniswap:WBTC-ETH-LP
; Compound Protocol
1970-01-01 open Assets:DeFi:Compound:CUSDC
1970-01-01 open Assets:DeFi:Compound:CETH
1970-01-01 open Assets:DeFi:Compound:CDAI
; Aave Protocol
1970-01-01 open Assets:DeFi:Aave:AUSDC
1970-01-01 open Assets:DeFi:Aave:AETH
1970-01-01 open Assets:DeFi:Aave:DebtETH
; Staking Protocols
1970-01-01 open Assets:Staking:Ethereum:ETH
1970-01-01 open Assets:Staking:Lido:STETH
1970-01-01 open Assets:Staking:RocketPool:RETH
; Income Accounts
1970-01-01 open Income:DeFi:Yield:Uniswap
1970-01-01 open Income:DeFi:Yield:Compound
1970-01-01 open Income:DeFi:Yield:Aave
1970-01-01 open Income:DeFi:Staking:Ethereum
1970-01-01 open Income:DeFi:Governance:Tokens
1970-01-01 open Income:DeFi:Airdrops
1970-01-01 open Income:DeFi:CapitalGains:Uniswap
; Expense Accounts
1970-01-01 open Expenses:DeFi:Gas:Ethereum
1970-01-01 open Expenses:DeFi:Gas:Polygon
1970-01-01 open Expenses:DeFi:Gas:ArbitrumDeFi 专用商品
定义代币和 LP 代币,并附带适当的元数据:
1970-01-01 commodity UNI-V3-ETH-USDC
name: "Uniswap V3 ETH-USDC LP Token"
asset-class: "liquidity-pool"
protocol: "uniswap-v3"
1970-01-01 commodity cUSDC
name: "Compound USDC"
asset-class: "lending-token"
protocol: "compound"
1970-01-01 commodity stETH
name: "Lido Staked Ethereum"
asset-class: "staking-derivative"
protocol: "lido"追踪常见的DeFi活动
1. Uniswap 流动性提供
向资金池添加流动性
2024-01-15 * "Add liquidity to ETH-USDC Uniswap V3 pool"
Assets:Crypto:Wallet:MetaMask:ETH -5.0 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:USDC -12500 USDC {1.00 USD}
Assets:DeFi:Uniswap:ETH-USDC-LP 100 UNI-V3-ETH-USDC {250.00 USD}
Expenses:DeFi:Gas:Ethereum 0.01 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.01 ETH {2500.00 USD}申领 LP 费用
2024-02-15 * "Claim Uniswap LP fees"
Assets:Crypto:Wallet:MetaMask:ETH 0.2 ETH {2600.00 USD}
Assets:Crypto:Wallet:MetaMask:USDC 300 USDC {1.00 USD}
Income:DeFi:Yield:Uniswap -820.00 USD
Expenses:DeFi:Gas:Ethereum 0.005 ETH {2600.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.005 ETH {2600.00 USD}移除流动性伴随无常损失
到 3 月中旬,ETH 已从 2,500 USD 涨至 3,906.25 USD。覆盖全价格区间的 Uniswap V3 头寸,其表现与经典的恒定乘积资金池(x · y = k)相同:ETH 上涨时,套利者会从资金池中买走 ETH,因此你取回的 ETH 比存入时少,USDC 则比存入时多。你存入的 5 ETH 和 12,500 USDC(5 × 12,500 = 62,500)取回时变为 4 ETH 和 15,625 USDC——乘积仍为 4 × 15,625 = 62,500,而 15,625 ÷ 4 = 3,906.25 就是新价格。手续费已在上文单独申领,因此这些金额只是本金。
2024-03-15 * "从 ETH-USDC 资金池中移除流动性"
Assets:DeFi:Uniswap:ETH-USDC-LP -100 UNI-V3-ETH-USDC {250.00 USD} @ 312.50 USD
Assets:Crypto:Wallet:MetaMask:ETH 4.0 ETH {3906.25 USD}
Assets:Crypto:Wallet:MetaMask:USDC 15625 USDC {1.00 USD}
Income:DeFi:CapitalGains:Uniswap -6250.00 USD ; 31250 - 25000 = 6250
Expenses:DeFi:Gas:Ethereum 0.008 ETH {3906.25 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.008 ETH {3906.25 USD}账本记录的是这次提取实际实现的结果。成本为 25,000 USD 的 LP 代币赎回了价值 31,250 USD 的代币(4 × 3,906.25 + 15,625),即每枚 LP 代币 312.50 USD,而其成本为 250.00 USD,因此收益为 31,250 − 25,000 = 6,250 USD。它在收入账户中记为负数,因为 Beancount 就是这样记录收益的;收到的 4 ETH 则以 3,906.25 USD 的市场价值作为新的成本基础。
无常损失不是这笔交易中的分录,也不应该是。它是相对于单纯持有的差额:如果你一直持有那 5 ETH 和 12,500 USDC,它们现在价值 5 × 3,906.25 + 12,500 = 32,031.25 USD,因此提供流动性让你少了 32,031.25 − 31,250 = 781.25 USD(约 2.4%)。这是一种机会成本——没有任何代币为此离开你的钱包——所以请在备注或报告中记录它,并与上文该头寸赚取的 820 USD 手续费(以及你支付的 Gas 费用)进行比较,以判断提供流动性是否胜过单纯持有。
2. Compound 协议借贷
向 Compound 提供资产
2024-01-20 * "Supply USDC to Compound"
Assets:Crypto:Wallet:MetaMask:USDC -10000 USDC {1.00 USD}
Assets:DeFi:Compound:CUSDC 500 CUSDC {20.00 USD}
Expenses:DeFi:Gas:Ethereum 0.008 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.008 ETH {2500.00 USD}赚取复利
2024-02-20 * "Compound interest accrual"
Assets:DeFi:Compound:CUSDC 5.2 CUSDC {20.50 USD}
Income:DeFi:Yield:Compound -106.60 USD申领 COMP 奖励
2024-02-20 * "Claim COMP governance tokens"
Assets:Crypto:Wallet:MetaMask:COMP 12 COMP {85.00 USD}
Income:DeFi:Governance:Tokens -1020.00 USD
Expenses:DeFi:Gas:Ethereum 0.006 ETH {2600.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.006 ETH {2600.00 USD}3. Aave 协议运营
存款与借款
; Deposit ETH as collateral
2024-01-25 * "Deposit ETH to Aave"
Assets:Crypto:Wallet:MetaMask:ETH -10 ETH {2500.00 USD}
Assets:DeFi:Aave:AETH 10 AETH {2500.00 USD}
Expenses:DeFi:Gas:Ethereum 0.01 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.01 ETH {2500.00 USD}
; Borrow USDC against ETH collateral
2024-01-25 * "Borrow USDC from Aave"
Assets:Crypto:Wallet:MetaMask:USDC 15000 USDC
Liabilities:DeFi:Aave:DebtUSDC -15000 USDC
Expenses:DeFi:Gas:Ethereum 0.008 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.008 ETH {2500.00 USD}偿还附息贷款
2024-03-25 * "向 Aave 偿还 USDC 贷款"
Liabilities:DeFi:Aave:DebtUSDC 15000 USDC
Expenses:DeFi:Interest:Aave 450 USDC ; 应计利息
Assets:Crypto:Wallet:MetaMask:USDC -15450 USDC
Expenses:DeFi:Gas:Ethereum 0.008 ETH {2700.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.008 ETH {2700.00 USD}4. 以太坊质押
直接以太坊质押
2024-01-10 * "在以太坊 2.0 上质押 ETH"
Assets:Crypto:Wallet:MetaMask:ETH -32 ETH {2500.00 USD}
Assets:Staking:Ethereum:ETH 32 ETH {2500.00 USD}
Expenses:DeFi:Gas:Ethereum 0.01 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.01 ETH {2500.00 USD}质押收益
2024-02-10 * "ETH staking rewards"
Assets:Staking:Ethereum:ETH 0.15 ETH {2600.00 USD}
Income:DeFi:Staking:Ethereum -390.00 USD通过 Lido 进行流动性质押
2024-01-12 * "Stake ETH with Lido"
Assets:Crypto:Wallet:MetaMask:ETH -10 ETH {2500.00 USD}
Assets:Staking:Lido:STETH 10 STETH {2500.00 USD}
Expenses:DeFi:Gas:Ethereum 0.008 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.008 ETH {2500.00 USD}高级 DeFi 场景
收益耕作策略
多协议收益耕作
; Step 1: Deposit USDC to Compound
2024-01-30 * "Deposit USDC to Compound for yield farming"
Assets:Crypto:Wallet:MetaMask:USDC -20000 USDC {1.00 USD}
Assets:DeFi:Compound:CUSDC 1000 CUSDC {20.00 USD}
; Step 2: Borrow DAI against cUSDC
2024-01-30 * "Borrow DAI from Compound"
Assets:Crypto:Wallet:MetaMask:DAI 15000 DAI {1.00 USD}
Liabilities:DeFi:Compound:DebtDAI -15000 DAI {1.00 USD}
; Step 3: Provide DAI-USDC liquidity to Uniswap
2024-01-30 * "Add DAI-USDC liquidity for farming"
Assets:Crypto:Wallet:MetaMask:DAI -15000 DAI {1.00 USD}
Assets:Crypto:Wallet:MetaMask:USDC -5000 USDC {1.00 USD} ; Additional USDC
Assets:DeFi:Uniswap:DAI-USDC-LP 200 UNI-V3-DAI-USDC {100.00 USD}跨链 DeFi 操作
资产桥接
2024-02-05 * "Bridge ETH to Polygon"
Assets:Crypto:Wallet:MetaMask:ETH -5 ETH {2600.00 USD}
Assets:Crypto:Wallet:Polygon:ETH 5 ETH {2600.00 USD}
Expenses:DeFi:Bridge:Fees 0.01 ETH {2600.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.01 ETH {2600.00 USD}闪电贷与套利
2024-02-10 * "Flash loan arbitrage opportunity"
; Flash loan
Assets:Crypto:Temp:FlashLoan 100000 USDC
Liabilities:DeFi:Aave:FlashLoan -100000 USDC
; Arbitrage trade
Assets:Crypto:Temp:FlashLoan -100000 USDC
Assets:Crypto:Temp:Arbitrage 101500 USDC
; Repay flash loan
Liabilities:DeFi:Aave:FlashLoan 100000 USDC
Assets:Crypto:Temp:Arbitrage -100090 USDC ; Including fees
; Profit
Assets:Crypto:Temp:Arbitrage -1410 USDC ; Move profit to wallet
Assets:Crypto:Wallet:MetaMask:USDC 1410 USDC
Income:DeFi:Arbitrage:Profit -1410 USDCDeFi 税务报告考量
收入确认
所有 DeFi 奖励均应作为普通收入纳税:
; 分别追踪所有收入来源
Income:DeFi:Yield:Uniswap ; LP 费用
Income:DeFi:Yield:Compound ; 利息收入
Income:DeFi:Staking:Ethereum ; 质押奖励
Income:DeFi:Governance:Tokens ; 治理代币空投
Income:DeFi:Airdrops ; 协议空投费用抵扣
追踪可抵扣费用:
Expenses:DeFi:Gas:Ethereum ; 燃料费
Expenses:DeFi:Gas:Polygon ; 二层网络费用
Expenses:DeFi:Interest:Aave ; 借贷成本无常损失不在此列表中。它是相对于单纯持有的差额,而不是你实际支付的费用,因此不是单独的扣除项;需要申报的是从资金池提取时实现的收益或亏损,如上文的 Uniswap 示例所示。
资本利得追踪
使用基于批次的会计核算,准确计算资本利得:
; 同一代币的不同成本基础
Assets:DeFi:Compound:cUSDC 100 cUSDC {20.00 USD} ; 批次 1
Assets:DeFi:Compound:cUSDC 100 cUSDC {21.00 USD} ; 批次 2DeFi 会计最佳实践
1. 实时交易记录
- 交易执行后立即记录交易
- 使用交易哈希进行验证
- 监控内存池中的待处理交易
2. 燃气费优化追踪
; 追踪燃气费优化策略
Expenses:DeFi:Gas:Ethereum:Standard ; 标准燃气费价格
Expenses:DeFi:Gas:Ethereum:Fast ; 快速燃气费价格
Expenses:DeFi:Gas:Ethereum:Instant ; 即时燃气费价格3. 协议风险管理
; 跟踪协议特定风险
Expenses:DeFi:Risk:SmartContract ; 智能合约故障
Expenses:DeFi:Risk:Liquidation ; 清算事件
Expenses:DeFi:Risk:Slippage ; 滑点成本4. 自动化对账
- 设置自动化价格数据源
- 使用协议 API 进行余额验证
- 实现自动化交易导入
5. 文档标准
- 维护详细的交易备注
- 文档化策略原理
- 保留协议交互记录
DeFi 工具集成
投资组合追踪
- DeBank:DeFi 投资组合概览
- Zapper:多协议仪表盘
- Zerion:DeFi 钱包和追踪器
税务报告
- Koinly: DeFi 税务计算
- CoinTracker: 多协议支持
- TokenTax: 专业的 DeFi 报告
分析平台
- DeFi Pulse: 协议分析
- DeFiLlama: TVL 和收益追踪
- APY.vision: 无常损失追踪
结论
DeFi 会计的复杂性不应阻碍你参与去中心化金融革命。借助 Beancount.io 强大的纯文本会计系统,你可以:
- 追踪复杂交易:无缝处理多协议交互
- 确保税务合规:妥善进行收入确认和费用追踪
- 监控投资组合表现:实时洞察 DeFi 头寸
- 管理风险:追踪无常损失和协议风险
- 扩展操作:从简单的质押到复杂的收益耕作策略
成功进行 DeFi 会计的关键在于一致性、准确性和适当的分类。从基本协议开始,并随着你对会计模式的熟悉程度,逐渐扩展到更复杂的策略。
探索实时加密货币账本示例:





