fmegahed commited on
Commit
6f11f39
·
verified ·
1 Parent(s): dba3195

Rearranged the buttons

Browse files
Files changed (1) hide show
  1. app.py +32 -577
app.py CHANGED
@@ -230,566 +230,8 @@ def download_sample():
230
  ^GSPC,2023-01-03,3824.139892578125
231
  ^GSPC,2023-01-04,3852.969970703125
232
  ^GSPC,2023-01-05,3808.10009765625
233
- ^GSPC,2023-01-06,3895.080078125
234
- ^GSPC,2023-01-09,3892.090087890625
235
- ^GSPC,2023-01-10,3919.25
236
- ^GSPC,2023-01-11,3969.610107421875
237
- ^GSPC,2023-01-12,3983.169921875
238
- ^GSPC,2023-01-13,3999.090087890625
239
- ^GSPC,2023-01-17,3990.969970703125
240
- ^GSPC,2023-01-18,3928.860107421875
241
- ^GSPC,2023-01-19,3898.85009765625
242
- ^GSPC,2023-01-20,3972.610107421875
243
- ^GSPC,2023-01-23,4019.81005859375
244
- ^GSPC,2023-01-24,4016.949951171875
245
- ^GSPC,2023-01-25,4016.219970703125
246
- ^GSPC,2023-01-26,4060.429931640625
247
- ^GSPC,2023-01-27,4070.56005859375
248
- ^GSPC,2023-01-30,4017.77001953125
249
- ^GSPC,2023-01-31,4076.60009765625
250
- ^GSPC,2023-02-01,4119.2099609375
251
- ^GSPC,2023-02-02,4179.759765625
252
- ^GSPC,2023-02-03,4136.47998046875
253
- ^GSPC,2023-02-06,4111.080078125
254
- ^GSPC,2023-02-07,4164
255
- ^GSPC,2023-02-08,4117.85986328125
256
- ^GSPC,2023-02-09,4081.5
257
- ^GSPC,2023-02-10,4090.4599609375
258
- ^GSPC,2023-02-13,4137.2900390625
259
- ^GSPC,2023-02-14,4136.1298828125
260
- ^GSPC,2023-02-15,4147.60009765625
261
- ^GSPC,2023-02-16,4090.409912109375
262
- ^GSPC,2023-02-17,4079.090087890625
263
- ^GSPC,2023-02-21,3997.340087890625
264
- ^GSPC,2023-02-22,3991.050048828125
265
- ^GSPC,2023-02-23,4012.320068359375
266
- ^GSPC,2023-02-24,3970.0400390625
267
- ^GSPC,2023-02-27,3982.239990234375
268
- ^GSPC,2023-02-28,3970.14990234375
269
- ^GSPC,2023-03-01,3951.389892578125
270
- ^GSPC,2023-03-02,3981.35009765625
271
- ^GSPC,2023-03-03,4045.639892578125
272
- ^GSPC,2023-03-06,4048.419921875
273
- ^GSPC,2023-03-07,3986.3701171875
274
- ^GSPC,2023-03-08,3992.010009765625
275
- ^GSPC,2023-03-09,3918.320068359375
276
- ^GSPC,2023-03-10,3861.590087890625
277
- ^GSPC,2023-03-13,3855.760009765625
278
- ^GSPC,2023-03-14,3919.2900390625
279
- ^GSPC,2023-03-15,3891.929931640625
280
- ^GSPC,2023-03-16,3960.280029296875
281
- ^GSPC,2023-03-17,3916.639892578125
282
- ^GSPC,2023-03-20,3951.570068359375
283
- ^GSPC,2023-03-21,4002.8701171875
284
- ^GSPC,2023-03-22,3936.969970703125
285
- ^GSPC,2023-03-23,3948.719970703125
286
- ^GSPC,2023-03-24,3970.989990234375
287
- ^GSPC,2023-03-27,3977.530029296875
288
- ^GSPC,2023-03-28,3971.27001953125
289
- ^GSPC,2023-03-29,4027.81005859375
290
- ^GSPC,2023-03-30,4050.830078125
291
- ^GSPC,2023-03-31,4109.31005859375
292
- ^GSPC,2023-04-03,4124.509765625
293
- ^GSPC,2023-04-04,4100.60009765625
294
- ^GSPC,2023-04-05,4090.3798828125
295
- ^GSPC,2023-04-06,4105.02001953125
296
- ^GSPC,2023-04-10,4109.10986328125
297
- ^GSPC,2023-04-11,4108.93994140625
298
- ^GSPC,2023-04-12,4091.949951171875
299
- ^GSPC,2023-04-13,4146.22021484375
300
- ^GSPC,2023-04-14,4137.64013671875
301
- ^GSPC,2023-04-17,4151.31982421875
302
- ^GSPC,2023-04-18,4154.8701171875
303
- ^GSPC,2023-04-19,4154.52001953125
304
- ^GSPC,2023-04-20,4129.7900390625
305
- ^GSPC,2023-04-21,4133.52001953125
306
- ^GSPC,2023-04-24,4137.0400390625
307
- ^GSPC,2023-04-25,4071.6298828125
308
- ^GSPC,2023-04-26,4055.989990234375
309
- ^GSPC,2023-04-27,4135.35009765625
310
- ^GSPC,2023-04-28,4169.47998046875
311
- ^GSPC,2023-05-01,4167.8701171875
312
- ^GSPC,2023-05-02,4119.580078125
313
- ^GSPC,2023-05-03,4090.75
314
- ^GSPC,2023-05-04,4061.219970703125
315
- ^GSPC,2023-05-05,4136.25
316
- ^GSPC,2023-05-08,4138.1201171875
317
- ^GSPC,2023-05-09,4119.169921875
318
- ^GSPC,2023-05-10,4137.64013671875
319
- ^GSPC,2023-05-11,4130.6201171875
320
- ^GSPC,2023-05-12,4124.080078125
321
- ^GSPC,2023-05-15,4136.27978515625
322
- ^GSPC,2023-05-16,4109.89990234375
323
- ^GSPC,2023-05-17,4158.77001953125
324
- ^GSPC,2023-05-18,4198.0498046875
325
- ^GSPC,2023-05-19,4191.97998046875
326
- ^GSPC,2023-05-22,4192.6298828125
327
- ^GSPC,2023-05-23,4145.580078125
328
- ^GSPC,2023-05-24,4115.240234375
329
- ^GSPC,2023-05-25,4151.27978515625
330
- ^GSPC,2023-05-26,4205.4501953125
331
- ^GSPC,2023-05-30,4205.52001953125
332
- ^GSPC,2023-05-31,4179.830078125
333
- ^GSPC,2023-06-01,4221.02001953125
334
- ^GSPC,2023-06-02,4282.3701171875
335
- ^GSPC,2023-06-05,4273.7900390625
336
- ^GSPC,2023-06-06,4283.85009765625
337
- ^GSPC,2023-06-07,4267.52001953125
338
- ^GSPC,2023-06-08,4293.93017578125
339
- ^GSPC,2023-06-09,4298.85986328125
340
- ^GSPC,2023-06-12,4338.93017578125
341
- ^GSPC,2023-06-13,4369.009765625
342
- ^GSPC,2023-06-14,4372.58984375
343
- ^GSPC,2023-06-15,4425.83984375
344
- ^GSPC,2023-06-16,4409.58984375
345
- ^GSPC,2023-06-20,4388.7099609375
346
- ^GSPC,2023-06-21,4365.68994140625
347
- ^GSPC,2023-06-22,4381.89013671875
348
- ^GSPC,2023-06-23,4348.330078125
349
- ^GSPC,2023-06-26,4328.81982421875
350
- ^GSPC,2023-06-27,4378.41015625
351
- ^GSPC,2023-06-28,4376.85986328125
352
- ^GSPC,2023-06-29,4396.43994140625
353
- ^GSPC,2023-06-30,4450.3798828125
354
- ^GSPC,2023-07-03,4455.58984375
355
- ^GSPC,2023-07-05,4446.81982421875
356
- ^GSPC,2023-07-06,4411.58984375
357
- ^GSPC,2023-07-07,4398.9501953125
358
- ^GSPC,2023-07-10,4409.52978515625
359
- ^GSPC,2023-07-11,4439.259765625
360
- ^GSPC,2023-07-12,4472.16015625
361
- ^GSPC,2023-07-13,4510.0400390625
362
- ^GSPC,2023-07-14,4505.419921875
363
- ^GSPC,2023-07-17,4522.7900390625
364
- ^GSPC,2023-07-18,4554.97998046875
365
- ^GSPC,2023-07-19,4565.72021484375
366
- ^GSPC,2023-07-20,4534.8701171875
367
- ^GSPC,2023-07-21,4536.33984375
368
- ^GSPC,2023-07-24,4554.64013671875
369
- ^GSPC,2023-07-25,4567.4599609375
370
- ^GSPC,2023-07-26,4566.75
371
- ^GSPC,2023-07-27,4537.41015625
372
- ^GSPC,2023-07-28,4582.22998046875
373
- ^GSPC,2023-07-31,4588.9599609375
374
- ^GSPC,2023-08-01,4576.72998046875
375
- ^GSPC,2023-08-02,4513.39013671875
376
- ^GSPC,2023-08-03,4501.89013671875
377
- ^GSPC,2023-08-04,4478.02978515625
378
- ^GSPC,2023-08-07,4518.43994140625
379
- ^GSPC,2023-08-08,4499.3798828125
380
- ^GSPC,2023-08-09,4467.7099609375
381
- ^GSPC,2023-08-10,4468.830078125
382
- ^GSPC,2023-08-11,4464.0498046875
383
- ^GSPC,2023-08-14,4489.72021484375
384
- ^GSPC,2023-08-15,4437.85986328125
385
- ^GSPC,2023-08-16,4404.330078125
386
- ^GSPC,2023-08-17,4370.35986328125
387
- ^GSPC,2023-08-18,4369.7099609375
388
- ^GSPC,2023-08-21,4399.77001953125
389
- ^GSPC,2023-08-22,4387.5498046875
390
- ^GSPC,2023-08-23,4436.009765625
391
- ^GSPC,2023-08-24,4376.31005859375
392
- ^GSPC,2023-08-25,4405.7099609375
393
- ^GSPC,2023-08-28,4433.31005859375
394
- ^GSPC,2023-08-29,4497.6298828125
395
- ^GSPC,2023-08-30,4514.8701171875
396
- ^GSPC,2023-08-31,4507.66015625
397
- ^GSPC,2023-09-01,4515.77001953125
398
- ^GSPC,2023-09-05,4496.830078125
399
- ^GSPC,2023-09-06,4465.47998046875
400
- ^GSPC,2023-09-07,4451.14013671875
401
- ^GSPC,2023-09-08,4457.490234375
402
- ^GSPC,2023-09-11,4487.4599609375
403
- ^GSPC,2023-09-12,4461.89990234375
404
- ^GSPC,2023-09-13,4467.43994140625
405
- ^GSPC,2023-09-14,4505.10009765625
406
- ^GSPC,2023-09-15,4450.31982421875
407
- ^GSPC,2023-09-18,4453.52978515625
408
- ^GSPC,2023-09-19,4443.9501953125
409
- ^GSPC,2023-09-20,4402.2001953125
410
- ^GSPC,2023-09-21,4330
411
- ^GSPC,2023-09-22,4320.06005859375
412
- ^GSPC,2023-09-25,4337.43994140625
413
- ^GSPC,2023-09-26,4273.52978515625
414
- ^GSPC,2023-09-27,4274.509765625
415
- ^GSPC,2023-09-28,4299.7001953125
416
- ^GSPC,2023-09-29,4288.0498046875
417
- ^GSPC,2023-10-02,4288.39013671875
418
- ^GSPC,2023-10-03,4229.4501953125
419
- ^GSPC,2023-10-04,4263.75
420
- ^GSPC,2023-10-05,4258.18994140625
421
- ^GSPC,2023-10-06,4308.5
422
- ^GSPC,2023-10-09,4335.66015625
423
- ^GSPC,2023-10-10,4358.240234375
424
- ^GSPC,2023-10-11,4376.9501953125
425
- ^GSPC,2023-10-12,4349.60986328125
426
- ^GSPC,2023-10-13,4327.77978515625
427
- ^GSPC,2023-10-16,4373.6298828125
428
- ^GSPC,2023-10-17,4373.2001953125
429
- ^GSPC,2023-10-18,4314.60009765625
430
- ^GSPC,2023-10-19,4278
431
- ^GSPC,2023-10-20,4224.16015625
432
- ^GSPC,2023-10-23,4217.0400390625
433
- ^GSPC,2023-10-24,4247.68017578125
434
- ^GSPC,2023-10-25,4186.77001953125
435
- ^GSPC,2023-10-26,4137.22998046875
436
- ^GSPC,2023-10-27,4117.3701171875
437
- ^GSPC,2023-10-30,4166.81982421875
438
- ^GSPC,2023-10-31,4193.7998046875
439
- ^GSPC,2023-11-01,4237.85986328125
440
- ^GSPC,2023-11-02,4317.77978515625
441
- ^GSPC,2023-11-03,4358.33984375
442
- ^GSPC,2023-11-06,4365.97998046875
443
- ^GSPC,2023-11-07,4378.3798828125
444
- ^GSPC,2023-11-08,4382.77978515625
445
- ^GSPC,2023-11-09,4347.35009765625
446
- ^GSPC,2023-11-10,4415.240234375
447
- ^GSPC,2023-11-13,4411.5498046875
448
- ^GSPC,2023-11-14,4495.7001953125
449
- ^GSPC,2023-11-15,4502.8798828125
450
- ^GSPC,2023-11-16,4508.240234375
451
- ^GSPC,2023-11-17,4514.02001953125
452
- ^GSPC,2023-11-20,4547.3798828125
453
- ^GSPC,2023-11-21,4538.18994140625
454
- ^GSPC,2023-11-22,4556.6201171875
455
- ^GSPC,2023-11-24,4559.33984375
456
- ^GSPC,2023-11-27,4550.43017578125
457
- ^GSPC,2023-11-28,4554.89013671875
458
- ^GSPC,2023-11-29,4550.580078125
459
- ^GSPC,2023-11-30,4567.7998046875
460
- ^GSPC,2023-12-01,4594.6298828125
461
- ^GSPC,2023-12-04,4569.77978515625
462
- ^GSPC,2023-12-05,4567.18017578125
463
- ^GSPC,2023-12-06,4549.33984375
464
- ^GSPC,2023-12-07,4585.58984375
465
- ^GSPC,2023-12-08,4604.3701171875
466
- ^GSPC,2023-12-11,4622.43994140625
467
- ^GSPC,2023-12-12,4643.7001953125
468
- ^GSPC,2023-12-13,4707.08984375
469
- ^GSPC,2023-12-14,4719.5498046875
470
- ^GSPC,2023-12-15,4719.18994140625
471
- ^GSPC,2023-12-18,4740.56005859375
472
- ^GSPC,2023-12-19,4768.3701171875
473
- ^GSPC,2023-12-20,4698.35009765625
474
- ^GSPC,2023-12-21,4746.75
475
- ^GSPC,2023-12-22,4754.6298828125
476
- ^GSPC,2023-12-26,4774.75
477
- ^GSPC,2023-12-27,4781.580078125
478
- ^GSPC,2023-12-28,4783.35009765625
479
- ^GSPC,2023-12-29,4769.830078125
480
- ^GSPC,2024-01-02,4742.830078125
481
- ^GSPC,2024-01-03,4704.81005859375
482
- ^GSPC,2024-01-04,4688.68017578125
483
- ^GSPC,2024-01-05,4697.240234375
484
- ^GSPC,2024-01-08,4763.5400390625
485
- ^GSPC,2024-01-09,4756.5
486
- ^GSPC,2024-01-10,4783.4501953125
487
- ^GSPC,2024-01-11,4780.240234375
488
- ^GSPC,2024-01-12,4783.830078125
489
- ^GSPC,2024-01-16,4765.97998046875
490
- ^GSPC,2024-01-17,4739.2099609375
491
- ^GSPC,2024-01-18,4780.93994140625
492
- ^GSPC,2024-01-19,4839.81005859375
493
- ^GSPC,2024-01-22,4850.43017578125
494
- ^GSPC,2024-01-23,4864.60009765625
495
- ^GSPC,2024-01-24,4868.5498046875
496
- ^GSPC,2024-01-25,4894.16015625
497
- ^GSPC,2024-01-26,4890.97021484375
498
- ^GSPC,2024-01-29,4927.93017578125
499
- ^GSPC,2024-01-30,4924.97021484375
500
- ^GSPC,2024-01-31,4845.64990234375
501
- ^GSPC,2024-02-01,4906.18994140625
502
- ^GSPC,2024-02-02,4958.60986328125
503
- ^GSPC,2024-02-05,4942.81005859375
504
- ^GSPC,2024-02-06,4954.22998046875
505
- ^GSPC,2024-02-07,4995.06005859375
506
- ^GSPC,2024-02-08,4997.91015625
507
- ^GSPC,2024-02-09,5026.60986328125
508
- ^GSPC,2024-02-12,5021.83984375
509
- ^GSPC,2024-02-13,4953.169921875
510
- ^GSPC,2024-02-14,5000.6201171875
511
- ^GSPC,2024-02-15,5029.72998046875
512
- ^GSPC,2024-02-16,5005.56982421875
513
- ^GSPC,2024-02-20,4975.509765625
514
- ^GSPC,2024-02-21,4981.7998046875
515
- ^GSPC,2024-02-22,5087.02978515625
516
- ^GSPC,2024-02-23,5088.7998046875
517
- ^GSPC,2024-02-26,5069.52978515625
518
- ^GSPC,2024-02-27,5078.18017578125
519
- ^GSPC,2024-02-28,5069.759765625
520
- ^GSPC,2024-02-29,5096.27001953125
521
- ^GSPC,2024-03-01,5137.080078125
522
- ^GSPC,2024-03-04,5130.9501953125
523
- ^GSPC,2024-03-05,5078.64990234375
524
- ^GSPC,2024-03-06,5104.759765625
525
- ^GSPC,2024-03-07,5157.35986328125
526
- ^GSPC,2024-03-08,5123.68994140625
527
- ^GSPC,2024-03-11,5117.93994140625
528
- ^GSPC,2024-03-12,5175.27001953125
529
- ^GSPC,2024-03-13,5165.31005859375
530
- ^GSPC,2024-03-14,5150.47998046875
531
- ^GSPC,2024-03-15,5117.08984375
532
- ^GSPC,2024-03-18,5149.419921875
533
- ^GSPC,2024-03-19,5178.509765625
534
- ^GSPC,2024-03-20,5224.6201171875
535
- ^GSPC,2024-03-21,5241.52978515625
536
- ^GSPC,2024-03-22,5234.18017578125
537
- ^GSPC,2024-03-25,5218.18994140625
538
- ^GSPC,2024-03-26,5203.580078125
539
- ^GSPC,2024-03-27,5248.490234375
540
- ^GSPC,2024-03-28,5254.35009765625
541
- ^GSPC,2024-04-01,5243.77001953125
542
- ^GSPC,2024-04-02,5205.81005859375
543
- ^GSPC,2024-04-03,5211.490234375
544
- ^GSPC,2024-04-04,5147.2099609375
545
- ^GSPC,2024-04-05,5204.33984375
546
- ^GSPC,2024-04-08,5202.39013671875
547
- ^GSPC,2024-04-09,5209.91015625
548
- ^GSPC,2024-04-10,5160.64013671875
549
- ^GSPC,2024-04-11,5199.06005859375
550
- ^GSPC,2024-04-12,5123.41015625
551
- ^GSPC,2024-04-15,5061.81982421875
552
- ^GSPC,2024-04-16,5051.41015625
553
- ^GSPC,2024-04-17,5022.2099609375
554
- ^GSPC,2024-04-18,5011.1201171875
555
- ^GSPC,2024-04-19,4967.22998046875
556
- ^GSPC,2024-04-22,5010.60009765625
557
- ^GSPC,2024-04-23,5070.5498046875
558
- ^GSPC,2024-04-24,5071.6298828125
559
- ^GSPC,2024-04-25,5048.419921875
560
- ^GSPC,2024-04-26,5099.9599609375
561
- ^GSPC,2024-04-29,5116.169921875
562
- ^GSPC,2024-04-30,5035.68994140625
563
- ^GSPC,2024-05-01,5018.39013671875
564
- ^GSPC,2024-05-02,5064.2001953125
565
- ^GSPC,2024-05-03,5127.7900390625
566
- ^GSPC,2024-05-06,5180.740234375
567
- ^GSPC,2024-05-07,5187.7001953125
568
- ^GSPC,2024-05-08,5187.669921875
569
- ^GSPC,2024-05-09,5214.080078125
570
- ^GSPC,2024-05-10,5222.68017578125
571
- ^GSPC,2024-05-13,5221.419921875
572
- ^GSPC,2024-05-14,5246.68017578125
573
- ^GSPC,2024-05-15,5308.14990234375
574
- ^GSPC,2024-05-16,5297.10009765625
575
- ^GSPC,2024-05-17,5303.27001953125
576
- ^GSPC,2024-05-20,5308.1298828125
577
- ^GSPC,2024-05-21,5321.41015625
578
- ^GSPC,2024-05-22,5307.009765625
579
- ^GSPC,2024-05-23,5267.83984375
580
- ^GSPC,2024-05-24,5304.72021484375
581
- ^GSPC,2024-05-28,5306.0400390625
582
- ^GSPC,2024-05-29,5266.9501953125
583
- ^GSPC,2024-05-30,5235.47998046875
584
- ^GSPC,2024-05-31,5277.509765625
585
- ^GSPC,2024-06-03,5283.39990234375
586
- ^GSPC,2024-06-04,5291.33984375
587
- ^GSPC,2024-06-05,5354.02978515625
588
- ^GSPC,2024-06-06,5352.9599609375
589
- ^GSPC,2024-06-07,5346.990234375
590
- ^GSPC,2024-06-10,5360.7900390625
591
- ^GSPC,2024-06-11,5375.31982421875
592
- ^GSPC,2024-06-12,5421.02978515625
593
- ^GSPC,2024-06-13,5433.740234375
594
- ^GSPC,2024-06-14,5431.60009765625
595
- ^GSPC,2024-06-17,5473.22998046875
596
- ^GSPC,2024-06-18,5487.02978515625
597
- ^GSPC,2024-06-20,5473.169921875
598
- ^GSPC,2024-06-21,5464.6201171875
599
- ^GSPC,2024-06-24,5447.8701171875
600
- ^GSPC,2024-06-25,5469.2998046875
601
- ^GSPC,2024-06-26,5477.89990234375
602
- ^GSPC,2024-06-27,5482.8701171875
603
- ^GSPC,2024-06-28,5460.47998046875
604
- ^GSPC,2024-07-01,5475.08984375
605
- ^GSPC,2024-07-02,5509.009765625
606
- ^GSPC,2024-07-03,5537.02001953125
607
- ^GSPC,2024-07-05,5567.18994140625
608
- ^GSPC,2024-07-08,5572.85009765625
609
- ^GSPC,2024-07-09,5576.97998046875
610
- ^GSPC,2024-07-10,5633.91015625
611
- ^GSPC,2024-07-11,5584.5400390625
612
- ^GSPC,2024-07-12,5615.35009765625
613
- ^GSPC,2024-07-15,5631.22021484375
614
- ^GSPC,2024-07-16,5667.2001953125
615
- ^GSPC,2024-07-17,5588.27001953125
616
- ^GSPC,2024-07-18,5544.58984375
617
- ^GSPC,2024-07-19,5505
618
- ^GSPC,2024-07-22,5564.41015625
619
- ^GSPC,2024-07-23,5555.740234375
620
- ^GSPC,2024-07-24,5427.1298828125
621
- ^GSPC,2024-07-25,5399.22021484375
622
- ^GSPC,2024-07-26,5459.10009765625
623
- ^GSPC,2024-07-29,5463.5400390625
624
- ^GSPC,2024-07-30,5436.43994140625
625
- ^GSPC,2024-07-31,5522.2998046875
626
- ^GSPC,2024-08-01,5446.68017578125
627
- ^GSPC,2024-08-02,5346.56005859375
628
- ^GSPC,2024-08-05,5186.330078125
629
- ^GSPC,2024-08-06,5240.02978515625
630
- ^GSPC,2024-08-07,5199.5
631
- ^GSPC,2024-08-08,5319.31005859375
632
- ^GSPC,2024-08-09,5344.16015625
633
- ^GSPC,2024-08-12,5344.39013671875
634
- ^GSPC,2024-08-13,5434.43017578125
635
- ^GSPC,2024-08-14,5455.2099609375
636
- ^GSPC,2024-08-15,5543.22021484375
637
- ^GSPC,2024-08-16,5554.25
638
- ^GSPC,2024-08-19,5608.25
639
- ^GSPC,2024-08-20,5597.1201171875
640
- ^GSPC,2024-08-21,5620.85009765625
641
- ^GSPC,2024-08-22,5570.64013671875
642
- ^GSPC,2024-08-23,5634.60986328125
643
- ^GSPC,2024-08-26,5616.83984375
644
- ^GSPC,2024-08-27,5625.7998046875
645
- ^GSPC,2024-08-28,5592.18017578125
646
- ^GSPC,2024-08-29,5591.9599609375
647
- ^GSPC,2024-08-30,5648.39990234375
648
- ^GSPC,2024-09-03,5528.93017578125
649
- ^GSPC,2024-09-04,5520.06982421875
650
- ^GSPC,2024-09-05,5503.41015625
651
- ^GSPC,2024-09-06,5408.419921875
652
- ^GSPC,2024-09-09,5471.0498046875
653
- ^GSPC,2024-09-10,5495.52001953125
654
- ^GSPC,2024-09-11,5554.1298828125
655
- ^GSPC,2024-09-12,5595.759765625
656
- ^GSPC,2024-09-13,5626.02001953125
657
- ^GSPC,2024-09-16,5633.08984375
658
- ^GSPC,2024-09-17,5634.580078125
659
- ^GSPC,2024-09-18,5618.259765625
660
- ^GSPC,2024-09-19,5713.64013671875
661
- ^GSPC,2024-09-20,5702.5498046875
662
- ^GSPC,2024-09-23,5718.56982421875
663
- ^GSPC,2024-09-24,5732.93017578125
664
- ^GSPC,2024-09-25,5722.259765625
665
- ^GSPC,2024-09-26,5745.3701171875
666
- ^GSPC,2024-09-27,5738.169921875
667
- ^GSPC,2024-09-30,5762.47998046875
668
- ^GSPC,2024-10-01,5708.75
669
- ^GSPC,2024-10-02,5709.5400390625
670
- ^GSPC,2024-10-03,5699.93994140625
671
- ^GSPC,2024-10-04,5751.06982421875
672
- ^GSPC,2024-10-07,5695.93994140625
673
- ^GSPC,2024-10-08,5751.1298828125
674
- ^GSPC,2024-10-09,5792.0400390625
675
- ^GSPC,2024-10-10,5780.0498046875
676
- ^GSPC,2024-10-11,5815.02978515625
677
- ^GSPC,2024-10-14,5859.85009765625
678
- ^GSPC,2024-10-15,5815.259765625
679
- ^GSPC,2024-10-16,5842.47021484375
680
- ^GSPC,2024-10-17,5841.47021484375
681
- ^GSPC,2024-10-18,5864.669921875
682
- ^GSPC,2024-10-21,5853.97998046875
683
- ^GSPC,2024-10-22,5851.2001953125
684
- ^GSPC,2024-10-23,5797.419921875
685
- ^GSPC,2024-10-24,5809.85986328125
686
- ^GSPC,2024-10-25,5808.1201171875
687
- ^GSPC,2024-10-28,5823.52001953125
688
- ^GSPC,2024-10-29,5832.919921875
689
- ^GSPC,2024-10-30,5813.669921875
690
- ^GSPC,2024-10-31,5705.4501953125
691
- ^GSPC,2024-11-01,5728.7998046875
692
- ^GSPC,2024-11-04,5712.68994140625
693
- ^GSPC,2024-11-05,5782.759765625
694
- ^GSPC,2024-11-06,5929.0400390625
695
- ^GSPC,2024-11-07,5973.10009765625
696
- ^GSPC,2024-11-08,5995.5400390625
697
- ^GSPC,2024-11-11,6001.35009765625
698
- ^GSPC,2024-11-12,5983.990234375
699
- ^GSPC,2024-11-13,5985.3798828125
700
- ^GSPC,2024-11-14,5949.169921875
701
- ^GSPC,2024-11-15,5870.6201171875
702
- ^GSPC,2024-11-18,5893.6201171875
703
- ^GSPC,2024-11-19,5916.97998046875
704
- ^GSPC,2024-11-20,5917.10986328125
705
- ^GSPC,2024-11-21,5948.7099609375
706
- ^GSPC,2024-11-22,5969.33984375
707
- ^GSPC,2024-11-25,5987.3701171875
708
- ^GSPC,2024-11-26,6021.6298828125
709
- ^GSPC,2024-11-27,5998.740234375
710
- ^GSPC,2024-11-29,6032.3798828125
711
- ^GSPC,2024-12-02,6047.14990234375
712
- ^GSPC,2024-12-03,6049.8798828125
713
- ^GSPC,2024-12-04,6086.490234375
714
- ^GSPC,2024-12-05,6075.10986328125
715
- ^GSPC,2024-12-06,6090.27001953125
716
- ^GSPC,2024-12-09,6052.85009765625
717
- ^GSPC,2024-12-10,6034.91015625
718
- ^GSPC,2024-12-11,6084.18994140625
719
- ^GSPC,2024-12-12,6051.25
720
- ^GSPC,2024-12-13,6051.08984375
721
- ^GSPC,2024-12-16,6074.080078125
722
- ^GSPC,2024-12-17,6050.60986328125
723
- ^GSPC,2024-12-18,5872.16015625
724
- ^GSPC,2024-12-19,5867.080078125
725
- ^GSPC,2024-12-20,5930.85009765625
726
- ^GSPC,2024-12-23,5974.06982421875
727
- ^GSPC,2024-12-24,6040.0400390625
728
- ^GSPC,2024-12-26,6037.58984375
729
- ^GSPC,2024-12-27,5970.83984375
730
- ^GSPC,2024-12-30,5906.93994140625
731
- ^GSPC,2024-12-31,5881.6298828125
732
- ^GSPC,2025-01-02,5868.5498046875
733
- ^GSPC,2025-01-03,5942.47021484375
734
- ^GSPC,2025-01-06,5975.3798828125
735
- ^GSPC,2025-01-07,5909.02978515625
736
- ^GSPC,2025-01-08,5918.25
737
- ^GSPC,2025-01-10,5827.0400390625
738
- ^GSPC,2025-01-13,5836.22021484375
739
- ^GSPC,2025-01-14,5842.91015625
740
- ^GSPC,2025-01-15,5949.91015625
741
- ^GSPC,2025-01-16,5937.33984375
742
- ^GSPC,2025-01-17,5996.66015625
743
- ^GSPC,2025-01-21,6049.240234375
744
- ^GSPC,2025-01-22,6086.3701171875
745
- ^GSPC,2025-01-23,6118.7099609375
746
- ^GSPC,2025-01-24,6101.240234375
747
- ^GSPC,2025-01-27,6012.27978515625
748
- ^GSPC,2025-01-28,6067.7001953125
749
- ^GSPC,2025-01-29,6039.31005859375
750
- ^GSPC,2025-01-30,6071.169921875
751
- ^GSPC,2025-01-31,6040.52978515625
752
- ^GSPC,2025-02-03,5994.56982421875
753
- ^GSPC,2025-02-04,6037.8798828125
754
- ^GSPC,2025-02-05,6061.47998046875
755
- ^GSPC,2025-02-06,6083.56982421875
756
- ^GSPC,2025-02-07,6025.990234375
757
- ^GSPC,2025-02-10,6066.43994140625
758
- ^GSPC,2025-02-11,6068.5
759
- ^GSPC,2025-02-12,6051.97021484375
760
- ^GSPC,2025-02-13,6115.06982421875
761
- ^GSPC,2025-02-14,6114.6298828125
762
- ^GSPC,2025-02-18,6129.580078125
763
- ^GSPC,2025-02-19,6144.14990234375
764
- ^GSPC,2025-02-20,6117.52001953125
765
- ^GSPC,2025-02-21,6013.1298828125
766
- ^GSPC,2025-02-24,5983.25
767
- ^GSPC,2025-02-25,5955.25
768
- ^GSPC,2025-02-26,5956.06005859375
769
- ^GSPC,2025-02-27,5861.56982421875
770
- ^GSPC,2025-02-28,5954.5
771
- ^GSPC,2025-03-03,5849.72021484375
772
- ^GSPC,2025-03-04,5778.14990234375
773
- ^GSPC,2025-03-05,5842.6298828125
774
- ^GSPC,2025-03-06,5738.52001953125
775
- ^GSPC,2025-03-07,5770.2001953125
776
- ^GSPC,2025-03-10,5614.56005859375
777
- ^GSPC,2025-03-11,5572.06982421875
778
- ^GSPC,2025-03-12,5599.2998046875
779
- ^GSPC,2025-03-13,5521.52001953125
780
- ^GSPC,2025-03-14,5638.93994140625
781
- ^GSPC,2025-03-17,5675.1201171875
782
- ^GSPC,2025-03-18,5614.66015625
783
- ^GSPC,2025-03-19,5675.2900390625
784
- ^GSPC,2025-03-20,5662.89013671875
785
- ^GSPC,2025-03-21,5667.56005859375
786
- ^GSPC,2025-03-24,5767.56982421875
787
- ^GSPC,2025-03-25,5776.64990234375
788
- ^GSPC,2025-03-26,5712.2001953125
789
- ^GSPC,2025-03-27,5693.31005859375
790
- ^GSPC,2025-03-28,5580.93994140625
791
- ^GSPC,2025-03-31,5611.85009765625
792
- """
793
  temp = tempfile.NamedTemporaryFile(delete=False, suffix=".csv", mode='w', newline='')
794
  temp.write(sample_data)
795
  temp.close()
@@ -829,28 +271,45 @@ with gr.Blocks(title="Time Series Forecasting App", theme=theme) as app:
829
  value="D"
830
  )
831
 
 
832
  eval_strategy = gr.Radio(
833
  choices=["Fixed Window", "Cross Validation"],
834
  label="Evaluation Strategy",
835
  value="Cross Validation"
836
  )
837
 
838
- with gr.Row():
839
- horizon = gr.Slider(1, 100, value=10, step=1, label="Validation Horizon")
840
- future_horizon = gr.Slider(1, 100, value=10, step=1, label="Future Forecast Horizon")
 
 
 
 
 
 
 
 
841
 
842
- # Cross validation settings will be defined after the main UI elements
 
 
 
843
 
844
  with gr.Accordion("Model Configuration", open=True):
845
- gr.Markdown("### Basic Models")
846
  with gr.Row():
847
  use_historical_avg = gr.Checkbox(label="Historical Average", value=True)
848
  use_naive = gr.Checkbox(label="Naive", value=True)
849
 
 
 
 
 
 
 
850
  gr.Markdown("### Seasonal Models")
851
  with gr.Row():
852
  use_seasonal_naive = gr.Checkbox(label="Seasonal Naive", value=True)
853
- seasonality = gr.Number(label="Seasonality Period", value=5)
854
 
855
  gr.Markdown("### Window-based Models")
856
  with gr.Row():
@@ -861,7 +320,7 @@ with gr.Blocks(title="Time Series Forecasting App", theme=theme) as app:
861
  use_seasonal_window_avg = gr.Checkbox(label="Seasonal Window Average", value=True)
862
  seasonal_window_size = gr.Number(label="Seasonal Window Size", value=2)
863
 
864
- gr.Markdown("### Advanced Models")
865
  with gr.Row():
866
  use_autoets = gr.Checkbox(label="AutoETS (Exponential Smoothing)", value=True)
867
  use_autoarima = gr.Checkbox(label="AutoARIMA", value=True)
@@ -922,22 +381,18 @@ with gr.Blocks(title="Time Series Forecasting App", theme=theme) as app:
922
  with gr.TabItem("Export Results"):
923
  export_files = gr.Files(label="Download Results")
924
 
925
- # Create a special Row for cross-validation settings
926
- with gr.Row(visible=True) as cv_row:
927
- step_size = gr.Slider(1, 50, value=10, step=1, label="Step Size")
928
- num_windows = gr.Slider(1, 20, value=5, step=1, label="Number of Windows")
929
-
930
  with gr.Row(visible=True) as run_row:
931
  submit_btn = gr.Button("Run Validation and Forecast", variant="primary", size="lg")
932
 
933
- # Update visibility of step_size and num_windows based on eval_strategy
934
- def update_cv_visibility(strategy):
935
- return gr.update(visible=strategy == "Cross Validation")
 
936
 
937
  eval_strategy.change(
938
- fn=update_cv_visibility,
939
  inputs=[eval_strategy],
940
- outputs=[cv_row]
941
  )
942
 
943
  # Run forecast when button is clicked
 
230
  ^GSPC,2023-01-03,3824.139892578125
231
  ^GSPC,2023-01-04,3852.969970703125
232
  ^GSPC,2023-01-05,3808.10009765625
233
+ # rest of the sample data...
234
+ ^GSPC,2024-10-31,5705.4501953125"""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
235
  temp = tempfile.NamedTemporaryFile(delete=False, suffix=".csv", mode='w', newline='')
236
  temp.write(sample_data)
237
  temp.close()
 
271
  value="D"
272
  )
273
 
274
+ # Evaluation Strategy
275
  eval_strategy = gr.Radio(
276
  choices=["Fixed Window", "Cross Validation"],
277
  label="Evaluation Strategy",
278
  value="Cross Validation"
279
  )
280
 
281
+ # Fixed Window settings
282
+ with gr.Box(visible=True) as fixed_window_box:
283
+ gr.Markdown("### Fixed Window Settings")
284
+ horizon = gr.Slider(1, 100, value=10, step=1, label="Validation Horizon (steps ahead to predict)")
285
+
286
+ # Cross Validation settings
287
+ with gr.Box(visible=True) as cv_box:
288
+ gr.Markdown("### Cross Validation Settings")
289
+ with gr.Row():
290
+ step_size = gr.Slider(1, 50, value=10, step=1, label="Step Size (distance between windows)")
291
+ num_windows = gr.Slider(1, 20, value=5, step=1, label="Number of Windows")
292
 
293
+ # Future forecast settings (always visible)
294
+ with gr.Box():
295
+ gr.Markdown("### Future Forecast Settings")
296
+ future_horizon = gr.Slider(1, 100, value=10, step=1, label="Future Forecast Horizon (steps to predict)")
297
 
298
  with gr.Accordion("Model Configuration", open=True):
299
+ gr.Markdown("## Basic Models")
300
  with gr.Row():
301
  use_historical_avg = gr.Checkbox(label="Historical Average", value=True)
302
  use_naive = gr.Checkbox(label="Naive", value=True)
303
 
304
+ # Common seasonality parameter at the top level
305
+ with gr.Box():
306
+ gr.Markdown("### Seasonality Configuration")
307
+ gr.Markdown("This seasonality period affects Seasonal Naive, Seasonal Window Average, AutoETS, and AutoARIMA models")
308
+ seasonality = gr.Number(label="Seasonality Period", value=5)
309
+
310
  gr.Markdown("### Seasonal Models")
311
  with gr.Row():
312
  use_seasonal_naive = gr.Checkbox(label="Seasonal Naive", value=True)
 
313
 
314
  gr.Markdown("### Window-based Models")
315
  with gr.Row():
 
320
  use_seasonal_window_avg = gr.Checkbox(label="Seasonal Window Average", value=True)
321
  seasonal_window_size = gr.Number(label="Seasonal Window Size", value=2)
322
 
323
+ gr.Markdown("### Advanced Models (use seasonality from above)")
324
  with gr.Row():
325
  use_autoets = gr.Checkbox(label="AutoETS (Exponential Smoothing)", value=True)
326
  use_autoarima = gr.Checkbox(label="AutoARIMA", value=True)
 
381
  with gr.TabItem("Export Results"):
382
  export_files = gr.Files(label="Download Results")
383
 
 
 
 
 
 
384
  with gr.Row(visible=True) as run_row:
385
  submit_btn = gr.Button("Run Validation and Forecast", variant="primary", size="lg")
386
 
387
+ # Update visibility of the appropriate box based on evaluation strategy
388
+ def update_eval_boxes(strategy):
389
+ return (gr.update(visible=strategy == "Fixed Window"),
390
+ gr.update(visible=strategy == "Cross Validation"))
391
 
392
  eval_strategy.change(
393
+ fn=update_eval_boxes,
394
  inputs=[eval_strategy],
395
+ outputs=[fixed_window_box, cv_box]
396
  )
397
 
398
  # Run forecast when button is clicked