From e57d6374d4fa45e0c69ff1c601f4bac97ed8a2a8 Mon Sep 17 00:00:00 2001 From: James Coliz Date: Mon, 1 Jun 2020 17:31:44 -0700 Subject: [PATCH 01/11] Add question-circle buttons where advanced help topics will be presented. --- index.html | 34 ++++++++++++++++++++++++++-------- 1 file changed, 26 insertions(+), 8 deletions(-) diff --git a/index.html b/index.html index 616d4c8..ddd0167 100644 --- a/index.html +++ b/index.html @@ -487,10 +487,18 @@

The Crowdsourced FIRE Simulator (cFIREsim) - Open Source
@@ -576,13 +584,23 @@

The Crowdsourced FIRE Simulator (cFIREsim) - Open Source Initial Spending amount must be a positive number.
- +
+ +
+ +

that given year, your spending rate would be adjusted to 0.0572 * 0.5 + .01 = 0.0386 (or 3.86% withdrawal rate). So if your portfolio happened to be $1M at the time, you'd withdraw $38,600. - - - - - - - \ No newline at end of file + \ No newline at end of file diff --git a/js/cFIREsimOpen.js b/js/cFIREsimOpen.js index edb96d1..d92b1ba 100644 --- a/js/cFIREsimOpen.js +++ b/js/cFIREsimOpen.js @@ -83,11 +83,8 @@ $(document).ready(function() { //Open the Withdrawal help input $('#withdrawalHelpBtn').click(function(e) { - $('.modal-body').load('help/withdrawal.html',function(){ - $('#withdrawalHelpPopup').modal({show:true}); - }); - }); - + $('#withdrawalHelpPopup').modal('show').find('.modal-body').load('/help/withdrawal.html'); + }); }); var Simulation = { From eb587da7616dc9d769fcd45486b8e37d50ea2696 Mon Sep 17 00:00:00 2001 From: James Coliz Date: Tue, 2 Jun 2020 15:56:19 -0700 Subject: [PATCH 04/11] Added help for rebalance --- help/rebalance.html | 17 +++++++++++++++++ index.html | 20 ++++++++++++++++++-- js/cFIREsimOpen.js | 5 +++++ 3 files changed, 40 insertions(+), 2 deletions(-) create mode 100644 help/rebalance.html diff --git a/help/rebalance.html b/help/rebalance.html new file mode 100644 index 0000000..b8db2b7 --- /dev/null +++ b/help/rebalance.html @@ -0,0 +1,17 @@ +Annual Rebalancing Strategy: These are a selection of strategies that can be used to adjust the allocation over +time. There are three options available, + \ No newline at end of file diff --git a/index.html b/index.html index d285357..6c2f52f 100644 --- a/index.html +++ b/index.html @@ -492,7 +492,7 @@

The Crowdsourced FIRE Simulator (cFIREsim) - Open Source ng-model="data.portfolio.rebalanceAnnually" ng-change="refreshRebalanceAnnuallyOptions()" ng-options="rebalanceAnnuallyOptions.value as rebalanceAnnuallyOptions.text for rebalanceAnnuallyOptions in rebalanceAnnuallyOptionsTypes"> - +

+ + + + + + - - @@ -593,10 +590,7 @@

The Crowdsourced FIRE Simulator (cFIREsim) - Open Source ng-change="refreshSpendingForm()" ng-options="spendingPlan.value as spendingPlan.text for spendingPlan in spendingPlanTypes"> From 2d1ee7fdf4515d181fe8d801d970cbe7b3566b8d Mon Sep 17 00:00:00 2001 From: James Coliz Date: Thu, 4 Jun 2020 11:35:16 -0700 Subject: [PATCH 07/11] Replace the title of help dialog with name of help topic --- help/rebalance.html | 1 - help/withdrawal.html | 2 -- index.html | 4 ++-- js/cFIREsimOpen.js | 2 ++ 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/help/rebalance.html b/help/rebalance.html index 77f4de5..ed0c542 100644 --- a/help/rebalance.html +++ b/help/rebalance.html @@ -1,4 +1,3 @@ -

Annual Rebalancing Strategy

These are a selection of strategies that can be used to adjust the allocation over time.

    diff --git a/help/withdrawal.html b/help/withdrawal.html index 42d5416..fb08f05 100644 --- a/help/withdrawal.html +++ b/help/withdrawal.html @@ -1,5 +1,3 @@ -

    Withdrawal Strategy

    -

    There are MANY withdrawal strategies out there, and cFIREsim attempts to capture just a few of the more relevant ones. If you have a suggestion for a withdrawal strategy that should be implemented as a cFIREsim Spending Plan please The Crowdsourced FIRE Simulator (cFIREsim) - Open Source ng-model="data.portfolio.rebalanceAnnually" ng-change="refreshRebalanceAnnuallyOptions()" ng-options="rebalanceAnnuallyOptions.value as rebalanceAnnuallyOptions.text for rebalanceAnnuallyOptions in rebalanceAnnuallyOptionsTypes"> - @@ -589,7 +589,7 @@

    The Crowdsourced FIRE Simulator (cFIREsim) - Open Source ng-model="data.spending.method" ng-change="refreshSpendingForm()" ng-options="spendingPlan.value as spendingPlan.text for spendingPlan in spendingPlanTypes"> - diff --git a/js/cFIREsimOpen.js b/js/cFIREsimOpen.js index 54ad833..7fad1d6 100644 --- a/js/cFIREsimOpen.js +++ b/js/cFIREsimOpen.js @@ -84,7 +84,9 @@ $(document).ready(function() { //Open the help popul $('.btn-help').click(function(e) { var dataURL = $(this).attr('data-href'); + var dataTitle = $(this).attr('data-title'); $('#helpPopup').modal('show').find('.modal-body').load(dataURL); + $('#helpPopup').find('.modal-title').text(dataTitle); }); }); From 906ff7165ef3cd007a0b40d8683e9c1be3b4ea90 Mon Sep 17 00:00:00 2001 From: James Coliz Date: Thu, 4 Jun 2020 15:32:48 -0700 Subject: [PATCH 08/11] Fix wording errors in help --- help/withdrawal.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/help/withdrawal.html b/help/withdrawal.html index fb08f05..32eb12b 100644 --- a/help/withdrawal.html +++ b/help/withdrawal.html @@ -1,8 +1,8 @@

    There are MANY withdrawal strategies out there, and - cFIREsim attempts to capture just a few of the more relevant ones. If you have a suggestion for - a withdrawal strategy that should be implemented as a cFIREsim Spending Plan please open an issue - on GitHub visit the forums and post your idea.

    + on GitHub and describe your idea.

    • Inflation Adjusted: This increases your spending each year by the amount of inflation indicated in the Inflation Assumptions section on the sidebar. This means that your From cf575318f6102d1ffcd5f06c6a6e8fb8b3fd6466 Mon Sep 17 00:00:00 2001 From: James Coliz Date: Wed, 3 Jun 2020 12:16:59 -0700 Subject: [PATCH 09/11] Basic getting started panel w/ text from FAQ --- index.html | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/index.html b/index.html index 07b860c..107c3d3 100644 --- a/index.html +++ b/index.html @@ -268,6 +268,33 @@

      The Crowdsourced FIRE Simulator (cFIREsim) - Open Source + +
      +
      +
      +
      + Getting Started +
      +
      +

      If the market does no worse than the great depression, 1970's stagflation, or the dotcom bust, will my money last in retirement?

      +

      The math behind retirement: The simple question of "Will my money last in retirement?" is rife with complications. Do you have a good handle on what your expenses are? What sort of investments do you have? How long might you live? Do you have any large one-time expenses in the future? What happens if you retire during a major market downturn? What happens if you retire in the worst market downturn in history?

      +

      Retirement advisors and various financial websites will often give you the most overused "Rule of thumb" in the financial world. The "4% rule", derived from the Trinity Study, states that if you have a retirement period of 30 years, you can safely withdraw 4% of your portfolio in year 1 of retirement and continually adjust that for inflation, without fear of running out of money. Critics of this study say that the financial world is a much different place than it was in the past, and that we should adjust our thinking on how much we should withdraw in retirement.

      +

      How do I know if my portfolio will last? At it's most basic level, cFIREsim uses historical stock/bond/gold/inflation data from 1871 to present, and calculates how your portfolio would have fared throughout history. If you enter a 30 year simulation period, it will run your data for every 30yr period in history. Example: cFIREsim will figure out your portfolio value, if you would have theoretically retired for the period of 1871-1900, then for the period of 1872-1901, 1873-1902, etc. It will take all of your inputs and determine whether or not the portfolio "failed" (failure is defined as going below $0 at any given point). What does this tell me? If cFIREsim says that your portfolio survived 95% of the simulation cycles, it means that if the market does no worse than the worst years in recorded stock market history, your portfolio will survive.

      +

      What can cFIREsim do? At it's core, you can enter information in the a few simple inputs and return the basic simulation. At it's most complicated, it can determine your portfolio success based on 80 individual portfolio adjustments, multiple types of inflation, multiple types of market returns, and graphically show you the results. There are many options to choose from outside of the "Basic Inputs". You can find information for each section within this FAQ.

      +

      The 4 most basic inputs that are required in cFIREsim are: +

        +
      • Retirement Year: The year in which you begin withdrawing money from retirement investments. This can be the current year, or any year in the future.
      • +
      • Retirement End Year: This is the end year for the simulation. Set this to be in line with your life expectancy estiamtes.
      • +
      • Portfolio Amount: The total amount of investable assets you own currently (including both tax-deferred and post-tax amounts). cFIREsim does not distinguish between different taxed accounts. It is suggested that you take into account taxes when you choose your yearly spending amount. If you'd like to accurately choose a withdrawal strategy based on what is most tax efficient, consider using www.i-orp.com.
      • +
      • Yearly Spending: This is your total yearly expenses. It is suggested that you consider this a gross income amount, and account for taxes being taken out according to where your portfolio funds reside. (If the majority of your funds are tax-deferred, and you think you'll be in the 25% tax bracket in retirement, include an amount 25% more than you need to live on)
      • +
      +

      +

      After entering those 4 numbers, hitting the "Run Simulation" button will provide the output chart and graph. The very first field on the output chart is "Success Rate". It will say something like "Failed 8 times out of 115 cycles, for a 93.04% success rate" which means that if you chose the default settings of 30 years to model, it simulated you specific retirement scenario in 115 different 30yr periods. Of those 115 cycles, there were 8 times where your portfolio got to $0 before the end of the simulation. That is considered a "failure". Whether or not a 93.04% success rate is good enough for you is an entirely personal choice.

      +
      +
      +
      +
      +
      From 34b0dc44afde9f00cedd3e3e77d82309d5b33eea Mon Sep 17 00:00:00 2001 From: James Coliz Date: Wed, 3 Jun 2020 13:29:45 -0700 Subject: [PATCH 10/11] First draft of getting started text --- index.html | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/index.html b/index.html index 107c3d3..1cadcd7 100644 --- a/index.html +++ b/index.html @@ -276,20 +276,19 @@

      The Crowdsourced FIRE Simulator (cFIREsim) - Open Source Getting Started

      -

      If the market does no worse than the great depression, 1970's stagflation, or the dotcom bust, will my money last in retirement?

      -

      The math behind retirement: The simple question of "Will my money last in retirement?" is rife with complications. Do you have a good handle on what your expenses are? What sort of investments do you have? How long might you live? Do you have any large one-time expenses in the future? What happens if you retire during a major market downturn? What happens if you retire in the worst market downturn in history?

      -

      Retirement advisors and various financial websites will often give you the most overused "Rule of thumb" in the financial world. The "4% rule", derived from the Trinity Study, states that if you have a retirement period of 30 years, you can safely withdraw 4% of your portfolio in year 1 of retirement and continually adjust that for inflation, without fear of running out of money. Critics of this study say that the financial world is a much different place than it was in the past, and that we should adjust our thinking on how much we should withdraw in retirement.

      -

      How do I know if my portfolio will last? At it's most basic level, cFIREsim uses historical stock/bond/gold/inflation data from 1871 to present, and calculates how your portfolio would have fared throughout history. If you enter a 30 year simulation period, it will run your data for every 30yr period in history. Example: cFIREsim will figure out your portfolio value, if you would have theoretically retired for the period of 1871-1900, then for the period of 1872-1901, 1873-1902, etc. It will take all of your inputs and determine whether or not the portfolio "failed" (failure is defined as going below $0 at any given point). What does this tell me? If cFIREsim says that your portfolio survived 95% of the simulation cycles, it means that if the market does no worse than the worst years in recorded stock market history, your portfolio will survive.

      -

      What can cFIREsim do? At it's core, you can enter information in the a few simple inputs and return the basic simulation. At it's most complicated, it can determine your portfolio success based on 80 individual portfolio adjustments, multiple types of inflation, multiple types of market returns, and graphically show you the results. There are many options to choose from outside of the "Basic Inputs". You can find information for each section within this FAQ.

      -

      The 4 most basic inputs that are required in cFIREsim are: +

      Welcome to cFIREsim!

      +

      cFIREsim is a simulator which tells you if you're ready for FIRE. It uses historical market data from 1871 to present to calculate how your portfolio would have fared throughout history. If the market does no worse than the great depression, 1970's stagflation, or the dotcom bust, will your money last in retirement?

      +

      Enter a few simple inputs to find out!

        -
      • Retirement Year: The year in which you begin withdrawing money from retirement investments. This can be the current year, or any year in the future.
      • -
      • Retirement End Year: This is the end year for the simulation. Set this to be in line with your life expectancy estiamtes.
      • -
      • Portfolio Amount: The total amount of investable assets you own currently (including both tax-deferred and post-tax amounts). cFIREsim does not distinguish between different taxed accounts. It is suggested that you take into account taxes when you choose your yearly spending amount. If you'd like to accurately choose a withdrawal strategy based on what is most tax efficient, consider using www.i-orp.com.
      • -
      • Yearly Spending: This is your total yearly expenses. It is suggested that you consider this a gross income amount, and account for taxes being taken out according to where your portfolio funds reside. (If the majority of your funds are tax-deferred, and you think you'll be in the 25% tax bracket in retirement, include an amount 25% more than you need to live on)
      • +
      • Retirement Year: When will you start withdrawing money from your retirement investments?
      • +
      • Retirement End Year: How long will you live?
      • +
      • Portfolio Amount: How much do you own currently?
      • +
      • Yearly Spending: How much do you expect to withdraw every year?

      -

      After entering those 4 numbers, hitting the "Run Simulation" button will provide the output chart and graph. The very first field on the output chart is "Success Rate". It will say something like "Failed 8 times out of 115 cycles, for a 93.04% success rate" which means that if you chose the default settings of 30 years to model, it simulated you specific retirement scenario in 115 different 30yr periods. Of those 115 cycles, there were 8 times where your portfolio got to $0 before the end of the simulation. That is considered a "failure". Whether or not a 93.04% success rate is good enough for you is an entirely personal choice.

      +

      Hit the "Run Simulation" button, and enjoy your personalized output chart and graph!

      +

      Pay particular attention to your "Success Rate". This tells you how many simulations your portfolio survived, versus how many times it ran out.

      +

      Ready for more? cFIREsim can determine your portfolio success based on 80 individual variables, multiple types of inflation, multiple types of market returns, and graphically show you the results. Look for help topics along the way to learn more.

      From 33f6df3b58d1732ba78d7a3689f4a182977a9605 Mon Sep 17 00:00:00 2001 From: James Coliz Date: Tue, 2 Jun 2020 16:43:56 -0700 Subject: [PATCH 11/11] Added tooltips for everything from the FAQ --- index.html | 22 +++++++++++----------- js/cFIREsimOpen.js | 5 +++++ 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/index.html b/index.html index 1cadcd7..2d8949b 100644 --- a/index.html +++ b/index.html @@ -306,8 +306,8 @@

      Welcome to cFIREsim!

      Retirement Start must be >= Simulation Start. Retirement Start must be before Retirement End. - - + +

      Pre-retirement length = {{ data.retirementStartYear - data.simulationStartYear }} years.

      Retirement length = {{ data.retirementEndYear - data.retirementStartYear }} years.

      Total simulation length = {{ data.retirementEndYear - data.simulationStartYear }} years.

      @@ -431,17 +431,17 @@

      Welcome to cFIREsim!

      Error: Portfolio must be a positive number. -