Inspiration
The main inspiration behind this project was the ads I would watch on TV when watching the news nearly every day. These ads talk about refinancing and offering refinancing (refi) loans for people looking to refinance their mortgages and loans for their houses. Each ad from a different business would offer different rates for their loans, and I wanted to see if there is a way to utilize the information they provide to find out how much each of their loan offerings would cost for a person looking to refinance their home loan.
What it does
This program will allow a user to find the payment (general time period) of loan given:
- The loan's original value
- The rate of the loan (either as a percent or decimal)
- The number of periods in the loan (Ex. 3 year loan or 30 year loan). The result of the program will be the value/cost of the payment of the loan needed per period and the program will allow the user know if the payment is within their budget based on the maximum value the user entered.
How I built it
1. Found a formula/mathematical model that can be used for the scenario I wished to solve (see inspiration). 2. Dismantled the formula to see what user input variables I would need. 3. Created a function that can hold all that is needed for this program. 4. Encoded those variables as the user inputted into the function. 5. Encoded the formula using the user-inputted variables and assigned a variable to represent the encoded formula. 6. Another feature of this program was to see if the payment was within a person's budget, so I compared the formula's result to the user's max inputted amount using if and elif statements. 7. I set up a line of code outside of the function to run the function, so if someone runs the whole program, the function will actually run. 8. The code will provide a simple sentence with the payment and that sentence can be kept in the way it is (not just giving a number only).
Challenges I ran into
- Obtaining a formula that can be modelled in python and one that could actually apply to what I am trying to do with my project/program.
- Putting in the try and except for the user input portions to make sure the program runs smoothly if a person enters invalid data.
Accomplishments that I am proud of
- Developing the program to run in a concise manner that makes it easy for a person to understand.
- Making it in a relatively brief period of time.
- Making is reasonably compact so that the program is not slow and is reasonably simple to understand for someone experienced in python.
What I learnt
To all intents and purposes, this program was made purely with what I knew already in terms of code, but I learnt more about refinancing and finding what a loan payment will be. As for coding, I learnt how to make a more efficient program to model a specific formula, as some of my previous programs were more inefficient, and due to time limits of this hackathon, I was able to make this project/program more efficient.
What's next for The Loan Payment Calculator
1. Make the program more user friendly with a more formal set up, besides the default set up that my current program is using. 2. See if this program can be modified with a more detailed equation and make this program useful as an application for anyone to access and calculate their loan payments. 3. Finally, I would expand the program so that the user can pick from a variety of financial calculators based on various formulas including the current formula, which results in people being able to calculate various financial measures that cannot be done by this program.
Built With
- google-colaboratory
- python
Log in or sign up for Devpost to join the conversation.