R Markdown

library(jsonlite)
## Warning: package 'jsonlite' was built under R version 3.4.4
library(rjson)
## 
## Attaching package: 'rjson'
## The following objects are masked from 'package:jsonlite':
## 
##     fromJSON, toJSON
library(tidyverse)
## Warning: package 'tidyverse' was built under R version 3.4.4
## -- Attaching packages ------------------------------------------------------------------ tidyverse 1.2.1 --
## v ggplot2 2.2.1     v purrr   0.2.4
## v tibble  1.4.2     v dplyr   0.7.4
## v tidyr   0.7.2     v stringr 1.2.0
## v readr   1.1.1     v forcats 0.2.0
## Warning: package 'ggplot2' was built under R version 3.4.4
## Warning: package 'tibble' was built under R version 3.4.4
## -- Conflicts --------------------------------------------------------------------- tidyverse_conflicts() --
## x dplyr::filter()   masks stats::filter()
## x purrr::flatten()  masks jsonlite::flatten()
## x rjson::fromJSON() masks jsonlite::fromJSON()
## x dplyr::lag()      masks stats::lag()
## x rjson::toJSON()   masks jsonlite::toJSON()
library(RCurl)
## Loading required package: bitops
## 
## Attaching package: 'RCurl'
## The following object is masked from 'package:tidyr':
## 
##     complete
yahoo.url <- "https://query2.finance.yahoo.com/v7/finance/options/SPY?"
resp.json <- fromJSON(getURL(paste(yahoo.url,sep=""))) 
resp.json$optionChain$result[[1]]$expirationDates
##  [1] 1528848000 1529020800 1529280000 1529452800 1529625600 1529884800
##  [7] 1530057600 1530230400 1530489600 1530576000 1530835200 1531094400
## [13] 1531267200 1531440000 1531699200 1532044800 1532649600 1534464000
## [19] 1537488000 1538092800 1545350400 1546214400 1547769600 1552608000
## [25] 1553817600 1561075200 1568937600 1576800000 1579219200 1584662400
## [31] 1594944000 1608249600
#yahoo.url.01 <- "https://finance.yahoo.com/quote/SPY/options?p=SPY&date=1608249600"
#resp.json.01 <- fromJSON(getURL(paste(yahoo.url,sep=""))) 
library(quantmod)
## Warning: package 'quantmod' was built under R version 3.4.4
## Loading required package: xts
## Warning: package 'xts' was built under R version 3.4.4
## Loading required package: zoo
## Warning: package 'zoo' was built under R version 3.4.4
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
## 
## Attaching package: 'xts'
## The following objects are masked from 'package:dplyr':
## 
##     first, last
## Loading required package: TTR
## Version 0.4-0 included new data defaults. See ?getSymbols.
library(knitr)
optionPool <- getOptionChain("SPY", "2017/2018")


#optionPool$Jul.13.2018

kable((optionPool$Jul.06.2018$calls))
Strike Last Chg Bid Ask Vol OI
SPY180706C00240000 240.0 33.39 0.0000000 32.24 32.56 2 0
SPY180706C00245000 245.0 32.52 0.0000000 33.20 33.42 2 2
SPY180706C00250000 250.0 25.67 0.0000000 28.21 28.43 30 30
SPY180706C00252500 252.5 18.90 0.0000000 21.40 21.62 12 12
SPY180706C00253000 253.0 20.90 0.0000000 20.91 21.10 80 0
SPY180706C00254000 254.0 21.06 0.0000000 24.22 24.42 10 24
SPY180706C00255000 255.0 14.40 0.0000000 18.96 19.17 64 65
SPY180706C00256000 256.0 13.60 0.0000000 17.99 18.20 83 83
SPY180706C00257000 257.0 17.00 4.2500000 17.02 17.23 20 98
SPY180706C00257500 257.5 12.29 0.0000000 16.54 16.75 63 63
SPY180706C00258000 258.0 16.00 0.0000000 16.06 16.27 20 51
SPY180706C00259000 259.0 15.09 2.2399998 15.12 15.29 84 118
SPY180706C00260000 260.0 14.00 2.2500000 14.17 14.33 53 218
SPY180706C00261000 261.0 12.95 2.1200000 13.21 13.39 51 151
SPY180706C00262000 262.0 12.00 1.9300003 12.29 12.46 72 103
SPY180706C00262500 262.5 13.10 0.0000000 15.81 16.01 10 32
SPY180706C00263000 263.0 14.40 0.0000000 15.31 15.52 42 203
SPY180706C00264000 264.0 14.27 2.5700006 14.35 14.53 1 64
SPY180706C00265000 265.0 12.65 0.0000000 13.37 13.55 19 645
SPY180706C00266000 266.0 11.65 0.0000000 12.41 12.59 87 403
SPY180706C00267000 267.0 10.06 0.0000000 11.44 11.61 48 759
SPY180706C00267500 267.5 8.90 0.0000000 10.97 11.15 77 374
SPY180706C00268000 268.0 9.26 0.0000000 10.50 10.64 71 716
SPY180706C00269000 269.0 8.88 0.2799997 9.56 9.69 3 422
SPY180706C00270000 270.0 7.90 0.3000002 8.63 8.77 2 339
SPY180706C00271000 271.0 7.50 0.8400002 7.76 7.84 26 218
SPY180706C00272000 272.0 6.65 0.4200001 6.88 6.95 3 380
SPY180706C00272500 272.5 5.58 0.1700001 6.44 6.51 1 567
SPY180706C00273000 273.0 5.96 0.6799998 6.00 6.08 51 363
SPY180706C00274000 274.0 4.88 0.3600001 5.18 5.24 19 428
SPY180706C00275000 275.0 4.39 0.4999998 4.38 4.44 120 1098
SPY180706C00276000 276.0 3.62 0.2700000 3.64 3.69 101 2049
SPY180706C00277000 277.0 2.96 0.3600001 2.96 3.00 250 1753
SPY180706C00277500 277.5 2.67 0.2200000 2.65 2.69 173 1056
SPY180706C00278000 278.0 2.34 0.1899998 2.35 2.39 1577 7332
SPY180706C00279000 279.0 1.83 0.2900001 1.82 1.85 798 1733
SPY180706C00280000 280.0 1.35 0.2300000 1.37 1.40 1465 1648
SPY180706C00281000 281.0 0.95 0.1600000 1.01 1.03 1264 1119
SPY180706C00282000 282.0 0.73 0.1300000 0.72 0.75 169 719
SPY180706C00282500 282.5 0.57 0.0900000 0.61 0.63 241 739
SPY180706C00283000 283.0 0.50 0.1100000 0.51 0.53 476 4417
SPY180706C00284000 284.0 0.37 0.0900000 0.36 0.38 47 717
SPY180706C00285000 285.0 0.25 0.0500000 0.26 0.27 459 4479
SPY180706C00286000 286.0 0.17 0.0300000 0.18 0.20 34 1358
SPY180706C00287000 287.0 0.12 0.0000000 0.13 0.15 1332 1280
SPY180706C00287500 287.5 0.05 0.0000000 0.07 0.09 15 15
SPY180706C00288000 288.0 0.10 0.0100000 0.10 0.12 10 58
SPY180706C00289000 289.0 0.07 0.0000000 0.08 0.10 24 15
SPY180706C00290000 290.0 0.06 0.0000000 0.06 0.08 32 65
SPY180706C00292500 292.5 0.04 0.0000000 0.03 0.05 1 0
SPY180706C00295000 295.0 0.03 0.0000000 0.03 0.04 10 11
SPY180706C00297500 297.5 0.03 0.0000000 0.02 0.04 10 21
SPY180706C00300000 300.0 0.02 0.0000000 0.01 0.03 3 0
SPY180706C00302500 302.5 0.02 0.0000000 0.01 0.03 1 0
SPY180706C00305000 305.0 0.02 0.0000000 0.00 0.02 1 1
kable((optionPool$Jul.06.2018$puts))
Strike Last Chg Bid Ask Vol OI
SPY180706P00220000 220.0 0.07 -0.1400000 0.06 0.07 50 26
SPY180706P00225000 225.0 0.10 -0.0600000 0.07 0.08 30 30
SPY180706P00230000 230.0 0.13 0.0000000 0.09 0.10 43 383
SPY180706P00235000 235.0 0.17 0.0000000 0.11 0.12 64 784
SPY180706P00237500 237.5 0.17 0.0000000 0.12 0.14 60 141
SPY180706P00240000 240.0 0.14 -0.0100000 0.14 0.15 190 14611
SPY180706P00242500 242.5 0.49 0.0000000 0.31 0.33 70 656
SPY180706P00245000 245.0 0.22 -0.0300000 0.18 0.19 36 609
SPY180706P00247500 247.5 0.26 0.0000000 0.20 0.22 3 263
SPY180706P00250000 250.0 0.26 -0.0200000 0.23 0.25 1 28894
SPY180706P00251000 251.0 0.35 0.0000000 0.24 0.26 1 27
SPY180706P00252000 252.0 0.30 0.0000000 0.26 0.28 20 81
SPY180706P00252500 252.5 0.28 -0.0400000 0.27 0.29 45 57
SPY180706P00253000 253.0 0.38 0.0000000 0.28 0.29 60 153
SPY180706P00254000 254.0 0.33 0.0000000 0.29 0.31 4 110
SPY180706P00255000 255.0 0.31 -0.0500000 0.31 0.33 5 1347
SPY180706P00256000 256.0 0.38 0.0000000 0.33 0.35 109 233
SPY180706P00257000 257.0 0.39 0.0000000 0.35 0.37 10 1145
SPY180706P00257500 257.5 0.42 0.0000000 0.37 0.38 84 313
SPY180706P00258000 258.0 0.39 -0.1500000 0.38 0.40 12 476
SPY180706P00259000 259.0 0.48 -0.0400000 0.41 0.42 124 480
SPY180706P00260000 260.0 0.44 -0.1000000 0.43 0.45 399 16121
SPY180706P00261000 261.0 0.48 -0.1200000 0.47 0.49 82 4555
SPY180706P00262000 262.0 0.51 -0.1600000 0.51 0.52 84 4054
SPY180706P00262500 262.5 0.56 -0.0200000 0.53 0.54 10 179
SPY180706P00263000 263.0 0.60 -0.0700000 0.55 0.57 29 809
SPY180706P00264000 264.0 0.79 0.0000000 0.59 0.62 48 418
SPY180706P00265000 265.0 0.67 -0.0600000 0.65 0.67 203 692
SPY180706P00266000 266.0 0.77 -0.2600000 0.71 0.73 108 1789
SPY180706P00267000 267.0 0.82 -0.1000000 0.78 0.80 147 621
SPY180706P00267500 267.5 0.85 -0.1300000 0.82 0.84 246 470
SPY180706P00268000 268.0 0.89 -0.1400000 0.86 0.89 366 553
SPY180706P00269000 269.0 1.00 -0.2000001 0.95 0.98 105 2061
SPY180706P00270000 270.0 1.07 -0.2199999 1.06 1.08 402 1732
SPY180706P00271000 271.0 1.19 -0.1300000 1.19 1.21 791 334
SPY180706P00272000 272.0 1.32 -0.2399999 1.32 1.36 2769 1652
SPY180706P00272500 272.5 1.79 0.0599999 1.42 1.44 257 707
SPY180706P00273000 273.0 1.50 -0.2900000 1.51 1.53 39 2022
SPY180706P00274000 274.0 1.78 -0.3299999 1.71 1.75 41 1246
SPY180706P00275000 275.0 1.95 -0.3599999 1.95 2.00 2786 1760
SPY180706P00276000 276.0 2.24 -0.4000001 2.24 2.27 405 2905
SPY180706P00277000 277.0 2.64 -0.1599998 2.57 2.62 365 1629
SPY180706P00277500 277.5 2.84 -0.1600001 2.76 2.82 719 1621
SPY180706P00278000 278.0 3.00 -0.8900001 2.98 3.04 1168 3198
SPY180706P00279000 279.0 3.62 -0.1400001 3.46 3.52 190 2222
SPY180706P00280000 280.0 4.11 -0.9299998 4.02 4.11 733 802
SPY180706P00281000 281.0 4.80 -0.2700000 4.67 4.77 184 1343
SPY180706P00282000 282.0 6.49 0.6399999 5.38 5.62 59 285
SPY180706P00282500 282.5 7.25 0.0000000 5.58 6.06 1 4
SPY180706P00283000 283.0 6.52 -0.7300000 6.04 6.51 3 58
SPY180706P00284000 284.0 8.05 0.0000000 6.86 7.35 43 76
SPY180706P00285000 285.0 9.60 0.0000000 7.83 8.31 46 86
SPY180706P00286000 286.0 10.65 0.0000000 8.77 9.26 20 55
SPY180706P00287000 287.0 12.80 0.0000000 9.70 10.20 25 25
SPY180706P00288000 288.0 12.55 0.0000000 10.68 11.18 20 30
SPY180706P00297500 297.5 26.52 0.0000000 26.28 26.61 1 1
SPY180706P00300000 300.0 29.01 0.0000000 28.77 29.10 1 1
#df_test <- optionPool$Jul.06.2018$calls

#head(df_test$calls)