Шаблоны и примеры для криптовалют
В этом руководстве представлены практические шаблоны Beancount и реальные примеры для распространенных сценариев с криптовалютами. Копируйте и адаптируйте эти шаблоны для своих нужд учета криптовалют.
Базовый шаблон настройки
Шаблон структуры счетов
; =============================================================================
; ШАБЛОН НАСТРОЙКИ СЧЕТОВ КРИПТОВАЛЮТ
; =============================================================================
; Счета бирж
1970-01-01 open Assets:Crypto:Coinbase:USD
1970-01-01 open Assets:Crypto:Coinbase:BTC
1970-01-01 open Assets:Crypto:Coinbase:ETH
1970-01-01 open Assets:Crypto:Binance:USD
1970-01-01 open Assets:Crypto:Binance:BTC
1970-01-01 open Assets:Crypto:Binance:ETH
1970-01-01 open Assets:Crypto:Binance:BNB
; Счета кошельков
1970-01-01 open Assets:Crypto:Wallet:Ledger:BTC
1970-01-01 open Assets:Crypto:Wallet:Ledger:ETH
1970-01-01 open Assets:Crypto:Wallet:MetaMask:ETH
1970-01-01 open Assets:Crypto:Wallet:MetaMask:USDC
; Счета DeFi-протоколов
1970-01-01 open Assets:DeFi:Uniswap:ETH-USDC-LP
1970-01-01 open Assets:DeFi:Compound:cUSDC
1970-01-01 open Assets:Staking:Ethereum:ETH
; Счета доходов
1970-01-01 open Income:Crypto:Staking:ETH
1970-01-01 open Income:Crypto:Mining:BTC
1970-01-01 open Income:Crypto:Airdrops
1970-01-01 open Income:Crypto:DeFi:Yield
1970-01-01 open Income:CapitalGains:Crypto
; Счета расходов
1970-01-01 open Expenses:Crypto:Fees:Trading
1970-01-01 open Expenses:Crypto:Fees:Network
1970-01-01 open Expenses:Crypto:Fees:Withdrawal
; Определения валют
1970-01-01 commodity BTC
name: "Bitcoin"
asset-class: "cryptocurrency"
1970-01-01 commodity ETH
name: "Ethereum"
asset-class: "cryptocurrency"
1970-01-01 commodity USDC
name: "USD Coin"
asset-class: "stablecoin"
Шаблоны для торговли
Базовая покупка криптовалюты
; Шаблон: Купить криптовалюту на бирже
YYYY-MM-DD * "Купить [AMOUNT] [CRYPTO] на [EXCHANGE]"
Assets:Crypto:[EXCHANGE]:[CRYPTO] [AMOUNT] [CRYPTO] {[PRICE] USD}
Assets:Crypto:[EXCHANGE]:USD -[TOTAL_COST] USD
Expenses:Crypto:Fees:Trading [FEE] USD
Assets:Crypto:[EXCHANGE]:USD -[FEE] USD
; Пример: Купить 1 BTC на Coinbase
2024-01-15 * "Купить 1 BTC на Coinbase"
Assets:Crypto:Coinbase:BTC 1.0 BTC {45000.00 USD}
Assets:Crypto:Coinbase:USD -45000.00 USD
Expenses:Crypto:Fees:Trading 50.00 USD
Assets:Crypto:Coinbase:USD -50.00 USD
Продажа криптовалюты
; Шаблон: Продать криптовалюту на бирже
YYYY-MM-DD * "Продать [AMOUNT] [CRYPTO] на [EXCHANGE]"
Assets:Crypto:[EXCHANGE]:[CRYPTO] -[AMOUNT] [CRYPTO] {[COST_BASIS] USD}
Assets:Crypto:[EXCHANGE]:USD [PROCEEDS] USD
Expenses:Crypto:Fees:Trading [FEE] USD
Assets:Crypto:[EXCHANGE]:USD -[FEE] USD
Income:CapitalGains:Crypto [GAIN] USD ; или Expenses:CapitalLoss:Crypto
; Пример: Продать 0.5 BTC с прибылью
2024-03-20 * "Продать 0.5 BTC на Coinbase"
Assets:Crypto:Coinbase:BTC -0.5 BTC {45000.00 USD}
Assets:Crypto:Coinbase:USD 24000.00 USD
Expenses:Crypto:Fees:Trading 30.00 USD
Assets:Crypto:Coinbase:USD -30.00 USD
Income:CapitalGains:Crypto 1470.00 USD ; 24000 - 22500 - 30
Обмен криптовалюты на криптовалюту
; Шаблон: Обменять одну криптовалюту на другую
YYYY-MM-DD * "Обменять [AMOUNT1] [CRYPTO1] на [AMOUNT2] [CRYPTO2]"
Assets:Crypto:[EXCHANGE]:[CRYPTO1] -[AMOUNT1] [CRYPTO1] {[COST_BASIS] USD}
Assets:Crypto:[EXCHANGE]:[CRYPTO2] [AMOUNT2] [CRYPTO2] {[NEW_PRICE] USD}
Income:CapitalGains:Crypto [GAIN] USD ; Налогооблагаемое событие
Expenses:Crypto:Fees:Trading [FEE] USD
Assets:Crypto:[EXCHANGE]:USD -[FEE] USD
; Пример: Обменять BTC на ETH
2024-02-10 * "Обменять 1 BTC на 20 ETH на Binance"
Assets:Crypto:Binance:BTC -1.0 BTC {46000.00 USD}
Assets:Crypto:Binance:ETH 20 ETH {2400.00 USD}
Income:CapitalGains:Crypto 2000.00 USD ; 48000 - 46000
Expenses:Crypto:Fees:Trading 40.00 USD
Assets:Crypto:Binance:USD -40.00 USD
Шаблоны для переводов
Перевод с биржи на кошелек
; Шаблон: Перевести криптовалюту с биржи на кошелек
YYYY-MM-DD * "Перевести [AMOUNT] [CRYPTO] с [EXCHANGE] на [WALLET]"
Assets:Crypto:[EXCHANGE]:[CRYPTO] -[AMOUNT] [CRYPTO] {[COST_BASIS] USD}
Assets:Crypto:Wallet:[WALLET]:[CRYPTO] [AMOUNT] [CRYPTO] {[COST_BASIS] USD}
Expenses:Crypto:Fees:Withdrawal [FEE] [CRYPTO] {[COST_BASIS] USD}
Assets:Crypto:[EXCHANGE]:[CRYPTO] -[FEE] [CRYPTO] {[COST_BASIS] USD}
; Пример: Перевести BTC на Ledger
2024-01-20 * "Перевести 1 BTC с Coinbase на Ledger"
Assets:Crypto:Coinbase:BTC -1.0 BTC {45000.00 USD}
Assets:Crypto:Wallet:Ledger:BTC 1.0 BTC {45000.00 USD}
Expenses:Crypto:Fees:Withdrawal 0.0005 BTC {45000.00 USD}
Assets:Crypto:Coinbase:BTC -0.0005 BTC {45000.00 USD}
Перевод между биржами
; Шаблон: Перевод между биржами
YYYY-MM-DD * "Перевести [AMOUNT] [CRYPTO] с [EXCHANGE1] на [EXCHANGE2]"
Assets:Crypto:[EXCHANGE1]:[CRYPTO] -[AMOUNT] [CRYPTO] {[COST_BASIS] USD}
Assets:Crypto:[EXCHANGE2]:[CRYPTO] [AMOUNT] [CRYPTO] {[COST_BASIS] USD}
Expenses:Crypto:Fees:Network [FEE] [CRYPTO] {[COST_BASIS] USD}
Assets:Crypto:[EXCHANGE1]:[CRYPTO] -[FEE] [CRYPTO] {[COST_BASIS] USD}
; Пример: Перевести ETH с Coinbase на Binance
2024-02-05 * "Перевести 10 ETH с Coinbase на Binance"
Assets:Crypto:Coinbase:ETH -10 ETH {2500.00 USD}
Assets:Crypto:Binance:ETH 10 ETH {2500.00 USD}
Expenses:Crypto:Fees:Network 0.01 ETH {2500.00 USD}
Assets:Crypto:Coinbase:ETH -0.01 ETH {2500.00 USD}
Шаблоны для стейкинга
Стейкинг Ethereum
; Шаблон: Застейкать ETH
YYYY-MM-DD * "Застейкать [AMOUNT] ETH"
Assets:Crypto:Wallet:MetaMask:ETH -[AMOUNT] ETH {[PRICE] USD}
Assets:Staking:Ethereum:ETH [AMOUNT] ETH {[PRICE] USD}
Expenses:Crypto:Fees:Network [FEE] ETH {[PRICE] USD}
Assets:Crypto:Wallet:MetaMask:ETH -[FEE] ETH {[PRICE] USD}
; Пример: Застейкать 32 ETH
2024-01-10 * "Застейкать 32 ETH на Ethereum 2.0"
Assets:Crypto:Wallet:MetaMask:ETH -32 ETH {2500.00 USD}
Assets:Staking:Ethereum:ETH 32 ETH {2500.00 USD}
Expenses:Crypto:Fees:Network 0.01 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.01 ETH {2500.00 USD}
Награды за стейкинг
; Шаблон: Получить награды за стейкинг
YYYY-MM-DD * "[CRYPTO] Награды за стейкинг - [PERIOD]"
Assets:Staking:[PROTOCOL]:[CRYPTO] [AMOUNT] [CRYPTO] {[PRICE] USD}
Income:Crypto:Staking:[CRYPTO] [VALUE] USD
; Пример: Награды за стейкинг ETH
2024-02-01 * "Награды за стейкинг ETH - Январь"
Assets:Staking:Ethereum:ETH 0.08 ETH {2600.00 USD}
Income:Crypto:Staking:ETH 208.00 USD
Шаблоны для DeFi
Предоставление ликвидности в Uniswap
; Шаблон: Добавить ликвидность в пул Uniswap
YYYY-MM-DD * "Добавить ликвидность в пул [TOKEN1]-[TOKEN2]"
Assets:Crypto:Wallet:MetaMask:[TOKEN1] -[AMOUNT1] [TOKEN1] {[PRICE1] USD}
Assets:Crypto:Wallet:MetaMask:[TOKEN2] -[AMOUNT2] [TOKEN2] {[PRICE2] USD}
Assets:DeFi:Uniswap:[TOKEN1]-[TOKEN2]-LP [LP_AMOUNT] [LP_TOKEN] {[LP_PRICE] USD}
Expenses:Crypto:Fees:Network [FEE] ETH {[ETH_PRICE] USD}
Assets:Crypto:Wallet:MetaMask:ETH -[FEE] ETH {[ETH_PRICE] USD}
; Пример: Добавить ликвидность ETH-USDC
2024-01-15 * "Добавить ликвидность в пул ETH-USDC"
Assets:Crypto:Wallet:MetaMask:ETH -10 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:USDC -25000 USDC
Assets:DeFi:Uniswap:ETH-USDC-LP 100 UNI-V3-ETH-USDC {500.00 USD}
Expenses:Crypto:Fees:Network 0.02 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.02 ETH {2500.00 USD}
Кредитование в Compound
; Шаблон: Предоставить активы в Compound
YYYY-MM-DD * "Предоставить [AMOUNT] [TOKEN] в Compound"
Assets:Crypto:Wallet:MetaMask:[TOKEN] -[AMOUNT] [TOKEN]
Assets:DeFi:Compound:c[TOKEN] [C_AMOUNT] c[TOKEN] {[C_PRICE] USD}
Expenses:Crypto:Fees:Network [FEE] ETH {[ETH_PRICE] USD}
Assets:Crypto:Wallet:MetaMask:ETH -[FEE] ETH {[ETH_PRICE] USD}
; Пример: Предоставить USDC в Compound
2024-01-20 * "Предоставить 10000 USDC в Compound"
Assets:Crypto:Wallet:MetaMask:USDC -10000 USDC
Assets:DeFi:Compound:cUSDC 500 cUSDC {20.00 USD}
Expenses:Crypto:Fees:Network 0.008 ETH {2500.00 USD}
Assets:Crypto:Wallet:MetaMask:ETH -0.008 ETH {2500.00 USD}
Шаблоны для майнинга
Награды за майнинг
; Шаблон: Получить награды за майнинг
YYYY-MM-DD * "[CRYPTO] Награда за майнинг - [POOL/SOLO]"
Assets:Crypto:Mining:[CRYPTO] [AMOUNT] [CRYPTO] {[PRICE] USD}
Income:Crypto:Mining:[CRYPTO] [VALUE] USD
; Пример: Награда за майнинг Bitcoin
2024-01-15 * "Награда за майнинг BTC - Slush Pool"
Assets:Crypto:Mining:BTC 0.01 BTC {45000.00 USD}
Income:Crypto:Mining:BTC 450.00 USD
Расходы на майнинг
; Шаблон: Операционные расходы на майнинг
YYYY-MM-DD * "Майнинг [EXPENSE_TYPE] - [PERIOD]"
Expenses:Crypto:Mining:[EXPENSE_TYPE] [AMOUNT] USD
Assets:Checking -[AMOUNT] USD
; Пример: Затраты на электроэнергию для майнинга
2024-01-31 * "Электроэнергия для майнинга - Январь"
Expenses:Crypto:Mining:Electricity 800.00 USD
Assets:Checking -800.00 USD
Шаблоны для аирдропов
Аирдропы токенов
; Шаблон: Получить аирдроп токенов
YYYY-MM-DD * "[TOKEN] Аирдроп от [PROJECT]"
Assets:Crypto:Wallet:[WALLET]:[TOKEN] [AMOUNT] [TOKEN] {[PRICE] USD}
Income:Crypto:Airdrops [VALUE] USD
; Пример: Аирдроп токенов UNI
2024-03-01 * "Аирдроп UNI от Uniswap"
Assets:Crypto:Wallet:MetaMask:UNI 400 UNI {8.00 USD}
Income:Crypto:Airdrops 3200.00 USD
Расширенные шаблоны
Арбитраж с испол ьзованием мгновенных кредитов (Flash Loan)
; Шаблон: Арбитраж с использованием мгновенного кредита
YYYY-MM-DD * "Арбитраж с использованием мгновенного кредита - [STRATEGY]"
; Мгновенный кредит
Assets:Crypto:Temp:FlashLoan [LOAN_AMOUNT] [TOKEN]
Liabilities:DeFi:[PROTOCOL]:Flash -[LOAN_AMOUNT] [TOKEN]
; Выполнение арбитража
Assets:Crypto:Temp:FlashLoan -[LOAN_AMOUNT] [TOKEN]
Assets:Crypto:Temp:Arbitrage [RETURN_AMOUNT] [TOKEN]
; Возврат мгновенного кредита
Liabilities:DeFi:[PROTOCOL]:Flash [LOAN_AMOUNT] [TOKEN]
Assets:Crypto:Temp:Arbitrage -[LOAN_PLUS_FEE] [TOKEN]
; Прибыль
Assets:Crypto:Wallet:[WALLET]:[TOKEN] [PROFIT] [TOKEN]
Income:Crypto:Arbitrage [PROFIT_USD] USD
Межсетевой мост (Cross-Chain Bridge)
; Шаблон: Перевод активов между сетями
YYYY-MM-DD * "Перевести [AMOUNT] [TOKEN] из [CHAIN1] в [CHAIN2]"
Assets:Crypto:[CHAIN1]:[TOKEN] -[AMOUNT] [TOKEN] {[PRICE] USD}
Assets:Crypto:[CHAIN2]:[TOKEN] [AMOUNT] [TOKEN] {[PRICE] USD}
Expenses:Crypto:Bridge:Fees [FEE] [TOKEN] {[PRICE] USD}
Assets:Crypto:[CHAIN1]:[TOKEN] -[FEE] [TOKEN] {[PRICE] USD}
; Пример: Перевод ETH в Polygon
2024-02-05 * "Перевести 5 ETH из Ethereum в Polygon"
Assets:Crypto:Ethereum:ETH -5 ETH {2600.00 USD}
Assets:Crypto:Polygon:ETH 5 ETH {2600.00 USD}
Expenses:Crypto:Bridge:Fees 0.01 ETH {2600.00 USD}
Assets:Crypto:Ethereum:ETH -0.01 ETH {2600.00 USD}
Шаблоны для оптимизации налогов
Сбор убытков для оптимизации налогов (Tax Loss Harvesting)
; Шаблон: Сбор убытков для оптимизации налогов - Продать [CRYPTO] в убыток
YYYY-MM-DD * "Сбор убытков для оптимизации налогов - Продать [CRYPTO] в убыток"
Assets:Crypto:[EXCHANGE]:[CRYPTO] -[AMOUNT] [CRYPTO] {[HIGH_COST_BASIS] USD}
Assets:Crypto:[EXCHANGE]:USD [PROCEEDS] USD
Expenses:Crypto:Fees:Trading [FEE] USD
Assets:Crypto:[EXCHANGE]:USD -[FEE] USD
Expenses:CapitalLoss:Crypto [LOSS] USD
; Пример: Сбор убытков ADA
2024-12-15 * "Сбор убытков для оптимизации налогов - Продать ADA в убыток"
Assets:Crypto:Binance:ADA -1000 ADA {0.60 USD}
Assets:Crypto:Binance:USD 445.00 USD
Expenses:Crypto:Fees:Trading 5.00 USD
Assets:Crypto:Binance:USD -5.00 USD
Expenses:CapitalLoss:Crypto 150.00 USD