A grid based financial analysis tool for generating easy to use dictionary objects.
Project description
Parchment
A grid based financial tool for generating easy to use dictionary objects
Usage
import parchments
from datetime import datetime
row_index = (
('Debt', 'dollar', 2),
('Revenue', 'dollar', 2),
('Ratio', 'percentage', 4),
('Days', 'int', 0),
)
period_data = [
200000.00,
30000.00,
0.7500,
22,
]
other_period_data = [
120000.00,
60000.00,
0.5000,
14,
]
my_grid = parchments.Grid(row_index)
my_grid.add_period(datetime(2020, 4, 1), period_data)
my_grid.add_period(datetime(2020, 5, 1), other_period_data)
my_grid.add_period(datetime(2020, 6, 1), period_data)
my_grid.add_period(datetime(2020, 7, 1), other_period_data)
print(my_grid.to_dict())
Output
{
"row_data": {
"Debt": [
{
"actual_number": True,
"period_key": "20200401",
"value_amount": {
"raw": 200000.0,
"clean": 200000.0,
"verbose": "$200,000.00",
"type": "dollar",
"decimals": 2,
},
"growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "$0.00",
"type": "dollar",
"decimals": 2,
},
"growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
"over_growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "$0.00",
"type": "dollar",
"decimals": 2,
},
"over_growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
},
{
"actual_number": True,
"period_key": "20200501",
"value_amount": {
"raw": 120000.0,
"clean": 120000.0,
"verbose": "$120,000.00",
"type": "dollar",
"decimals": 2,
},
"growth_amount": {
"raw": -80000.0,
"clean": -80000.0,
"verbose": "$-80,000.00",
"type": "dollar",
"decimals": 2,
},
"growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
"over_growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "$0.00",
"type": "dollar",
"decimals": 2,
},
"over_growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
},
{
"actual_number": True,
"period_key": "20210401",
"value_amount": {
"raw": 120000.0,
"clean": 120000.0,
"verbose": "$120,000.00",
"type": "dollar",
"decimals": 2,
},
"over_growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "$0.00",
"type": "dollar",
"decimals": 2,
},
"over_growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
"growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "$0.00",
"type": "dollar",
"decimals": 2,
},
"growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
},
{
"actual_number": True,
"period_key": "20210501",
"value_amount": {
"raw": 200000.0,
"clean": 200000.0,
"verbose": "$200,000.00",
"type": "dollar",
"decimals": 2,
},
"over_growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "$0.00",
"type": "dollar",
"decimals": 2,
},
"over_growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
"growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "$0.00",
"type": "dollar",
"decimals": 2,
},
"growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
},
],
"Revenue": [
{
"actual_number": True,
"period_key": "20200401",
"value_amount": {
"raw": 30000.0,
"clean": 30000.0,
"verbose": "$30,000.00",
"type": "dollar",
"decimals": 2,
},
"growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "$0.00",
"type": "dollar",
"decimals": 2,
},
"growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
"over_growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "$0.00",
"type": "dollar",
"decimals": 2,
},
"over_growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
},
{
"actual_number": True,
"period_key": "20200501",
"value_amount": {
"raw": 60000.0,
"clean": 60000.0,
"verbose": "$60,000.00",
"type": "dollar",
"decimals": 2,
},
"growth_amount": {
"raw": 30000.0,
"clean": 30000.0,
"verbose": "$30,000.00",
"type": "dollar",
"decimals": 2,
},
"growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
"over_growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "$0.00",
"type": "dollar",
"decimals": 2,
},
"over_growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
},
{
"actual_number": True,
"period_key": "20210401",
"value_amount": {
"raw": 60000.0,
"clean": 60000.0,
"verbose": "$60,000.00",
"type": "dollar",
"decimals": 2,
},
"over_growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "$0.00",
"type": "dollar",
"decimals": 2,
},
"over_growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
"growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "$0.00",
"type": "dollar",
"decimals": 2,
},
"growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
},
{
"actual_number": True,
"period_key": "20210501",
"value_amount": {
"raw": 30000.0,
"clean": 30000.0,
"verbose": "$30,000.00",
"type": "dollar",
"decimals": 2,
},
"over_growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "$0.00",
"type": "dollar",
"decimals": 2,
},
"over_growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
"growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "$0.00",
"type": "dollar",
"decimals": 2,
},
"growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
},
],
"Ratio": [
{
"actual_number": True,
"period_key": "20200401",
"value_amount": {
"raw": 0.75,
"clean": 0.75,
"verbose": "75.0000%",
"type": "percentage",
"decimals": 2,
},
"growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 2,
},
"growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
"over_growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 2,
},
"over_growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
},
{
"actual_number": True,
"period_key": "20200501",
"value_amount": {
"raw": 0.5,
"clean": 0.5,
"verbose": "50.0000%",
"type": "percentage",
"decimals": 2,
},
"growth_amount": {
"raw": -0.25,
"clean": -0.25,
"verbose": "-25.0000%",
"type": "percentage",
"decimals": 2,
},
"growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
"over_growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 2,
},
"over_growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
},
{
"actual_number": True,
"period_key": "20210401",
"value_amount": {
"raw": 0.5,
"clean": 0.5,
"verbose": "50.0000%",
"type": "percentage",
"decimals": 2,
},
"over_growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 2,
},
"over_growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
"growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 2,
},
"growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
},
{
"actual_number": True,
"period_key": "20210501",
"value_amount": {
"raw": 0.75,
"clean": 0.75,
"verbose": "75.0000%",
"type": "percentage",
"decimals": 2,
},
"over_growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 2,
},
"over_growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
"growth_amount": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 2,
},
"growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
},
],
"Days": [
{
"actual_number": True,
"period_key": "20200401",
"value_amount": {
"raw": 22,
"clean": 22,
"verbose": "22",
"type": "int",
"decimals": 2,
},
"growth_amount": {
"raw": 0,
"clean": 0,
"verbose": "0",
"type": "int",
"decimals": 2,
},
"growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
"over_growth_amount": {
"raw": 0,
"clean": 0,
"verbose": "0",
"type": "int",
"decimals": 2,
},
"over_growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
},
{
"actual_number": True,
"period_key": "20200501",
"value_amount": {
"raw": 14,
"clean": 14,
"verbose": "14",
"type": "int",
"decimals": 2,
},
"growth_amount": {
"raw": -8,
"clean": -8,
"verbose": "-8",
"type": "int",
"decimals": 2,
},
"growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
"over_growth_amount": {
"raw": 0,
"clean": 0,
"verbose": "0",
"type": "int",
"decimals": 2,
},
"over_growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
},
{
"actual_number": True,
"period_key": "20210401",
"value_amount": {
"raw": 14,
"clean": 14,
"verbose": "14",
"type": "int",
"decimals": 2,
},
"over_growth_amount": {
"raw": 0,
"clean": 0,
"verbose": "0",
"type": "int",
"decimals": 2,
},
"over_growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
"growth_amount": {
"raw": 0,
"clean": 0,
"verbose": "0",
"type": "int",
"decimals": 2,
},
"growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
},
{
"actual_number": True,
"period_key": "20210501",
"value_amount": {
"raw": 22,
"clean": 22,
"verbose": "22",
"type": "int",
"decimals": 2,
},
"over_growth_amount": {
"raw": 0,
"clean": 0,
"verbose": "0",
"type": "int",
"decimals": 2,
},
"over_growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
"growth_amount": {
"raw": 0,
"clean": 0,
"verbose": "0",
"type": "int",
"decimals": 2,
},
"growth_percentage": {
"raw": 0.0,
"clean": 0.0,
"verbose": "0.0000%",
"type": "percentage",
"decimals": 4,
},
},
],
},
"column_index": ["20200401", "20200501", "20210401", "20210501"],
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
parchments-0.1.0.tar.gz
(8.0 kB
view hashes)
Built Distribution
parchments-0.1.0-py3-none-any.whl
(10.4 kB
view hashes)
Close
Hashes for parchments-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b130e2b6cdce93f5603f04a90fe1dedee88034057df747d1e9945233faed200b |
|
MD5 | 692c2167c9c62f65fdf97f000cb7ec6d |
|
BLAKE2b-256 | 648fcd88882c7ea3660d3766c78abb9b0ee123fac9490a4cd71f943c11d87972 |