@roadtrippin69 I replicated the same with S&P 500 data:
But, it keeps saying that "BuyAsSoonAsYouHaveCash" is never the best option.
This is from
2015 - 2020: (with percentage_from_all_time_high set to
10 %)
Running strategy: BuyAsSoonAsYouHaveCash
Cash to begin with: 0
Monthly cash increment: 1000
Final holding value: 18437.33691848
Max cash held at one point: 1022.6449706000001
Max cash held buy date: 2019-12-31 00:00:00
Running strategy: BuyOnFallFromAllTimeHigh
Fall Percentage: 10%
Cash to begin with: 0
Monthly cash increment: 1000
Final holding value: 18520.96562358
Max cash held at one point: 2000
Max cash held buy date: 2019-10-09 00:00:00
This is from
1999-2020: (with percentage_from_all_time_high set to
100 %)
Running strategy: BuyAsSoonAsYouHaveCash
Cash to begin with: 0
Monthly cash increment: 1000
Final holding value: 18437.33691848
Max cash held at one point: 1022.6449706000001
Max cash held buy date: 2019-12-31 00:00:00
Running strategy: BuyOnFallFromAllTimeHigh
Fall Percentage: 100%
Cash to begin with: 0
Monthly cash increment: 1000
Final holding value: 22000.0 (# Can you explain this value?)
Max cash held at one point: 0
Max cash held buy date: None
Lowest S&P 500 value: 676.530029
On: 2009-03-09
Highest S&P 500 value: 3257.850098
On: 2020-01-02
(Data is right because it displays the right lowest and highest values as evidenced by the last few lines of output I added.) But, when you set the percentage_from_all_time_high to 100%, it may not be showing the correct final value.