Conversation
Change time output to minutes instead of seconds Add ability to print all results together an the end Output anomalous tickers to a results.txt file
opens anomalous tickers in Robinhood in a new browser window
Creates graphs for all tickers in results.txt Allows option for single ticker or tickers of your choice
Example results.txt file
change line numbers for controlling the script
Add/update descriptions grapher.py and openRobinhood.py
Fix formatting error
Provides option to save graphs to the figures directory or to print them to screen
Create figures dir if it doesn't exist
remove previous addition of printing anomalous results together at the end
Parallelization
Revert "Parallelization"
Add various functionality
Revert "Add various functionality "
This removes the unused finding function, and replaces it with the normal algorithm. Then, all the indexing through the Pandas Dataframes are refactored in preference for the faster Pandas calls.
Pandas branch
Remove additional /r in README
flask_freezer to generate the static page flask_server to host it yourself (dynamic stuff coming later) 6 month window
elizabethshirley
left a comment
There was a problem hiding this comment.
Let's be mindful to keep the code-base as clean as possible. Most people coming here likely don't know what to do with comments, when a command line argument would suffice.
Also, don't PR *.pyc files
https://coderwall.com/p/wrxwog/why-not-to-commit-pyc-files-into-git-and-how-to-fix-if-you-already-did
|
thanks for all of this. I didn't see your PRs until I was done using freezer to make a static web page. here it is: https://sampom100.github.io/UnusualVolumeDetector/ |
template.html for generating static page with website_generator dynamic.html for serving yourself with flask_server refactored globals to class variables in market_scanner print all results at end when running market_scanner line 34 fixes the off-by-1 bug (if it exists, will test it on Monday).
elizabethshirley
left a comment
There was a problem hiding this comment.
In addition to my other comments, you likely want to add Git LFS for all the graphics files, and move them there. Whenever you slightly tweak a graphic, the entire graphic is stored on Git, which slows down pulling as the project wears on.
market_scanner.py
Outdated
| ########################### | ||
|
|
||
| # Change variables to your liking then run the script | ||
| MONTH_CUTTOFF = 6 |
There was a problem hiding this comment.
Instead of running around with Globals, we probably want to have a class called config or something. On startup, it's populated with the default values seen here, unless there are arguments
https://www.tutorialspoint.com/python/python_command_line_arguments.htm
This allows you to have one script running with the defaults and the other running with some other behavior entirely, without needing two copies of the repo.
stocklist.py
Outdated
| # this is used to get all tickers from the market. | ||
|
|
||
|
|
||
| exportList = [] |
There was a problem hiding this comment.
There was a pull request which put the export list in a class and made it a return of the script. I think that's a very good idea, because like my other comment, allows for greater flexibility.
website_generator.py
Outdated
|
|
||
| app = flask.Flask(__name__, static_url_path='') | ||
| app.config["DEBUG"] = False | ||
| app.config['SECRET_KEY'] = 'deditaded wam' |
There was a problem hiding this comment.
There's got to be some way to not have your secrets in plain text on a public repository
There was a problem hiding this comment.
haha yeah, I pretty much completely ripped the flask script from another project and noticed this
maybe i should add more deditated wam to the server
try to pull secret key from env var added default parameters, now these are set when you instantiate the object made exportList a class variable
|
continued in #40 |
merges #32 and #33