1 febrer 2025
This commit is contained in:
@@ -28,7 +28,7 @@ def get_last_month_timestamps(date):
|
||||
year = int(date.split("-")[0])
|
||||
d = datetime(year, month, 1)
|
||||
end_date = d - timedelta(days=1)
|
||||
start_date = f"{end_date.year}-{end_date.month}-01"
|
||||
start_date = f"{end_date.year}-{end_date.month:02d}-01"
|
||||
return start_date, end_date.strftime("%Y-%m-%d")
|
||||
|
||||
def get_sum_balances(balances, account_prefix):
|
||||
@@ -94,6 +94,12 @@ def get_solvency_ratio(balances, min):
|
||||
result = round((get_net_worth(balances).number / total_assets.number) * 100, 2)
|
||||
return f"{bcolors.FAIL if result < min else bcolors.OKGREEN}{result} %{bcolors.ENDC}"
|
||||
|
||||
def get_interest_coverage_ratio(gross_monthly_income, debt_payments, mortgage_payments, min):
|
||||
interest = debt_payments.number + mortgage_payments.number
|
||||
interest = interest if interest > 0 else 1
|
||||
result = round(gross_monthly_income / interest, 2)
|
||||
return f"{bcolors.FAIL if result < min else bcolors.OKGREEN}{result}{bcolors.ENDC}"
|
||||
|
||||
def get_max_leveraged_investment(balances):
|
||||
total_assets = Amount.from_string(get_sum_balances(balances, "Assets:"))
|
||||
return Amount(round(total_assets.number * Decimal(0.9), 2), total_assets.currency).to_string()
|
||||
@@ -177,7 +183,7 @@ def print_report(date, balances, expenses, income, debt_payments, mortgage_payme
|
||||
["Savings Ratio", get_savings_ratio(balances, income, savings, 20), "20 %"],
|
||||
["Debt-Service Ratio", get_debt_service_ratio(balances, income, debt_payments, 35), "35 %"],
|
||||
["Non-Mortgage Debt-Service Ratio", get_non_mortgage_debt_service_ratio(balances, income, mortgage_payments, 15), "15 %"],
|
||||
["Solvency Ratio", get_solvency_ratio(balances, 50), "50 %"]
|
||||
["Interest Coverage Ratio", get_interest_coverage_ratio(income, debt_payments, mortgage_payments, 1.5), "1.5"]
|
||||
]))
|
||||
|
||||
def get_balances(entries, options, date):
|
||||
@@ -206,7 +212,7 @@ def get_income(entries, options, date):
|
||||
def get_debt_payments(entries, options, date):
|
||||
# FIX: Agafar nomes els pagaments de deute, enlloc de també les addicions de deute
|
||||
start_date, end_date = get_last_month_timestamps(date)
|
||||
debt_payments_query = f"SELECT convert(sum(position), \"EUR\") as position FROM date <= {end_date} WHERE account ~ 'Liabilities:' AND date >= {start_date}"
|
||||
debt_payments_query = f"SELECT convert(sum(position), \"EUR\") as position FROM date <= {end_date} WHERE account ~ 'Expenses:R4:Interessos' AND date >= {start_date}"
|
||||
mortgage_payments_query = f"SELECT convert(sum(position), \"EUR\") as position FROM date <= {end_date} WHERE account ~ 'Liabilities:Hipoteca:' AND date >= {start_date}"
|
||||
rtypes, rrows_debt = query.run_query(
|
||||
entries, options, debt_payments_query)
|
||||
|
||||
@@ -47,6 +47,7 @@
|
||||
1970-01-01 open Income:Other:Devolucions EUR
|
||||
|
||||
1970-01-01 open Expenses:R4:Comissions EUR
|
||||
1970-01-01 open Expenses:R4:Interessos EUR
|
||||
1970-01-01 open Expenses:Caixabank:Comissions EUR
|
||||
1970-01-01 open Expenses:Taxes:IRPF EUR
|
||||
1970-01-01 open Expenses:Taxes:BeneficisDividends EUR
|
||||
|
||||
@@ -185,16 +185,52 @@
|
||||
2025-01-24 * "Renta 4" "Enviament de diners Renta 4"
|
||||
Assets:Liquid:R4:EUR 1200 EUR
|
||||
Assets:Liquid:Caixabank:Corrent
|
||||
2025-01-25 * "Yummy Sushi" "Dinar sushi"
|
||||
Expenses:MenjarFora 37.80 EUR
|
||||
Assets:Liquid:Caixabank:Corrent
|
||||
2025-01-26 * "Emede" "Sudadera UPC"
|
||||
Expenses:Roba 36.60 EUR
|
||||
Liabilities:Credit:Caixabank:TargetaCredit
|
||||
2025-01-27 * "Renta 4" "COMPRA DE 235 IWVL"
|
||||
Assets:Invest:ETF:IWVL 235 IWVL {42.19 EUR}
|
||||
Expenses:R4:Comissions 15 EUR
|
||||
Assets:Liquid:R4:EUR -1114.11 EUR
|
||||
Liabilities:Credit:Renta4:PolissaCredit
|
||||
2025-01-28 * "Don Zangano" "Esmorzar"
|
||||
Expenses:MenjarFora 5.10 EUR
|
||||
Assets:Liquid:Caixabank:Corrent
|
||||
2025-01-28 * "Plusfresc" "Fruita i aigua"
|
||||
Expenses:Supermercat 2.62 EUR
|
||||
Assets:Liquid:Caixabank:Corrent
|
||||
2025-01-28 * "Passatore" "Dinar"
|
||||
Expenses:MenjarFora 12.50 EUR
|
||||
Assets:Liquid:Caixabank:Corrent
|
||||
2025-01-28 * "Blät" "Cafè"
|
||||
Expenses:MenjarFora 1.55 EUR
|
||||
Assets:Benefits:Edenred:TicketsRestaurant
|
||||
2025-01-28 * "Plusfresc" "Compra de la setmana"
|
||||
Expenses:Supermercat 23.93 EUR
|
||||
Assets:Liquid:Caixabank:Corrent
|
||||
2025-01-28 * "Renta 4" "PAGO ANA LOPEZ-MONIS NOTARIO FRA 22500049-C 01/25"
|
||||
Expenses:R4:Comissions 42.18 EUR
|
||||
Liabilities:Credit:Renta4:PolissaCredit
|
||||
2025-01-29 * "Zurich" "Nòmina Gener 2025"
|
||||
Income:Work:Zurich:Salari -3389.62 EUR
|
||||
Assets:Liquid:Caixabank:Corrent
|
||||
2025-01-30 * "Renta 4" "COMPRA DE 157 XDEQ"
|
||||
Assets:Invest:ETF:XDEQ 157 XDEQ {69.88 EUR}
|
||||
Expenses:R4:Comissions 15 EUR
|
||||
Liabilities:Credit:Renta4:PolissaCredit
|
||||
|
||||
2025-02-01 balance Assets:Liquid:Caixabank:Corrent 9635.25 EUR
|
||||
2025-02-01 balance Assets:Liquid:R4:EUR 1114.11 EUR
|
||||
2025-02-01 balance Assets:Liquid:Caixabank:Corrent 12942.92 EUR
|
||||
2025-02-01 balance Assets:Liquid:R4:EUR 0 EUR
|
||||
2025-02-01 balance Assets:Invest:Fund:Vanguard:EMMK 14.99 VANEMMK
|
||||
2025-02-01 balance Assets:Invest:Fund:Vanguard:GL 707.25 VANGL
|
||||
2025-02-01 balance Assets:Invest:Fund:Vanguard:SMCAP 48.28 VANSMCAP
|
||||
2025-02-01 balance Assets:Invest:ETF:IWVL 141 IWVL
|
||||
2025-02-01 balance Assets:Invest:ETF:IWVL 376 IWVL
|
||||
2025-02-01 balance Assets:Invest:Fixed:R4RF 1518.57004 R4RF
|
||||
2025-02-01 balance Assets:Invest:ETF:XDEQ 70 XDEQ
|
||||
2025-02-01 balance Assets:Benefits:Edenred:TicketsRestaurant 4.60 EUR
|
||||
2025-02-01 balance Assets:Invest:ETF:XDEQ 227 XDEQ
|
||||
2025-02-01 balance Assets:Benefits:Edenred:TicketsRestaurant 3.05 EUR
|
||||
2025-02-01 balance Assets:Benefits:Edenred:TargetaTransport 81.90 EUR
|
||||
2025-02-01 balance Assets:Benefits:DZP:PPEZurich 3003.57 EUR
|
||||
2025-02-01 balance Assets:PersonalProperty:VivendaPrincipal 0 EUR
|
||||
@@ -202,4 +238,5 @@
|
||||
2025-02-01 balance Assets:PersonalProperty:JoiesArtCollecionables 1250 EUR
|
||||
2025-02-01 balance Assets:PersonalProperty:MetallsPreciosos 0 EUR
|
||||
2025-02-01 balance Assets:PersonalProperty:AltresPropietats 0 EUR
|
||||
2025-02-01 balance Liabilities:Credit:Caixabank:TargetaCredit -27.87 EUR
|
||||
2025-02-01 balance Liabilities:Credit:Caixabank:TargetaCredit -64.47 EUR
|
||||
2025-02-01 balance Liabilities:Credit:Renta4:PolissaCredit -19843.88 EUR
|
||||
47
ledger/transactions/2025/02.beancount
Normal file
47
ledger/transactions/2025/02.beancount
Normal file
@@ -0,0 +1,47 @@
|
||||
2025-02-01 balance Assets:Liquid:Caixabank:Corrent 12942.92 EUR
|
||||
2025-02-01 balance Assets:Liquid:R4:EUR 0 EUR
|
||||
2025-02-01 balance Assets:Invest:Fund:Vanguard:EMMK 14.99 VANEMMK
|
||||
2025-02-01 balance Assets:Invest:Fund:Vanguard:GL 707.25 VANGL
|
||||
2025-02-01 balance Assets:Invest:Fund:Vanguard:SMCAP 48.28 VANSMCAP
|
||||
2025-02-01 balance Assets:Invest:ETF:IWVL 376 IWVL
|
||||
2025-02-01 balance Assets:Invest:Fixed:R4RF 1518.57004 R4RF
|
||||
2025-02-01 balance Assets:Invest:ETF:XDEQ 227 XDEQ
|
||||
2025-02-01 balance Assets:Benefits:Edenred:TicketsRestaurant 3.05 EUR
|
||||
2025-02-01 balance Assets:Benefits:Edenred:TargetaTransport 81.90 EUR
|
||||
2025-02-01 balance Assets:Benefits:DZP:PPEZurich 3003.57 EUR
|
||||
2025-02-01 balance Assets:PersonalProperty:VivendaPrincipal 0 EUR
|
||||
2025-02-01 balance Assets:PersonalProperty:Cotxe 10000 EUR
|
||||
2025-02-01 balance Assets:PersonalProperty:JoiesArtCollecionables 1250 EUR
|
||||
2025-02-01 balance Assets:PersonalProperty:MetallsPreciosos 0 EUR
|
||||
2025-02-01 balance Assets:PersonalProperty:AltresPropietats 0 EUR
|
||||
2025-02-01 balance Liabilities:Credit:Caixabank:TargetaCredit -64.47 EUR
|
||||
2025-02-01 balance Liabilities:Credit:Renta4:PolissaCredit -19843.88 EUR
|
||||
|
||||
2025-02-01 * "Caixabank" "Pagament targeta de crèdit"
|
||||
Liabilities:Credit:Caixabank:TargetaCredit 27.87 EUR
|
||||
Assets:Liquid:Caixabank:Corrent
|
||||
2025-02-01 * "Edenred" "Recàrrega tickets restaurant"
|
||||
Assets:Benefits:Edenred:TicketsRestaurant 209.00 EUR
|
||||
Income:Work:Zurich:TicketsRestaurant
|
||||
2025-02-01 * "Edenred" "Recàrrega targeta transport"
|
||||
Assets:Benefits:Edenred:TargetaTransport 35.00 EUR
|
||||
Income:Work:Zurich:TargetaTransport
|
||||
|
||||
2025-03-01 balance Assets:Liquid:Caixabank:Corrent 12915.05 EUR
|
||||
2025-03-01 balance Assets:Liquid:R4:EUR 0 EUR
|
||||
2025-03-01 balance Assets:Invest:Fund:Vanguard:EMMK 14.99 VANEMMK
|
||||
2025-03-01 balance Assets:Invest:Fund:Vanguard:GL 707.25 VANGL
|
||||
2025-03-01 balance Assets:Invest:Fund:Vanguard:SMCAP 48.28 VANSMCAP
|
||||
2025-03-01 balance Assets:Invest:ETF:IWVL 376 IWVL
|
||||
2025-03-01 balance Assets:Invest:Fixed:R4RF 1518.57004 R4RF
|
||||
2025-03-01 balance Assets:Invest:ETF:XDEQ 227 XDEQ
|
||||
2025-03-01 balance Assets:Benefits:Edenred:TicketsRestaurant 212.05 EUR
|
||||
2025-03-01 balance Assets:Benefits:Edenred:TargetaTransport 116.90 EUR
|
||||
2025-03-01 balance Assets:Benefits:DZP:PPEZurich 3003.57 EUR
|
||||
2025-03-01 balance Assets:PersonalProperty:VivendaPrincipal 0 EUR
|
||||
2025-03-01 balance Assets:PersonalProperty:Cotxe 10000 EUR
|
||||
2025-03-01 balance Assets:PersonalProperty:JoiesArtCollecionables 1250 EUR
|
||||
2025-03-01 balance Assets:PersonalProperty:MetallsPreciosos 0 EUR
|
||||
2025-03-01 balance Assets:PersonalProperty:AltresPropietats 0 EUR
|
||||
2025-03-01 balance Liabilities:Credit:Caixabank:TargetaCredit -36.60 EUR
|
||||
2025-03-01 balance Liabilities:Credit:Renta4:PolissaCredit -19843.88 EUR
|
||||
Reference in New Issue
Block a user