-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Added IEX trading example #70
Conversation
Some other notes:
|
@jbednar @philippjfr Some other annoyances that ought to be fixed:
I may expand this list if I remember anything else! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice!
iex_trading/IEX_stocks.ipynb
Outdated
"source": [ | ||
"top_symbol_counts = df.symbol.value_counts()[:10]\n", | ||
"top_symbols = list(top_symbol_counts.index)\n", | ||
"top_symbol_info = (', '.join(top_symbols), top_symbol_counts.sum() /len(df) * 100)\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You've switched to summing the trade volumes so maybe this should also state the fraction of the overall volume?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For that matter maybe select the top stocks by volume as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not a bad suggestion even though the number of trades is what tests datashader performance, not the volume. The top stocks by trade counts are what will push datashader the hardest here and any ten stocks will do (all I need to do is select between some stocks). It might also be less cognitive overhead if I don't switch the names/symbols of the stocks inspected. @jbednar What do you think?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here you're distinguishing number of trades from number of stocks traded? I guess I don't have much opinion; I'll leave it up to you as author of the example.
Co-Authored-By: James A. Bednar <jbednar@users.noreply.github.com>
Co-Authored-By: James A. Bednar <jbednar@users.noreply.github.com> Co-Authored-By: Philipp Rudiger <philippjfr@continuum.io>
Co-Authored-By: James A. Bednar <jbednar@users.noreply.github.com>
labels: | ||
- datashader | ||
- panel | ||
- holoviews |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There should be a badge here that indicates that this project is dev.
This example visualizes trades made on the IEX exchange, building up to the following dashboard:
You can zoom in to reveal the metadata of individual trades:
There are three notebooks:
IEX_to_CSV.ipynb
which explains how the CSV files were generated from the pcap files offered by the exchange. This notebook is for reference and should not be tested in CI (the pcap files are very large).IEX_trading.ipynb
which introduces the data and basic concepts needed to build a trade explorer.IEX_stocks.ipynb
which generalizesIEX_trading.ipynb
to build a useful dashboard.On S3 there is
IEX_2019-10-25.csv
in addition toIEX_2019-10-21.csv
: I am planning to use the former in yet another notebook aimed at comparing the two datasets. At this point, I think the material here is already complete enough to present without that extra example.