跳到主要内容

Beancount.io 介绍

· 阅读需 9 分钟

为什么要记账?

每个人都有关于如何管理资金的建议。在谷歌搜索“管理资金”,你会找到超过 1,690,000,000 个链接。你会发现大量的生活黑客或自助文章和书籍。你会找到专业教练或收费的课程。你会找到金融和投资服务。随意尝试你感兴趣的内容,通过试错来增加你的资产。

我认为最重要的是要记住,问钱的问题源于恐惧和自我怀疑。我们都害怕变化。我们都怀疑自己能否赚更多的钱。

与其花时间担心和怀疑,不如专注于相反的事情——你的信心。如果你在玩扑克,筹码很少,你只能小额下注,赢得少量资金。当你有很多筹码时,你可以大额下注并赢得大奖。你有更多的空间去冒险。你可以尝试那些在筹码较少时无法尝试的事情。

这里的魔力在于——通过更多地了解你的财务状况,你获得了信心!拥有更多的信心,我们可以做出更好的判断,并愿意下注最佳金额以获得更大的成功,从而赢得更多。

Expenses

了解你的支出并规划下一次消费

赢得更多的担忧的尽头在哪里?人们常常谈论财务自由这个流行词。然而,空谈无益,而记账恰恰回答了这个问题。

四个主要财务报表概述财务状况

不幸的是,在我们现代生活中,记账并不容易。我们正处于一个丰盈的新纪元。我们有很多账户——现金、银行账户、支付应用、信用卡、股票或加密货币经纪账户、折扣卡……我们拥有房屋、汽车、黄金、珠宝等资产……更糟糕的是,我们中的一些人可能生活在不同的国家,必须处理不同的货币。我们如何绘制出准确的财务生活地图,并在未来的不确定性中导航?

我所说的“准确的财务生活地图”是指这四个主要财务报表:

  1. 损益表:它显示我们在特定期间内赚取了多少收入。这个报表通常被认为是财务报表中最重要的,因为它反映了经营结果。
  2. 资产负债表:它回答我们拥有多少资产、负债和权益。这个报表是第二重要的,因为它报告了我们资产的流动性和资本化情况。
  3. 现金流量表:它报告我们的现金流入和流出,并回答我们是否产生了现金。我们需要足够的现金来支付费用和购买资产。
  4. 权益表:这对你的个人会计没有帮助。然而,对于公司而言,这个报表报告它如何在利益相关者之间分配权益。

Income Statement

Balance Sheet

使用 beancount.io,你可以快速生成上述报表。但是等等……如何为这些报表准备数据?

双重记账确保准确性

为了确保准确性并将错误检测内化到系统中,双重记账要求每个账户的每个条目至少有一个对应的条目到另一个账户。一笔交易涉及至少两个账户和两个操作——借记(+)和贷记(-)。

1970-01-01 open Income:BeancountCorp
1970-01-01 open Assets:Cash
1970-01-01 open Expenses:Food
1970-01-01 open Assets:Receivables:Alice
1970-01-01 open Assets:Receivables:Bob
1970-01-01 open Assets:Receivables:Charlie
1970-01-01 open Liabilities:CreditCard

2019-05-31 * "BeancountCorp" "5月15日至5月31日的工资"
Income:BeancountCorp -888 USD
Assets:Cash 888 USD

2019-07-12 * "Popeyes 鸡肉三明治" "与 Alice、Bob 和 Charlie 的晚餐"
Expenses:Food 20 USD
Assets:Receivables:Alice 20 USD
Assets:Receivables:Bob 20 USD
Assets:Receivables:Charlie 20 USD
Liabilities:CreditCard -80 USD

如上面的两个例子所示,每笔交易必须满足会计等式。

资产 = 负债 + 权益(即净资产)

我们使用了 Martin Blais 的 Beancount 语法和 Jakob Schnitzer 的网络项目 Fava 来构建这个网站。如果任何交易的各方不相加为零,它将提醒你。

Error Alert

现在你明白我们如何强制确保账本的正确性。但是你可能会问,那些“账户”是什么?

账户作为水的桶

将你的资产视为水在不同的桶中流入和流出,而“账户”就是那些装着你资金的桶。通过双重记账,资金如何在不同账户之间流动变得显而易见,就像水在不同桶之间流动一样。

Beancount.io 介绍了五种类型的账户。

  1. 收入——其金额总是负数或借记。这是因为你在赚钱,然后资金从“收入”账户借记到你的“资产”中。
  2. 支出——其金额总是正数或贷记。这是因为你在花钱,资金从“资产”或“负债”流向“支出”。
  3. 负债——其金额为正数或零。你的信用卡负债就是一个很好的例子,它会周期性地上升和下降。
  4. 资产——其金额为正数或零。你的现金或房屋总是有一定的价值。
  5. 权益——你的净资产。系统会自动为你计算。权益 = 资产 - 负债,它反映了你的财富状况。

现在你可以使用上述关键词打开自定义账户:

1970-01-01 open Assets:Cash
1970-01-01 open Assets:Stock:Robinhood
1970-01-01 open Assets:Crypto:Coinbase
1970-01-01 open Expenses:Transportation:Taxi
1970-01-01 open Equity:OpeningBalance

商品:跟踪你的投资

是的,你可以使用 beancount.io 跟踪你的投资。例如,我们在 2014 年以每个 100 美元的价格购买了 10 个比特币:

2014-08-08 * "购买 10 个比特币"
Assets:Trade:Cash -1000.00 USD
Assets:Trade:Positions 10 BTC {100.00 USD}

然后三年后,你以每个 10,000 美元 的价格出售它们(原始成本为每个 100 美元,标注为 {100.00 USD})。

2017-12-12 * "出售 2 个比特币"
Assets:Trade:Positions -2 BTC {100.00 USD} @ 10,000.00 USD
Assets:Trade:Cash 20,000.00 USD
Income:Trade:PnL -19,800.00 USD

或者同样的交易用 @@ 20,000.00 USD 表示总价为 20,000 美元

2017-12-12 * "出售 2 个比特币"
Assets:Trade:Positions -2 BTC {100.00 USD} @@ 20,000.00 USD
Assets:Trade:Cash 20,000.00 USD
Income:Trade:PnL -19,800.00 USD

交易的所有各方的总和,包括 -2 BTC {100.00 USD},仍然如往常一样为零。

成本 {100.00 USD} 标签很重要,因为你可能以不同的成本购买了相同的商品。

100 BTC {10.00 USD, 2012-08-08}
10 BTC {100.00 USD, 2014-08-08}

如果你想简化这个过程,可以在开始时设置账户为 FIFO 或 LIFO。FIFO 代表先进先出,而 LIFO 代表后进先出。在美国,国税局使用 FIFO 来计算你的盈亏和税收。

1970-01-01 open Assets:Trade:Positions "FIFO"

然后当你以简写方式出售时,如 -2 BTC {},beancount 将自动应用 FIFO 策略,出售最旧的商品。

Beancount.io

Beancount.io 是一个云服务,用于在文本文件中记录你的财务交易,将其可视化为财务报表(损益表、资产负债表、试算表等),并帮助你过上更好的财务生活。 立即注册 - 目前处于促销期且免费!

References:Want to keep learning more?