-
Notifications
You must be signed in to change notification settings - Fork 1
/
README.html
1024 lines (996 loc) · 197 KB
/
README.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="data:text/css,%0A%40font%2Dface%20%7B%0Afont%2Dfamily%3A%20octicons%2Dlink%3B%0Asrc%3A%20url%28data%3Afont%2Fwoff%3Bcharset%3Dutf%2D8%3Bbase64%2Cd09GRgABAAAAAAZwABAAAAAACFQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEU0lHAAAGaAAAAAgAAAAIAAAAAUdTVUIAAAZcAAAACgAAAAoAAQAAT1MvMgAAAyQAAABJAAAAYFYEU3RjbWFwAAADcAAAAEUAAACAAJThvmN2dCAAAATkAAAABAAAAAQAAAAAZnBnbQAAA7gAAACyAAABCUM%2B8IhnYXNwAAAGTAAAABAAAAAQABoAI2dseWYAAAFsAAABPAAAAZwcEq9taGVhZAAAAsgAAAA0AAAANgh4a91oaGVhAAADCAAAABoAAAAkCA8DRGhtdHgAAAL8AAAADAAAAAwGAACfbG9jYQAAAsAAAAAIAAAACABiATBtYXhwAAACqAAAABgAAAAgAA8ASm5hbWUAAAToAAABQgAAAlXu73sOcG9zdAAABiwAAAAeAAAAME3QpOBwcmVwAAAEbAAAAHYAAAB%2FaFGpk3jaTY6xa8JAGMW%2FO62BDi0tJLYQincXEypYIiGJjSgHniQ6umTsUEyLm5BV6NDBP8Tpts6F0v%2Bk%2F0an2i%2BitHDw3v2%2B9%2BDBKTzsJNnWJNTgHEy4BgG3EMI9DCEDOGEXzDADU5hBKMIgNPZqoD3SilVaXZCER3%2FI7AtxEJLtzzuZfI%2BVVkprxTlXShWKb3TBecG11rwoNlmmn1P2WYcJczl32etSpKnziC7lQyWe1smVPy%2FLt7Kc%2B0vWY%2FgAgIIEqAN9we0pwKXreiMasxvabDQMM4riO%2BqxM2ogwDGOZTXxwxDiycQIcoYFBLj5K3EIaSctAq2kTYiw%2Bymhce7vwM9jSqO8JyVd5RH9gyTt2%2BJ%2FyUmYlIR0s04n6%2B7Vm1ozezUeLEaUjhaDSuXHwVRgvLJn1tQ7xiuVv%2FocTRF42mNgZGBgYGbwZOBiAAFGJBIMAAizAFoAAABiAGIAznjaY2BkYGAA4in8zwXi%2BW2%2BMjCzMIDApSwvXzC97Z4Ig8N%2FBxYGZgcgl52BCSQKAA3jCV8CAABfAAAAAAQAAEB42mNgZGBg4f3vACQZQABIMjKgAmYAKEgBXgAAeNpjYGY6wTiBgZWBg2kmUxoDA4MPhGZMYzBi1AHygVLYQUCaawqDA4PChxhmh%2F8ODDEsvAwHgMKMIDnGL0x7gJQCAwMAJd4MFwAAAHjaY2BgYGaA4DAGRgYQkAHyGMF8NgYrIM3JIAGVYYDT%2BAEjAwuDFpBmA9KMDEwMCh9i%2Fv8H8sH0%2F4dQc1iAmAkALaUKLgAAAHjaTY9LDsIgEIbtgqHUPpDi3gPoBVyRTmTddOmqTXThEXqrob2gQ1FjwpDvfwCBdmdXC5AVKFu3e5MfNFJ29KTQT48Ob9%2FlqYwOGZxeUelN2U2R6%2BcArgtCJpauW7UQBqnFkUsjAY%2FkOU1cP%2BDAgvxwn1chZDwUbd6CFimGXwzwF6tPbFIcjEl%2BvvmM%2FbyA48e6tWrKArm4ZJlCbdsrxksL1AwWn%2FyBSJKpYbq8AXaaTb8AAHja28jAwOC00ZrBeQNDQOWO%2F%2FsdBBgYGRiYWYAEELEwMTE4uzo5Zzo5b2BxdnFOcALxNjA6b2ByTswC8jYwg0VlNuoCTWAMqNzMzsoK1rEhNqByEyerg5PMJlYuVueETKcd%2F89uBpnpvIEVomeHLoMsAAe1Id4AAAAAAAB42oWQT07CQBTGv0JBhagk7HQzKxca2sJCE1hDt4QF%2B9JOS0nbaaYDCQfwCJ7Au3AHj%2BLO13FMmm6cl7785vven0kBjHCBhfpYuNa5Ph1c0e2Xu3jEvWG7UdPDLZ4N92nOm%2BEBXuAbHmIMSRMs%2B4aUEd4Nd3CHD8NdvOLTsA2GL8M9PODbcL%2BhD7C1xoaHeLJSEao0FEW14ckxC%2BTU8TxvsY6X0eLPmRhry2WVioLpkrbp84LLQPGI7c6sOiUzpWIWS5GzlSgUzzLBSikOPFTOXqly7rqx0Z1Q5BAIoZBSFihQYQOOBEdkCOgXTOHA07HAGjGWiIjaPZNW13%2F%2Blm6S9FT7rLHFJ6fQbkATOG1j2OFMucKJJsxIVfQORl%2B9Jyda6Sl1dUYhSCm1dyClfoeDve4qMYdLEbfqHf3O%2FAdDumsjAAB42mNgYoAAZQYjBmyAGYQZmdhL8zLdDEydARfoAqIAAAABAAMABwAKABMAB%2F%2F%2FAA8AAQAAAAAAAAAAAAAAAAABAAAAAA%3D%3D%29%20format%28%27woff%27%29%3B%0A%7D%0Abody%20%7B%0A%2Dwebkit%2Dtext%2Dsize%2Dadjust%3A%20100%25%3B%0Atext%2Dsize%2Dadjust%3A%20100%25%3B%0Acolor%3A%20%23333%3B%0Afont%2Dfamily%3A%20%22Helvetica%20Neue%22%2C%20Helvetica%2C%20%22Segoe%20UI%22%2C%20Arial%2C%20freesans%2C%20sans%2Dserif%2C%20%22Apple%20Color%20Emoji%22%2C%20%22Segoe%20UI%20Emoji%22%2C%20%22Segoe%20UI%20Symbol%22%3B%0Afont%2Dsize%3A%2016px%3B%0Aline%2Dheight%3A%201%2E6%3B%0Aword%2Dwrap%3A%20break%2Dword%3B%0A%7D%0Aa%20%7B%0Abackground%2Dcolor%3A%20transparent%3B%0A%7D%0Aa%3Aactive%2C%0Aa%3Ahover%20%7B%0Aoutline%3A%200%3B%0A%7D%0Astrong%20%7B%0Afont%2Dweight%3A%20bold%3B%0A%7D%0Ah1%20%7B%0Afont%2Dsize%3A%202em%3B%0Amargin%3A%200%2E67em%200%3B%0A%7D%0Aimg%20%7B%0Aborder%3A%200%3B%0A%7D%0Ahr%20%7B%0Abox%2Dsizing%3A%20content%2Dbox%3B%0Aheight%3A%200%3B%0A%7D%0Apre%20%7B%0Aoverflow%3A%20auto%3B%0A%7D%0Acode%2C%0Akbd%2C%0Apre%20%7B%0Afont%2Dfamily%3A%20monospace%2C%20monospace%3B%0Afont%2Dsize%3A%201em%3B%0A%7D%0Ainput%20%7B%0Acolor%3A%20inherit%3B%0Afont%3A%20inherit%3B%0Amargin%3A%200%3B%0A%7D%0Ahtml%20input%5Bdisabled%5D%20%7B%0Acursor%3A%20default%3B%0A%7D%0Ainput%20%7B%0Aline%2Dheight%3A%20normal%3B%0A%7D%0Ainput%5Btype%3D%22checkbox%22%5D%20%7B%0Abox%2Dsizing%3A%20border%2Dbox%3B%0Apadding%3A%200%3B%0A%7D%0Atable%20%7B%0Aborder%2Dcollapse%3A%20collapse%3B%0Aborder%2Dspacing%3A%200%3B%0A%7D%0Atd%2C%0Ath%20%7B%0Apadding%3A%200%3B%0A%7D%0A%2A%20%7B%0Abox%2Dsizing%3A%20border%2Dbox%3B%0A%7D%0Ainput%20%7B%0Afont%3A%2013px%20%2F%201%2E4%20Helvetica%2C%20arial%2C%20nimbussansl%2C%20liberationsans%2C%20freesans%2C%20clean%2C%20sans%2Dserif%2C%20%22Apple%20Color%20Emoji%22%2C%20%22Segoe%20UI%20Emoji%22%2C%20%22Segoe%20UI%20Symbol%22%3B%0A%7D%0Aa%20%7B%0Acolor%3A%20%234078c0%3B%0Atext%2Ddecoration%3A%20none%3B%0A%7D%0Aa%3Ahover%2C%0Aa%3Aactive%20%7B%0Atext%2Ddecoration%3A%20underline%3B%0A%7D%0Ahr%20%7B%0Aheight%3A%200%3B%0Amargin%3A%2015px%200%3B%0Aoverflow%3A%20hidden%3B%0Abackground%3A%20transparent%3B%0Aborder%3A%200%3B%0Aborder%2Dbottom%3A%201px%20solid%20%23ddd%3B%0A%7D%0Ahr%3Abefore%20%7B%0Adisplay%3A%20table%3B%0Acontent%3A%20%22%22%3B%0A%7D%0Ahr%3Aafter%20%7B%0Adisplay%3A%20table%3B%0Aclear%3A%20both%3B%0Acontent%3A%20%22%22%3B%0A%7D%0Ah1%2C%0Ah2%2C%0Ah3%2C%0Ah4%2C%0Ah5%2C%0Ah6%20%7B%0Amargin%2Dtop%3A%2015px%3B%0Amargin%2Dbottom%3A%2015px%3B%0Aline%2Dheight%3A%201%2E1%3B%0A%7D%0Ah1%20%7B%0Afont%2Dsize%3A%2030px%3B%0A%7D%0Ah2%20%7B%0Afont%2Dsize%3A%2021px%3B%0A%7D%0Ah3%20%7B%0Afont%2Dsize%3A%2016px%3B%0A%7D%0Ah4%20%7B%0Afont%2Dsize%3A%2014px%3B%0A%7D%0Ah5%20%7B%0Afont%2Dsize%3A%2012px%3B%0A%7D%0Ah6%20%7B%0Afont%2Dsize%3A%2011px%3B%0A%7D%0Ablockquote%20%7B%0Amargin%3A%200%3B%0A%7D%0Aul%2C%0Aol%20%7B%0Apadding%3A%200%3B%0Amargin%2Dtop%3A%200%3B%0Amargin%2Dbottom%3A%200%3B%0A%7D%0Aol%20ol%2C%0Aul%20ol%20%7B%0Alist%2Dstyle%2Dtype%3A%20lower%2Droman%3B%0A%7D%0Aul%20ul%20ol%2C%0Aul%20ol%20ol%2C%0Aol%20ul%20ol%2C%0Aol%20ol%20ol%20%7B%0Alist%2Dstyle%2Dtype%3A%20lower%2Dalpha%3B%0A%7D%0Add%20%7B%0Amargin%2Dleft%3A%200%3B%0A%7D%0Acode%20%7B%0Afont%2Dfamily%3A%20Consolas%2C%20%22Liberation%20Mono%22%2C%20Menlo%2C%20Courier%2C%20monospace%3B%0Afont%2Dsize%3A%2012px%3B%0A%7D%0Apre%20%7B%0Amargin%2Dtop%3A%200%3B%0Amargin%2Dbottom%3A%200%3B%0Afont%3A%2012px%20Consolas%2C%20%22Liberation%20Mono%22%2C%20Menlo%2C%20Courier%2C%20monospace%3B%0A%7D%0A%2Eselect%3A%3A%2Dms%2Dexpand%20%7B%0Aopacity%3A%200%3B%0A%7D%0A%2Eocticon%20%7B%0Afont%3A%20normal%20normal%20normal%2016px%2F1%20octicons%2Dlink%3B%0Adisplay%3A%20inline%2Dblock%3B%0Atext%2Ddecoration%3A%20none%3B%0Atext%2Drendering%3A%20auto%3B%0A%2Dwebkit%2Dfont%2Dsmoothing%3A%20antialiased%3B%0A%2Dmoz%2Dosx%2Dfont%2Dsmoothing%3A%20grayscale%3B%0A%2Dwebkit%2Duser%2Dselect%3A%20none%3B%0A%2Dmoz%2Duser%2Dselect%3A%20none%3B%0A%2Dms%2Duser%2Dselect%3A%20none%3B%0Auser%2Dselect%3A%20none%3B%0A%7D%0A%2Eocticon%2Dlink%3Abefore%20%7B%0Acontent%3A%20%27%5Cf05c%27%3B%0A%7D%0A%2Emarkdown%2Dbody%3Abefore%20%7B%0Adisplay%3A%20table%3B%0Acontent%3A%20%22%22%3B%0A%7D%0A%2Emarkdown%2Dbody%3Aafter%20%7B%0Adisplay%3A%20table%3B%0Aclear%3A%20both%3B%0Acontent%3A%20%22%22%3B%0A%7D%0A%2Emarkdown%2Dbody%3E%2A%3Afirst%2Dchild%20%7B%0Amargin%2Dtop%3A%200%20%21important%3B%0A%7D%0A%2Emarkdown%2Dbody%3E%2A%3Alast%2Dchild%20%7B%0Amargin%2Dbottom%3A%200%20%21important%3B%0A%7D%0Aa%3Anot%28%5Bhref%5D%29%20%7B%0Acolor%3A%20inherit%3B%0Atext%2Ddecoration%3A%20none%3B%0A%7D%0A%2Eanchor%20%7B%0Adisplay%3A%20inline%2Dblock%3B%0Apadding%2Dright%3A%202px%3B%0Amargin%2Dleft%3A%20%2D18px%3B%0A%7D%0A%2Eanchor%3Afocus%20%7B%0Aoutline%3A%20none%3B%0A%7D%0Ah1%2C%0Ah2%2C%0Ah3%2C%0Ah4%2C%0Ah5%2C%0Ah6%20%7B%0Amargin%2Dtop%3A%201em%3B%0Amargin%2Dbottom%3A%2016px%3B%0Afont%2Dweight%3A%20bold%3B%0Aline%2Dheight%3A%201%2E4%3B%0A%7D%0Ah1%20%2Eocticon%2Dlink%2C%0Ah2%20%2Eocticon%2Dlink%2C%0Ah3%20%2Eocticon%2Dlink%2C%0Ah4%20%2Eocticon%2Dlink%2C%0Ah5%20%2Eocticon%2Dlink%2C%0Ah6%20%2Eocticon%2Dlink%20%7B%0Acolor%3A%20%23000%3B%0Avertical%2Dalign%3A%20middle%3B%0Avisibility%3A%20hidden%3B%0A%7D%0Ah1%3Ahover%20%2Eanchor%2C%0Ah2%3Ahover%20%2Eanchor%2C%0Ah3%3Ahover%20%2Eanchor%2C%0Ah4%3Ahover%20%2Eanchor%2C%0Ah5%3Ahover%20%2Eanchor%2C%0Ah6%3Ahover%20%2Eanchor%20%7B%0Atext%2Ddecoration%3A%20none%3B%0A%7D%0Ah1%3Ahover%20%2Eanchor%20%2Eocticon%2Dlink%2C%0Ah2%3Ahover%20%2Eanchor%20%2Eocticon%2Dlink%2C%0Ah3%3Ahover%20%2Eanchor%20%2Eocticon%2Dlink%2C%0Ah4%3Ahover%20%2Eanchor%20%2Eocticon%2Dlink%2C%0Ah5%3Ahover%20%2Eanchor%20%2Eocticon%2Dlink%2C%0Ah6%3Ahover%20%2Eanchor%20%2Eocticon%2Dlink%20%7B%0Avisibility%3A%20visible%3B%0A%7D%0Ah1%20%7B%0Apadding%2Dbottom%3A%200%2E3em%3B%0Afont%2Dsize%3A%202%2E25em%3B%0Aline%2Dheight%3A%201%2E2%3B%0Aborder%2Dbottom%3A%201px%20solid%20%23eee%3B%0A%7D%0Ah1%20%2Eanchor%20%7B%0Aline%2Dheight%3A%201%3B%0A%7D%0Ah2%20%7B%0Apadding%2Dbottom%3A%200%2E3em%3B%0Afont%2Dsize%3A%201%2E75em%3B%0Aline%2Dheight%3A%201%2E225%3B%0Aborder%2Dbottom%3A%201px%20solid%20%23eee%3B%0A%7D%0Ah2%20%2Eanchor%20%7B%0Aline%2Dheight%3A%201%3B%0A%7D%0Ah3%20%7B%0Afont%2Dsize%3A%201%2E5em%3B%0Aline%2Dheight%3A%201%2E43%3B%0A%7D%0Ah3%20%2Eanchor%20%7B%0Aline%2Dheight%3A%201%2E2%3B%0A%7D%0Ah4%20%7B%0Afont%2Dsize%3A%201%2E25em%3B%0A%7D%0Ah4%20%2Eanchor%20%7B%0Aline%2Dheight%3A%201%2E2%3B%0A%7D%0Ah5%20%7B%0Afont%2Dsize%3A%201em%3B%0A%7D%0Ah5%20%2Eanchor%20%7B%0Aline%2Dheight%3A%201%2E1%3B%0A%7D%0Ah6%20%7B%0Afont%2Dsize%3A%201em%3B%0Acolor%3A%20%23777%3B%0A%7D%0Ah6%20%2Eanchor%20%7B%0Aline%2Dheight%3A%201%2E1%3B%0A%7D%0Ap%2C%0Ablockquote%2C%0Aul%2C%0Aol%2C%0Adl%2C%0Atable%2C%0Apre%20%7B%0Amargin%2Dtop%3A%200%3B%0Amargin%2Dbottom%3A%2016px%3B%0A%7D%0Ahr%20%7B%0Aheight%3A%204px%3B%0Apadding%3A%200%3B%0Amargin%3A%2016px%200%3B%0Abackground%2Dcolor%3A%20%23e7e7e7%3B%0Aborder%3A%200%20none%3B%0A%7D%0Aul%2C%0Aol%20%7B%0Apadding%2Dleft%3A%202em%3B%0A%7D%0Aul%20ul%2C%0Aul%20ol%2C%0Aol%20ol%2C%0Aol%20ul%20%7B%0Amargin%2Dtop%3A%200%3B%0Amargin%2Dbottom%3A%200%3B%0A%7D%0Ali%3Ep%20%7B%0Amargin%2Dtop%3A%2016px%3B%0A%7D%0Adl%20%7B%0Apadding%3A%200%3B%0A%7D%0Adl%20dt%20%7B%0Apadding%3A%200%3B%0Amargin%2Dtop%3A%2016px%3B%0Afont%2Dsize%3A%201em%3B%0Afont%2Dstyle%3A%20italic%3B%0Afont%2Dweight%3A%20bold%3B%0A%7D%0Adl%20dd%20%7B%0Apadding%3A%200%2016px%3B%0Amargin%2Dbottom%3A%2016px%3B%0A%7D%0Ablockquote%20%7B%0Apadding%3A%200%2015px%3B%0Acolor%3A%20%23777%3B%0Aborder%2Dleft%3A%204px%20solid%20%23ddd%3B%0A%7D%0Ablockquote%3E%3Afirst%2Dchild%20%7B%0Amargin%2Dtop%3A%200%3B%0A%7D%0Ablockquote%3E%3Alast%2Dchild%20%7B%0Amargin%2Dbottom%3A%200%3B%0A%7D%0Atable%20%7B%0Adisplay%3A%20block%3B%0Awidth%3A%20100%25%3B%0Aoverflow%3A%20auto%3B%0Aword%2Dbreak%3A%20normal%3B%0Aword%2Dbreak%3A%20keep%2Dall%3B%0A%7D%0Atable%20th%20%7B%0Afont%2Dweight%3A%20bold%3B%0A%7D%0Atable%20th%2C%0Atable%20td%20%7B%0Apadding%3A%206px%2013px%3B%0Aborder%3A%201px%20solid%20%23ddd%3B%0A%7D%0Atable%20tr%20%7B%0Abackground%2Dcolor%3A%20%23fff%3B%0Aborder%2Dtop%3A%201px%20solid%20%23ccc%3B%0A%7D%0Atable%20tr%3Anth%2Dchild%282n%29%20%7B%0Abackground%2Dcolor%3A%20%23f8f8f8%3B%0A%7D%0Aimg%20%7B%0Amax%2Dwidth%3A%20100%25%3B%0Abox%2Dsizing%3A%20content%2Dbox%3B%0Abackground%2Dcolor%3A%20%23fff%3B%0A%7D%0Acode%20%7B%0Apadding%3A%200%3B%0Apadding%2Dtop%3A%200%2E2em%3B%0Apadding%2Dbottom%3A%200%2E2em%3B%0Amargin%3A%200%3B%0Afont%2Dsize%3A%2085%25%3B%0Abackground%2Dcolor%3A%20rgba%280%2C0%2C0%2C0%2E04%29%3B%0Aborder%2Dradius%3A%203px%3B%0A%7D%0Acode%3Abefore%2C%0Acode%3Aafter%20%7B%0Aletter%2Dspacing%3A%20%2D0%2E2em%3B%0Acontent%3A%20%22%5C00a0%22%3B%0A%7D%0Apre%3Ecode%20%7B%0Apadding%3A%200%3B%0Amargin%3A%200%3B%0Afont%2Dsize%3A%20100%25%3B%0Aword%2Dbreak%3A%20normal%3B%0Awhite%2Dspace%3A%20pre%3B%0Abackground%3A%20transparent%3B%0Aborder%3A%200%3B%0A%7D%0A%2Ehighlight%20%7B%0Amargin%2Dbottom%3A%2016px%3B%0A%7D%0A%2Ehighlight%20pre%2C%0Apre%20%7B%0Apadding%3A%2016px%3B%0Aoverflow%3A%20auto%3B%0Afont%2Dsize%3A%2085%25%3B%0Aline%2Dheight%3A%201%2E45%3B%0Abackground%2Dcolor%3A%20%23f7f7f7%3B%0Aborder%2Dradius%3A%203px%3B%0A%7D%0A%2Ehighlight%20pre%20%7B%0Amargin%2Dbottom%3A%200%3B%0Aword%2Dbreak%3A%20normal%3B%0A%7D%0Apre%20%7B%0Aword%2Dwrap%3A%20normal%3B%0A%7D%0Apre%20code%20%7B%0Adisplay%3A%20inline%3B%0Amax%2Dwidth%3A%20initial%3B%0Apadding%3A%200%3B%0Amargin%3A%200%3B%0Aoverflow%3A%20initial%3B%0Aline%2Dheight%3A%20inherit%3B%0Aword%2Dwrap%3A%20normal%3B%0Abackground%2Dcolor%3A%20transparent%3B%0Aborder%3A%200%3B%0A%7D%0Apre%20code%3Abefore%2C%0Apre%20code%3Aafter%20%7B%0Acontent%3A%20normal%3B%0A%7D%0Akbd%20%7B%0Adisplay%3A%20inline%2Dblock%3B%0Apadding%3A%203px%205px%3B%0Afont%2Dsize%3A%2011px%3B%0Aline%2Dheight%3A%2010px%3B%0Acolor%3A%20%23555%3B%0Avertical%2Dalign%3A%20middle%3B%0Abackground%2Dcolor%3A%20%23fcfcfc%3B%0Aborder%3A%20solid%201px%20%23ccc%3B%0Aborder%2Dbottom%2Dcolor%3A%20%23bbb%3B%0Aborder%2Dradius%3A%203px%3B%0Abox%2Dshadow%3A%20inset%200%20%2D1px%200%20%23bbb%3B%0A%7D%0A%2Epl%2Dc%20%7B%0Acolor%3A%20%23969896%3B%0A%7D%0A%2Epl%2Dc1%2C%0A%2Epl%2Ds%20%2Epl%2Dv%20%7B%0Acolor%3A%20%230086b3%3B%0A%7D%0A%2Epl%2De%2C%0A%2Epl%2Den%20%7B%0Acolor%3A%20%23795da3%3B%0A%7D%0A%2Epl%2Ds%20%2Epl%2Ds1%2C%0A%2Epl%2Dsmi%20%7B%0Acolor%3A%20%23333%3B%0A%7D%0A%2Epl%2Dent%20%7B%0Acolor%3A%20%2363a35c%3B%0A%7D%0A%2Epl%2Dk%20%7B%0Acolor%3A%20%23a71d5d%3B%0A%7D%0A%2Epl%2Dpds%2C%0A%2Epl%2Ds%2C%0A%2Epl%2Ds%20%2Epl%2Dpse%20%2Epl%2Ds1%2C%0A%2Epl%2Dsr%2C%0A%2Epl%2Dsr%20%2Epl%2Dcce%2C%0A%2Epl%2Dsr%20%2Epl%2Dsra%2C%0A%2Epl%2Dsr%20%2Epl%2Dsre%20%7B%0Acolor%3A%20%23183691%3B%0A%7D%0A%2Epl%2Dv%20%7B%0Acolor%3A%20%23ed6a43%3B%0A%7D%0A%2Epl%2Did%20%7B%0Acolor%3A%20%23b52a1d%3B%0A%7D%0A%2Epl%2Dii%20%7B%0Abackground%2Dcolor%3A%20%23b52a1d%3B%0Acolor%3A%20%23f8f8f8%3B%0A%7D%0A%2Epl%2Dsr%20%2Epl%2Dcce%20%7B%0Acolor%3A%20%2363a35c%3B%0Afont%2Dweight%3A%20bold%3B%0A%7D%0A%2Epl%2Dml%20%7B%0Acolor%3A%20%23693a17%3B%0A%7D%0A%2Epl%2Dmh%2C%0A%2Epl%2Dmh%20%2Epl%2Den%2C%0A%2Epl%2Dms%20%7B%0Acolor%3A%20%231d3e81%3B%0Afont%2Dweight%3A%20bold%3B%0A%7D%0A%2Epl%2Dmq%20%7B%0Acolor%3A%20%23008080%3B%0A%7D%0A%2Epl%2Dmi%20%7B%0Acolor%3A%20%23333%3B%0Afont%2Dstyle%3A%20italic%3B%0A%7D%0A%2Epl%2Dmb%20%7B%0Acolor%3A%20%23333%3B%0Afont%2Dweight%3A%20bold%3B%0A%7D%0A%2Epl%2Dmd%20%7B%0Abackground%2Dcolor%3A%20%23ffecec%3B%0Acolor%3A%20%23bd2c00%3B%0A%7D%0A%2Epl%2Dmi1%20%7B%0Abackground%2Dcolor%3A%20%23eaffea%3B%0Acolor%3A%20%2355a532%3B%0A%7D%0A%2Epl%2Dmdr%20%7B%0Acolor%3A%20%23795da3%3B%0Afont%2Dweight%3A%20bold%3B%0A%7D%0A%2Epl%2Dmo%20%7B%0Acolor%3A%20%231d3e81%3B%0A%7D%0Akbd%20%7B%0Adisplay%3A%20inline%2Dblock%3B%0Apadding%3A%203px%205px%3B%0Afont%3A%2011px%20Consolas%2C%20%22Liberation%20Mono%22%2C%20Menlo%2C%20Courier%2C%20monospace%3B%0Aline%2Dheight%3A%2010px%3B%0Acolor%3A%20%23555%3B%0Avertical%2Dalign%3A%20middle%3B%0Abackground%2Dcolor%3A%20%23fcfcfc%3B%0Aborder%3A%20solid%201px%20%23ccc%3B%0Aborder%2Dbottom%2Dcolor%3A%20%23bbb%3B%0Aborder%2Dradius%3A%203px%3B%0Abox%2Dshadow%3A%20inset%200%20%2D1px%200%20%23bbb%3B%0A%7D%0A%2Etask%2Dlist%2Ditem%20%7B%0Alist%2Dstyle%2Dtype%3A%20none%3B%0A%7D%0A%2Etask%2Dlist%2Ditem%2B%2Etask%2Dlist%2Ditem%20%7B%0Amargin%2Dtop%3A%203px%3B%0A%7D%0A%2Etask%2Dlist%2Ditem%20input%20%7B%0Amargin%3A%200%200%2E35em%200%2E25em%20%2D1%2E6em%3B%0Avertical%2Dalign%3A%20middle%3B%0A%7D%0A%3Achecked%2B%2Eradio%2Dlabel%20%7B%0Az%2Dindex%3A%201%3B%0Aposition%3A%20relative%3B%0Aborder%2Dcolor%3A%20%234078c0%3B%0A%7D%0A%2EsourceLine%20%7B%0Adisplay%3A%20inline%2Dblock%3B%0A%7D%0Acode%20%2Ekw%20%7B%20color%3A%20%23000000%3B%20%7D%0Acode%20%2Edt%20%7B%20color%3A%20%23ed6a43%3B%20%7D%0Acode%20%2Edv%20%7B%20color%3A%20%23009999%3B%20%7D%0Acode%20%2Ebn%20%7B%20color%3A%20%23009999%3B%20%7D%0Acode%20%2Efl%20%7B%20color%3A%20%23009999%3B%20%7D%0Acode%20%2Ech%20%7B%20color%3A%20%23009999%3B%20%7D%0Acode%20%2Est%20%7B%20color%3A%20%23183691%3B%20%7D%0Acode%20%2Eco%20%7B%20color%3A%20%23969896%3B%20%7D%0Acode%20%2Eot%20%7B%20color%3A%20%230086b3%3B%20%7D%0Acode%20%2Eal%20%7B%20color%3A%20%23a61717%3B%20%7D%0Acode%20%2Efu%20%7B%20color%3A%20%2363a35c%3B%20%7D%0Acode%20%2Eer%20%7B%20color%3A%20%23a61717%3B%20background%2Dcolor%3A%20%23e3d2d2%3B%20%7D%0Acode%20%2Ewa%20%7B%20color%3A%20%23000000%3B%20%7D%0Acode%20%2Ecn%20%7B%20color%3A%20%23008080%3B%20%7D%0Acode%20%2Esc%20%7B%20color%3A%20%23008080%3B%20%7D%0Acode%20%2Evs%20%7B%20color%3A%20%23183691%3B%20%7D%0Acode%20%2Ess%20%7B%20color%3A%20%23183691%3B%20%7D%0Acode%20%2Eim%20%7B%20color%3A%20%23000000%3B%20%7D%0Acode%20%2Eva%20%7Bcolor%3A%20%23008080%3B%20%7D%0Acode%20%2Ecf%20%7B%20color%3A%20%23000000%3B%20%7D%0Acode%20%2Eop%20%7B%20color%3A%20%23000000%3B%20%7D%0Acode%20%2Ebu%20%7B%20color%3A%20%23000000%3B%20%7D%0Acode%20%2Eex%20%7B%20color%3A%20%23000000%3B%20%7D%0Acode%20%2Epp%20%7B%20color%3A%20%23999999%3B%20%7D%0Acode%20%2Eat%20%7B%20color%3A%20%23008080%3B%20%7D%0Acode%20%2Edo%20%7B%20color%3A%20%23969896%3B%20%7D%0Acode%20%2Ean%20%7B%20color%3A%20%23008080%3B%20%7D%0Acode%20%2Ecv%20%7B%20color%3A%20%23008080%3B%20%7D%0Acode%20%2Ein%20%7B%20color%3A%20%23008080%3B%20%7D%0A">
<style>
body {
box-sizing: border-box;
min-width: 200px;
max-width: 980px;
margin: 0 auto;
padding: 45px;
padding-top: 0px;
}
</style>
</head>
<body>
<h1 id="st558--project-2">ST558- Project 2</h1>
<p>Rohan Prabhune, Naman Goel</p>
<ul>
<li><a href="#interacting-with-apis-financial-market-data">Interacting with APIs: Financial Market Data</a>
<ul>
<li><a href="#requirements">Requirements</a></li>
<li><a href="#api-interaction-functions">API Interaction Functions</a>
<ul>
<li><a href="#aggregates-bars-endpoint">Aggregates (Bars) Endpoint</a>
<ul>
<li><a href="#get_stocks_agg"><code>get_stocks_agg</code></a></li>
</ul></li>
<li><a href="#tickers-endpoint">Tickers Endpoint</a>
<ul>
<li><a href="#get_ticker"><code>get_ticker</code></a></li>
<li><a href="#get_ticker_info"><code>get_ticker_info</code></a></li>
</ul></li>
<li><a href="#grouped-daily-bars-endpoint">Grouped Daily (Bars) Endpoint</a>
<ul>
<li><a href="#get_grouped_daily"><code>get_grouped_daily</code></a></li>
</ul></li>
<li><a href="#ticker-types-endpoint">Ticker Types Endpoint</a>
<ul>
<li><a href="#get_ticker_type_details"><code>get_ticker_type_details</code></a></li>
</ul></li>
<li><a href="#exchanges-endpoint">Exchanges Endpoint</a>
<ul>
<li><a href="#get_exchanges_details"><code>get_exchanges_details</code></a></li>
</ul></li>
</ul></li>
</ul></li>
<li><a href="#exploratory-data-analysis-eda">Exploratory Data Analysis (EDA)</a>
<ul>
<li><a href="#combining-data-from-api-calls">Combining data from API Calls</a></li>
<li><a href="#creation-of-new-variables">Creation of new variables</a>
<ul>
<li><a href="#plot-for-new-variable">Plot for new variable</a></li>
</ul></li>
<li><a href="#contingency-tables">Contingency tables</a>
<ul>
<li><a href="#one-way">One-way</a></li>
<li><a href="#two-way">Two-way</a></li>
</ul></li>
<li><a href="#numerical-summaries">Numerical summaries</a></li>
<li><a href="#box-plots">Box plots</a></li>
<li><a href="#histogram">Histogram</a></li>
<li><a href="#bar-plot">Bar plot</a></li>
<li><a href="#scatter-plot">Scatter plot</a></li>
</ul></li>
<li><a href="#wrap--up">Wrap- Up</a></li>
</ul>
<h1 id="interacting-with-apis-financial-market-data">Interacting with APIs: Financial Market Data</h1>
<p>This vignette shows how to work with API. This will demonstrate how to fetch data from multiple API endpoints and read it in a tibble(data frame). This is followed by some basic exploratory data analysis (EDA) to produce some plots to derive insights from the data fetched.<br />
The API that we have chosen for this project is <a href="https://polygon.io/docs/stocks">Financial Market Data</a>.The Polygon.io Stocks API provides REST endpoints that let you query the latest market data from all US stock exchanges.</p>
<h2 id="requirements">Requirements</h2>
<p>We used the following packages in the creation of the vignette:</p>
<ul>
<li><code>httr</code>: This is used to access the REST API endpoint.</li>
<li><code>jsonlite</code>: This is used to parse the fetched data into a data frame.</li>
<li><code>tidyverse</code>: This provides two important packages <code>dplyr</code> and <code>ggplot</code> which are used for data manipulation and plotting respectively.</li>
<li><code>kableExtra</code>: This provides better printing properties for contingency tables in markdown.</li>
</ul>
<p>To get started, install(if these are not installed already) and load the following packages:</p>
<div class="sourceCode" id="cb1"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">library</span>(httr)</span>
<span id="cb1-2"><a href="#cb1-2" aria-hidden="true" tabindex="-1"></a><span class="fu">library</span>(jsonlite)</span>
<span id="cb1-3"><a href="#cb1-3" aria-hidden="true" tabindex="-1"></a><span class="fu">library</span>(tidyverse)</span>
<span id="cb1-4"><a href="#cb1-4" aria-hidden="true" tabindex="-1"></a><span class="fu">library</span>(kableExtra)</span></code></pre></div>
<!--*************************************************************************-->
<h2 id="api-interaction-functions">API Interaction Functions</h2>
<p>This section describes the functions created by us to interact with the API endpoints to fetch data as well as some metadata required for making the plots more descriptive.</p>
<h3 id="aggregates-bars-endpoint"><a href="https://polygon.io/docs/stocks/get_v2_aggs_ticker__stocksticker__range__multiplier___timespan___from___to">Aggregates (Bars)</a> Endpoint</h3>
<p>Get financial data for a stock within a given time frame</p>
<h4 id="get_stocks_agg"><code>get_stocks_agg</code></h4>
<p>This function has four modifications from the user. The user can provide the following inputs to the functions:</p>
<ul>
<li><strong>ticker</strong> and <strong>company_name</strong>: The ticker symbol and registered name of the company. If the user does not have this information, this can be fetched using <code>get_ticker</code> function described ahead.</li>
<li><strong>start_date</strong>: The start of the time window (A date with the format YYYY-MM-DD).</li>
<li><strong>end_date</strong>: The end of the time window (A date with the format YYYY-MM-DD).</li>
<li><strong>limit</strong>: Limits the number of entries queried to create the aggregate results.</li>
</ul>
<p>This function returns a data frame with the close price, open price, highest price, lowest price etc for the stock over the given date range.</p>
<div class="sourceCode" id="cb2"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a>get_stocks_agg <span class="ot"><-</span> <span class="cf">function</span>(ticker,company_name,<span class="at">start_date=</span><span class="st">"2022-01-01"</span>,</span>
<span id="cb2-2"><a href="#cb2-2" aria-hidden="true" tabindex="-1"></a> <span class="at">end_date=</span><span class="st">"2022-08-31"</span>,<span class="at">limit=</span><span class="dv">50</span>){</span>
<span id="cb2-3"><a href="#cb2-3" aria-hidden="true" tabindex="-1"></a> url<span class="ot">=</span><span class="fu">paste0</span>(<span class="st">"https://api.polygon.io/v2/aggs/ticker/"</span>,ticker,</span>
<span id="cb2-4"><a href="#cb2-4" aria-hidden="true" tabindex="-1"></a> <span class="st">"/range/1/day/"</span>,start_date,<span class="st">"/"</span>,end_date,</span>
<span id="cb2-5"><a href="#cb2-5" aria-hidden="true" tabindex="-1"></a> <span class="st">"?adjusted=true&sort=asc&limit="</span>,limit,<span class="st">"&apiKey=EdkA7_m2JhjS5POrGuXJbVlA4AjSl_4F"</span>)</span>
<span id="cb2-6"><a href="#cb2-6" aria-hidden="true" tabindex="-1"></a> response_obj <span class="ot"><-</span> <span class="fu">GET</span>(url)</span>
<span id="cb2-7"><a href="#cb2-7" aria-hidden="true" tabindex="-1"></a> parsed <span class="ot"><-</span> <span class="fu">fromJSON</span>(<span class="fu">rawToChar</span>(response_obj<span class="sc">$</span>content))</span>
<span id="cb2-8"><a href="#cb2-8" aria-hidden="true" tabindex="-1"></a> df <span class="ot"><-</span> <span class="fu">as_tibble</span>(parsed<span class="sc">$</span>results)</span>
<span id="cb2-9"><a href="#cb2-9" aria-hidden="true" tabindex="-1"></a> df <span class="ot"><-</span> df <span class="sc">%>%</span> <span class="fu">rename</span>(<span class="at">close_price=</span>c,<span class="at">highest_price=</span>h,<span class="at">lowest_price=</span>l,<span class="at">num_transactions=</span>n,</span>
<span id="cb2-10"><a href="#cb2-10" aria-hidden="true" tabindex="-1"></a> <span class="at">open_price=</span>o,<span class="at">timestamp=</span>t,<span class="at">vol=</span>v,<span class="at">weighted_avg_price=</span>vw) </span>
<span id="cb2-11"><a href="#cb2-11" aria-hidden="true" tabindex="-1"></a> df<span class="sc">$</span>ticker <span class="ot"><-</span> <span class="fu">rep</span>(ticker,limit)</span>
<span id="cb2-12"><a href="#cb2-12" aria-hidden="true" tabindex="-1"></a> df<span class="sc">$</span>company_name <span class="ot"><-</span> <span class="fu">rep</span>(company_name,limit)</span>
<span id="cb2-13"><a href="#cb2-13" aria-hidden="true" tabindex="-1"></a> df<span class="sc">$</span>start_date <span class="ot"><-</span> start_date</span>
<span id="cb2-14"><a href="#cb2-14" aria-hidden="true" tabindex="-1"></a> df<span class="sc">$</span>end_date <span class="ot"><-</span> end_date</span>
<span id="cb2-15"><a href="#cb2-15" aria-hidden="true" tabindex="-1"></a> df <span class="ot"><-</span> df <span class="sc">%>%</span> <span class="fu">select</span>(ticker,company_name,<span class="fu">everything</span>())</span>
<span id="cb2-16"><a href="#cb2-16" aria-hidden="true" tabindex="-1"></a> <span class="fu">return</span>(df)</span>
<span id="cb2-17"><a href="#cb2-17" aria-hidden="true" tabindex="-1"></a>}</span></code></pre></div>
<h3 id="tickers-endpoint"><a href="https://polygon.io/docs/stocks/get_v3_reference_tickers">Tickers</a> Endpoint</h3>
<p>Query all ticker symbols which are supported by Polygon.io. This API currently includes Stocks/Equities, Cryptocurrencies, and Currencies/Foreign Exchange.</p>
<h4 id="get_ticker"><code>get_ticker</code></h4>
<p>This function searches only the stock market. The user can provide the name of the company which they would like the ticker information for For example: If a user wants the ticker, the ticker information for Apple, the user can call the function as <code>get_ticker(name="Apple")</code>. This function will return the ticker symbol <strong>AAPL</strong> and the registered company name <strong>Apple Inc.</strong> as a list. The user can pass on the contents of this list to <code>get_stocks_agg</code> function mentioned above to get the aggregate bars over a date range. If there are multiple matches for a given name, the function returns the first ticker information from the list of matches.</p>
<div class="sourceCode" id="cb3"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a>get_ticker <span class="ot"><-</span> <span class="cf">function</span>(name){</span>
<span id="cb3-2"><a href="#cb3-2" aria-hidden="true" tabindex="-1"></a> url<span class="ot">=</span><span class="fu">paste0</span>(<span class="st">"https://api.polygon.io/v3/reference/tickers?market=stocks&search="</span>,name,<span class="st">"&active=true&sort=ticker&order=asc&limit=1000&apiKey=EdkA7_m2JhjS5POrGuXJbVlA4AjSl_4F"</span>)</span>
<span id="cb3-3"><a href="#cb3-3" aria-hidden="true" tabindex="-1"></a> response_obj <span class="ot"><-</span> <span class="fu">GET</span>(url)</span>
<span id="cb3-4"><a href="#cb3-4" aria-hidden="true" tabindex="-1"></a> parsed<span class="ot"><-</span> <span class="fu">fromJSON</span>(<span class="fu">rawToChar</span>(response_obj<span class="sc">$</span>content))</span>
<span id="cb3-5"><a href="#cb3-5" aria-hidden="true" tabindex="-1"></a> df <span class="ot"><-</span> <span class="fu">as_tibble</span>(parsed<span class="sc">$</span>results)</span>
<span id="cb3-6"><a href="#cb3-6" aria-hidden="true" tabindex="-1"></a> <span class="fu">return</span>(<span class="fu">list</span>(df<span class="sc">$</span>ticker[[<span class="dv">1</span>]],df<span class="sc">$</span>name[[<span class="dv">1</span>]]))</span>
<span id="cb3-7"><a href="#cb3-7" aria-hidden="true" tabindex="-1"></a>}</span></code></pre></div>
<h4 id="get_ticker_info"><code>get_ticker_info</code></h4>
<p>This function provides details of the ticker for a given market. The user can provide the value for <strong>market</strong> to this function. The possible values of market can be <strong>stocks</strong>, <strong>crypto</strong>, <strong>fx</strong> or <strong>otc</strong>. This function returns the primary exchange and type of ticker information for each security in each market.</p>
<div class="sourceCode" id="cb4"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a>get_ticker_info <span class="ot"><-</span> <span class="cf">function</span>(market){</span>
<span id="cb4-2"><a href="#cb4-2" aria-hidden="true" tabindex="-1"></a> url<span class="ot">=</span><span class="fu">paste0</span>(<span class="st">"https://api.polygon.io/v3/reference/tickers?market="</span>,market,<span class="st">"&active=true&sort=ticker&order=asc&limit=1000&apiKey=EdkA7_m2JhjS5POrGuXJbVlA4AjSl_4F"</span>)</span>
<span id="cb4-3"><a href="#cb4-3" aria-hidden="true" tabindex="-1"></a> response_obj <span class="ot"><-</span> <span class="fu">GET</span>(url)</span>
<span id="cb4-4"><a href="#cb4-4" aria-hidden="true" tabindex="-1"></a> parsed<span class="ot"><-</span> <span class="fu">fromJSON</span>(<span class="fu">rawToChar</span>(response_obj<span class="sc">$</span>content))</span>
<span id="cb4-5"><a href="#cb4-5" aria-hidden="true" tabindex="-1"></a> df <span class="ot"><-</span> <span class="fu">as_tibble</span>(parsed<span class="sc">$</span>results) <span class="sc">%>%</span> <span class="fu">select</span>(ticker,name,primary_exchange,type)</span>
<span id="cb4-6"><a href="#cb4-6" aria-hidden="true" tabindex="-1"></a> <span class="fu">return</span>(df)</span>
<span id="cb4-7"><a href="#cb4-7" aria-hidden="true" tabindex="-1"></a>}</span></code></pre></div>
<h3 id="grouped-daily-bars-endpoint"><a href="https://polygon.io/docs/stocks/get_v2_aggs_grouped_locale_us_market_stocks__date">Grouped Daily (Bars)</a> Endpoint</h3>
<p>Get the daily open, high, low, and close (OHLC) for the entire universe of stocks</p>
<h4 id="get_grouped_daily"><code>get_grouped_daily</code></h4>
<p>This function takes in <strong>date</strong> as an input from the user and returns the open, high, low, and close (OHLC) for the entire stocks markets for that particular date.</p>
<div class="sourceCode" id="cb5"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a>get_grouped_daily <span class="ot"><-</span> <span class="cf">function</span>(<span class="at">date=</span><span class="st">"2020-10-14"</span>){</span>
<span id="cb5-2"><a href="#cb5-2" aria-hidden="true" tabindex="-1"></a> url<span class="ot">=</span><span class="fu">paste0</span>(<span class="st">"https://api.polygon.io/v2/aggs/grouped/locale/us/market/stocks/"</span>,date,<span class="st">"?adjusted=true&include_otc=true&apiKey=EdkA7_m2JhjS5POrGuXJbVlA4AjSl_4F"</span>)</span>
<span id="cb5-3"><a href="#cb5-3" aria-hidden="true" tabindex="-1"></a> response_obj <span class="ot"><-</span> <span class="fu">GET</span>(url)</span>
<span id="cb5-4"><a href="#cb5-4" aria-hidden="true" tabindex="-1"></a> parsed <span class="ot"><-</span> <span class="fu">fromJSON</span>(<span class="fu">rawToChar</span>(response_obj<span class="sc">$</span>content))</span>
<span id="cb5-5"><a href="#cb5-5" aria-hidden="true" tabindex="-1"></a> df <span class="ot"><-</span> <span class="fu">as_tibble</span>(parsed<span class="sc">$</span>results)</span>
<span id="cb5-6"><a href="#cb5-6" aria-hidden="true" tabindex="-1"></a> df <span class="ot"><-</span> df <span class="sc">%>%</span> <span class="fu">rename</span>(<span class="at">Ticker=</span>T,<span class="at">volume=</span>v,<span class="at">weighted_avg_price=</span>vw,<span class="at">open_price=</span>o,</span>
<span id="cb5-7"><a href="#cb5-7" aria-hidden="true" tabindex="-1"></a> <span class="at">close_price=</span>c,<span class="at">highest_price=</span>h,<span class="at">lowest_price=</span>l,</span>
<span id="cb5-8"><a href="#cb5-8" aria-hidden="true" tabindex="-1"></a> <span class="at">num_transactions=</span>n,<span class="at">timestamp=</span>t)</span>
<span id="cb5-9"><a href="#cb5-9" aria-hidden="true" tabindex="-1"></a> df<span class="sc">$</span>date <span class="ot"><-</span> date</span>
<span id="cb5-10"><a href="#cb5-10" aria-hidden="true" tabindex="-1"></a> <span class="fu">return</span>(df)</span>
<span id="cb5-11"><a href="#cb5-11" aria-hidden="true" tabindex="-1"></a>}</span></code></pre></div>
<h3 id="ticker-types-endpoint"><a href="https://polygon.io/docs/stocks/get_v3_reference_tickers_types">Ticker Types</a> Endpoint</h3>
<h4 id="get_ticker_type_details"><code>get_ticker_type_details</code></h4>
<p>This function is used to get the metadata information of all the ticker types that Polygon.io has data for.</p>
<div class="sourceCode" id="cb6"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a>get_ticker_type_details <span class="ot"><-</span> <span class="cf">function</span>(){</span>
<span id="cb6-2"><a href="#cb6-2" aria-hidden="true" tabindex="-1"></a> response_obj <span class="ot"><-</span> <span class="fu">GET</span>(<span class="st">"https://api.polygon.io/v3/reference/tickers/types?apiKey=EdkA7_m2JhjS5POrGuXJbVlA4AjSl_4F"</span>)</span>
<span id="cb6-3"><a href="#cb6-3" aria-hidden="true" tabindex="-1"></a> parsed <span class="ot"><-</span> <span class="fu">fromJSON</span>(<span class="fu">rawToChar</span>(response_obj<span class="sc">$</span>content))</span>
<span id="cb6-4"><a href="#cb6-4" aria-hidden="true" tabindex="-1"></a> df <span class="ot"><-</span> <span class="fu">as_tibble</span>(parsed<span class="sc">$</span>results) </span>
<span id="cb6-5"><a href="#cb6-5" aria-hidden="true" tabindex="-1"></a> <span class="fu">return</span>(df)</span>
<span id="cb6-6"><a href="#cb6-6" aria-hidden="true" tabindex="-1"></a>}</span></code></pre></div>
<h3 id="exchanges-endpoint"><a href="https://polygon.io/docs/stocks/get_v3_reference_exchanges">Exchanges</a> Endpoint</h3>
<h4 id="get_exchanges_details"><code>get_exchanges_details</code></h4>
<p>This function is used to get metadata information of all the stock exchanges that Polygon.io has data for.</p>
<div class="sourceCode" id="cb7"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a>get_exchanges_details <span class="ot"><-</span> <span class="cf">function</span>(){</span>
<span id="cb7-2"><a href="#cb7-2" aria-hidden="true" tabindex="-1"></a> response_obj <span class="ot"><-</span> <span class="fu">GET</span>(<span class="st">"https://api.polygon.io/v3/reference/exchanges?asset_class=stocks&apiKey=EdkA7_m2JhjS5POrGuXJbVlA4AjSl_4F"</span>)</span>
<span id="cb7-3"><a href="#cb7-3" aria-hidden="true" tabindex="-1"></a> parsed <span class="ot"><-</span> <span class="fu">fromJSON</span>(<span class="fu">rawToChar</span>(response_obj<span class="sc">$</span>content))</span>
<span id="cb7-4"><a href="#cb7-4" aria-hidden="true" tabindex="-1"></a> df <span class="ot"><-</span> <span class="fu">as_tibble</span>(parsed<span class="sc">$</span>results) </span>
<span id="cb7-5"><a href="#cb7-5" aria-hidden="true" tabindex="-1"></a> <span class="fu">return</span>(df)</span>
<span id="cb7-6"><a href="#cb7-6" aria-hidden="true" tabindex="-1"></a>}</span></code></pre></div>
<!--*************************************************************************-->
<h1 id="exploratory-data-analysis-eda">Exploratory Data Analysis (EDA)</h1>
<h2 id="combining-data-from-api-calls">Combining data from API Calls</h2>
<p>Here we have called the data of 3 stocks namely Apple, Tesla and Nvidia from 1 Jan 2022 to 31 August 2022.<br />
To find the stock information for Apple, we have passed “Apple” as an input argument to <code>get_ticker</code> function. This function returns a list <code>ticker_symbol1</code> which consists of ticker symbol “AAPL” and name of the company which is “Apple Inc.”. The same was repeated for the other 2 symbols as well.</p>
<p>This information along with start date and end date is passed to the function <code>get_stocks_agg</code>. The limit argument is not passed, so the function takes the default value of 50. This function fetches the stock information for Apple in the given date range and returns a data frame <code>df1</code>. Similarly, this is done to get the stocks information for Tesla and Nvidia in <code>df2</code> and <code>df3</code> respectively.</p>
<div class="sourceCode" id="cb8"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true" tabindex="-1"></a>ticker_symbol1 <span class="ot"><-</span> <span class="fu">get_ticker</span>(<span class="at">name=</span><span class="st">"Apple"</span>)</span>
<span id="cb8-2"><a href="#cb8-2" aria-hidden="true" tabindex="-1"></a>df1 <span class="ot"><-</span> <span class="fu">get_stocks_agg</span>(ticker_symbol1[[<span class="dv">1</span>]],ticker_symbol1[[<span class="dv">2</span>]],<span class="at">start_date=</span><span class="st">"2022-01-01"</span>,<span class="at">end_date=</span><span class="st">"2022-08-31"</span>)</span>
<span id="cb8-3"><a href="#cb8-3" aria-hidden="true" tabindex="-1"></a>df1</span></code></pre></div>
<pre><code>## # A tibble: 50 x 12
## ticker company_name vol weighted_avg_price open_p~1 close~2 highe~3 lowes~4 times~5 num_t~6 start~7 end_d~8
## <chr> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <int> <chr> <chr>
## 1 AAPL Apple Inc. 104677470 181. 178. 182. 183. 178. 1.64e12 772691 2022-0~ 2022-0~
## 2 AAPL Apple Inc. 99110438 181. 183. 180. 183. 179. 1.64e12 831890 2022-0~ 2022-0~
## 3 AAPL Apple Inc. 94535602 177. 180. 175. 180. 175. 1.64e12 848513 2022-0~ 2022-0~
## 4 AAPL Apple Inc. 96882954 173. 173. 172 175. 172. 1.64e12 960340 2022-0~ 2022-0~
## 5 AAPL Apple Inc. 86709147 172. 173. 172. 174. 171. 1.64e12 716881 2022-0~ 2022-0~
## 6 AAPL Apple Inc. 106754551 170. 169. 172. 172. 168. 1.64e12 956337 2022-0~ 2022-0~
## 7 AAPL Apple Inc. 76138312 174. 172. 175. 175. 171. 1.64e12 649652 2022-0~ 2022-0~
## 8 AAPL Apple Inc. 74805173 176. 176. 176. 177. 175. 1.64e12 642756 2022-0~ 2022-0~
## 9 AAPL Apple Inc. 84405760 174. 176. 172. 177. 172. 1.64e12 692343 2022-0~ 2022-0~
## 10 AAPL Apple Inc. 80440778 172. 171. 173. 174. 171. 1.64e12 672552 2022-0~ 2022-0~
## # ... with 40 more rows, and abbreviated variable names 1: open_price, 2: close_price, 3: highest_price,
## # 4: lowest_price, 5: timestamp, 6: num_transactions, 7: start_date, 8: end_date</code></pre>
<div class="sourceCode" id="cb10"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb10-1"><a href="#cb10-1" aria-hidden="true" tabindex="-1"></a>ticker_symbol2 <span class="ot"><-</span> <span class="fu">get_ticker</span>(<span class="at">name=</span><span class="st">"Tesla"</span>)</span>
<span id="cb10-2"><a href="#cb10-2" aria-hidden="true" tabindex="-1"></a>df2 <span class="ot"><-</span> <span class="fu">get_stocks_agg</span>(ticker_symbol2[[<span class="dv">1</span>]],ticker_symbol2[[<span class="dv">2</span>]],<span class="at">start_date=</span><span class="st">"2022-01-01"</span>,<span class="at">end_date=</span><span class="st">"2022-08-31"</span>)</span>
<span id="cb10-3"><a href="#cb10-3" aria-hidden="true" tabindex="-1"></a>df2</span></code></pre></div>
<pre><code>## # A tibble: 50 x 12
## ticker company_name vol weigh~1 open_~2 close~3 highe~4 lowes~5 times~6 num_t~7 start~8 end_d~9
## <chr> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <int> <chr> <chr>
## 1 TSLA Tesla, Inc. Common Stock 104686035 390. 383. 400. 400. 379. 1.64e12 1162844 2022-0~ 2022-0~
## 2 TSLA Tesla, Inc. Common Stock 99798258 387. 397. 383. 403. 374. 1.64e12 1051467 2022-0~ 2022-0~
## 3 TSLA Tesla, Inc. Common Stock 80119797 376. 382. 363. 390. 360. 1.64e12 811988 2022-0~ 2022-0~
## 4 TSLA Tesla, Inc. Common Stock 90324504 353. 359 355. 363. 340. 1.64e12 880974 2022-0~ 2022-0~
## 5 TSLA Tesla, Inc. Common Stock 83999748 346. 360. 342. 360. 337. 1.64e12 823560 2022-0~ 2022-0~
## 6 TSLA Tesla, Inc. Common Stock 91814877 339. 333. 353. 353. 327. 1.64e12 971558 2022-0~ 2022-0~
## 7 TSLA Tesla, Inc. Common Stock 66045210 353. 351. 355. 359. 346. 1.64e12 644108 2022-0~ 2022-0~
## 8 TSLA Tesla, Inc. Common Stock 83739015 365. 360. 369. 372. 358. 1.64e12 761538 2022-0~ 2022-0~
## 9 TSLA Tesla, Inc. Common Stock 96909162 356. 370. 344. 372. 342. 1.64e12 924351 2022-0~ 2022-0~
## 10 TSLA Tesla, Inc. Common Stock 72916011 345. 340. 350. 351. 338. 1.64e12 710334 2022-0~ 2022-0~
## # ... with 40 more rows, and abbreviated variable names 1: weighted_avg_price, 2: open_price, 3: close_price,
## # 4: highest_price, 5: lowest_price, 6: timestamp, 7: num_transactions, 8: start_date, 9: end_date</code></pre>
<div class="sourceCode" id="cb12"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb12-1"><a href="#cb12-1" aria-hidden="true" tabindex="-1"></a>ticker_symbol3 <span class="ot"><-</span> <span class="fu">get_ticker</span>(<span class="at">name=</span><span class="st">"Nvidia"</span>)</span>
<span id="cb12-2"><a href="#cb12-2" aria-hidden="true" tabindex="-1"></a>df3 <span class="ot"><-</span> <span class="fu">get_stocks_agg</span>(ticker_symbol3[[<span class="dv">1</span>]],ticker_symbol3[[<span class="dv">2</span>]],<span class="at">start_date=</span><span class="st">"2022-01-01"</span>,<span class="at">end_date=</span><span class="st">"2022-08-31"</span>)</span>
<span id="cb12-3"><a href="#cb12-3" aria-hidden="true" tabindex="-1"></a>df3</span></code></pre></div>
<pre><code>## # A tibble: 50 x 12
## ticker company_name vol weighted_avg_price open_pr~1 close~2 highe~3 lowes~4 times~5 num_t~6 start~7 end_d~8
## <chr> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <int> <chr> <chr>
## 1 NVDA Nvidia Corp 39240294 302. 298. 301. 307. 298. 1.64e12 585469 2022-0~ 2022-0~
## 2 NVDA Nvidia Corp 52715440 291. 303. 293. 305. 283. 1.64e12 894297 2022-0~ 2022-0~
## 3 NVDA Nvidia Corp 49806388 283. 289. 276. 294. 275. 1.64e12 836624 2022-0~ 2022-0~
## 4 NVDA Nvidia Corp 45418636 280. 276. 282. 284. 271. 1.64e12 725603 2022-0~ 2022-0~
## 5 NVDA Nvidia Corp 40993851 275. 281. 272. 284. 271. 1.64e12 639610 2022-0~ 2022-0~
## 6 NVDA Nvidia Corp 59461560 264. 266. 274 275. 256. 1.64e12 991811 2022-0~ 2022-0~
## 7 NVDA Nvidia Corp 40408929 275. 273. 278. 281. 268. 1.64e12 572165 2022-0~ 2022-0~
## 8 NVDA Nvidia Corp 38341346 281. 281. 280. 286. 276. 1.64e12 562208 2022-0~ 2022-0~
## 9 NVDA Nvidia Corp 53857879 271. 284. 266. 285. 265. 1.64e12 845316 2022-0~ 2022-0~
## 10 NVDA Nvidia Corp 39583233 268. 263 269. 272. 262. 1.64e12 620045 2022-0~ 2022-0~
## # ... with 40 more rows, and abbreviated variable names 1: open_price, 2: close_price, 3: highest_price,
## # 4: lowest_price, 5: timestamp, 6: num_transactions, 7: start_date, 8: end_date</code></pre>
<p>Here we have combined df1, df2 and df3 into vertically into a data frame <code>df_combined</code>. This gives us all the stock information for the 3 companies in a single data frame. This data frame is further used to plot the <strong>close_price</strong> for the 3 companies in a given date range.<br />
For this the time stamp on x-axis is in Unix Msec. We tried to convert it into Human readable datetime format using multiple ways but we were unable to do it due deadline for the project. We are sure we would have gotten a breakthrough had we worked more on this.</p>
<div class="sourceCode" id="cb14"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb14-1"><a href="#cb14-1" aria-hidden="true" tabindex="-1"></a>df_combined <span class="ot"><-</span> <span class="fu">bind_rows</span>(df1, df2, df3)</span>
<span id="cb14-2"><a href="#cb14-2" aria-hidden="true" tabindex="-1"></a>start_date <span class="ot">=</span> <span class="fu">as.character</span>(<span class="fu">unique</span>(df_combined<span class="sc">$</span>start_date))</span>
<span id="cb14-3"><a href="#cb14-3" aria-hidden="true" tabindex="-1"></a>end_date <span class="ot">=</span> <span class="fu">as.character</span>(<span class="fu">unique</span>(df_combined<span class="sc">$</span>end_date))</span>
<span id="cb14-4"><a href="#cb14-4" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb14-5"><a href="#cb14-5" aria-hidden="true" tabindex="-1"></a><span class="co">#Plot</span></span>
<span id="cb14-6"><a href="#cb14-6" aria-hidden="true" tabindex="-1"></a><span class="fu">ggplot</span>(df_combined,<span class="fu">aes</span>(<span class="at">x=</span>timestamp,<span class="at">y=</span>close_price)) <span class="sc">+</span> </span>
<span id="cb14-7"><a href="#cb14-7" aria-hidden="true" tabindex="-1"></a> <span class="fu">geom_line</span>(<span class="fu">aes</span>(<span class="at">color=</span>company_name),<span class="at">size=</span><span class="dv">1</span>) <span class="sc">+</span> </span>
<span id="cb14-8"><a href="#cb14-8" aria-hidden="true" tabindex="-1"></a> <span class="fu">labs</span>(<span class="at">x=</span><span class="st">"Time"</span>,<span class="at">y=</span><span class="st">"Closing price"</span>,</span>
<span id="cb14-9"><a href="#cb14-9" aria-hidden="true" tabindex="-1"></a> <span class="at">title=</span><span class="st">"Closing stock price over time for Apple, Nvidia and Tesla"</span>) <span class="sc">+</span> </span>
<span id="cb14-10"><a href="#cb14-10" aria-hidden="true" tabindex="-1"></a> <span class="fu">scale_color_discrete</span>(<span class="at">name =</span> <span class="st">"Company Name"</span>)<span class="sc">+</span></span>
<span id="cb14-11"><a href="#cb14-11" aria-hidden="true" tabindex="-1"></a> <span class="fu">theme</span>(<span class="at">plot.title =</span> <span class="fu">element_text</span>(<span class="at">hjust =</span> <span class="fl">0.5</span>))</span></code></pre></div>
<img src="data:image/png;base64,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" style="display: block; margin: auto;" />
From the plot we can see the stock price Tesla has dropped the most but
it is still having higher price than Nvidia and Apple between 1 Jan 2022
to 31 August 2022. Elon Musk’s deal with Twitter falling out can be one
of the factor for this sink. But overall, this can be attributed to the
bearish trend that is being observed currently in the markets currently
due to high inflation, tapering by the FED, geopolitical tensions and
other macroeconomic factors which is a clear correlation can be observed
between the price performance of the 2 stocks.
<!--*************************************************************************-->
<h2 id="creation-of-new-variables">Creation of new variables</h2>
<p>Here we have called <code>get_grouped_daily</code> function to get the open, high, low, and close (OHLC) for the entire stocks markets on 16 Nov 2020 (a random date which user can select).</p>
<p>We have added a new variable <strong>percent_change</strong> which is the percent rise/decline in the stock price throughout that day (Considered open_price and close_price for calculating this). We have arranged the data frame in the descending order of percent_change, and hence at the top of the data frame we have tickers which have the maximum gain in stock price and at the bottom we have tickers which have the maximum loss.<br />
We have also added <strong>percent_change_chr</strong> variable, where we have coerced percent_change as character which used to make the plot ahead more descriptive.</p>
<div class="sourceCode" id="cb15"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb15-1"><a href="#cb15-1" aria-hidden="true" tabindex="-1"></a>df_grouped <span class="ot"><-</span> <span class="fu">get_grouped_daily</span>(<span class="st">"2020-11-16"</span>)</span>
<span id="cb15-2"><a href="#cb15-2" aria-hidden="true" tabindex="-1"></a>df_grouped <span class="ot"><-</span> df_grouped <span class="sc">%>%</span> </span>
<span id="cb15-3"><a href="#cb15-3" aria-hidden="true" tabindex="-1"></a> <span class="fu">mutate</span>(<span class="at">percent_change =</span> <span class="fu">round</span>(((close_price<span class="sc">-</span>open_price)<span class="sc">/</span>open_price)<span class="sc">*</span><span class="dv">100</span>,<span class="dv">2</span>)) <span class="sc">%>%</span> </span>
<span id="cb15-4"><a href="#cb15-4" aria-hidden="true" tabindex="-1"></a> <span class="fu">arrange</span>(<span class="fu">desc</span>(percent_change))</span>
<span id="cb15-5"><a href="#cb15-5" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb15-6"><a href="#cb15-6" aria-hidden="true" tabindex="-1"></a>df_grouped<span class="sc">$</span>percent_change_chr <span class="ot"><-</span> <span class="fu">paste</span>(<span class="fu">as.character</span>(df_grouped<span class="sc">$</span>percent_change),<span class="st">'%'</span>)</span>
<span id="cb15-7"><a href="#cb15-7" aria-hidden="true" tabindex="-1"></a>df_grouped <span class="sc">%>%</span> <span class="fu">select</span>(Ticker,open_price,close_price,percent_change_chr,<span class="fu">everything</span>())</span></code></pre></div>
<pre><code>## # A tibble: 9,084 x 12
## Ticker open_price close_price percent_change_chr volume weight~1 highe~2 lowes~3 times~4 num_t~5 date perce~6
## <chr> <dbl> <dbl> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <int> <chr> <dbl>
## 1 ZXZZT 10.3 20.0 93.31 % 39298 13.3 20.0 10.3 1.61e12 332 2020~ 93.3
## 2 AIRTW 0.0261 0.0395 51.34 % 49231 0.0374 0.0399 0.0261 1.61e12 19 2020~ 51.3
## 3 WWR 4.31 6.27 45.48 % 36001534 5.43 6.3 4.22 1.61e12 117274 2020~ 45.5
## 4 CBAT 7.9 11.3 43.04 % 107542895 9.22 11.4 7.15 1.61e12 463824 2020~ 43.0
## 5 PPSI 3.02 4.29 42.05 % 12071799 4.02 4.48 3.02 1.61e12 43723 2020~ 42.0
## 6 ITACW 0.350 0.48 37.1 % 16290 0.401 0.48 0.350 1.61e12 10 2020~ 37.1
## 7 BLNKW 5.74 7.86 36.89 % 283685 7.35 8.23 5.74 1.61e12 1493 2020~ 36.9
## 8 NBACW 0.51 0.66 29.41 % 565422 0.587 0.680 0.51 1.61e12 1162 2020~ 29.4
## 9 SGOC 0.92 1.19 29.35 % 33103 1.06 1.19 0.92 1.61e12 98 2020~ 29.4
## 10 KLR.WS 1.06 1.36 28.29 % 3978 1.10 1.36 1.06 1.61e12 7 2020~ 28.3
## # ... with 9,074 more rows, and abbreviated variable names 1: weighted_avg_price, 2: highest_price,
## # 3: lowest_price, 4: timestamp, 5: num_transactions, 6: percent_change</code></pre>
<h3 id="plot-for-new-variable">Plot for new variable</h3>
<p>Here we have used <code>head()</code> and <code>tail()</code> to get the stock information of 10 tickers having the highest percent gain in <code>df_top10</code> and 10 tickers having the highest percent loss in <code>df_bottom10</code>. This information is plotted using <code>geom_col()</code>.<br />
As mentioned above <strong>percent_change_chr</strong> is used to add text on top of the columns using <code>geom_text()</code>.</p>
<p>On the x-axis we could not map the ticker symbol to the company name (which would have made the plot clearer) because there is a max limit of 1000 on the <a href="https://polygon.io/docs/stocks/get_v3_reference_tickers">Ticker Endpoint</a>. So we do not get all the data and hence there is a possibility that we have a ticker symbol in <code>df_grouped</code> for which we have not been able to fetch the company name.</p>
<div class="sourceCode" id="cb17"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb17-1"><a href="#cb17-1" aria-hidden="true" tabindex="-1"></a><span class="co">#Top-10 gains</span></span>
<span id="cb17-2"><a href="#cb17-2" aria-hidden="true" tabindex="-1"></a>df_top10 <span class="ot"><-</span> <span class="fu">head</span>(df_grouped, <span class="dv">10</span>)</span>
<span id="cb17-3"><a href="#cb17-3" aria-hidden="true" tabindex="-1"></a>df_top10<span class="sc">$</span>Ticker <span class="ot"><-</span> <span class="fu">factor</span>(df_top10<span class="sc">$</span>Ticker, </span>
<span id="cb17-4"><a href="#cb17-4" aria-hidden="true" tabindex="-1"></a> <span class="at">levels=</span>df_top10<span class="sc">$</span>Ticker[<span class="fu">order</span>(<span class="sc">-</span>df_top10<span class="sc">$</span>percent_change)])</span>
<span id="cb17-5"><a href="#cb17-5" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb17-6"><a href="#cb17-6" aria-hidden="true" tabindex="-1"></a><span class="co"># Plot</span></span>
<span id="cb17-7"><a href="#cb17-7" aria-hidden="true" tabindex="-1"></a>date <span class="ot"><-</span> <span class="fu">unique</span>(df_top10<span class="sc">$</span>date)</span>
<span id="cb17-8"><a href="#cb17-8" aria-hidden="true" tabindex="-1"></a><span class="fu">ggplot</span>(df_top10, <span class="fu">aes</span>(<span class="at">x=</span>Ticker, <span class="at">y=</span>percent_change)) <span class="sc">+</span> </span>
<span id="cb17-9"><a href="#cb17-9" aria-hidden="true" tabindex="-1"></a><span class="fu">geom_col</span>(<span class="at">width=</span><span class="fl">0.3</span>, <span class="at">color=</span><span class="st">'steelblue'</span>, <span class="at">fill=</span><span class="st">'steelblue'</span>) <span class="sc">+</span> </span>
<span id="cb17-10"><a href="#cb17-10" aria-hidden="true" tabindex="-1"></a><span class="fu">theme</span>(<span class="at">axis.text.x=</span><span class="fu">element_text</span>(<span class="at">angle=</span><span class="dv">90</span>), <span class="at">text=</span><span class="fu">element_text</span>(<span class="at">size=</span><span class="dv">12</span>), </span>
<span id="cb17-11"><a href="#cb17-11" aria-hidden="true" tabindex="-1"></a> <span class="at">plot.title =</span> <span class="fu">element_text</span>(<span class="at">hjust =</span> <span class="fl">0.5</span>)) <span class="sc">+</span> </span>
<span id="cb17-12"><a href="#cb17-12" aria-hidden="true" tabindex="-1"></a><span class="fu">labs</span>(<span class="at">y=</span><span class="st">"Percent increase"</span>, <span class="at">x =</span><span class="st">"Stock ticker"</span>,</span>
<span id="cb17-13"><a href="#cb17-13" aria-hidden="true" tabindex="-1"></a> <span class="at">title =</span> <span class="fu">paste0</span>(<span class="st">"Highest stock price increase on "</span>,date)) <span class="sc">+</span> </span>
<span id="cb17-14"><a href="#cb17-14" aria-hidden="true" tabindex="-1"></a><span class="fu">geom_text</span>(<span class="fu">aes</span>(<span class="at">label =</span> percent_change_chr), <span class="at">vjust =</span> <span class="sc">-</span><span class="fl">0.5</span>, <span class="at">size=</span><span class="dv">3</span>)</span></code></pre></div>
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA8AAAAHgCAMAAABdO/S2AAABj1BMVEUAAAAAADUAADoAAF4AAGYANTUANYQAOjoAOmYAOpAAXqgAZrYzMzM1AAA1ADU1AF41NYQ1hMk6AAA6ADo6AGY6OgA6Ojo6OmY6OpA6ZmY6ZpA6ZrY6kLY6kNtGgrRNTU1NTW5NTY5NbqtNjsheAABeADVeAF5eXjVehIReqOtmAABmADpmOgBmOjpmZgBmkLZmkNtmtttmtv9uTU1uTW5uTY5ubk1ubqtuq+SENQCENTWENV6EyeuOTU2OTW6OTY6ObquOyP+QOgCQOjqQZgCQZjqQZmaQkGaQtpCQttuQ27aQ2/+oXgCo66io6+urbk2rbm6rbo6rq+Sr5OSr5P+2ZgC2Zjq2kDq2kGa2tra2ttu229u22/+2/7a2/9u2///Ijk3Ijo7I///JhDXJyYTJ6+vbkDrbkGbbtmbbtpDb25Db27bb29vb2//b/7bb/9vb///kq27k///rqF7ryYTrycnr66jr68nr6+v/tmb/yI7/yMj/25D/27b/29v/5Kv//7b//8j//9v//+T///+tfDedAAAACXBIWXMAAA7DAAAOwwHHb6hkAAAgAElEQVR4nO2dj38cV3XFF2FCbAViqUApqbp2DEmtuAXkkDg/nNRuU2gt4rS1oLQuVi0soJRWso0tqTL6NX945735sTO7492nuXN373k65+Mfu7O73z26mjPvzcybN72EoihY9WZtgKKo9mKAKQpYDDBFAYsBpihgMcAUBSwGmKKAxQBTFLAYYIoCFgMs0ObcHf///uJ8cnz7/FblpaGno/pj4LIA2PiXJzrpSi/+qtebe8N/1/G/Lvbmvr/18qWlDpdXGh7WF7jP9b4znR8CTgywQIIA//obD4KWhcBsBHg/TVmqV93PsOYfzr90aanDa72V0Yf1Bce3/eemtBlCEwMsUDXAQ5oUm7Vzo2FtWhYEs6A0Zj9M29vbvaUk2e29ej954fLXvLTUb9N4r4w8HFqw6T/nEdSIGGCBGOCBDpfny//WfF1cVZqX5jr+296rP85b2cHD4deOb/uy5CRqSAywQKNd6LSBSVe8xSX39H9v9+Z+4F5+8Vkv3/c7/lnarPzp/axXmK+Qw8tefOb2+O77D6a0b9/PA3y4fO5+9om1c7/8mf9I+sL8Zu/cv5df/e379e/z/PTV9O9/XSvclFD32fvVd//mm/nDwtMIrGKvyhzI5Szf3lQ2Oy9Z+s73t3az1FYeDr+2v8imd4wYYIFGApzv8fVcgF+9lj0qFrq8ZnuBc3eqAR5alr/btTrZw/SRYx8u51/mAvzX2UfSF7662Eu3FOVXDz5W7mtmAS58VaHus1uVd2+Wbyo8jcAq9irMinbT50VjOehRNC/NXllpeFhdkP7722vFJo0aFgMsUL7G+xU8z8mfb7mdNxfg3vn7ya/dmr/mFh7/LF0bD5dd6/MbH5FiNR5ettZ7w7/bER3n535PMg1pmd/0LXP/UHlL8dX5myvf55W/Or+V2q1Dffaq7lwTv7/sNhYDT3VY3V7OrGh/0fcVhqLavNQrJMDfKjdp1IgYYIGGA5zv3+36ALvAuSTkC9Mea/p07ju/+L3/aCXAtWVZdvyO32CvL2X/3SC/+c6ke0u2f5g10MWbK99XfHgre9/hcvV92bL6u//7F3//zZ5v7XNPw7CKvQFzUJD9xeynrke1eWmmkAC7bcgfP6tvKahcDLBAw13ofBXcz/aBt5I81XnIz29lifd7lIPVuL6s2ONL0YOdP99bHXRV889uum734FuK16vfl33Y7wOPvC9bVn13/rjqcxhWsTdgDurhjhePRHV06e6g6z0S4JHXdrNn+bEsakgMsECnC7BbAX/3WZ6GSjtUW/aSAM/943KlCx0W4PwbAgPsWvzen33/337nm9TC0zBsXIDdXsPWgFyWYHTpqQK8v7hS/ampuhhggYYDXOtCj0Ym0x9/ey39WH11HCx7WRc6XenLLmS1C118S7ULXf++eoDr0Nq7s7yUfWLvaRhW60LXA3w8OFNbOWHUvHSgyV3o3DFb4GYxwAINB7h2EKtYvdPm8wfukNCiO8I8/3s3rMGFtWhQh5fVjhL90I1nKNmDA0lpnzR/y+BbBm8uv8+rHuA6NKm+e9cdlHpxzbe7hadhWM1ePcBr1SiWQzaalw40OcDZV764zX3gRjHAAo09jVSu3vnCLJ3FSZnNodNI5bLKu7OH/myRx5RRmftmeSpn6FsqZ36KLUQ9wEPQ6rvTLnTRWx54GoJVng8FuNbZXhv6+NDSigICfHit2omn6mKABXrJQI6f1PaBs7EQ2XlMPyz/q2kT6NbK4iDT0DI/cuINfwzY04qBHOn6n3dG18798rNsdH/tW/I3V7/P8+sBHoJW3+1e+eoPXT9g4GkIlgzsDQV4t1eJ6vHP88sWmpdWFBDgbFjJG+bHos1GDHD30h47xMM5VCkGuEMdLrum7cW1yjlbDTHAVCkGuEsN9h1Vv4UBpgoxwF2qsu+oKAaYKsUAUxSwGGCKAhYDTFHAYoApClgMMEUBiwGmKGCdNsA7bdTuUwQb4OKB4Qy3AzPAcYHhDLMSMjADHBcYzjArIQMzwHGB4QyzEjIwAxwXGM4wKyED6wV4tde7WvybP00/9eytz92z5x/0LuzsbFxoY7npp+iIgw+GM8xKyMBqAX7yyqPnH3785EIeWf/gwc6z737ZB/jJhfTFPMwdyFZNZwmGM8xKyMBqAd5YyP7ulDFNA/z8o5++NQjw6kIbx40/RVcgeDCcYVZCBlZtgT9wIc670O5BvQv99OKjNo4bf4quQPBgOMOshAysFuB0p/dLb/smdvVqsWSl0h675au9V7rJsK2azhIMZ5iVkIH1ArxTRHej6ClvLFUD/PTiry4+KsMtk62azhIMZ5iVkIHVAvzkws7T1z9P/81i7B9UW+B0H/gpAwzDxQPDGTYW4MFppAWfWvcgqQTYJ5pdaBQuHhjOsLUAd+WQYAtcPDCcYQaYYEDDrIQMzADHBYYzzErIwAxwXGA4w6yEDKwd4L8YozZ+X/JTdIcCB8MZZiVkYAY4LjCcYVZCBmaA4wLDGWYlZGAGOC4wnGFWQgZmgOMCwxlmJWRgBjguMJxhVkIGZoDjAsMZZiVkYAY4LjCcYVZCBmaA4wLDGWYlZGAGOC4wnGFWQgZmgOMCwxlmJWRgBjguMJxhVkIGZoDjAsMZZiVkYAY4LjCcYVZCBmaA4wLDGWYlZGAGOC4wnGFWQgZmgOMCwxlmJWRgBjguMJxhVkIGZoDjAsMZZiVkYAY4LjCcYVZCBm4b4FCNC7DSV1LU2RNb4DjAcIZZCRmYAY4LDGeYlZCBGeC4wHCGWQkZmAGOCwxnmJWQgRnguMBwhlkJGZgBjgsMZ5iVkIEZ4LjAcIZZCRmYAY4LDGeYlZCBGeC4wHCGWQkZmAGOCwxnmJWQgRnguMBwhlkJGZgBjgsMZ5iVkIEZ4LjAcIZZCRmYAY4LDGeYlZCBGeC4wHCGWQkZmAGOCwxnmJWQgRnguMBwhlkJGZgBjgsMZ5iVkIEZ4LjAcIZZCRmYAY4LDGeYlZCBGeC4wHCGWQkZmAGOCwxnmJWQgRnguMBwhlkJGZgBjgsMZ5iVkIEZ4LjAcIZZCRmYAY4LDGeYlZCBGeC4wHCGWQkZmAGOCwxnmJWQgRnguMBwhlkJGZgBjgsMZ5iVkIEZ4LjAcIZZCRmYAY4LDGeYlZCBGeC4wHCGWQkZmAGOCwxnmJWQgRnguMBwhlkJGZgBjgsMZ5iVkIEZ4LjAcIZZCRmYAY4LDGeYlZCBGeC4wHCGWQkZmAGOCwxnmJWQgQMCvNd3upEcXO/333zMAJsGwxlmJWTgwBZ47/LDZO8KW2DzYDjDrIQMHBbgo5u3kmT9BgNsHgxnmJWQgcMCvJ12nU++uJc/ey3V+AZ7oHEBDmVQFDVBYwN8cjdtgI8+ea9/qcgwW2CjYDjDrIQMHBTggx89TP95915y9OlDBtg0GM4wKyEDBwV4uzh8dfRJ0QSH8hng6YLhDLMSMnBQgMvDVwywdTCcYVZCBg4JsN8F9meSDt7neWDbYDjDrIQMHBLgvN3d7vcvF7vADLBRMJxhVkIGDupCNyiUzwBPFwxnmJWQgRnguMBwhlkJGZgBjgsMZ5iVkIEZ4LjAcIZZCRmYAY4LDGeYlZCBGeC4wHCGWQkZmAGOCwxnmJWQgRnguMBwhlkJGZgBjgsMZ5iVkIEZ4LjAcIZZCRmYAY4LDGeYlZCBGeC4wHCGWQkZmAGOCwxnmJWQgRnguMBwhlkJGZgBjgsMZ5iVkIEZ4LjAcIZZCRmYAY4LDGeYlZCBGeC4wHCGWQkZmAGOCwxnmJWQgRnguMBwhlkJGZgBjgsMZ5iVkIEZ4LjAcIZZCRmYAY4LDGeYlZCBGeC4wHCGWQkZmAGOCwxnmJWQgRnguMBwhlkJGZgBjgsMZ5iVkIEZ4LjAcIZZCRmYAY4LDGeYlZCBGeC4wHCGWQkZmAGOCwxnmJWQgRnguMBwhlkJGZgBjgsMZ5iVkIEZ4LjAcIZZCRm4OcCHy73zW2tLDDAcGM4wKyEDNwZ4d+7O5vmtw+UxCQ7lM8DTBcMZZiVk4KYAH99eStIAJ5vnHjDAYGA4w6yEDNwU4MPlFR/g3TEBDtW4AIvhFEVlamqB19K/L1PoBoIt8HTBcIZZCRm4KcD5PvBmb+XlgQ/lM8DTBcMZZiVk4MYAu6PQvd7cnTEtdiifAZ4uGM4wKyEDNwd4skL5DPB0wXCGWQkZmAGOCwxnmJWQgRsD7M4Ab/Z6Y45hMcBGwXCGWQkZuDHAa+e39hfnk7V5BhgNDGeYlZCBmwLszgPv9lbGngcO5TPA0wXDGWYlZOCXBXgtDS9HYuGB4QyzEjJwcxd6/nDZjYVmFxoODGeYlZCBGwN8uNybu3N8e0x+GWCjYDjDrIQM3BjgAIXyGeDpguEMsxIyMAMcFxjOMCshAzcG2I+kTMWDWHBgOMOshAzcGOC181ub88n+Ii9mgAPDGWYlZOCmALuBWLvugn5eTggHhjPMSsjAzQFeSfa/8cD/ZYCxwHCGWQkZuCnA7oL+w3fuMMCAYDjDrIQM3BRgPwRrbYldaEAwnGFWQgZuDLC7jOFwedxBaAbYKBjOMCshAzcHeLJC+QzwdMFwhlkJGZgBjgsMZ5iVkIGbA8w7M6CC4QyzEjJwY4B5ZwZYMJxhVkIGbgow78yAC4YzzErIwE0BDrkzQyifAZ4uGM4wKyEDj2uBeWcGPDCcYVZCBm4KsPE7M6z2el/+fGfn2VufF0+vOjsbC+7Z8w96F9LHF1qyh2XrlzVDLh4YznDHR6HN3pnh+Ycfu/+efffLPsBPLqRRfrCz8/RrC9nT9PUi23LZ+mXNkIsHhjN8Vs4DP33dpfP5Rz8tU+oC/PzDtwcBXl1ohx6VrV/WDLl4YDjD3e4D2w3wk698zfWSyy70zobrQm8sDLrQTy8+aocela1f1gy5eGA4w90ehbYb4J0/PNrZuFoJcLobvJJmdqNsdlevrvZe6SbDtn5ZM+TigeEMd3kQa/KdvUP5CgHeyQ5YVQK8sbThZgDKE/z04q8uPlq92p5eka1f1gy5eGA4w122wD3Dc2I9cUeZBy2we7q6slMchfYHuZ4ywATDGT4rB7HceSOXVRdg99c9HZxGyhPNLvSZB8MZPjMBbvopukOBg+EMsxIycHOA3Ris3R6vRsIDwxlmJWTgxgBnYyh5byRAMJxhVkIGbgpwcRqJFzPggeEMsxIycFOAi4Ecpi8nnMqGwdgva4ZcPDCc4Q670NllDPuL+U7wwfV+/83Hycnd/uWHDLBtMJxhVkIGbgxwmt3qxQx7V/x/61fcHwbYNBjOMCshAzcHuK71G+7fo0/uJQc/KprgUD4DPF0wnGFWQgYOCPDJF/d8RzoNrwtxkryWakzeaxoX4FDGacEiLkUhqhbg49vVoZRHn7zXv3SvEmCn0A0EW+DpguEMsxIycGOA12qHnw/evZccffqQAe5SXG21wXCGuzwPPDIGK00uA9yluNpqg+EMq14PnCaXB7G6FFdbbTCc4S4HctTGUO5dfpgcvP/4LJxGclc05XPmZU+TnY2en/8DZbY8W2vXLMFwhjvcB96tz0e53fcjOI5uxj6Qw02Ml8+Zlz9Nnl589PwDd20xyGx5ttauWYLhDHfZhbZ8Qf9kcFuknxgvmzOveOoD7CMNMluerbVrlmA4w2fsemAFrp8Yr5gzL3uapM3wl3yTDDJbnq21a5ZgOMMMsJCbT4yXz5mXPU2evJJ3oZ0AZsuztXbNEgxnmAEWcgcT4/nZefzTJffwSX7kCmG2PFtr1yzBcIY7CvDh8tJZ3Qf2yS3mzMueuhZ4J9/zhZgtz9baNUswnGG2wJ0EOJszLzvc7PaBV/PTSCCz5dlau2YJhjPMAHfCraurX1a+Zcha7yeKt2OztXbNEgxnmAG2G2B3gtnfhc2168++9/HT17Vux2Zr7ZolGM4wA2w2wMWd17KY+lPLd5Rux2Zr7ZolGM4wA6zNlZ1g9ndhc8/ye0no3I7N1to1SzCc4Q5HYr2TTaZjelZKoAAP7ry2mg3K7O52bCki3QDkh9myfetiLDfI4G0GWAYeF+AzOSulguGhE8xZF7qT27G53eg0otlQk2zfuhzLDTJ4mwGWgUcDvNYrNebWDKF8BtgrP8G8OgjaTge3Yyt2o6sbhnIsN8jgbQZYBh7XAo9TKJ8B9qqdYK6fRhKcYC52o7N2Nuual2O5QQZvM8AycFOAQxTKZ4Cb1cVaUOxGp026e5ofHCvGcjsBDN5mgGXgxgDXJ7VjgI0GON+Nfvr1bK83Pz21M2jaEQZvM8AycGOA18YklwHuRB2tBRuVC5izfevKWG6IwdsMsAzcFOCGSe0YYLMBXvXt8GDferU8uA0xeJsBloGbAzwyqR0DbBdck621a5ZgOMPdBXhoUjsG2Da4Jltr1yzBcIY73AcemtSOATYNrsnW2jVLMJzhLrvQZ/WC/hkZNgquydZqO0OuMXBjCxygUP4sVlst7lkD12RrtZ0h1xiYATZg2Ci4Jlur7Qy5xsDNAU470ee31sadTArlz2K11eKeNXBNtlbbGXKNgRsDvDt3Z/P81tjTwaH8Way2WtyzBq7J1mo7Q64xcFOAj28vJWmAeTnhGQfXZGu1nSHXGLgpwG4ghwswL+g/w2A/BV/louXD7MrijqcJ2GGAheBxLfBa+pcBPpvgcgq+fKj1s+Xslo3CaQKymTmLOz76B0k5XSfn52zzoYYA5/vAm+OGc4TyZ7HaanHPGDiLaXYtxPOP/uOtQYBbTxOQbRbKOz76Byvu7jWD+8dxfs5TfqgpwNlQjrlxl/WH8mex2mpxzxY4m4KvnBKg0oUWTROQBrScCyyfXGghvwCS83O2+VBjgCcrlD+L1VaLe9bArvEt83Q4aBkl0wS4zcLqXxY3gHS3fszuH+e+hvNztvkQAzx7w0bBG8UtZpwGARZOE5DG391vys/P6aK7ku4Df+nthcGrHV0AaStnauDmALvDV7vj5rRjgCMH51PwDRrEMsDSaQI2Ftxns4my3a0f593CAtfhHCK2cqYGbgxwdvj5cHnMVYWh/FmstlrcMwXO5gXwd1b1zXAZYMk0AdlmoZyf09/6cSl9Wswq0uUcIrZypgZuCnBxQT/PA59tcE3drLbZZmGjmJ9ztXYaqds5RGzlTA3cFGB3HtiJI7HONrgmW6vtDLnGwI1d6OwM8P7i5KmxJmrc2qUFhjNsFEwBqX4Qa3+R54EJrslWuzNDrjFwc4AnK5Q/i9VWi0uwccM12cqZGrgpwMU+MANMMJThmmzlTA3cFGBOK0vwBLBNwzXZypkauCnAY88fMcAEWzVck62cqYGbW2DOSkkwYIlrspUzNXBjCxygUD7XrijBNg3XZCtnamAG2IBhPLBNwzXZypkauDnAnJWSYMAS12QrZ2rgxgBzVkqCx4NtGq7JVs7UwE0B5qyUBE8A2zRck62cqYGbAsxZKQmeALZpuCZbOVMDj2uBOSslwVCGa7KVMzVwU4A5KyXBE8A2DddkK2dq4MYAc1ZKgseDbRquyVbO1MDNAZ6sUD7XrijBNg3XZCtnamAG2IBhPLAxw88/8Pd6GMzNs7OxkBRT03d9OxjzAd5Mu88TL0cK5XPtihJszHAazucfXC1v8eAmnE4D/Oy74tvBDG8Z3AM/iZcnW9gyjAZ4M9333V+clOBQPteuKMEGDW8slLd42Hn+4dsLyfOPfiq+HczQlsHfGuZBsZXo+F4wHQU4u5p/c8wZJAaYYHuG0xyVt3jwYa53oQV3fKhuGRzzQTEJbsf3gukowNnV/BOvCA7lc+2KEmzO8LPvfbxT3uIhTWs1wE7t7/hQ2zK4W8MkT76S3xpGsGXI++bFfRr901b3aWSADRjGA1sz/PTrea/WTwrvb2u8VA1w+zs+1LYM/htWdv7waGejYLXcMmR98/I+jf5pq/s0MsAGDOOBjRnOOrWVWzzs1Fvg9nd8qG8ZPHkp4+evC+4Fs7Hgb8/4cQluc59GBtiAYTywMcOrrsldyHqgWWrrAW59x4ehLYPnrLh/8xZYci8Y587dnrF8+qDNfRoZYAOG8cA2DdfUyena4S2DuzVMkt8gxklwLxjXN/eJvVo8Tdrcp7EhwL1SvBqJYCTDNdkabzEi3zffKO4f55968Gnv0zgS4ECF+uTaFSXYpuGabAc475K72zMuFE+TNvdpZIANGMYD2zRck+0AD/rmbmzI56vZcfMW92lkgA0YxgPDGTYKrokXM5j+XUUFhjNsFFwTA2z6dxUVGM6wUXBNDLDp31VUYDjDRsE1McCmf1dRgeEM44EDCQywAcN4YDjDeOBAAgNswDAeGM4wHjiQwAAbMIwHhjOMBw4kMMAGDOOB4QzjgQMJDLABw3hgOMN44EACA2zAMB4YzjAeOJDAABswjAeGM4wHDiSEBPjger9/K/vvzccMMMGAhvHAgYSAAB/dvJXsXbqX7F1hC0wwqGE8cCAhIMB7abN7cvdWsn6DASYY1DAeOJAQ0oXOWuGTL+7lT15LNf7tA4370UMZpwVrcQnGNYwHPiVpQoC333x89Ml7/UtFhtkCn20wnGE8cCAhLMDblx8mB+/eS44+fcgAEwxoGA8cSAgK8HbR8h59UjTBHTic9Y9uxzAeGM4wHjiQEBJg1/4ywAQjG8YDBxICAuz6zqn2XDf6fZ4HJhjRMB44kBAQ4PW+061ku98vm2IG+GyD4QzjgQMJIV3oJnXgcNY/uh3DeGA4w3jgQAIDbMAwHhjOMB44kMAAGzCMB4YzjAcOJDDABgzjgeEM44EDCQywAcN4YDjDeOBAAgNswDAeGM4wHjiQwAAbMIwHhjOMBw4kMMAGDOOB4QzjgQMJDLABw3hgOMN44EACA2zAMB4YzjAeOJDAABswjAeGM4wHDiQwwAYM44HhDOOBAwkMsAHDeGA4w3jgQAIDbMAwHhjOMB44kMAAGzCMB4YzjAcOJDDABgzjgeEM44EDCQywAcN4YDjDeOBAAgNswDAeGM4wHjiQwAAbMIwHhjOMBw4kMMAGDOOB4QzjgQMJDLABw3hgOMN44EACA2zAMB4YzjAeOJDAABswjAeGM4wHDiQwwAYM44HhDOOBAwkMsAHDeGA4w3jgQAIDbMAwHhjOMB44kMAAGzCMB4YzjAcOJDDABgzjgeEM44EDCQywAcN4YDjDeOBAAgNswDAeGM4wHjiQwAAbMIwHhjOMBw4kMMAGDOOB4QzjgQMJDLABw3hgOMN44EACA2zAMB4YzjAeOJDAABswjAeGM4wHDiQwwAYM44HhDOOBAwkMsAHDeGA4w3jgQELbAIdq3I+uBYYzjAeGM4wHPiWJLfAMDeOB4QzjgQMJDLABw3hgOMN44EACA2zAMB4YzjAeOJDAABswjAeGM4wHDiQwwAYM44HhDOOBAwkMsAHDeGA4w3jgQAIDbMAwHhjOMB44kMAAGzCMB4YzjAcOJDDABgzjgeEM44EDCQywAcN4YDjDeOBAAgNswDAeGM4wHjiQwAAbMIwHhjOMBw4kMMAGDOOB4QzjgQMJDLABw3hgOMN44EACA2zAMB4YzjAeOJDAABswjAeGM4wHDiQwwAYM44HhDOOBAwkMsAHDeGA4w3jgQAIDbMAwHhjOMB44kMAAGzCMB4YzjAcOJDDABgzjgeEM44EDCQywAcN4YDjDeOBAAgNswDAeGM4wHjiQwAAbMIwHhjOMBw4kMMAGDOOB4QzjgQMJDLABw3hgOMN44EACA2zAMB4YzjAeOJDAABswjAeGM4wHDiQwwAYM44HhDOOBAwkMsAHDeGA4w3jgQAIDbMAwHhjOMB44kMAAGzCMB4YzjAcOJDDABgzjgeEM44EDCQywAcN4YDjDeOBAAgNswDAeGM4wHjiQwAAbMIwHhjOMBw4kMMAGDOOB4QzjgQMJDLABw3hgOMN44EACA2zAMB4YzjAeOJDAABswjAeGM4wHDiScIsAnd/uXHzLABCMaxgMHEk4R4PUr7g8DTDCgYTxwICE8wEef3EsOflQ0wR04nPWPbscwHhjOMB44kBAeYBdeF2IGmGA8w3jgQEKbAL+WauLbc4370UMZpwVrcQnGNYwHPiVJqwWuby1afYpgA1w8MJzhdmAGOC4wnGFWQgYOD3C7g1hyhwRb4OKB4QxrB7jdaSS5Q4ItcPHAcIbVA3x0s8VADrlDgi1w8cBwhtUDXNP0HBJsgYsHhjPMABMMaJiVkIEZ4LjAcIZZCRmYAY4LDGeYlZCBGeC4wHCGWQkZmAGOCwxnmJWQgRnguMBwhlkJGZgBjgsMZ5iVkIEZ4LjAcIZZCRmYAY4LDGeYlZCB2wa4lYKvIibYGhcPDGdYBmaA4wDDGWYlugEzwHGA4QyzEt2AGeA4wHCGWYluwFMJMEVROmKAKQpYDDBFAYsBpiLT0c0rk98UjRhgakbSC9pev//mYyW2jtZTv9v9fouCMMDUzKQYtIPrlYnczGs7LcNe6nf99AkGD/DZ6i7NRLolVgza0U2UCJ98cc9P/lqZvjlY4AFG7C7BSbnEKkFLPbfpkM5Gbur1k7s3zmaAE7TuEqTUSqwRtJO7YBt1f++Ed9NWeO/0tqcT4MGtWbS+AKa7BKvuS6wUNPWVrXul3We3G3x088apPxpDgKG6S5jSKLHaSuE2DDrb822H3bvUue/UcQrd658+v/ABhusu4UmtxHpB833+7jfq25nbg+stgjZOkuOEUwrwzX6ujn9hU+gu/R+c426la1glaJn21Fa2FruqE9T+OGEMLbDKVtxtc265FQxvk9OxNBtKp86DlkH7bTqkY1X+6locLJ6slscJ0QPspLEVP7l7xR0YXMfZ81OVWkOpETRntvv91CQ70+O0rbTT1uY4YQwBTrS6S+sKbYPW3oTaXkqh7htKpaDpjTzJd363NbYObY8TxnAeWK27pLGlxWyBVUoMOIpuva9yxkNwnHBKLfDf5O4630xLWHcAAAXXSURBVHvQ6i5lAe56nU0QA6xW4n8uHv1nxyuF1tkeLUnWiakdhc6y0HWA1bbigAFuf0XLWOmV+OYt///J3Y775lpne/QkOE44tX3gdb9BVDl+pyG8XUrBFS0z0sH1W4nmcf7uz/ZodaGdWh4nnN5BrKObaT07b4G12jPlHbT1zncpJVe0TJBaj3Svfyv9q3acv/NK5CvFutZJtTYb9Wkehd7r34AJsOY1OConViVXtIyXYo9079J7nR8bUzzbs16ANTbuLY8TTvc0UufnZdRPMHe/sU2hbz4++lQjwG2vaJkI9lLokeocadI626PXtAuOE075NFLXK676rmrn1+Bka0H3AZZc0TJWuuOPtlV+bzq7qmqVsD8WWk2AlzmlHWiNFlhyRcsErlKPVH3j27lUu9AtBX4eGPMyp3WcdTZRHn+kqO6HjmkfxGoj9PPAakehdcdb7HU/sElRiidP1NT9cf6cqlkJs1PqTOE8cMdX/alfg9P56U9nGCpkil1o7V+eIYGfB1a76s9L8WLV7rV+ZbC7qiGVq/4SH7Zb3RKVjvNPQ6dvhsDPA6td9VdIY0eqf+lfut/B9iXWONOTSadHmmpbaSCHSoD3Lj90G/XOqyxohmI4D6xx1Z+XxjU47lDmwfUrSddDHjUDrNcjPbiucGhM6zi/P2udNkGdd3QkzRD6eWCtq/5UL3M6uXur88MBegFW7JGuax3KUznOX/7aVMbKtGyGYjgPrHHR0EH/cvdQJ7gA6/VI9zSnI1Q4zu8r4X5tKudSWjZDDPDLpDQWWi3Aasd0tXqk2gM59C5zOnhfoQVuuRZPeSDHyT8hDaXUGAutFWBVYY08UVNx2KLrKzbtBzjJ98/X4eZw7n4sNNwAQi/NkSfdDy1WOc6vNxJLsk5MqwvtxmJtY62zYLd80B7IoXOq3ZM7DrDScX6n7b7GiQmJprcPvNfv+oS9quBu+aA9kENPCofz4HZSMpkdSpm1wHvdn5dBvOWDzgQXykehNcUAFzIb4LQ5Q9sHVhu8oDTBBQNcSDHASvMGljIbYLWj0IV0BupqjIXWmuACL8BqU9yrBVh93kCzAVaW2kBdzTtkwQzkQDtsrmZYcd7AXGYDrDexu+qlYxpjobUmuEA8GgAmtXkD7Z9GUrugX2+grtZYaLgJLvQCrHa+Vklq8wZKBH5Bv9pAXc15obEmuFC8lYTSdVlqfX61eQMFN5lBv6Bf7dIxSlvKp3u6nyhAbd5AyU1mwC/od+JAXUzpBrj7iQIUJbjJDPgF/ZmwpogDk+rRMa0Aq0wUoKj2N5kBv6C/kN5AXUpLmgMu4DborW8yE8V5YApRak276kQBWmo7tpYBpiIT3MiTTC1vMsMAU9SMZX8gB0VRKmKAKQpYDDBFAYsBpihgMcAUBSwGmKKAxQBTFLAY4Jh0uNzr9c49SB/trjS9ujR4kr7hcHml+TUKRwxwRNrtuUSuzd2pZbNUNaTDb2CAQcUAR6S1effv8e15BvjMiAGORy65mfYXe73zW2mL3Ov5XG6mD+azkG76Jf4N/+NDPPzaZvahw3d+nHXGKdNigCPSbq9IsG9gXY/6cDldtOk71UsupJu9lfIN/k3Dr7nn+4tL6bJ0C0CZFwMck1zD6ptNl83j266t3Z27U3SP0/938/yWAR5+LXu+e+4B+9QYYoAj0/HtXn4Qa3/RhTX9N3vgwvmtXpHKIsDDr6V5zz7UuBdNmRMDHJ/WXPtZZDN9tP8nd/zyw+W5n+QPBwEees3tNjsxwCBigONR0Zr6XnNjC7yUrOV7tqMtcPZa1gIno4epKZtigONRcRR6N2uBm/aBK4Ed2Qf2r5W5ZYAxxABHpF137ij9dynLZe0odJpuv3AtOzfkHpdHoauvueduLAgDjCEGOCb5oZS+E7z2svPAPtHZG0bOA2dpz0ZjMsAYYoApClgMMEUBiwGmKGAxwBQFLAaYooDFAFMUsBhgigIWA0xRwGKAKQpYDDBFAev/AeVPcl2x5KSgAAAAAElFTkSuQmCC" style="display: block; margin: auto;" />
<div class="sourceCode" id="cb18"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb18-1"><a href="#cb18-1" aria-hidden="true" tabindex="-1"></a><span class="co">#Top-10 losses</span></span>
<span id="cb18-2"><a href="#cb18-2" aria-hidden="true" tabindex="-1"></a>df_bottom10 <span class="ot"><-</span> <span class="fu">tail</span>(df_grouped, <span class="dv">10</span>)</span>
<span id="cb18-3"><a href="#cb18-3" aria-hidden="true" tabindex="-1"></a>df_bottom10<span class="sc">$</span>percent_change <span class="ot"><-</span> <span class="fu">abs</span>(df_bottom10<span class="sc">$</span>percent_change)</span>
<span id="cb18-4"><a href="#cb18-4" aria-hidden="true" tabindex="-1"></a>df_bottom10<span class="sc">$</span>Ticker <span class="ot"><-</span> <span class="fu">factor</span>(df_bottom10<span class="sc">$</span>Ticker, </span>
<span id="cb18-5"><a href="#cb18-5" aria-hidden="true" tabindex="-1"></a> <span class="at">levels=</span>df_bottom10<span class="sc">$</span>Ticker[<span class="fu">order</span>(<span class="sc">-</span>df_bottom10<span class="sc">$</span>percent_change)])</span>
<span id="cb18-6"><a href="#cb18-6" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb18-7"><a href="#cb18-7" aria-hidden="true" tabindex="-1"></a><span class="co"># Plot</span></span>
<span id="cb18-8"><a href="#cb18-8" aria-hidden="true" tabindex="-1"></a>date <span class="ot">=</span> <span class="fu">unique</span>(df_bottom10<span class="sc">$</span>date)</span>
<span id="cb18-9"><a href="#cb18-9" aria-hidden="true" tabindex="-1"></a><span class="fu">ggplot</span>(df_bottom10, <span class="fu">aes</span>(<span class="at">x=</span>Ticker, <span class="at">y=</span>percent_change)) <span class="sc">+</span> </span>
<span id="cb18-10"><a href="#cb18-10" aria-hidden="true" tabindex="-1"></a><span class="fu">geom_col</span>(<span class="at">width=</span><span class="fl">0.3</span>, <span class="at">color=</span><span class="st">'red'</span>, <span class="at">fill=</span><span class="st">'red'</span>) <span class="sc">+</span> </span>
<span id="cb18-11"><a href="#cb18-11" aria-hidden="true" tabindex="-1"></a><span class="fu">theme</span>(<span class="at">axis.text.x =</span> <span class="fu">element_text</span>(<span class="at">angle=</span><span class="dv">90</span>),<span class="at">text =</span> <span class="fu">element_text</span>(<span class="at">size=</span><span class="dv">12</span>),</span>
<span id="cb18-12"><a href="#cb18-12" aria-hidden="true" tabindex="-1"></a> <span class="at">plot.title =</span> <span class="fu">element_text</span>(<span class="at">hjust =</span> <span class="fl">0.5</span>)) <span class="sc">+</span> </span>
<span id="cb18-13"><a href="#cb18-13" aria-hidden="true" tabindex="-1"></a><span class="fu">labs</span>(<span class="at">y=</span><span class="st">"Percent decrease"</span>, <span class="at">x =</span><span class="st">"Stock ticker"</span>, </span>
<span id="cb18-14"><a href="#cb18-14" aria-hidden="true" tabindex="-1"></a> <span class="at">title =</span> <span class="fu">paste0</span>(<span class="st">"Highest stock price decrease on "</span>,date)) <span class="sc">+</span> </span>
<span id="cb18-15"><a href="#cb18-15" aria-hidden="true" tabindex="-1"></a><span class="fu">geom_text</span>(<span class="fu">aes</span>(<span class="at">label=</span>percent_change_chr), <span class="at">vjust =</span><span class="sc">-</span><span class="fl">0.5</span>, <span class="at">size=</span><span class="dv">3</span>)</span></code></pre></div>
<img src="data:image/png;base64,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" style="display: block; margin: auto;" />
<p>From the plot above we can see that on 16th Nov 2020, the stock price for ZXZZT(NASDAQ TEST STOCK) noticed maximum gain of 93.91%. After that, the highest gain was noticed by AIRTW (Air T, Inc.) which was 51.34% and WWR(Westwater Resources, Inc.) which was 45.48%.<br />
On similar lines, the stock price for KTOVW(Kitov Pharma Ltd. Warrants) noticed highest loss of -43.93%. Thus this plot allows the user to find out the biggest gainers and losers on any given day.</p>
<!--*************************************************************************-->
<h2 id="contingency-tables">Contingency tables</h2>
<p>Here we have used <code>get_ticker_info</code> function to get ticker information such as its type and its primary exchange for all the tickers supported by Polygon.io. in the <strong>stock</strong> market. Hence the input argument to the function call is “stocks”.</p>
<h3 id="one-way">One-way</h3>
<p>Here we have created a contingency table using ticker type information for the stock market. When fetching data from the <a href="https://polygon.io/docs/stocks/get_v3_reference_tickers">Ticker Endpoint</a> in <code>df_info</code>, we get the abbrevations of ticker types. In order to fetch the descriptions of ticker type (For example: <strong>CS</strong> means <strong>Common Stocks</strong>) we have fetched data from the <a href="https://polygon.io/docs/stocks/get_v3_reference_tickers_types">Ticker Types Endpoint</a> in <code>df_tickertype_metadata</code>. Then we took the <code>left_join</code> of the two tibbles in order to get all the information in a single tibble which is then used to create the contingency table.</p>
<div class="sourceCode" id="cb19"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb19-1"><a href="#cb19-1" aria-hidden="true" tabindex="-1"></a>df_info <span class="ot"><-</span> <span class="fu">get_ticker_info</span>(<span class="st">"stocks"</span>)</span>
<span id="cb19-2"><a href="#cb19-2" aria-hidden="true" tabindex="-1"></a><span class="fu">Sys.sleep</span>(<span class="dv">5</span>)</span>
<span id="cb19-3"><a href="#cb19-3" aria-hidden="true" tabindex="-1"></a>df_tickertype_metadata <span class="ot"><-</span> <span class="fu">get_ticker_type_details</span>() <span class="sc">%>%</span> <span class="fu">select</span>(code,description)</span>
<span id="cb19-4"><a href="#cb19-4" aria-hidden="true" tabindex="-1"></a><span class="fu">Sys.sleep</span>(<span class="dv">5</span>)</span>
<span id="cb19-5"><a href="#cb19-5" aria-hidden="true" tabindex="-1"></a>df_tables <span class="ot"><-</span> <span class="fu">left_join</span>(df_info,df_tickertype_metadata,<span class="at">by=</span><span class="fu">c</span>(<span class="st">"type"</span><span class="ot">=</span><span class="st">"code"</span>))</span>
<span id="cb19-6"><a href="#cb19-6" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb19-7"><a href="#cb19-7" aria-hidden="true" tabindex="-1"></a>tab1 <span class="ot"><-</span> <span class="fu">table</span>(df_tables<span class="sc">$</span>description,<span class="at">dnn=</span><span class="fu">c</span>(<span class="st">"Ticker Types"</span>))</span>
<span id="cb19-8"><a href="#cb19-8" aria-hidden="true" tabindex="-1"></a>tab1 <span class="sc">%>%</span></span>
<span id="cb19-9"><a href="#cb19-9" aria-hidden="true" tabindex="-1"></a> <span class="fu">kbl</span>(<span class="at">caption=</span><span class="st">"Table for Ticker Types"</span>) <span class="sc">%>%</span></span>
<span id="cb19-10"><a href="#cb19-10" aria-hidden="true" tabindex="-1"></a> <span class="fu">kable_classic</span>(<span class="at">full_width =</span> F)</span></code></pre></div>
<table class=" lightable-classic" style="font-family: "Arial Narrow", "Source Sans Pro", sans-serif; width: auto !important; margin-left: auto; margin-right: auto;">
<caption>
Table for Ticker Types
</caption>
<thead>
<tr>
<th style="text-align:left;">
Ticker.Types
</th>
<th style="text-align:right;">
Freq
</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align:left;">
American Depository Receipt Common
</td>
<td style="text-align:right;">
40
</td>
</tr>
<tr>
<td style="text-align:left;">
Common Stock
</td>
<td style="text-align:right;">
561
</td>
</tr>
<tr>
<td style="text-align:left;">
Exchange Traded Fund
</td>
<td style="text-align:right;">
110
</td>
</tr>
<tr>
<td style="text-align:left;">
Exchange Traded Note
</td>
<td style="text-align:right;">
5
</td>
</tr>
<tr>
<td style="text-align:left;">
Fund
</td>
<td style="text-align:right;">
15
</td>
</tr>
<tr>
<td style="text-align:left;">
Preferred Stock
</td>
<td style="text-align:right;">
56
</td>
</tr>
<tr>
<td style="text-align:left;">
Rights
</td>
<td style="text-align:right;">
9
</td>
</tr>
<tr>
<td style="text-align:left;">
Structured Product
</td>
<td style="text-align:right;">
16
</td>
</tr>
<tr>
<td style="text-align:left;">
Unit
</td>
<td style="text-align:right;">
72
</td>
</tr>
<tr>
<td style="text-align:left;">
Warrant
</td>
<td style="text-align:right;">
106
</td>
</tr>
</tbody>
</table>
<p>From the table we can see that the number of CS (Common Stock) is 561 and the number of ARDC (American Depository Receipt Common) is 40.</p>
<h3 id="two-way">Two-way</h3>
<p>Similarly here we have created a two way contingency table for the number of ticker types for each stock exchange. When fetching data from the <a href="https://polygon.io/docs/stocks/get_v3_reference_tickers">Ticker Endpoint</a> in <code>df_info</code>, we get the abbrevations stock exchanges. Here we tried to use <a href="https://polygon.io/docs/stocks/get_v3_reference_exchanges">Exchange Endpoint</a> to get the full name of the stock exchanges (For example: <strong>XNYS</strong> is <strong>NYSE American, LLC</strong>) but there we multiple exchange information for each exchange which made the table very complicated to understand. For that reason we let the exchange abbrevations be.</p>
<div class="sourceCode" id="cb20"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb20-1"><a href="#cb20-1" aria-hidden="true" tabindex="-1"></a>tab2 <span class="ot"><-</span> <span class="fu">table</span>(df_tables<span class="sc">$</span>description,df_info<span class="sc">$</span>primary_exchange,<span class="at">dnn=</span><span class="fu">c</span>(<span class="st">"Ticker Types"</span>,<span class="st">"Exchanges"</span>))</span>
<span id="cb20-2"><a href="#cb20-2" aria-hidden="true" tabindex="-1"></a>tab2 <span class="sc">%>%</span></span>
<span id="cb20-3"><a href="#cb20-3" aria-hidden="true" tabindex="-1"></a> <span class="fu">kbl</span>(<span class="at">caption=</span><span class="st">"Table for Ticker Types and Exchanges"</span>) <span class="sc">%>%</span></span>
<span id="cb20-4"><a href="#cb20-4" aria-hidden="true" tabindex="-1"></a> <span class="fu">kable_classic</span>(<span class="at">full_width =</span> F)</span></code></pre></div>
<table class=" lightable-classic" style="font-family: "Arial Narrow", "Source Sans Pro", sans-serif; width: auto !important; margin-left: auto; margin-right: auto;">
<caption>
Table for Ticker Types and Exchanges
</caption>
<thead>
<tr>
<th style="text-align:left;">
</th>
<th style="text-align:right;">
ARCX
</th>
<th style="text-align:right;">
BATS
</th>
<th style="text-align:right;">
XASE
</th>
<th style="text-align:right;">
XNAS
</th>
<th style="text-align:right;">
XNYS
</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align:left;">
American Depository Receipt Common
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
1
</td>
<td style="text-align:right;">
23
</td>
<td style="text-align:right;">
16
</td>
</tr>
<tr>
<td style="text-align:left;">
Common Stock
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
19
</td>
<td style="text-align:right;">
359
</td>
<td style="text-align:right;">
183
</td>
</tr>
<tr>
<td style="text-align:left;">
Exchange Traded Fund
</td>
<td style="text-align:right;">
71
</td>
<td style="text-align:right;">
17
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
22
</td>
<td style="text-align:right;">
0
</td>
</tr>
<tr>
<td style="text-align:left;">
Exchange Traded Note
</td>
<td style="text-align:right;">
5
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
0
</td>
</tr>
<tr>
<td style="text-align:left;">
Fund
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
1
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
14
</td>
</tr>
<tr>
<td style="text-align:left;">
Preferred Stock
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
8
</td>
<td style="text-align:right;">
48
</td>
</tr>
<tr>
<td style="text-align:left;">
Rights
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
9
</td>
<td style="text-align:right;">
0
</td>
</tr>
<tr>
<td style="text-align:left;">
Structured Product
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
16
</td>
</tr>
<tr>
<td style="text-align:left;">
Unit
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
2
</td>
<td style="text-align:right;">
51
</td>
<td style="text-align:right;">
19
</td>
</tr>
<tr>
<td style="text-align:left;">
Warrant
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
0
</td>
<td style="text-align:right;">
3
</td>
<td style="text-align:right;">
78
</td>
<td style="text-align:right;">
25
</td>
</tr>
</tbody>
</table>
<p>From the table above we can see that there are 359 <strong>Common Stock</strong> type tickers in the <strong>XNYS</strong> (New York stock exchange). And similarly this table helps us to identify the total number of each ticker type in each exchange.</p>
<!--*************************************************************************-->
<h2 id="numerical-summaries">Numerical summaries</h2>
<p>Here we have created summary Statistics for <strong>open_price</strong> and <strong>close_price</strong> for each company between 2022-01-01 and 2022-08-31. The summary statistics includes minimum, maximum, median, mean, quartile and standard deviation of prices for the 3 stocks.</p>
<div class="sourceCode" id="cb21"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb21-1"><a href="#cb21-1" aria-hidden="true" tabindex="-1"></a><span class="co"># Open Price</span></span>
<span id="cb21-2"><a href="#cb21-2" aria-hidden="true" tabindex="-1"></a>df_combined_open <span class="ot"><-</span> df_combined <span class="sc">%>%</span> </span>
<span id="cb21-3"><a href="#cb21-3" aria-hidden="true" tabindex="-1"></a> <span class="fu">group_by</span>(company_name) <span class="sc">%>%</span> </span>
<span id="cb21-4"><a href="#cb21-4" aria-hidden="true" tabindex="-1"></a> <span class="fu">summarise</span>(<span class="st">"Min."</span> <span class="ot">=</span> <span class="fu">min</span>(open_price),</span>
<span id="cb21-5"><a href="#cb21-5" aria-hidden="true" tabindex="-1"></a> <span class="st">"1st Quartile"</span> <span class="ot">=</span> <span class="fu">quantile</span>(open_price,<span class="fl">0.25</span>),</span>
<span id="cb21-6"><a href="#cb21-6" aria-hidden="true" tabindex="-1"></a> <span class="st">"Median."</span> <span class="ot">=</span> <span class="fu">median</span>(open_price),</span>
<span id="cb21-7"><a href="#cb21-7" aria-hidden="true" tabindex="-1"></a> <span class="st">"Mean."</span><span class="ot">=</span><span class="fu">mean</span>(open_price),</span>
<span id="cb21-8"><a href="#cb21-8" aria-hidden="true" tabindex="-1"></a> <span class="st">"3rd Quartile"</span> <span class="ot">=</span> <span class="fu">quantile</span>(open_price,<span class="fl">0.75</span>),</span>
<span id="cb21-9"><a href="#cb21-9" aria-hidden="true" tabindex="-1"></a> <span class="st">"Max."</span><span class="ot">=</span> <span class="fu">max</span>(open_price),</span>
<span id="cb21-10"><a href="#cb21-10" aria-hidden="true" tabindex="-1"></a> <span class="st">"Std. Dev."</span> <span class="ot">=</span> <span class="fu">sd</span>(open_price))</span>
<span id="cb21-11"><a href="#cb21-11" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb21-12"><a href="#cb21-12" aria-hidden="true" tabindex="-1"></a><span class="co"># Close Price</span></span>
<span id="cb21-13"><a href="#cb21-13" aria-hidden="true" tabindex="-1"></a>df_combined_close <span class="ot"><-</span> df_combined <span class="sc">%>%</span> </span>
<span id="cb21-14"><a href="#cb21-14" aria-hidden="true" tabindex="-1"></a> <span class="fu">group_by</span>(company_name) <span class="sc">%>%</span> </span>
<span id="cb21-15"><a href="#cb21-15" aria-hidden="true" tabindex="-1"></a> <span class="fu">summarise</span>(<span class="st">"Min."</span> <span class="ot">=</span> <span class="fu">min</span>(close_price),</span>
<span id="cb21-16"><a href="#cb21-16" aria-hidden="true" tabindex="-1"></a> <span class="st">"1st Quartile"</span> <span class="ot">=</span> <span class="fu">quantile</span>(close_price,<span class="fl">0.25</span>),</span>
<span id="cb21-17"><a href="#cb21-17" aria-hidden="true" tabindex="-1"></a> <span class="st">"Median."</span> <span class="ot">=</span> <span class="fu">median</span>(close_price),</span>
<span id="cb21-18"><a href="#cb21-18" aria-hidden="true" tabindex="-1"></a> <span class="st">"Mean."</span><span class="ot">=</span><span class="fu">mean</span>(close_price),</span>
<span id="cb21-19"><a href="#cb21-19" aria-hidden="true" tabindex="-1"></a> <span class="st">"3rd Quartile"</span> <span class="ot">=</span> <span class="fu">quantile</span>(close_price,<span class="fl">0.75</span>),</span>
<span id="cb21-20"><a href="#cb21-20" aria-hidden="true" tabindex="-1"></a> <span class="st">"Max."</span><span class="ot">=</span> <span class="fu">max</span>(close_price),</span>
<span id="cb21-21"><a href="#cb21-21" aria-hidden="true" tabindex="-1"></a> <span class="st">"Std. Dev."</span> <span class="ot">=</span> <span class="fu">sd</span>(close_price))</span>
<span id="cb21-22"><a href="#cb21-22" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb21-23"><a href="#cb21-23" aria-hidden="true" tabindex="-1"></a>df_combined_open <span class="sc">%>%</span></span>
<span id="cb21-24"><a href="#cb21-24" aria-hidden="true" tabindex="-1"></a> <span class="fu">kbl</span>(<span class="at">caption=</span><span class="fu">paste0</span>(<span class="st">"Summary Statistics for Open Price per Company between "</span>,start_date,<span class="st">" and "</span>,end_date)) <span class="sc">%>%</span></span>
<span id="cb21-25"><a href="#cb21-25" aria-hidden="true" tabindex="-1"></a> <span class="fu">kable_classic</span>()</span></code></pre></div>
<table class=" lightable-classic" style="font-family: "Arial Narrow", "Source Sans Pro", sans-serif; margin-left: auto; margin-right: auto;">
<caption>
Summary Statistics for Open Price per Company between 2022-01-01 and
2022-08-31
</caption>
<thead>
<tr>
<th style="text-align:left;">
company\_name
</th>
<th style="text-align:right;">
Min.
</th>
<th style="text-align:right;">
1st Quartile
</th>
<th style="text-align:right;">
Median.
</th>
<th style="text-align:right;">
Mean.
</th>
<th style="text-align:right;">
3rd Quartile
</th>
<th style="text-align:right;">
Max.
</th>
<th style="text-align:right;">
Std. Dev.
</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align:left;">
Apple Inc.
</td>
<td style="text-align:right;">
150.9000
</td>
<td style="text-align:right;">
163.5850
</td>
<td style="text-align:right;">
169.4500
</td>
<td style="text-align:right;">
167.8854
</td>
<td style="text-align:right;">
172.6075
</td>
<td style="text-align:right;">
182.6300
</td>
<td style="text-align:right;">
7.00711
</td>
</tr>
<tr>
<td style="text-align:left;">
Nvidia Corp
</td>
<td style="text-align:right;">
210.1500
</td>
<td style="text-align:right;">
231.9650
</td>
<td style="text-align:right;">
243.2500
</td>
<td style="text-align:right;">
247.4482
</td>
<td style="text-align:right;">
260.5800
</td>
<td style="text-align:right;">
302.7700
</td>
<td style="text-align:right;">
22.16117
</td>
</tr>
<tr>
<td style="text-align:left;">
Tesla, Inc. Common Stock
</td>
<td style="text-align:right;">
233.4633
</td>
<td style="text-align:right;">
284.2208
</td>
<td style="text-align:right;">
302.3166
</td>
<td style="text-align:right;">
308.5580
</td>
<td style="text-align:right;">
333.0283
</td>
<td style="text-align:right;">
396.5167
</td>
<td style="text-align:right;">
35.48938
</td>
</tr>
</tbody>
</table>
<div class="sourceCode" id="cb22"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb22-1"><a href="#cb22-1" aria-hidden="true" tabindex="-1"></a>df_combined_close <span class="sc">%>%</span></span>
<span id="cb22-2"><a href="#cb22-2" aria-hidden="true" tabindex="-1"></a> <span class="fu">kbl</span>(<span class="at">caption=</span><span class="fu">paste0</span>(<span class="st">"Summary Statistics for Close Price per Company between "</span>,start_date,<span class="st">" and "</span>,end_date)) <span class="sc">%>%</span></span>
<span id="cb22-3"><a href="#cb22-3" aria-hidden="true" tabindex="-1"></a> <span class="fu">kable_classic</span>()</span></code></pre></div>
<table class=" lightable-classic" style="font-family: "Arial Narrow", "Source Sans Pro", sans-serif; margin-left: auto; margin-right: auto;">
<caption>
Summary Statistics for Close Price per Company between 2022-01-01 and
2022-08-31
</caption>
<thead>
<tr>
<th style="text-align:left;">
company\_name
</th>
<th style="text-align:right;">
Min.
</th>
<th style="text-align:right;">
1st Quartile
</th>
<th style="text-align:right;">
Median.
</th>
<th style="text-align:right;">
Mean.
</th>
<th style="text-align:right;">
3rd Quartile
</th>
<th style="text-align:right;">
Max.
</th>
<th style="text-align:right;">
Std. Dev.
</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align:left;">
Apple Inc.
</td>
<td style="text-align:right;">
150.62
</td>
<td style="text-align:right;">
162.7925
</td>
<td style="text-align:right;">
168.7600
</td>
<td style="text-align:right;">
167.6362
</td>
<td style="text-align:right;">
172.7300
</td>
<td style="text-align:right;">
182.0100
</td>
<td style="text-align:right;">
6.987583
</td>
</tr>
<tr>
<td style="text-align:left;">
Nvidia Corp
</td>
<td style="text-align:right;">
213.30
</td>
<td style="text-align:right;">
231.0350
</td>
<td style="text-align:right;">
242.4350
</td>
<td style="text-align:right;">
246.5286
</td>
<td style="text-align:right;">
263.4700
</td>
<td style="text-align:right;">
301.2100
</td>
<td style="text-align:right;">
21.101257
</td>
</tr>
<tr>
<td style="text-align:left;">
Tesla, Inc. Common Stock
</td>
<td style="text-align:right;">
254.68
</td>
<td style="text-align:right;">
280.3517
</td>
<td style="text-align:right;">
302.1667
</td>
<td style="text-align:right;">
306.7592
</td>
<td style="text-align:right;">
327.5708
</td>
<td style="text-align:right;">
399.9267
</td>
<td style="text-align:right;">
34.140396
</td>
</tr>
</tbody>
</table>
<!--*************************************************************************-->
<h2 id="box-plots">Box plots</h2>
<p>The above numerical summaries can be visualized using a box plot. Here we have created a box plot for <strong>highest stock price</strong> and **lowest stock *price** for each company between 2022-01-01 and 2022-08-31.</p>
<div class="sourceCode" id="cb23"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb23-1"><a href="#cb23-1" aria-hidden="true" tabindex="-1"></a><span class="fu">ggplot</span>(df_combined, <span class="fu">aes</span>(<span class="at">x=</span>company_name, <span class="at">y=</span>highest_price)) <span class="sc">+</span> </span>
<span id="cb23-2"><a href="#cb23-2" aria-hidden="true" tabindex="-1"></a> <span class="fu">geom_boxplot</span>(<span class="at">color=</span><span class="st">"blue"</span>,<span class="at">fill=</span><span class="st">"grey"</span>) <span class="sc">+</span> </span>
<span id="cb23-3"><a href="#cb23-3" aria-hidden="true" tabindex="-1"></a> <span class="fu">labs</span>(<span class="at">y=</span><span class="st">"Highest price"</span>, <span class="at">x =</span><span class="st">"Company Name"</span>, </span>
<span id="cb23-4"><a href="#cb23-4" aria-hidden="true" tabindex="-1"></a> <span class="at">title=</span><span class="fu">paste0</span>(<span class="st">"Boxplot for highest stock price between "</span>,start_date,<span class="st">" and "</span>,end_date)) </span></code></pre></div>
<img src="data:image/png;base64,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" style="display: block; margin: auto;" />
From the above plot we can see that mean highest price for Apple is
lowest followed by Nvidia and then Tesla. From the width of the box plot
we can also infer that highest price for Tesla has varied the most in
the given date range where as Apple’s highest price has varied the
least.
<div class="sourceCode" id="cb24"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb24-1"><a href="#cb24-1" aria-hidden="true" tabindex="-1"></a><span class="fu">ggplot</span>(df_combined, <span class="fu">aes</span>(<span class="at">x=</span>company_name, <span class="at">y=</span>lowest_price)) <span class="sc">+</span> </span>
<span id="cb24-2"><a href="#cb24-2" aria-hidden="true" tabindex="-1"></a> <span class="fu">geom_boxplot</span>(<span class="at">color=</span><span class="st">"red"</span>,<span class="at">fill=</span><span class="st">"grey"</span>) <span class="sc">+</span> </span>
<span id="cb24-3"><a href="#cb24-3" aria-hidden="true" tabindex="-1"></a> <span class="fu">labs</span>(<span class="at">y=</span><span class="st">"Lowest price"</span>, <span class="at">x =</span><span class="st">"Company Name"</span>, </span>
<span id="cb24-4"><a href="#cb24-4" aria-hidden="true" tabindex="-1"></a> <span class="at">title=</span><span class="fu">paste0</span>(<span class="st">"Boxplot for lowest stock price between "</span>,start_date,<span class="st">" and "</span>,end_date)) </span></code></pre></div>
<img src="data:image/png;base64,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" style="display: block; margin: auto;" />
The above plot for lowest price is analogous the box plot for the
highest price. It follows the same trend as seen in the plot for highest
price.
<!--*************************************************************************-->
<h2 id="histogram">Histogram</h2>
<p>Here we have used the <code>df_combined</code> to create a histogram for the <strong>weighted average stock price</strong> for each company.</p>
<div class="sourceCode" id="cb25"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb25-1"><a href="#cb25-1" aria-hidden="true" tabindex="-1"></a>wrapper <span class="ot"><-</span> <span class="cf">function</span>(x, ...) </span>
<span id="cb25-2"><a href="#cb25-2" aria-hidden="true" tabindex="-1"></a>{</span>
<span id="cb25-3"><a href="#cb25-3" aria-hidden="true" tabindex="-1"></a> <span class="fu">paste</span>(<span class="fu">strwrap</span>(x, ...), <span class="at">collapse =</span> <span class="st">"</span><span class="sc">\n</span><span class="st">"</span>)</span>
<span id="cb25-4"><a href="#cb25-4" aria-hidden="true" tabindex="-1"></a>}</span>
<span id="cb25-5"><a href="#cb25-5" aria-hidden="true" tabindex="-1"></a>my_title <span class="ot"><-</span> <span class="fu">paste0</span>(<span class="st">"Histogram of weighted average price per company between "</span>,start_date,<span class="st">" and "</span>,end_date)</span>
<span id="cb25-6"><a href="#cb25-6" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb25-7"><a href="#cb25-7" aria-hidden="true" tabindex="-1"></a><span class="fu">ggplot</span>(df_combined, <span class="fu">aes</span>(<span class="at">x=</span>weighted_avg_price)) <span class="sc">+</span> </span>
<span id="cb25-8"><a href="#cb25-8" aria-hidden="true" tabindex="-1"></a> <span class="fu">geom_histogram</span>(<span class="fu">aes</span>(<span class="at">fill=</span>company_name),<span class="at">binwidth=</span><span class="dv">8</span>) <span class="sc">+</span> </span>
<span id="cb25-9"><a href="#cb25-9" aria-hidden="true" tabindex="-1"></a> <span class="fu">labs</span>(<span class="at">x =</span><span class="st">"Weighted average price"</span>) <span class="sc">+</span> </span>
<span id="cb25-10"><a href="#cb25-10" aria-hidden="true" tabindex="-1"></a> <span class="fu">scale_fill_discrete</span>(<span class="at">name =</span> <span class="st">"Company Name"</span>) <span class="sc">+</span> </span>
<span id="cb25-11"><a href="#cb25-11" aria-hidden="true" tabindex="-1"></a> <span class="fu">ggtitle</span>(<span class="fu">wrapper</span>(my_title, <span class="at">width=</span><span class="dv">80</span>))</span></code></pre></div>
<img src="data:image/png;base64,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" style="display: block; margin: auto;" />
Consistent with the trend from the previous plots, we can see that
weighted average price for Apple is at the lower end while for Tesla it
as at higher end. We can also infer from the plots that weighted average
price for Apple and Tesla roughly follow Gaussian distribution. While
the deviation for Apple around the mean is the least, the deviation for
Tesla around its mean is the most. Probably because of Elon’s Tweets
which contribute to volatiltiy to the stock price!
<!--*************************************************************************-->
<h2 id="bar-plot">Bar plot</h2>
<p>Here we have used the one way contingency table created in above sections to create a bar plot with the type of tickers on the x axis.</p>
<div class="sourceCode" id="cb26"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb26-1"><a href="#cb26-1" aria-hidden="true" tabindex="-1"></a><span class="fu">ggplot</span>(df_tables, <span class="fu">aes</span>(<span class="at">x=</span>description)) <span class="sc">+</span> </span>
<span id="cb26-2"><a href="#cb26-2" aria-hidden="true" tabindex="-1"></a> <span class="fu">geom_bar</span>(<span class="at">fill=</span><span class="st">"steelblue"</span>) <span class="sc">+</span> </span>
<span id="cb26-3"><a href="#cb26-3" aria-hidden="true" tabindex="-1"></a> <span class="fu">labs</span>(<span class="at">x =</span><span class="st">"Type of tickers"</span>,</span>
<span id="cb26-4"><a href="#cb26-4" aria-hidden="true" tabindex="-1"></a> <span class="at">title=</span><span class="st">"Bar plot for number of stock tickers for each type"</span>) <span class="sc">+</span> </span>
<span id="cb26-5"><a href="#cb26-5" aria-hidden="true" tabindex="-1"></a> <span class="fu">theme</span>(<span class="at">text=</span><span class="fu">element_text</span>(<span class="at">size=</span><span class="dv">14</span>), <span class="at">plot.title =</span> <span class="fu">element_text</span>(<span class="at">hjust =</span> <span class="fl">0.5</span>),</span>