From c99d8ed820b454b5ce68f868f2619d3daf1c6a49 Mon Sep 17 00:00:00 2001 From: justinpolygon <123573436+justinpolygon@users.noreply.github.com> Date: Fri, 12 Apr 2024 13:38:09 -0700 Subject: [PATCH] Add flat files stock trades tutorial --- examples/rest/demo_correlation_matrix.py | 1 + .../exchange-heatmap.py | 68 ++++++++++ .../flatfiles-stock-trades/exchanges-seen.py | 23 ++++ .../tools/flatfiles-stock-trades/heatmap.png | Bin 0 -> 50356 bytes .../flatfiles-stock-trades/histogram.png | Bin 0 -> 68598 bytes .../tools/flatfiles-stock-trades/readme.md | 86 ++++++++++++ .../flatfiles-stock-trades/top-10-tickers.py | 25 ++++ .../trades-histogram.py | 63 +++++++++ polygon/rest/models/conditions.py | 32 +++-- polygon/rest/models/contracts.py | 8 +- polygon/rest/models/financials.py | 126 +++++++++++------- polygon/rest/models/markets.py | 24 ++-- polygon/rest/models/snapshot.py | 112 +++++++++------- polygon/rest/models/tickers.py | 12 +- polygon/websocket/__init__.py | 6 +- 15 files changed, 460 insertions(+), 126 deletions(-) create mode 100644 examples/tools/flatfiles-stock-trades/exchange-heatmap.py create mode 100644 examples/tools/flatfiles-stock-trades/exchanges-seen.py create mode 100644 examples/tools/flatfiles-stock-trades/heatmap.png create mode 100644 examples/tools/flatfiles-stock-trades/histogram.png create mode 100644 examples/tools/flatfiles-stock-trades/readme.md create mode 100644 examples/tools/flatfiles-stock-trades/top-10-tickers.py create mode 100644 examples/tools/flatfiles-stock-trades/trades-histogram.py diff --git a/examples/rest/demo_correlation_matrix.py b/examples/rest/demo_correlation_matrix.py index f056ab6d..df939590 100644 --- a/examples/rest/demo_correlation_matrix.py +++ b/examples/rest/demo_correlation_matrix.py @@ -40,6 +40,7 @@ essential to do your own research or consult a financial advisor for personalized advice when investing. """ + import pandas as pd # type: ignore import numpy as np # type: ignore import seaborn as sns # type: ignore diff --git a/examples/tools/flatfiles-stock-trades/exchange-heatmap.py b/examples/tools/flatfiles-stock-trades/exchange-heatmap.py new file mode 100644 index 00000000..dd618552 --- /dev/null +++ b/examples/tools/flatfiles-stock-trades/exchange-heatmap.py @@ -0,0 +1,68 @@ +# We can use a Python script that aggregates trades by exchange into 30-minute +# chunks, setting the stage for a visual analysis. This approach will highlight +# trade flows, including opening hours and peak activity times, across the +# exchanges. Please see https://polygon.io/blog/insights-from-trade-level-data +# +import pandas as pd +import seaborn as sns +import matplotlib.pyplot as plt +import numpy as np +import pytz + +# Replace '2024-04-05.csv' with the path to your actual file +file_path = "2024-04-05.csv" + +# Load the CSV file into a pandas DataFrame +df = pd.read_csv(file_path) + +# Convert 'participant_timestamp' to datetime (assuming nanoseconds Unix timestamp) +df["participant_timestamp"] = pd.to_datetime( + df["participant_timestamp"], unit="ns", utc=True +) + +# Convert to Eastern Time (ET), accounting for both EST and EDT +df["participant_timestamp"] = df["participant_timestamp"].dt.tz_convert( + "America/New_York" +) + +# Create a new column for 30-minute time intervals, now in ET +df["time_interval"] = df["participant_timestamp"].dt.floor("30T").dt.time + +# Ensure full 24-hour coverage by generating all possible 30-minute intervals +all_intervals = pd.date_range(start="00:00", end="23:59", freq="30T").time +all_exchanges = df["exchange"].unique() +full_index = pd.MultiIndex.from_product( + [all_exchanges, all_intervals], names=["exchange", "time_interval"] +) + +# Group by 'exchange' and 'time_interval', count trades, and reset index +grouped = ( + df.groupby(["exchange", "time_interval"]) + .size() + .reindex(full_index, fill_value=0) + .reset_index(name="trade_count") +) + +# Pivot the DataFrame for the heatmap, ensuring all intervals and exchanges are represented +pivot_table = grouped.pivot("exchange", "time_interval", "trade_count").fillna(0) + +# Apply a log scale transformation to the trade counts + 1 to handle zero trades correctly +log_scale_data = np.log1p(pivot_table.values) + +# Plotting the heatmap using the log scale data +plt.figure(figsize=(20, 10)) +sns.heatmap( + log_scale_data, + annot=False, + cmap="Reds", + linewidths=0.5, + cbar=False, + xticklabels=[t.strftime("%H:%M") for t in all_intervals], + yticklabels=pivot_table.index, +) +plt.title("Trade Count Heatmap by Exchange and Time Interval (Log Scale, ET)") +plt.ylabel("Exchange") +plt.xlabel("Time Interval (ET)") +plt.xticks(rotation=45) +plt.tight_layout() # Adjust layout to not cut off labels +plt.show() diff --git a/examples/tools/flatfiles-stock-trades/exchanges-seen.py b/examples/tools/flatfiles-stock-trades/exchanges-seen.py new file mode 100644 index 00000000..7c4d2aba --- /dev/null +++ b/examples/tools/flatfiles-stock-trades/exchanges-seen.py @@ -0,0 +1,23 @@ +# Here's a Python script for analyzing the dataset, that identifies the +# distribution of trades across different exchanges and calculates their +# respective percentages of the total trades. Please see +# https://polygon.io/blog/insights-from-trade-level-data +# +import pandas as pd + +# Replace '2024-04-05.csv' with the path to your actual file +file_path = "2024-04-05.csv" + +# Load the CSV file into a pandas DataFrame +df = pd.read_csv(file_path) + +# Count the number of trades for each exchange +exchange_counts = df["exchange"].value_counts() + +# Calculate the total number of trades +total_trades = exchange_counts.sum() + +# Print out all exchanges and their percentage of total trades +for exchange, count in exchange_counts.items(): + percentage = (count / total_trades) * 100 + print(f"Exchange {exchange}: {count} trades, {percentage:.2f}% of total trades") diff --git a/examples/tools/flatfiles-stock-trades/heatmap.png b/examples/tools/flatfiles-stock-trades/heatmap.png new file mode 100644 index 0000000000000000000000000000000000000000..9cf4c0acda734fe9e6ec970b70e699c8fc4fb1a6 GIT binary patch literal 50356 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 OOYE21UHtT`Z~r%mer(17 literal 0 HcmV?d00001 diff --git a/examples/tools/flatfiles-stock-trades/histogram.png b/examples/tools/flatfiles-stock-trades/histogram.png new file mode 100644 index 0000000000000000000000000000000000000000..1ccb62dd3aa51f1fba666dee55c84904134284fd GIT binary patch literal 68598 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