Spaces:
Runtime error
Runtime error
Streamlit app
Browse files- .pre-commit-config.yaml +42 -0
- app.py +205 -0
- images/fourthbrain_logo.png +0 -0
- images/reddit_logo.png +0 -0
- images/tsla_logo.png +0 -0
- requirements.txt +4 -0
- sentiment_data.csv +104 -0
.pre-commit-config.yaml
ADDED
@@ -0,0 +1,42 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
repos:
|
2 |
+
- repo: https://github.com/kynan/nbstripout
|
3 |
+
rev: 3843f5f7c586fa6f0df81423f35d52e6af8e3039
|
4 |
+
hooks:
|
5 |
+
- id: nbstripout
|
6 |
+
args: [
|
7 |
+
--extra-keys,
|
8 |
+
"metadata.interpreter metadata.language_info.codemirror_mode
|
9 |
+
metadata.language_info.file_extension metadata.language_info.mimetype
|
10 |
+
metadata.language_info.nbconvert_exporter metadata.language_info.pygments_lexer
|
11 |
+
metadata.language_info.version metadata.kernelspec",
|
12 |
+
--keep-output,
|
13 |
+
]
|
14 |
+
- repo: https://github.com/nbQA-dev/nbQA
|
15 |
+
rev: 1.3.1
|
16 |
+
hooks:
|
17 |
+
- id: nbqa-black
|
18 |
+
- id: nbqa-flake8
|
19 |
+
args: []
|
20 |
+
- id: nbqa-isort
|
21 |
+
- id: nbqa-pyupgrade
|
22 |
+
args: [--py36-plus]
|
23 |
+
- repo: https://github.com/pre-commit/pre-commit-hooks
|
24 |
+
rev: v4.0.1
|
25 |
+
hooks:
|
26 |
+
- id: check-added-large-files
|
27 |
+
args: [--maxkb, "4096"]
|
28 |
+
- id: check-yaml
|
29 |
+
- id: trailing-whitespace
|
30 |
+
- id: end-of-file-fixer
|
31 |
+
- repo: https://github.com/pycqa/flake8
|
32 |
+
rev: 4.0.1
|
33 |
+
hooks:
|
34 |
+
- id: flake8
|
35 |
+
- repo: https://github.com/pycqa/isort
|
36 |
+
rev: 5.9.3
|
37 |
+
hooks:
|
38 |
+
- id: isort
|
39 |
+
- repo: https://github.com/psf/black
|
40 |
+
rev: 22.3.0
|
41 |
+
hooks:
|
42 |
+
- id: black
|
app.py
ADDED
@@ -0,0 +1,205 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import re
|
2 |
+
import time
|
3 |
+
from datetime import datetime
|
4 |
+
|
5 |
+
import pandas as pd
|
6 |
+
import plotly.graph_objects as go
|
7 |
+
import streamlit as st
|
8 |
+
from PIL import Image
|
9 |
+
from plotly.subplots import make_subplots
|
10 |
+
|
11 |
+
# Read CSV file into pandas and extract timestamp data
|
12 |
+
dfSentiment = pd.read_csv("./sentiment_data.csv", index_col=0)
|
13 |
+
dfSentiment["timestamp"] = [
|
14 |
+
datetime.strptime(dt, "%Y-%m-%d") for dt in dfSentiment["timestamp"].tolist()
|
15 |
+
]
|
16 |
+
|
17 |
+
# Multi-select columns to build chart
|
18 |
+
col_list = list(dfSentiment.columns)
|
19 |
+
|
20 |
+
r_sentiment = re.compile(".*sentiment")
|
21 |
+
sentiment_cols = [col for col in col_list if r_sentiment.match(col)]
|
22 |
+
|
23 |
+
r_post = re.compile(".*post")
|
24 |
+
post_list = [col for col in col_list if r_post.match(col)]
|
25 |
+
|
26 |
+
r_perc = re.compile(".*perc")
|
27 |
+
perc_list = list(filter(r_perc.match, col_list))
|
28 |
+
|
29 |
+
r_close = re.compile(".*close")
|
30 |
+
close_list = list(filter(r_close.match, col_list))
|
31 |
+
|
32 |
+
r_volume = re.compile(".*volume")
|
33 |
+
volume_list = list(filter(r_volume.match, col_list))
|
34 |
+
|
35 |
+
sentiment_cols = sentiment_cols + post_list
|
36 |
+
stocks_cols = perc_list + close_list + volume_list
|
37 |
+
|
38 |
+
# Config for page
|
39 |
+
st.set_page_config(
|
40 |
+
page_title="TSLA Stock Sentiment Analysis",
|
41 |
+
page_icon="✅",
|
42 |
+
layout="wide",
|
43 |
+
)
|
44 |
+
|
45 |
+
with st.sidebar:
|
46 |
+
# FourthBrain logo to sidebar
|
47 |
+
fourthbrain_logo = Image.open("./images/fourthbrain_logo.png")
|
48 |
+
st.image([fourthbrain_logo], width=300)
|
49 |
+
|
50 |
+
# Date selection filters
|
51 |
+
start_date_filter = st.date_input(
|
52 |
+
"Start Data",
|
53 |
+
min(dfSentiment["timestamp"]),
|
54 |
+
min_value=min(dfSentiment["timestamp"]),
|
55 |
+
max_value=max(dfSentiment["timestamp"]),
|
56 |
+
)
|
57 |
+
|
58 |
+
end_date_filter = st.date_input(
|
59 |
+
"End Date",
|
60 |
+
max(dfSentiment["timestamp"]),
|
61 |
+
min_value=min(dfSentiment["timestamp"]),
|
62 |
+
max_value=max(dfSentiment["timestamp"]),
|
63 |
+
)
|
64 |
+
|
65 |
+
sentiment_select = st.selectbox(
|
66 |
+
"Select Sentiment",
|
67 |
+
sentiment_cols,
|
68 |
+
index=0,
|
69 |
+
)
|
70 |
+
stock_select = st.selectbox(
|
71 |
+
"Select Stock Data",
|
72 |
+
stocks_cols,
|
73 |
+
index=0,
|
74 |
+
)
|
75 |
+
|
76 |
+
# Banner with TSLA and Reddit images
|
77 |
+
tsla_logo = Image.open("./images/tsla_logo.png")
|
78 |
+
reddit_logo = Image.open("./images/reddit_logo.png")
|
79 |
+
st.image([tsla_logo, reddit_logo], width=200)
|
80 |
+
|
81 |
+
# dashboard title
|
82 |
+
st.title("TSLA Stock Sentiment Analysis")
|
83 |
+
|
84 |
+
## dataframe filter
|
85 |
+
# start date
|
86 |
+
dfSentiment = dfSentiment[
|
87 |
+
dfSentiment["timestamp"]
|
88 |
+
>= datetime(start_date_filter.year, start_date_filter.month, start_date_filter.day)
|
89 |
+
]
|
90 |
+
|
91 |
+
# end date
|
92 |
+
dfSentiment = dfSentiment[
|
93 |
+
dfSentiment["timestamp"]
|
94 |
+
<= datetime(end_date_filter.year, end_date_filter.month, end_date_filter.day)
|
95 |
+
]
|
96 |
+
dfSentiment = dfSentiment.reset_index(drop=True)
|
97 |
+
|
98 |
+
|
99 |
+
# creating a single-element container
|
100 |
+
placeholder = st.empty()
|
101 |
+
|
102 |
+
# near real-time / live feed simulation
|
103 |
+
for i in range(1, len(dfSentiment) - 1):
|
104 |
+
|
105 |
+
# creating KPIs
|
106 |
+
last_close = dfSentiment["close"][i]
|
107 |
+
last_close_lag1 = dfSentiment["close"][i - 1]
|
108 |
+
last_sentiment = dfSentiment["sentiment_score"][i]
|
109 |
+
last_sentiment_lag1 = dfSentiment["sentiment_score"][i - 1]
|
110 |
+
|
111 |
+
with placeholder.container():
|
112 |
+
|
113 |
+
# create columns
|
114 |
+
kpi1, kpi2, kpi3 = st.columns(3)
|
115 |
+
|
116 |
+
# fill in those three columns with respective metrics or KPIs
|
117 |
+
kpi1.metric(
|
118 |
+
label="Sentiment Score",
|
119 |
+
value=round(last_sentiment, 3),
|
120 |
+
delta=round(last_sentiment_lag1, 3),
|
121 |
+
)
|
122 |
+
|
123 |
+
kpi2.metric(
|
124 |
+
label="Last Closing Price",
|
125 |
+
value=round(last_close),
|
126 |
+
delta=round(last_close - last_close_lag1),
|
127 |
+
)
|
128 |
+
|
129 |
+
# create two columns for charts
|
130 |
+
fig_col1, fig_col2 = st.columns(2)
|
131 |
+
|
132 |
+
with fig_col1:
|
133 |
+
# Add traces
|
134 |
+
fig = make_subplots(specs=[[{"secondary_y": True}]])
|
135 |
+
|
136 |
+
fig.add_trace(
|
137 |
+
go.Scatter(
|
138 |
+
x=dfSentiment["timestamp"][0:i],
|
139 |
+
y=dfSentiment[sentiment_select][0:i],
|
140 |
+
name=sentiment_select,
|
141 |
+
mode="lines",
|
142 |
+
hoverinfo="none",
|
143 |
+
)
|
144 |
+
)
|
145 |
+
|
146 |
+
if sentiment_select.startswith("perc"):
|
147 |
+
yaxis_label = "Percent Change Sentiment"
|
148 |
+
|
149 |
+
elif sentiment_select in sentiment_cols:
|
150 |
+
yaxis_label = "Sentiment Score"
|
151 |
+
|
152 |
+
elif sentiment_select in post_list:
|
153 |
+
yaxis_label = "Volume"
|
154 |
+
|
155 |
+
fig.layout.yaxis.title = yaxis_label
|
156 |
+
|
157 |
+
if stock_select.startswith("perc"):
|
158 |
+
fig.add_trace(
|
159 |
+
go.Scatter(
|
160 |
+
x=dfSentiment["timestamp"][0:i],
|
161 |
+
y=dfSentiment[stock_select][0:i],
|
162 |
+
name=stock_select,
|
163 |
+
mode="lines",
|
164 |
+
hoverinfo="none",
|
165 |
+
yaxis="y2",
|
166 |
+
)
|
167 |
+
)
|
168 |
+
fig.layout.yaxis2.title = "% Change Stock Price ($US)"
|
169 |
+
|
170 |
+
elif stock_select == "volume":
|
171 |
+
fig.add_trace(
|
172 |
+
go.Scatter(
|
173 |
+
x=dfSentiment["timestamp"][0:i],
|
174 |
+
y=dfSentiment[stock_select][0:i],
|
175 |
+
name=stock_select,
|
176 |
+
mode="lines",
|
177 |
+
hoverinfo="none",
|
178 |
+
yaxis="y2",
|
179 |
+
)
|
180 |
+
)
|
181 |
+
|
182 |
+
fig.layout.yaxis2.title = "Shares Traded"
|
183 |
+
|
184 |
+
else:
|
185 |
+
fig.add_trace(
|
186 |
+
go.Scatter(
|
187 |
+
x=dfSentiment["timestamp"][0:i],
|
188 |
+
y=dfSentiment[stock_select][0:i],
|
189 |
+
name=stock_select,
|
190 |
+
mode="lines",
|
191 |
+
hoverinfo="none",
|
192 |
+
yaxis="y2",
|
193 |
+
)
|
194 |
+
)
|
195 |
+
|
196 |
+
fig.layout.yaxis2.title = "Stock Price ($USD)"
|
197 |
+
|
198 |
+
fig.layout.xaxis.title = "Timestamp"
|
199 |
+
|
200 |
+
# write the figure throught streamlit
|
201 |
+
st.write(fig)
|
202 |
+
|
203 |
+
st.markdown("### Detailed Data View")
|
204 |
+
st.dataframe(dfSentiment.iloc[:, 1:][0:i])
|
205 |
+
time.sleep(1)
|
images/fourthbrain_logo.png
ADDED
![]() |
images/reddit_logo.png
ADDED
![]() |
images/tsla_logo.png
ADDED
![]() |
requirements.txt
ADDED
@@ -0,0 +1,4 @@
|
|
|
|
|
|
|
|
|
|
|
1 |
+
pandas==1.4.2
|
2 |
+
Pillow==9.2.0
|
3 |
+
plotly==5.9.0
|
4 |
+
streamlit==1.10.0
|
sentiment_data.csv
ADDED
@@ -0,0 +1,104 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
,timestamp,counter,close,volume,sentiment_score,close_lag1,perc_change_close,sentiment_score_lag1,perc_change_sentiment,sentiment_SMA3mo
|
2 |
+
1,2022-02-26,9,0.0,,0.96355273326238,809.87,-1.0,0.8938873600959778,0.07793529283032052,0.0
|
3 |
+
2,2022-02-27,4,0.0,,0.8796336650848389,0.0,0.0,0.96355273326238,-0.0870933839743357,0.9123579194810656
|
4 |
+
3,2022-02-28,256,870.42999,33002300,0.8445878773927689,0.0,inf,0.8796336650848389,-0.03984134428130364,0.895924758579996
|
5 |
+
4,2022-03-01,9,864.37,24922300,0.7787627379099528,870.42999,-0.006962064806613534,0.8445878773927689,-0.07793758499828034,0.8343280934625201
|
6 |
+
5,2022-03-02,64,879.89001,24881100,0.8701551631093025,864.37,0.01795528535233749,0.7787627379099528,0.11735592979786012,0.831168592804008
|
7 |
+
6,2022-03-04,4,838.28998,22333200,0.7278818786144257,879.89001,-0.047278670660211214,0.8701551631093025,-0.16350335035247676,0.7922665932112269
|
8 |
+
7,2022-03-06,9,0.0,,0.9450711210568746,838.28998,-1.0,0.7278818786144257,0.2983852858871607,0.8477027209268676
|
9 |
+
8,2022-03-07,16,804.58002,24164700,0.8149215281009674,0.0,inf,0.9450711210568746,-0.1377140725772688,0.8292915092574226
|
10 |
+
9,2022-03-09,36,858.96997,19728000,0.8148505290349325,804.58002,0.06760042338610397,0.8149215281009674,-8.712380712332725e-05,0.8582810593975916
|
11 |
+
10,2022-03-10,1,838.29999,19549500,0.9321048259735107,858.96997,-0.024063681760609173,0.8148505290349325,0.14389669363956636,0.8539589610364701
|
12 |
+
11,2022-03-11,16,795.34998,22345700,0.9130835384130478,838.29999,-0.051234654076519816,0.9321048259735107,-0.020406811584305126,0.8866796311404969
|
13 |
+
12,2022-03-12,4,0.0,,0.8278116583824158,795.34998,-1.0,0.9130835384130478,-0.09338891398571894,0.8910000075896581
|
14 |
+
13,2022-03-14,9,766.37,23717400,0.8335919976234436,0.0,inf,0.8278116583824158,0.006982674358951281,0.8581623981396357
|
15 |
+
14,2022-03-15,4,801.89001,22280400,0.6954962015151978,766.37,0.04634838263501958,0.8335919976234436,-0.1656635338414411,0.7856332858403524
|
16 |
+
15,2022-03-16,81,840.22998,28009600,0.8961388402514987,801.89001,0.04781200603808494,0.6954962015151978,0.2884884752773399,0.8084090131300466
|
17 |
+
16,2022-03-17,81,871.59998,22194300,0.950434406598409,840.22998,0.03733501630113223,0.8961388402514987,0.06058834179274326,0.8473564827883685
|
18 |
+
17,2022-03-18,9,905.39001,33471400,0.9353285034497579,871.59998,0.0387678186959114,0.950434406598409,-0.015893682976729485,0.9273005834332219
|
19 |
+
18,2022-03-19,4,0.0,,0.7489033043384552,905.39001,-1.0,0.9353285034497579,-0.19931521216739734,0.8782220714622074
|
20 |
+
19,2022-03-20,4,0.0,,0.9656546115875244,0.0,0.0,0.7489033043384552,0.2894249577928312,0.8832954731252457
|
21 |
+
20,2022-03-21,9,921.15997,27327200,0.8073495825131735,0.0,inf,0.9656546115875244,-0.16393545598472253,0.8406358328130511
|
22 |
+
21,2022-03-22,36,993.97998,35289500,0.9213749766349792,921.15997,0.07905251245340145,0.8073495825131735,0.1412342268969282,0.8981263902452258
|
23 |
+
22,2022-03-23,4,999.10999,40225400,0.7923566997051239,993.97998,0.0051610798036395905,0.9213749766349792,-0.1400279801401297,0.8403604196177589
|
24 |
+
23,2022-03-24,64,1013.91998,22973600,0.9236290976405144,999.10999,0.014823182780906805,0.7923566997051239,0.16567336148510334,0.8791202579935392
|
25 |
+
24,2022-03-25,25,1010.64001,20677200,0.8448059678077697,1013.91998,-0.003234939704018899,0.9236290976405144,-0.08534067412352506,0.8535972550511359
|
26 |
+
25,2022-03-26,9,0.0,,0.9582957029342651,1010.64001,-1.0,0.8448059678077697,0.1343382261148033,0.9089102561275163
|
27 |
+
26,2022-03-27,49,0.0,,0.8588794810431344,0.0,0.0,0.9582957029342651,-0.10374273993582779,0.8873270505950565
|
28 |
+
27,2022-03-28,16,1091.83997,34168700,0.9493877589702606,0.0,inf,0.8588794810431344,0.10537948562608722,0.9221876476492201
|
29 |
+
28,2022-03-29,64,1099.56995,24538300,0.8219083771109581,1091.83997,0.007079773787728314,0.9493877589702606,-0.13427535867701848,0.8767252057081177
|
30 |
+
29,2022-03-30,25,1093.98999,19955000,0.8568511128425598,1099.56995,-0.005074674876300528,0.8219083771109581,0.042514149636029785,0.8760490829745927
|
31 |
+
30,2022-03-31,4,1077.59998,16330900,0.9771673083305359,1093.98999,-0.014981864687811333,0.8568511128425598,0.14041668813247296,0.8853089327613511
|
32 |
+
31,2022-04-01,49,1084.58997,18087700,0.8794874634061541,1077.59998,0.006486627811555856,0.9771673083305359,-0.09996225220762363,0.9045019615264165
|
33 |
+
32,2022-04-02,16,0.0,,0.7687223702669144,1084.58997,-1.0,0.8794874634061541,-0.1259427766147561,0.8751257140012015
|
34 |
+
33,2022-04-03,1,0.0,,0.9160726070404053,0.0,0.0,0.7687223702669144,0.19168199401082633,0.8547608135711581
|
35 |
+
34,2022-04-04,121,1145.44995,27345300,0.8828300671143965,0.0,inf,0.9160726070404053,-0.03628810606334674,0.8558750148072387
|
36 |
+
35,2022-04-05,49,1091.26001,26691700,0.927118080002921,1145.44995,-0.04730886757644887,0.8828300671143965,0.05016595439854413,0.9086735847192409
|
37 |
+
36,2022-04-06,4,1045.76001,29782800,0.9231286644935608,1091.26001,-0.0416949210848476,0.927118080002921,-0.004303028487318026,0.9110256038702927
|
38 |
+
37,2022-04-07,169,1057.26001,26482400,0.8966110119452844,1045.76001,0.010996786920547862,0.9231286644935608,-0.02872584675162733,0.9156192521472554
|
39 |
+
38,2022-04-08,1,1025.48999,18337900,0.5051678419113159,1057.26001,-0.030049391539929644,0.8966110119452844,-0.4365808191276779,0.7749691727833871
|
40 |
+
39,2022-04-09,9,0.0,,0.8737351298332214,1025.48999,-1.0,0.5051678419113159,0.7295937257752224,0.7585046612299405
|
41 |
+
40,2022-04-10,1,0.0,,0.9639001488685608,0.0,0.0,0.8737351298332214,0.10319491108541104,0.7809343735376993
|
42 |
+
41,2022-04-11,36,975.92999,19785700,0.7686192790667216,0.0,inf,0.9639001488685608,-0.2025945011327808,0.868751519256168
|
43 |
+
42,2022-04-12,121,986.95001,21992000,0.8198851455341686,975.92999,0.011291814077770112,0.7686192790667216,0.0666986476447682,0.850801524489817
|
44 |
+
43,2022-04-17,1,0.0,,0.7849520444869995,986.95001,-1.0,0.8198851455341686,-0.04260731059398519,0.7911521563626299
|
45 |
+
44,2022-04-19,1,1028.15002,16615900,0.5784670114517212,0.0,inf,0.7849520444869995,-0.2630543285866913,0.7277680671576298
|
46 |
+
45,2022-04-20,4,977.20001,23570400,0.8341480493545532,1028.15002,-0.049555034779846636,0.5784670114517212,0.4419976123809977,0.7325223684310913
|
47 |
+
46,2022-04-24,9,0.0,,0.8905540506045023,977.20001,-1.0,0.8341480493545532,0.06762109111637307,0.7677230371369257
|
48 |
+
47,2022-04-25,100,998.02002,22780400,0.8006527602672577,0.0,inf,0.8905540506045023,-0.10094984159155772,0.8417849534087711
|
49 |
+
48,2022-04-27,9,881.51001,25652100,0.8446730772654215,998.02002,-0.11674115515237868,0.8006527602672577,0.054980534861916674,0.8452932960457272
|
50 |
+
49,2022-04-28,121,877.51001,41649500,0.8116638118570502,881.51001,-0.004537668267658129,0.8446730772654215,-0.03907933885526086,0.8189965497965765
|
51 |
+
50,2022-04-29,1,870.76001,29377700,0.9146062135696411,877.51001,-0.007692219944020924,0.8116638118570502,0.12682886708607025,0.8569810342307043
|
52 |
+
51,2022-04-30,9,0.0,,0.8268607258796692,870.76001,-1.0,0.9146062135696411,-0.09593799647118918,0.8510435837687869
|
53 |
+
52,2022-05-01,16,0.0,,0.8533885329961777,0.0,0.0,0.8268607258796692,0.03208255790391598,0.864951824148496
|
54 |
+
53,2022-05-02,4,902.94,25260500,0.7670798599720001,0.0,inf,0.8533885329961777,-0.10113643397709461,0.8157763729492823
|
55 |
+
54,2022-05-03,9,909.25,21236500,0.9215346773465475,902.94,0.006988282720889478,0.7670798599720001,0.20135428582388443,0.8473343567715751
|
56 |
+
55,2022-05-04,16,952.62,27214600,0.9249045699834824,909.25,0.047698652735771244,0.9215346773465475,0.00365682672586787,0.8711730357673434
|
57 |
+
56,2022-05-05,169,873.28003,30839700,0.9184623727431664,952.62,-0.0832860636980118,0.9249045699834824,-0.006965256145756709,0.9216338733577322
|
58 |
+
57,2022-05-06,16,865.65002,24301000,0.8844407796859741,873.28003,-0.008737185940230386,0.9184623727431664,-0.037041901842511216,0.9092692408042077
|
59 |
+
58,2022-05-07,1,0.0,,0.5405320525169373,865.65002,-1.0,0.8844407796859741,-0.3888431368928326,0.7811450683153592
|
60 |
+
59,2022-05-08,121,0.0,,0.8068896206942472,0.0,0.0,0.5405320525169373,0.49276923900634695,0.7439541509657195
|
61 |
+
60,2022-05-09,49,787.10999,30270100,0.9285739830562046,0.0,inf,0.8068896206942472,0.15080670173605695,0.7586652187557963
|
62 |
+
61,2022-05-11,49,734.0,32408200,0.7556086352893284,787.10999,-0.06747467402872125,0.9285739830562046,-0.18626986209283766,0.8303574130132599
|
63 |
+
62,2022-05-12,36,728.0,46771000,0.8642743627230326,734.0,-0.008174386920980926,0.7556086352893284,0.14381218313114597,0.8494856603561886
|
64 |
+
63,2022-05-15,9,0.0,,0.8373505075772604,728.0,-1.0,0.8642743627230326,-0.03115197708855366,0.8190778351965404
|
65 |
+
64,2022-05-16,49,724.37,28699500,0.7923701746123177,0.0,inf,0.8373505075772604,-0.05371744873611653,0.8313316816375368
|
66 |
+
65,2022-05-17,144,761.60999,26745400,0.8321746985117594,724.37,0.05141017711942796,0.7923701746123177,0.05023475791339167,0.8206317935671126
|
67 |
+
66,2022-05-19,9,709.41998,30098900,0.9722742438316345,761.60999,-0.06852589998195799,0.8321746985117594,0.16835352669388493,0.8656063723185706
|
68 |
+
67,2022-05-20,16,663.90002,48324400,0.8415951132774353,709.41998,-0.06416503803572035,0.9722742438316345,-0.13440562823016475,0.882014685206943
|
69 |
+
68,2022-05-21,36,0.0,,0.885733942190806,663.90002,-1.0,0.8415951132774353,0.05244663166053839,0.899867766433292
|
70 |
+
69,2022-05-22,25,0.0,,0.9557552576065064,0.0,0.0,0.885733942190806,0.07905456941449834,0.8943614376915826
|
71 |
+
70,2022-05-23,16,674.90002,29634500,0.773715078830719,0.0,inf,0.9557552576065064,-0.19046735796324027,0.8717347595426772
|
72 |
+
71,2022-05-24,4,628.15997,29697500,0.7035443484783173,674.90002,-0.06925477643340415,0.773715078830719,-0.09069324389857779,0.8110048949718475
|
73 |
+
72,2022-05-25,64,658.79999,30713100,0.8830268308520317,628.15997,0.048777415727398125,0.7035443484783173,0.25511182452380393,0.7867620860536894
|
74 |
+
73,2022-05-27,1,759.63,29765000,0.9252052307128906,658.79999,0.15305101932378598,0.8830268308520317,0.04776570585081885,0.8372588033477465
|
75 |
+
74,2022-05-29,1,0.0,,0.9904717206954956,759.63,-1.0,0.9252052307128906,0.07054271616289473,0.9329012607534727
|
76 |
+
75,2022-05-30,169,0.0,,0.8443599526698773,0.0,0.0,0.9904717206954956,-0.14751735458234047,0.9200123013594212
|
77 |
+
76,2022-05-31,25,758.26001,33971500,0.8647088527679443,0.0,inf,0.8443599526698773,0.02409979302514705,0.8998468420444391
|
78 |
+
77,2022-06-01,1,740.37,25749300,0.8335552215576172,758.26001,-0.02359350323644255,0.8647088527679443,-0.0360278851206437,0.8475413423318129
|
79 |
+
78,2022-06-02,1,775.0,31157700,0.8588801026344299,740.37,0.046773910342126225,0.8335552215576172,0.030381767664402103,0.8523813923199971
|
80 |
+
79,2022-06-03,1,703.54999,37348100,0.9349367618560791,775.0,-0.0921935612903226,0.8588801026344299,0.08855329048648553,0.8757906953493754
|
81 |
+
80,2022-06-07,1,716.65997,24269500,0.9097424745559692,703.54999,0.01863404191079594,0.9349367618560791,-0.02694758440142306,0.901186446348826
|
82 |
+
81,2022-06-08,9,725.59998,25403500,0.9521264036496481,716.65997,0.012474549122647265,0.9097424745559692,0.04658893069092519,0.9322685466872321
|
83 |
+
82,2022-06-09,49,719.12,32163800,0.8658386213438851,725.59998,-0.008930512925317274,0.9521264036496481,-0.09062639369626607,0.9092358331831676
|
84 |
+
83,2022-06-10,121,696.69,32512200,0.8838409077037465,719.12,-0.031190899988875222,0.8658386213438851,0.02079173406693229,0.9006019775657599
|
85 |
+
84,2022-06-11,4,0.0,,0.8169266581535339,696.69,-1.0,0.8838409077037465,-0.07570847758569851,0.8555353957337218
|
86 |
+
85,2022-06-12,4,0.0,,0.912807285785675,0.0,0.0,0.8169266581535339,0.11736748541032581,0.8711916172143185
|
87 |
+
86,2022-06-13,1,647.21002,34255800,0.904836893081665,0.0,inf,0.912807285785675,-0.008731736510132806,0.878190279006958
|
88 |
+
87,2022-06-14,36,662.66998,32662900,0.8577287097771963,647.21002,0.02388708382481474,0.904836893081665,-0.052062624396347484,0.891790962881512
|
89 |
+
88,2022-06-15,4,699.0,39710600,0.9258643984794617,662.66998,0.054823699724559714,0.8577287097771963,0.0794373418140152,0.8961433337794409
|
90 |
+
89,2022-06-16,9,639.29999,35796900,0.6480966210365295,699.0,-0.08540773962804009,0.9258643984794617,-0.3000091351380478,0.8105632430977291
|
91 |
+
90,2022-06-17,1,650.28003,30810900,0.9310484528541565,639.29999,0.017175098031833272,0.6480966210365295,0.4365889631781903,0.8350031574567159
|
92 |
+
91,2022-06-18,9,0.0,,0.963709553082784,650.28003,-1.0,0.9310484528541565,0.03507991461508152,0.8476182089911567
|
93 |
+
92,2022-06-21,4,711.10999,40931000,0.9251329898834229,0.0,inf,0.963709553082784,-0.04002924229189146,0.9399636652734545
|
94 |
+
93,2022-06-23,25,705.21002,34734200,0.8154623508453369,711.10999,-0.008296845892996178,0.9251329898834229,-0.1185458093456441,0.901434964603848
|
95 |
+
94,2022-06-24,25,737.12,31866500,0.8072936177253723,705.21002,0.045248903298339437,0.8154623508453369,-0.010017302590973798,0.8492963194847106
|
96 |
+
95,2022-06-26,4,0.0,,0.5785004198551178,737.12,-1.0,0.8072936177253723,-0.28340766339129675,0.7337521294752757
|
97 |
+
96,2022-06-29,9,685.46997,27632400,0.9263860185941061,0.0,inf,0.5785004198551178,0.6013575561900444,0.7707266853915321
|
98 |
+
97,2022-07-02,4,0.0,,0.7558585703372955,685.46997,-1.0,0.9263860185941061,-0.18407817565684437,0.7535816695955065
|
99 |
+
98,2022-07-03,9,0.0,,0.8645987113316854,0.0,0.0,0.7558585703372955,0.14386307870514126,0.8489477667543625
|
100 |
+
99,2022-07-04,9,0.0,,0.9111841122309366,0.0,0.0,0.8645987113316854,0.05388095111488051,0.8438804646333059
|
101 |
+
100,2022-07-05,9,0.0,,0.7437541484832764,0.0,0.0,0.9111841122309366,-0.18374987173308582,0.8398456573486328
|
102 |
+
101,2022-07-07,4,0.0,,0.7694843113422394,0.0,0.0,0.7437541484832764,0.03459498398958048,0.8081408573521508
|
103 |
+
102,2022-07-08,107584,0.0,,0.8820720115085927,0.0,0.0,0.7694843113422394,0.14631578383965038,0.7984368237780362
|
104 |
+
103,2022-07-09,90601,0.0,,0.8841599992343357,0.0,0.0,0.8820720115085927,0.002367139755598848,0.8452387740283894
|