Comments (3)
The 5 steps has been done. Right now, however, the future testing is done on 1000 scenarios, which is done in a cvxpy enviroment, that seeks to minimize costs of rebalancing. The issue with this approach is that it takes approximately 10 minutes to run the future analysis test for each risk level, which is very time consuming, and doesn't work well, if it has to be implemented in the investment funnel page for dynamic use.
from investment-funnel.
I don't understand why you would need 10 years of data to estimate a covariance matrix. This should be done in a moving manner, e.g. as discussed in the paper by Johanson, Boyd et al. Please don't estimate a matrix over an interval and then use it to run portfolio optimization over the same interval. Your results will look amazing but you have a forward looking bias
from investment-funnel.
Hi @tschm, thank you for your comment. You are right, that estimating a matrix over an interval and then use it to run portfolio optimization over the same interval would be bad idea. The idea here is different, I just described it poorly.
The idea is to estimate covariance matrix based on 10 years of data (but should be configurable over frontend) and then just test sensitivity of the (optimal, for different levels of risk targets) portfolios to different possible future returns.
The second step (more advanced and not in the scope yet) then would be to estimate the covariance matrix on the test dataset and backtest it for different (out of the train sample) dataset. For "lifecycle" backtest, where we would like to change risk levels over time periods, we would wish to have much more data and therefore also task "Solve our survivorship bias" is in the backlog.
Let's discuss it @mikkelbechmogensen.
from investment-funnel.
Related Issues (20)
- Create frontend of the lifecycle page
- Connect lifecycle method with page frontend HOT 1
- Visualise the future testing results from lifecycle function with Plotly
- How do we avoid systematic bias in the construction of the optimal risk budget allocations? HOT 3
- Address the warnings left by the Github actions HOT 3
- Code cleaning and speed up
- Final year as an input HOT 1
- Risk classes as an input HOT 1
- Make distribution graph and glide path graph much nicer
- Include glide path graph in the output
- Dynamic glidepaths: Choose current risk appetite and make dynamic code that proposed XXX different strategies of reducing risk during your investment horizon. Add randomness??? HOT 1
- Glide path image output to the frontend HOT 1
- Make a dynamic feature in the code that calculates the withdrawal list with withdrawals for each year based on the selected total withdrawal amount in the funnel. HOT 1
- Portfolio value, withdraws and initial risk appetite as an input
- Investigate and optimize code speed
- Lifecycle code clean-up
- Final frontend touch for better readability of lifecycle graphs
- Let's move to semantic versioning
- Change to Clarabel solver
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from investment-funnel.