Personal Finance Projector - plot how your account balance will develop in the future
您最多能選擇 25 個主題 主題必須以字母或數字為開頭,可包含連接號「-」且最長為 35 個字元。
Ondřej Hruška fa9a327591
Create LICENSE
8 年前
profin Initial code import 8 年前
.gitignore Initial code import 8 年前
LICENSE Create LICENSE 8 年前
README.md Initial code import 8 年前
example_betty.py Initial code import 8 年前
example_bob.py Initial code import 8 年前

README.md

ProFin - Personal Finance Projector

                         __
      o                 /' ) 
                      /'   (                          ,
                  __/' PRO )                        .' `;
   o      _.-~~~~'          ``---..__             .'   ;
     _.--'   b)                      ``--...____.'   .'
    (     _.      )).      `-._                     <
     `vvvvvvv-)-.....___.-     `-.         __...--'-.'.
       `^^^^^'-------.....`-.___.'----... .'         `.;
                                  jgs    `-`           `

ProFin is a python module for projecting the balance of a personal savings account over a future period.

The output can be used to visualise the balance development when planning some big purchase or a change of the living situation, such as buying a flat or a car, getting a new job with possible months of no income, etc.

Please note the script is intended only for orientation and there may be minor inaccuracies or bugs (please report!)

Supported Features

Financial Operations & Schemes

  • Once-off expenses and income
  • Recurrent monthly payments / income at a fixed date
  • Monthly payments with a total expense cap
  • Skipping a month in monthly payments / income
  • Spread monthly expenses (e.g. food cost) - distributed over all days in a month
  • Simple loan (borrowing money from a friend) with back-payments
  • Setting initial or correction balance

Functions

  • Setting up a financial situation with changes at arbitrary dates
  • Simulating account balance with day granularity
  • Plotting results using PyPlot

Dependencies

The script uses NumPy, MatPlotLib and Pandas for plotting. This may be improved in a future version (in particular Pandas could be replaced).

If plotting is not needed and the dependencies are not available (e.g. some old Debian), remove their imports and comment out the graph() function

Usage

See the example files for an example of usage. (The examples are silly and not very representative, but they show the API well). Additionally the code is documented with doc comments.