Spaces:
Sleeping
Sleeping
tgs part 3
Browse files- app.py +21 -193
- model_day.py +2 -3
- model_intra.py +2 -3
- troubleshoot_day_model.ipynb +362 -287
app.py
CHANGED
@@ -66,17 +66,13 @@ def get_time_emojis(_times, _pst_now):
|
|
66 |
return emojis
|
67 |
|
68 |
# Example usage:
|
69 |
-
times_list = ['06:30', '07:00', '07:30', '08:00']
|
70 |
emojis_list = get_time_emojis(times_list, pst_now)
|
71 |
|
72 |
|
73 |
st.title('๐ฎ Gameday Model for $SPX')
|
74 |
st.markdown('**PLEASE NOTE:** Model should be run at or after market open. Documentation on the model and its features [can be found here.](https://huggingface.co/spaces/boomsss/gamedayspx/blob/main/README.md)')
|
75 |
with st.form("choose_model"):
|
76 |
-
# option = st.selectbox(
|
77 |
-
# 'Select a model, then run.',
|
78 |
-
# ('', '๐ At Open', 'โ 30 Mins', 'โณ 60 Mins', '๐ฐ 90 Mins'))
|
79 |
-
|
80 |
|
81 |
col1, col2 = st.columns(2)
|
82 |
|
@@ -98,10 +94,11 @@ with st.form("choose_model"):
|
|
98 |
st.write('No model selected.')
|
99 |
|
100 |
if submitted:
|
|
|
|
|
101 |
|
102 |
if option == '06:30':
|
103 |
-
|
104 |
-
# if runday:
|
105 |
from model_day import *
|
106 |
|
107 |
fname='performance_for_open_model.csv'
|
@@ -155,142 +152,14 @@ with st.form("choose_model"):
|
|
155 |
new_pred['H2BreakPct'] = new_pred['H2BreakPct'].astype(float)
|
156 |
|
157 |
seq_proba = seq_predict_proba(new_pred, xgbr, seq2)
|
158 |
-
|
159 |
-
elif option == '07:00':
|
160 |
-
# run30 = st.button('๐๐ฝโโ๏ธ Run')
|
161 |
-
# if run30:
|
162 |
-
from model_intra import *
|
163 |
-
|
164 |
-
fname='performance_for_30m_model.csv'
|
165 |
-
|
166 |
-
with st.spinner('Loading data...'):
|
167 |
-
data, df_final, final_row = get_data(1)
|
168 |
-
# st.success("โ
Historical data")
|
169 |
-
|
170 |
-
with st.spinner("Training models..."):
|
171 |
-
def train_models():
|
172 |
-
res1, xgbr, seq2 = walk_forward_validation_seq(df_final.dropna(), 'Target_clf', 'Target', 100, 1)
|
173 |
-
return res1, xgbr, seq2
|
174 |
-
res1, xgbr, seq2 = train_models()
|
175 |
-
# st.success("โ
Models trained")
|
176 |
-
|
177 |
-
with st.spinner("Getting new prediction..."):
|
178 |
-
|
179 |
-
# Get last row
|
180 |
-
new_pred = data.loc[final_row, model_cols]
|
181 |
-
|
182 |
-
new_pred = pd.DataFrame(new_pred).T
|
183 |
-
# new_pred_show = pd.DataFrame(index=[new_pred.columns], columns=[new_pred.index], data=[[v] for v in new_pred.values])
|
184 |
-
# last_date = datetime.datetime.strptime(data.loc[final_row], '%Y-%m-%d')
|
185 |
-
curr_date = final_row + BDay(1)
|
186 |
-
curr_date = curr_date.strftime('%Y-%m-%d')
|
187 |
-
|
188 |
-
new_pred['BigNewsDay'] = new_pred['BigNewsDay'].astype(float)
|
189 |
-
new_pred['Quarter'] = new_pred['Quarter'].astype(int)
|
190 |
-
new_pred['Perf5Day'] = new_pred['Perf5Day'].astype(bool)
|
191 |
-
new_pred['Perf5Day_n1'] = new_pred['Perf5Day_n1'].astype(bool)
|
192 |
-
new_pred['DaysGreen'] = new_pred['DaysGreen'].astype(float)
|
193 |
-
new_pred['DaysRed'] = new_pred['DaysRed'].astype(float)
|
194 |
-
new_pred['CurrentHigh30toClose'] = new_pred['CurrentHigh30toClose'].astype(float)
|
195 |
-
new_pred['CurrentLow30toClose'] = new_pred['CurrentLow30toClose'].astype(float)
|
196 |
-
new_pred['CurrentClose30toClose'] = new_pred['CurrentClose30toClose'].astype(float)
|
197 |
-
new_pred['CurrentRange30'] = new_pred['CurrentRange30'].astype(float)
|
198 |
-
new_pred['GapFill30'] = new_pred['GapFill30'].astype(float)
|
199 |
-
new_pred['CurrentGap'] = new_pred['CurrentGap'].astype(float)
|
200 |
-
new_pred['RangePct'] = new_pred['RangePct'].astype(float)
|
201 |
-
new_pred['RangePct_n1'] = new_pred['RangePct_n1'].astype(float)
|
202 |
-
new_pred['RangePct_n2'] = new_pred['RangePct_n2'].astype(float)
|
203 |
-
new_pred['OHLC4_VIX'] = new_pred['OHLC4_VIX'].astype(float)
|
204 |
-
new_pred['OHLC4_VIX_n1'] = new_pred['OHLC4_VIX_n1'].astype(float)
|
205 |
-
new_pred['OHLC4_VIX_n2'] = new_pred['OHLC4_VIX_n2'].astype(float)
|
206 |
-
new_pred['OpenL1'] = new_pred['OpenL1'].astype(float)
|
207 |
-
new_pred['OpenL2'] = new_pred['OpenL2'].astype(float)
|
208 |
-
new_pred['OpenH1'] = new_pred['OpenH1'].astype(float)
|
209 |
-
new_pred['OpenH2'] = new_pred['OpenH2'].astype(float)
|
210 |
-
new_pred['L1TouchPct'] = new_pred['L1TouchPct'].astype(float)
|
211 |
-
new_pred['L2TouchPct'] = new_pred['L2TouchPct'].astype(float)
|
212 |
-
new_pred['H1TouchPct'] = new_pred['H1TouchPct'].astype(float)
|
213 |
-
new_pred['H2TouchPct'] = new_pred['H2TouchPct'].astype(float)
|
214 |
-
new_pred['L1BreakPct'] = new_pred['L1BreakPct'].astype(float)
|
215 |
-
new_pred['L2BreakPct'] = new_pred['L2BreakPct'].astype(float)
|
216 |
-
new_pred['H1BreakPct'] = new_pred['H1BreakPct'].astype(float)
|
217 |
-
new_pred['H2BreakPct'] = new_pred['H2BreakPct'].astype(float)
|
218 |
-
new_pred['GreenProbas'] = new_pred['GreenProbas'].astype(float)
|
219 |
-
|
220 |
-
seq_proba = seq_predict_proba(new_pred, xgbr, seq2)
|
221 |
|
222 |
-
|
223 |
-
# run60 = st.button('๐๐ฝโโ๏ธ Run')
|
224 |
-
# if run60:
|
225 |
-
from model_intra import *
|
226 |
-
|
227 |
-
fname='performance_for_1h_model.csv'
|
228 |
-
|
229 |
-
with st.spinner('Loading data...'):
|
230 |
-
data, df_final, final_row = get_data(2)
|
231 |
-
# st.success("โ
Historical data")
|
232 |
-
|
233 |
-
with st.spinner("Training models..."):
|
234 |
-
def train_models():
|
235 |
-
res1, xgbr, seq2 = walk_forward_validation_seq(df_final.dropna(), 'Target_clf', 'Target', 100, 1)
|
236 |
-
return res1, xgbr, seq2
|
237 |
-
res1, xgbr, seq2 = train_models()
|
238 |
-
# st.success("โ
Models trained")
|
239 |
-
|
240 |
-
with st.spinner("Getting new prediction..."):
|
241 |
-
|
242 |
-
# Get last row
|
243 |
-
new_pred = data.loc[final_row, model_cols]
|
244 |
-
|
245 |
-
new_pred = pd.DataFrame(new_pred).T
|
246 |
-
# new_pred_show = pd.DataFrame(index=[new_pred.columns], columns=[new_pred.index], data=[[v] for v in new_pred.values])
|
247 |
-
# last_date = datetime.datetime.strptime(data.loc[final_row], '%Y-%m-%d')
|
248 |
-
curr_date = final_row + BDay(1)
|
249 |
-
curr_date = curr_date.strftime('%Y-%m-%d')
|
250 |
-
|
251 |
-
new_pred['BigNewsDay'] = new_pred['BigNewsDay'].astype(float)
|
252 |
-
new_pred['Quarter'] = new_pred['Quarter'].astype(int)
|
253 |
-
new_pred['Perf5Day'] = new_pred['Perf5Day'].astype(bool)
|
254 |
-
new_pred['Perf5Day_n1'] = new_pred['Perf5Day_n1'].astype(bool)
|
255 |
-
new_pred['DaysGreen'] = new_pred['DaysGreen'].astype(float)
|
256 |
-
new_pred['DaysRed'] = new_pred['DaysRed'].astype(float)
|
257 |
-
new_pred['CurrentHigh30toClose'] = new_pred['CurrentHigh30toClose'].astype(float)
|
258 |
-
new_pred['CurrentLow30toClose'] = new_pred['CurrentLow30toClose'].astype(float)
|
259 |
-
new_pred['CurrentClose30toClose'] = new_pred['CurrentClose30toClose'].astype(float)
|
260 |
-
new_pred['CurrentRange30'] = new_pred['CurrentRange30'].astype(float)
|
261 |
-
new_pred['GapFill30'] = new_pred['GapFill30'].astype(float)
|
262 |
-
new_pred['CurrentGap'] = new_pred['CurrentGap'].astype(float)
|
263 |
-
new_pred['RangePct'] = new_pred['RangePct'].astype(float)
|
264 |
-
new_pred['RangePct_n1'] = new_pred['RangePct_n1'].astype(float)
|
265 |
-
new_pred['RangePct_n2'] = new_pred['RangePct_n2'].astype(float)
|
266 |
-
new_pred['OHLC4_VIX'] = new_pred['OHLC4_VIX'].astype(float)
|
267 |
-
new_pred['OHLC4_VIX_n1'] = new_pred['OHLC4_VIX_n1'].astype(float)
|
268 |
-
new_pred['OHLC4_VIX_n2'] = new_pred['OHLC4_VIX_n2'].astype(float)
|
269 |
-
new_pred['OpenL1'] = new_pred['OpenL1'].astype(float)
|
270 |
-
new_pred['OpenL2'] = new_pred['OpenL2'].astype(float)
|
271 |
-
new_pred['OpenH1'] = new_pred['OpenH1'].astype(float)
|
272 |
-
new_pred['OpenH2'] = new_pred['OpenH2'].astype(float)
|
273 |
-
new_pred['L1TouchPct'] = new_pred['L1TouchPct'].astype(float)
|
274 |
-
new_pred['L2TouchPct'] = new_pred['L2TouchPct'].astype(float)
|
275 |
-
new_pred['H1TouchPct'] = new_pred['H1TouchPct'].astype(float)
|
276 |
-
new_pred['H2TouchPct'] = new_pred['H2TouchPct'].astype(float)
|
277 |
-
new_pred['L1BreakPct'] = new_pred['L1BreakPct'].astype(float)
|
278 |
-
new_pred['L2BreakPct'] = new_pred['L2BreakPct'].astype(float)
|
279 |
-
new_pred['H1BreakPct'] = new_pred['H1BreakPct'].astype(float)
|
280 |
-
new_pred['H2BreakPct'] = new_pred['H2BreakPct'].astype(float)
|
281 |
-
new_pred['GreenProbas'] = new_pred['GreenProbas'].astype(float)
|
282 |
|
283 |
-
seq_proba = seq_predict_proba(new_pred, xgbr, seq2)
|
284 |
-
|
285 |
-
elif option == '08:00':
|
286 |
-
# run60 = st.button('๐๐ฝโโ๏ธ Run')
|
287 |
-
# if run60:
|
288 |
from model_intra import *
|
289 |
-
|
290 |
-
fname='performance_for_90m_model.csv'
|
291 |
|
292 |
with st.spinner('Loading data...'):
|
293 |
-
data, df_final, final_row = get_data(
|
294 |
# st.success("โ
Historical data")
|
295 |
|
296 |
with st.spinner("Training models..."):
|
@@ -448,7 +317,7 @@ with st.form("choose_model"):
|
|
448 |
prices.columns = ['']
|
449 |
|
450 |
roc_auc_score_all = roc_auc_score(res1['True'].astype(int), res1['Predicted'].values)
|
451 |
-
roc_auc_score_calib = roc_auc_score(res1.dropna(subset='
|
452 |
precision_score_all = precision_score(res1['True'].astype(int), res1['Predicted'] > 0.5)
|
453 |
recall_score_all = recall_score(res1['True'].astype(int), res1['Predicted'] > 0.5)
|
454 |
len_all = len(res1)
|
@@ -456,7 +325,7 @@ with st.form("choose_model"):
|
|
456 |
res2_filtered = res1.loc[(res1['Predicted'] > hi_thres) | (res1['Predicted'] <= lo_thres)]
|
457 |
|
458 |
roc_auc_score_hi = roc_auc_score(res2_filtered['True'].astype(int), res2_filtered['Predicted'].values)
|
459 |
-
roc_auc_score_hi_calib = roc_auc_score(res2_filtered.dropna(subset='
|
460 |
precision_score_hi = precision_score(res2_filtered['True'].astype(int), res2_filtered['Predicted'] > 0.5)
|
461 |
recall_score_hi = recall_score(res2_filtered['True'].astype(int), res2_filtered['Predicted'] > 0.5)
|
462 |
len_hi = len(res2_filtered)
|
@@ -533,32 +402,16 @@ with st.form("choose_model"):
|
|
533 |
|
534 |
check = data.tail(1)
|
535 |
|
536 |
-
|
537 |
-
|
538 |
-
|
539 |
-
|
540 |
-
|
541 |
-
|
542 |
-
|
543 |
-
|
544 |
-
|
545 |
-
|
546 |
-
|
547 |
-
data['VIX_EM_15'] = data['VIX_EM'] * 1.5
|
548 |
-
data['VIX_EM_15_High'] = data['Close'] + data['VIX_EM_15']
|
549 |
-
data['VIX_EM_15_Low'] = data['Close'] - data['VIX_EM_15']
|
550 |
-
|
551 |
-
data['VIX_EM'] = data['VIX_EM'].shift(1)
|
552 |
-
data['VIX_EM_High'] = data['VIX_EM_High'].shift(1)
|
553 |
-
data['VIX_EM_Low'] = data['VIX_EM_Low'].shift(1)
|
554 |
-
|
555 |
-
data['VIX_EM_15'] = data['VIX_EM_15'].shift(1)
|
556 |
-
data['VIX_EM_15_High'] = data['VIX_EM_15_High'].shift(1)
|
557 |
-
data['VIX_EM_15_Low'] = data['VIX_EM_15_Low'].shift(1)
|
558 |
-
|
559 |
-
data['VIX_EM_125'] = data['VIX_EM_125'].shift(1)
|
560 |
-
data['VIX_EM_125_High'] = data['VIX_EM_125_High'].shift(1)
|
561 |
-
data['VIX_EM_125_Low'] = data['VIX_EM_125_Low'].shift(1)
|
562 |
|
563 |
# Cache all DFs
|
564 |
all_dfs = []
|
@@ -571,33 +424,8 @@ with st.form("choose_model"):
|
|
571 |
# st.dataframe(prices.T.set_index('PrevClose', drop=True))
|
572 |
st.write(df_probas)
|
573 |
|
574 |
-
|
575 |
-
|
576 |
-
st.write(f'๐ VIX EM {lbl}: {em_use:.2f}')
|
577 |
-
df_em = pd.DataFrame(columns=['EM','Low','High','InRange','Tested'])
|
578 |
-
df_em.index.name = f'{close_use:.2f}'
|
579 |
-
df_em.loc['EM 1X'] = [
|
580 |
-
f"{em_use:.2f} ({em_use / close_use:.1%})",
|
581 |
-
f"{close_use - em_use:.2f}",
|
582 |
-
f"{close_use + em_use:.2f}",
|
583 |
-
f"{len(data.query('Close <= VIX_EM_High & Close >= VIX_EM_Low')) / len(data):.1%}",
|
584 |
-
f"{len(data.query('High > VIX_EM_High | Low < VIX_EM_Low')) / len(data):.1%}"
|
585 |
-
]
|
586 |
-
df_em.loc['EM 1.25X'] = [
|
587 |
-
f"{curr_em * 1.25:.2f} ({(em_use * 1.25) / close_use:.1%})",
|
588 |
-
f"{close_use - (em_use * 1.25):.2f}",
|
589 |
-
f"{close_use + (em_use * 1.25):.2f}",
|
590 |
-
f"{len(data.query('Close <= VIX_EM_125_High & Close >= VIX_EM_125_Low')) / len(data):.1%}",
|
591 |
-
f"{len(data.query('High > VIX_EM_125_High | Low < VIX_EM_125_Low')) / len(data):.1%}"
|
592 |
-
]
|
593 |
-
df_em.loc[f"EM 1.5X"] = [
|
594 |
-
f"{curr_em * 1.5:.2f} ({(em_use * 1.5) / close_use:.1%})",
|
595 |
-
f"{close_use - (em_use * 1.5):.2f}",
|
596 |
-
f"{close_use + (em_use * 1.5):.2f}",
|
597 |
-
f"{len(data.query('Close <= VIX_EM_15_High & Close >= VIX_EM_15_Low')) / len(data):.1%}",
|
598 |
-
f"{len(data.query('High > VIX_EM_15_High | Low < VIX_EM_15_Low')) / len(data):.1%}"
|
599 |
-
]
|
600 |
-
st.write(df_em)
|
601 |
|
602 |
with tab2:
|
603 |
st.subheader('Latest Data for Pred')
|
|
|
66 |
return emojis
|
67 |
|
68 |
# Example usage:
|
69 |
+
times_list = ['06:30', '07:00', '07:30', '08:00', '08:30', '09:00', '09:30', '10:00', '10:30', '11:00', '11:30', '12:00', '12:30']
|
70 |
emojis_list = get_time_emojis(times_list, pst_now)
|
71 |
|
72 |
|
73 |
st.title('๐ฎ Gameday Model for $SPX')
|
74 |
st.markdown('**PLEASE NOTE:** Model should be run at or after market open. Documentation on the model and its features [can be found here.](https://huggingface.co/spaces/boomsss/gamedayspx/blob/main/README.md)')
|
75 |
with st.form("choose_model"):
|
|
|
|
|
|
|
|
|
76 |
|
77 |
col1, col2 = st.columns(2)
|
78 |
|
|
|
94 |
st.write('No model selected.')
|
95 |
|
96 |
if submitted:
|
97 |
+
|
98 |
+
fname=f'performance_for_{option}_model.csv'
|
99 |
|
100 |
if option == '06:30':
|
101 |
+
|
|
|
102 |
from model_day import *
|
103 |
|
104 |
fname='performance_for_open_model.csv'
|
|
|
152 |
new_pred['H2BreakPct'] = new_pred['H2BreakPct'].astype(float)
|
153 |
|
154 |
seq_proba = seq_predict_proba(new_pred, xgbr, seq2)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
155 |
|
156 |
+
else:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
157 |
|
|
|
|
|
|
|
|
|
|
|
158 |
from model_intra import *
|
159 |
+
idx = times_list.index(option)
|
|
|
160 |
|
161 |
with st.spinner('Loading data...'):
|
162 |
+
data, df_final, final_row = get_data(idx)
|
163 |
# st.success("โ
Historical data")
|
164 |
|
165 |
with st.spinner("Training models..."):
|
|
|
317 |
prices.columns = ['']
|
318 |
|
319 |
roc_auc_score_all = roc_auc_score(res1['True'].astype(int), res1['Predicted'].values)
|
320 |
+
roc_auc_score_calib = roc_auc_score(res1.dropna(subset='CalibPredicted')['True'].astype(int), res1.dropna(subset='CalibPredicted')['CalibPredicted'].values)
|
321 |
precision_score_all = precision_score(res1['True'].astype(int), res1['Predicted'] > 0.5)
|
322 |
recall_score_all = recall_score(res1['True'].astype(int), res1['Predicted'] > 0.5)
|
323 |
len_all = len(res1)
|
|
|
325 |
res2_filtered = res1.loc[(res1['Predicted'] > hi_thres) | (res1['Predicted'] <= lo_thres)]
|
326 |
|
327 |
roc_auc_score_hi = roc_auc_score(res2_filtered['True'].astype(int), res2_filtered['Predicted'].values)
|
328 |
+
roc_auc_score_hi_calib = roc_auc_score(res2_filtered.dropna(subset='CalibPredicted')['True'].astype(int), res2_filtered.dropna(subset='CalibPredicted')['CalibPredicted'].values)
|
329 |
precision_score_hi = precision_score(res2_filtered['True'].astype(int), res2_filtered['Predicted'] > 0.5)
|
330 |
recall_score_hi = recall_score(res2_filtered['True'].astype(int), res2_filtered['Predicted'] > 0.5)
|
331 |
len_hi = len(res2_filtered)
|
|
|
402 |
|
403 |
check = data.tail(1)
|
404 |
|
405 |
+
df_levels = pd.DataFrame(
|
406 |
+
index=['H2','H1','L1','L2'],
|
407 |
+
columns=['Level','BreakPct(100)','TouchPct(100)'],
|
408 |
+
data=[
|
409 |
+
[f"{data['H2'].iloc[-1]:.2f}",f"{data['H2BreakPct'].iloc[-2]:.1%}",f"{data['H2TouchPct'].iloc[-2]:.1%}"],
|
410 |
+
[f"{data['H1'].iloc[-1]:.2f}",f"{data['H1BreakPct'].iloc[-2]:.1%}",f"{data['H1TouchPct'].iloc[-2]:.1%}"],
|
411 |
+
[f"{data['L1'].iloc[-1]:.2f}",f"{data['L1BreakPct'].iloc[-2]:.1%}",f"{data['L1TouchPct'].iloc[-2]:.1%}"],
|
412 |
+
[f"{data['L2'].iloc[-1]:.2f}",f"{data['L2BreakPct'].iloc[-2]:.1%}",f"{data['L2TouchPct'].iloc[-2]:.1%}"]
|
413 |
+
]
|
414 |
+
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
415 |
|
416 |
# Cache all DFs
|
417 |
all_dfs = []
|
|
|
424 |
# st.dataframe(prices.T.set_index('PrevClose', drop=True))
|
425 |
st.write(df_probas)
|
426 |
|
427 |
+
st.write(f'๐ JC Levels')
|
428 |
+
st.write(df_levels)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
429 |
|
430 |
with tab2:
|
431 |
st.subheader('Latest Data for Pred')
|
model_day.py
CHANGED
@@ -126,7 +126,7 @@ def walk_forward_validation_seq(df, target_column_clf, target_column_regr, num_t
|
|
126 |
|
127 |
greenprobas = []
|
128 |
meanprobas = []
|
129 |
-
for i, pct in enumerate(df_results['Predicted']):
|
130 |
try:
|
131 |
df_q = get_quantiles(df_results.iloc[:i], 'Predicted', 7)
|
132 |
for q in df_q.index:
|
@@ -140,8 +140,7 @@ def walk_forward_validation_seq(df, target_column_clf, target_column_regr, num_t
|
|
140 |
greenprobas.append(p)
|
141 |
meanprobas.append(c)
|
142 |
|
143 |
-
df_results['CalibPredicted'] =
|
144 |
-
df_results['CalibGreenProba'] = greenprobas
|
145 |
|
146 |
return df_results, model1, model2
|
147 |
|
|
|
126 |
|
127 |
greenprobas = []
|
128 |
meanprobas = []
|
129 |
+
for i, pct in tqdm(enumerate(df_results['Predicted'], desc='Calibrating Probas')):
|
130 |
try:
|
131 |
df_q = get_quantiles(df_results.iloc[:i], 'Predicted', 7)
|
132 |
for q in df_q.index:
|
|
|
140 |
greenprobas.append(p)
|
141 |
meanprobas.append(c)
|
142 |
|
143 |
+
df_results['CalibPredicted'] = greenprobas
|
|
|
144 |
|
145 |
return df_results, model1, model2
|
146 |
|
model_intra.py
CHANGED
@@ -135,7 +135,7 @@ def walk_forward_validation_seq(df, target_column_clf, target_column_regr, num_t
|
|
135 |
|
136 |
greenprobas = []
|
137 |
meanprobas = []
|
138 |
-
for i, pct in enumerate(df_results['Predicted']):
|
139 |
try:
|
140 |
df_q = get_quantiles(df_results.iloc[:i], 'Predicted', 7)
|
141 |
for q in df_q.index:
|
@@ -149,8 +149,7 @@ def walk_forward_validation_seq(df, target_column_clf, target_column_regr, num_t
|
|
149 |
greenprobas.append(p)
|
150 |
meanprobas.append(c)
|
151 |
|
152 |
-
df_results['CalibPredicted'] =
|
153 |
-
df_results['CalibGreenProba'] = greenprobas
|
154 |
|
155 |
return df_results, model1, model2
|
156 |
|
|
|
135 |
|
136 |
greenprobas = []
|
137 |
meanprobas = []
|
138 |
+
for i, pct in tqdm(enumerate(df_results['Predicted']), desc='Calibrating Probas'):
|
139 |
try:
|
140 |
df_q = get_quantiles(df_results.iloc[:i], 'Predicted', 7)
|
141 |
for q in df_q.index:
|
|
|
149 |
greenprobas.append(p)
|
150 |
meanprobas.append(c)
|
151 |
|
152 |
+
df_results['CalibPredicted'] = greenprobas
|
|
|
153 |
|
154 |
return df_results, model1, model2
|
155 |
|
troubleshoot_day_model.ipynb
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
"cells": [
|
3 |
{
|
4 |
"cell_type": "code",
|
5 |
-
"execution_count":
|
6 |
"metadata": {},
|
7 |
"outputs": [],
|
8 |
"source": [
|
@@ -13,18 +13,18 @@
|
|
13 |
},
|
14 |
{
|
15 |
"cell_type": "code",
|
16 |
-
"execution_count":
|
17 |
"metadata": {},
|
18 |
"outputs": [
|
19 |
{
|
20 |
"name": "stderr",
|
21 |
"output_type": "stream",
|
22 |
"text": [
|
23 |
-
"getting econ tickers: 100%|โโโโโโโโโโ| 3/3 [00:00<00:00,
|
24 |
-
"Getting release dates: 100%|โโโโโโโโโโ| 8/8 [00:01<00:00, 4.
|
25 |
-
"Making indicators: 100%|โโโโโโโโโโ| 8/8 [00:00<00:00,
|
26 |
"Found cached dataset text (C:/Users/WINSTON-ITX/.cache/huggingface/datasets/boomsss___text/boomsss--spx_intra-e0e5e7af8fd43022/0.0.0/cb1e9bd71a82ad27976be3b12b407850fe2837d80c22c5e03a28949843a8ace2)\n",
|
27 |
-
"Merging econ data: 100%|โโโโโโโโโโ| 8/8 [00:00<00:00, 999.
|
28 |
]
|
29 |
}
|
30 |
],
|
@@ -34,7 +34,7 @@
|
|
34 |
},
|
35 |
{
|
36 |
"cell_type": "code",
|
37 |
-
"execution_count":
|
38 |
"metadata": {},
|
39 |
"outputs": [],
|
40 |
"source": [
|
@@ -46,23 +46,22 @@
|
|
46 |
},
|
47 |
{
|
48 |
"cell_type": "code",
|
49 |
-
"execution_count":
|
50 |
"metadata": {},
|
51 |
"outputs": [
|
52 |
{
|
53 |
"name": "stderr",
|
54 |
"output_type": "stream",
|
55 |
"text": [
|
56 |
-
"LR Model: 100%|โโโโโโโโโโ|
|
57 |
-
"d:\\Projects\\gamedayspx\\model_intra.py:97: SettingWithCopyWarning
|
58 |
-
"\n",
|
59 |
-
"\n",
|
60 |
"A value is trying to be set on a copy of a slice from a DataFrame.\n",
|
61 |
"Try using .loc[row_indexer,col_indexer] = value instead\n",
|
62 |
"\n",
|
63 |
"See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n",
|
64 |
-
"\n",
|
65 |
-
"CLF Model: 100%|โโโโโโโโโโ|
|
|
|
66 |
]
|
67 |
}
|
68 |
],
|
@@ -72,7 +71,7 @@
|
|
72 |
},
|
73 |
{
|
74 |
"cell_type": "code",
|
75 |
-
"execution_count":
|
76 |
"metadata": {},
|
77 |
"outputs": [],
|
78 |
"source": [
|
@@ -101,7 +100,7 @@
|
|
101 |
"hi_thres = 0.6 # res1.loc[middle_quantiles, 'Predicted'].max()\n",
|
102 |
"\n",
|
103 |
"roc_auc_score_all = roc_auc_score(res1['True'].astype(int), res1['Predicted'].values)\n",
|
104 |
-
"roc_auc_score_calib = roc_auc_score(res1.dropna(subset='
|
105 |
"precision_score_all = precision_score(res1['True'].astype(int), res1['Predicted'] > 0.5)\n",
|
106 |
"recall_score_all = recall_score(res1['True'].astype(int), res1['Predicted'] > 0.5)\n",
|
107 |
"len_all = len(res1)\n",
|
@@ -109,7 +108,7 @@
|
|
109 |
"res2_filtered = res1.loc[(res1['Predicted'] > hi_thres) | (res1['Predicted'] <= lo_thres)]\n",
|
110 |
"\n",
|
111 |
"roc_auc_score_hi = roc_auc_score(res2_filtered['True'].astype(int), res2_filtered['Predicted'].values)\n",
|
112 |
-
"roc_auc_score_hi_calib = roc_auc_score(res2_filtered.dropna(subset='
|
113 |
"precision_score_hi = precision_score(res2_filtered['True'].astype(int), res2_filtered['Predicted'] > 0.5)\n",
|
114 |
"recall_score_hi = recall_score(res2_filtered['True'].astype(int), res2_filtered['Predicted'] > 0.5)\n",
|
115 |
"len_hi = len(res2_filtered)\n",
|
@@ -167,7 +166,7 @@
|
|
167 |
},
|
168 |
{
|
169 |
"cell_type": "code",
|
170 |
-
"execution_count":
|
171 |
"metadata": {},
|
172 |
"outputs": [
|
173 |
{
|
@@ -194,189 +193,168 @@
|
|
194 |
" <th>True</th>\n",
|
195 |
" <th>Predicted</th>\n",
|
196 |
" <th>CalibPredicted</th>\n",
|
197 |
-
" <th>CalibGreenProba</th>\n",
|
198 |
" <th>Accuracy</th>\n",
|
199 |
" <th>HTML</th>\n",
|
200 |
" </tr>\n",
|
201 |
" </thead>\n",
|
202 |
" <tbody>\n",
|
203 |
" <tr>\n",
|
204 |
-
" <th>2023-09-11</th>\n",
|
205 |
-
" <td>False</td>\n",
|
206 |
-
" <td>0.207403</td>\n",
|
207 |
-
" <td>0.2350</td>\n",
|
208 |
-
" <td>0.120567</td>\n",
|
209 |
-
" <td>โ
</td>\n",
|
210 |
-
" <td>&#9989;</td>\n",
|
211 |
-
" </tr>\n",
|
212 |
-
" <tr>\n",
|
213 |
" <th>2023-09-12</th>\n",
|
214 |
" <td>True</td>\n",
|
215 |
-
" <td>0.
|
216 |
-
" <td>0.
|
217 |
-
" <td>0.556391</td>\n",
|
218 |
" <td>๐จ</td>\n",
|
219 |
" <td>&#11036;</td>\n",
|
220 |
" </tr>\n",
|
221 |
" <tr>\n",
|
222 |
" <th>2023-09-13</th>\n",
|
223 |
" <td>True</td>\n",
|
224 |
-
" <td>0.
|
225 |
-
" <td>0.
|
226 |
-
" <td>0.870690</td>\n",
|
227 |
" <td>โ
</td>\n",
|
228 |
" <td>&#9989;</td>\n",
|
229 |
" </tr>\n",
|
230 |
" <tr>\n",
|
231 |
" <th>2023-09-14</th>\n",
|
232 |
" <td>False</td>\n",
|
233 |
-
" <td>0.
|
234 |
-
" <td>0.
|
235 |
-
" <td>0.119718</td>\n",
|
236 |
" <td>โ
</td>\n",
|
237 |
" <td>&#9989;</td>\n",
|
238 |
" </tr>\n",
|
239 |
" <tr>\n",
|
240 |
" <th>2023-09-15</th>\n",
|
241 |
" <td>True</td>\n",
|
242 |
-
" <td>0.
|
243 |
-
" <td>0.
|
244 |
-
" <td>0.559701</td>\n",
|
245 |
" <td>๐จ</td>\n",
|
246 |
" <td>&#11036;</td>\n",
|
247 |
" </tr>\n",
|
248 |
" <tr>\n",
|
249 |
" <th>2023-09-18</th>\n",
|
250 |
" <td>False</td>\n",
|
251 |
-
" <td>0.
|
252 |
-
" <td>0.
|
253 |
-
" <td>0.118881</td>\n",
|
254 |
" <td>โ
</td>\n",
|
255 |
" <td>&#9989;</td>\n",
|
256 |
" </tr>\n",
|
257 |
" <tr>\n",
|
258 |
" <th>2023-09-19</th>\n",
|
259 |
" <td>False</td>\n",
|
260 |
-
" <td>0.
|
261 |
-
" <td>0.
|
262 |
-
" <td
|
263 |
-
" <td
|
264 |
-
" <td>&#10060;</td>\n",
|
265 |
" </tr>\n",
|
266 |
" <tr>\n",
|
267 |
" <th>2023-09-20</th>\n",
|
268 |
" <td>False</td>\n",
|
269 |
-
" <td>0.
|
270 |
-
" <td>0.
|
271 |
-
" <td>0.118056</td>\n",
|
272 |
" <td>โ
</td>\n",
|
273 |
" <td>&#9989;</td>\n",
|
274 |
" </tr>\n",
|
275 |
" <tr>\n",
|
276 |
" <th>2023-09-21</th>\n",
|
277 |
" <td>False</td>\n",
|
278 |
-
" <td>0.
|
279 |
-
" <td>0.
|
280 |
-
" <td>0.420168</td>\n",
|
281 |
" <td>๐จ</td>\n",
|
282 |
" <td>&#11036;</td>\n",
|
283 |
" </tr>\n",
|
284 |
" <tr>\n",
|
285 |
" <th>2023-09-22</th>\n",
|
286 |
" <td>True</td>\n",
|
287 |
-
" <td>0.
|
288 |
-
" <td>0.
|
289 |
-
" <td
|
290 |
-
" <td
|
291 |
-
" <td>&#11036;</td>\n",
|
292 |
" </tr>\n",
|
293 |
" <tr>\n",
|
294 |
" <th>2023-09-25</th>\n",
|
295 |
" <td>False</td>\n",
|
296 |
-
" <td>0.
|
297 |
-
" <td>0.
|
298 |
-
" <td>0.117241</td>\n",
|
299 |
" <td>โ
</td>\n",
|
300 |
" <td>&#9989;</td>\n",
|
301 |
" </tr>\n",
|
302 |
" <tr>\n",
|
303 |
" <th>2023-09-26</th>\n",
|
304 |
" <td>True</td>\n",
|
305 |
-
" <td>0.
|
306 |
-
" <td>0.
|
307 |
-
" <td>0.421488</td>\n",
|
308 |
" <td>๐จ</td>\n",
|
309 |
" <td>&#11036;</td>\n",
|
310 |
" </tr>\n",
|
311 |
" <tr>\n",
|
312 |
" <th>2023-09-27</th>\n",
|
313 |
" <td>True</td>\n",
|
314 |
-
" <td>0.
|
315 |
-
" <td>0.
|
316 |
-
" <td>0.558824</td>\n",
|
317 |
" <td>โ
</td>\n",
|
318 |
" <td>&#9989;</td>\n",
|
319 |
" </tr>\n",
|
320 |
" <tr>\n",
|
321 |
" <th>2023-09-28</th>\n",
|
322 |
" <td>False</td>\n",
|
323 |
-
" <td>0.
|
324 |
-
" <td>0.
|
325 |
-
" <td>0.871245</td>\n",
|
326 |
" <td>โ</td>\n",
|
327 |
" <td>&#10060;</td>\n",
|
328 |
" </tr>\n",
|
329 |
" <tr>\n",
|
330 |
" <th>2023-09-29</th>\n",
|
331 |
" <td>True</td>\n",
|
332 |
-
" <td>0.
|
333 |
-
" <td>0.
|
334 |
-
" <td>0.557377</td>\n",
|
335 |
" <td>๐จ</td>\n",
|
336 |
" <td>&#11036;</td>\n",
|
337 |
" </tr>\n",
|
338 |
" <tr>\n",
|
339 |
" <th>2023-10-02</th>\n",
|
340 |
" <td>False</td>\n",
|
341 |
-
" <td>0.
|
342 |
-
" <td>0.
|
343 |
-
" <td>0.116438</td>\n",
|
344 |
" <td>โ
</td>\n",
|
345 |
" <td>&#9989;</td>\n",
|
346 |
" </tr>\n",
|
347 |
" <tr>\n",
|
348 |
" <th>2023-10-03</th>\n",
|
349 |
" <td>True</td>\n",
|
350 |
-
" <td>0.
|
351 |
-
" <td>0.
|
352 |
-
" <td
|
353 |
-
" <td
|
354 |
-
" <td>&#9989;</td>\n",
|
355 |
" </tr>\n",
|
356 |
" <tr>\n",
|
357 |
" <th>2023-10-04</th>\n",
|
358 |
" <td>False</td>\n",
|
359 |
-
" <td>0.
|
360 |
-
" <td>0.
|
361 |
-
" <td>0.115646</td>\n",
|
362 |
" <td>โ
</td>\n",
|
363 |
" <td>&#9989;</td>\n",
|
364 |
" </tr>\n",
|
365 |
" <tr>\n",
|
366 |
" <th>2023-10-05</th>\n",
|
367 |
" <td>True</td>\n",
|
368 |
-
" <td>0.
|
369 |
-
" <td>0.
|
370 |
-
" <td>0.204724</td>\n",
|
371 |
" <td>โ</td>\n",
|
372 |
" <td>&#10060;</td>\n",
|
373 |
" </tr>\n",
|
374 |
" <tr>\n",
|
375 |
" <th>2023-10-06</th>\n",
|
376 |
" <td>True</td>\n",
|
377 |
-
" <td>0.
|
378 |
-
" <td>0.
|
379 |
-
" <td
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
380 |
" <td>โ
</td>\n",
|
381 |
" <td>&#9989;</td>\n",
|
382 |
" </tr>\n",
|
@@ -385,52 +363,30 @@
|
|
385 |
"</div>"
|
386 |
],
|
387 |
"text/plain": [
|
388 |
-
" True Predicted CalibPredicted
|
389 |
-
"2023-09-
|
390 |
-
"2023-09-
|
391 |
-
"2023-09-
|
392 |
-
"2023-09-
|
393 |
-
"2023-09-
|
394 |
-
"2023-09-
|
395 |
-
"2023-09-
|
396 |
-
"2023-09-
|
397 |
-
"2023-09-
|
398 |
-
"2023-09-
|
399 |
-
"2023-09-
|
400 |
-
"2023-09-
|
401 |
-
"2023-09-
|
402 |
-
"2023-09-
|
403 |
-
"2023-
|
404 |
-
"2023-10-
|
405 |
-
"2023-10-
|
406 |
-
"2023-10-
|
407 |
-
"2023-10-
|
408 |
-
"2023-10-
|
409 |
-
"\n",
|
410 |
-
" HTML \n",
|
411 |
-
"2023-09-11 ✅ \n",
|
412 |
-
"2023-09-12 ⬜ \n",
|
413 |
-
"2023-09-13 ✅ \n",
|
414 |
-
"2023-09-14 ✅ \n",
|
415 |
-
"2023-09-15 ⬜ \n",
|
416 |
-
"2023-09-18 ✅ \n",
|
417 |
-
"2023-09-19 ❌ \n",
|
418 |
-
"2023-09-20 ✅ \n",
|
419 |
-
"2023-09-21 ⬜ \n",
|
420 |
-
"2023-09-22 ⬜ \n",
|
421 |
-
"2023-09-25 ✅ \n",
|
422 |
-
"2023-09-26 ⬜ \n",
|
423 |
-
"2023-09-27 ✅ \n",
|
424 |
-
"2023-09-28 ❌ \n",
|
425 |
-
"2023-09-29 ⬜ \n",
|
426 |
-
"2023-10-02 ✅ \n",
|
427 |
-
"2023-10-03 ✅ \n",
|
428 |
-
"2023-10-04 ✅ \n",
|
429 |
-
"2023-10-05 ❌ \n",
|
430 |
-
"2023-10-06 ✅ "
|
431 |
]
|
432 |
},
|
433 |
-
"execution_count":
|
434 |
"metadata": {},
|
435 |
"output_type": "execute_result"
|
436 |
}
|
@@ -441,7 +397,7 @@
|
|
441 |
},
|
442 |
{
|
443 |
"cell_type": "code",
|
444 |
-
"execution_count":
|
445 |
"metadata": {},
|
446 |
"outputs": [
|
447 |
{
|
@@ -450,7 +406,7 @@
|
|
450 |
"147"
|
451 |
]
|
452 |
},
|
453 |
-
"execution_count":
|
454 |
"metadata": {},
|
455 |
"output_type": "execute_result"
|
456 |
}
|
@@ -461,7 +417,102 @@
|
|
461 |
},
|
462 |
{
|
463 |
"cell_type": "code",
|
464 |
-
"execution_count":
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
465 |
"metadata": {},
|
466 |
"outputs": [
|
467 |
{
|
@@ -492,28 +543,28 @@
|
|
492 |
" <tbody>\n",
|
493 |
" <tr>\n",
|
494 |
" <th>N</th>\n",
|
495 |
-
" <td>
|
496 |
-
" <td>
|
497 |
" </tr>\n",
|
498 |
" <tr>\n",
|
499 |
" <th>ROC AUC</th>\n",
|
500 |
-
" <td>0.
|
501 |
" <td>0.85</td>\n",
|
502 |
" </tr>\n",
|
503 |
" <tr>\n",
|
504 |
" <th>Calib. AUC</th>\n",
|
505 |
" <td>0.77</td>\n",
|
506 |
-
" <td>0.
|
507 |
" </tr>\n",
|
508 |
" <tr>\n",
|
509 |
" <th>Precision</th>\n",
|
510 |
-
" <td>0.
|
511 |
-
" <td>0.
|
512 |
" </tr>\n",
|
513 |
" <tr>\n",
|
514 |
" <th>Recall</th>\n",
|
515 |
" <td>0.79</td>\n",
|
516 |
-
" <td>0.
|
517 |
" </tr>\n",
|
518 |
" </tbody>\n",
|
519 |
"</table>\n",
|
@@ -521,14 +572,14 @@
|
|
521 |
],
|
522 |
"text/plain": [
|
523 |
" All High Confidence\n",
|
524 |
-
"N
|
525 |
-
"ROC AUC 0.
|
526 |
-
"Calib. AUC 0.77 0.
|
527 |
-
"Precision 0.
|
528 |
-
"Recall 0.79 0.
|
529 |
]
|
530 |
},
|
531 |
-
"execution_count":
|
532 |
"metadata": {},
|
533 |
"output_type": "execute_result"
|
534 |
}
|
@@ -539,7 +590,7 @@
|
|
539 |
},
|
540 |
{
|
541 |
"cell_type": "code",
|
542 |
-
"execution_count":
|
543 |
"metadata": {},
|
544 |
"outputs": [
|
545 |
{
|
@@ -551,6 +602,8 @@
|
|
551 |
"data": [
|
552 |
{
|
553 |
"close": [
|
|
|
|
|
554 |
3000.929931640625,
|
555 |
3009.570068359375,
|
556 |
3007.389892578125,
|
@@ -1576,7 +1629,8 @@
|
|
1576 |
4229.4501953125,
|
1577 |
4263.75,
|
1578 |
4258.18994140625,
|
1579 |
-
4308.5
|
|
|
1580 |
],
|
1581 |
"decreasing": {
|
1582 |
"fillcolor": "#ff5f5f",
|
@@ -1585,6 +1639,8 @@
|
|
1585 |
}
|
1586 |
},
|
1587 |
"high": [
|
|
|
|
|
1588 |
3000.929931640625,
|
1589 |
3020.739990234375,
|
1590 |
3017.330078125,
|
@@ -2610,7 +2666,8 @@
|
|
2610 |
4281.14990234375,
|
2611 |
4268.5,
|
2612 |
4267.1298828125,
|
2613 |
-
4324.10009765625
|
|
|
2614 |
],
|
2615 |
"increasing": {
|
2616 |
"fillcolor": "#3399ff",
|
@@ -2619,6 +2676,8 @@
|
|
2619 |
}
|
2620 |
},
|
2621 |
"low": [
|
|
|
|
|
2622 |
2975.31005859375,
|
2623 |
3000.919921875,
|
2624 |
3002.89990234375,
|
@@ -3644,10 +3703,13 @@
|
|
3644 |
4216.4501953125,
|
3645 |
4220.47998046875,
|
3646 |
4225.91015625,
|
3647 |
-
4219.5498046875
|
|
|
3648 |
],
|
3649 |
"name": "OHLC Chart",
|
3650 |
"open": [
|
|
|
|
|
3651 |
2981.409912109375,
|
3652 |
3009.080078125,
|
3653 |
3012.2099609375,
|
@@ -4673,10 +4735,13 @@
|
|
4673 |
4269.75,
|
4674 |
4233.830078125,
|
4675 |
4259.31005859375,
|
4676 |
-
4234.7900390625
|
|
|
4677 |
],
|
4678 |
"type": "candlestick",
|
4679 |
"x": [
|
|
|
|
|
4680 |
"2019-09-11T00:00:00",
|
4681 |
"2019-09-12T00:00:00",
|
4682 |
"2019-09-13T00:00:00",
|
@@ -5702,7 +5767,8 @@
|
|
5702 |
"2023-10-03T00:00:00",
|
5703 |
"2023-10-04T00:00:00",
|
5704 |
"2023-10-05T00:00:00",
|
5705 |
-
"2023-10-06T00:00:00"
|
|
|
5706 |
]
|
5707 |
},
|
5708 |
{
|
@@ -5712,18 +5778,20 @@
|
|
5712 |
"mode": "text",
|
5713 |
"name": "Predictions",
|
5714 |
"text": [
|
5715 |
-
"&#
|
5716 |
"⬜",
|
5717 |
"✅",
|
5718 |
-
"⬜",
|
5719 |
"❌",
|
5720 |
"✅",
|
5721 |
-
"❌",
|
5722 |
"⬜",
|
5723 |
-
"❌",
|
5724 |
"⬜",
|
5725 |
"✅",
|
5726 |
"❌",
|
|
|
|
|
|
|
|
|
|
|
5727 |
"✅",
|
5728 |
"✅",
|
5729 |
"✅",
|
@@ -5736,14 +5804,14 @@
|
|
5736 |
"✅",
|
5737 |
"⬜",
|
5738 |
"✅",
|
5739 |
-
"&#
|
5740 |
"✅",
|
5741 |
"⬜",
|
5742 |
"✅",
|
5743 |
"⬜",
|
5744 |
"⬜",
|
5745 |
"⬜",
|
5746 |
-
"&#
|
5747 |
"✅",
|
5748 |
"⬜",
|
5749 |
"⬜",
|
@@ -5751,7 +5819,7 @@
|
|
5751 |
"✅",
|
5752 |
"✅",
|
5753 |
"❌",
|
5754 |
-
"&#
|
5755 |
"✅",
|
5756 |
"⬜",
|
5757 |
"✅",
|
@@ -5762,12 +5830,12 @@
|
|
5762 |
"❌",
|
5763 |
"❌",
|
5764 |
"⬜",
|
5765 |
-
"&#
|
5766 |
"⬜",
|
5767 |
"✅",
|
5768 |
"✅",
|
5769 |
"✅",
|
5770 |
-
"&#
|
5771 |
"✅",
|
5772 |
"✅",
|
5773 |
"✅",
|
@@ -5775,23 +5843,23 @@
|
|
5775 |
"✅",
|
5776 |
"⬜",
|
5777 |
"❌",
|
5778 |
-
"&#
|
5779 |
"✅",
|
5780 |
"✅",
|
5781 |
"✅",
|
5782 |
"⬜",
|
5783 |
-
"&#
|
5784 |
-
"&#
|
5785 |
"✅",
|
5786 |
"✅",
|
5787 |
"⬜",
|
5788 |
"✅",
|
5789 |
"✅",
|
5790 |
"✅",
|
5791 |
-
"&#
|
5792 |
"✅",
|
5793 |
"✅",
|
5794 |
-
"&#
|
5795 |
"✅",
|
5796 |
"⬜",
|
5797 |
"✅",
|
@@ -5803,7 +5871,7 @@
|
|
5803 |
"✅",
|
5804 |
"✅",
|
5805 |
"✅",
|
5806 |
-
"&#
|
5807 |
"⬜",
|
5808 |
"✅",
|
5809 |
"✅",
|
@@ -5830,7 +5898,7 @@
|
|
5830 |
"✅",
|
5831 |
"✅",
|
5832 |
"✅",
|
5833 |
-
"&#
|
5834 |
"✅",
|
5835 |
"✅",
|
5836 |
"✅",
|
@@ -5850,7 +5918,7 @@
|
|
5850 |
"✅",
|
5851 |
"✅",
|
5852 |
"✅",
|
5853 |
-
"&#
|
5854 |
"✅",
|
5855 |
"✅",
|
5856 |
"⬜",
|
@@ -5887,7 +5955,7 @@
|
|
5887 |
"⬜",
|
5888 |
"✅",
|
5889 |
"⬜",
|
5890 |
-
"&#
|
5891 |
"✅",
|
5892 |
"⬜",
|
5893 |
"❌",
|
@@ -5895,7 +5963,7 @@
|
|
5895 |
"⬜",
|
5896 |
"✅",
|
5897 |
"✅",
|
5898 |
-
"&#
|
5899 |
"✅",
|
5900 |
"⬜",
|
5901 |
"✅",
|
@@ -5919,20 +5987,20 @@
|
|
5919 |
"✅",
|
5920 |
"✅",
|
5921 |
"✅",
|
5922 |
-
"&#
|
5923 |
"⬜",
|
5924 |
"❌",
|
5925 |
"⬜",
|
5926 |
"✅",
|
5927 |
-
"✅",
|
5928 |
"⬜",
|
|
|
5929 |
"✅",
|
5930 |
"✅",
|
5931 |
"⬜",
|
5932 |
"✅",
|
5933 |
"✅",
|
5934 |
"✅",
|
5935 |
-
"&#
|
5936 |
"✅",
|
5937 |
"✅",
|
5938 |
"❌",
|
@@ -5949,10 +6017,10 @@
|
|
5949 |
"✅",
|
5950 |
"⬜",
|
5951 |
"❌",
|
5952 |
-
"✅",
|
5953 |
-
"✅",
|
5954 |
-
"✅",
|
5955 |
"⬜",
|
|
|
|
|
|
|
5956 |
"✅",
|
5957 |
"✅",
|
5958 |
"✅",
|
@@ -5969,11 +6037,11 @@
|
|
5969 |
"✅",
|
5970 |
"❌",
|
5971 |
"✅",
|
5972 |
-
"&#
|
5973 |
"✅",
|
5974 |
"✅",
|
5975 |
"⬜",
|
5976 |
-
"&#
|
5977 |
"✅",
|
5978 |
"✅",
|
5979 |
"❌",
|
@@ -5981,12 +6049,12 @@
|
|
5981 |
"✅",
|
5982 |
"✅",
|
5983 |
"✅",
|
5984 |
-
"&#
|
|
|
5985 |
"✅",
|
5986 |
"✅",
|
5987 |
"✅",
|
5988 |
"✅",
|
5989 |
-
"⬜",
|
5990 |
"⬜",
|
5991 |
"✅",
|
5992 |
"✅",
|
@@ -6012,9 +6080,9 @@
|
|
6012 |
"✅",
|
6013 |
"✅",
|
6014 |
"✅",
|
6015 |
-
"❌",
|
6016 |
"⬜",
|
6017 |
-
"&#
|
|
|
6018 |
"✅",
|
6019 |
"✅",
|
6020 |
"✅",
|
@@ -6024,9 +6092,9 @@
|
|
6024 |
"❌",
|
6025 |
"❌",
|
6026 |
"✅",
|
6027 |
-
"✅",
|
6028 |
"⬜",
|
6029 |
-
"&#
|
|
|
6030 |
"❌",
|
6031 |
"⬜",
|
6032 |
"❌",
|
@@ -6042,16 +6110,16 @@
|
|
6042 |
"⬜",
|
6043 |
"✅",
|
6044 |
"⬜",
|
6045 |
-
"&#
|
6046 |
"✅",
|
6047 |
"✅",
|
6048 |
"✅",
|
6049 |
"❌",
|
6050 |
"✅",
|
6051 |
"⬜",
|
6052 |
-
"✅",
|
6053 |
-
"❌",
|
6054 |
"⬜",
|
|
|
|
|
6055 |
"✅",
|
6056 |
"✅",
|
6057 |
"✅",
|
@@ -6072,17 +6140,17 @@
|
|
6072 |
"✅",
|
6073 |
"⬜",
|
6074 |
"❌",
|
6075 |
-
"&#
|
6076 |
"✅",
|
6077 |
"❌",
|
6078 |
"✅",
|
6079 |
"❌",
|
|
|
6080 |
"⬜",
|
6081 |
"⬜",
|
6082 |
"✅",
|
6083 |
"✅",
|
6084 |
"✅",
|
6085 |
-
"✅",
|
6086 |
"⬜",
|
6087 |
"⬜",
|
6088 |
"❌",
|
@@ -6096,38 +6164,38 @@
|
|
6096 |
"✅",
|
6097 |
"⬜",
|
6098 |
"✅",
|
6099 |
-
"⬜",
|
6100 |
"❌",
|
6101 |
"❌",
|
|
|
6102 |
"✅",
|
6103 |
"✅",
|
6104 |
"⬜",
|
6105 |
"✅",
|
6106 |
"✅",
|
6107 |
"✅",
|
6108 |
-
"❌",
|
6109 |
"⬜",
|
6110 |
"✅",
|
6111 |
"✅",
|
|
|
6112 |
"✅",
|
6113 |
"⬜",
|
6114 |
"❌",
|
6115 |
"✅",
|
6116 |
"⬜",
|
6117 |
"✅",
|
|
|
6118 |
"✅",
|
6119 |
"✅",
|
6120 |
"✅",
|
6121 |
"✅",
|
6122 |
"⬜",
|
6123 |
-
"⬜",
|
6124 |
"❌",
|
6125 |
"✅",
|
6126 |
"✅",
|
6127 |
"✅",
|
6128 |
"✅",
|
6129 |
"⬜",
|
6130 |
-
"&#
|
6131 |
"✅",
|
6132 |
"✅",
|
6133 |
"✅",
|
@@ -6135,7 +6203,7 @@
|
|
6135 |
"✅",
|
6136 |
"✅",
|
6137 |
"✅",
|
6138 |
-
"&#
|
6139 |
"✅",
|
6140 |
"✅",
|
6141 |
"❌",
|
@@ -6150,16 +6218,16 @@
|
|
6150 |
"✅",
|
6151 |
"✅",
|
6152 |
"⬜",
|
6153 |
-
"&#
|
6154 |
"✅",
|
6155 |
"⬜",
|
6156 |
"❌",
|
6157 |
"✅",
|
6158 |
"❌",
|
6159 |
-
"&#
|
6160 |
"✅",
|
6161 |
"✅",
|
6162 |
-
"&#
|
6163 |
"⬜",
|
6164 |
"✅",
|
6165 |
"✅",
|
@@ -6172,15 +6240,15 @@
|
|
6172 |
"⬜",
|
6173 |
"✅",
|
6174 |
"✅",
|
6175 |
-
"⬜",
|
6176 |
-
"⬜",
|
6177 |
"✅",
|
|
|
6178 |
"✅",
|
6179 |
"⬜",
|
6180 |
"✅",
|
6181 |
"✅",
|
6182 |
"✅",
|
6183 |
-
"&#
|
|
|
6184 |
"✅",
|
6185 |
"❌",
|
6186 |
"✅",
|
@@ -6191,19 +6259,19 @@
|
|
6191 |
"⬜",
|
6192 |
"⬜",
|
6193 |
"✅",
|
6194 |
-
"&#
|
6195 |
-
"&#
|
6196 |
"✅",
|
6197 |
"✅",
|
6198 |
"✅",
|
6199 |
"⬜",
|
6200 |
"❌",
|
6201 |
"✅",
|
6202 |
-
"❌",
|
6203 |
"⬜",
|
6204 |
"✅",
|
6205 |
"✅",
|
6206 |
-
"&#
|
|
|
6207 |
"⬜",
|
6208 |
"✅",
|
6209 |
"✅",
|
@@ -6216,8 +6284,8 @@
|
|
6216 |
"✅",
|
6217 |
"❌",
|
6218 |
"⬜",
|
6219 |
-
"✅",
|
6220 |
"⬜",
|
|
|
6221 |
"⬜",
|
6222 |
"✅",
|
6223 |
"✅",
|
@@ -6226,7 +6294,7 @@
|
|
6226 |
"✅",
|
6227 |
"✅",
|
6228 |
"⬜",
|
6229 |
-
"&#
|
6230 |
"✅",
|
6231 |
"✅",
|
6232 |
"⬜",
|
@@ -6244,37 +6312,37 @@
|
|
6244 |
"❌",
|
6245 |
"✅",
|
6246 |
"✅",
|
6247 |
-
"⬜",
|
6248 |
"❌",
|
6249 |
-
"&#
|
6250 |
-
"✅",
|
6251 |
"⬜",
|
6252 |
"✅",
|
6253 |
"⬜",
|
|
|
|
|
6254 |
"⬜",
|
6255 |
"⬜",
|
6256 |
"❌",
|
6257 |
"✅",
|
6258 |
"✅",
|
6259 |
-
"⬜",
|
6260 |
"✅",
|
6261 |
-
"⬜",
|
6262 |
"✅",
|
|
|
|
|
6263 |
"✅",
|
6264 |
"❌",
|
6265 |
"✅",
|
6266 |
"✅",
|
6267 |
"⬜",
|
6268 |
-
"✅",
|
6269 |
-
"❌",
|
6270 |
"⬜",
|
6271 |
"❌",
|
|
|
|
|
6272 |
"✅",
|
6273 |
"✅",
|
6274 |
"✅",
|
6275 |
"❌",
|
6276 |
"✅",
|
6277 |
-
"&#
|
6278 |
"✅",
|
6279 |
"✅",
|
6280 |
"⬜",
|
@@ -6287,25 +6355,25 @@
|
|
6287 |
"✅",
|
6288 |
"✅",
|
6289 |
"✅",
|
6290 |
-
"⬜",
|
6291 |
"✅",
|
6292 |
"✅",
|
6293 |
-
"&#
|
|
|
6294 |
"⬜",
|
6295 |
"❌",
|
6296 |
"⬜",
|
6297 |
"✅",
|
6298 |
-
"❌",
|
6299 |
"⬜",
|
6300 |
-
"&#
|
|
|
6301 |
"❌",
|
6302 |
"✅",
|
6303 |
"⬜",
|
6304 |
"✅",
|
6305 |
"⬜",
|
|
|
6306 |
"✅",
|
6307 |
-
"&#
|
6308 |
-
"❌",
|
6309 |
"❌",
|
6310 |
"✅",
|
6311 |
"❌",
|
@@ -6315,15 +6383,15 @@
|
|
6315 |
"✅",
|
6316 |
"✅",
|
6317 |
"⬜",
|
6318 |
-
"&#
|
6319 |
"✅",
|
6320 |
"⬜",
|
6321 |
"⬜",
|
6322 |
"⬜",
|
6323 |
"✅",
|
6324 |
-
"⬜",
|
6325 |
"❌",
|
6326 |
"⬜",
|
|
|
6327 |
"✅",
|
6328 |
"❌",
|
6329 |
"✅",
|
@@ -6338,7 +6406,7 @@
|
|
6338 |
"⬜",
|
6339 |
"✅",
|
6340 |
"✅",
|
6341 |
-
"&#
|
6342 |
"✅",
|
6343 |
"✅",
|
6344 |
"⬜",
|
@@ -6346,16 +6414,16 @@
|
|
6346 |
"⬜",
|
6347 |
"✅",
|
6348 |
"⬜",
|
6349 |
-
"&#
|
6350 |
-
"⬜",
|
6351 |
"✅",
|
6352 |
"✅",
|
6353 |
"⬜",
|
6354 |
"⬜",
|
6355 |
"⬜",
|
|
|
|
|
6356 |
"✅",
|
6357 |
"✅",
|
6358 |
-
"⬜",
|
6359 |
"⬜",
|
6360 |
"✅",
|
6361 |
"✅",
|
@@ -6368,7 +6436,7 @@
|
|
6368 |
"⬜",
|
6369 |
"❌",
|
6370 |
"✅",
|
6371 |
-
"&#
|
6372 |
"❌",
|
6373 |
"✅",
|
6374 |
"⬜",
|
@@ -6383,10 +6451,10 @@
|
|
6383 |
"✅",
|
6384 |
"✅",
|
6385 |
"✅",
|
6386 |
-
"&#
|
6387 |
"❌",
|
6388 |
"✅",
|
6389 |
-
"&#
|
6390 |
"✅",
|
6391 |
"✅",
|
6392 |
"✅",
|
@@ -6402,8 +6470,8 @@
|
|
6402 |
"✅",
|
6403 |
"✅",
|
6404 |
"⬜",
|
|
|
6405 |
"⬜",
|
6406 |
-
"❌",
|
6407 |
"✅",
|
6408 |
"✅",
|
6409 |
"⬜",
|
@@ -6424,7 +6492,7 @@
|
|
6424 |
"✅",
|
6425 |
"⬜",
|
6426 |
"✅",
|
6427 |
-
"&#
|
6428 |
"✅",
|
6429 |
"✅",
|
6430 |
"✅",
|
@@ -6442,28 +6510,28 @@
|
|
6442 |
"✅",
|
6443 |
"✅",
|
6444 |
"⬜",
|
6445 |
-
"✅",
|
6446 |
-
"❌",
|
6447 |
"⬜",
|
6448 |
-
"✅",
|
6449 |
"❌",
|
6450 |
"✅",
|
|
|
6451 |
"❌",
|
|
|
|
|
6452 |
"❌",
|
6453 |
"✅",
|
6454 |
"⬜",
|
6455 |
"✅",
|
6456 |
"✅",
|
6457 |
-
"&#
|
6458 |
"⬜",
|
6459 |
"✅",
|
6460 |
"✅",
|
6461 |
"✅",
|
6462 |
"⬜",
|
6463 |
-
"❌",
|
6464 |
-
"❌",
|
6465 |
-
"❌",
|
6466 |
"⬜",
|
|
|
|
|
|
|
6467 |
"✅",
|
6468 |
"⬜",
|
6469 |
"✅",
|
@@ -6477,17 +6545,17 @@
|
|
6477 |
"❌",
|
6478 |
"⬜",
|
6479 |
"✅",
|
6480 |
-
"&#
|
6481 |
-
"&#
|
6482 |
"✅",
|
6483 |
"✅",
|
6484 |
-
"&#
|
6485 |
"✅",
|
6486 |
"✅",
|
6487 |
"✅",
|
6488 |
"✅",
|
6489 |
"✅",
|
6490 |
-
"&#
|
6491 |
"✅",
|
6492 |
"⬜",
|
6493 |
"❌",
|
@@ -6496,22 +6564,22 @@
|
|
6496 |
"✅",
|
6497 |
"⬜",
|
6498 |
"❌",
|
6499 |
-
"⬜",
|
6500 |
-
"⬜",
|
6501 |
"✅",
|
6502 |
"⬜",
|
6503 |
-
"⬜",
|
6504 |
"✅",
|
6505 |
"✅",
|
6506 |
-
"&#
|
|
|
6507 |
"✅",
|
6508 |
"⬜",
|
6509 |
"✅",
|
6510 |
"⬜",
|
6511 |
"✅",
|
|
|
|
|
|
|
6512 |
"✅",
|
6513 |
"✅",
|
6514 |
-
"⬜",
|
6515 |
"⬜",
|
6516 |
"✅",
|
6517 |
"✅",
|
@@ -6529,8 +6597,8 @@
|
|
6529 |
"✅",
|
6530 |
"✅",
|
6531 |
"⬜",
|
6532 |
-
"✅",
|
6533 |
"⬜",
|
|
|
6534 |
"⬜",
|
6535 |
"✅",
|
6536 |
"❌",
|
@@ -6546,19 +6614,19 @@
|
|
6546 |
"✅",
|
6547 |
"✅",
|
6548 |
"✅",
|
6549 |
-
"❌",
|
6550 |
-
"✅",
|
6551 |
-
"✅",
|
6552 |
-
"❌",
|
6553 |
"⬜",
|
6554 |
"✅",
|
|
|
6555 |
"❌",
|
6556 |
"⬜",
|
|
|
|
|
6557 |
"❌",
|
|
|
6558 |
"❌",
|
6559 |
"✅",
|
6560 |
"✅",
|
6561 |
-
"&#
|
6562 |
"✅",
|
6563 |
"✅",
|
6564 |
"✅",
|
@@ -6573,7 +6641,7 @@
|
|
6573 |
"✅",
|
6574 |
"❌",
|
6575 |
"⬜",
|
6576 |
-
"&#
|
6577 |
"⬜",
|
6578 |
"❌",
|
6579 |
"✅",
|
@@ -6585,7 +6653,7 @@
|
|
6585 |
"✅",
|
6586 |
"✅",
|
6587 |
"✅",
|
6588 |
-
"&#
|
6589 |
"✅",
|
6590 |
"✅",
|
6591 |
"✅",
|
@@ -6598,34 +6666,34 @@
|
|
6598 |
"❌",
|
6599 |
"✅",
|
6600 |
"✅",
|
|
|
|
|
6601 |
"✅",
|
6602 |
"❌",
|
6603 |
"✅",
|
6604 |
-
"❌",
|
6605 |
"✅",
|
6606 |
"✅",
|
6607 |
"✅",
|
6608 |
"✅",
|
|
|
6609 |
"✅",
|
6610 |
"✅",
|
6611 |
-
"⬜",
|
6612 |
"✅",
|
6613 |
-
"⬜",
|
6614 |
-
"❌",
|
6615 |
"❌",
|
|
|
6616 |
"❌",
|
6617 |
"✅",
|
6618 |
"⬜",
|
6619 |
"⬜",
|
6620 |
"✅",
|
6621 |
-
"✅",
|
6622 |
-
"✅",
|
6623 |
"⬜",
|
6624 |
"✅",
|
6625 |
-
"&#
|
6626 |
"⬜",
|
6627 |
"✅",
|
6628 |
"⬜",
|
|
|
|
|
6629 |
"⬜",
|
6630 |
"✅",
|
6631 |
"❌",
|
@@ -6636,7 +6704,7 @@
|
|
6636 |
"✅",
|
6637 |
"✅",
|
6638 |
"⬜",
|
6639 |
-
"&#
|
6640 |
"⬜",
|
6641 |
"✅",
|
6642 |
"✅",
|
@@ -6646,7 +6714,7 @@
|
|
6646 |
"✅",
|
6647 |
"✅",
|
6648 |
"✅",
|
6649 |
-
"&#
|
6650 |
"✅",
|
6651 |
"⬜",
|
6652 |
"✅",
|
@@ -6657,7 +6725,7 @@
|
|
6657 |
"✅",
|
6658 |
"⬜",
|
6659 |
"✅",
|
6660 |
-
"&#
|
6661 |
"✅",
|
6662 |
"❌",
|
6663 |
"✅",
|
@@ -6673,22 +6741,22 @@
|
|
6673 |
"✅",
|
6674 |
"✅",
|
6675 |
"⬜",
|
6676 |
-
"&#
|
6677 |
"✅",
|
6678 |
"✅",
|
6679 |
"✅",
|
6680 |
"❌",
|
6681 |
"✅",
|
6682 |
-
"⬜",
|
6683 |
"✅",
|
6684 |
"✅",
|
6685 |
-
"&#
|
|
|
6686 |
"✅",
|
6687 |
"✅",
|
6688 |
"✅",
|
6689 |
"❌",
|
6690 |
"✅",
|
6691 |
-
"&#
|
6692 |
"✅",
|
6693 |
"✅",
|
6694 |
"✅",
|
@@ -6701,16 +6769,16 @@
|
|
6701 |
"✅",
|
6702 |
"✅",
|
6703 |
"❌",
|
6704 |
-
"❌",
|
6705 |
-
"✅",
|
6706 |
"⬜",
|
6707 |
"⬜",
|
6708 |
-
"&#
|
6709 |
"⬜",
|
6710 |
"✅",
|
6711 |
"✅",
|
6712 |
"✅",
|
6713 |
-
"&#
|
|
|
|
|
6714 |
"❌",
|
6715 |
"✅",
|
6716 |
"✅",
|
@@ -6724,24 +6792,27 @@
|
|
6724 |
"✅",
|
6725 |
"⬜",
|
6726 |
"✅",
|
6727 |
-
"❌",
|
6728 |
-
"✅",
|
6729 |
"⬜",
|
|
|
6730 |
"⬜",
|
|
|
6731 |
"✅",
|
6732 |
"⬜",
|
6733 |
"✅",
|
6734 |
"❌",
|
6735 |
"⬜",
|
6736 |
"✅",
|
6737 |
-
"&#
|
6738 |
"✅",
|
6739 |
"❌",
|
|
|
6740 |
"✅"
|
6741 |
],
|
6742 |
"textposition": "bottom center",
|
6743 |
"type": "scatter",
|
6744 |
"x": [
|
|
|
|
|
6745 |
"2019-09-11T00:00:00",
|
6746 |
"2019-09-12T00:00:00",
|
6747 |
"2019-09-13T00:00:00",
|
@@ -7767,9 +7838,12 @@
|
|
7767 |
"2023-10-03T00:00:00",
|
7768 |
"2023-10-04T00:00:00",
|
7769 |
"2023-10-05T00:00:00",
|
7770 |
-
"2023-10-06T00:00:00"
|
|
|
7771 |
],
|
7772 |
"y": [
|
|
|
|
|
7773 |
2960.4335083007813,
|
7774 |
2985.915322265625,
|
7775 |
2987.885402832031,
|
@@ -8795,7 +8869,8 @@
|
|
8795 |
4195.367944335938,
|
8796 |
4199.377580566406,
|
8797 |
4204.78060546875,
|
8798 |
-
4198.452055664063
|
|
|
8799 |
]
|
8800 |
}
|
8801 |
],
|
@@ -9630,8 +9705,8 @@
|
|
9630 |
},
|
9631 |
"xaxis": {
|
9632 |
"range": [
|
9633 |
-
"2023-07-
|
9634 |
-
"2023-10-
|
9635 |
],
|
9636 |
"rangebreaks": [
|
9637 |
{
|
@@ -9736,7 +9811,7 @@
|
|
9736 |
},
|
9737 |
{
|
9738 |
"cell_type": "code",
|
9739 |
-
"execution_count":
|
9740 |
"metadata": {},
|
9741 |
"outputs": [
|
9742 |
{
|
|
|
2 |
"cells": [
|
3 |
{
|
4 |
"cell_type": "code",
|
5 |
+
"execution_count": 1,
|
6 |
"metadata": {},
|
7 |
"outputs": [],
|
8 |
"source": [
|
|
|
13 |
},
|
14 |
{
|
15 |
"cell_type": "code",
|
16 |
+
"execution_count": 2,
|
17 |
"metadata": {},
|
18 |
"outputs": [
|
19 |
{
|
20 |
"name": "stderr",
|
21 |
"output_type": "stream",
|
22 |
"text": [
|
23 |
+
"getting econ tickers: 100%|โโโโโโโโโโ| 3/3 [00:00<00:00, 4.27it/s]\n",
|
24 |
+
"Getting release dates: 100%|โโโโโโโโโโ| 8/8 [00:01<00:00, 4.30it/s]\n",
|
25 |
+
"Making indicators: 100%|โโโโโโโโโโ| 8/8 [00:00<00:00, 2663.26it/s]\n",
|
26 |
"Found cached dataset text (C:/Users/WINSTON-ITX/.cache/huggingface/datasets/boomsss___text/boomsss--spx_intra-e0e5e7af8fd43022/0.0.0/cb1e9bd71a82ad27976be3b12b407850fe2837d80c22c5e03a28949843a8ace2)\n",
|
27 |
+
"Merging econ data: 100%|โโโโโโโโโโ| 8/8 [00:00<00:00, 999.09it/s]\n"
|
28 |
]
|
29 |
}
|
30 |
],
|
|
|
34 |
},
|
35 |
{
|
36 |
"cell_type": "code",
|
37 |
+
"execution_count": 3,
|
38 |
"metadata": {},
|
39 |
"outputs": [],
|
40 |
"source": [
|
|
|
46 |
},
|
47 |
{
|
48 |
"cell_type": "code",
|
49 |
+
"execution_count": 4,
|
50 |
"metadata": {},
|
51 |
"outputs": [
|
52 |
{
|
53 |
"name": "stderr",
|
54 |
"output_type": "stream",
|
55 |
"text": [
|
56 |
+
"LR Model: 100%|โโโโโโโโโโ| 1129/1129 [00:03<00:00, 300.05it/s]\n",
|
57 |
+
"d:\\Projects\\gamedayspx\\model_intra.py:97: SettingWithCopyWarning: \n",
|
|
|
|
|
58 |
"A value is trying to be set on a copy of a slice from a DataFrame.\n",
|
59 |
"Try using .loc[row_indexer,col_indexer] = value instead\n",
|
60 |
"\n",
|
61 |
"See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n",
|
62 |
+
" for_merge['RegrModelOut'] = for_merge['RegrModelOut'] > 0\n",
|
63 |
+
"CLF Model: 100%|โโโโโโโโโโ| 1029/1029 [00:08<00:00, 123.30it/s]\n",
|
64 |
+
"Calibrating Probas: 1029it [00:02, 415.09it/s]\n"
|
65 |
]
|
66 |
}
|
67 |
],
|
|
|
71 |
},
|
72 |
{
|
73 |
"cell_type": "code",
|
74 |
+
"execution_count": 5,
|
75 |
"metadata": {},
|
76 |
"outputs": [],
|
77 |
"source": [
|
|
|
100 |
"hi_thres = 0.6 # res1.loc[middle_quantiles, 'Predicted'].max()\n",
|
101 |
"\n",
|
102 |
"roc_auc_score_all = roc_auc_score(res1['True'].astype(int), res1['Predicted'].values)\n",
|
103 |
+
"roc_auc_score_calib = roc_auc_score(res1.dropna(subset='CalibPredicted')['True'].astype(int), res1.dropna(subset='CalibPredicted')['CalibPredicted'].values)\n",
|
104 |
"precision_score_all = precision_score(res1['True'].astype(int), res1['Predicted'] > 0.5)\n",
|
105 |
"recall_score_all = recall_score(res1['True'].astype(int), res1['Predicted'] > 0.5)\n",
|
106 |
"len_all = len(res1)\n",
|
|
|
108 |
"res2_filtered = res1.loc[(res1['Predicted'] > hi_thres) | (res1['Predicted'] <= lo_thres)]\n",
|
109 |
"\n",
|
110 |
"roc_auc_score_hi = roc_auc_score(res2_filtered['True'].astype(int), res2_filtered['Predicted'].values)\n",
|
111 |
+
"roc_auc_score_hi_calib = roc_auc_score(res2_filtered.dropna(subset='CalibPredicted')['True'].astype(int), res2_filtered.dropna(subset='CalibPredicted')['CalibPredicted'].values)\n",
|
112 |
"precision_score_hi = precision_score(res2_filtered['True'].astype(int), res2_filtered['Predicted'] > 0.5)\n",
|
113 |
"recall_score_hi = recall_score(res2_filtered['True'].astype(int), res2_filtered['Predicted'] > 0.5)\n",
|
114 |
"len_hi = len(res2_filtered)\n",
|
|
|
166 |
},
|
167 |
{
|
168 |
"cell_type": "code",
|
169 |
+
"execution_count": 6,
|
170 |
"metadata": {},
|
171 |
"outputs": [
|
172 |
{
|
|
|
193 |
" <th>True</th>\n",
|
194 |
" <th>Predicted</th>\n",
|
195 |
" <th>CalibPredicted</th>\n",
|
|
|
196 |
" <th>Accuracy</th>\n",
|
197 |
" <th>HTML</th>\n",
|
198 |
" </tr>\n",
|
199 |
" </thead>\n",
|
200 |
" <tbody>\n",
|
201 |
" <tr>\n",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
202 |
" <th>2023-09-12</th>\n",
|
203 |
" <td>True</td>\n",
|
204 |
+
" <td>0.471917</td>\n",
|
205 |
+
" <td>0.422018</td>\n",
|
|
|
206 |
" <td>๐จ</td>\n",
|
207 |
" <td>&#11036;</td>\n",
|
208 |
" </tr>\n",
|
209 |
" <tr>\n",
|
210 |
" <th>2023-09-13</th>\n",
|
211 |
" <td>True</td>\n",
|
212 |
+
" <td>0.788835</td>\n",
|
213 |
+
" <td>0.876106</td>\n",
|
|
|
214 |
" <td>โ
</td>\n",
|
215 |
" <td>&#9989;</td>\n",
|
216 |
" </tr>\n",
|
217 |
" <tr>\n",
|
218 |
" <th>2023-09-14</th>\n",
|
219 |
" <td>False</td>\n",
|
220 |
+
" <td>0.224466</td>\n",
|
221 |
+
" <td>0.120805</td>\n",
|
|
|
222 |
" <td>โ
</td>\n",
|
223 |
" <td>&#9989;</td>\n",
|
224 |
" </tr>\n",
|
225 |
" <tr>\n",
|
226 |
" <th>2023-09-15</th>\n",
|
227 |
" <td>True</td>\n",
|
228 |
+
" <td>0.484659</td>\n",
|
229 |
+
" <td>0.604651</td>\n",
|
|
|
230 |
" <td>๐จ</td>\n",
|
231 |
" <td>&#11036;</td>\n",
|
232 |
" </tr>\n",
|
233 |
" <tr>\n",
|
234 |
" <th>2023-09-18</th>\n",
|
235 |
" <td>False</td>\n",
|
236 |
+
" <td>0.218419</td>\n",
|
237 |
+
" <td>0.120000</td>\n",
|
|
|
238 |
" <td>โ
</td>\n",
|
239 |
" <td>&#9989;</td>\n",
|
240 |
" </tr>\n",
|
241 |
" <tr>\n",
|
242 |
" <th>2023-09-19</th>\n",
|
243 |
" <td>False</td>\n",
|
244 |
+
" <td>0.495749</td>\n",
|
245 |
+
" <td>0.607692</td>\n",
|
246 |
+
" <td>๐จ</td>\n",
|
247 |
+
" <td>&#11036;</td>\n",
|
|
|
248 |
" </tr>\n",
|
249 |
" <tr>\n",
|
250 |
" <th>2023-09-20</th>\n",
|
251 |
" <td>False</td>\n",
|
252 |
+
" <td>0.193814</td>\n",
|
253 |
+
" <td>0.119205</td>\n",
|
|
|
254 |
" <td>โ
</td>\n",
|
255 |
" <td>&#9989;</td>\n",
|
256 |
" </tr>\n",
|
257 |
" <tr>\n",
|
258 |
" <th>2023-09-21</th>\n",
|
259 |
" <td>False</td>\n",
|
260 |
+
" <td>0.441842</td>\n",
|
261 |
+
" <td>0.427273</td>\n",
|
|
|
262 |
" <td>๐จ</td>\n",
|
263 |
" <td>&#11036;</td>\n",
|
264 |
" </tr>\n",
|
265 |
" <tr>\n",
|
266 |
" <th>2023-09-22</th>\n",
|
267 |
" <td>True</td>\n",
|
268 |
+
" <td>0.377387</td>\n",
|
269 |
+
" <td>0.196850</td>\n",
|
270 |
+
" <td>โ</td>\n",
|
271 |
+
" <td>&#10060;</td>\n",
|
|
|
272 |
" </tr>\n",
|
273 |
" <tr>\n",
|
274 |
" <th>2023-09-25</th>\n",
|
275 |
" <td>False</td>\n",
|
276 |
+
" <td>0.196610</td>\n",
|
277 |
+
" <td>0.118421</td>\n",
|
|
|
278 |
" <td>โ
</td>\n",
|
279 |
" <td>&#9989;</td>\n",
|
280 |
" </tr>\n",
|
281 |
" <tr>\n",
|
282 |
" <th>2023-09-26</th>\n",
|
283 |
" <td>True</td>\n",
|
284 |
+
" <td>0.400516</td>\n",
|
285 |
+
" <td>0.423423</td>\n",
|
|
|
286 |
" <td>๐จ</td>\n",
|
287 |
" <td>&#11036;</td>\n",
|
288 |
" </tr>\n",
|
289 |
" <tr>\n",
|
290 |
" <th>2023-09-27</th>\n",
|
291 |
" <td>True</td>\n",
|
292 |
+
" <td>0.719858</td>\n",
|
293 |
+
" <td>0.761194</td>\n",
|
|
|
294 |
" <td>โ
</td>\n",
|
295 |
" <td>&#9989;</td>\n",
|
296 |
" </tr>\n",
|
297 |
" <tr>\n",
|
298 |
" <th>2023-09-28</th>\n",
|
299 |
" <td>False</td>\n",
|
300 |
+
" <td>0.778499</td>\n",
|
301 |
+
" <td>0.876652</td>\n",
|
|
|
302 |
" <td>โ</td>\n",
|
303 |
" <td>&#10060;</td>\n",
|
304 |
" </tr>\n",
|
305 |
" <tr>\n",
|
306 |
" <th>2023-09-29</th>\n",
|
307 |
" <td>True</td>\n",
|
308 |
+
" <td>0.547333</td>\n",
|
309 |
+
" <td>0.603053</td>\n",
|
|
|
310 |
" <td>๐จ</td>\n",
|
311 |
" <td>&#11036;</td>\n",
|
312 |
" </tr>\n",
|
313 |
" <tr>\n",
|
314 |
" <th>2023-10-02</th>\n",
|
315 |
" <td>False</td>\n",
|
316 |
+
" <td>0.199027</td>\n",
|
317 |
+
" <td>0.117647</td>\n",
|
|
|
318 |
" <td>โ
</td>\n",
|
319 |
" <td>&#9989;</td>\n",
|
320 |
" </tr>\n",
|
321 |
" <tr>\n",
|
322 |
" <th>2023-10-03</th>\n",
|
323 |
" <td>True</td>\n",
|
324 |
+
" <td>0.528719</td>\n",
|
325 |
+
" <td>0.606061</td>\n",
|
326 |
+
" <td>๐จ</td>\n",
|
327 |
+
" <td>&#11036;</td>\n",
|
|
|
328 |
" </tr>\n",
|
329 |
" <tr>\n",
|
330 |
" <th>2023-10-04</th>\n",
|
331 |
" <td>False</td>\n",
|
332 |
+
" <td>0.240551</td>\n",
|
333 |
+
" <td>0.116883</td>\n",
|
|
|
334 |
" <td>โ
</td>\n",
|
335 |
" <td>&#9989;</td>\n",
|
336 |
" </tr>\n",
|
337 |
" <tr>\n",
|
338 |
" <th>2023-10-05</th>\n",
|
339 |
" <td>True</td>\n",
|
340 |
+
" <td>0.232103</td>\n",
|
341 |
+
" <td>0.116129</td>\n",
|
|
|
342 |
" <td>โ</td>\n",
|
343 |
" <td>&#10060;</td>\n",
|
344 |
" </tr>\n",
|
345 |
" <tr>\n",
|
346 |
" <th>2023-10-06</th>\n",
|
347 |
" <td>True</td>\n",
|
348 |
+
" <td>0.638131</td>\n",
|
349 |
+
" <td>0.511111</td>\n",
|
350 |
+
" <td>โ
</td>\n",
|
351 |
+
" <td>&#9989;</td>\n",
|
352 |
+
" </tr>\n",
|
353 |
+
" <tr>\n",
|
354 |
+
" <th>2023-10-09</th>\n",
|
355 |
+
" <td>True</td>\n",
|
356 |
+
" <td>0.785267</td>\n",
|
357 |
+
" <td>0.872807</td>\n",
|
358 |
" <td>โ
</td>\n",
|
359 |
" <td>&#9989;</td>\n",
|
360 |
" </tr>\n",
|
|
|
363 |
"</div>"
|
364 |
],
|
365 |
"text/plain": [
|
366 |
+
" True Predicted CalibPredicted Accuracy HTML\n",
|
367 |
+
"2023-09-12 True 0.471917 0.422018 ๐จ ⬜\n",
|
368 |
+
"2023-09-13 True 0.788835 0.876106 โ
✅\n",
|
369 |
+
"2023-09-14 False 0.224466 0.120805 โ
✅\n",
|
370 |
+
"2023-09-15 True 0.484659 0.604651 ๐จ ⬜\n",
|
371 |
+
"2023-09-18 False 0.218419 0.120000 โ
✅\n",
|
372 |
+
"2023-09-19 False 0.495749 0.607692 ๐จ ⬜\n",
|
373 |
+
"2023-09-20 False 0.193814 0.119205 โ
✅\n",
|
374 |
+
"2023-09-21 False 0.441842 0.427273 ๐จ ⬜\n",
|
375 |
+
"2023-09-22 True 0.377387 0.196850 โ ❌\n",
|
376 |
+
"2023-09-25 False 0.196610 0.118421 โ
✅\n",
|
377 |
+
"2023-09-26 True 0.400516 0.423423 ๐จ ⬜\n",
|
378 |
+
"2023-09-27 True 0.719858 0.761194 โ
✅\n",
|
379 |
+
"2023-09-28 False 0.778499 0.876652 โ ❌\n",
|
380 |
+
"2023-09-29 True 0.547333 0.603053 ๐จ ⬜\n",
|
381 |
+
"2023-10-02 False 0.199027 0.117647 โ
✅\n",
|
382 |
+
"2023-10-03 True 0.528719 0.606061 ๐จ ⬜\n",
|
383 |
+
"2023-10-04 False 0.240551 0.116883 โ
✅\n",
|
384 |
+
"2023-10-05 True 0.232103 0.116129 โ ❌\n",
|
385 |
+
"2023-10-06 True 0.638131 0.511111 โ
✅\n",
|
386 |
+
"2023-10-09 True 0.785267 0.872807 โ
✅"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
387 |
]
|
388 |
},
|
389 |
+
"execution_count": 6,
|
390 |
"metadata": {},
|
391 |
"output_type": "execute_result"
|
392 |
}
|
|
|
397 |
},
|
398 |
{
|
399 |
"cell_type": "code",
|
400 |
+
"execution_count": 7,
|
401 |
"metadata": {},
|
402 |
"outputs": [
|
403 |
{
|
|
|
406 |
"147"
|
407 |
]
|
408 |
},
|
409 |
+
"execution_count": 7,
|
410 |
"metadata": {},
|
411 |
"output_type": "execute_result"
|
412 |
}
|
|
|
417 |
},
|
418 |
{
|
419 |
"cell_type": "code",
|
420 |
+
"execution_count": 37,
|
421 |
+
"metadata": {},
|
422 |
+
"outputs": [],
|
423 |
+
"source": [
|
424 |
+
"df_levels = pd.DataFrame(\n",
|
425 |
+
" index=['H2','H1','L1','L2'],\n",
|
426 |
+
" columns=['Level','BreakPct(100)','TouchPct(100)'],\n",
|
427 |
+
" data=[\n",
|
428 |
+
" [f\"{data['H2'].iloc[-1]:.2f}\",f\"{data['H2BreakPct'].iloc[-2]:.1%}\",f\"{data['H2TouchPct'].iloc[-2]:.1%}\"],\n",
|
429 |
+
" [f\"{data['H1'].iloc[-1]:.2f}\",f\"{data['H1BreakPct'].iloc[-2]:.1%}\",f\"{data['H1TouchPct'].iloc[-2]:.1%}\"],\n",
|
430 |
+
" [f\"{data['L1'].iloc[-1]:.2f}\",f\"{data['L1BreakPct'].iloc[-2]:.1%}\",f\"{data['L1TouchPct'].iloc[-2]:.1%}\"],\n",
|
431 |
+
" [f\"{data['L2'].iloc[-1]:.2f}\",f\"{data['L2BreakPct'].iloc[-2]:.1%}\",f\"{data['L2TouchPct'].iloc[-2]:.1%}\"]\n",
|
432 |
+
" ]\n",
|
433 |
+
")"
|
434 |
+
]
|
435 |
+
},
|
436 |
+
{
|
437 |
+
"cell_type": "code",
|
438 |
+
"execution_count": 38,
|
439 |
+
"metadata": {},
|
440 |
+
"outputs": [
|
441 |
+
{
|
442 |
+
"data": {
|
443 |
+
"text/html": [
|
444 |
+
"<div>\n",
|
445 |
+
"<style scoped>\n",
|
446 |
+
" .dataframe tbody tr th:only-of-type {\n",
|
447 |
+
" vertical-align: middle;\n",
|
448 |
+
" }\n",
|
449 |
+
"\n",
|
450 |
+
" .dataframe tbody tr th {\n",
|
451 |
+
" vertical-align: top;\n",
|
452 |
+
" }\n",
|
453 |
+
"\n",
|
454 |
+
" .dataframe thead th {\n",
|
455 |
+
" text-align: right;\n",
|
456 |
+
" }\n",
|
457 |
+
"</style>\n",
|
458 |
+
"<table border=\"1\" class=\"dataframe\">\n",
|
459 |
+
" <thead>\n",
|
460 |
+
" <tr style=\"text-align: right;\">\n",
|
461 |
+
" <th></th>\n",
|
462 |
+
" <th>Level</th>\n",
|
463 |
+
" <th>BreakPct</th>\n",
|
464 |
+
" <th>TouchPct</th>\n",
|
465 |
+
" </tr>\n",
|
466 |
+
" </thead>\n",
|
467 |
+
" <tbody>\n",
|
468 |
+
" <tr>\n",
|
469 |
+
" <th>H2</th>\n",
|
470 |
+
" <td>4379.56</td>\n",
|
471 |
+
" <td>11.0%</td>\n",
|
472 |
+
" <td>17.0%</td>\n",
|
473 |
+
" </tr>\n",
|
474 |
+
" <tr>\n",
|
475 |
+
" <th>H1</th>\n",
|
476 |
+
" <td>4359.40</td>\n",
|
477 |
+
" <td>22.0%</td>\n",
|
478 |
+
" <td>41.0%</td>\n",
|
479 |
+
" </tr>\n",
|
480 |
+
" <tr>\n",
|
481 |
+
" <th>L1</th>\n",
|
482 |
+
" <td>4317.15</td>\n",
|
483 |
+
" <td>21.0%</td>\n",
|
484 |
+
" <td>41.0%</td>\n",
|
485 |
+
" </tr>\n",
|
486 |
+
" <tr>\n",
|
487 |
+
" <th>L2</th>\n",
|
488 |
+
" <td>4296.99</td>\n",
|
489 |
+
" <td>14.0%</td>\n",
|
490 |
+
" <td>21.0%</td>\n",
|
491 |
+
" </tr>\n",
|
492 |
+
" </tbody>\n",
|
493 |
+
"</table>\n",
|
494 |
+
"</div>"
|
495 |
+
],
|
496 |
+
"text/plain": [
|
497 |
+
" Level BreakPct TouchPct\n",
|
498 |
+
"H2 4379.56 11.0% 17.0%\n",
|
499 |
+
"H1 4359.40 22.0% 41.0%\n",
|
500 |
+
"L1 4317.15 21.0% 41.0%\n",
|
501 |
+
"L2 4296.99 14.0% 21.0%"
|
502 |
+
]
|
503 |
+
},
|
504 |
+
"execution_count": 38,
|
505 |
+
"metadata": {},
|
506 |
+
"output_type": "execute_result"
|
507 |
+
}
|
508 |
+
],
|
509 |
+
"source": [
|
510 |
+
"df_levels"
|
511 |
+
]
|
512 |
+
},
|
513 |
+
{
|
514 |
+
"cell_type": "code",
|
515 |
+
"execution_count": 8,
|
516 |
"metadata": {},
|
517 |
"outputs": [
|
518 |
{
|
|
|
543 |
" <tbody>\n",
|
544 |
" <tr>\n",
|
545 |
" <th>N</th>\n",
|
546 |
+
" <td>1029.00</td>\n",
|
547 |
+
" <td>756.00</td>\n",
|
548 |
" </tr>\n",
|
549 |
" <tr>\n",
|
550 |
" <th>ROC AUC</th>\n",
|
551 |
+
" <td>0.81</td>\n",
|
552 |
" <td>0.85</td>\n",
|
553 |
" </tr>\n",
|
554 |
" <tr>\n",
|
555 |
" <th>Calib. AUC</th>\n",
|
556 |
" <td>0.77</td>\n",
|
557 |
+
" <td>0.81</td>\n",
|
558 |
" </tr>\n",
|
559 |
" <tr>\n",
|
560 |
" <th>Precision</th>\n",
|
561 |
+
" <td>0.73</td>\n",
|
562 |
+
" <td>0.78</td>\n",
|
563 |
" </tr>\n",
|
564 |
" <tr>\n",
|
565 |
" <th>Recall</th>\n",
|
566 |
" <td>0.79</td>\n",
|
567 |
+
" <td>0.87</td>\n",
|
568 |
" </tr>\n",
|
569 |
" </tbody>\n",
|
570 |
"</table>\n",
|
|
|
572 |
],
|
573 |
"text/plain": [
|
574 |
" All High Confidence\n",
|
575 |
+
"N 1029.00 756.00\n",
|
576 |
+
"ROC AUC 0.81 0.85\n",
|
577 |
+
"Calib. AUC 0.77 0.81\n",
|
578 |
+
"Precision 0.73 0.78\n",
|
579 |
+
"Recall 0.79 0.87"
|
580 |
]
|
581 |
},
|
582 |
+
"execution_count": 8,
|
583 |
"metadata": {},
|
584 |
"output_type": "execute_result"
|
585 |
}
|
|
|
590 |
},
|
591 |
{
|
592 |
"cell_type": "code",
|
593 |
+
"execution_count": 9,
|
594 |
"metadata": {},
|
595 |
"outputs": [
|
596 |
{
|
|
|
602 |
"data": [
|
603 |
{
|
604 |
"close": [
|
605 |
+
2978.429931640625,
|
606 |
+
2979.389892578125,
|
607 |
3000.929931640625,
|
608 |
3009.570068359375,
|
609 |
3007.389892578125,
|
|
|
1629 |
4229.4501953125,
|
1630 |
4263.75,
|
1631 |
4258.18994140625,
|
1632 |
+
4308.5,
|
1633 |
+
4335.66015625
|
1634 |
],
|
1635 |
"decreasing": {
|
1636 |
"fillcolor": "#ff5f5f",
|
|
|
1639 |
}
|
1640 |
},
|
1641 |
"high": [
|
1642 |
+
2989.429931640625,
|
1643 |
+
2979.389892578125,
|
1644 |
3000.929931640625,
|
1645 |
3020.739990234375,
|
1646 |
3017.330078125,
|
|
|
2666 |
4281.14990234375,
|
2667 |
4268.5,
|
2668 |
4267.1298828125,
|
2669 |
+
4324.10009765625,
|
2670 |
+
4341.72998046875
|
2671 |
],
|
2672 |
"increasing": {
|
2673 |
"fillcolor": "#3399ff",
|
|
|
2676 |
}
|
2677 |
},
|
2678 |
"low": [
|
2679 |
+
2969.389892578125,
|
2680 |
+
2957.010009765625,
|
2681 |
2975.31005859375,
|
2682 |
3000.919921875,
|
2683 |
3002.89990234375,
|
|
|
3703 |
4216.4501953125,
|
3704 |
4220.47998046875,
|
3705 |
4225.91015625,
|
3706 |
+
4219.5498046875,
|
3707 |
+
4283.7900390625
|
3708 |
],
|
3709 |
"name": "OHLC Chart",
|
3710 |
"open": [
|
3711 |
+
2988.429931640625,
|
3712 |
+
2971.010009765625,
|
3713 |
2981.409912109375,
|
3714 |
3009.080078125,
|
3715 |
3012.2099609375,
|
|
|
4735 |
4269.75,
|
4736 |
4233.830078125,
|
4737 |
4259.31005859375,
|
4738 |
+
4234.7900390625,
|
4739 |
+
4289.02001953125
|
4740 |
],
|
4741 |
"type": "candlestick",
|
4742 |
"x": [
|
4743 |
+
"2019-09-09T00:00:00",
|
4744 |
+
"2019-09-10T00:00:00",
|
4745 |
"2019-09-11T00:00:00",
|
4746 |
"2019-09-12T00:00:00",
|
4747 |
"2019-09-13T00:00:00",
|
|
|
5767 |
"2023-10-03T00:00:00",
|
5768 |
"2023-10-04T00:00:00",
|
5769 |
"2023-10-05T00:00:00",
|
5770 |
+
"2023-10-06T00:00:00",
|
5771 |
+
"2023-10-09T00:00:00"
|
5772 |
]
|
5773 |
},
|
5774 |
{
|
|
|
5778 |
"mode": "text",
|
5779 |
"name": "Predictions",
|
5780 |
"text": [
|
5781 |
+
"❌",
|
5782 |
"⬜",
|
5783 |
"✅",
|
|
|
5784 |
"❌",
|
5785 |
"✅",
|
|
|
5786 |
"⬜",
|
|
|
5787 |
"⬜",
|
5788 |
"✅",
|
5789 |
"❌",
|
5790 |
+
"❌",
|
5791 |
+
"❌",
|
5792 |
+
"⬜",
|
5793 |
+
"✅",
|
5794 |
+
"⬜",
|
5795 |
"✅",
|
5796 |
"✅",
|
5797 |
"✅",
|
|
|
5804 |
"✅",
|
5805 |
"⬜",
|
5806 |
"✅",
|
5807 |
+
"⬜",
|
5808 |
"✅",
|
5809 |
"⬜",
|
5810 |
"✅",
|
5811 |
"⬜",
|
5812 |
"⬜",
|
5813 |
"⬜",
|
5814 |
+
"⬜",
|
5815 |
"✅",
|
5816 |
"⬜",
|
5817 |
"⬜",
|
|
|
5819 |
"✅",
|
5820 |
"✅",
|
5821 |
"❌",
|
5822 |
+
"✅",
|
5823 |
"✅",
|
5824 |
"⬜",
|
5825 |
"✅",
|
|
|
5830 |
"❌",
|
5831 |
"❌",
|
5832 |
"⬜",
|
5833 |
+
"⬜",
|
5834 |
"⬜",
|
5835 |
"✅",
|
5836 |
"✅",
|
5837 |
"✅",
|
5838 |
+
"⬜",
|
5839 |
"✅",
|
5840 |
"✅",
|
5841 |
"✅",
|
|
|
5843 |
"✅",
|
5844 |
"⬜",
|
5845 |
"❌",
|
5846 |
+
"✅",
|
5847 |
"✅",
|
5848 |
"✅",
|
5849 |
"✅",
|
5850 |
"⬜",
|
5851 |
+
"❌",
|
5852 |
+
"✅",
|
5853 |
"✅",
|
5854 |
"✅",
|
5855 |
"⬜",
|
5856 |
"✅",
|
5857 |
"✅",
|
5858 |
"✅",
|
5859 |
+
"⬜",
|
5860 |
"✅",
|
5861 |
"✅",
|
5862 |
+
"⬜",
|
5863 |
"✅",
|
5864 |
"⬜",
|
5865 |
"✅",
|
|
|
5871 |
"✅",
|
5872 |
"✅",
|
5873 |
"✅",
|
5874 |
+
"❌",
|
5875 |
"⬜",
|
5876 |
"✅",
|
5877 |
"✅",
|
|
|
5898 |
"✅",
|
5899 |
"✅",
|
5900 |
"✅",
|
5901 |
+
"❌",
|
5902 |
"✅",
|
5903 |
"✅",
|
5904 |
"✅",
|
|
|
5918 |
"✅",
|
5919 |
"✅",
|
5920 |
"✅",
|
5921 |
+
"❌",
|
5922 |
"✅",
|
5923 |
"✅",
|
5924 |
"⬜",
|
|
|
5955 |
"⬜",
|
5956 |
"✅",
|
5957 |
"⬜",
|
5958 |
+
"⬜",
|
5959 |
"✅",
|
5960 |
"⬜",
|
5961 |
"❌",
|
|
|
5963 |
"⬜",
|
5964 |
"✅",
|
5965 |
"✅",
|
5966 |
+
"✅",
|
5967 |
"✅",
|
5968 |
"⬜",
|
5969 |
"✅",
|
|
|
5987 |
"✅",
|
5988 |
"✅",
|
5989 |
"✅",
|
5990 |
+
"✅",
|
5991 |
"⬜",
|
5992 |
"❌",
|
5993 |
"⬜",
|
5994 |
"✅",
|
|
|
5995 |
"⬜",
|
5996 |
+
"❌",
|
5997 |
"✅",
|
5998 |
"✅",
|
5999 |
"⬜",
|
6000 |
"✅",
|
6001 |
"✅",
|
6002 |
"✅",
|
6003 |
+
"✅",
|
6004 |
"✅",
|
6005 |
"✅",
|
6006 |
"❌",
|
|
|
6017 |
"✅",
|
6018 |
"⬜",
|
6019 |
"❌",
|
|
|
|
|
|
|
6020 |
"⬜",
|
6021 |
+
"⬜",
|
6022 |
+
"✅",
|
6023 |
+
"❌",
|
6024 |
"✅",
|
6025 |
"✅",
|
6026 |
"✅",
|
|
|
6037 |
"✅",
|
6038 |
"❌",
|
6039 |
"✅",
|
6040 |
+
"❌",
|
6041 |
"✅",
|
6042 |
"✅",
|
6043 |
"⬜",
|
6044 |
+
"⬜",
|
6045 |
"✅",
|
6046 |
"✅",
|
6047 |
"❌",
|
|
|
6049 |
"✅",
|
6050 |
"✅",
|
6051 |
"✅",
|
6052 |
+
"⬜",
|
6053 |
+
"✅",
|
6054 |
"✅",
|
6055 |
"✅",
|
6056 |
"✅",
|
6057 |
"✅",
|
|
|
6058 |
"⬜",
|
6059 |
"✅",
|
6060 |
"✅",
|
|
|
6080 |
"✅",
|
6081 |
"✅",
|
6082 |
"✅",
|
|
|
6083 |
"⬜",
|
6084 |
+
"⬜",
|
6085 |
+
"⬜",
|
6086 |
"✅",
|
6087 |
"✅",
|
6088 |
"✅",
|
|
|
6092 |
"❌",
|
6093 |
"❌",
|
6094 |
"✅",
|
|
|
6095 |
"⬜",
|
6096 |
+
"⬜",
|
6097 |
+
"⬜",
|
6098 |
"❌",
|
6099 |
"⬜",
|
6100 |
"❌",
|
|
|
6110 |
"⬜",
|
6111 |
"✅",
|
6112 |
"⬜",
|
6113 |
+
"⬜",
|
6114 |
"✅",
|
6115 |
"✅",
|
6116 |
"✅",
|
6117 |
"❌",
|
6118 |
"✅",
|
6119 |
"⬜",
|
|
|
|
|
6120 |
"⬜",
|
6121 |
+
"❌",
|
6122 |
+
"✅",
|
6123 |
"✅",
|
6124 |
"✅",
|
6125 |
"✅",
|
|
|
6140 |
"✅",
|
6141 |
"⬜",
|
6142 |
"❌",
|
6143 |
+
"⬜",
|
6144 |
"✅",
|
6145 |
"❌",
|
6146 |
"✅",
|
6147 |
"❌",
|
6148 |
+
"✅",
|
6149 |
"⬜",
|
6150 |
"⬜",
|
6151 |
"✅",
|
6152 |
"✅",
|
6153 |
"✅",
|
|
|
6154 |
"⬜",
|
6155 |
"⬜",
|
6156 |
"❌",
|
|
|
6164 |
"✅",
|
6165 |
"⬜",
|
6166 |
"✅",
|
|
|
6167 |
"❌",
|
6168 |
"❌",
|
6169 |
+
"⬜",
|
6170 |
"✅",
|
6171 |
"✅",
|
6172 |
"⬜",
|
6173 |
"✅",
|
6174 |
"✅",
|
6175 |
"✅",
|
|
|
6176 |
"⬜",
|
6177 |
"✅",
|
6178 |
"✅",
|
6179 |
+
"⬜",
|
6180 |
"✅",
|
6181 |
"⬜",
|
6182 |
"❌",
|
6183 |
"✅",
|
6184 |
"⬜",
|
6185 |
"✅",
|
6186 |
+
"⬜",
|
6187 |
"✅",
|
6188 |
"✅",
|
6189 |
"✅",
|
6190 |
"✅",
|
6191 |
"⬜",
|
|
|
6192 |
"❌",
|
6193 |
"✅",
|
6194 |
"✅",
|
6195 |
"✅",
|
6196 |
"✅",
|
6197 |
"⬜",
|
6198 |
+
"❌",
|
6199 |
"✅",
|
6200 |
"✅",
|
6201 |
"✅",
|
|
|
6203 |
"✅",
|
6204 |
"✅",
|
6205 |
"✅",
|
6206 |
+
"⬜",
|
6207 |
"✅",
|
6208 |
"✅",
|
6209 |
"❌",
|
|
|
6218 |
"✅",
|
6219 |
"✅",
|
6220 |
"⬜",
|
6221 |
+
"❌",
|
6222 |
"✅",
|
6223 |
"⬜",
|
6224 |
"❌",
|
6225 |
"✅",
|
6226 |
"❌",
|
6227 |
+
"⬜",
|
6228 |
"✅",
|
6229 |
"✅",
|
6230 |
+
"⬜",
|
6231 |
"⬜",
|
6232 |
"✅",
|
6233 |
"✅",
|
|
|
6240 |
"⬜",
|
6241 |
"✅",
|
6242 |
"✅",
|
|
|
|
|
6243 |
"✅",
|
6244 |
+
"❌",
|
6245 |
"✅",
|
6246 |
"⬜",
|
6247 |
"✅",
|
6248 |
"✅",
|
6249 |
"✅",
|
6250 |
+
"✅",
|
6251 |
+
"✅",
|
6252 |
"✅",
|
6253 |
"❌",
|
6254 |
"✅",
|
|
|
6259 |
"⬜",
|
6260 |
"⬜",
|
6261 |
"✅",
|
6262 |
+
"✅",
|
6263 |
+
"✅",
|
6264 |
"✅",
|
6265 |
"✅",
|
6266 |
"✅",
|
6267 |
"⬜",
|
6268 |
"❌",
|
6269 |
"✅",
|
|
|
6270 |
"⬜",
|
6271 |
"✅",
|
6272 |
"✅",
|
6273 |
+
"✅",
|
6274 |
+
"✅",
|
6275 |
"⬜",
|
6276 |
"✅",
|
6277 |
"✅",
|
|
|
6284 |
"✅",
|
6285 |
"❌",
|
6286 |
"⬜",
|
|
|
6287 |
"⬜",
|
6288 |
+
"✅",
|
6289 |
"⬜",
|
6290 |
"✅",
|
6291 |
"✅",
|
|
|
6294 |
"✅",
|
6295 |
"✅",
|
6296 |
"⬜",
|
6297 |
+
"⬜",
|
6298 |
"✅",
|
6299 |
"✅",
|
6300 |
"⬜",
|
|
|
6312 |
"❌",
|
6313 |
"✅",
|
6314 |
"✅",
|
|
|
6315 |
"❌",
|
6316 |
+
"❌",
|
|
|
6317 |
"⬜",
|
6318 |
"✅",
|
6319 |
"⬜",
|
6320 |
+
"✅",
|
6321 |
+
"❌",
|
6322 |
"⬜",
|
6323 |
"⬜",
|
6324 |
"❌",
|
6325 |
"✅",
|
6326 |
"✅",
|
|
|
6327 |
"✅",
|
|
|
6328 |
"✅",
|
6329 |
+
"⬜",
|
6330 |
+
"⬜",
|
6331 |
"✅",
|
6332 |
"❌",
|
6333 |
"✅",
|
6334 |
"✅",
|
6335 |
"⬜",
|
|
|
|
|
6336 |
"⬜",
|
6337 |
"❌",
|
6338 |
+
"⬜",
|
6339 |
+
"⬜",
|
6340 |
"✅",
|
6341 |
"✅",
|
6342 |
"✅",
|
6343 |
"❌",
|
6344 |
"✅",
|
6345 |
+
"⬜",
|
6346 |
"✅",
|
6347 |
"✅",
|
6348 |
"⬜",
|
|
|
6355 |
"✅",
|
6356 |
"✅",
|
6357 |
"✅",
|
|
|
6358 |
"✅",
|
6359 |
"✅",
|
6360 |
+
"✅",
|
6361 |
+
"❌",
|
6362 |
"⬜",
|
6363 |
"❌",
|
6364 |
"⬜",
|
6365 |
"✅",
|
|
|
6366 |
"⬜",
|
6367 |
+
"⬜",
|
6368 |
+
"⬜",
|
6369 |
"❌",
|
6370 |
"✅",
|
6371 |
"⬜",
|
6372 |
"✅",
|
6373 |
"⬜",
|
6374 |
+
"⬜",
|
6375 |
"✅",
|
6376 |
+
"⬜",
|
|
|
6377 |
"❌",
|
6378 |
"✅",
|
6379 |
"❌",
|
|
|
6383 |
"✅",
|
6384 |
"✅",
|
6385 |
"⬜",
|
6386 |
+
"✅",
|
6387 |
"✅",
|
6388 |
"⬜",
|
6389 |
"⬜",
|
6390 |
"⬜",
|
6391 |
"✅",
|
|
|
6392 |
"❌",
|
6393 |
"⬜",
|
6394 |
+
"⬜",
|
6395 |
"✅",
|
6396 |
"❌",
|
6397 |
"✅",
|
|
|
6406 |
"⬜",
|
6407 |
"✅",
|
6408 |
"✅",
|
6409 |
+
"✅",
|
6410 |
"✅",
|
6411 |
"✅",
|
6412 |
"⬜",
|
|
|
6414 |
"⬜",
|
6415 |
"✅",
|
6416 |
"⬜",
|
6417 |
+
"❌",
|
|
|
6418 |
"✅",
|
6419 |
"✅",
|
6420 |
"⬜",
|
6421 |
"⬜",
|
6422 |
"⬜",
|
6423 |
+
"⬜",
|
6424 |
+
"✅",
|
6425 |
"✅",
|
6426 |
"✅",
|
|
|
6427 |
"⬜",
|
6428 |
"✅",
|
6429 |
"✅",
|
|
|
6436 |
"⬜",
|
6437 |
"❌",
|
6438 |
"✅",
|
6439 |
+
"⬜",
|
6440 |
"❌",
|
6441 |
"✅",
|
6442 |
"⬜",
|
|
|
6451 |
"✅",
|
6452 |
"✅",
|
6453 |
"✅",
|
6454 |
+
"⬜",
|
6455 |
"❌",
|
6456 |
"✅",
|
6457 |
+
"❌",
|
6458 |
"✅",
|
6459 |
"✅",
|
6460 |
"✅",
|
|
|
6470 |
"✅",
|
6471 |
"✅",
|
6472 |
"⬜",
|
6473 |
+
"✅",
|
6474 |
"⬜",
|
|
|
6475 |
"✅",
|
6476 |
"✅",
|
6477 |
"⬜",
|
|
|
6492 |
"✅",
|
6493 |
"⬜",
|
6494 |
"✅",
|
6495 |
+
"✅",
|
6496 |
"✅",
|
6497 |
"✅",
|
6498 |
"✅",
|
|
|
6510 |
"✅",
|
6511 |
"✅",
|
6512 |
"⬜",
|
|
|
|
|
6513 |
"⬜",
|
|
|
6514 |
"❌",
|
6515 |
"✅",
|
6516 |
+
"✅",
|
6517 |
"❌",
|
6518 |
+
"✅",
|
6519 |
+
"⬜",
|
6520 |
"❌",
|
6521 |
"✅",
|
6522 |
"⬜",
|
6523 |
"✅",
|
6524 |
"✅",
|
6525 |
+
"❌",
|
6526 |
"⬜",
|
6527 |
"✅",
|
6528 |
"✅",
|
6529 |
"✅",
|
6530 |
"⬜",
|
|
|
|
|
|
|
6531 |
"⬜",
|
6532 |
+
"⬜",
|
6533 |
+
"❌",
|
6534 |
+
"✅",
|
6535 |
"✅",
|
6536 |
"⬜",
|
6537 |
"✅",
|
|
|
6545 |
"❌",
|
6546 |
"⬜",
|
6547 |
"✅",
|
6548 |
+
"⬜",
|
6549 |
+
"⬜",
|
6550 |
"✅",
|
6551 |
"✅",
|
6552 |
+
"❌",
|
6553 |
"✅",
|
6554 |
"✅",
|
6555 |
"✅",
|
6556 |
"✅",
|
6557 |
"✅",
|
6558 |
+
"⬜",
|
6559 |
"✅",
|
6560 |
"⬜",
|
6561 |
"❌",
|
|
|
6564 |
"✅",
|
6565 |
"⬜",
|
6566 |
"❌",
|
|
|
|
|
6567 |
"✅",
|
6568 |
"⬜",
|
|
|
6569 |
"✅",
|
6570 |
"✅",
|
6571 |
+
"❌",
|
6572 |
+
"✅",
|
6573 |
"✅",
|
6574 |
"⬜",
|
6575 |
"✅",
|
6576 |
"⬜",
|
6577 |
"✅",
|
6578 |
+
"❌",
|
6579 |
+
"✅",
|
6580 |
+
"✅",
|
6581 |
"✅",
|
6582 |
"✅",
|
|
|
6583 |
"⬜",
|
6584 |
"✅",
|
6585 |
"✅",
|
|
|
6597 |
"✅",
|
6598 |
"✅",
|
6599 |
"⬜",
|
|
|
6600 |
"⬜",
|
6601 |
+
"❌",
|
6602 |
"⬜",
|
6603 |
"✅",
|
6604 |
"❌",
|
|
|
6614 |
"✅",
|
6615 |
"✅",
|
6616 |
"✅",
|
|
|
|
|
|
|
|
|
6617 |
"⬜",
|
6618 |
"✅",
|
6619 |
+
"⬜",
|
6620 |
"❌",
|
6621 |
"⬜",
|
6622 |
+
"⬜",
|
6623 |
+
"⬜",
|
6624 |
"❌",
|
6625 |
+
"⬜",
|
6626 |
"❌",
|
6627 |
"✅",
|
6628 |
"✅",
|
6629 |
+
"⬜",
|
6630 |
"✅",
|
6631 |
"✅",
|
6632 |
"✅",
|
|
|
6641 |
"✅",
|
6642 |
"❌",
|
6643 |
"⬜",
|
6644 |
+
"⬜",
|
6645 |
"⬜",
|
6646 |
"❌",
|
6647 |
"✅",
|
|
|
6653 |
"✅",
|
6654 |
"✅",
|
6655 |
"✅",
|
6656 |
+
"❌",
|
6657 |
"✅",
|
6658 |
"✅",
|
6659 |
"✅",
|
|
|
6666 |
"❌",
|
6667 |
"✅",
|
6668 |
"✅",
|
6669 |
+
"⬜",
|
6670 |
+
"⬜",
|
6671 |
"✅",
|
6672 |
"❌",
|
6673 |
"✅",
|
|
|
6674 |
"✅",
|
6675 |
"✅",
|
6676 |
"✅",
|
6677 |
"✅",
|
6678 |
+
"⬜",
|
6679 |
"✅",
|
6680 |
"✅",
|
|
|
6681 |
"✅",
|
|
|
|
|
6682 |
"❌",
|
6683 |
+
"⬜",
|
6684 |
"❌",
|
6685 |
"✅",
|
6686 |
"⬜",
|
6687 |
"⬜",
|
6688 |
"✅",
|
|
|
|
|
6689 |
"⬜",
|
6690 |
"✅",
|
6691 |
+
"⬜",
|
6692 |
"⬜",
|
6693 |
"✅",
|
6694 |
"⬜",
|
6695 |
+
"✅",
|
6696 |
+
"✅",
|
6697 |
"⬜",
|
6698 |
"✅",
|
6699 |
"❌",
|
|
|
6704 |
"✅",
|
6705 |
"✅",
|
6706 |
"⬜",
|
6707 |
+
"⬜",
|
6708 |
"⬜",
|
6709 |
"✅",
|
6710 |
"✅",
|
|
|
6714 |
"✅",
|
6715 |
"✅",
|
6716 |
"✅",
|
6717 |
+
"⬜",
|
6718 |
"✅",
|
6719 |
"⬜",
|
6720 |
"✅",
|
|
|
6725 |
"✅",
|
6726 |
"⬜",
|
6727 |
"✅",
|
6728 |
+
"✅",
|
6729 |
"✅",
|
6730 |
"❌",
|
6731 |
"✅",
|
|
|
6741 |
"✅",
|
6742 |
"✅",
|
6743 |
"⬜",
|
6744 |
+
"✅",
|
6745 |
"✅",
|
6746 |
"✅",
|
6747 |
"✅",
|
6748 |
"❌",
|
6749 |
"✅",
|
|
|
6750 |
"✅",
|
6751 |
"✅",
|
6752 |
+
"✅",
|
6753 |
+
"✅",
|
6754 |
"✅",
|
6755 |
"✅",
|
6756 |
"✅",
|
6757 |
"❌",
|
6758 |
"✅",
|
6759 |
+
"✅",
|
6760 |
"✅",
|
6761 |
"✅",
|
6762 |
"✅",
|
|
|
6769 |
"✅",
|
6770 |
"✅",
|
6771 |
"❌",
|
|
|
|
|
6772 |
"⬜",
|
6773 |
"⬜",
|
6774 |
+
"⬜",
|
6775 |
"⬜",
|
6776 |
"✅",
|
6777 |
"✅",
|
6778 |
"✅",
|
6779 |
+
"✅",
|
6780 |
+
"✅",
|
6781 |
+
"⬜",
|
6782 |
"❌",
|
6783 |
"✅",
|
6784 |
"✅",
|
|
|
6792 |
"✅",
|
6793 |
"⬜",
|
6794 |
"✅",
|
|
|
|
|
6795 |
"⬜",
|
6796 |
+
"✅",
|
6797 |
"⬜",
|
6798 |
+
"❌",
|
6799 |
"✅",
|
6800 |
"⬜",
|
6801 |
"✅",
|
6802 |
"❌",
|
6803 |
"⬜",
|
6804 |
"✅",
|
6805 |
+
"⬜",
|
6806 |
"✅",
|
6807 |
"❌",
|
6808 |
+
"✅",
|
6809 |
"✅"
|
6810 |
],
|
6811 |
"textposition": "bottom center",
|
6812 |
"type": "scatter",
|
6813 |
"x": [
|
6814 |
+
"2019-09-09T00:00:00",
|
6815 |
+
"2019-09-10T00:00:00",
|
6816 |
"2019-09-11T00:00:00",
|
6817 |
"2019-09-12T00:00:00",
|
6818 |
"2019-09-13T00:00:00",
|
|
|
7838 |
"2023-10-03T00:00:00",
|
7839 |
"2023-10-04T00:00:00",
|
7840 |
"2023-10-05T00:00:00",
|
7841 |
+
"2023-10-06T00:00:00",
|
7842 |
+
"2023-10-09T00:00:00"
|
7843 |
],
|
7844 |
"y": [
|
7845 |
+
2954.5429431152343,
|
7846 |
+
2942.224959716797,
|
7847 |
2960.4335083007813,
|
7848 |
2985.915322265625,
|
7849 |
2987.885402832031,
|
|
|
8869 |
4195.367944335938,
|
8870 |
4199.377580566406,
|
8871 |
4204.78060546875,
|
8872 |
+
4198.452055664063,
|
8873 |
+
4262.371088867188
|
8874 |
]
|
8875 |
}
|
8876 |
],
|
|
|
9705 |
},
|
9706 |
"xaxis": {
|
9707 |
"range": [
|
9708 |
+
"2023-07-31T00:00:00",
|
9709 |
+
"2023-10-09T00:00:00"
|
9710 |
],
|
9711 |
"rangebreaks": [
|
9712 |
{
|
|
|
9811 |
},
|
9812 |
{
|
9813 |
"cell_type": "code",
|
9814 |
+
"execution_count": 10,
|
9815 |
"metadata": {},
|
9816 |
"outputs": [
|
9817 |
{
|