Управление на Инвентара в Beancount
Инвентарната система на Beancount е мощна функция за проследяване на активи, които се купуват и продават във времето, като акции, взаимни фондове или чуждестранни валути. Тя позволява прецизно проследяване на цената на придобиване, което е от съществено значение за изчисляване на капиталови печалби и разбиране на представянето на портфейла. Този наръчник обхваща основните механики на управление на инвентара във вашия счетоводен регистър.
Основни Концепции
В основата си управлението на инвентара се върти около проследяването на позиции. "Позиция" е просто количество от стока, държана в сметка. Beancount разграничава два основни типа позиции.
Типове Позиции
-
Об икновена Позиция (Без Цена): Това е стандартно балансово записване. То представлява количество от стока без никаква свързана цена на придобиване. Подходящо е за пари в брой или прости балансови потвърждения.
Assets:Bank:Checking 100.00 USD -
Позиция с Цена на Придобиване: Този тип позиция включва не само броя на единиците и стоката, но и цената, на която е придобита. Това е основата на инвентарното проследяване. Цената е посочена във фигурни скоби
{}.Assets:Invest:VTSAX 10 VTSAX {100.00 USD, "lot-1"}В този пример, ние държим 10 единици
VTSAX. Всяка единица е придобита на цена от $100.00 USD. Тази конкретна партида акции е идентифицирана като "лот".
Инвентарни Операции
Има две основни операции, които можете да извършите върху инвентара:
-
Увеличаване (Добавяне към инвентара): Когато купувате стока, вие увеличавате инвентара си. Вие създавате нов лот с определен брой единици и цена на придобиване.
2024-01-15 * "Buy shares"
Assets:Invest:STOCK 50 STOCK {25.00 USD, "lot-1"}
Assets:Bank:Checking -1250.00 USDТук, ние купуваме 50 единици
STOCKна цена от $25.00 USD за единица. Това създава лот в сметкатаAssets:Invest:STOCK. -
Намаляване (Премахване от инвентара): Когато продавате стока, вие намалявате инвентара си. Трябва да посочите от кой лот продавате. Това се прави чрез предоставяне на съвпадаща информация във фигурни скоби.
2024-01-20 * "Sell shares"
Assets:Invest:STOCK -25 STOCK {25.00 USD}
Assets:Bank:Checking 625.00 USDВ тази транзакция, ние продаваме 25 единици
STOCKот лота, който е закупен на $25.00 USD за единица.
Методи на Записване
Когато намалявате инвентар, Beancount се нуждае от правило, за да реши от кой конкретен лот да изтегли, ако няколко лота съвпадат или ако съвпадението е неясно. Това правило се нарича "метод на записване". Можете да зададете метод по подразбиране за целия си файл или да посочите един за всяка сметка.
1. STRICT (По подразбиране)
Методът STRICT е методът по подразбиране и най-безопасният метод на записване. Той налага изрично и недвусмислено съвпадение.
2024-01-01 open Assets:Invest:STOCK "STRICT"
- Изисква Точно Съвпадение на Лота: Трябва да предоставите достатъчно информация в записването за намаляване (
{...}), за да идентифицирате еднозначно лота, който се продава. - Грешки при Неясни Съвпадения: Ако предоставената информация съвпада с няколко лота, Beancount ще генерира грешка, принуждавайки ви да бъдете по-конкретни.
- Изключение: Ако записването за намаляване премахне точно общия брой единици, държани в сметка, е позволено празно обозначение на цена (
{}).
2. FIFO (Първи влязъл, Първи излязъл)
Методът FIFO автоматично записва нам аленията спрямо най-старите налични лотове първо.
2024-01-01 open Assets:Invest:STOCK "FIFO"
- Автоматично Разрешаване: Той разрешава неяснотата, като избира най-старите съвпадащи лотове.
- Хронологично Съвпадение: Това е често срещан счетоводен метод, при който приемате, че продавате активите, които сте държали най-дълго. Това е задължителният метод за данъчни цели в много страни.