pmaji / asset-time-machine-app

Python Dash app that explores financial asset performance over time.
MIT License
8 stars 5 forks source link

Draft Simple Dash App #17

Closed pmaji closed 9 months ago

pmaji commented 5 years ago

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.

pmaji commented 5 years ago

Link to Dash tutorial here, for reference:

https://dash.plot.ly/

pmaji commented 5 years ago

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.

pmaji commented 5 years ago

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!

pmaji commented 5 years ago

Screen Shot 2019-07-06 at 2 17 01 PM

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!

pmaji commented 5 years ago

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!

zachvac commented 5 years ago

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?)

pmaji commented 5 years ago

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.

zachvac commented 5 years ago

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.

pmaji commented 5 years 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

pmaji commented 5 years ago

@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:

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):

pmaji commented 5 years ago

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.

pmaji commented 4 years ago

@zachvac all I want for Christmas is for you to respond to my message and merge your changes to master lol.