Closed pmaji closed 9 months ago
Link to Dash tutorial here, for reference:
We'll get started on this next @zachvac -- feel free to begin drafting the dash app.py file itself, as I am close to finishing up all the prep code (see post under other issue) and should have the viz locked down shortly.
Pursuant to my comment over on the other issue @zachvac, the visual is now done, the explore.ipynb is fully optimized, and we are good to start on the app. Be sure the virtual env, requirements.txt, etc. is working for you, as discussed, and then we'll start on the app.py!
Kudos to @zachvac for getting the first version of this puppy up and running! I've put a screenshot of the first stage here to track iteration. I am really impressed with how sleek it looks and how it fast it runs off the rip!
To log my thoughts, there are a few things I'm pondering (and I know @zachvac mentioned he had a few areas for improvement he wanted to work on tomorrow as well).
This is looking SWEET!
I put this comment over under my most recent pull request as well @zachvac, but thought I would put the update here as well if it's more convenient to get to (still not exactly sure when / if you get notifications on here).
In my must recent PR I did include the addition of my version of the app.py to master, even though it's not in a great place right now. Feel free to ignore my app.py, and keep working out of your own (the one I added is just your version that I copy-pasted locally last night, with the one difference being that I swapped out the old yahoo finance package name for yfinance. We'll just overwrite the app.py in master whenever you make your improvements. What I wanted to take care of was the requirements.txt, which is now good to go! So feel free to re-pull / merge master to ensure you're using the right package versions. I had missed a few.
Also, if you are using Jupyter lab or noteboks, you'll want to have a look at the mini section I added to the README now that describes how to ensure that when you open a notebook or lab session you're calling the session using only the packages / versions from the virtual environment. I've pasted that below as well.
To get started working on this project using jupyter lab:
Won't be doing anything else on this today I don't think, but glad to see where we're headed!
Here are the things I'm going to try to work on tomorrow:
ticker list enter key works adding crypto research deploying dash in production (multithreading?)
Sweet! Looking forward to seeing what you discover. My next step will be to do a solid QC / format / factor check, etc. of the app.py code. I'll also do a little research into how we can make the aesthetics of the app a little nicer. Historically I've either used Dash presets or had to resort to using injected javascript / html, so we'll see about that. Don't plan on getting to much in terms of pushed code today or tomorrow however due to travel.
Sorry been busy the last few weeks, did some work tonight. Got the list here: https://www.nasdaq.com/etfs/list
and that worked to have a list of securities although it's clearly not comprehensive. Let me know if you have a better list and I'll point to that. I feel like you texted me something but it was too long ago.
@zachvac I think the one I was thinking of (for individual stocks -- so we would want to add to your ETF list) is here. There's a csv link that we can point to
https://www.nasdaq.com/screening/companies-by-industry.aspx?exchange=NYSE
@zachvac -- following up on the above, I didn't see the ETF list integration anywhere in master, so I assume that's in your local branch. Whenever you push those changes to master lemme know! Did a few things today that might be helpful:
env/bin/jupyter-lab
-- as well as how to ensure you're running the app using the python version I specified in the requirements.txt -- env/bin/python3 app.py
. app.py
code, and also changed the default asset in the app to be VTI so that it's more broadly applicable when we start sharing this thing haha. Let me know if you have questions about any of the above / need help with anything. I figure the next stages in my mind are (kind of in order but not really):
Two other updates to add to the above--one new, one which I stupidly forgot--that should be tacked on to our to-do list.
@zachvac all I want for Christmas is for you to respond to my message and merge your changes to master lol.
Here is an issue we can use to track progress and conversation surrounding the 1st draft of the Dash App. Once we have the data wrangled, the all-time-high algorithm locked down, and a visualization ready to go, we'll want to start probably with a one-callback dash app that runs decently fast. We can then of course moving on to more callbacks, deeper interactivity, etc., but for that we can open a separate issue and build towards a different milestone.