Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/croketillo/compoundercalc
Compound interest calculator python module
https://github.com/croketillo/compoundercalc
compound compound-interest compound-interest-calculator
Last synced: about 1 month ago
JSON representation
Compound interest calculator python module
- Host: GitHub
- URL: https://github.com/croketillo/compoundercalc
- Owner: croketillo
- License: gpl-3.0
- Created: 2024-06-28T18:12:07.000Z (6 months ago)
- Default Branch: master
- Last Pushed: 2024-06-28T20:44:25.000Z (6 months ago)
- Last Synced: 2024-11-06T19:12:26.406Z (about 2 months ago)
- Topics: compound, compound-interest, compound-interest-calculator
- Language: Python
- Homepage:
- Size: 17.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Compound Interest Calculator
![PyPI - Downloads](https://img.shields.io/pypi/dm/compoundercalc?color=%2360EE59) ![Pepy Total Downlods](https://img.shields.io/pepy/dt/compoundercalc)This package provides a `CompoundInterestCalculator` class for calculating compound interest for various financial scenarios.
## Features
- Calculate the total amount with compound interest over a period of time.
- Determine the time needed to reach a target amount with compound interest.
- Calculate the required recurring deposit to reach a target amount.
- Calculate the required interest rate to reach a target amount.## Installation
You can install the package using pip:
```bash
pip install compoundercalc
```## Usage
### Importing the Calculator
```python
from compoundercalc.compounder import CompoundInterestCalculator
```### Creating an Instance
```python
calc = CompoundInterestCalculator(initial_deposit=1000, recurring_deposit=150, num_recurring_per_year=12, interest_rate=0.08)
```### Calculating the Final Amount
```python
result = calc.final_amount(time_years=10)
print(f"The final amount is: {result:.2f}")
```### Determining the Time to Reach a Target Amount
```python
years, months, days = calc.time_goal(target_amount=100000)
print(f"Time needed to reach the goal: {years} years, {months} months, and {days} days")
```### Calculating the Required Recurring Deposit
```python
required_deposit = calc.calc_recurring_deposit(target_amount=100000, total_years=10)
print(f"The required recurring deposit is: {required_deposit:.2f}")
```### Calculating the Required Interest Rate
```python
try:
required_rate = calc.calc_interest_rate(target_amount=100000, total_years=10)
print(f"The required annual interest rate is: {required_rate:.4f}")
except ValueError as e:
print(e)
```## Running Tests
To run the tests, use the following command:
```bash
python -m unittest discover -s test
```## License
This project is licensed under GNU License. See the [LICENSE](LICENSE) file for details.
## Contributing
Contributions are welcome! Please feel free to submit a Pull Request.