![]() |
Freethought & Rationalism ArchiveThe archives are read only. |
![]() |
#1 |
Veteran Member
Join Date: May 2004
Location: At home
Posts: 2,074
|
![]()
I was getting tired of seeing bunch of hypothetical arguments about how much better Social Security is than allowing workers to invest on their own. Therefore I wrote a program to investigate the matter with cold, hard numbers. There are no emotional arguments here, the numbers tell everything.
The mathematical model takes the following variables: - Starting funds, if any (Usually set to zero.) - Starting salary - Number of years worked - Average salary increase (net value, inflation included) - Percentage of gross salary invested - Company contribution, if any - Average yield of investment - Number of losses during the lifetime of investment - Percentage of portfolio lost each time - Yield of the portfolio at retirement With these inputs we can get very revealing results. In most instances we shall set the percenage of investment to the actual payroll tax value, 7.65% for someone who is employed. Poor people presumably cannot afford more than that. First, someone who is extremely poor: The 10,000 annual salary at the beginning of the employment is actually lower than the minimum wage. The average yearly raise is set to 1%, ridiculously low. The average yield is set to 6%, a very low estimate. Such a small yield comes from a very conservative investment type, so we can safely assume that there is no loss involved. Government bonds, mutual funds with heavy emphasis on utility comapnies, Cocal Cola, Nabisco etc. are examples of such investment. Code:
Starting value, if any: 0.00 Starting salary: 10,000.00 (833.33 monthly) Ending salary: 14,741.23 (1,228.44 monthly) Number of years worked: 40 Yearly raise of salary (%): 1.00 Percent of salary invested: 7.65 Company contribution: 0.00 Investment portfolio yield: 6.00 Chance of loss (yearly): 0.00 Pecent of portfolio lost: 0.00 Retirement interest of portfolio: 6.00 Results ---------------------------- Lifetime earnings: 488,863.73 Lifetime invested: 37,398.08 Company matching: 0,000.00 Amount at retirement: 144,085.52 Monthly income at retirement: 720.43 This is much better than a Social Security check of a few hundred dollars. I don't know how much exactly someone recieves whose income at the age of retirement is under 15,000 dollars. The next example will be the same starting conditions, but we shall assume a little bit more aggressive investment portfolio. The more aggressive the investment is, the higher the chance of periodic setbacks, so we shall assume that twice during the life of the investment there will be a loss of 20%. This means that 20% of the current portfolio is lost: Code:
Starting value, if any: 0.00 Starting salary: 10,000.00 (833.33 monthly) Ending salary: 14,741.23 (1,228.44 monthly) Number of years worked: 40 Yearly raise of salary (%): 1.00 Percent of salary invested: 7.65 Company contribution: 0.00 Investment portfolio yield: 10.00 Chance of loss (yearly): 2.00 Pecent of portfolio lost: 20.00 Retirement interest of portfolio: 6.00 Results ---------------------------- Lifetime earnings: 488,863.73 Lifetime invested: 37,398.08 Company matching: 0,000.00 Amount at retirement: 303,778.41 Monthly income at retirement: 1,518.89 There were losses 2 times: In year 14 5,570.16 was lost. In year 28 23,626.24 was lost. In the next example we shall go little higher, the person in question now works for a company which offers a 401K plan with matching contributions. Code:
Starting value, if any: 0.00 Starting salary: 10,000.00 (833.33 monthly) Ending salary: 14,741.23 (1,228.44 monthly) Number of years worked: 40 Yearly raise of salary (%): 1.00 Percent of salary invested: 7.65 Company contribution: 3.00 Investment portfolio yield: 10.00 Chance of loss (yearly): 2.00 Pecent of portfolio lost: 20.00 Retirement interest of portfolio: 6.00 Results ---------------------------- Lifetime earnings: 488,863.73 Lifetime invested: 37,398.08 Company matching: 14,665.91 Amount at retirement: 422,907.20 Monthly income at retirement: 2,114.54 There were losses 2 times: In year 14 7,754.54 was lost. In year 28 32,891.43 was lost. All of these examples are about someone whose skills are way below the average, and still with a moderately aggressive investment scheme they can preprare for their retirement. Just for the hell of it, a more realistic scenario for a low middle class person: Code:
Starting value, if any: 0.00 Starting salary: 20,000.00 (1,666.67 monthly) Ending salary: 43,294.90 (3,607.91 monthly) Number of years worked: 40 Yearly raise of salary (%): 2.00 Percent of salary invested: 7.65 Company contribution: 3.00 Investment portfolio yield: 12.00 Chance of loss (yearly): 4.00 Pecent of portfolio lost: 30.00 Retirement interest of portfolio: 6.00 Results ---------------------------- Lifetime earnings: 1,208,039.66 Lifetime invested: 92,415.03 Company matching: 36,241.19 Amount at retirement: 797,929.90 Monthly income at retirement: 3,989.65 There were losses 4 times: In year 08 10,961.22 was lost. In year 16 30,729.92 was lost. In year 24 68,550.44 was lost. In year 32 139,533.89 was lost. If you want the source code for the program, or the executable itself, I will be happy to email them to you. If you are curious about the results of more input parameters, just post them and I will run the program for you. Have fun with the numbers. That is so cool about them, no need for ideology, no need for emotionalism. Behold the power of compounded interest! |
![]() |
![]() |
#2 | |
Veteran Member
Join Date: Jan 2001
Location: Recluse
Posts: 9,040
|
![]() Quote:
This is much better than something you don't know? How does one make a claim that something is "much better than" a value that the person"doesn't know"? Are all of your calculations like this? Just kidding on the question, kind of, since you explain some of your methodology, but you don't explain it all, so should I assume that there are other things in it that you compare one thing to an unknown thing and make a claim about the relative value? ... On another note, what portion of the 7+ percent goes toward non-retirment items and should therefore be removed from your calculation? On another thread, it looks like the amount of FICA that goes to non-retirement OASI is not trivial. Does this change your determination of the relative rank of the two balances (one of which is unknown to you?) |
|
![]() |
![]() |
#3 | ||
Veteran Member
Join Date: May 2004
Location: At home
Posts: 2,074
|
![]()
You missed the operating word: "exactly"!
Quote:
Quote:
Here is the original calculation redone with 6.2%: Code:
Starting value, if any: 0.00 Starting salary: 10,000.00 (833.33 monthly) Ending salary: 14,741.23 (1,228.44 monthly) Number of years worked: 40 Yearly raise of salary (%): 1.00 Percent of salary invested: 6.20 Company contribution: 0.00 Investment portfolio yield: 6.00 Chance of loss (yearly): 0.00 Pecent of portfolio lost: 0.00 Retirement interest of portfolio: 6.00 Results ---------------------------- Lifetime earnings: 488,863.73 Lifetime invested: 30,309.55 Company matching: 0,000.00 Amount at retirement: 116,775.19 Monthly income at retirement: 583.88 However, this example shows an irrationally low income, with a starting salary under the minimum wage and only 1% increase in the yearly income. I wanted to show that even in such a case, the investment option is better. |
||
![]() |
![]() |
#4 |
Veteran Member
Join Date: May 2004
Location: At home
Posts: 2,074
|
![]()
This is a very simple VB (Visual Basic) code:
Code:
Option Explicit Dim start_amount As Double Dim start_salary As Double Dim num_years As Long Dim num_months As Long Dim yearly_raise As Double Dim percent_invested As Double Dim company_contrbution As Double Dim yearly_interest As Double Dim monthly_interest As Double Dim num_loss As Long Dim percent_of_fund_lost As Double Dim amt_fund_lost As Double Dim annuity_interest As Double ' Private Sub cmd_calc_Click() Dim x As Long Dim y As Long Dim yy As Long Dim amt_lost() As Double Dim year_lost() As Double Dim sum_income As Double Dim sum_inv As Double Dim sum_matching As Double Dim sum_extra As Double Dim str1 As String start_amount = CDbl(txt_value.Text) start_salary = CDbl(txt_salary.Text) num_years = CLng(txt_years.Text) num_months = 12 * num_years yearly_raise = 1 + CDbl(txt_raise.Text) / 100 percent_invested = CDbl(txt_perc_inv.Text) / 100 company_contrbution = CDbl(txt_comp_contr.Text) / 100 yearly_interest = CDbl(txt_yearly_int.Text) / 100 monthly_interest = 1 + yearly_interest / 12 num_loss = CLng(txt_loss.Text) If num_loss > 5 Then num_loss = 5 txt_loss.Text = "5" txt_loss.Refresh End If percent_of_fund_lost = CDbl(txt_perc_lost.Text) / 100 annuity_interest = CDbl(txt_annuity.Text) / 1200 ReDim yearly_income(num_years) ReDim monthly_income(num_months) ReDim monthly_invest(num_months) ReDim matching_portion(num_months) ReDim Preserve amt_lost(num_loss + 1) ReDim Preserve year_lost(num_loss + 1) If num_loss > 0 Then Select Case num_loss Case 1: year_lost(0) = 20 Case 2: year_lost(0) = 14 year_lost(1) = 28 Case 3: year_lost(0) = 10 year_lost(1) = 20 year_lost(2) = 30 Case 4: year_lost(0) = 8 year_lost(1) = 16 year_lost(2) = 24 year_lost(3) = 32 Case 5: year_lost(0) = 7 year_lost(1) = 14 year_lost(2) = 21 year_lost(3) = 28 year_lost(4) = 35 End Select End If lst1.Clear x = 0 yearly_income(x) = start_salary lst1.AddItem "Year " & Format(x + 1, "00") & " " & Format(yearly_income(x), "0.00") For x = 1 To num_years - 1 yearly_income(x) = yearly_income(x - 1) * yearly_raise lst1.AddItem "Year " & Format(x + 1, "00") & " " & Format(yearly_income(x), "0.00") Next x lst1.AddItem String(20, "-") sum_income = 0 sum_inv = 0 sum_extra = start_amount For x = 0 To num_years - 1 For y = 0 To 11 monthly_income(x * 12 + y) = yearly_income(x) / 12 monthly_invest(x * 12 + y) = monthly_income(x * 12 + y) * percent_invested matching_portion(x * 12 + y) = monthly_income(x * 12 + y) * company_contrbution sum_income = sum_income + monthly_income(x * 12 + y) sum_inv = sum_inv + monthly_invest(x * 12 + y) sum_matching = sum_matching + matching_portion(x * 12 + y) sum_extra = sum_extra * monthly_interest + monthly_invest(x * 12 + y) + matching_portion(x * 12 + y) lst1.AddItem "Y/" & Format(x + 1, "00") & " M/" & Format(y + 1, "00") & " " & Format(monthly_income(x * 12 + y), "#,##0.00") & " " & Format(monthly_invest(x * 12 + y), "#,##0.00") & " " & Format(matching_portion(x * 12 + y), "0.00") & " " & Format(sum_extra, "#,##0.00") Next y If num_loss > 0 Then For yy = 0 To num_loss - 1 If x = year_lost(yy) Then amt_lost(yy) = sum_extra * percent_of_fund_lost lst1.AddItem String(40, "-") lst1.AddItem "Loss occurred: " & Format(sum_extra * percent_of_fund_lost, "#,##0.00") & " is lost" sum_extra = sum_extra * (1 - percent_of_fund_lost) End If Next yy End If lst1.AddItem String(50, "-") Next x Label9.Caption = Format(sum_inv, "#,##0,000.00") Label18.Caption = Format(sum_income, "#,##0,000.00") Label11.Caption = Format(sum_extra, "#,##0.00") Label15.Caption = Format(sum_extra * annuity_interest, "#,##0.00") If txt_save_file.Text <> "" Then Open App.Path & "\" & txt_save_file.Text For Output As #1 Print #1, "Starting value, if any: " & Format(start_amount, "#,##0.00") Print #1, "Starting salary: " & Format(start_salary, "#,##0.00") & " (" & Format(start_salary / 12, "#,##0.00") & " monthly)" Print #1, "Ending salary: " & Format(yearly_income(num_years - 1), "#,##0.00") & " (" & Format(yearly_income(num_years - 1) / 12, "#,##0.00") & " monthly)" Print #1, "Number of years worked: " & Format(num_years, "0") Print #1, "Yearly raise of salary (%): " & Format(txt_raise.Text, "#,##0.00") Print #1, "Percent of salary invested: " & Format(txt_perc_inv.Text, "#,##0.00") Print #1, "Company contribution: " & Format(txt_comp_contr.Text, "#,##0.00") Print #1, "Investment portfolio yield: " & Format(txt_yearly_int.Text, "#,##0.00") Print #1, "Chance of loss (yearly): " & Format(txt_loss.Text, "#,##0.00") Print #1, "Pecent of portfolio lost: " & Format(txt_perc_lost.Text, "#,##0.00") Print #1, "Retirement interest of portfolio: " & Format(txt_annuity.Text, "#,##0.00") Print #1, "Results ----------------------------" Print #1, "Lifetime earnings: " & Format(sum_income, "#,##0,000.00") Print #1, "Lifetime invested: " & Format(sum_inv, "#,##0,000.00") Print #1, "Company matching: " & Format(sum_matching, "#,##0,000.00") Print #1, "Amount at retirement: " & Format(sum_extra, "#,##0,000.00") Print #1, "Monthly income at retirement: " & Format(sum_extra * annuity_interest, "#,##0.00") If num_loss > 0 Then Print #1, "There were losses " & num_loss & " times:" For x = 0 To num_loss - 1 Print #1, "In year " & Format(year_lost(x), "00") & " " & Format(amt_lost(x), "#,##0.00") & " was lost." Next x End If Close #1 Open App.Path & "\" & txt_save_file.Text For Input As #1 txt_res = "" Do While Not EOF(1) Line Input #1, str1 txt_res = txt_res & str1 & vbCrLf Loop Close #1 End If End Sub Private Sub cmd_exit_Click() End End Sub Private Sub Form_Load() txt_save_file = "res.txt" txt_salary = "10000" txt_years = "40" txt_raise = "1" txt_perc_inv = "7.65" txt_comp_contr = "0" txt_yearly_int = "8" txt_loss = "4" txt_perc_lost = "10" txt_annuity = "4" End Sub |
![]() |
![]() |
#5 |
Banned
Join Date: Dec 2004
Location: CO
Posts: 811
|
![]()
Nice effort.
* warning 'but' monkey * BUT in accounting or programming the saying is: Garbage in, Garbage out. Error: 7.65% Percent of salary invested True value is around double that. Reason: Fundamental economics. If you cannot grasp that, then there is no point going further. The lower value is an EMOTIONAL response. Error: 2 times 20% loss Pecent of portfolio lost This is arbitrary and fallacious. True value is no loss. Market equities average 9.5% over 40 years time. Reason: Proven in many financial journals. Inserting arbitrary losses is an EMOTIONAL response not based in sound economics. Unfortunately, due to copyrights, Google may not be useful. Historical charts are NOT available to general public. There exists a historical chart of Bills Stocks etc. but it is copyrighted. I do not remember the name but it cost $200 for the chart. ![]() Finally, Excel spreadsheet using FV and PV functions is much simpler and more transparent. But great initial try. |
![]() |
![]() |
#6 |
Veteran Member
Join Date: Sep 2003
Location: Peaksville, OH
Posts: 1,678
|
![]()
As I pointed out elsewhere, in the absence of government deductions from one's paycheck the scenario of starting to save for retirement at age 20 is extremely unrealistic. Knock a decade or two off of those scenarios and see what you come up with.
Then add in the cost of disability insurance. If you eliminate Social Security, I presume you are also eliminating Medicare, so you also need to factor in costs for medical care in retirement. And unlike Social Security, personal reirement funds are not untouchable. Many people will dip into their funds for one reason or another and will sometimes be unable to replace them. Oh, and don't forget to throw in a catastrophic investment loss in year 42. ![]() |
![]() |
![]() |
#7 |
Banned
Join Date: Dec 2004
Location: CO
Posts: 811
|
![]()
Also it is missing the Inflation (Tax) Rate. My fuzzy guess is 2% loss per year.
Also over 40 years a salary more than doubles due to lower value of the dollar. The dollar, as a reference, is like a rubber yardsitck, it is always sadly changing & cheapens. Doubling in prices, due to a crappy cheap dollar, occurs every 7 years or decade in general. CRAPPY, LOUSY, STINKING, CHEAP, WORTHLESS Fed Reserve United States garbage Dollar. |
![]() |
![]() |
#8 |
Veteran Member
Join Date: Jan 2001
Location: Recluse
Posts: 9,040
|
![]()
Thanks for the response. That clears things up. A few more questions because I'm neither an economist nor a financial expert.
1. The current system, if I understand correctly, invests in Government bonds. The rate of return on these is often called 3% Is it correct that this is steady, or does it fluctuate? Can you do a calc on 3% instead of 6%? I'm curious if the Soc Sec gives a return "equal to" the purported income. 2. This value you give for income, this is interest? Or is this an annuity that was purchased with the money? If it's interest, as I'm thinking it appears to be, is 6% a reasonable return for an ULTRA CONSERVATIVE investment? Seems like if you're talking about your retirement income, you can no longer afford ups and downs, right? You can't afford to weather a year or two at 2% interest or a loss (what would you eat? principle?). So is 6% representative of an ultra-conservative rock-steady investment? If I'm only geting $600/mo, I can't afford to have it fluctuate or the rent doesn't get paid. 3. Does this interest income ever provide a cost of living increase, the way Social Security does? Or am I stuck on $600/mo for the next 30 years (assuming it doesn't fluctuate and force me to dip into principle) Thanks, I'm pretty new at this. I'm just an engineer. |
![]() |
![]() |
#9 |
Banned
Join Date: Dec 2004
Location: CO
Posts: 811
|
![]()
In other words,
2% loss to Inflation Tax 9.5% per annum increase in Market equitites Overall expected rate = 7.5% per year. (no bonds, no money market) |
![]() |
![]() |
#10 | |||
Veteran Member
Join Date: May 2004
Location: At home
Posts: 2,074
|
![]() Quote:
Code:
Starting value, if any: 0.00 Starting salary: 10,000.00 (833.33 monthly) Ending salary: 14,741.23 (1,228.44 monthly) Number of years worked: 40 Yearly raise of salary (%): 1.00 Percent of salary invested: 6.20 Company contribution: 0.00 Investment portfolio yield: 3.00 Chance of loss (yearly): 0.00 Pecent of portfolio lost: 0.00 Retirement interest of portfolio: 3.00 Results ---------------------------- Lifetime earnings: 488,863.73 Lifetime invested: 30,309.55 Company matching: 0,000.00 Amount at retirement: 56,230.34 Monthly income at retirement: 140.58 Quote:
Quote:
It is very interesting to see more aggressive funds. The results, though prone to have setbacks are are absolutely staggering. And don't forget that people are not satisfied with 1% salary, increase. They will "shop" around to get better income. |
|||
![]() |
Thread Tools | Search this Thread |
|