iex-ruby-client 1.0.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/.github/FUNDING.yml +1 -0
- data/.rubocop.yml +4 -1
- data/CHANGELOG.md +37 -7
- data/Dangerfile +2 -2
- data/Gemfile +2 -2
- data/README.md +159 -37
- data/iex-ruby-client.gemspec +3 -2
- data/lib/iex-ruby-client.rb +1 -0
- data/lib/iex/api.rb +3 -0
- data/lib/iex/api/client.rb +3 -0
- data/lib/iex/api/config.rb +2 -0
- data/lib/iex/cloud/connection.rb +21 -19
- data/lib/iex/cloud/request.rb +1 -1
- data/lib/iex/cloud/response.rb +1 -1
- data/lib/iex/endpoints/chart.rb +5 -6
- data/lib/iex/endpoints/company.rb +1 -1
- data/lib/iex/endpoints/crypto.rb +1 -1
- data/lib/iex/endpoints/dividends.rb +1 -1
- data/lib/iex/endpoints/earnings.rb +1 -1
- data/lib/iex/endpoints/income.rb +13 -0
- data/lib/iex/endpoints/key_stats.rb +1 -1
- data/lib/iex/endpoints/largest_trades.rb +1 -1
- data/lib/iex/endpoints/logo.rb +1 -1
- data/lib/iex/endpoints/news.rb +1 -1
- data/lib/iex/endpoints/ohlc.rb +2 -2
- data/lib/iex/endpoints/price.rb +1 -1
- data/lib/iex/endpoints/quote.rb +1 -1
- data/lib/iex/endpoints/ref_data.rb +22 -0
- data/lib/iex/endpoints/sectors.rb +1 -1
- data/lib/iex/endpoints/stock_market.rb +11 -0
- data/lib/iex/resources.rb +3 -0
- data/lib/iex/resources/chart.rb +9 -14
- data/lib/iex/resources/company.rb +1 -0
- data/lib/iex/resources/income.rb +36 -0
- data/lib/iex/resources/key_stats.rb +14 -2
- data/lib/iex/resources/quote.rb +15 -5
- data/lib/iex/resources/resource.rb +1 -1
- data/lib/iex/resources/symbol.rb +10 -0
- data/lib/iex/resources/symbols.rb +19 -0
- data/lib/iex/version.rb +1 -1
- data/spec/fixtures/iex/chart/1d.yml +440 -473
- data/spec/fixtures/iex/chart/20190306.yml +440 -473
- data/spec/fixtures/iex/chart/bad_option.yml +47 -81
- data/spec/fixtures/iex/chart/chartInterval.yml +89 -122
- data/spec/fixtures/iex/chart/dynamic/1m.yml +73 -107
- data/spec/fixtures/iex/chart/invalid.yml +47 -81
- data/spec/fixtures/iex/chart/msft.yml +74 -107
- data/spec/fixtures/iex/income/invalid.yml +49 -0
- data/spec/fixtures/iex/income/msft.yml +53 -0
- data/spec/fixtures/iex/income/nsrgy.yml +55 -0
- data/spec/fixtures/iex/key_stats/invalid.yml +7 -41
- data/spec/fixtures/iex/key_stats/msft.yml +11 -43
- data/spec/fixtures/iex/ref-data/isin.yml +57 -0
- data/spec/fixtures/iex/ref-data/isin_mapped.yml +57 -0
- data/spec/fixtures/iex/ref-data/symbols.yml +9002 -0
- data/spec/fixtures/iex/ref-data/wrong_isin_mapped.yml +57 -0
- data/spec/fixtures/iex/stock_market/list_mostactive.yml +76 -0
- data/spec/iex/client_spec.rb +6 -1
- data/spec/iex/endpoints/chart_spec.rb +7 -7
- data/spec/iex/endpoints/company_spec.rb +1 -0
- data/spec/iex/endpoints/income_spec.rb +68 -0
- data/spec/iex/endpoints/key_stats_spec.rb +42 -29
- data/spec/iex/endpoints/quote_spec.rb +2 -0
- data/spec/iex/endpoints/ref_data_spec.rb +66 -0
- data/spec/iex/endpoints/stock_market_spec.rb +14 -0
- data/spec/spec_helper.rb +1 -0
- data/spec/support/vcr.rb +3 -0
- metadata +41 -13
| @@ -1,83 +1,49 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            http_interactions:
         | 
| 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 | 
            -
                      - "default-src 'self'; child-src 'none'; object-src 'self'; style-src
         | 
| 51 | 
            -
                        'self' 'unsafe-inline' https://fonts.googleapis.com; font-src 'self'
         | 
| 52 | 
            -
                        https://js.intercomcdn.com/fonts/ https://fonts.gstatic.com; frame-src 'self'
         | 
| 53 | 
            -
                        https://portal.productboard.com/ https://js.stripe.com/; img-src 'self'
         | 
| 54 | 
            -
                        data: https://*.intercomcdn.com/ https://static.intercomassets.com/ https://www.google-analytics.com
         | 
| 55 | 
            -
                        https://downloads.intercomcdn.com/; connect-src 'self' https://auth.iexcloud.io
         | 
| 56 | 
            -
                        https://api.iexcloud.io https://api.iexcloud.io https://cloud.iexapis.com
         | 
| 57 | 
            -
                        wss://iexcloud.io wss://tops.iexcloud.io wss://api.iexcloud.io wss://iexcloud.io
         | 
| 58 | 
            -
                        https://api-iam.intercom.io/messenger/ https://nexus-websocket-a.intercom.io/
         | 
| 59 | 
            -
                        https://nexus-websocket-b.intercom.io/ wss://nexus-websocket-a.intercom.io/
         | 
| 60 | 
            -
                        wss://nexus-websocket-b.intercom.io/ https://www.google-analytics.com; script-src
         | 
| 61 | 
            -
                        'self' 'unsafe-inline' 'unsafe-eval' https://www.google.com/recaptcha/api.js
         | 
| 62 | 
            -
                        https://www.google-analytics.com https://js.stripe.com/v3/ https://widget.intercom.io/widget/lhos563b
         | 
| 63 | 
            -
                        https://js.intercomcdn.com/ https://www.googletagmanager.com;"
         | 
| 64 | 
            -
                    Frame-Options:
         | 
| 65 | 
            -
                      - SAMEORIGIN
         | 
| 66 | 
            -
                    X-Frame-Options:
         | 
| 67 | 
            -
                      - SAMEORIGIN
         | 
| 68 | 
            -
                    Strict-Transport-Security:
         | 
| 69 | 
            -
                      - max-age=15768000
         | 
| 70 | 
            -
                    Access-Control-Allow-Origin:
         | 
| 71 | 
            -
                      - "*"
         | 
| 72 | 
            -
                    Access-Control-Allow-Credentials:
         | 
| 73 | 
            -
                      - "true"
         | 
| 74 | 
            -
                    Access-Control-Allow-Methods:
         | 
| 75 | 
            -
                      - GET, OPTIONS
         | 
| 76 | 
            -
                    Access-Control-Allow-Headers:
         | 
| 77 | 
            -
                      - Origin, X-Requested-With, Content-Type, Accept
         | 
| 78 | 
            -
                  body:
         | 
| 79 | 
            -
                    encoding: UTF-8
         | 
| 80 | 
            -
                    string: '{"error":"\"badOption\" is not allowed"}'
         | 
| 81 | 
            -
                  http_version:
         | 
| 82 | 
            -
                recorded_at: Mon, 08 Apr 2019 11:43:29 GMT
         | 
| 83 | 
            -
            recorded_with: VCR 4.0.0
         | 
| 3 | 
            +
            - request:
         | 
| 4 | 
            +
                method: get
         | 
| 5 | 
            +
                uri: https://cloud.iexapis.com/v1/stock/MSFT/chart/1d?badOption=option&chartInterval=10&token=test-iex-api-publishable-token
         | 
| 6 | 
            +
                body:
         | 
| 7 | 
            +
                  encoding: US-ASCII
         | 
| 8 | 
            +
                  string: ''
         | 
| 9 | 
            +
                headers:
         | 
| 10 | 
            +
                  Accept:
         | 
| 11 | 
            +
                  - application/json; charset=utf-8
         | 
| 12 | 
            +
                  User-Agent:
         | 
| 13 | 
            +
                  - IEX Ruby Client/1.1.1
         | 
| 14 | 
            +
                  Accept-Encoding:
         | 
| 15 | 
            +
                  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
         | 
| 16 | 
            +
              response:
         | 
| 17 | 
            +
                status:
         | 
| 18 | 
            +
                  code: 400
         | 
| 19 | 
            +
                  message: Bad Request
         | 
| 20 | 
            +
                headers:
         | 
| 21 | 
            +
                  Server:
         | 
| 22 | 
            +
                  - nginx
         | 
| 23 | 
            +
                  Date:
         | 
| 24 | 
            +
                  - Sat, 10 Aug 2019 15:56:38 GMT
         | 
| 25 | 
            +
                  Content-Type:
         | 
| 26 | 
            +
                  - application/json; charset=utf-8
         | 
| 27 | 
            +
                  Content-Length:
         | 
| 28 | 
            +
                  - '40'
         | 
| 29 | 
            +
                  Connection:
         | 
| 30 | 
            +
                  - keep-alive
         | 
| 31 | 
            +
                  Set-Cookie:
         | 
| 32 | 
            +
                  - ctoken=df01e82c783c4075864ac94115551f6f; Max-Age=43200; Path=/; Expires=Sun,
         | 
| 33 | 
            +
                    11 Aug 2019 03:56:38 GMT
         | 
| 34 | 
            +
                  Strict-Transport-Security:
         | 
| 35 | 
            +
                  - max-age=15768000
         | 
| 36 | 
            +
                  Access-Control-Allow-Origin:
         | 
| 37 | 
            +
                  - "*"
         | 
| 38 | 
            +
                  Access-Control-Allow-Credentials:
         | 
| 39 | 
            +
                  - 'true'
         | 
| 40 | 
            +
                  Access-Control-Allow-Methods:
         | 
| 41 | 
            +
                  - GET, OPTIONS
         | 
| 42 | 
            +
                  Access-Control-Allow-Headers:
         | 
| 43 | 
            +
                  - Origin, X-Requested-With, Content-Type, Accept
         | 
| 44 | 
            +
                body:
         | 
| 45 | 
            +
                  encoding: UTF-8
         | 
| 46 | 
            +
                  string: '{"error":"\"badOption\" is not allowed"}'
         | 
| 47 | 
            +
                http_version:
         | 
| 48 | 
            +
              recorded_at: Sat, 10 Aug 2019 15:56:38 GMT
         | 
| 49 | 
            +
            recorded_with: VCR 5.0.0
         | 
| @@ -1,124 +1,91 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            http_interactions:
         | 
| 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 | 
            -
                      AM","high":119.88,"low":119.74,"average":119.791,"volume":1373,"notional":164472.94,"numberOfTrades":19,"marketHigh":119.91,"marketLow":119.739,"marketAverage":119.804,"marketVolume":52235,"marketNotional":6257973.5266,"marketNumberOfTrades":320,"open":119.88,"close":119.745,"marketOpen":119.88,"marketClose":119.76,"changeOverTime":0.0021164817882179734,"marketChangeOverTime":0.0031567401006472183},{"date":"20190405","minute":"11:10","label":"11:10
         | 
| 93 | 
            -
                      AM","high":119.705,"low":119.685,"average":119.695,"volume":300,"notional":35908.485,"numberOfTrades":4,"marketHigh":119.73,"marketLow":119.68,"marketAverage":119.699,"marketVolume":19621,"marketNotional":2348615.1925,"marketNumberOfTrades":96,"open":119.705,"close":119.695,"marketOpen":119.72,"marketClose":119.73,"changeOverTime":0.0013133898843881986,"marketChangeOverTime":0.0022775419293793813},{"date":"20190405","minute":"11:20","label":"11:20
         | 
| 94 | 
            -
                      AM","high":119.81,"low":119.77,"average":119.788,"volume":1142,"notional":136798.5,"numberOfTrades":12,"marketHigh":119.82,"marketLow":119.76,"marketAverage":119.789,"marketVolume":33426,"marketNotional":4004062.4649,"marketNumberOfTrades":181,"open":119.81,"close":119.78,"marketOpen":119.81,"marketClose":119.79,"changeOverTime":0.0020913851662232932,"marketChangeOverTime":0.00303114036189467},{"date":"20190405","minute":"11:30","label":"11:30
         | 
| 95 | 
            -
                      AM","high":119.975,"low":119.95,"average":119.955,"volume":1334,"notional":160019.86,"numberOfTrades":15,"marketHigh":119.98,"marketLow":119.945,"marketAverage":119.957,"marketVolume":28930,"marketNotional":3470354.276,"marketNumberOfTrades":171,"open":119.975,"close":119.97,"marketOpen":119.98,"marketClose":119.955,"changeOverTime":0.0034884304572604663,"marketChangeOverTime":0.00443785743592309},{"date":"20190405","minute":"11:40","label":"11:40
         | 
| 96 | 
            -
                      AM","high":119.975,"low":119.94,"average":119.965,"volume":824,"notional":98851.08,"numberOfTrades":13,"marketHigh":119.975,"marketLow":119.94,"marketAverage":119.959,"marketVolume":27480,"marketNotional":3296467.729,"marketNumberOfTrades":145,"open":119.965,"close":119.94,"marketOpen":119.96,"marketClose":119.945,"changeOverTime":0.0035720858639094405,"marketChangeOverTime":0.004454604067756843},{"date":"20190405","minute":"11:50","label":"11:50
         | 
| 97 | 
            -
                      AM","high":119.925,"low":119.88,"average":119.921,"volume":1526,"notional":182999.16,"numberOfTrades":7,"marketHigh":119.95,"marketLow":119.87,"marketAverage":119.913,"marketVolume":32156,"marketNotional":3855912.1147,"marketNumberOfTrades":191,"open":119.92,"close":119.88,"marketOpen":119.92,"marketClose":119.95,"changeOverTime":0.0032040020746541666,"marketChangeOverTime":0.004069431535582322},{"date":"20190405","minute":"12:00","label":"12
         | 
| 98 | 
            -
                      PM","high":119.88,"low":119.87,"average":119.874,"volume":577,"notional":69167.49,"numberOfTrades":6,"marketHigh":119.89,"marketLow":119.85,"marketAverage":119.875,"marketVolume":10848,"marketNotional":1300409.1236,"marketNumberOfTrades":76,"open":119.87,"close":119.875,"marketOpen":119.87,"marketClose":119.85,"changeOverTime":0.0028108216634040936,"marketChangeOverTime":0.003751245530742573},{"date":"20190405","minute":"12:10","label":"12:10
         | 
| 99 | 
            -
                      PM","high":120,"low":119.975,"average":119.988,"volume":814,"notional":97670.28,"numberOfTrades":10,"marketHigh":120,"marketLow":119.97,"marketAverage":119.985,"marketVolume":8130,"marketNotional":975475.19,"marketNumberOfTrades":62,"open":119.995,"close":119.98,"marketOpen":120,"marketClose":119.98,"changeOverTime":0.0037644932992019512,"marketChangeOverTime":0.004672310281594553},{"date":"20190405","minute":"12:20","label":"12:20
         | 
| 100 | 
            -
                      PM","high":119.995,"low":119.975,"average":119.987,"volume":400,"notional":47995,"numberOfTrades":5,"marketHigh":120,"marketLow":119.97,"marketAverage":119.986,"marketVolume":16078,"marketNotional":1929129.8712,"marketNumberOfTrades":100,"open":119.975,"close":119.99,"marketOpen":119.98,"marketClose":119.99,"changeOverTime":0.003756127758537018,"marketChangeOverTime":0.004680683597511429},{"date":"20190405","minute":"12:30","label":"12:30
         | 
| 101 | 
            -
                      PM","high":119.985,"low":119.965,"average":119.975,"volume":203,"notional":24354.93,"numberOfTrades":4,"marketHigh":119.99,"marketLow":119.96,"marketAverage":119.978,"marketVolume":9911,"marketNotional":1189105.7007,"marketNumberOfTrades":65,"open":119.98,"close":119.985,"marketOpen":119.99,"marketClose":119.98,"changeOverTime":0.0036557412705582964,"marketChangeOverTime":0.004613697070176658},{"date":"20190405","minute":"12:40","label":"12:40
         | 
| 102 | 
            -
                      PM","high":119.825,"low":119.795,"average":119.822,"volume":222,"notional":26600.39,"numberOfTrades":5,"marketHigh":119.84,"marketLow":119.79,"marketAverage":119.814,"marketVolume":12844,"marketNotional":1538890.2278,"marketNumberOfTrades":95,"open":119.795,"close":119.81,"marketOpen":119.81,"marketClose":119.806,"changeOverTime":0.0023758135488297113,"marketChangeOverTime":0.0032404732598155044},{"date":"20190405","minute":"12:50","label":"12:50
         | 
| 103 | 
            -
                      PM","high":119.85,"low":119.825,"average":119.838,"volume":511,"notional":61237.35,"numberOfTrades":5,"marketHigh":119.85,"marketLow":119.82,"marketAverage":119.84,"marketVolume":14583,"marketNotional":1747620.1856,"marketNumberOfTrades":71,"open":119.85,"close":119.825,"marketOpen":119.84,"marketClose":119.83,"changeOverTime":0.002509662199467928,"marketChangeOverTime":0.0034581794736533336},{"date":"20190405","minute":"13:00","label":"1
         | 
| 104 | 
            -
                      PM","high":119.81,"low":119.755,"average":119.774,"volume":436,"notional":52221.415,"numberOfTrades":12,"marketHigh":119.82,"marketLow":119.75,"marketAverage":119.781,"marketVolume":16724,"marketNotional":2003226.6447,"marketNumberOfTrades":95,"open":119.765,"close":119.795,"marketOpen":119.775,"marketClose":119.8,"changeOverTime":0.001974267596914824,"marketChangeOverTime":0.002964153834560017},{"date":"20190405","minute":"13:10","label":"1:10
         | 
| 105 | 
            -
                      PM","high":119.845,"low":119.83,"average":119.837,"volume":209,"notional":25046.025,"numberOfTrades":6,"marketHigh":119.85,"marketLow":119.82,"marketAverage":119.835,"marketVolume":7769,"marketNotional":930996.3128,"marketNumberOfTrades":48,"open":119.83,"close":119.835,"marketOpen":119.83,"marketClose":119.835,"changeOverTime":0.0025012966588031137,"marketChangeOverTime":0.0034163128940690717},{"date":"20190405","minute":"13:20","label":"1:20
         | 
| 106 | 
            -
                      PM","high":119.77,"low":119.74,"average":119.754,"volume":879,"notional":105263.46,"numberOfTrades":9,"marketHigh":119.78,"marketLow":119.73,"marketAverage":119.747,"marketVolume":25213,"marketNotional":3019172.7887,"marketNumberOfTrades":179,"open":119.765,"close":119.74,"marketOpen":119.78,"marketClose":119.74,"changeOverTime":0.0018069567836169937,"marketChangeOverTime":0.0026794610933875353},{"date":"20190405","minute":"13:30","label":"1:30
         | 
| 107 | 
            -
                      PM","high":119.785,"low":119.78,"average":119.782,"volume":300,"notional":35934.5,"numberOfTrades":3,"marketHigh":119.79,"marketLow":119.77,"marketAverage":119.781,"marketVolume":6837,"marketNotional":818941.6951,"marketNumberOfTrades":45,"open":119.78,"close":119.785,"marketOpen":119.78,"marketClose":119.782,"changeOverTime":0.002041191922233932,"marketChangeOverTime":0.002964153834560017},{"date":"20190405","minute":"13:40","label":"1:40
         | 
| 108 | 
            -
                      PM","high":119.72,"low":119.685,"average":119.695,"volume":142,"notional":16996.72,"numberOfTrades":3,"marketHigh":119.72,"marketLow":119.675,"marketAverage":119.703,"marketVolume":12101,"marketNotional":1448525.194,"marketNumberOfTrades":84,"open":119.685,"close":119.72,"marketOpen":119.705,"marketClose":119.71,"changeOverTime":0.0013133898843881986,"marketChangeOverTime":0.002311035193046767},{"date":"20190405","minute":"13:50","label":"1:50
         | 
| 109 | 
            -
                      PM","high":119.81,"low":119.81,"average":119.81,"volume":1,"notional":119.81,"numberOfTrades":1,"marketHigh":119.819,"marketLow":119.8,"marketAverage":119.807,"marketVolume":4269,"marketNotional":511455.3838,"marketNumberOfTrades":25,"open":119.81,"close":119.81,"marketOpen":119.805,"marketClose":119.81,"changeOverTime":0.0022754270608509896,"marketChangeOverTime":0.0031818600483977276},{"date":"20190405","minute":"14:00","label":"2
         | 
| 110 | 
            -
                      PM","high":119.745,"low":119.745,"average":119.745,"volume":100,"notional":11974.5,"numberOfTrades":1,"marketHigh":119.75,"marketLow":119.695,"marketAverage":119.718,"marketVolume":21476,"marketNotional":2571055.5374,"marketNumberOfTrades":177,"open":119.745,"close":119.745,"marketOpen":119.73,"marketClose":119.7,"changeOverTime":0.0017316669176329522,"marketChangeOverTime":0.0024366349317993152},{"date":"20190405","minute":"14:10","label":"2:10
         | 
| 111 | 
            -
                      PM","high":119.75,"low":119.75,"average":119.75,"volume":80,"notional":9580,"numberOfTrades":1,"marketHigh":119.76,"marketLow":119.73,"marketAverage":119.745,"marketVolume":5581,"marketNotional":668295.8569,"marketNumberOfTrades":44,"open":119.75,"close":119.75,"marketOpen":119.755,"marketClose":119.75,"changeOverTime":0.0017734946209573802,"marketChangeOverTime":0.002662714461553902},{"date":"20190405","minute":"14:20","label":"2:20
         | 
| 112 | 
            -
                      PM","high":null,"low":null,"average":null,"volume":0,"notional":0,"numberOfTrades":0,"marketHigh":119.618,"marketLow":119.58,"marketAverage":119.591,"marketVolume":19323,"marketNotional":2310850.0886,"marketNumberOfTrades":117,"open":null,"close":null,"marketOpen":119.618,"marketClose":119.59,"changeOverTime":null,"marketChangeOverTime":0.0013732238103610344},{"date":"20190405","minute":"14:30","label":"2:30
         | 
| 113 | 
            -
                      PM","high":119.595,"low":119.585,"average":119.59,"volume":240,"notional":28701.6,"numberOfTrades":3,"marketHigh":119.6,"marketLow":119.56,"marketAverage":119.588,"marketVolume":22776,"marketNotional":2723737.8881,"marketNumberOfTrades":72,"open":119.585,"close":119.595,"marketOpen":119.575,"marketClose":119.595,"changeOverTime":0.00043500811457450106,"marketChangeOverTime":0.0013481038626105247},{"date":"20190405","minute":"14:40","label":"2:40
         | 
| 114 | 
            -
                      PM","high":119.6,"low":119.575,"average":119.588,"volume":517,"notional":61827.25,"numberOfTrades":4,"marketHigh":119.6,"marketLow":119.575,"marketAverage":119.59,"marketVolume":14159,"marketNotional":1693276.8301,"marketNumberOfTrades":98,"open":119.575,"close":119.585,"marketOpen":119.6,"marketClose":119.58,"changeOverTime":0.00041827703324463485,"marketChangeOverTime":0.001364850494444277},{"date":"20190405","minute":"14:50","label":"2:50
         | 
| 115 | 
            -
                      PM","high":119.585,"low":119.585,"average":119.585,"volume":100,"notional":11958.5,"numberOfTrades":1,"marketHigh":119.61,"marketLow":119.575,"marketAverage":119.598,"marketVolume":17192,"marketNotional":2056133.3222,"marketNumberOfTrades":58,"open":119.585,"close":119.585,"marketOpen":119.6,"marketClose":119.581,"changeOverTime":0.00039318041124995436,"marketChangeOverTime":0.0014318370217789298},{"date":"20190405","minute":"15:00","label":"3
         | 
| 116 | 
            -
                      PM","high":119.7,"low":119.69,"average":119.693,"volume":19,"notional":2274.16,"numberOfTrades":2,"marketHigh":119.711,"marketLow":119.675,"marketAverage":119.693,"marketVolume":15089,"marketNotional":1806052.0779,"marketNumberOfTrades":63,"open":119.69,"close":119.7,"marketOpen":119.68,"marketClose":119.695,"changeOverTime":0.0012966588030584511,"marketChangeOverTime":0.002227302033878362},{"date":"20190405","minute":"15:10","label":"3:10
         | 
| 117 | 
            -
                      PM","high":119.78,"low":119.78,"average":119.78,"volume":3,"notional":359.34,"numberOfTrades":1,"marketHigh":119.8,"marketLow":119.77,"marketAverage":119.79,"marketVolume":20627,"marketNotional":2470900.0607,"marketNumberOfTrades":124,"open":119.78,"close":119.78,"marketOpen":119.8,"marketClose":119.78,"changeOverTime":0.002024460840904185,"marketChangeOverTime":0.0030395136778115462},{"date":"20190405","minute":"15:20","label":"3:20
         | 
| 118 | 
            -
                      PM","high":119.795,"low":119.77,"average":119.778,"volume":307,"notional":36771.89,"numberOfTrades":4,"marketHigh":119.81,"marketLow":119.76,"marketAverage":119.786,"marketVolume":32789,"marketNotional":3927675.7421,"marketNumberOfTrades":229,"open":119.795,"close":119.77,"marketOpen":119.765,"marketClose":119.775,"changeOverTime":0.0020077297595744374,"marketChangeOverTime":0.0030060204141441602},{"date":"20190405","minute":"15:30","label":"3:30
         | 
| 119 | 
            -
                      PM","high":119.96,"low":119.935,"average":119.954,"volume":672,"notional":80609.465,"numberOfTrades":8,"marketHigh":119.98,"marketLow":119.933,"marketAverage":119.956,"marketVolume":25516,"marketNotional":3060788.0172,"marketNumberOfTrades":147,"open":119.935,"close":119.955,"marketOpen":119.94,"marketClose":119.96,"changeOverTime":0.003480064916595533,"marketChangeOverTime":0.004429484120006333},{"date":"20190405","minute":"15:40","label":"3:40
         | 
| 120 | 
            -
                      PM","high":119.95,"low":119.9,"average":119.926,"volume":962,"notional":115368.66,"numberOfTrades":12,"marketHigh":119.96,"marketLow":119.89,"marketAverage":119.92,"marketVolume":35881,"marketNotional":4302861.658,"marketNumberOfTrades":245,"open":119.94,"close":119.93,"marketOpen":119.935,"marketClose":119.92,"changeOverTime":0.0032458297779785947,"marketChangeOverTime":0.004128044747000218},{"date":"20190405","minute":"15:50","label":"3:50
         | 
| 121 | 
            -
                      PM","high":119.925,"low":119.845,"average":119.876,"volume":1909,"notional":228843.145,"numberOfTrades":23,"marketHigh":119.93,"marketLow":119.83,"marketAverage":119.882,"marketVolume":52566,"marketNotional":6301732.346,"marketNumberOfTrades":301,"open":119.925,"close":119.85,"marketOpen":119.93,"marketClose":119.85,"changeOverTime":0.00282755274473396,"marketChangeOverTime":0.0038098587421604687}]'
         | 
| 122 | 
            -
                  http_version:
         | 
| 123 | 
            -
                recorded_at: Mon, 08 Apr 2019 11:43:26 GMT
         | 
| 124 | 
            -
            recorded_with: VCR 4.0.0
         | 
| 3 | 
            +
            - request:
         | 
| 4 | 
            +
                method: get
         | 
| 5 | 
            +
                uri: https://cloud.iexapis.com/v1/stock/MSFT/chart/1d?chartInterval=10&token=test-iex-api-publishable-token
         | 
| 6 | 
            +
                body:
         | 
| 7 | 
            +
                  encoding: US-ASCII
         | 
| 8 | 
            +
                  string: ''
         | 
| 9 | 
            +
                headers:
         | 
| 10 | 
            +
                  Accept:
         | 
| 11 | 
            +
                  - application/json; charset=utf-8
         | 
| 12 | 
            +
                  User-Agent:
         | 
| 13 | 
            +
                  - IEX Ruby Client/1.1.1
         | 
| 14 | 
            +
                  Accept-Encoding:
         | 
| 15 | 
            +
                  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
         | 
| 16 | 
            +
              response:
         | 
| 17 | 
            +
                status:
         | 
| 18 | 
            +
                  code: 200
         | 
| 19 | 
            +
                  message: OK
         | 
| 20 | 
            +
                headers:
         | 
| 21 | 
            +
                  Server:
         | 
| 22 | 
            +
                  - nginx
         | 
| 23 | 
            +
                  Date:
         | 
| 24 | 
            +
                  - Sat, 10 Aug 2019 15:56:36 GMT
         | 
| 25 | 
            +
                  Content-Type:
         | 
| 26 | 
            +
                  - application/json; charset=utf-8
         | 
| 27 | 
            +
                  Transfer-Encoding:
         | 
| 28 | 
            +
                  - chunked
         | 
| 29 | 
            +
                  Connection:
         | 
| 30 | 
            +
                  - keep-alive
         | 
| 31 | 
            +
                  Set-Cookie:
         | 
| 32 | 
            +
                  - ctoken=69243165720540008ee521b557f61752; Max-Age=43200; Path=/; Expires=Sun,
         | 
| 33 | 
            +
                    11 Aug 2019 03:56:36 GMT
         | 
| 34 | 
            +
                  Iexcloud-Messages-Used:
         | 
| 35 | 
            +
                  - '0'
         | 
| 36 | 
            +
                  X-Content-Type-Options:
         | 
| 37 | 
            +
                  - nosniff
         | 
| 38 | 
            +
                  Strict-Transport-Security:
         | 
| 39 | 
            +
                  - max-age=15768000
         | 
| 40 | 
            +
                  Access-Control-Allow-Origin:
         | 
| 41 | 
            +
                  - "*"
         | 
| 42 | 
            +
                  Access-Control-Allow-Credentials:
         | 
| 43 | 
            +
                  - 'true'
         | 
| 44 | 
            +
                  Access-Control-Allow-Methods:
         | 
| 45 | 
            +
                  - GET, OPTIONS
         | 
| 46 | 
            +
                  Access-Control-Allow-Headers:
         | 
| 47 | 
            +
                  - Origin, X-Requested-With, Content-Type, Accept
         | 
| 48 | 
            +
                body:
         | 
| 49 | 
            +
                  encoding: ASCII-8BIT
         | 
| 50 | 
            +
                  string: '[{"date":"2019-08-09","minute":"09:30","label":"09:30 AM","high":138.72,"low":138.5,"open":138.72,"close":138.68,"average":138.632,"volume":3673,"notional":509195.675,"numberOfTrades":23},{"date":"2019-08-09","minute":"09:40","label":"09:40
         | 
| 51 | 
            +
                    AM","high":139.055,"low":138.95,"open":139.01,"close":139,"average":139.001,"volume":2303,"notional":320120.44,"numberOfTrades":22},{"date":"2019-08-09","minute":"09:50","label":"09:50
         | 
| 52 | 
            +
                    AM","high":137.96,"low":137.88,"open":137.92,"close":137.89,"average":137.924,"volume":800,"notional":110339.5,"numberOfTrades":8},{"date":"2019-08-09","minute":"10:00","label":"10
         | 
| 53 | 
            +
                    AM","high":137.605,"low":137.495,"open":137.585,"close":137.51,"average":137.558,"volume":3740,"notional":514468.05,"numberOfTrades":32},{"date":"2019-08-09","minute":"10:10","label":"10:10
         | 
| 54 | 
            +
                    AM","high":137.655,"low":137.38,"open":137.38,"close":137.51,"average":137.507,"volume":1171,"notional":161020.8,"numberOfTrades":15},{"date":"2019-08-09","minute":"10:20","label":"10:20
         | 
| 55 | 
            +
                    AM","high":137.66,"low":137.46,"open":137.46,"close":137.635,"average":137.598,"volume":611,"notional":84072.625,"numberOfTrades":8},{"date":"2019-08-09","minute":"10:30","label":"10:30
         | 
| 56 | 
            +
                    AM","high":137.74,"low":137.57,"open":137.6,"close":137.74,"average":137.643,"volume":1420,"notional":195453,"numberOfTrades":14},{"date":"2019-08-09","minute":"10:40","label":"10:40
         | 
| 57 | 
            +
                    AM","high":137.395,"low":137.32,"open":137.39,"close":137.335,"average":137.347,"volume":2028,"notional":278540.665,"numberOfTrades":12},{"date":"2019-08-09","minute":"10:50","label":"10:50
         | 
| 58 | 
            +
                    AM","high":137.61,"low":137.4,"open":137.4,"close":137.565,"average":137.554,"volume":594,"notional":81706.99,"numberOfTrades":8},{"date":"2019-08-09","minute":"11:00","label":"11
         | 
| 59 | 
            +
                    AM","high":137.81,"low":137.735,"open":137.775,"close":137.76,"average":137.778,"volume":1200,"notional":165333.5,"numberOfTrades":7},{"date":"2019-08-09","minute":"11:10","label":"11:10
         | 
| 60 | 
            +
                    AM","high":137.485,"low":137.32,"open":137.32,"close":137.485,"average":137.427,"volume":1101,"notional":151307.37,"numberOfTrades":9},{"date":"2019-08-09","minute":"11:20","label":"11:20
         | 
| 61 | 
            +
                    AM","high":137.41,"low":137.38,"open":137.41,"close":137.38,"average":137.381,"volume":106,"notional":14562.44,"numberOfTrades":4},{"date":"2019-08-09","minute":"11:30","label":"11:30
         | 
| 62 | 
            +
                    AM","high":136.905,"low":136.7,"open":136.7,"close":136.905,"average":136.836,"volume":1424,"notional":194854.9,"numberOfTrades":12},{"date":"2019-08-09","minute":"11:40","label":"11:40
         | 
| 63 | 
            +
                    AM","high":136.73,"low":136.73,"open":136.73,"close":136.73,"average":136.73,"volume":100,"notional":13673,"numberOfTrades":1},{"date":"2019-08-09","minute":"11:50","label":"11:50
         | 
| 64 | 
            +
                    AM","high":137.17,"low":137.08,"open":137.08,"close":137.15,"average":137.107,"volume":258,"notional":35373.72,"numberOfTrades":4},{"date":"2019-08-09","minute":"12:00","label":"12
         | 
| 65 | 
            +
                    PM","high":136.72,"low":136.72,"open":136.72,"close":136.72,"average":136.72,"volume":20,"notional":2734.4,"numberOfTrades":1},{"date":"2019-08-09","minute":"12:10","label":"12:10
         | 
| 66 | 
            +
                    PM","high":136.975,"low":136.9,"open":136.91,"close":136.9,"average":136.922,"volume":1101,"notional":150751.41,"numberOfTrades":6},{"date":"2019-08-09","minute":"12:20","label":"12:20
         | 
| 67 | 
            +
                    PM","high":136.595,"low":136.57,"open":136.59,"close":136.595,"average":136.584,"volume":400,"notional":54633.5,"numberOfTrades":4},{"date":"2019-08-09","minute":"12:30","label":"12:30
         | 
| 68 | 
            +
                    PM","high":136.76,"low":136.685,"open":136.76,"close":136.725,"average":136.737,"volume":1198,"notional":163810.46,"numberOfTrades":11},{"date":"2019-08-09","minute":"12:40","label":"12:40
         | 
| 69 | 
            +
                    PM","high":136.885,"low":136.785,"open":136.88,"close":136.885,"average":136.835,"volume":1540,"notional":210725.4,"numberOfTrades":11},{"date":"2019-08-09","minute":"12:50","label":"12:50
         | 
| 70 | 
            +
                    PM","high":137.06,"low":137.015,"open":137.055,"close":137.035,"average":137.043,"volume":900,"notional":123339,"numberOfTrades":9},{"date":"2019-08-09","minute":"13:00","label":"1
         | 
| 71 | 
            +
                    PM","high":137.53,"low":137.4,"open":137.4,"close":137.47,"average":137.49,"volume":715,"notional":98305.52,"numberOfTrades":9},{"date":"2019-08-09","minute":"13:10","label":"1:10
         | 
| 72 | 
            +
                    PM","high":137.575,"low":137.47,"open":137.515,"close":137.545,"average":137.52,"volume":303,"notional":41668.555,"numberOfTrades":7},{"date":"2019-08-09","minute":"13:20","label":"1:20
         | 
| 73 | 
            +
                    PM","high":137.965,"low":137.79,"open":137.79,"close":137.955,"average":137.901,"volume":614,"notional":84671.455,"numberOfTrades":14},{"date":"2019-08-09","minute":"13:30","label":"1:30
         | 
| 74 | 
            +
                    PM","high":138.25,"low":138.095,"open":138.095,"close":138.25,"average":138.19,"volume":500,"notional":69094.77,"numberOfTrades":7},{"date":"2019-08-09","minute":"13:40","label":"1:40
         | 
| 75 | 
            +
                    PM","high":138.29,"low":138.175,"open":138.175,"close":138.29,"average":138.28,"volume":260,"notional":35952.685,"numberOfTrades":7},{"date":"2019-08-09","minute":"13:50","label":"1:50
         | 
| 76 | 
            +
                    PM","high":138.195,"low":138.13,"open":138.195,"close":138.13,"average":138.174,"volume":600,"notional":82904.5,"numberOfTrades":3},{"date":"2019-08-09","minute":"14:00","label":"2
         | 
| 77 | 
            +
                    PM","high":138.015,"low":137.94,"open":137.995,"close":137.94,"average":137.971,"volume":384,"notional":52980.935,"numberOfTrades":10},{"date":"2019-08-09","minute":"14:10","label":"2:10
         | 
| 78 | 
            +
                    PM","high":138.05,"low":137.975,"open":138.05,"close":137.975,"average":138.028,"volume":600,"notional":82816.5,"numberOfTrades":6},{"date":"2019-08-09","minute":"14:20","label":"2:20
         | 
| 79 | 
            +
                    PM","high":138.04,"low":137.965,"open":138.04,"close":137.965,"average":137.974,"volume":1100,"notional":151771.905,"numberOfTrades":4},{"date":"2019-08-09","minute":"14:30","label":"2:30
         | 
| 80 | 
            +
                    PM","high":138.29,"low":138.17,"open":138.175,"close":138.28,"average":138.25,"volume":608,"notional":84056.02,"numberOfTrades":12},{"date":"2019-08-09","minute":"14:40","label":"2:40
         | 
| 81 | 
            +
                    PM","high":138.125,"low":138.1,"open":138.1,"close":138.12,"average":138.114,"volume":402,"notional":55521.725,"numberOfTrades":6},{"date":"2019-08-09","minute":"14:50","label":"2:50
         | 
| 82 | 
            +
                    PM","high":138.06,"low":138.01,"open":138.035,"close":138.045,"average":138.046,"volume":800,"notional":110437,"numberOfTrades":5},{"date":"2019-08-09","minute":"15:00","label":"3
         | 
| 83 | 
            +
                    PM","high":138.05,"low":138,"open":138.03,"close":138.05,"average":138.025,"volume":417,"notional":57556.3,"numberOfTrades":7},{"date":"2019-08-09","minute":"15:10","label":"3:10
         | 
| 84 | 
            +
                    PM","high":138.455,"low":138.395,"open":138.4,"close":138.43,"average":138.435,"volume":302,"notional":41807.53,"numberOfTrades":6},{"date":"2019-08-09","minute":"15:20","label":"3:20
         | 
| 85 | 
            +
                    PM","high":138.3,"low":138.275,"open":138.275,"close":138.275,"average":138.286,"volume":500,"notional":69143.19,"numberOfTrades":9},{"date":"2019-08-09","minute":"15:30","label":"3:30
         | 
| 86 | 
            +
                    PM","high":138.365,"low":138.29,"open":138.345,"close":138.365,"average":138.338,"volume":724,"notional":100156.59,"numberOfTrades":9},{"date":"2019-08-09","minute":"15:40","label":"3:40
         | 
| 87 | 
            +
                    PM","high":138.46,"low":138.395,"open":138.46,"close":138.4,"average":138.44,"volume":1405,"notional":194507.95,"numberOfTrades":17},{"date":"2019-08-09","minute":"15:50","label":"3:50
         | 
| 88 | 
            +
                    PM","high":138.195,"low":138.1,"open":138.13,"close":138.1,"average":138.143,"volume":1282,"notional":177099.895,"numberOfTrades":14}]'
         | 
| 89 | 
            +
                http_version:
         | 
| 90 | 
            +
              recorded_at: Sat, 10 Aug 2019 15:56:36 GMT
         | 
| 91 | 
            +
            recorded_with: VCR 5.0.0
         | 
| @@ -1,109 +1,75 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            http_interactions:
         | 
| 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 | 
            -
                    Access-Control-Allow-Methods:
         | 
| 77 | 
            -
                      - GET, OPTIONS
         | 
| 78 | 
            -
                    Access-Control-Allow-Headers:
         | 
| 79 | 
            -
                      - Origin, X-Requested-With, Content-Type, Accept
         | 
| 80 | 
            -
                  body:
         | 
| 81 | 
            -
                    encoding: ASCII-8BIT
         | 
| 82 | 
            -
                    string:
         | 
| 83 | 
            -
                      '{"range":"1m","data":[{"date":"2019-03-06","open":111.87,"close":111.75,"high":112.66,"low":111.43,"volume":17686996,"uOpen":111.87,"uClose":111.75,"uHigh":112.66,"uLow":111.43,"uVolume":17686996,"change":0,"changePercent":0,"label":"Mar
         | 
| 84 | 
            -
                      6","changeOverTime":0},{"date":"2019-03-07","open":111.4,"close":110.39,"high":111.55,"low":109.86,"volume":25338954,"uOpen":111.4,"uClose":110.39,"uHigh":111.55,"uLow":109.86,"uVolume":25338954,"change":-1.36,"changePercent":-1.217,"label":"Mar
         | 
| 85 | 
            -
                      7","changeOverTime":-0.01217},{"date":"2019-03-08","open":109.16,"close":110.51,"high":110.71,"low":108.8,"volume":22818430,"uOpen":109.16,"uClose":110.51,"uHigh":110.71,"uLow":108.8,"uVolume":22818430,"change":0.12,"changePercent":0.1087,"label":"Mar
         | 
| 86 | 
            -
                      8","changeOverTime":-0.011096},{"date":"2019-03-11","open":110.99,"close":112.83,"high":112.95,"low":110.98,"volume":26491618,"uOpen":110.99,"uClose":112.83,"uHigh":112.95,"uLow":110.98,"uVolume":26491618,"change":2.32,"changePercent":2.0994,"label":"Mar
         | 
| 87 | 
            -
                      11","changeOverTime":0.009664},{"date":"2019-03-12","open":112.82,"close":113.62,"high":113.99,"low":112.65,"volume":26132717,"uOpen":112.82,"uClose":113.62,"uHigh":113.99,"uLow":112.65,"uVolume":26132717,"change":0.79,"changePercent":0.7002,"label":"Mar
         | 
| 88 | 
            -
                      12","changeOverTime":0.016734},{"date":"2019-03-13","open":114.13,"close":114.5,"high":115,"low":113.78,"volume":35513771,"uOpen":114.13,"uClose":114.5,"uHigh":115,"uLow":113.78,"uVolume":35513771,"change":0.88,"changePercent":0.7745,"label":"Mar
         | 
| 89 | 
            -
                      13","changeOverTime":0.024609},{"date":"2019-03-14","open":114.54,"close":114.59,"high":115.2,"low":114.33,"volume":30763367,"uOpen":114.54,"uClose":114.59,"uHigh":115.2,"uLow":114.33,"uVolume":30763367,"change":0.09,"changePercent":0.0786,"label":"Mar
         | 
| 90 | 
            -
                      14","changeOverTime":0.025414},{"date":"2019-03-15","open":115.34,"close":115.91,"high":117.25,"low":114.59,"volume":54630661,"uOpen":115.34,"uClose":115.91,"uHigh":117.25,"uLow":114.59,"uVolume":54630661,"change":1.32,"changePercent":1.1519,"label":"Mar
         | 
| 91 | 
            -
                      15","changeOverTime":0.037226},{"date":"2019-03-18","open":116.17,"close":117.57,"high":117.61,"low":116.05,"volume":31207596,"uOpen":116.17,"uClose":117.57,"uHigh":117.61,"uLow":116.05,"uVolume":31207596,"change":1.66,"changePercent":1.4321,"label":"Mar
         | 
| 92 | 
            -
                      18","changeOverTime":0.052081},{"date":"2019-03-19","open":118.09,"close":117.65,"high":118.44,"low":116.99,"volume":37588697,"uOpen":118.09,"uClose":117.65,"uHigh":118.44,"uLow":116.99,"uVolume":37588697,"change":0.08,"changePercent":0.068,"label":"Mar
         | 
| 93 | 
            -
                      19","changeOverTime":0.052796},{"date":"2019-03-20","open":117.39,"close":117.52,"high":118.75,"low":116.71,"volume":28113343,"uOpen":117.39,"uClose":117.52,"uHigh":118.75,"uLow":116.71,"uVolume":28113343,"change":-0.13,"changePercent":-0.1105,"label":"Mar
         | 
| 94 | 
            -
                      20","changeOverTime":0.051633},{"date":"2019-03-21","open":117.14,"close":120.22,"high":120.82,"low":117.09,"volume":29854446,"uOpen":117.14,"uClose":120.22,"uHigh":120.82,"uLow":117.09,"uVolume":29854446,"change":2.7,"changePercent":2.2975,"label":"Mar
         | 
| 95 | 
            -
                      21","changeOverTime":0.075794},{"date":"2019-03-22","open":119.5,"close":117.05,"high":119.59,"low":117.04,"volume":33624528,"uOpen":119.5,"uClose":117.05,"uHigh":119.59,"uLow":117.04,"uVolume":33624528,"change":-3.17,"changePercent":-2.6368,"label":"Mar
         | 
| 96 | 
            -
                      22","changeOverTime":0.047427},{"date":"2019-03-25","open":116.56,"close":117.66,"high":118.01,"low":116.32,"volume":27067117,"uOpen":116.56,"uClose":117.66,"uHigh":118.01,"uLow":116.32,"uVolume":27067117,"change":0.61,"changePercent":0.5211,"label":"Mar
         | 
| 97 | 
            -
                      25","changeOverTime":0.052886},{"date":"2019-03-26","open":118.62,"close":117.91,"high":118.7,"low":116.85,"volume":26097665,"uOpen":118.62,"uClose":117.91,"uHigh":118.7,"uLow":116.85,"uVolume":26097665,"change":0.25,"changePercent":0.2125,"label":"Mar
         | 
| 98 | 
            -
                      26","changeOverTime":0.055123},{"date":"2019-03-27","open":117.88,"close":116.77,"high":118.21,"low":115.52,"volume":22733427,"uOpen":117.88,"uClose":116.77,"uHigh":118.21,"uLow":115.52,"uVolume":22733427,"change":-1.14,"changePercent":-0.9668,"label":"Mar
         | 
| 99 | 
            -
                      27","changeOverTime":0.044922},{"date":"2019-03-28","open":117.44,"close":116.93,"high":117.58,"low":116.13,"volume":18334755,"uOpen":117.44,"uClose":116.93,"uHigh":117.58,"uLow":116.13,"uVolume":18334755,"change":0.16,"changePercent":0.137,"label":"Mar
         | 
| 100 | 
            -
                      28","changeOverTime":0.046353},{"date":"2019-03-29","open":118.07,"close":117.94,"high":118.32,"low":116.96,"volume":25399752,"uOpen":118.07,"uClose":117.94,"uHigh":118.32,"uLow":116.96,"uVolume":25399752,"change":1.01,"changePercent":0.8638,"label":"Mar
         | 
| 101 | 
            -
                      29","changeOverTime":0.055391},{"date":"2019-04-01","open":118.95,"close":119.02,"high":119.11,"low":118.1,"volume":22789103,"uOpen":118.95,"uClose":119.02,"uHigh":119.11,"uLow":118.1,"uVolume":22789103,"change":1.08,"changePercent":0.9157,"label":"Apr
         | 
| 102 | 
            -
                      1","changeOverTime":0.065056},{"date":"2019-04-02","open":119.06,"close":119.19,"high":119.48,"low":118.52,"volume":18142297,"uOpen":119.06,"uClose":119.19,"uHigh":119.48,"uLow":118.52,"uVolume":18142297,"change":0.17,"changePercent":0.1428,"label":"Apr
         | 
| 103 | 
            -
                      2","changeOverTime":0.066577},{"date":"2019-04-03","open":119.86,"close":119.97,"high":120.43,"low":119.15,"volume":22860744,"uOpen":119.86,"uClose":119.97,"uHigh":120.43,"uLow":119.15,"uVolume":22860744,"change":0.78,"changePercent":0.6544,"label":"Apr
         | 
| 104 | 
            -
                      3","changeOverTime":0.073557},{"date":"2019-04-04","open":120.1,"close":119.36,"high":120.23,"low":118.38,"volume":20112848,"uOpen":120.1,"uClose":119.36,"uHigh":120.23,"uLow":118.38,"uVolume":20112848,"change":-0.61,"changePercent":-0.5085,"label":"Apr
         | 
| 105 | 
            -
                      4","changeOverTime":0.068098},{"date":"2019-04-05","open":119.39,"close":119.89,"high":120.23,"low":119.37,"volume":15826245,"uOpen":119.39,"uClose":119.89,"uHigh":120.23,"uLow":119.37,"uVolume":15826245,"change":0.53,"changePercent":0.444,"label":"Apr
         | 
| 106 | 
            -
                      5","changeOverTime":0.072841}]}'
         | 
| 107 | 
            -
                  http_version:
         | 
| 108 | 
            -
                recorded_at: Mon, 08 Apr 2019 11:43:28 GMT
         | 
| 109 | 
            -
            recorded_with: VCR 4.0.0
         | 
| 3 | 
            +
            - request:
         | 
| 4 | 
            +
                method: get
         | 
| 5 | 
            +
                uri: https://cloud.iexapis.com/v1/stock/MSFT/chart/dynamic?token=test-iex-api-publishable-token
         | 
| 6 | 
            +
                body:
         | 
| 7 | 
            +
                  encoding: US-ASCII
         | 
| 8 | 
            +
                  string: ''
         | 
| 9 | 
            +
                headers:
         | 
| 10 | 
            +
                  Accept:
         | 
| 11 | 
            +
                  - application/json; charset=utf-8
         | 
| 12 | 
            +
                  User-Agent:
         | 
| 13 | 
            +
                  - IEX Ruby Client/1.1.1
         | 
| 14 | 
            +
                  Accept-Encoding:
         | 
| 15 | 
            +
                  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
         | 
| 16 | 
            +
              response:
         | 
| 17 | 
            +
                status:
         | 
| 18 | 
            +
                  code: 200
         | 
| 19 | 
            +
                  message: OK
         | 
| 20 | 
            +
                headers:
         | 
| 21 | 
            +
                  Server:
         | 
| 22 | 
            +
                  - nginx
         | 
| 23 | 
            +
                  Date:
         | 
| 24 | 
            +
                  - Sat, 10 Aug 2019 15:56:37 GMT
         | 
| 25 | 
            +
                  Content-Type:
         | 
| 26 | 
            +
                  - application/json; charset=utf-8
         | 
| 27 | 
            +
                  Transfer-Encoding:
         | 
| 28 | 
            +
                  - chunked
         | 
| 29 | 
            +
                  Connection:
         | 
| 30 | 
            +
                  - keep-alive
         | 
| 31 | 
            +
                  Set-Cookie:
         | 
| 32 | 
            +
                  - ctoken=a04d30a519684bb09984758392ae202c; Max-Age=43200; Path=/; Expires=Sun,
         | 
| 33 | 
            +
                    11 Aug 2019 03:56:37 GMT
         | 
| 34 | 
            +
                  Iexcloud-Messages-Used:
         | 
| 35 | 
            +
                  - '0'
         | 
| 36 | 
            +
                  X-Content-Type-Options:
         | 
| 37 | 
            +
                  - nosniff
         | 
| 38 | 
            +
                  Strict-Transport-Security:
         | 
| 39 | 
            +
                  - max-age=15768000
         | 
| 40 | 
            +
                  Access-Control-Allow-Origin:
         | 
| 41 | 
            +
                  - "*"
         | 
| 42 | 
            +
                  Access-Control-Allow-Credentials:
         | 
| 43 | 
            +
                  - 'true'
         | 
| 44 | 
            +
                  Access-Control-Allow-Methods:
         | 
| 45 | 
            +
                  - GET, OPTIONS
         | 
| 46 | 
            +
                  Access-Control-Allow-Headers:
         | 
| 47 | 
            +
                  - Origin, X-Requested-With, Content-Type, Accept
         | 
| 48 | 
            +
                body:
         | 
| 49 | 
            +
                  encoding: ASCII-8BIT
         | 
| 50 | 
            +
                  string: '{"range":"1m","data":[{"date":"2019-07-10","label":"Jul 10","high":138.58,"low":137.02,"open":137.13,"close":137.85,"volume":24204362},{"date":"2019-07-11","label":"Jul
         | 
| 51 | 
            +
                    11","high":139.22,"low":137.87,"open":138.2,"close":138.4,"volume":22327942},{"date":"2019-07-12","label":"Jul
         | 
| 52 | 
            +
                    12","high":139.13,"low":138,"open":138.85,"close":138.9,"volume":18936832},{"date":"2019-07-15","label":"Jul
         | 
| 53 | 
            +
                    15","high":139.54,"low":138.46,"open":139.44,"close":138.9,"volume":16651457},{"date":"2019-07-16","label":"Jul
         | 
| 54 | 
            +
                    16","high":139.05,"low":136.52,"open":138.96,"close":137.08,"volume":22726128},{"date":"2019-07-17","label":"Jul
         | 
| 55 | 
            +
                    17","high":137.93,"low":136.22,"open":137.7,"close":136.27,"volume":20210956},{"date":"2019-07-18","label":"Jul
         | 
| 56 | 
            +
                    18","high":136.62,"low":134.67,"open":135.55,"close":136.42,"volume":30808707},{"date":"2019-07-19","label":"Jul
         | 
| 57 | 
            +
                    19","high":140.67,"low":136.45,"open":140.22,"close":136.62,"volume":48992364},{"date":"2019-07-22","label":"Jul
         | 
| 58 | 
            +
                    22","high":139.19,"low":137.33,"open":137.41,"close":138.43,"volume":25080760},{"date":"2019-07-23","label":"Jul
         | 
| 59 | 
            +
                    23","high":139.99,"low":138.03,"open":139.76,"close":139.29,"volume":18034589},{"date":"2019-07-24","label":"Jul
         | 
| 60 | 
            +
                    24","high":140.74,"low":138.85,"open":138.9,"close":140.72,"volume":20738275},{"date":"2019-07-25","label":"Jul
         | 
| 61 | 
            +
                    25","high":140.61,"low":139.32,"open":140.43,"close":140.19,"volume":18356883},{"date":"2019-07-26","label":"Jul
         | 
| 62 | 
            +
                    26","high":141.67,"low":140.3,"open":140.37,"close":141.34,"volume":19037600},{"date":"2019-07-29","label":"Jul
         | 
| 63 | 
            +
                    29","high":141.51,"low":139.36,"open":141.5,"close":141.03,"volume":16605870},{"date":"2019-07-30","label":"Jul
         | 
| 64 | 
            +
                    30","high":141.21,"low":139.8,"open":140.14,"close":140.35,"volume":16846528},{"date":"2019-07-31","label":"Jul
         | 
| 65 | 
            +
                    31","high":140.49,"low":135.08,"open":140.33,"close":136.27,"volume":38598786},{"date":"2019-08-01","label":"Aug
         | 
| 66 | 
            +
                    1","high":140.93,"low":136.93,"open":137,"close":138.06,"volume":40557502},{"date":"2019-08-02","label":"Aug
         | 
| 67 | 
            +
                    2","high":138.32,"low":135.26,"open":138.09,"close":136.9,"volume":30791624},{"date":"2019-08-05","label":"Aug
         | 
| 68 | 
            +
                    5","high":133.92,"low":130.78,"open":133.3,"close":132.21,"volume":42749551},{"date":"2019-08-06","label":"Aug
         | 
| 69 | 
            +
                    6","high":135.68,"low":133.21,"open":133.8,"close":134.69,"volume":32696651},{"date":"2019-08-07","label":"Aug
         | 
| 70 | 
            +
                    7","high":135.65,"low":131.82,"open":133.79,"close":135.28,"volume":33414539},{"date":"2019-08-08","label":"Aug
         | 
| 71 | 
            +
                    8","high":138.99,"low":135.93,"open":136.6,"close":138.89,"volume":27496508},{"date":"2019-08-09","label":"Aug
         | 
| 72 | 
            +
                    9","high":139.38,"low":136.46,"open":138.61,"close":137.71,"volume":23466701}]}'
         | 
| 73 | 
            +
                http_version:
         | 
| 74 | 
            +
              recorded_at: Sat, 10 Aug 2019 15:56:37 GMT
         | 
| 75 | 
            +
            recorded_with: VCR 5.0.0
         |