Show HN: Eiten – open-source tool for portfolio optimization
github.com
github.com
My concern is that - like any other portfolio optimization algorithm - blindly optimizing on fundamentals and short term returns will lead to investing in firms who just dump external costs onto people in the present and future; so, screening with sustainability criteria is important to me.
From https://news.ycombinator.com/item?id=19111911 :
> awesome-quant lists a bunch of other tools for algos and superalgos: https://github.com/wilsonfreitas/awesome-quant
I might start implementing some of these but would love for someone else to add a few PRs as well. The code is pretty modular especially if we want to add new strategies.
> pyfolio.tears.create_interesting_times_tear_sheet measures algorithmic trading algorithm performance during "stress events" https://github.com/quantopian/pyfolio/blob/03568e0f328783a6a...
If you have any questions or comments, happy to discuss.
Anyway, do you have a robust methodology for testing this? I’ve seen people make simple mistakes like summing volatilities or using the European options model for US options and dozens of other small issues. It would almost be as large a contribution to come up with a testing suite.
I am at lecture 11 right now (volatility modeling). I guess the best thing I learned was value at risk models and how companies like Morgan Stanley use historical returns, covariance matrices, and monte carlo to estimate their maximum risk. That was fascinating.
Other than that, I dived here and there and found the portfolio optimization lectures to be good. To be honest, all lecture taught by people from the industry are damn good.
As for the strategies, eigen portfolio would be one. I started reading about it and digressed to another blog (https://srome.github.io) that had some excellent resources. From there, I had to read a few more papers to get to MSR. That makes three strategies -> Eigen portfolios, Minimum Variance, and Maximum Sharpe.
The last strategy is using a genetic algo to maximize sharpe ratio. That is a custom implementation as I've quite some experience with GAs.
Happy to talk more about the course and the strategies.
This is not to say I disagree with this or think it's bad, it's probably great. Just please don't invest with until you understand. Then go for it.
I try not to think too hard about things like "I should've held onto those TSLA stocks" because I can't predict the future and the company could easily have crashed instead.
I had one left in TSLA (now 5 because split), I've bought Take Two because I'm confident GTA VI will be ridiculous (again), and I think most right now is in S&P 500 indices because it's a solid long term investment.
I laughed, and couldn’t wait to hear the sob story about how he lost it all years later when the price went to 0. But the day never came, and I never forgot.
The guy must have cashed out sometime shortly after Bitcoin hit his peak, and now posts about his “riches and bitches”, I’m talking fast cars, big houses with long hallways, vacations around the world with exotic women under his arm and watches as big as your fist. Scroll through his feed long enough and your bound to catch a selfie with a middle finger aimed straight at the camera. He still gives seminars about investing in cryptocurrencies and did a few angel investments in some startups that went who knows where.
Was it wisdom, or pure luck? There’s some element of luck probably, but substantial gains don’t tend to last that long if you only have luck without wisdom.
And I doubt you would get the same success as investing in Bitcoin at Vegas.
Can anyone more knowledgeable give us some advice on how to approach this?
I am currently learning investing/trading, but not certain about how to use tools like this.
How do I make sure I understand what I'm getting myself into? or is this for finance oriented quants?
All you need is a single command to use Eiten while for most of the other repos, they require a user to code just a little bit. The goal of Eiten was to make it as easy as possible for newbies to develop portfolios, test them, and invest in them.
Hope this answers the question.
As for the other question, the weights are just proportions of your money that you should put in each stock. If a weight is negative, that means just short with that proportion. You can simply normalize the weights to sum up to one if it's harder to read them without them being normalized.
Let me know if you have any other questions. Happy to answer.
Happy to talk more on this.
As for realtime data, this can easily work with real time data as well with some small adjustments.