├── .dockerignore ├── .env ├── .gitattributes ├── .gitignore ├── Dockerfile ├── LICENSE ├── README.md ├── cryptoasset ├── bitcoin.go ├── bitcoin_test.go ├── database.go ├── date_test.go ├── doc.go ├── export_test.go ├── mock_test.go ├── testdata │ ├── bitcoin │ │ ├── 01 │ │ │ └── result.json │ │ ├── 02 │ │ │ └── result.json │ │ └── 03 │ │ │ └── result.json │ └── database │ │ └── bitcoin.json └── utlis_test.go ├── db └── init.js ├── dbmongo ├── doc.go └── mongo.go ├── doc.go ├── docker-compose.yml ├── go.mod ├── go.sum ├── httpserver ├── doc.go └── http.go ├── main.go ├── queuerabbit ├── doc.go └── rabbit.go └── servicemanager ├── doc.go └── service.go /.dockerignore: -------------------------------------------------------------------------------- 1 | .env 2 | go.work 3 | go.work.sum -------------------------------------------------------------------------------- /.env: -------------------------------------------------------------------------------- 1 | RABBITMQ_URI="amqp://guest:guest@localhost:5672?heartbeat=30&connection_timeout=120" 2 | MONGO_URI="mongodb://root:root@localhost:27017" -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | db/* linguist-documentation 2 | cryptoasset/testdata/* linguist-documentation -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Binaries for programs and plugins 2 | *.exe 3 | *.exe~ 4 | *.dll 5 | *.so 6 | *.dylib 7 | 8 | # Test binary, built with `go test -c` 9 | *.test 10 | 11 | # Output of the go coverage tool, specifically when used with LiteIDE 12 | *.out 13 | 14 | # Dependency directories (remove the comment below to include it) 15 | # vendor/ 16 | service-golang 17 | go.work 18 | go.work.sum -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | # --- Stage 1: 2 | FROM golang:1.19-alpine as builder 3 | # Args & ENVs 4 | ENV BUILD_PATH=/go/src/github.com/gbeletti/service-golang 5 | 6 | RUN apk update && apk add --no-cache curl gcc git libc-dev 7 | # COPY local files 8 | WORKDIR ${BUILD_PATH} 9 | COPY . . 10 | 11 | # Get go dependencies 12 | RUN go mod download 13 | 14 | # revive (go lint successor) 15 | RUN go install github.com/mgechev/revive@latest && \ 16 | revive ./... 17 | 18 | # gosec - Golang Security Checker 19 | RUN curl -sfL https://raw.githubusercontent.com/securego/gosec/master/install.sh | sh -s -- -b ${GOPATH}/bin latest && \ 20 | gosec ./... 21 | 22 | # Build dynamically linked Go binary 23 | RUN CGO_ENABLED=1 GOOS=linux GOARCH=amd64 \ 24 | go build -o service 25 | 26 | RUN cp ${BUILD_PATH}/service /bin/service 27 | 28 | # --- Stage 2: 29 | FROM alpine:3 30 | # Install dependencies 31 | RUN apk update && apk add --no-cache ca-certificates tzdata libc6-compat 32 | # Copy binary from builder 33 | COPY --from=builder /bin/service /service 34 | # Run the application on container startup. 35 | CMD ["/service"] 36 | EXPOSE 8000 -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 Gabriel Beletti 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # service-golang 2 | 3 | This is a simple example to build a microservice in Go. It has an HTTP server and RabbitMQ client packages. 4 | 5 | ## Running it 6 | 7 | The service needs MongoDB and RabbitMQ to run succesfully. Let's use `docker-compose` to run those servers. 8 | 9 | ```bash 10 | docker-compose up -d mongodb rabbitmq 11 | ``` 12 | 13 | And now you can build and run the server: 14 | 15 | ```bash 16 | go build && ./service-golang 17 | ``` 18 | 19 | ## Creating and image with docker 20 | 21 | To run as a service we can create an image and use docker-compose to start the containers. First the image: 22 | 23 | ```bash 24 | docker build . -t service:latest 25 | ``` 26 | 27 | Now we can run all the servers together using `docker-compose`. 28 | 29 | ```bash 30 | docker-compose up -d 31 | ``` 32 | 33 | ## Accessing the API 34 | 35 | To see a Hello World: [localhost:8000](http://localhost:8000). 36 | 37 | To check the bitcoin variation on a period: [localhost:8000/bitcoin/startdate/YYYY-MM-DD/enddate/YYYY-MM-DD](http://localhost:8000/bitcoin/startdate/2018-11-01/enddate/2018-11-30) 38 | 39 | ## Stopping the services 40 | 41 | Again with `docker-compose`: 42 | 43 | ```bash 44 | docker-compose down 45 | ``` 46 | -------------------------------------------------------------------------------- /cryptoasset/bitcoin.go: -------------------------------------------------------------------------------- 1 | package cryptoasset 2 | 3 | import ( 4 | "errors" 5 | "time" 6 | ) 7 | 8 | const ( 9 | dateLayout string = "2006-01-02" 10 | ) 11 | 12 | var ( 13 | // ErrStartDateAfterEndDate is the error returned when the start date is after the end date 14 | ErrStartDateAfterEndDate = errors.New("start date after end date") 15 | ) 16 | 17 | // BitcoinPrice represents the price of a bitcoin on a given date. 18 | type BitcoinPrice struct { 19 | Date string `json:"date"` 20 | Price float64 `json:"price"` 21 | } 22 | 23 | // Variation represents a single day variation of an asset 24 | type Variation struct { 25 | Date string `json:"date"` 26 | Variation float64 `json:"variation"` 27 | } 28 | 29 | // GetBitcoinVariation returns the bitcoin variation on a given period. 30 | // The expected format is YYYY-MM-DD. 31 | func GetBitcoinVariation(startDate, endDate string) (btcVars []Variation, err error) { 32 | start, end, err := validateStartEndDates(startDate, endDate) 33 | if err != nil { 34 | return 35 | } 36 | btcVars = calculateBitcoinVariation(start, end, btcDB{}) 37 | 38 | return 39 | } 40 | 41 | func calculateBitcoinVariation(start, end time.Time, btcGetter BitcoinPriceGetter) (btcVars []Variation) { 42 | end = end.AddDate(0, 0, 1) 43 | var firstDone bool 44 | var btcPricePrevius BitcoinPrice 45 | var err error 46 | for start.Before(end) { 47 | var btcPrice BitcoinPrice 48 | btcPrice, err = btcGetter.GetBitcoinPrice(start.Format(dateLayout)) 49 | if err != nil { 50 | btcVars = append(btcVars, Variation{ 51 | Date: start.Format(dateLayout), 52 | Variation: 0.0, 53 | }) 54 | start = start.AddDate(0, 0, 1) 55 | continue 56 | } 57 | if !firstDone { 58 | btcPricePrevius = btcPrice 59 | firstDone = true 60 | } 61 | variat := btcPrice.Price - btcPricePrevius.Price 62 | btcVars = append(btcVars, Variation{ 63 | Date: start.Format(dateLayout), 64 | Variation: variat, 65 | }) 66 | start = start.AddDate(0, 0, 1) 67 | btcPricePrevius = btcPrice 68 | } 69 | return 70 | } 71 | 72 | func validateStartEndDates(startDate, endDate string) (start, end time.Time, err error) { 73 | start, err = time.Parse(dateLayout, startDate) 74 | if err != nil { 75 | return 76 | } 77 | end, err = time.Parse(dateLayout, endDate) 78 | if err != nil { 79 | return 80 | } 81 | if start.After(end) { 82 | err = ErrStartDateAfterEndDate 83 | return 84 | } 85 | return 86 | } 87 | -------------------------------------------------------------------------------- /cryptoasset/bitcoin_test.go: -------------------------------------------------------------------------------- 1 | package cryptoasset_test 2 | 3 | import ( 4 | "flag" 5 | "strings" 6 | "testing" 7 | 8 | "github.com/gbeletti/service-golang/cryptoasset" 9 | ) 10 | 11 | var ( 12 | update = flag.Bool("update", false, "update golden file") 13 | testCase = flag.String("case", "", "run specific test case") 14 | ) 15 | 16 | func TestCalculateBitcoinVariation(t *testing.T) { 17 | tcases := []struct { 18 | name string 19 | startDate string 20 | endDate string 21 | resultFile string 22 | }{ 23 | { 24 | name: "01 - full month with all the data", 25 | startDate: "2018-01-01", 26 | endDate: "2018-01-31", 27 | resultFile: "./testdata/bitcoin/01/result.json", 28 | }, 29 | { 30 | name: "02 - data does not have the last days", 31 | startDate: "2018-11-01", 32 | endDate: "2018-11-25", 33 | resultFile: "./testdata/bitcoin/02/result.json", 34 | }, 35 | { 36 | name: "03 - only 2 days", 37 | startDate: "2018-11-12", 38 | endDate: "2018-11-13", 39 | resultFile: "./testdata/bitcoin/03/result.json", 40 | }, 41 | } 42 | mock := newMockDB(t, "./testdata/database/bitcoin.json") 43 | for _, tcase := range tcases { 44 | t.Run(tcase.name, func(t *testing.T) { 45 | testCalculateBitcoinVariation(t, tcase.name, tcase.startDate, tcase.endDate, tcase.resultFile, mock) 46 | }) 47 | } 48 | 49 | } 50 | 51 | func testCalculateBitcoinVariation(t *testing.T, name, stardDate, endDate, resultFile string, mock mockDB) { 52 | if testCase != nil && len(*testCase) > 0 { 53 | if !strings.Contains(resultFile, *testCase) { 54 | t.Skipf("skipping test case [%s]", name) 55 | } 56 | } 57 | start, end, err := cryptoasset.ValidateStartEndDates(stardDate, endDate) 58 | if err != nil { 59 | t.Fatalf("couldnt validate dates start [%s] end [%s]. error [%s]", stardDate, endDate, err) 60 | } 61 | btVariation := cryptoasset.CalculateBitcoinVariation(start, end, mock) 62 | if *update { 63 | writeJSONFile(t, resultFile, btVariation, true) 64 | return 65 | } 66 | var expected []cryptoasset.Variation 67 | readJSONFile(t, resultFile, &expected) 68 | validateBitcoinVariation(t, name, expected, btVariation) 69 | } 70 | 71 | func validateBitcoinVariation(t *testing.T, name string, expected, got []cryptoasset.Variation) { 72 | if len(expected) != len(got) { 73 | t.Errorf("test [%s] expected [%d] but got [%d]", name, len(expected), len(got)) 74 | return 75 | } 76 | for i := range expected { 77 | if expected[i].Date != got[i].Date { 78 | t.Errorf("test [%s] expected date [%s] but got [%s]", name, expected[i].Date, got[i].Date) 79 | } 80 | if expected[i].Variation != got[i].Variation { 81 | t.Errorf("test [%s] expected variation [%f] but got [%f]", name, expected[i].Variation, got[i].Variation) 82 | } 83 | } 84 | } 85 | -------------------------------------------------------------------------------- /cryptoasset/database.go: -------------------------------------------------------------------------------- 1 | package cryptoasset 2 | 3 | import ( 4 | "context" 5 | 6 | "github.com/gbeletti/service-golang/dbmongo" 7 | "go.mongodb.org/mongo-driver/bson" 8 | ) 9 | 10 | // BitcoinPriceGetter is the interface that wraps the GetBitcoinPrice method. 11 | type BitcoinPriceGetter interface { 12 | GetBitcoinPrice(date string) (btprice BitcoinPrice, err error) 13 | } 14 | 15 | type btcDB struct{} 16 | 17 | // GetBitcoinPrice returns the bitcoin price for the given date 18 | func (btc btcDB) GetBitcoinPrice(date string) (btprice BitcoinPrice, err error) { 19 | return getBitcoinPrice(date) 20 | } 21 | 22 | func getBitcoinPrice(date string) (btprice BitcoinPrice, err error) { 23 | client, err := dbmongo.GetClient() 24 | if err != nil { 25 | return 26 | } 27 | err = client.Database("data").Collection("bitcoin").FindOne(context.Background(), bson.M{"date": date}).Decode(&btprice) 28 | return 29 | } 30 | -------------------------------------------------------------------------------- /cryptoasset/date_test.go: -------------------------------------------------------------------------------- 1 | package cryptoasset_test 2 | 3 | import ( 4 | "testing" 5 | "time" 6 | 7 | "github.com/gbeletti/service-golang/cryptoasset" 8 | ) 9 | 10 | type dateInput struct { 11 | startDate string 12 | endDate string 13 | } 14 | 15 | type dateResult struct { 16 | start time.Time 17 | end time.Time 18 | errIsNil bool 19 | } 20 | 21 | func TestValidateStartEndDates(t *testing.T) { 22 | tcases := []struct { 23 | name string 24 | input dateInput 25 | result dateResult 26 | }{ 27 | { 28 | name: "valid dates", 29 | input: dateInput{ 30 | startDate: "2018-01-01", 31 | endDate: "2018-01-31", 32 | }, 33 | result: dateResult{ 34 | start: time.Date(2018, 1, 1, 0, 0, 0, 0, time.UTC), 35 | end: time.Date(2018, 1, 31, 0, 0, 0, 0, time.UTC), 36 | errIsNil: true, 37 | }, 38 | }, 39 | { 40 | name: "same dates", 41 | input: dateInput{ 42 | startDate: "2018-01-01", 43 | endDate: "2018-01-01", 44 | }, 45 | result: dateResult{ 46 | start: time.Date(2018, 1, 1, 0, 0, 0, 0, time.UTC), 47 | end: time.Date(2018, 1, 1, 0, 0, 0, 0, time.UTC), 48 | errIsNil: true, 49 | }, 50 | }, 51 | { 52 | name: "invalid dates", 53 | input: dateInput{ 54 | startDate: "2018-13-01", 55 | endDate: "2018-01-02", 56 | }, 57 | result: dateResult{ 58 | start: time.Time{}, 59 | end: time.Time{}, 60 | errIsNil: false, 61 | }, 62 | }, 63 | { 64 | name: "invalid period", 65 | input: dateInput{ 66 | startDate: "2018-12-01", 67 | endDate: "2018-01-02", 68 | }, 69 | result: dateResult{ 70 | start: time.Date(2018, 12, 1, 0, 0, 0, 0, time.UTC), 71 | end: time.Date(2018, 1, 2, 0, 0, 0, 0, time.UTC), 72 | errIsNil: false, 73 | }, 74 | }, 75 | } 76 | for _, tcase := range tcases { 77 | t.Run(tcase.name, func(t *testing.T) { 78 | testValidateStartEndDates(t, tcase.input, tcase.result) 79 | }) 80 | } 81 | } 82 | 83 | func testValidateStartEndDates(t *testing.T, input dateInput, expected dateResult) { 84 | start, end, err := cryptoasset.ValidateStartEndDates(input.startDate, input.endDate) 85 | if err != nil && expected.errIsNil { 86 | t.Errorf("error is not nil: [%s] and it should be nil", err) 87 | return 88 | } 89 | if err == nil && !expected.errIsNil { 90 | t.Errorf("error is nil, but expected error is not nil") 91 | return 92 | } 93 | if !start.Equal(expected.start) { 94 | t.Errorf("start date is not correct: expected [%s] got [%s]", expected.start, start) 95 | } 96 | if !end.Equal(expected.end) { 97 | t.Errorf("end date is not correct: expected [%s] got [%s]", expected.end, end) 98 | } 99 | } 100 | -------------------------------------------------------------------------------- /cryptoasset/doc.go: -------------------------------------------------------------------------------- 1 | // Package cryptoasset contains the calculus for bitcoin variation day by day 2 | package cryptoasset 3 | -------------------------------------------------------------------------------- /cryptoasset/export_test.go: -------------------------------------------------------------------------------- 1 | package cryptoasset 2 | 3 | var ValidateStartEndDates = validateStartEndDates 4 | var CalculateBitcoinVariation = calculateBitcoinVariation 5 | -------------------------------------------------------------------------------- /cryptoasset/mock_test.go: -------------------------------------------------------------------------------- 1 | package cryptoasset_test 2 | 3 | import ( 4 | "errors" 5 | "testing" 6 | 7 | "github.com/gbeletti/service-golang/cryptoasset" 8 | ) 9 | 10 | type mockDB struct { 11 | data map[string]cryptoasset.BitcoinPrice 12 | } 13 | 14 | func newMockDB(t *testing.T, fileDB string) (mock mockDB) { 15 | var prices []cryptoasset.BitcoinPrice 16 | readJSONFile(t, fileDB, &prices) 17 | mock = mockDB{ 18 | data: make(map[string]cryptoasset.BitcoinPrice), 19 | } 20 | for _, price := range prices { 21 | mock.data[price.Date] = price 22 | } 23 | return 24 | } 25 | 26 | func (m mockDB) GetBitcoinPrice(date string) (btprice cryptoasset.BitcoinPrice, err error) { 27 | btprice, ok := m.data[date] 28 | if !ok { 29 | err = errors.New("not found") 30 | } 31 | return 32 | } 33 | -------------------------------------------------------------------------------- /cryptoasset/testdata/bitcoin/01/result.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "date": "2018-01-01", 4 | "variation": 0 5 | }, 6 | { 7 | "date": "2018-01-02", 8 | "variation": -487.2000000000007 9 | }, 10 | { 11 | "date": "2018-01-03", 12 | "variation": 1353.2000000000007 13 | }, 14 | { 15 | "date": "2018-01-04", 16 | "variation": 292.5 17 | }, 18 | { 19 | "date": "2018-01-05", 20 | "variation": 206.5 21 | }, 22 | { 23 | "date": "2018-01-06", 24 | "variation": 1984.8999999999978 25 | }, 26 | { 27 | "date": "2018-01-07", 28 | "variation": 65.20000000000073 29 | }, 30 | { 31 | "date": "2018-01-08", 32 | "variation": -1051.0999999999985 33 | }, 34 | { 35 | "date": "2018-01-09", 36 | "variation": -1352.5 37 | }, 38 | { 39 | "date": "2018-01-10", 40 | "variation": -535.2000000000007 41 | }, 42 | { 43 | "date": "2018-01-11", 44 | "variation": 379.7000000000007 45 | }, 46 | { 47 | "date": "2018-01-12", 48 | "variation": -1514.300000000001 49 | }, 50 | { 51 | "date": "2018-01-13", 52 | "variation": 498.5 53 | }, 54 | { 55 | "date": "2018-01-14", 56 | "variation": 418.39999999999964 57 | }, 58 | { 59 | "date": "2018-01-15", 60 | "variation": -603.5 61 | }, 62 | { 63 | "date": "2018-01-16", 64 | "variation": 68.80000000000109 65 | }, 66 | { 67 | "date": "2018-01-17", 68 | "variation": -2405 69 | }, 70 | { 71 | "date": "2018-01-18", 72 | "variation": -232.3000000000011 73 | }, 74 | { 75 | "date": "2018-01-19", 76 | "variation": 231 77 | }, 78 | { 79 | "date": "2018-01-20", 80 | "variation": 226.40000000000146 81 | }, 82 | { 83 | "date": "2018-01-21", 84 | "variation": 1233 85 | }, 86 | { 87 | "date": "2018-01-22", 88 | "variation": -1256.1000000000004 89 | }, 90 | { 91 | "date": "2018-01-23", 92 | "variation": -688.6000000000004 93 | }, 94 | { 95 | "date": "2018-01-24", 96 | "variation": -41.100000000000364 97 | }, 98 | { 99 | "date": "2018-01-25", 100 | "variation": 518.3000000000011 101 | }, 102 | { 103 | "date": "2018-01-26", 104 | "variation": -165.70000000000073 105 | }, 106 | { 107 | "date": "2018-01-27", 108 | "variation": -81.10000000000036 109 | }, 110 | { 111 | "date": "2018-01-28", 112 | "variation": 300.39999999999964 113 | }, 114 | { 115 | "date": "2018-01-29", 116 | "variation": 280.2000000000007 117 | }, 118 | { 119 | "date": "2018-01-30", 120 | "variation": -448.7000000000007 121 | }, 122 | { 123 | "date": "2018-01-31", 124 | "variation": -1198.5999999999985 125 | } 126 | ] -------------------------------------------------------------------------------- /cryptoasset/testdata/bitcoin/02/result.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "date": "2018-11-01", 4 | "variation": 0 5 | }, 6 | { 7 | "date": "2018-11-02", 8 | "variation": 60.779999999999745 9 | }, 10 | { 11 | "date": "2018-11-03", 12 | "variation": 8.319999999999709 13 | }, 14 | { 15 | "date": "2018-11-04", 16 | "variation": -21.769999999999527 17 | }, 18 | { 19 | "date": "2018-11-05", 20 | "variation": -1.8500000000003638 21 | }, 22 | { 23 | "date": "2018-11-06", 24 | "variation": 69.76000000000022 25 | }, 26 | { 27 | "date": "2018-11-07", 28 | "variation": 35.11999999999989 29 | }, 30 | { 31 | "date": "2018-11-08", 32 | "variation": 53.77000000000044 33 | }, 34 | { 35 | "date": "2018-11-09", 36 | "variation": -79.67000000000007 37 | }, 38 | { 39 | "date": "2018-11-10", 40 | "variation": -56.470000000000255 41 | }, 42 | { 43 | "date": "2018-11-11", 44 | "variation": 27.5 45 | }, 46 | { 47 | "date": "2018-11-12", 48 | "variation": -1.8699999999998909 49 | }, 50 | { 51 | "date": "2018-11-13", 52 | "variation": -38.57000000000062 53 | }, 54 | { 55 | "date": "2018-11-14", 56 | "variation": -21.949999999999818 57 | }, 58 | { 59 | "date": "2018-11-15", 60 | "variation": -615.0900000000001 61 | }, 62 | { 63 | "date": "2018-11-16", 64 | "variation": -90.82999999999993 65 | }, 66 | { 67 | "date": "2018-11-17", 68 | "variation": -66.73999999999978 69 | }, 70 | { 71 | "date": "2018-11-18", 72 | "variation": -18.840000000000146 73 | }, 74 | { 75 | "date": "2018-11-19", 76 | "variation": 61.039999999999964 77 | }, 78 | { 79 | "date": "2018-11-20", 80 | "variation": -756.8499999999995 81 | }, 82 | { 83 | "date": "2018-11-21", 84 | "variation": -398.3900000000003 85 | }, 86 | { 87 | "date": "2018-11-22", 88 | "variation": 146.02999999999975 89 | }, 90 | { 91 | "date": "2018-11-23", 92 | "variation": 0 93 | }, 94 | { 95 | "date": "2018-11-24", 96 | "variation": 0 97 | }, 98 | { 99 | "date": "2018-11-25", 100 | "variation": 0 101 | } 102 | ] -------------------------------------------------------------------------------- /cryptoasset/testdata/bitcoin/03/result.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "date": "2018-11-12", 4 | "variation": 0 5 | }, 6 | { 7 | "date": "2018-11-13", 8 | "variation": -38.57000000000062 9 | } 10 | ] -------------------------------------------------------------------------------- /cryptoasset/testdata/database/bitcoin.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "date": "2013-04-28", 4 | "price": 135.3 5 | }, 6 | { 7 | "date": "2013-04-29", 8 | "price": 134.44 9 | }, 10 | { 11 | "date": "2013-04-30", 12 | "price": 144 13 | }, 14 | { 15 | "date": "2013-05-01", 16 | "price": 139 17 | }, 18 | { 19 | "date": "2013-05-02", 20 | "price": 116.38 21 | }, 22 | { 23 | "date": "2013-05-03", 24 | "price": 106.25 25 | }, 26 | { 27 | "date": "2013-05-04", 28 | "price": 98.1 29 | }, 30 | { 31 | "date": "2013-05-05", 32 | "price": 112.9 33 | }, 34 | { 35 | "date": "2013-05-06", 36 | "price": 115.98 37 | }, 38 | { 39 | "date": "2013-05-07", 40 | "price": 112.25 41 | }, 42 | { 43 | "date": "2013-05-08", 44 | "price": 109.6 45 | }, 46 | { 47 | "date": "2013-05-09", 48 | "price": 113.2 49 | }, 50 | { 51 | "date": "2013-05-10", 52 | "price": 112.8 53 | }, 54 | { 55 | "date": "2013-05-11", 56 | "price": 117.7 57 | }, 58 | { 59 | "date": "2013-05-12", 60 | "price": 115.64 61 | }, 62 | { 63 | "date": "2013-05-13", 64 | "price": 114.82 65 | }, 66 | { 67 | "date": "2013-05-14", 68 | "price": 117.98 69 | }, 70 | { 71 | "date": "2013-05-15", 72 | "price": 111.4 73 | }, 74 | { 75 | "date": "2013-05-16", 76 | "price": 114.22 77 | }, 78 | { 79 | "date": "2013-05-17", 80 | "price": 118.21 81 | }, 82 | { 83 | "date": "2013-05-18", 84 | "price": 123.5 85 | }, 86 | { 87 | "date": "2013-05-19", 88 | "price": 123.21 89 | }, 90 | { 91 | "date": "2013-05-20", 92 | "price": 122.5 93 | }, 94 | { 95 | "date": "2013-05-21", 96 | "price": 122.02 97 | }, 98 | { 99 | "date": "2013-05-22", 100 | "price": 122.89 101 | }, 102 | { 103 | "date": "2013-05-23", 104 | "price": 123.8 105 | }, 106 | { 107 | "date": "2013-05-24", 108 | "price": 126.3 109 | }, 110 | { 111 | "date": "2013-05-25", 112 | "price": 133.1 113 | }, 114 | { 115 | "date": "2013-05-26", 116 | "price": 131.99 117 | }, 118 | { 119 | "date": "2013-05-27", 120 | "price": 133.5 121 | }, 122 | { 123 | "date": "2013-05-28", 124 | "price": 129.77 125 | }, 126 | { 127 | "date": "2013-05-29", 128 | "price": 129 129 | }, 130 | { 131 | "date": "2013-05-30", 132 | "price": 132.25 133 | }, 134 | { 135 | "date": "2013-05-31", 136 | "price": 128.8 137 | }, 138 | { 139 | "date": "2013-06-01", 140 | "price": 128.82 141 | }, 142 | { 143 | "date": "2013-06-02", 144 | "price": 129.3 145 | }, 146 | { 147 | "date": "2013-06-03", 148 | "price": 122.5 149 | }, 150 | { 151 | "date": "2013-06-04", 152 | "price": 120.74 153 | }, 154 | { 155 | "date": "2013-06-05", 156 | "price": 121.4 157 | }, 158 | { 159 | "date": "2013-06-06", 160 | "price": 121.9 161 | }, 162 | { 163 | "date": "2013-06-07", 164 | "price": 118.97 165 | }, 166 | { 167 | "date": "2013-06-08", 168 | "price": 111 169 | }, 170 | { 171 | "date": "2013-06-09", 172 | "price": 107.89 173 | }, 174 | { 175 | "date": "2013-06-10", 176 | "price": 100.44 177 | }, 178 | { 179 | "date": "2013-06-11", 180 | "price": 106.35 181 | }, 182 | { 183 | "date": "2013-06-12", 184 | "price": 109 185 | }, 186 | { 187 | "date": "2013-06-13", 188 | "price": 108.78 189 | }, 190 | { 191 | "date": "2013-06-14", 192 | "price": 103.95 193 | }, 194 | { 195 | "date": "2013-06-15", 196 | "price": 100 197 | }, 198 | { 199 | "date": "2013-06-16", 200 | "price": 99.8 201 | }, 202 | { 203 | "date": "2013-06-17", 204 | "price": 99.9 205 | }, 206 | { 207 | "date": "2013-06-18", 208 | "price": 101.95 209 | }, 210 | { 211 | "date": "2013-06-19", 212 | "price": 107.05 213 | }, 214 | { 215 | "date": "2013-06-20", 216 | "price": 108.25 217 | }, 218 | { 219 | "date": "2013-06-21", 220 | "price": 111.29 221 | }, 222 | { 223 | "date": "2013-06-22", 224 | "price": 109.5 225 | }, 226 | { 227 | "date": "2013-06-23", 228 | "price": 108.2 229 | }, 230 | { 231 | "date": "2013-06-24", 232 | "price": 107.9 233 | }, 234 | { 235 | "date": "2013-06-25", 236 | "price": 102.09 237 | }, 238 | { 239 | "date": "2013-06-26", 240 | "price": 103.33 241 | }, 242 | { 243 | "date": "2013-06-27", 244 | "price": 104 245 | }, 246 | { 247 | "date": "2013-06-28", 248 | "price": 101.74 249 | }, 250 | { 251 | "date": "2013-06-29", 252 | "price": 94.66 253 | }, 254 | { 255 | "date": "2013-06-30", 256 | "price": 95 257 | }, 258 | { 259 | "date": "2013-07-01", 260 | "price": 97.51 261 | }, 262 | { 263 | "date": "2013-07-02", 264 | "price": 88.05 265 | }, 266 | { 267 | "date": "2013-07-03", 268 | "price": 90.4 269 | }, 270 | { 271 | "date": "2013-07-04", 272 | "price": 78.89 273 | }, 274 | { 275 | "date": "2013-07-05", 276 | "price": 79.99 277 | }, 278 | { 279 | "date": "2013-07-06", 280 | "price": 68.5 281 | }, 282 | { 283 | "date": "2013-07-07", 284 | "price": 68.75 285 | }, 286 | { 287 | "date": "2013-07-08", 288 | "price": 76.5 289 | }, 290 | { 291 | "date": "2013-07-09", 292 | "price": 76 293 | }, 294 | { 295 | "date": "2013-07-10", 296 | "price": 76.72 297 | }, 298 | { 299 | "date": "2013-07-11", 300 | "price": 88 301 | }, 302 | { 303 | "date": "2013-07-12", 304 | "price": 88.98 305 | }, 306 | { 307 | "date": "2013-07-13", 308 | "price": 93.99 309 | }, 310 | { 311 | "date": "2013-07-14", 312 | "price": 98.7 313 | }, 314 | { 315 | "date": "2013-07-15", 316 | "price": 93.61 317 | }, 318 | { 319 | "date": "2013-07-16", 320 | "price": 98.89 321 | }, 322 | { 323 | "date": "2013-07-17", 324 | "price": 96.71 325 | }, 326 | { 327 | "date": "2013-07-18", 328 | "price": 98.5 329 | }, 330 | { 331 | "date": "2013-07-19", 332 | "price": 90.07 333 | }, 334 | { 335 | "date": "2013-07-20", 336 | "price": 92 337 | }, 338 | { 339 | "date": "2013-07-21", 340 | "price": 89.82 341 | }, 342 | { 343 | "date": "2013-07-22", 344 | "price": 92 345 | }, 346 | { 347 | "date": "2013-07-23", 348 | "price": 91.6 349 | }, 350 | { 351 | "date": "2013-07-24", 352 | "price": 95.56 353 | }, 354 | { 355 | "date": "2013-07-25", 356 | "price": 94.5 357 | }, 358 | { 359 | "date": "2013-07-26", 360 | "price": 96.95 361 | }, 362 | { 363 | "date": "2013-07-27", 364 | "price": 96.02 365 | }, 366 | { 367 | "date": "2013-07-28", 368 | "price": 94.4 369 | }, 370 | { 371 | "date": "2013-07-29", 372 | "price": 98.6 373 | }, 374 | { 375 | "date": "2013-07-30", 376 | "price": 101.49 377 | }, 378 | { 379 | "date": "2013-07-31", 380 | "price": 107.95 381 | }, 382 | { 383 | "date": "2013-08-01", 384 | "price": 106.21 385 | }, 386 | { 387 | "date": "2013-08-02", 388 | "price": 104.86 389 | }, 390 | { 391 | "date": "2013-08-03", 392 | "price": 104.5 393 | }, 394 | { 395 | "date": "2013-08-04", 396 | "price": 104.95 397 | }, 398 | { 399 | "date": "2013-08-05", 400 | "price": 105.12 401 | }, 402 | { 403 | "date": "2013-08-06", 404 | "price": 106.72 405 | }, 406 | { 407 | "date": "2013-08-07", 408 | "price": 106.75 409 | }, 410 | { 411 | "date": "2013-08-08", 412 | "price": 106.75 413 | }, 414 | { 415 | "date": "2013-08-09", 416 | "price": 103.07 417 | }, 418 | { 419 | "date": "2013-08-10", 420 | "price": 102.8 421 | }, 422 | { 423 | "date": "2013-08-11", 424 | "price": 103 425 | }, 426 | { 427 | "date": "2013-08-12", 428 | "price": 105 429 | }, 430 | { 431 | "date": "2013-08-13", 432 | "price": 106.99 433 | }, 434 | { 435 | "date": "2013-08-14", 436 | "price": 109.56 437 | }, 438 | { 439 | "date": "2013-08-15", 440 | "price": 112.56 441 | }, 442 | { 443 | "date": "2013-08-16", 444 | "price": 110 445 | }, 446 | { 447 | "date": "2013-08-17", 448 | "price": 108.99 449 | }, 450 | { 451 | "date": "2013-08-18", 452 | "price": 112.75 453 | }, 454 | { 455 | "date": "2013-08-19", 456 | "price": 113.38 457 | }, 458 | { 459 | "date": "2013-08-20", 460 | "price": 119 461 | }, 462 | { 463 | "date": "2013-08-21", 464 | "price": 121.21 465 | }, 466 | { 467 | "date": "2013-08-22", 468 | "price": 123.3 469 | }, 470 | { 471 | "date": "2013-08-23", 472 | "price": 122 473 | }, 474 | { 475 | "date": "2013-08-24", 476 | "price": 118.51 477 | }, 478 | { 479 | "date": "2013-08-25", 480 | "price": 119.6 481 | }, 482 | { 483 | "date": "2013-08-26", 484 | "price": 122.11 485 | }, 486 | { 487 | "date": "2013-08-27", 488 | "price": 120.07 489 | }, 490 | { 491 | "date": "2013-08-28", 492 | "price": 126.48 493 | }, 494 | { 495 | "date": "2013-08-29", 496 | "price": 122.62 497 | }, 498 | { 499 | "date": "2013-08-30", 500 | "price": 122.35 501 | }, 502 | { 503 | "date": "2013-08-31", 504 | "price": 133.09 505 | }, 506 | { 507 | "date": "2013-09-01", 508 | "price": 135.14 509 | }, 510 | { 511 | "date": "2013-09-02", 512 | "price": 138.63 513 | }, 514 | { 515 | "date": "2013-09-03", 516 | "price": 135.61 517 | }, 518 | { 519 | "date": "2013-09-04", 520 | "price": 136.53 521 | }, 522 | { 523 | "date": "2013-09-05", 524 | "price": 126.76 525 | }, 526 | { 527 | "date": "2013-09-06", 528 | "price": 126.49 529 | }, 530 | { 531 | "date": "2013-09-07", 532 | "price": 118.89 533 | }, 534 | { 535 | "date": "2013-09-08", 536 | "price": 124.13 537 | }, 538 | { 539 | "date": "2013-09-09", 540 | "price": 121.86 541 | }, 542 | { 543 | "date": "2013-09-10", 544 | "price": 127.27 545 | }, 546 | { 547 | "date": "2013-09-11", 548 | "price": 125.89 549 | }, 550 | { 551 | "date": "2013-09-12", 552 | "price": 135.55 553 | }, 554 | { 555 | "date": "2013-09-13", 556 | "price": 132.83 557 | }, 558 | { 559 | "date": "2013-09-14", 560 | "price": 135.01 561 | }, 562 | { 563 | "date": "2013-09-15", 564 | "price": 129.4 565 | }, 566 | { 567 | "date": "2013-09-16", 568 | "price": 130.86 569 | }, 570 | { 571 | "date": "2013-09-17", 572 | "price": 131.59 573 | }, 574 | { 575 | "date": "2013-09-18", 576 | "price": 131.71 577 | }, 578 | { 579 | "date": "2013-09-19", 580 | "price": 131.37 581 | }, 582 | { 583 | "date": "2013-09-20", 584 | "price": 129.7 585 | }, 586 | { 587 | "date": "2013-09-21", 588 | "price": 126.95 589 | }, 590 | { 591 | "date": "2013-09-22", 592 | "price": 127.87 593 | }, 594 | { 595 | "date": "2013-09-23", 596 | "price": 128.98 597 | }, 598 | { 599 | "date": "2013-09-24", 600 | "price": 126.05 601 | }, 602 | { 603 | "date": "2013-09-25", 604 | "price": 127.38 605 | }, 606 | { 607 | "date": "2013-09-26", 608 | "price": 128.21 609 | }, 610 | { 611 | "date": "2013-09-27", 612 | "price": 128.94 613 | }, 614 | { 615 | "date": "2013-09-28", 616 | "price": 133.77 617 | }, 618 | { 619 | "date": "2013-09-29", 620 | "price": 134.9 621 | }, 622 | { 623 | "date": "2013-09-30", 624 | "price": 137.15 625 | }, 626 | { 627 | "date": "2013-10-01", 628 | "price": 132.68 629 | }, 630 | { 631 | "date": "2013-10-02", 632 | "price": 132.05 633 | }, 634 | { 635 | "date": "2013-10-03", 636 | "price": 114.45 637 | }, 638 | { 639 | "date": "2013-10-04", 640 | "price": 123.41 641 | }, 642 | { 643 | "date": "2013-10-05", 644 | "price": 128.63 645 | }, 646 | { 647 | "date": "2013-10-06", 648 | "price": 128.36 649 | }, 650 | { 651 | "date": "2013-10-07", 652 | "price": 129.43 653 | }, 654 | { 655 | "date": "2013-10-08", 656 | "price": 126.74 657 | }, 658 | { 659 | "date": "2013-10-09", 660 | "price": 125.85 661 | }, 662 | { 663 | "date": "2013-10-10", 664 | "price": 130.67 665 | }, 666 | { 667 | "date": "2013-10-11", 668 | "price": 130.75 669 | }, 670 | { 671 | "date": "2013-10-12", 672 | "price": 130.9 673 | }, 674 | { 675 | "date": "2013-10-13", 676 | "price": 135.19 677 | }, 678 | { 679 | "date": "2013-10-14", 680 | "price": 139.27 681 | }, 682 | { 683 | "date": "2013-10-15", 684 | "price": 140.77 685 | }, 686 | { 687 | "date": "2013-10-16", 688 | "price": 145.65 689 | }, 690 | { 691 | "date": "2013-10-17", 692 | "price": 142.41 693 | }, 694 | { 695 | "date": "2013-10-18", 696 | "price": 146.37 697 | }, 698 | { 699 | "date": "2013-10-19", 700 | "price": 155.91 701 | }, 702 | { 703 | "date": "2013-10-20", 704 | "price": 171.66 705 | }, 706 | { 707 | "date": "2013-10-21", 708 | "price": 174.8 709 | }, 710 | { 711 | "date": "2013-10-22", 712 | "price": 182.65 713 | }, 714 | { 715 | "date": "2013-10-23", 716 | "price": 193.36 717 | }, 718 | { 719 | "date": "2013-10-24", 720 | "price": 214.3 721 | }, 722 | { 723 | "date": "2013-10-25", 724 | "price": 197.69 725 | }, 726 | { 727 | "date": "2013-10-26", 728 | "price": 187.45 729 | }, 730 | { 731 | "date": "2013-10-27", 732 | "price": 176.6 733 | }, 734 | { 735 | "date": "2013-10-28", 736 | "price": 196.21 737 | }, 738 | { 739 | "date": "2013-10-29", 740 | "price": 198.55 741 | }, 742 | { 743 | "date": "2013-10-30", 744 | "price": 204.39 745 | }, 746 | { 747 | "date": "2013-10-31", 748 | "price": 199.83 749 | }, 750 | { 751 | "date": "2013-11-01", 752 | "price": 203.9 753 | }, 754 | { 755 | "date": "2013-11-02", 756 | "price": 205.81 757 | }, 758 | { 759 | "date": "2013-11-03", 760 | "price": 205.99 761 | }, 762 | { 763 | "date": "2013-11-04", 764 | "price": 214.66 765 | }, 766 | { 767 | "date": "2013-11-05", 768 | "price": 229.21 769 | }, 770 | { 771 | "date": "2013-11-06", 772 | "price": 244.78 773 | }, 774 | { 775 | "date": "2013-11-07", 776 | "price": 261.68 777 | }, 778 | { 779 | "date": "2013-11-08", 780 | "price": 297.85 781 | }, 782 | { 783 | "date": "2013-11-09", 784 | "price": 338.58 785 | }, 786 | { 787 | "date": "2013-11-10", 788 | "price": 348.82 789 | }, 790 | { 791 | "date": "2013-11-11", 792 | "price": 325.41 793 | }, 794 | { 795 | "date": "2013-11-12", 796 | "price": 343.06 797 | }, 798 | { 799 | "date": "2013-11-13", 800 | "price": 360.97 801 | }, 802 | { 803 | "date": "2013-11-14", 804 | "price": 406.41 805 | }, 806 | { 807 | "date": "2013-11-15", 808 | "price": 419.41 809 | }, 810 | { 811 | "date": "2013-11-16", 812 | "price": 417.28 813 | }, 814 | { 815 | "date": "2013-11-17", 816 | "price": 440.96 817 | }, 818 | { 819 | "date": "2013-11-18", 820 | "price": 496.58 821 | }, 822 | { 823 | "date": "2013-11-19", 824 | "price": 712.76 825 | }, 826 | { 827 | "date": "2013-11-20", 828 | "price": 577.98 829 | }, 830 | { 831 | "date": "2013-11-21", 832 | "price": 594.32 833 | }, 834 | { 835 | "date": "2013-11-22", 836 | "price": 724.07 837 | }, 838 | { 839 | "date": "2013-11-23", 840 | "price": 771.7 841 | }, 842 | { 843 | "date": "2013-11-24", 844 | "price": 795.63 845 | }, 846 | { 847 | "date": "2013-11-25", 848 | "price": 773.02 849 | }, 850 | { 851 | "date": "2013-11-26", 852 | "price": 805.73 853 | }, 854 | { 855 | "date": "2013-11-27", 856 | "price": 923.85 857 | }, 858 | { 859 | "date": "2013-11-28", 860 | "price": 1003.38 861 | }, 862 | { 863 | "date": "2013-11-29", 864 | "price": 1042.01 865 | }, 866 | { 867 | "date": "2013-11-30", 868 | "price": 1129.37 869 | }, 870 | { 871 | "date": "2013-12-01", 872 | "price": 1128.92 873 | }, 874 | { 875 | "date": "2013-12-02", 876 | "price": 951.42 877 | }, 878 | { 879 | "date": "2013-12-03", 880 | "price": 1046.4 881 | }, 882 | { 883 | "date": "2013-12-04", 884 | "price": 1077.58 885 | }, 886 | { 887 | "date": "2013-12-05", 888 | "price": 1152.73 889 | }, 890 | { 891 | "date": "2013-12-06", 892 | "price": 1042.38 893 | }, 894 | { 895 | "date": "2013-12-07", 896 | "price": 835.32 897 | }, 898 | { 899 | "date": "2013-12-08", 900 | "price": 697.31 901 | }, 902 | { 903 | "date": "2013-12-09", 904 | "price": 793.8 905 | }, 906 | { 907 | "date": "2013-12-10", 908 | "price": 892.32 909 | }, 910 | { 911 | "date": "2013-12-11", 912 | "price": 989.07 913 | }, 914 | { 915 | "date": "2013-12-12", 916 | "price": 882.78 917 | }, 918 | { 919 | "date": "2013-12-13", 920 | "price": 874.98 921 | }, 922 | { 923 | "date": "2013-12-14", 924 | "price": 899.85 925 | }, 926 | { 927 | "date": "2013-12-15", 928 | "price": 875.29 929 | }, 930 | { 931 | "date": "2013-12-16", 932 | "price": 880.33 933 | }, 934 | { 935 | "date": "2013-12-17", 936 | "price": 706.37 937 | }, 938 | { 939 | "date": "2013-12-18", 940 | "price": 678.2 941 | }, 942 | { 943 | "date": "2013-12-19", 944 | "price": 519.06 945 | }, 946 | { 947 | "date": "2013-12-20", 948 | "price": 694.22 949 | }, 950 | { 951 | "date": "2013-12-21", 952 | "price": 619.9 953 | }, 954 | { 955 | "date": "2013-12-22", 956 | "price": 601.78 957 | }, 958 | { 959 | "date": "2013-12-23", 960 | "price": 613.06 961 | }, 962 | { 963 | "date": "2013-12-24", 964 | "price": 672.36 965 | }, 966 | { 967 | "date": "2013-12-25", 968 | "price": 666.31 969 | }, 970 | { 971 | "date": "2013-12-26", 972 | "price": 683.94 973 | }, 974 | { 975 | "date": "2013-12-27", 976 | "price": 763.28 977 | }, 978 | { 979 | "date": "2013-12-28", 980 | "price": 737.98 981 | }, 982 | { 983 | "date": "2013-12-29", 984 | "price": 728.05 985 | }, 986 | { 987 | "date": "2013-12-30", 988 | "price": 741.35 989 | }, 990 | { 991 | "date": "2013-12-31", 992 | "price": 760.32 993 | }, 994 | { 995 | "date": "2014-01-01", 996 | "price": 754.97 997 | }, 998 | { 999 | "date": "2014-01-02", 1000 | "price": 773.44 1001 | }, 1002 | { 1003 | "date": "2014-01-03", 1004 | "price": 802.85 1005 | }, 1006 | { 1007 | "date": "2014-01-04", 1008 | "price": 823.27 1009 | }, 1010 | { 1011 | "date": "2014-01-05", 1012 | "price": 858.55 1013 | }, 1014 | { 1015 | "date": "2014-01-06", 1016 | "price": 936.05 1017 | }, 1018 | { 1019 | "date": "2014-01-07", 1020 | "price": 946.49 1021 | }, 1022 | { 1023 | "date": "2014-01-08", 1024 | "price": 795.99 1025 | }, 1026 | { 1027 | "date": "2014-01-09", 1028 | "price": 841.47 1029 | }, 1030 | { 1031 | "date": "2014-01-10", 1032 | "price": 846.69 1033 | }, 1034 | { 1035 | "date": "2014-01-11", 1036 | "price": 867.32 1037 | }, 1038 | { 1039 | "date": "2014-01-12", 1040 | "price": 919.6 1041 | }, 1042 | { 1043 | "date": "2014-01-13", 1044 | "price": 860.19 1045 | }, 1046 | { 1047 | "date": "2014-01-14", 1048 | "price": 843.17 1049 | }, 1050 | { 1051 | "date": "2014-01-15", 1052 | "price": 833.12 1053 | }, 1054 | { 1055 | "date": "2014-01-16", 1056 | "price": 860.29 1057 | }, 1058 | { 1059 | "date": "2014-01-17", 1060 | "price": 834.49 1061 | }, 1062 | { 1063 | "date": "2014-01-18", 1064 | "price": 816.07 1065 | }, 1066 | { 1067 | "date": "2014-01-19", 1068 | "price": 839.66 1069 | }, 1070 | { 1071 | "date": "2014-01-20", 1072 | "price": 871.39 1073 | }, 1074 | { 1075 | "date": "2014-01-21", 1076 | "price": 869.65 1077 | }, 1078 | { 1079 | "date": "2014-01-22", 1080 | "price": 867.21 1081 | }, 1082 | { 1083 | "date": "2014-01-23", 1084 | "price": 845.46 1085 | }, 1086 | { 1087 | "date": "2014-01-24", 1088 | "price": 822.43 1089 | }, 1090 | { 1091 | "date": "2014-01-25", 1092 | "price": 796.24 1093 | }, 1094 | { 1095 | "date": "2014-01-26", 1096 | "price": 853.68 1097 | }, 1098 | { 1099 | "date": "2014-01-27", 1100 | "price": 884.6 1101 | }, 1102 | { 1103 | "date": "2014-01-28", 1104 | "price": 774.02 1105 | }, 1106 | { 1107 | "date": "2014-01-29", 1108 | "price": 809.96 1109 | }, 1110 | { 1111 | "date": "2014-01-30", 1112 | "price": 826.02 1113 | }, 1114 | { 1115 | "date": "2014-01-31", 1116 | "price": 818.43 1117 | }, 1118 | { 1119 | "date": "2014-02-01", 1120 | "price": 828.61 1121 | }, 1122 | { 1123 | "date": "2014-02-02", 1124 | "price": 832.9 1125 | }, 1126 | { 1127 | "date": "2014-02-03", 1128 | "price": 824.08 1129 | }, 1130 | { 1131 | "date": "2014-02-04", 1132 | "price": 823.77 1133 | }, 1134 | { 1135 | "date": "2014-02-05", 1136 | "price": 829.96 1137 | }, 1138 | { 1139 | "date": "2014-02-06", 1140 | "price": 815.59 1141 | }, 1142 | { 1143 | "date": "2014-02-07", 1144 | "price": 783.2 1145 | }, 1146 | { 1147 | "date": "2014-02-08", 1148 | "price": 699.57 1149 | }, 1150 | { 1151 | "date": "2014-02-09", 1152 | "price": 671.46 1153 | }, 1154 | { 1155 | "date": "2014-02-10", 1156 | "price": 681.32 1157 | }, 1158 | { 1159 | "date": "2014-02-11", 1160 | "price": 683.5 1161 | }, 1162 | { 1163 | "date": "2014-02-12", 1164 | "price": 672.38 1165 | }, 1166 | { 1167 | "date": "2014-02-13", 1168 | "price": 651.08 1169 | }, 1170 | { 1171 | "date": "2014-02-14", 1172 | "price": 601.17 1173 | }, 1174 | { 1175 | "date": "2014-02-15", 1176 | "price": 660.9 1177 | }, 1178 | { 1179 | "date": "2014-02-16", 1180 | "price": 651.3 1181 | }, 1182 | { 1183 | "date": "2014-02-17", 1184 | "price": 614.23 1185 | }, 1186 | { 1187 | "date": "2014-02-18", 1188 | "price": 627.16 1189 | }, 1190 | { 1191 | "date": "2014-02-19", 1192 | "price": 625.97 1193 | }, 1194 | { 1195 | "date": "2014-02-20", 1196 | "price": 623.09 1197 | }, 1198 | { 1199 | "date": "2014-02-21", 1200 | "price": 556.88 1201 | }, 1202 | { 1203 | "date": "2014-02-22", 1204 | "price": 574.24 1205 | }, 1206 | { 1207 | "date": "2014-02-23", 1208 | "price": 606.47 1209 | }, 1210 | { 1211 | "date": "2014-02-24", 1212 | "price": 606.04 1213 | }, 1214 | { 1215 | "date": "2014-02-25", 1216 | "price": 540.24 1217 | }, 1218 | { 1219 | "date": "2014-02-26", 1220 | "price": 537.04 1221 | }, 1222 | { 1223 | "date": "2014-02-27", 1224 | "price": 581.65 1225 | }, 1226 | { 1227 | "date": "2014-02-28", 1228 | "price": 579.7 1229 | }, 1230 | { 1231 | "date": "2014-03-01", 1232 | "price": 549.92 1233 | }, 1234 | { 1235 | "date": "2014-03-02", 1236 | "price": 567.23 1237 | }, 1238 | { 1239 | "date": "2014-03-03", 1240 | "price": 562.56 1241 | }, 1242 | { 1243 | "date": "2014-03-04", 1244 | "price": 668.24 1245 | }, 1246 | { 1247 | "date": "2014-03-05", 1248 | "price": 666.24 1249 | }, 1250 | { 1251 | "date": "2014-03-06", 1252 | "price": 664.52 1253 | }, 1254 | { 1255 | "date": "2014-03-07", 1256 | "price": 664.31 1257 | }, 1258 | { 1259 | "date": "2014-03-08", 1260 | "price": 629.66 1261 | }, 1262 | { 1263 | "date": "2014-03-09", 1264 | "price": 616.31 1265 | }, 1266 | { 1267 | "date": "2014-03-10", 1268 | "price": 636.33 1269 | }, 1270 | { 1271 | "date": "2014-03-11", 1272 | "price": 627.95 1273 | }, 1274 | { 1275 | "date": "2014-03-12", 1276 | "price": 631.91 1277 | }, 1278 | { 1279 | "date": "2014-03-13", 1280 | "price": 633.62 1281 | }, 1282 | { 1283 | "date": "2014-03-14", 1284 | "price": 638.14 1285 | }, 1286 | { 1287 | "date": "2014-03-15", 1288 | "price": 629.37 1289 | }, 1290 | { 1291 | "date": "2014-03-16", 1292 | "price": 636.5 1293 | }, 1294 | { 1295 | "date": "2014-03-17", 1296 | "price": 630.92 1297 | }, 1298 | { 1299 | "date": "2014-03-18", 1300 | "price": 621.84 1301 | }, 1302 | { 1303 | "date": "2014-03-19", 1304 | "price": 613.9 1305 | }, 1306 | { 1307 | "date": "2014-03-20", 1308 | "price": 609.74 1309 | }, 1310 | { 1311 | "date": "2014-03-21", 1312 | "price": 588.29 1313 | }, 1314 | { 1315 | "date": "2014-03-22", 1316 | "price": 571.18 1317 | }, 1318 | { 1319 | "date": "2014-03-23", 1320 | "price": 565.76 1321 | }, 1322 | { 1323 | "date": "2014-03-24", 1324 | "price": 562.51 1325 | }, 1326 | { 1327 | "date": "2014-03-25", 1328 | "price": 585.03 1329 | }, 1330 | { 1331 | "date": "2014-03-26", 1332 | "price": 583.48 1333 | }, 1334 | { 1335 | "date": "2014-03-27", 1336 | "price": 580.26 1337 | }, 1338 | { 1339 | "date": "2014-03-28", 1340 | "price": 477.14 1341 | }, 1342 | { 1343 | "date": "2014-03-29", 1344 | "price": 501.71 1345 | }, 1346 | { 1347 | "date": "2014-03-30", 1348 | "price": 492.37 1349 | }, 1350 | { 1351 | "date": "2014-03-31", 1352 | "price": 462.3 1353 | }, 1354 | { 1355 | "date": "2014-04-01", 1356 | "price": 457 1357 | }, 1358 | { 1359 | "date": "2014-04-02", 1360 | "price": 479.14 1361 | }, 1362 | { 1363 | "date": "2014-04-03", 1364 | "price": 436.44 1365 | }, 1366 | { 1367 | "date": "2014-04-04", 1368 | "price": 445.66 1369 | }, 1370 | { 1371 | "date": "2014-04-05", 1372 | "price": 446.67 1373 | }, 1374 | { 1375 | "date": "2014-04-06", 1376 | "price": 463.4 1377 | }, 1378 | { 1379 | "date": "2014-04-07", 1380 | "price": 461.47 1381 | }, 1382 | { 1383 | "date": "2014-04-08", 1384 | "price": 447.61 1385 | }, 1386 | { 1387 | "date": "2014-04-09", 1388 | "price": 453.18 1389 | }, 1390 | { 1391 | "date": "2014-04-10", 1392 | "price": 442.26 1393 | }, 1394 | { 1395 | "date": "2014-04-11", 1396 | "price": 363.71 1397 | }, 1398 | { 1399 | "date": "2014-04-12", 1400 | "price": 420.89 1401 | }, 1402 | { 1403 | "date": "2014-04-13", 1404 | "price": 421.46 1405 | }, 1406 | { 1407 | "date": "2014-04-14", 1408 | "price": 414.83 1409 | }, 1410 | { 1411 | "date": "2014-04-15", 1412 | "price": 458.37 1413 | }, 1414 | { 1415 | "date": "2014-04-16", 1416 | "price": 522.18 1417 | }, 1418 | { 1419 | "date": "2014-04-17", 1420 | "price": 529.07 1421 | }, 1422 | { 1423 | "date": "2014-04-18", 1424 | "price": 495.8 1425 | }, 1426 | { 1427 | "date": "2014-04-19", 1428 | "price": 479.58 1429 | }, 1430 | { 1431 | "date": "2014-04-20", 1432 | "price": 501.75 1433 | }, 1434 | { 1435 | "date": "2014-04-21", 1436 | "price": 497.74 1437 | }, 1438 | { 1439 | "date": "2014-04-22", 1440 | "price": 495.45 1441 | }, 1442 | { 1443 | "date": "2014-04-23", 1444 | "price": 488.36 1445 | }, 1446 | { 1447 | "date": "2014-04-24", 1448 | "price": 490.83 1449 | }, 1450 | { 1451 | "date": "2014-04-25", 1452 | "price": 500.09 1453 | }, 1454 | { 1455 | "date": "2014-04-26", 1456 | "price": 461.7 1457 | }, 1458 | { 1459 | "date": "2014-04-27", 1460 | "price": 457.24 1461 | }, 1462 | { 1463 | "date": "2014-04-28", 1464 | "price": 430.72 1465 | }, 1466 | { 1467 | "date": "2014-04-29", 1468 | "price": 439.98 1469 | }, 1470 | { 1471 | "date": "2014-04-30", 1472 | "price": 446.89 1473 | }, 1474 | { 1475 | "date": "2014-05-01", 1476 | "price": 447.63 1477 | }, 1478 | { 1479 | "date": "2014-05-02", 1480 | "price": 457.36 1481 | }, 1482 | { 1483 | "date": "2014-05-03", 1484 | "price": 449.4 1485 | }, 1486 | { 1487 | "date": "2014-05-04", 1488 | "price": 438.52 1489 | }, 1490 | { 1491 | "date": "2014-05-05", 1492 | "price": 434.78 1493 | }, 1494 | { 1495 | "date": "2014-05-06", 1496 | "price": 433.36 1497 | }, 1498 | { 1499 | "date": "2014-05-07", 1500 | "price": 429.34 1501 | }, 1502 | { 1503 | "date": "2014-05-08", 1504 | "price": 438.68 1505 | }, 1506 | { 1507 | "date": "2014-05-09", 1508 | "price": 440.18 1509 | }, 1510 | { 1511 | "date": "2014-05-10", 1512 | "price": 450.46 1513 | }, 1514 | { 1515 | "date": "2014-05-11", 1516 | "price": 453.92 1517 | }, 1518 | { 1519 | "date": "2014-05-12", 1520 | "price": 438.3 1521 | }, 1522 | { 1523 | "date": "2014-05-13", 1524 | "price": 441.53 1525 | }, 1526 | { 1527 | "date": "2014-05-14", 1528 | "price": 440.59 1529 | }, 1530 | { 1531 | "date": "2014-05-15", 1532 | "price": 444.14 1533 | }, 1534 | { 1535 | "date": "2014-05-16", 1536 | "price": 447.39 1537 | }, 1538 | { 1539 | "date": "2014-05-17", 1540 | "price": 448.12 1541 | }, 1542 | { 1543 | "date": "2014-05-18", 1544 | "price": 448.7 1545 | }, 1546 | { 1547 | "date": "2014-05-19", 1548 | "price": 446.08 1549 | }, 1550 | { 1551 | "date": "2014-05-20", 1552 | "price": 446.3 1553 | }, 1554 | { 1555 | "date": "2014-05-21", 1556 | "price": 485.8 1557 | }, 1558 | { 1559 | "date": "2014-05-22", 1560 | "price": 492.05 1561 | }, 1562 | { 1563 | "date": "2014-05-23", 1564 | "price": 525.72 1565 | }, 1566 | { 1567 | "date": "2014-05-24", 1568 | "price": 521.05 1569 | }, 1570 | { 1571 | "date": "2014-05-25", 1572 | "price": 525.23 1573 | }, 1574 | { 1575 | "date": "2014-05-26", 1576 | "price": 571.39 1577 | }, 1578 | { 1579 | "date": "2014-05-27", 1580 | "price": 582.59 1581 | }, 1582 | { 1583 | "date": "2014-05-28", 1584 | "price": 571.91 1585 | }, 1586 | { 1587 | "date": "2014-05-29", 1588 | "price": 576.33 1589 | }, 1590 | { 1591 | "date": "2014-05-30", 1592 | "price": 568.18 1593 | }, 1594 | { 1595 | "date": "2014-05-31", 1596 | "price": 615.69 1597 | }, 1598 | { 1599 | "date": "2014-06-01", 1600 | "price": 623.69 1601 | }, 1602 | { 1603 | "date": "2014-06-02", 1604 | "price": 629.65 1605 | }, 1606 | { 1607 | "date": "2014-06-03", 1608 | "price": 660.55 1609 | }, 1610 | { 1611 | "date": "2014-06-04", 1612 | "price": 666.77 1613 | }, 1614 | { 1615 | "date": "2014-06-05", 1616 | "price": 641.07 1617 | }, 1618 | { 1619 | "date": "2014-06-06", 1620 | "price": 659.28 1621 | }, 1622 | { 1623 | "date": "2014-06-07", 1624 | "price": 653.52 1625 | }, 1626 | { 1627 | "date": "2014-06-08", 1628 | "price": 654.99 1629 | }, 1630 | { 1631 | "date": "2014-06-09", 1632 | "price": 655.64 1633 | }, 1634 | { 1635 | "date": "2014-06-10", 1636 | "price": 650.04 1637 | }, 1638 | { 1639 | "date": "2014-06-11", 1640 | "price": 653.19 1641 | }, 1642 | { 1643 | "date": "2014-06-12", 1644 | "price": 633.43 1645 | }, 1646 | { 1647 | "date": "2014-06-13", 1648 | "price": 585.7 1649 | }, 1650 | { 1651 | "date": "2014-06-14", 1652 | "price": 600.75 1653 | }, 1654 | { 1655 | "date": "2014-06-15", 1656 | "price": 575.93 1657 | }, 1658 | { 1659 | "date": "2014-06-16", 1660 | "price": 592.65 1661 | }, 1662 | { 1663 | "date": "2014-06-17", 1664 | "price": 591.59 1665 | }, 1666 | { 1667 | "date": "2014-06-18", 1668 | "price": 609.77 1669 | }, 1670 | { 1671 | "date": "2014-06-19", 1672 | "price": 608.07 1673 | }, 1674 | { 1675 | "date": "2014-06-20", 1676 | "price": 597.4 1677 | }, 1678 | { 1679 | "date": "2014-06-21", 1680 | "price": 593.68 1681 | }, 1682 | { 1683 | "date": "2014-06-22", 1684 | "price": 595.9 1685 | }, 1686 | { 1687 | "date": "2014-06-23", 1688 | "price": 602.16 1689 | }, 1690 | { 1691 | "date": "2014-06-24", 1692 | "price": 593.97 1693 | }, 1694 | { 1695 | "date": "2014-06-25", 1696 | "price": 581.81 1697 | }, 1698 | { 1699 | "date": "2014-06-26", 1700 | "price": 566.14 1701 | }, 1702 | { 1703 | "date": "2014-06-27", 1704 | "price": 581.3 1705 | }, 1706 | { 1707 | "date": "2014-06-28", 1708 | "price": 599.08 1709 | }, 1710 | { 1711 | "date": "2014-06-29", 1712 | "price": 596.33 1713 | }, 1714 | { 1715 | "date": "2014-06-30", 1716 | "price": 602.62 1717 | }, 1718 | { 1719 | "date": "2014-07-01", 1720 | "price": 641.39 1721 | }, 1722 | { 1723 | "date": "2014-07-02", 1724 | "price": 641.04 1725 | }, 1726 | { 1727 | "date": "2014-07-03", 1728 | "price": 650.77 1729 | }, 1730 | { 1731 | "date": "2014-07-04", 1732 | "price": 644.65 1733 | }, 1734 | { 1735 | "date": "2014-07-05", 1736 | "price": 629.95 1737 | }, 1738 | { 1739 | "date": "2014-07-06", 1740 | "price": 631.77 1741 | }, 1742 | { 1743 | "date": "2014-07-07", 1744 | "price": 635.46 1745 | }, 1746 | { 1747 | "date": "2014-07-08", 1748 | "price": 622.57 1749 | }, 1750 | { 1751 | "date": "2014-07-09", 1752 | "price": 625.22 1753 | }, 1754 | { 1755 | "date": "2014-07-10", 1756 | "price": 624.83 1757 | }, 1758 | { 1759 | "date": "2014-07-11", 1760 | "price": 616.66 1761 | }, 1762 | { 1763 | "date": "2014-07-12", 1764 | "price": 631.88 1765 | }, 1766 | { 1767 | "date": "2014-07-13", 1768 | "price": 634.22 1769 | }, 1770 | { 1771 | "date": "2014-07-14", 1772 | "price": 626.56 1773 | }, 1774 | { 1775 | "date": "2014-07-15", 1776 | "price": 620 1777 | }, 1778 | { 1779 | "date": "2014-07-16", 1780 | "price": 622.01 1781 | }, 1782 | { 1783 | "date": "2014-07-17", 1784 | "price": 616.54 1785 | }, 1786 | { 1787 | "date": "2014-07-18", 1788 | "price": 622.37 1789 | }, 1790 | { 1791 | "date": "2014-07-19", 1792 | "price": 629.17 1793 | }, 1794 | { 1795 | "date": "2014-07-20", 1796 | "price": 628.56 1797 | }, 1798 | { 1799 | "date": "2014-07-21", 1800 | "price": 623.95 1801 | }, 1802 | { 1803 | "date": "2014-07-22", 1804 | "price": 622.27 1805 | }, 1806 | { 1807 | "date": "2014-07-23", 1808 | "price": 621.12 1809 | }, 1810 | { 1811 | "date": "2014-07-24", 1812 | "price": 619.5 1813 | }, 1814 | { 1815 | "date": "2014-07-25", 1816 | "price": 601.51 1817 | }, 1818 | { 1819 | "date": "2014-07-26", 1820 | "price": 601.54 1821 | }, 1822 | { 1823 | "date": "2014-07-27", 1824 | "price": 595.67 1825 | }, 1826 | { 1827 | "date": "2014-07-28", 1828 | "price": 594.14 1829 | }, 1830 | { 1831 | "date": "2014-07-29", 1832 | "price": 585.55 1833 | }, 1834 | { 1835 | "date": "2014-07-30", 1836 | "price": 584.74 1837 | }, 1838 | { 1839 | "date": "2014-07-31", 1840 | "price": 567.37 1841 | }, 1842 | { 1843 | "date": "2014-08-01", 1844 | "price": 586.2 1845 | }, 1846 | { 1847 | "date": "2014-08-02", 1848 | "price": 594.9 1849 | }, 1850 | { 1851 | "date": "2014-08-03", 1852 | "price": 588.89 1853 | }, 1854 | { 1855 | "date": "2014-08-04", 1856 | "price": 586.23 1857 | }, 1858 | { 1859 | "date": "2014-08-05", 1860 | "price": 589.01 1861 | }, 1862 | { 1863 | "date": "2014-08-06", 1864 | "price": 585.95 1865 | }, 1866 | { 1867 | "date": "2014-08-07", 1868 | "price": 584.65 1869 | }, 1870 | { 1871 | "date": "2014-08-08", 1872 | "price": 588.88 1873 | }, 1874 | { 1875 | "date": "2014-08-09", 1876 | "price": 592.47 1877 | }, 1878 | { 1879 | "date": "2014-08-10", 1880 | "price": 589.17 1881 | }, 1882 | { 1883 | "date": "2014-08-11", 1884 | "price": 591.28 1885 | }, 1886 | { 1887 | "date": "2014-08-12", 1888 | "price": 576.51 1889 | }, 1890 | { 1891 | "date": "2014-08-13", 1892 | "price": 570.38 1893 | }, 1894 | { 1895 | "date": "2014-08-14", 1896 | "price": 546.18 1897 | }, 1898 | { 1899 | "date": "2014-08-15", 1900 | "price": 511.14 1901 | }, 1902 | { 1903 | "date": "2014-08-16", 1904 | "price": 497.83 1905 | }, 1906 | { 1907 | "date": "2014-08-17", 1908 | "price": 519.14 1909 | }, 1910 | { 1911 | "date": "2014-08-18", 1912 | "price": 491.51 1913 | }, 1914 | { 1915 | "date": "2014-08-19", 1916 | "price": 461.48 1917 | }, 1918 | { 1919 | "date": "2014-08-20", 1920 | "price": 485.07 1921 | }, 1922 | { 1923 | "date": "2014-08-21", 1924 | "price": 510.45 1925 | }, 1926 | { 1927 | "date": "2014-08-22", 1928 | "price": 517.58 1929 | }, 1930 | { 1931 | "date": "2014-08-23", 1932 | "price": 513.39 1933 | }, 1934 | { 1935 | "date": "2014-08-24", 1936 | "price": 498.29 1937 | }, 1938 | { 1939 | "date": "2014-08-25", 1940 | "price": 508.22 1941 | }, 1942 | { 1943 | "date": "2014-08-26", 1944 | "price": 502.54 1945 | }, 1946 | { 1947 | "date": "2014-08-27", 1948 | "price": 512.19 1949 | }, 1950 | { 1951 | "date": "2014-08-28", 1952 | "price": 510.88 1953 | }, 1954 | { 1955 | "date": "2014-08-29", 1956 | "price": 508.42 1957 | }, 1958 | { 1959 | "date": "2014-08-30", 1960 | "price": 508.59 1961 | }, 1962 | { 1963 | "date": "2014-08-31", 1964 | "price": 502.9 1965 | }, 1966 | { 1967 | "date": "2014-09-01", 1968 | "price": 477.79 1969 | }, 1970 | { 1971 | "date": "2014-09-02", 1972 | "price": 474.48 1973 | }, 1974 | { 1975 | "date": "2014-09-03", 1976 | "price": 476.87 1977 | }, 1978 | { 1979 | "date": "2014-09-04", 1980 | "price": 477.68 1981 | }, 1982 | { 1983 | "date": "2014-09-05", 1984 | "price": 489.67 1985 | }, 1986 | { 1987 | "date": "2014-09-06", 1988 | "price": 483.34 1989 | }, 1990 | { 1991 | "date": "2014-09-07", 1992 | "price": 485.13 1993 | }, 1994 | { 1995 | "date": "2014-09-08", 1996 | "price": 481.81 1997 | }, 1998 | { 1999 | "date": "2014-09-09", 2000 | "price": 474.88 2001 | }, 2002 | { 2003 | "date": "2014-09-10", 2004 | "price": 475.48 2005 | }, 2006 | { 2007 | "date": "2014-09-11", 2008 | "price": 479.62 2009 | }, 2010 | { 2011 | "date": "2014-09-12", 2012 | "price": 479.58 2013 | }, 2014 | { 2015 | "date": "2014-09-13", 2016 | "price": 477.79 2017 | }, 2018 | { 2019 | "date": "2014-09-14", 2020 | "price": 479.12 2021 | }, 2022 | { 2023 | "date": "2014-09-15", 2024 | "price": 477.77 2025 | }, 2026 | { 2027 | "date": "2014-09-16", 2028 | "price": 474.86 2029 | }, 2030 | { 2031 | "date": "2014-09-17", 2032 | "price": 465.86 2033 | }, 2034 | { 2035 | "date": "2014-09-18", 2036 | "price": 456.86 2037 | }, 2038 | { 2039 | "date": "2014-09-19", 2040 | "price": 424.1 2041 | }, 2042 | { 2043 | "date": "2014-09-20", 2044 | "price": 394.67 2045 | }, 2046 | { 2047 | "date": "2014-09-21", 2048 | "price": 408.08 2049 | }, 2050 | { 2051 | "date": "2014-09-22", 2052 | "price": 399.1 2053 | }, 2054 | { 2055 | "date": "2014-09-23", 2056 | "price": 402.09 2057 | }, 2058 | { 2059 | "date": "2014-09-24", 2060 | "price": 435.75 2061 | }, 2062 | { 2063 | "date": "2014-09-25", 2064 | "price": 423.16 2065 | }, 2066 | { 2067 | "date": "2014-09-26", 2068 | "price": 411.43 2069 | }, 2070 | { 2071 | "date": "2014-09-27", 2072 | "price": 403.56 2073 | }, 2074 | { 2075 | "date": "2014-09-28", 2076 | "price": 399.47 2077 | }, 2078 | { 2079 | "date": "2014-09-29", 2080 | "price": 376.93 2081 | }, 2082 | { 2083 | "date": "2014-09-30", 2084 | "price": 376.09 2085 | }, 2086 | { 2087 | "date": "2014-10-01", 2088 | "price": 387.43 2089 | }, 2090 | { 2091 | "date": "2014-10-02", 2092 | "price": 383.99 2093 | }, 2094 | { 2095 | "date": "2014-10-03", 2096 | "price": 375.18 2097 | }, 2098 | { 2099 | "date": "2014-10-04", 2100 | "price": 359.89 2101 | }, 2102 | { 2103 | "date": "2014-10-05", 2104 | "price": 328.92 2105 | }, 2106 | { 2107 | "date": "2014-10-06", 2108 | "price": 320.39 2109 | }, 2110 | { 2111 | "date": "2014-10-07", 2112 | "price": 330.58 2113 | }, 2114 | { 2115 | "date": "2014-10-08", 2116 | "price": 336.12 2117 | }, 2118 | { 2119 | "date": "2014-10-09", 2120 | "price": 352.75 2121 | }, 2122 | { 2123 | "date": "2014-10-10", 2124 | "price": 364.69 2125 | }, 2126 | { 2127 | "date": "2014-10-11", 2128 | "price": 361.36 2129 | }, 2130 | { 2131 | "date": "2014-10-12", 2132 | "price": 362.61 2133 | }, 2134 | { 2135 | "date": "2014-10-13", 2136 | "price": 377.92 2137 | }, 2138 | { 2139 | "date": "2014-10-14", 2140 | "price": 391.69 2141 | }, 2142 | { 2143 | "date": "2014-10-15", 2144 | "price": 400.95 2145 | }, 2146 | { 2147 | "date": "2014-10-16", 2148 | "price": 394.52 2149 | }, 2150 | { 2151 | "date": "2014-10-17", 2152 | "price": 382.76 2153 | }, 2154 | { 2155 | "date": "2014-10-18", 2156 | "price": 383.98 2157 | }, 2158 | { 2159 | "date": "2014-10-19", 2160 | "price": 391.25 2161 | }, 2162 | { 2163 | "date": "2014-10-20", 2164 | "price": 389.23 2165 | }, 2166 | { 2167 | "date": "2014-10-21", 2168 | "price": 382.42 2169 | }, 2170 | { 2171 | "date": "2014-10-22", 2172 | "price": 386.12 2173 | }, 2174 | { 2175 | "date": "2014-10-23", 2176 | "price": 382.96 2177 | }, 2178 | { 2179 | "date": "2014-10-24", 2180 | "price": 358.59 2181 | }, 2182 | { 2183 | "date": "2014-10-25", 2184 | "price": 358.61 2185 | }, 2186 | { 2187 | "date": "2014-10-26", 2188 | "price": 347.49 2189 | }, 2190 | { 2191 | "date": "2014-10-27", 2192 | "price": 354.78 2193 | }, 2194 | { 2195 | "date": "2014-10-28", 2196 | "price": 353.21 2197 | }, 2198 | { 2199 | "date": "2014-10-29", 2200 | "price": 357.09 2201 | }, 2202 | { 2203 | "date": "2014-10-30", 2204 | "price": 335.71 2205 | }, 2206 | { 2207 | "date": "2014-10-31", 2208 | "price": 345.01 2209 | }, 2210 | { 2211 | "date": "2014-11-01", 2212 | "price": 338.65 2213 | }, 2214 | { 2215 | "date": "2014-11-02", 2216 | "price": 326.08 2217 | }, 2218 | { 2219 | "date": "2014-11-03", 2220 | "price": 325.57 2221 | }, 2222 | { 2223 | "date": "2014-11-04", 2224 | "price": 327.16 2225 | }, 2226 | { 2227 | "date": "2014-11-05", 2228 | "price": 330.68 2229 | }, 2230 | { 2231 | "date": "2014-11-06", 2232 | "price": 339.46 2233 | }, 2234 | { 2235 | "date": "2014-11-07", 2236 | "price": 349.82 2237 | }, 2238 | { 2239 | "date": "2014-11-08", 2240 | "price": 342.15 2241 | }, 2242 | { 2243 | "date": "2014-11-09", 2244 | "price": 345.38 2245 | }, 2246 | { 2247 | "date": "2014-11-10", 2248 | "price": 362.27 2249 | }, 2250 | { 2251 | "date": "2014-11-11", 2252 | "price": 365.86 2253 | }, 2254 | { 2255 | "date": "2014-11-12", 2256 | "price": 367.98 2257 | }, 2258 | { 2259 | "date": "2014-11-13", 2260 | "price": 427.27 2261 | }, 2262 | { 2263 | "date": "2014-11-14", 2264 | "price": 418.42 2265 | }, 2266 | { 2267 | "date": "2014-11-15", 2268 | "price": 399.65 2269 | }, 2270 | { 2271 | "date": "2014-11-16", 2272 | "price": 374.73 2273 | }, 2274 | { 2275 | "date": "2014-11-17", 2276 | "price": 388.35 2277 | }, 2278 | { 2279 | "date": "2014-11-18", 2280 | "price": 387.79 2281 | }, 2282 | { 2283 | "date": "2014-11-19", 2284 | "price": 373.9 2285 | }, 2286 | { 2287 | "date": "2014-11-20", 2288 | "price": 380.31 2289 | }, 2290 | { 2291 | "date": "2014-11-21", 2292 | "price": 357.88 2293 | }, 2294 | { 2295 | "date": "2014-11-22", 2296 | "price": 351.6 2297 | }, 2298 | { 2299 | "date": "2014-11-23", 2300 | "price": 353.17 2301 | }, 2302 | { 2303 | "date": "2014-11-24", 2304 | "price": 366.95 2305 | }, 2306 | { 2307 | "date": "2014-11-25", 2308 | "price": 376.89 2309 | }, 2310 | { 2311 | "date": "2014-11-26", 2312 | "price": 376.02 2313 | }, 2314 | { 2315 | "date": "2014-11-27", 2316 | "price": 370.5 2317 | }, 2318 | { 2319 | "date": "2014-11-28", 2320 | "price": 369.37 2321 | }, 2322 | { 2323 | "date": "2014-11-29", 2324 | "price": 376.15 2325 | }, 2326 | { 2327 | "date": "2014-11-30", 2328 | "price": 375.51 2329 | }, 2330 | { 2331 | "date": "2014-12-01", 2332 | "price": 378.25 2333 | }, 2334 | { 2335 | "date": "2014-12-02", 2336 | "price": 379.25 2337 | }, 2338 | { 2339 | "date": "2014-12-03", 2340 | "price": 381.72 2341 | }, 2342 | { 2343 | "date": "2014-12-04", 2344 | "price": 375.72 2345 | }, 2346 | { 2347 | "date": "2014-12-05", 2348 | "price": 369.44 2349 | }, 2350 | { 2351 | "date": "2014-12-06", 2352 | "price": 376.76 2353 | }, 2354 | { 2355 | "date": "2014-12-07", 2356 | "price": 374.84 2357 | }, 2358 | { 2359 | "date": "2014-12-08", 2360 | "price": 374.96 2361 | }, 2362 | { 2363 | "date": "2014-12-09", 2364 | "price": 361.89 2365 | }, 2366 | { 2367 | "date": "2014-12-10", 2368 | "price": 352.2 2369 | }, 2370 | { 2371 | "date": "2014-12-11", 2372 | "price": 344.34 2373 | }, 2374 | { 2375 | "date": "2014-12-12", 2376 | "price": 350.83 2377 | }, 2378 | { 2379 | "date": "2014-12-13", 2380 | "price": 352.38 2381 | }, 2382 | { 2383 | "date": "2014-12-14", 2384 | "price": 346.73 2385 | }, 2386 | { 2387 | "date": "2014-12-15", 2388 | "price": 351.36 2389 | }, 2390 | { 2391 | "date": "2014-12-16", 2392 | "price": 345.67 2393 | }, 2394 | { 2395 | "date": "2014-12-17", 2396 | "price": 326.86 2397 | }, 2398 | { 2399 | "date": "2014-12-18", 2400 | "price": 319.79 2401 | }, 2402 | { 2403 | "date": "2014-12-19", 2404 | "price": 311.18 2405 | }, 2406 | { 2407 | "date": "2014-12-20", 2408 | "price": 317.62 2409 | }, 2410 | { 2411 | "date": "2014-12-21", 2412 | "price": 329.54 2413 | }, 2414 | { 2415 | "date": "2014-12-22", 2416 | "price": 321.07 2417 | }, 2418 | { 2419 | "date": "2014-12-23", 2420 | "price": 332.02 2421 | }, 2422 | { 2423 | "date": "2014-12-24", 2424 | "price": 334.39 2425 | }, 2426 | { 2427 | "date": "2014-12-25", 2428 | "price": 322.29 2429 | }, 2430 | { 2431 | "date": "2014-12-26", 2432 | "price": 319.15 2433 | }, 2434 | { 2435 | "date": "2014-12-27", 2436 | "price": 327.58 2437 | }, 2438 | { 2439 | "date": "2014-12-28", 2440 | "price": 316.16 2441 | }, 2442 | { 2443 | "date": "2014-12-29", 2444 | "price": 317.7 2445 | }, 2446 | { 2447 | "date": "2014-12-30", 2448 | "price": 312.72 2449 | }, 2450 | { 2451 | "date": "2014-12-31", 2452 | "price": 310.91 2453 | }, 2454 | { 2455 | "date": "2015-01-01", 2456 | "price": 320.43 2457 | }, 2458 | { 2459 | "date": "2015-01-02", 2460 | "price": 314.08 2461 | }, 2462 | { 2463 | "date": "2015-01-03", 2464 | "price": 314.85 2465 | }, 2466 | { 2467 | "date": "2015-01-04", 2468 | "price": 281.15 2469 | }, 2470 | { 2471 | "date": "2015-01-05", 2472 | "price": 265.08 2473 | }, 2474 | { 2475 | "date": "2015-01-06", 2476 | "price": 274.61 2477 | }, 2478 | { 2479 | "date": "2015-01-07", 2480 | "price": 286.08 2481 | }, 2482 | { 2483 | "date": "2015-01-08", 2484 | "price": 294.14 2485 | }, 2486 | { 2487 | "date": "2015-01-09", 2488 | "price": 282.38 2489 | }, 2490 | { 2491 | "date": "2015-01-10", 2492 | "price": 287.3 2493 | }, 2494 | { 2495 | "date": "2015-01-11", 2496 | "price": 274.61 2497 | }, 2498 | { 2499 | "date": "2015-01-12", 2500 | "price": 266.15 2501 | }, 2502 | { 2503 | "date": "2015-01-13", 2504 | "price": 267.39 2505 | }, 2506 | { 2507 | "date": "2015-01-14", 2508 | "price": 223.89 2509 | }, 2510 | { 2511 | "date": "2015-01-15", 2512 | "price": 176.9 2513 | }, 2514 | { 2515 | "date": "2015-01-16", 2516 | "price": 209.07 2517 | }, 2518 | { 2519 | "date": "2015-01-17", 2520 | "price": 207.83 2521 | }, 2522 | { 2523 | "date": "2015-01-18", 2524 | "price": 200.05 2525 | }, 2526 | { 2527 | "date": "2015-01-19", 2528 | "price": 211.47 2529 | }, 2530 | { 2531 | "date": "2015-01-20", 2532 | "price": 212.91 2533 | }, 2534 | { 2535 | "date": "2015-01-21", 2536 | "price": 211.38 2537 | }, 2538 | { 2539 | "date": "2015-01-22", 2540 | "price": 227.32 2541 | }, 2542 | { 2543 | "date": "2015-01-23", 2544 | "price": 233.52 2545 | }, 2546 | { 2547 | "date": "2015-01-24", 2548 | "price": 232.7 2549 | }, 2550 | { 2551 | "date": "2015-01-25", 2552 | "price": 247.35 2553 | }, 2554 | { 2555 | "date": "2015-01-26", 2556 | "price": 254.08 2557 | }, 2558 | { 2559 | "date": "2015-01-27", 2560 | "price": 273.17 2561 | }, 2562 | { 2563 | "date": "2015-01-28", 2564 | "price": 263.35 2565 | }, 2566 | { 2567 | "date": "2015-01-29", 2568 | "price": 233.35 2569 | }, 2570 | { 2571 | "date": "2015-01-30", 2572 | "price": 232.77 2573 | }, 2574 | { 2575 | "date": "2015-01-31", 2576 | "price": 226.44 2577 | }, 2578 | { 2579 | "date": "2015-02-01", 2580 | "price": 216.87 2581 | }, 2582 | { 2583 | "date": "2015-02-02", 2584 | "price": 226.49 2585 | }, 2586 | { 2587 | "date": "2015-02-03", 2588 | "price": 237.45 2589 | }, 2590 | { 2591 | "date": "2015-02-04", 2592 | "price": 227.51 2593 | }, 2594 | { 2595 | "date": "2015-02-05", 2596 | "price": 227.66 2597 | }, 2598 | { 2599 | "date": "2015-02-06", 2600 | "price": 216.92 2601 | }, 2602 | { 2603 | "date": "2015-02-07", 2604 | "price": 222.63 2605 | }, 2606 | { 2607 | "date": "2015-02-08", 2608 | "price": 227.69 2609 | }, 2610 | { 2611 | "date": "2015-02-09", 2612 | "price": 223.39 2613 | }, 2614 | { 2615 | "date": "2015-02-10", 2616 | "price": 220.28 2617 | }, 2618 | { 2619 | "date": "2015-02-11", 2620 | "price": 219.73 2621 | }, 2622 | { 2623 | "date": "2015-02-12", 2624 | "price": 219.21 2625 | }, 2626 | { 2627 | "date": "2015-02-13", 2628 | "price": 221.97 2629 | }, 2630 | { 2631 | "date": "2015-02-14", 2632 | "price": 235.53 2633 | }, 2634 | { 2635 | "date": "2015-02-15", 2636 | "price": 257.51 2637 | }, 2638 | { 2639 | "date": "2015-02-16", 2640 | "price": 234.82 2641 | }, 2642 | { 2643 | "date": "2015-02-17", 2644 | "price": 233.42 2645 | }, 2646 | { 2647 | "date": "2015-02-18", 2648 | "price": 243.78 2649 | }, 2650 | { 2651 | "date": "2015-02-19", 2652 | "price": 236.41 2653 | }, 2654 | { 2655 | "date": "2015-02-20", 2656 | "price": 240.25 2657 | }, 2658 | { 2659 | "date": "2015-02-21", 2660 | "price": 243.75 2661 | }, 2662 | { 2663 | "date": "2015-02-22", 2664 | "price": 244.54 2665 | }, 2666 | { 2667 | "date": "2015-02-23", 2668 | "price": 235.99 2669 | }, 2670 | { 2671 | "date": "2015-02-24", 2672 | "price": 239 2673 | }, 2674 | { 2675 | "date": "2015-02-25", 2676 | "price": 238.89 2677 | }, 2678 | { 2679 | "date": "2015-02-26", 2680 | "price": 237.34 2681 | }, 2682 | { 2683 | "date": "2015-02-27", 2684 | "price": 236.44 2685 | }, 2686 | { 2687 | "date": "2015-02-28", 2688 | "price": 253.52 2689 | }, 2690 | { 2691 | "date": "2015-03-01", 2692 | "price": 254.28 2693 | }, 2694 | { 2695 | "date": "2015-03-02", 2696 | "price": 260.36 2697 | }, 2698 | { 2699 | "date": "2015-03-03", 2700 | "price": 275.05 2701 | }, 2702 | { 2703 | "date": "2015-03-04", 2704 | "price": 281.99 2705 | }, 2706 | { 2707 | "date": "2015-03-05", 2708 | "price": 272.74 2709 | }, 2710 | { 2711 | "date": "2015-03-06", 2712 | "price": 275.6 2713 | }, 2714 | { 2715 | "date": "2015-03-07", 2716 | "price": 272.29 2717 | }, 2718 | { 2719 | "date": "2015-03-08", 2720 | "price": 276.43 2721 | }, 2722 | { 2723 | "date": "2015-03-09", 2724 | "price": 274.81 2725 | }, 2726 | { 2727 | "date": "2015-03-10", 2728 | "price": 289.86 2729 | }, 2730 | { 2731 | "date": "2015-03-11", 2732 | "price": 291.52 2733 | }, 2734 | { 2735 | "date": "2015-03-12", 2736 | "price": 296.13 2737 | }, 2738 | { 2739 | "date": "2015-03-13", 2740 | "price": 294.12 2741 | }, 2742 | { 2743 | "date": "2015-03-14", 2744 | "price": 284.44 2745 | }, 2746 | { 2747 | "date": "2015-03-15", 2748 | "price": 281.42 2749 | }, 2750 | { 2751 | "date": "2015-03-16", 2752 | "price": 285.68 2753 | }, 2754 | { 2755 | "date": "2015-03-17", 2756 | "price": 290.6 2757 | }, 2758 | { 2759 | "date": "2015-03-18", 2760 | "price": 285.07 2761 | }, 2762 | { 2763 | "date": "2015-03-19", 2764 | "price": 255.88 2765 | }, 2766 | { 2767 | "date": "2015-03-20", 2768 | "price": 260.96 2769 | }, 2770 | { 2771 | "date": "2015-03-21", 2772 | "price": 261.64 2773 | }, 2774 | { 2775 | "date": "2015-03-22", 2776 | "price": 259.92 2777 | }, 2778 | { 2779 | "date": "2015-03-23", 2780 | "price": 267.89 2781 | }, 2782 | { 2783 | "date": "2015-03-24", 2784 | "price": 266.58 2785 | }, 2786 | { 2787 | "date": "2015-03-25", 2788 | "price": 247.47 2789 | }, 2790 | { 2791 | "date": "2015-03-26", 2792 | "price": 246.28 2793 | }, 2794 | { 2795 | "date": "2015-03-27", 2796 | "price": 248.57 2797 | }, 2798 | { 2799 | "date": "2015-03-28", 2800 | "price": 246.98 2801 | }, 2802 | { 2803 | "date": "2015-03-29", 2804 | "price": 252.74 2805 | }, 2806 | { 2807 | "date": "2015-03-30", 2808 | "price": 242.88 2809 | }, 2810 | { 2811 | "date": "2015-03-31", 2812 | "price": 247.45 2813 | }, 2814 | { 2815 | "date": "2015-04-01", 2816 | "price": 244.22 2817 | }, 2818 | { 2819 | "date": "2015-04-02", 2820 | "price": 247.09 2821 | }, 2822 | { 2823 | "date": "2015-04-03", 2824 | "price": 253.07 2825 | }, 2826 | { 2827 | "date": "2015-04-04", 2828 | "price": 254.29 2829 | }, 2830 | { 2831 | "date": "2015-04-05", 2832 | "price": 253.76 2833 | }, 2834 | { 2835 | "date": "2015-04-06", 2836 | "price": 260.72 2837 | }, 2838 | { 2839 | "date": "2015-04-07", 2840 | "price": 255.27 2841 | }, 2842 | { 2843 | "date": "2015-04-08", 2844 | "price": 253.06 2845 | }, 2846 | { 2847 | "date": "2015-04-09", 2848 | "price": 244.75 2849 | }, 2850 | { 2851 | "date": "2015-04-10", 2852 | "price": 243.69 2853 | }, 2854 | { 2855 | "date": "2015-04-11", 2856 | "price": 236.02 2857 | }, 2858 | { 2859 | "date": "2015-04-12", 2860 | "price": 236.54 2861 | }, 2862 | { 2863 | "date": "2015-04-13", 2864 | "price": 235.95 2865 | }, 2866 | { 2867 | "date": "2015-04-14", 2868 | "price": 224.76 2869 | }, 2870 | { 2871 | "date": "2015-04-15", 2872 | "price": 219.07 2873 | }, 2874 | { 2875 | "date": "2015-04-16", 2876 | "price": 223.92 2877 | }, 2878 | { 2879 | "date": "2015-04-17", 2880 | "price": 228.57 2881 | }, 2882 | { 2883 | "date": "2015-04-18", 2884 | "price": 222.85 2885 | }, 2886 | { 2887 | "date": "2015-04-19", 2888 | "price": 223.46 2889 | }, 2890 | { 2891 | "date": "2015-04-20", 2892 | "price": 222.61 2893 | }, 2894 | { 2895 | "date": "2015-04-21", 2896 | "price": 224.62 2897 | }, 2898 | { 2899 | "date": "2015-04-22", 2900 | "price": 235.6 2901 | }, 2902 | { 2903 | "date": "2015-04-23", 2904 | "price": 234.05 2905 | }, 2906 | { 2907 | "date": "2015-04-24", 2908 | "price": 235.97 2909 | }, 2910 | { 2911 | "date": "2015-04-25", 2912 | "price": 231.24 2913 | }, 2914 | { 2915 | "date": "2015-04-26", 2916 | "price": 226.41 2917 | }, 2918 | { 2919 | "date": "2015-04-27", 2920 | "price": 219.43 2921 | }, 2922 | { 2923 | "date": "2015-04-28", 2924 | "price": 228.97 2925 | }, 2926 | { 2927 | "date": "2015-04-29", 2928 | "price": 225.59 2929 | }, 2930 | { 2931 | "date": "2015-04-30", 2932 | "price": 225.69 2933 | }, 2934 | { 2935 | "date": "2015-05-01", 2936 | "price": 235.94 2937 | }, 2938 | { 2939 | "date": "2015-05-02", 2940 | "price": 232.34 2941 | }, 2942 | { 2943 | "date": "2015-05-03", 2944 | "price": 234.88 2945 | }, 2946 | { 2947 | "date": "2015-05-04", 2948 | "price": 240.36 2949 | }, 2950 | { 2951 | "date": "2015-05-05", 2952 | "price": 238.85 2953 | }, 2954 | { 2955 | "date": "2015-05-06", 2956 | "price": 236.25 2957 | }, 2958 | { 2959 | "date": "2015-05-07", 2960 | "price": 229.66 2961 | }, 2962 | { 2963 | "date": "2015-05-08", 2964 | "price": 237.2 2965 | }, 2966 | { 2967 | "date": "2015-05-09", 2968 | "price": 243.77 2969 | }, 2970 | { 2971 | "date": "2015-05-10", 2972 | "price": 241.73 2973 | }, 2974 | { 2975 | "date": "2015-05-11", 2976 | "price": 240.3 2977 | }, 2978 | { 2979 | "date": "2015-05-12", 2980 | "price": 242.15 2981 | }, 2982 | { 2983 | "date": "2015-05-13", 2984 | "price": 241.4 2985 | }, 2986 | { 2987 | "date": "2015-05-14", 2988 | "price": 236.21 2989 | }, 2990 | { 2991 | "date": "2015-05-15", 2992 | "price": 236.96 2993 | }, 2994 | { 2995 | "date": "2015-05-16", 2996 | "price": 237.64 2997 | }, 2998 | { 2999 | "date": "2015-05-17", 3000 | "price": 236.01 3001 | }, 3002 | { 3003 | "date": "2015-05-18", 3004 | "price": 236.89 3005 | }, 3006 | { 3007 | "date": "2015-05-19", 3008 | "price": 233.04 3009 | }, 3010 | { 3011 | "date": "2015-05-20", 3012 | "price": 231.89 3013 | }, 3014 | { 3015 | "date": "2015-05-21", 3016 | "price": 234.02 3017 | }, 3018 | { 3019 | "date": "2015-05-22", 3020 | "price": 235.32 3021 | }, 3022 | { 3023 | "date": "2015-05-23", 3024 | "price": 240.29 3025 | }, 3026 | { 3027 | "date": "2015-05-24", 3028 | "price": 238.98 3029 | }, 3030 | { 3031 | "date": "2015-05-25", 3032 | "price": 240.93 3033 | }, 3034 | { 3035 | "date": "2015-05-26", 3036 | "price": 237.1 3037 | }, 3038 | { 3039 | "date": "2015-05-27", 3040 | "price": 237.07 3041 | }, 3042 | { 3043 | "date": "2015-05-28", 3044 | "price": 237.26 3045 | }, 3046 | { 3047 | "date": "2015-05-29", 3048 | "price": 237.38 3049 | }, 3050 | { 3051 | "date": "2015-05-30", 3052 | "price": 237.09 3053 | }, 3054 | { 3055 | "date": "2015-05-31", 3056 | "price": 233.13 3057 | }, 3058 | { 3059 | "date": "2015-06-01", 3060 | "price": 230.23 3061 | }, 3062 | { 3063 | "date": "2015-06-02", 3064 | "price": 222.89 3065 | }, 3066 | { 3067 | "date": "2015-06-03", 3068 | "price": 225.74 3069 | }, 3070 | { 3071 | "date": "2015-06-04", 3072 | "price": 225.77 3073 | }, 3074 | { 3075 | "date": "2015-06-05", 3076 | "price": 224.15 3077 | }, 3078 | { 3079 | "date": "2015-06-06", 3080 | "price": 225.01 3081 | }, 3082 | { 3083 | "date": "2015-06-07", 3084 | "price": 225.6 3085 | }, 3086 | { 3087 | "date": "2015-06-08", 3088 | "price": 222.88 3089 | }, 3090 | { 3091 | "date": "2015-06-09", 3092 | "price": 228.54 3093 | }, 3094 | { 3095 | "date": "2015-06-10", 3096 | "price": 228.99 3097 | }, 3098 | { 3099 | "date": "2015-06-11", 3100 | "price": 228.85 3101 | }, 3102 | { 3103 | "date": "2015-06-12", 3104 | "price": 229.71 3105 | }, 3106 | { 3107 | "date": "2015-06-13", 3108 | "price": 229.92 3109 | }, 3110 | { 3111 | "date": "2015-06-14", 3112 | "price": 232.44 3113 | }, 3114 | { 3115 | "date": "2015-06-15", 3116 | "price": 233.42 3117 | }, 3118 | { 3119 | "date": "2015-06-16", 3120 | "price": 236.76 3121 | }, 3122 | { 3123 | "date": "2015-06-17", 3124 | "price": 250.82 3125 | }, 3126 | { 3127 | "date": "2015-06-18", 3128 | "price": 249.43 3129 | }, 3130 | { 3131 | "date": "2015-06-19", 3132 | "price": 249.04 3133 | }, 3134 | { 3135 | "date": "2015-06-20", 3136 | "price": 244.53 3137 | }, 3138 | { 3139 | "date": "2015-06-21", 3140 | "price": 245.1 3141 | }, 3142 | { 3143 | "date": "2015-06-22", 3144 | "price": 243.97 3145 | }, 3146 | { 3147 | "date": "2015-06-23", 3148 | "price": 246.93 3149 | }, 3150 | { 3151 | "date": "2015-06-24", 3152 | "price": 244.28 3153 | }, 3154 | { 3155 | "date": "2015-06-25", 3156 | "price": 240.37 3157 | }, 3158 | { 3159 | "date": "2015-06-26", 3160 | "price": 242.6 3161 | }, 3162 | { 3163 | "date": "2015-06-27", 3164 | "price": 243.55 3165 | }, 3166 | { 3167 | "date": "2015-06-28", 3168 | "price": 250.96 3169 | }, 3170 | { 3171 | "date": "2015-06-29", 3172 | "price": 248.72 3173 | }, 3174 | { 3175 | "date": "2015-06-30", 3176 | "price": 257.04 3177 | }, 3178 | { 3179 | "date": "2015-07-01", 3180 | "price": 263.35 3181 | }, 3182 | { 3183 | "date": "2015-07-02", 3184 | "price": 258.55 3185 | }, 3186 | { 3187 | "date": "2015-07-03", 3188 | "price": 255.46 3189 | }, 3190 | { 3191 | "date": "2015-07-04", 3192 | "price": 256.49 3193 | }, 3194 | { 3195 | "date": "2015-07-05", 3196 | "price": 260.8 3197 | }, 3198 | { 3199 | "date": "2015-07-06", 3200 | "price": 271.11 3201 | }, 3202 | { 3203 | "date": "2015-07-07", 3204 | "price": 269.96 3205 | }, 3206 | { 3207 | "date": "2015-07-08", 3208 | "price": 265.98 3209 | }, 3210 | { 3211 | "date": "2015-07-09", 3212 | "price": 270.83 3213 | }, 3214 | { 3215 | "date": "2015-07-10", 3216 | "price": 269.16 3217 | }, 3218 | { 3219 | "date": "2015-07-11", 3220 | "price": 284.88 3221 | }, 3222 | { 3223 | "date": "2015-07-12", 3224 | "price": 293.14 3225 | }, 3226 | { 3227 | "date": "2015-07-13", 3228 | "price": 310.83 3229 | }, 3230 | { 3231 | "date": "2015-07-14", 3232 | "price": 292.03 3233 | }, 3234 | { 3235 | "date": "2015-07-15", 3236 | "price": 288.05 3237 | }, 3238 | { 3239 | "date": "2015-07-16", 3240 | "price": 286.04 3241 | }, 3242 | { 3243 | "date": "2015-07-17", 3244 | "price": 278.09 3245 | }, 3246 | { 3247 | "date": "2015-07-18", 3248 | "price": 279.33 3249 | }, 3250 | { 3251 | "date": "2015-07-19", 3252 | "price": 274.77 3253 | }, 3254 | { 3255 | "date": "2015-07-20", 3256 | "price": 273.5 3257 | }, 3258 | { 3259 | "date": "2015-07-21", 3260 | "price": 278.88 3261 | }, 3262 | { 3263 | "date": "2015-07-22", 3264 | "price": 275.66 3265 | }, 3266 | { 3267 | "date": "2015-07-23", 3268 | "price": 277.34 3269 | }, 3270 | { 3271 | "date": "2015-07-24", 3272 | "price": 276.01 3273 | }, 3274 | { 3275 | "date": "2015-07-25", 3276 | "price": 288.16 3277 | }, 3278 | { 3279 | "date": "2015-07-26", 3280 | "price": 288.64 3281 | }, 3282 | { 3283 | "date": "2015-07-27", 3284 | "price": 292.64 3285 | }, 3286 | { 3287 | "date": "2015-07-28", 3288 | "price": 293.63 3289 | }, 3290 | { 3291 | "date": "2015-07-29", 3292 | "price": 294.48 3293 | }, 3294 | { 3295 | "date": "2015-07-30", 3296 | "price": 289.1 3297 | }, 3298 | { 3299 | "date": "2015-07-31", 3300 | "price": 287.7 3301 | }, 3302 | { 3303 | "date": "2015-08-01", 3304 | "price": 284.69 3305 | }, 3306 | { 3307 | "date": "2015-08-02", 3308 | "price": 280.45 3309 | }, 3310 | { 3311 | "date": "2015-08-03", 3312 | "price": 282.81 3313 | }, 3314 | { 3315 | "date": "2015-08-04", 3316 | "price": 281.23 3317 | }, 3318 | { 3319 | "date": "2015-08-05", 3320 | "price": 284.85 3321 | }, 3322 | { 3323 | "date": "2015-08-06", 3324 | "price": 281.91 3325 | }, 3326 | { 3327 | "date": "2015-08-07", 3328 | "price": 278.74 3329 | }, 3330 | { 3331 | "date": "2015-08-08", 3332 | "price": 279.74 3333 | }, 3334 | { 3335 | "date": "2015-08-09", 3336 | "price": 261.12 3337 | }, 3338 | { 3339 | "date": "2015-08-10", 3340 | "price": 265.48 3341 | }, 3342 | { 3343 | "date": "2015-08-11", 3344 | "price": 264.34 3345 | }, 3346 | { 3347 | "date": "2015-08-12", 3348 | "price": 270.6 3349 | }, 3350 | { 3351 | "date": "2015-08-13", 3352 | "price": 266.18 3353 | }, 3354 | { 3355 | "date": "2015-08-14", 3356 | "price": 264.13 3357 | }, 3358 | { 3359 | "date": "2015-08-15", 3360 | "price": 265.53 3361 | }, 3362 | { 3363 | "date": "2015-08-16", 3364 | "price": 261.87 3365 | }, 3366 | { 3367 | "date": "2015-08-17", 3368 | "price": 258.49 3369 | }, 3370 | { 3371 | "date": "2015-08-18", 3372 | "price": 257.93 3373 | }, 3374 | { 3375 | "date": "2015-08-19", 3376 | "price": 225.67 3377 | }, 3378 | { 3379 | "date": "2015-08-20", 3380 | "price": 226.9 3381 | }, 3382 | { 3383 | "date": "2015-08-21", 3384 | "price": 235.35 3385 | }, 3386 | { 3387 | "date": "2015-08-22", 3388 | "price": 232.66 3389 | }, 3390 | { 3391 | "date": "2015-08-23", 3392 | "price": 230.38 3393 | }, 3394 | { 3395 | "date": "2015-08-24", 3396 | "price": 228.11 3397 | }, 3398 | { 3399 | "date": "2015-08-25", 3400 | "price": 210.07 3401 | }, 3402 | { 3403 | "date": "2015-08-26", 3404 | "price": 222.08 3405 | }, 3406 | { 3407 | "date": "2015-08-27", 3408 | "price": 226.05 3409 | }, 3410 | { 3411 | "date": "2015-08-28", 3412 | "price": 224.7 3413 | }, 3414 | { 3415 | "date": "2015-08-29", 3416 | "price": 231.55 3417 | }, 3418 | { 3419 | "date": "2015-08-30", 3420 | "price": 229.9 3421 | }, 3422 | { 3423 | "date": "2015-08-31", 3424 | "price": 229.11 3425 | }, 3426 | { 3427 | "date": "2015-09-01", 3428 | "price": 230.26 3429 | }, 3430 | { 3431 | "date": "2015-09-02", 3432 | "price": 228.03 3433 | }, 3434 | { 3435 | "date": "2015-09-03", 3436 | "price": 229.32 3437 | }, 3438 | { 3439 | "date": "2015-09-04", 3440 | "price": 227.21 3441 | }, 3442 | { 3443 | "date": "2015-09-05", 3444 | "price": 230.2 3445 | }, 3446 | { 3447 | "date": "2015-09-06", 3448 | "price": 234.87 3449 | }, 3450 | { 3451 | "date": "2015-09-07", 3452 | "price": 239.93 3453 | }, 3454 | { 3455 | "date": "2015-09-08", 3456 | "price": 239.85 3457 | }, 3458 | { 3459 | "date": "2015-09-09", 3460 | "price": 243.41 3461 | }, 3462 | { 3463 | "date": "2015-09-10", 3464 | "price": 238.34 3465 | }, 3466 | { 3467 | "date": "2015-09-11", 3468 | "price": 238.33 3469 | }, 3470 | { 3471 | "date": "2015-09-12", 3472 | "price": 239.85 3473 | }, 3474 | { 3475 | "date": "2015-09-13", 3476 | "price": 235.24 3477 | }, 3478 | { 3479 | "date": "2015-09-14", 3480 | "price": 230.61 3481 | }, 3482 | { 3483 | "date": "2015-09-15", 3484 | "price": 230.49 3485 | }, 3486 | { 3487 | "date": "2015-09-16", 3488 | "price": 230.25 3489 | }, 3490 | { 3491 | "date": "2015-09-17", 3492 | "price": 229.08 3493 | }, 3494 | { 3495 | "date": "2015-09-18", 3496 | "price": 233.52 3497 | }, 3498 | { 3499 | "date": "2015-09-19", 3500 | "price": 232.86 3501 | }, 3502 | { 3503 | "date": "2015-09-20", 3504 | "price": 231.4 3505 | }, 3506 | { 3507 | "date": "2015-09-21", 3508 | "price": 231.22 3509 | }, 3510 | { 3511 | "date": "2015-09-22", 3512 | "price": 226.97 3513 | }, 3514 | { 3515 | "date": "2015-09-23", 3516 | "price": 230.94 3517 | }, 3518 | { 3519 | "date": "2015-09-24", 3520 | "price": 230.36 3521 | }, 3522 | { 3523 | "date": "2015-09-25", 3524 | "price": 234.36 3525 | }, 3526 | { 3527 | "date": "2015-09-26", 3528 | "price": 235.08 3529 | }, 3530 | { 3531 | "date": "2015-09-27", 3532 | "price": 234.14 3533 | }, 3534 | { 3535 | "date": "2015-09-28", 3536 | "price": 232.84 3537 | }, 3538 | { 3539 | "date": "2015-09-29", 3540 | "price": 239.02 3541 | }, 3542 | { 3543 | "date": "2015-09-30", 3544 | "price": 236.64 3545 | }, 3546 | { 3547 | "date": "2015-10-01", 3548 | "price": 236 3549 | }, 3550 | { 3551 | "date": "2015-10-02", 3552 | "price": 237.26 3553 | }, 3554 | { 3555 | "date": "2015-10-03", 3556 | "price": 237.2 3557 | }, 3558 | { 3559 | "date": "2015-10-04", 3560 | "price": 238.53 3561 | }, 3562 | { 3563 | "date": "2015-10-05", 3564 | "price": 238.15 3565 | }, 3566 | { 3567 | "date": "2015-10-06", 3568 | "price": 240.36 3569 | }, 3570 | { 3571 | "date": "2015-10-07", 3572 | "price": 246.17 3573 | }, 3574 | { 3575 | "date": "2015-10-08", 3576 | "price": 243.07 3577 | }, 3578 | { 3579 | "date": "2015-10-09", 3580 | "price": 242.5 3581 | }, 3582 | { 3583 | "date": "2015-10-10", 3584 | "price": 243.74 3585 | }, 3586 | { 3587 | "date": "2015-10-11", 3588 | "price": 244.74 3589 | }, 3590 | { 3591 | "date": "2015-10-12", 3592 | "price": 246.88 3593 | }, 3594 | { 3595 | "date": "2015-10-13", 3596 | "price": 245.2 3597 | }, 3598 | { 3599 | "date": "2015-10-14", 3600 | "price": 249.49 3601 | }, 3602 | { 3603 | "date": "2015-10-15", 3604 | "price": 252.11 3605 | }, 3606 | { 3607 | "date": "2015-10-16", 3608 | "price": 254.3 3609 | }, 3610 | { 3611 | "date": "2015-10-17", 3612 | "price": 262.75 3613 | }, 3614 | { 3615 | "date": "2015-10-18", 3616 | "price": 270.91 3617 | }, 3618 | { 3619 | "date": "2015-10-19", 3620 | "price": 261.86 3621 | }, 3622 | { 3623 | "date": "2015-10-20", 3624 | "price": 263.57 3625 | }, 3626 | { 3627 | "date": "2015-10-21", 3628 | "price": 269.31 3629 | }, 3630 | { 3631 | "date": "2015-10-22", 3632 | "price": 266.5 3633 | }, 3634 | { 3635 | "date": "2015-10-23", 3636 | "price": 273.65 3637 | }, 3638 | { 3639 | "date": "2015-10-24", 3640 | "price": 276.5 3641 | }, 3642 | { 3643 | "date": "2015-10-25", 3644 | "price": 281.45 3645 | }, 3646 | { 3647 | "date": "2015-10-26", 3648 | "price": 283.63 3649 | }, 3650 | { 3651 | "date": "2015-10-27", 3652 | "price": 285.18 3653 | }, 3654 | { 3655 | "date": "2015-10-28", 3656 | "price": 293.7 3657 | }, 3658 | { 3659 | "date": "2015-10-29", 3660 | "price": 304.32 3661 | }, 3662 | { 3663 | "date": "2015-10-30", 3664 | "price": 313.94 3665 | }, 3666 | { 3667 | "date": "2015-10-31", 3668 | "price": 328.51 3669 | }, 3670 | { 3671 | "date": "2015-11-01", 3672 | "price": 315.01 3673 | }, 3674 | { 3675 | "date": "2015-11-02", 3676 | "price": 325.94 3677 | }, 3678 | { 3679 | "date": "2015-11-03", 3680 | "price": 361.87 3681 | }, 3682 | { 3683 | "date": "2015-11-04", 3684 | "price": 403.66 3685 | }, 3686 | { 3687 | "date": "2015-11-05", 3688 | "price": 408.08 3689 | }, 3690 | { 3691 | "date": "2015-11-06", 3692 | "price": 388.05 3693 | }, 3694 | { 3695 | "date": "2015-11-07", 3696 | "price": 374.27 3697 | }, 3698 | { 3699 | "date": "2015-11-08", 3700 | "price": 384.28 3701 | }, 3702 | { 3703 | "date": "2015-11-09", 3704 | "price": 374.32 3705 | }, 3706 | { 3707 | "date": "2015-11-10", 3708 | "price": 379.98 3709 | }, 3710 | { 3711 | "date": "2015-11-11", 3712 | "price": 339.82 3713 | }, 3714 | { 3715 | "date": "2015-11-12", 3716 | "price": 314.08 3717 | }, 3718 | { 3719 | "date": "2015-11-13", 3720 | "price": 338.5 3721 | }, 3722 | { 3723 | "date": "2015-11-14", 3724 | "price": 336.62 3725 | }, 3726 | { 3727 | "date": "2015-11-15", 3728 | "price": 333.05 3729 | }, 3730 | { 3731 | "date": "2015-11-16", 3732 | "price": 319.73 3733 | }, 3734 | { 3735 | "date": "2015-11-17", 3736 | "price": 330.36 3737 | }, 3738 | { 3739 | "date": "2015-11-18", 3740 | "price": 334.59 3741 | }, 3742 | { 3743 | "date": "2015-11-19", 3744 | "price": 334.68 3745 | }, 3746 | { 3747 | "date": "2015-11-20", 3748 | "price": 326.41 3749 | }, 3750 | { 3751 | "date": "2015-11-21", 3752 | "price": 322.09 3753 | }, 3754 | { 3755 | "date": "2015-11-22", 3756 | "price": 326.98 3757 | }, 3758 | { 3759 | "date": "2015-11-23", 3760 | "price": 324.35 3761 | }, 3762 | { 3763 | "date": "2015-11-24", 3764 | "price": 323.01 3765 | }, 3766 | { 3767 | "date": "2015-11-25", 3768 | "price": 320.05 3769 | }, 3770 | { 3771 | "date": "2015-11-26", 3772 | "price": 328.3 3773 | }, 3774 | { 3775 | "date": "2015-11-27", 3776 | "price": 351.86 3777 | }, 3778 | { 3779 | "date": "2015-11-28", 3780 | "price": 357.14 3781 | }, 3782 | { 3783 | "date": "2015-11-29", 3784 | "price": 357.47 3785 | }, 3786 | { 3787 | "date": "2015-11-30", 3788 | "price": 371.44 3789 | }, 3790 | { 3791 | "date": "2015-12-01", 3792 | "price": 377.41 3793 | }, 3794 | { 3795 | "date": "2015-12-02", 3796 | "price": 361.85 3797 | }, 3798 | { 3799 | "date": "2015-12-03", 3800 | "price": 359.33 3801 | }, 3802 | { 3803 | "date": "2015-12-04", 3804 | "price": 361.26 3805 | }, 3806 | { 3807 | "date": "2015-12-05", 3808 | "price": 363.72 3809 | }, 3810 | { 3811 | "date": "2015-12-06", 3812 | "price": 389.55 3813 | }, 3814 | { 3815 | "date": "2015-12-07", 3816 | "price": 389.98 3817 | }, 3818 | { 3819 | "date": "2015-12-08", 3820 | "price": 395.75 3821 | }, 3822 | { 3823 | "date": "2015-12-09", 3824 | "price": 414.44 3825 | }, 3826 | { 3827 | "date": "2015-12-10", 3828 | "price": 417.99 3829 | }, 3830 | { 3831 | "date": "2015-12-11", 3832 | "price": 415.28 3833 | }, 3834 | { 3835 | "date": "2015-12-12", 3836 | "price": 452.33 3837 | }, 3838 | { 3839 | "date": "2015-12-13", 3840 | "price": 431.66 3841 | }, 3842 | { 3843 | "date": "2015-12-14", 3844 | "price": 433.27 3845 | }, 3846 | { 3847 | "date": "2015-12-15", 3848 | "price": 443.88 3849 | }, 3850 | { 3851 | "date": "2015-12-16", 3852 | "price": 465.21 3853 | }, 3854 | { 3855 | "date": "2015-12-17", 3856 | "price": 454.78 3857 | }, 3858 | { 3859 | "date": "2015-12-18", 3860 | "price": 455.85 3861 | }, 3862 | { 3863 | "date": "2015-12-19", 3864 | "price": 463.55 3865 | }, 3866 | { 3867 | "date": "2015-12-20", 3868 | "price": 462.23 3869 | }, 3870 | { 3871 | "date": "2015-12-21", 3872 | "price": 442.84 3873 | }, 3874 | { 3875 | "date": "2015-12-22", 3876 | "price": 437.44 3877 | }, 3878 | { 3879 | "date": "2015-12-23", 3880 | "price": 436.72 3881 | }, 3882 | { 3883 | "date": "2015-12-24", 3884 | "price": 443.09 3885 | }, 3886 | { 3887 | "date": "2015-12-25", 3888 | "price": 454.86 3889 | }, 3890 | { 3891 | "date": "2015-12-26", 3892 | "price": 455.76 3893 | }, 3894 | { 3895 | "date": "2015-12-27", 3896 | "price": 416.51 3897 | }, 3898 | { 3899 | "date": "2015-12-28", 3900 | "price": 423.34 3901 | }, 3902 | { 3903 | "date": "2015-12-29", 3904 | "price": 422.1 3905 | }, 3906 | { 3907 | "date": "2015-12-30", 3908 | "price": 433.3 3909 | }, 3910 | { 3911 | "date": "2015-12-31", 3912 | "price": 425.88 3913 | }, 3914 | { 3915 | "date": "2016-01-01", 3916 | "price": 430.72 3917 | }, 3918 | { 3919 | "date": "2016-01-02", 3920 | "price": 434.62 3921 | }, 3922 | { 3923 | "date": "2016-01-03", 3924 | "price": 433.58 3925 | }, 3926 | { 3927 | "date": "2016-01-04", 3928 | "price": 430.06 3929 | }, 3930 | { 3931 | "date": "2016-01-05", 3932 | "price": 433.07 3933 | }, 3934 | { 3935 | "date": "2016-01-06", 3936 | "price": 431.86 3937 | }, 3938 | { 3939 | "date": "2016-01-07", 3940 | "price": 430.01 3941 | }, 3942 | { 3943 | "date": "2016-01-08", 3944 | "price": 457.54 3945 | }, 3946 | { 3947 | "date": "2016-01-09", 3948 | "price": 453.38 3949 | }, 3950 | { 3951 | "date": "2016-01-10", 3952 | "price": 448.24 3953 | }, 3954 | { 3955 | "date": "2016-01-11", 3956 | "price": 448.7 3957 | }, 3958 | { 3959 | "date": "2016-01-12", 3960 | "price": 448.18 3961 | }, 3962 | { 3963 | "date": "2016-01-13", 3964 | "price": 434.67 3965 | }, 3966 | { 3967 | "date": "2016-01-14", 3968 | "price": 432.29 3969 | }, 3970 | { 3971 | "date": "2016-01-15", 3972 | "price": 430.26 3973 | }, 3974 | { 3975 | "date": "2016-01-16", 3976 | "price": 365.07 3977 | }, 3978 | { 3979 | "date": "2016-01-17", 3980 | "price": 387.15 3981 | }, 3982 | { 3983 | "date": "2016-01-18", 3984 | "price": 381.73 3985 | }, 3986 | { 3987 | "date": "2016-01-19", 3988 | "price": 387.03 3989 | }, 3990 | { 3991 | "date": "2016-01-20", 3992 | "price": 379.74 3993 | }, 3994 | { 3995 | "date": "2016-01-21", 3996 | "price": 419.63 3997 | }, 3998 | { 3999 | "date": "2016-01-22", 4000 | "price": 409.75 4001 | }, 4002 | { 4003 | "date": "2016-01-23", 4004 | "price": 382.43 4005 | }, 4006 | { 4007 | "date": "2016-01-24", 4008 | "price": 388.1 4009 | }, 4010 | { 4011 | "date": "2016-01-25", 4012 | "price": 402.32 4013 | }, 4014 | { 4015 | "date": "2016-01-26", 4016 | "price": 392 4017 | }, 4018 | { 4019 | "date": "2016-01-27", 4020 | "price": 392.44 4021 | }, 4022 | { 4023 | "date": "2016-01-28", 4024 | "price": 395.15 4025 | }, 4026 | { 4027 | "date": "2016-01-29", 4028 | "price": 380.11 4029 | }, 4030 | { 4031 | "date": "2016-01-30", 4032 | "price": 378.86 4033 | }, 4034 | { 4035 | "date": "2016-01-31", 4036 | "price": 378.29 4037 | }, 4038 | { 4039 | "date": "2016-02-01", 4040 | "price": 369.35 4041 | }, 4042 | { 4043 | "date": "2016-02-02", 4044 | "price": 372.92 4045 | }, 4046 | { 4047 | "date": "2016-02-03", 4048 | "price": 374.65 4049 | }, 4050 | { 4051 | "date": "2016-02-04", 4052 | "price": 370.17 4053 | }, 4054 | { 4055 | "date": "2016-02-05", 4056 | "price": 388.9 4057 | }, 4058 | { 4059 | "date": "2016-02-06", 4060 | "price": 386.59 4061 | }, 4062 | { 4063 | "date": "2016-02-07", 4064 | "price": 376.51 4065 | }, 4066 | { 4067 | "date": "2016-02-08", 4068 | "price": 376.76 4069 | }, 4070 | { 4071 | "date": "2016-02-09", 4072 | "price": 373.42 4073 | }, 4074 | { 4075 | "date": "2016-02-10", 4076 | "price": 376.15 4077 | }, 4078 | { 4079 | "date": "2016-02-11", 4080 | "price": 382.11 4081 | }, 4082 | { 4083 | "date": "2016-02-12", 4084 | "price": 379.69 4085 | }, 4086 | { 4087 | "date": "2016-02-13", 4088 | "price": 384.64 4089 | }, 4090 | { 4091 | "date": "2016-02-14", 4092 | "price": 392.93 4093 | }, 4094 | { 4095 | "date": "2016-02-15", 4096 | "price": 407.57 4097 | }, 4098 | { 4099 | "date": "2016-02-16", 4100 | "price": 401.43 4101 | }, 4102 | { 4103 | "date": "2016-02-17", 4104 | "price": 407.66 4105 | }, 4106 | { 4107 | "date": "2016-02-18", 4108 | "price": 416.57 4109 | }, 4110 | { 4111 | "date": "2016-02-19", 4112 | "price": 422.73 4113 | }, 4114 | { 4115 | "date": "2016-02-20", 4116 | "price": 421.6 4117 | }, 4118 | { 4119 | "date": "2016-02-21", 4120 | "price": 437.77 4121 | }, 4122 | { 4123 | "date": "2016-02-22", 4124 | "price": 438.99 4125 | }, 4126 | { 4127 | "date": "2016-02-23", 4128 | "price": 438.26 4129 | }, 4130 | { 4131 | "date": "2016-02-24", 4132 | "price": 420.96 4133 | }, 4134 | { 4135 | "date": "2016-02-25", 4136 | "price": 425.04 4137 | }, 4138 | { 4139 | "date": "2016-02-26", 4140 | "price": 424.63 4141 | }, 4142 | { 4143 | "date": "2016-02-27", 4144 | "price": 432.84 4145 | }, 4146 | { 4147 | "date": "2016-02-28", 4148 | "price": 432.57 4149 | }, 4150 | { 4151 | "date": "2016-02-29", 4152 | "price": 433.44 4153 | }, 4154 | { 4155 | "date": "2016-03-01", 4156 | "price": 437.92 4157 | }, 4158 | { 4159 | "date": "2016-03-02", 4160 | "price": 435.13 4161 | }, 4162 | { 4163 | "date": "2016-03-03", 4164 | "price": 423.91 4165 | }, 4166 | { 4167 | "date": "2016-03-04", 4168 | "price": 421.84 4169 | }, 4170 | { 4171 | "date": "2016-03-05", 4172 | "price": 410.78 4173 | }, 4174 | { 4175 | "date": "2016-03-06", 4176 | "price": 400.52 4177 | }, 4178 | { 4179 | "date": "2016-03-07", 4180 | "price": 407.76 4181 | }, 4182 | { 4183 | "date": "2016-03-08", 4184 | "price": 414.46 4185 | }, 4186 | { 4187 | "date": "2016-03-09", 4188 | "price": 413.89 4189 | }, 4190 | { 4191 | "date": "2016-03-10", 4192 | "price": 414.74 4193 | }, 4194 | { 4195 | "date": "2016-03-11", 4196 | "price": 417.24 4197 | }, 4198 | { 4199 | "date": "2016-03-12", 4200 | "price": 421.61 4201 | }, 4202 | { 4203 | "date": "2016-03-13", 4204 | "price": 411.65 4205 | }, 4206 | { 4207 | "date": "2016-03-14", 4208 | "price": 414.2 4209 | }, 4210 | { 4211 | "date": "2016-03-15", 4212 | "price": 416.39 4213 | }, 4214 | { 4215 | "date": "2016-03-16", 4216 | "price": 416.89 4217 | }, 4218 | { 4219 | "date": "2016-03-17", 4220 | "price": 417.89 4221 | }, 4222 | { 4223 | "date": "2016-03-18", 4224 | "price": 420.55 4225 | }, 4226 | { 4227 | "date": "2016-03-19", 4228 | "price": 409.27 4229 | }, 4230 | { 4231 | "date": "2016-03-20", 4232 | "price": 410.4 4233 | }, 4234 | { 4235 | "date": "2016-03-21", 4236 | "price": 413.42 4237 | }, 4238 | { 4239 | "date": "2016-03-22", 4240 | "price": 413.13 4241 | }, 4242 | { 4243 | "date": "2016-03-23", 4244 | "price": 418.16 4245 | }, 4246 | { 4247 | "date": "2016-03-24", 4248 | "price": 418.42 4249 | }, 4250 | { 4251 | "date": "2016-03-25", 4252 | "price": 416.51 4253 | }, 4254 | { 4255 | "date": "2016-03-26", 4256 | "price": 417.36 4257 | }, 4258 | { 4259 | "date": "2016-03-27", 4260 | "price": 418.14 4261 | }, 4262 | { 4263 | "date": "2016-03-28", 4264 | "price": 426.55 4265 | }, 4266 | { 4267 | "date": "2016-03-29", 4268 | "price": 424.3 4269 | }, 4270 | { 4271 | "date": "2016-03-30", 4272 | "price": 416.83 4273 | }, 4274 | { 4275 | "date": "2016-03-31", 4276 | "price": 415.26 4277 | }, 4278 | { 4279 | "date": "2016-04-01", 4280 | "price": 416.76 4281 | }, 4282 | { 4283 | "date": "2016-04-02", 4284 | "price": 418.42 4285 | }, 4286 | { 4287 | "date": "2016-04-03", 4288 | "price": 421.17 4289 | }, 4290 | { 4291 | "date": "2016-04-04", 4292 | "price": 421.3 4293 | }, 4294 | { 4295 | "date": "2016-04-05", 4296 | "price": 421.02 4297 | }, 4298 | { 4299 | "date": "2016-04-06", 4300 | "price": 424.28 4301 | }, 4302 | { 4303 | "date": "2016-04-07", 4304 | "price": 423.62 4305 | }, 4306 | { 4307 | "date": "2016-04-08", 4308 | "price": 422.91 4309 | }, 4310 | { 4311 | "date": "2016-04-09", 4312 | "price": 420.81 4313 | }, 4314 | { 4315 | "date": "2016-04-10", 4316 | "price": 419.59 4317 | }, 4318 | { 4319 | "date": "2016-04-11", 4320 | "price": 421.87 4321 | }, 4322 | { 4323 | "date": "2016-04-12", 4324 | "price": 422.84 4325 | }, 4326 | { 4327 | "date": "2016-04-13", 4328 | "price": 425.63 4329 | }, 4330 | { 4331 | "date": "2016-04-14", 4332 | "price": 423.93 4333 | }, 4334 | { 4335 | "date": "2016-04-15", 4336 | "price": 424.43 4337 | }, 4338 | { 4339 | "date": "2016-04-16", 4340 | "price": 429.58 4341 | }, 4342 | { 4343 | "date": "2016-04-17", 4344 | "price": 430.64 4345 | }, 4346 | { 4347 | "date": "2016-04-18", 4348 | "price": 427.61 4349 | }, 4350 | { 4351 | "date": "2016-04-19", 4352 | "price": 428.7 4353 | }, 4354 | { 4355 | "date": "2016-04-20", 4356 | "price": 435.32 4357 | }, 4358 | { 4359 | "date": "2016-04-21", 4360 | "price": 441.42 4361 | }, 4362 | { 4363 | "date": "2016-04-22", 4364 | "price": 449.69 4365 | }, 4366 | { 4367 | "date": "2016-04-23", 4368 | "price": 445.86 4369 | }, 4370 | { 4371 | "date": "2016-04-24", 4372 | "price": 450.56 4373 | }, 4374 | { 4375 | "date": "2016-04-25", 4376 | "price": 459.12 4377 | }, 4378 | { 4379 | "date": "2016-04-26", 4380 | "price": 461.65 4381 | }, 4382 | { 4383 | "date": "2016-04-27", 4384 | "price": 466.26 4385 | }, 4386 | { 4387 | "date": "2016-04-28", 4388 | "price": 445.04 4389 | }, 4390 | { 4391 | "date": "2016-04-29", 4392 | "price": 449.41 4393 | }, 4394 | { 4395 | "date": "2016-04-30", 4396 | "price": 455.18 4397 | }, 4398 | { 4399 | "date": "2016-05-01", 4400 | "price": 448.48 4401 | }, 4402 | { 4403 | "date": "2016-05-02", 4404 | "price": 451.93 4405 | }, 4406 | { 4407 | "date": "2016-05-03", 4408 | "price": 444.73 4409 | }, 4410 | { 4411 | "date": "2016-05-04", 4412 | "price": 450.18 4413 | }, 4414 | { 4415 | "date": "2016-05-05", 4416 | "price": 446.71 4417 | }, 4418 | { 4419 | "date": "2016-05-06", 4420 | "price": 447.94 4421 | }, 4422 | { 4423 | "date": "2016-05-07", 4424 | "price": 459.64 4425 | }, 4426 | { 4427 | "date": "2016-05-08", 4428 | "price": 458.43 4429 | }, 4430 | { 4431 | "date": "2016-05-09", 4432 | "price": 458.21 4433 | }, 4434 | { 4435 | "date": "2016-05-10", 4436 | "price": 460.52 4437 | }, 4438 | { 4439 | "date": "2016-05-11", 4440 | "price": 450.86 4441 | }, 4442 | { 4443 | "date": "2016-05-12", 4444 | "price": 452.45 4445 | }, 4446 | { 4447 | "date": "2016-05-13", 4448 | "price": 454.85 4449 | }, 4450 | { 4451 | "date": "2016-05-14", 4452 | "price": 455.82 4453 | }, 4454 | { 4455 | "date": "2016-05-15", 4456 | "price": 455.76 4457 | }, 4458 | { 4459 | "date": "2016-05-16", 4460 | "price": 457.59 4461 | }, 4462 | { 4463 | "date": "2016-05-17", 4464 | "price": 454.01 4465 | }, 4466 | { 4467 | "date": "2016-05-18", 4468 | "price": 453.69 4469 | }, 4470 | { 4471 | "date": "2016-05-19", 4472 | "price": 454.52 4473 | }, 4474 | { 4475 | "date": "2016-05-20", 4476 | "price": 437.79 4477 | }, 4478 | { 4479 | "date": "2016-05-21", 4480 | "price": 442.97 4481 | }, 4482 | { 4483 | "date": "2016-05-22", 4484 | "price": 443.22 4485 | }, 4486 | { 4487 | "date": "2016-05-23", 4488 | "price": 439.35 4489 | }, 4490 | { 4491 | "date": "2016-05-24", 4492 | "price": 444.29 4493 | }, 4494 | { 4495 | "date": "2016-05-25", 4496 | "price": 446.06 4497 | }, 4498 | { 4499 | "date": "2016-05-26", 4500 | "price": 449.67 4501 | }, 4502 | { 4503 | "date": "2016-05-27", 4504 | "price": 453.52 4505 | }, 4506 | { 4507 | "date": "2016-05-28", 4508 | "price": 473.03 4509 | }, 4510 | { 4511 | "date": "2016-05-29", 4512 | "price": 527.48 4513 | }, 4514 | { 4515 | "date": "2016-05-30", 4516 | "price": 528.47 4517 | }, 4518 | { 4519 | "date": "2016-05-31", 4520 | "price": 534.19 4521 | }, 4522 | { 4523 | "date": "2016-06-01", 4524 | "price": 531.11 4525 | }, 4526 | { 4527 | "date": "2016-06-02", 4528 | "price": 536.52 4529 | }, 4530 | { 4531 | "date": "2016-06-03", 4532 | "price": 537.68 4533 | }, 4534 | { 4535 | "date": "2016-06-04", 4536 | "price": 569.71 4537 | }, 4538 | { 4539 | "date": "2016-06-05", 4540 | "price": 573.31 4541 | }, 4542 | { 4543 | "date": "2016-06-06", 4544 | "price": 574.6 4545 | }, 4546 | { 4547 | "date": "2016-06-07", 4548 | "price": 585.45 4549 | }, 4550 | { 4551 | "date": "2016-06-08", 4552 | "price": 577.17 4553 | }, 4554 | { 4555 | "date": "2016-06-09", 4556 | "price": 582.2 4557 | }, 4558 | { 4559 | "date": "2016-06-10", 4560 | "price": 575.84 4561 | }, 4562 | { 4563 | "date": "2016-06-11", 4564 | "price": 578.67 4565 | }, 4566 | { 4567 | "date": "2016-06-12", 4568 | "price": 609.68 4569 | }, 4570 | { 4571 | "date": "2016-06-13", 4572 | "price": 671.65 4573 | }, 4574 | { 4575 | "date": "2016-06-14", 4576 | "price": 704.5 4577 | }, 4578 | { 4579 | "date": "2016-06-15", 4580 | "price": 685.68 4581 | }, 4582 | { 4583 | "date": "2016-06-16", 4584 | "price": 696.52 4585 | }, 4586 | { 4587 | "date": "2016-06-17", 4588 | "price": 768.49 4589 | }, 4590 | { 4591 | "date": "2016-06-18", 4592 | "price": 748.76 4593 | }, 4594 | { 4595 | "date": "2016-06-19", 4596 | "price": 756.69 4597 | }, 4598 | { 4599 | "date": "2016-06-20", 4600 | "price": 763.93 4601 | }, 4602 | { 4603 | "date": "2016-06-21", 4604 | "price": 735.88 4605 | }, 4606 | { 4607 | "date": "2016-06-22", 4608 | "price": 665.91 4609 | }, 4610 | { 4611 | "date": "2016-06-23", 4612 | "price": 597.44 4613 | }, 4614 | { 4615 | "date": "2016-06-24", 4616 | "price": 625.58 4617 | }, 4618 | { 4619 | "date": "2016-06-25", 4620 | "price": 665.28 4621 | }, 4622 | { 4623 | "date": "2016-06-26", 4624 | "price": 665.93 4625 | }, 4626 | { 4627 | "date": "2016-06-27", 4628 | "price": 629.35 4629 | }, 4630 | { 4631 | "date": "2016-06-28", 4632 | "price": 658.1 4633 | }, 4634 | { 4635 | "date": "2016-06-29", 4636 | "price": 644.12 4637 | }, 4638 | { 4639 | "date": "2016-06-30", 4640 | "price": 640.59 4641 | }, 4642 | { 4643 | "date": "2016-07-01", 4644 | "price": 672.52 4645 | }, 4646 | { 4647 | "date": "2016-07-02", 4648 | "price": 676.73 4649 | }, 4650 | { 4651 | "date": "2016-07-03", 4652 | "price": 704.97 4653 | }, 4654 | { 4655 | "date": "2016-07-04", 4656 | "price": 658.8 4657 | }, 4658 | { 4659 | "date": "2016-07-05", 4660 | "price": 683.21 4661 | }, 4662 | { 4663 | "date": "2016-07-06", 4664 | "price": 670.42 4665 | }, 4666 | { 4667 | "date": "2016-07-07", 4668 | "price": 678.09 4669 | }, 4670 | { 4671 | "date": "2016-07-08", 4672 | "price": 640.69 4673 | }, 4674 | { 4675 | "date": "2016-07-09", 4676 | "price": 666.38 4677 | }, 4678 | { 4679 | "date": "2016-07-10", 4680 | "price": 650.6 4681 | }, 4682 | { 4683 | "date": "2016-07-11", 4684 | "price": 648.48 4685 | }, 4686 | { 4687 | "date": "2016-07-12", 4688 | "price": 648.28 4689 | }, 4690 | { 4691 | "date": "2016-07-13", 4692 | "price": 664.8 4693 | }, 4694 | { 4695 | "date": "2016-07-14", 4696 | "price": 652.92 4697 | }, 4698 | { 4699 | "date": "2016-07-15", 4700 | "price": 659.17 4701 | }, 4702 | { 4703 | "date": "2016-07-16", 4704 | "price": 663.78 4705 | }, 4706 | { 4707 | "date": "2016-07-17", 4708 | "price": 661.99 4709 | }, 4710 | { 4711 | "date": "2016-07-18", 4712 | "price": 679.81 4713 | }, 4714 | { 4715 | "date": "2016-07-19", 4716 | "price": 672.74 4717 | }, 4718 | { 4719 | "date": "2016-07-20", 4720 | "price": 672.81 4721 | }, 4722 | { 4723 | "date": "2016-07-21", 4724 | "price": 665.23 4725 | }, 4726 | { 4727 | "date": "2016-07-22", 4728 | "price": 664.92 4729 | }, 4730 | { 4731 | "date": "2016-07-23", 4732 | "price": 650.73 4733 | }, 4734 | { 4735 | "date": "2016-07-24", 4736 | "price": 655.41 4737 | }, 4738 | { 4739 | "date": "2016-07-25", 4740 | "price": 661.26 4741 | }, 4742 | { 4743 | "date": "2016-07-26", 4744 | "price": 654.23 4745 | }, 4746 | { 4747 | "date": "2016-07-27", 4748 | "price": 651.63 4749 | }, 4750 | { 4751 | "date": "2016-07-28", 4752 | "price": 654.49 4753 | }, 4754 | { 4755 | "date": "2016-07-29", 4756 | "price": 655.11 4757 | }, 4758 | { 4759 | "date": "2016-07-30", 4760 | "price": 657.01 4761 | }, 4762 | { 4763 | "date": "2016-07-31", 4764 | "price": 655.1 4765 | }, 4766 | { 4767 | "date": "2016-08-01", 4768 | "price": 624.6 4769 | }, 4770 | { 4771 | "date": "2016-08-02", 4772 | "price": 606.4 4773 | }, 4774 | { 4775 | "date": "2016-08-03", 4776 | "price": 548.66 4777 | }, 4778 | { 4779 | "date": "2016-08-04", 4780 | "price": 566.33 4781 | }, 4782 | { 4783 | "date": "2016-08-05", 4784 | "price": 578.28 4785 | }, 4786 | { 4787 | "date": "2016-08-06", 4788 | "price": 575.03 4789 | }, 4790 | { 4791 | "date": "2016-08-07", 4792 | "price": 587.77 4793 | }, 4794 | { 4795 | "date": "2016-08-08", 4796 | "price": 592.74 4797 | }, 4798 | { 4799 | "date": "2016-08-09", 4800 | "price": 591.04 4801 | }, 4802 | { 4803 | "date": "2016-08-10", 4804 | "price": 587.65 4805 | }, 4806 | { 4807 | "date": "2016-08-11", 4808 | "price": 592.12 4809 | }, 4810 | { 4811 | "date": "2016-08-12", 4812 | "price": 588.8 4813 | }, 4814 | { 4815 | "date": "2016-08-13", 4816 | "price": 587.36 4817 | }, 4818 | { 4819 | "date": "2016-08-14", 4820 | "price": 585.59 4821 | }, 4822 | { 4823 | "date": "2016-08-15", 4824 | "price": 570.49 4825 | }, 4826 | { 4827 | "date": "2016-08-16", 4828 | "price": 567.24 4829 | }, 4830 | { 4831 | "date": "2016-08-17", 4832 | "price": 577.76 4833 | }, 4834 | { 4835 | "date": "2016-08-18", 4836 | "price": 573.71 4837 | }, 4838 | { 4839 | "date": "2016-08-19", 4840 | "price": 574.34 4841 | }, 4842 | { 4843 | "date": "2016-08-20", 4844 | "price": 576.08 4845 | }, 4846 | { 4847 | "date": "2016-08-21", 4848 | "price": 581.94 4849 | }, 4850 | { 4851 | "date": "2016-08-22", 4852 | "price": 581.31 4853 | }, 4854 | { 4855 | "date": "2016-08-23", 4856 | "price": 586.77 4857 | }, 4858 | { 4859 | "date": "2016-08-24", 4860 | "price": 583.41 4861 | }, 4862 | { 4863 | "date": "2016-08-25", 4864 | "price": 580.18 4865 | }, 4866 | { 4867 | "date": "2016-08-26", 4868 | "price": 577.75 4869 | }, 4870 | { 4871 | "date": "2016-08-27", 4872 | "price": 579.45 4873 | }, 4874 | { 4875 | "date": "2016-08-28", 4876 | "price": 569.83 4877 | }, 4878 | { 4879 | "date": "2016-08-29", 4880 | "price": 574.07 4881 | }, 4882 | { 4883 | "date": "2016-08-30", 4884 | "price": 574.11 4885 | }, 4886 | { 4887 | "date": "2016-08-31", 4888 | "price": 577.59 4889 | }, 4890 | { 4891 | "date": "2016-09-01", 4892 | "price": 575.55 4893 | }, 4894 | { 4895 | "date": "2016-09-02", 4896 | "price": 572.41 4897 | }, 4898 | { 4899 | "date": "2016-09-03", 4900 | "price": 575.55 4901 | }, 4902 | { 4903 | "date": "2016-09-04", 4904 | "price": 598.59 4905 | }, 4906 | { 4907 | "date": "2016-09-05", 4908 | "price": 608.99 4909 | }, 4910 | { 4911 | "date": "2016-09-06", 4912 | "price": 606.51 4913 | }, 4914 | { 4915 | "date": "2016-09-07", 4916 | "price": 610.57 4917 | }, 4918 | { 4919 | "date": "2016-09-08", 4920 | "price": 614.64 4921 | }, 4922 | { 4923 | "date": "2016-09-09", 4924 | "price": 626.35 4925 | }, 4926 | { 4927 | "date": "2016-09-10", 4928 | "price": 622.93 4929 | }, 4930 | { 4931 | "date": "2016-09-11", 4932 | "price": 623.42 4933 | }, 4934 | { 4935 | "date": "2016-09-12", 4936 | "price": 607.01 4937 | }, 4938 | { 4939 | "date": "2016-09-13", 4940 | "price": 608.03 4941 | }, 4942 | { 4943 | "date": "2016-09-14", 4944 | "price": 608.84 4945 | }, 4946 | { 4947 | "date": "2016-09-15", 4948 | "price": 610.59 4949 | }, 4950 | { 4951 | "date": "2016-09-16", 4952 | "price": 607.25 4953 | }, 4954 | { 4955 | "date": "2016-09-17", 4956 | "price": 607.22 4957 | }, 4958 | { 4959 | "date": "2016-09-18", 4960 | "price": 606.28 4961 | }, 4962 | { 4963 | "date": "2016-09-19", 4964 | "price": 609.87 4965 | }, 4966 | { 4967 | "date": "2016-09-20", 4968 | "price": 609.25 4969 | }, 4970 | { 4971 | "date": "2016-09-21", 4972 | "price": 603.59 4973 | }, 4974 | { 4975 | "date": "2016-09-22", 4976 | "price": 597.28 4977 | }, 4978 | { 4979 | "date": "2016-09-23", 4980 | "price": 596.2 4981 | }, 4982 | { 4983 | "date": "2016-09-24", 4984 | "price": 602.96 4985 | }, 4986 | { 4987 | "date": "2016-09-25", 4988 | "price": 602.75 4989 | }, 4990 | { 4991 | "date": "2016-09-26", 4992 | "price": 600.81 4993 | }, 4994 | { 4995 | "date": "2016-09-27", 4996 | "price": 608.02 4997 | }, 4998 | { 4999 | "date": "2016-09-28", 5000 | "price": 606.24 5001 | }, 5002 | { 5003 | "date": "2016-09-29", 5004 | "price": 605.02 5005 | }, 5006 | { 5007 | "date": "2016-09-30", 5008 | "price": 605.72 5009 | }, 5010 | { 5011 | "date": "2016-10-01", 5012 | "price": 609.93 5013 | }, 5014 | { 5015 | "date": "2016-10-02", 5016 | "price": 613.95 5017 | }, 5018 | { 5019 | "date": "2016-10-03", 5020 | "price": 610.97 5021 | }, 5022 | { 5023 | "date": "2016-10-04", 5024 | "price": 612.05 5025 | }, 5026 | { 5027 | "date": "2016-10-05", 5028 | "price": 610.22 5029 | }, 5030 | { 5031 | "date": "2016-10-06", 5032 | "price": 612.47 5033 | }, 5034 | { 5035 | "date": "2016-10-07", 5036 | "price": 612.61 5037 | }, 5038 | { 5039 | "date": "2016-10-08", 5040 | "price": 617.34 5041 | }, 5042 | { 5043 | "date": "2016-10-09", 5044 | "price": 619.17 5045 | }, 5046 | { 5047 | "date": "2016-10-10", 5048 | "price": 616.82 5049 | }, 5050 | { 5051 | "date": "2016-10-11", 5052 | "price": 619.24 5053 | }, 5054 | { 5055 | "date": "2016-10-12", 5056 | "price": 640.87 5057 | }, 5058 | { 5059 | "date": "2016-10-13", 5060 | "price": 636.03 5061 | }, 5062 | { 5063 | "date": "2016-10-14", 5064 | "price": 637.01 5065 | }, 5066 | { 5067 | "date": "2016-10-15", 5068 | "price": 640.31 5069 | }, 5070 | { 5071 | "date": "2016-10-16", 5072 | "price": 639.08 5073 | }, 5074 | { 5075 | "date": "2016-10-17", 5076 | "price": 641.82 5077 | }, 5078 | { 5079 | "date": "2016-10-18", 5080 | "price": 639.41 5081 | }, 5082 | { 5083 | "date": "2016-10-19", 5084 | "price": 638.13 5085 | }, 5086 | { 5087 | "date": "2016-10-20", 5088 | "price": 630.66 5089 | }, 5090 | { 5091 | "date": "2016-10-21", 5092 | "price": 630.83 5093 | }, 5094 | { 5095 | "date": "2016-10-22", 5096 | "price": 633.14 5097 | }, 5098 | { 5099 | "date": "2016-10-23", 5100 | "price": 657.62 5101 | }, 5102 | { 5103 | "date": "2016-10-24", 5104 | "price": 657.16 5105 | }, 5106 | { 5107 | "date": "2016-10-25", 5108 | "price": 654 5109 | }, 5110 | { 5111 | "date": "2016-10-26", 5112 | "price": 657.68 5113 | }, 5114 | { 5115 | "date": "2016-10-27", 5116 | "price": 678.21 5117 | }, 5118 | { 5119 | "date": "2016-10-28", 5120 | "price": 688 5121 | }, 5122 | { 5123 | "date": "2016-10-29", 5124 | "price": 690.29 5125 | }, 5126 | { 5127 | "date": "2016-10-30", 5128 | "price": 714.12 5129 | }, 5130 | { 5131 | "date": "2016-10-31", 5132 | "price": 702.64 5133 | }, 5134 | { 5135 | "date": "2016-11-01", 5136 | "price": 701.34 5137 | }, 5138 | { 5139 | "date": "2016-11-02", 5140 | "price": 730.07 5141 | }, 5142 | { 5143 | "date": "2016-11-03", 5144 | "price": 742.35 5145 | }, 5146 | { 5147 | "date": "2016-11-04", 5148 | "price": 689.12 5149 | }, 5150 | { 5151 | "date": "2016-11-05", 5152 | "price": 703.53 5153 | }, 5154 | { 5155 | "date": "2016-11-06", 5156 | "price": 703.81 5157 | }, 5158 | { 5159 | "date": "2016-11-07", 5160 | "price": 710.74 5161 | }, 5162 | { 5163 | "date": "2016-11-08", 5164 | "price": 703.09 5165 | }, 5166 | { 5167 | "date": "2016-11-09", 5168 | "price": 709.83 5169 | }, 5170 | { 5171 | "date": "2016-11-10", 5172 | "price": 722.84 5173 | }, 5174 | { 5175 | "date": "2016-11-11", 5176 | "price": 715.55 5177 | }, 5178 | { 5179 | "date": "2016-11-12", 5180 | "price": 716.75 5181 | }, 5182 | { 5183 | "date": "2016-11-13", 5184 | "price": 705.2 5185 | }, 5186 | { 5187 | "date": "2016-11-14", 5188 | "price": 702 5189 | }, 5190 | { 5191 | "date": "2016-11-15", 5192 | "price": 705.79 5193 | }, 5194 | { 5195 | "date": "2016-11-16", 5196 | "price": 711.17 5197 | }, 5198 | { 5199 | "date": "2016-11-17", 5200 | "price": 744.88 5201 | }, 5202 | { 5203 | "date": "2016-11-18", 5204 | "price": 740.71 5205 | }, 5206 | { 5207 | "date": "2016-11-19", 5208 | "price": 751.83 5209 | }, 5210 | { 5211 | "date": "2016-11-20", 5212 | "price": 751.88 5213 | }, 5214 | { 5215 | "date": "2016-11-21", 5216 | "price": 731.27 5217 | }, 5218 | { 5219 | "date": "2016-11-22", 5220 | "price": 739.64 5221 | }, 5222 | { 5223 | "date": "2016-11-23", 5224 | "price": 751.74 5225 | }, 5226 | { 5227 | "date": "2016-11-24", 5228 | "price": 744.62 5229 | }, 5230 | { 5231 | "date": "2016-11-25", 5232 | "price": 740.44 5233 | }, 5234 | { 5235 | "date": "2016-11-26", 5236 | "price": 741.51 5237 | }, 5238 | { 5239 | "date": "2016-11-27", 5240 | "price": 735.44 5241 | }, 5242 | { 5243 | "date": "2016-11-28", 5244 | "price": 732.48 5245 | }, 5246 | { 5247 | "date": "2016-11-29", 5248 | "price": 736.33 5249 | }, 5250 | { 5251 | "date": "2016-11-30", 5252 | "price": 736.28 5253 | }, 5254 | { 5255 | "date": "2016-12-01", 5256 | "price": 746.05 5257 | }, 5258 | { 5259 | "date": "2016-12-02", 5260 | "price": 757.54 5261 | }, 5262 | { 5263 | "date": "2016-12-03", 5264 | "price": 778.25 5265 | }, 5266 | { 5267 | "date": "2016-12-04", 5268 | "price": 771.64 5269 | }, 5270 | { 5271 | "date": "2016-12-05", 5272 | "price": 773.39 5273 | }, 5274 | { 5275 | "date": "2016-12-06", 5276 | "price": 758.72 5277 | }, 5278 | { 5279 | "date": "2016-12-07", 5280 | "price": 764.21 5281 | }, 5282 | { 5283 | "date": "2016-12-08", 5284 | "price": 768.08 5285 | }, 5286 | { 5287 | "date": "2016-12-09", 5288 | "price": 769.94 5289 | }, 5290 | { 5291 | "date": "2016-12-10", 5292 | "price": 773.02 5293 | }, 5294 | { 5295 | "date": "2016-12-11", 5296 | "price": 774.75 5297 | }, 5298 | { 5299 | "date": "2016-12-12", 5300 | "price": 770.04 5301 | }, 5302 | { 5303 | "date": "2016-12-13", 5304 | "price": 780.65 5305 | }, 5306 | { 5307 | "date": "2016-12-14", 5308 | "price": 780.01 5309 | }, 5310 | { 5311 | "date": "2016-12-15", 5312 | "price": 780.07 5313 | }, 5314 | { 5315 | "date": "2016-12-16", 5316 | "price": 778.96 5317 | }, 5318 | { 5319 | "date": "2016-12-17", 5320 | "price": 785.17 5321 | }, 5322 | { 5323 | "date": "2016-12-18", 5324 | "price": 791.01 5325 | }, 5326 | { 5327 | "date": "2016-12-19", 5328 | "price": 790.69 5329 | }, 5330 | { 5331 | "date": "2016-12-20", 5332 | "price": 792.25 5333 | }, 5334 | { 5335 | "date": "2016-12-21", 5336 | "price": 800.64 5337 | }, 5338 | { 5339 | "date": "2016-12-22", 5340 | "price": 834.18 5341 | }, 5342 | { 5343 | "date": "2016-12-23", 5344 | "price": 864.89 5345 | }, 5346 | { 5347 | "date": "2016-12-24", 5348 | "price": 922.18 5349 | }, 5350 | { 5351 | "date": "2016-12-25", 5352 | "price": 899.65 5353 | }, 5354 | { 5355 | "date": "2016-12-26", 5356 | "price": 896.91 5357 | }, 5358 | { 5359 | "date": "2016-12-27", 5360 | "price": 908.35 5361 | }, 5362 | { 5363 | "date": "2016-12-28", 5364 | "price": 934.83 5365 | }, 5366 | { 5367 | "date": "2016-12-29", 5368 | "price": 975.13 5369 | }, 5370 | { 5371 | "date": "2016-12-30", 5372 | "price": 972.53 5373 | }, 5374 | { 5375 | "date": "2016-12-31", 5376 | "price": 960.63 5377 | }, 5378 | { 5379 | "date": "2017-01-01", 5380 | "price": 963.66 5381 | }, 5382 | { 5383 | "date": "2017-01-02", 5384 | "price": 998.62 5385 | }, 5386 | { 5387 | "date": "2017-01-03", 5388 | "price": 1021.6 5389 | }, 5390 | { 5391 | "date": "2017-01-04", 5392 | "price": 1044.4 5393 | }, 5394 | { 5395 | "date": "2017-01-05", 5396 | "price": 1156.73 5397 | }, 5398 | { 5399 | "date": "2017-01-06", 5400 | "price": 1014.24 5401 | }, 5402 | { 5403 | "date": "2017-01-07", 5404 | "price": 903.49 5405 | }, 5406 | { 5407 | "date": "2017-01-08", 5408 | "price": 908.17 5409 | }, 5410 | { 5411 | "date": "2017-01-09", 5412 | "price": 913.24 5413 | }, 5414 | { 5415 | "date": "2017-01-10", 5416 | "price": 902.44 5417 | }, 5418 | { 5419 | "date": "2017-01-11", 5420 | "price": 908.11 5421 | }, 5422 | { 5423 | "date": "2017-01-12", 5424 | "price": 775.18 5425 | }, 5426 | { 5427 | "date": "2017-01-13", 5428 | "price": 803.74 5429 | }, 5430 | { 5431 | "date": "2017-01-14", 5432 | "price": 825.14 5433 | }, 5434 | { 5435 | "date": "2017-01-15", 5436 | "price": 818.14 5437 | }, 5438 | { 5439 | "date": "2017-01-16", 5440 | "price": 821.78 5441 | }, 5442 | { 5443 | "date": "2017-01-17", 5444 | "price": 830.95 5445 | }, 5446 | { 5447 | "date": "2017-01-18", 5448 | "price": 909.37 5449 | }, 5450 | { 5451 | "date": "2017-01-19", 5452 | "price": 888.34 5453 | }, 5454 | { 5455 | "date": "2017-01-20", 5456 | "price": 898.17 5457 | }, 5458 | { 5459 | "date": "2017-01-21", 5460 | "price": 895.55 5461 | }, 5462 | { 5463 | "date": "2017-01-22", 5464 | "price": 922.21 5465 | }, 5466 | { 5467 | "date": "2017-01-23", 5468 | "price": 925.5 5469 | }, 5470 | { 5471 | "date": "2017-01-24", 5472 | "price": 910.68 5473 | }, 5474 | { 5475 | "date": "2017-01-25", 5476 | "price": 891.92 5477 | }, 5478 | { 5479 | "date": "2017-01-26", 5480 | "price": 902.4 5481 | }, 5482 | { 5483 | "date": "2017-01-27", 5484 | "price": 918.36 5485 | }, 5486 | { 5487 | "date": "2017-01-28", 5488 | "price": 919.81 5489 | }, 5490 | { 5491 | "date": "2017-01-29", 5492 | "price": 922.07 5493 | }, 5494 | { 5495 | "date": "2017-01-30", 5496 | "price": 920.15 5497 | }, 5498 | { 5499 | "date": "2017-01-31", 5500 | "price": 920.96 5501 | }, 5502 | { 5503 | "date": "2017-02-01", 5504 | "price": 970.94 5505 | }, 5506 | { 5507 | "date": "2017-02-02", 5508 | "price": 990 5509 | }, 5510 | { 5511 | "date": "2017-02-03", 5512 | "price": 1011.46 5513 | }, 5514 | { 5515 | "date": "2017-02-04", 5516 | "price": 1031.33 5517 | }, 5518 | { 5519 | "date": "2017-02-05", 5520 | "price": 1043.52 5521 | }, 5522 | { 5523 | "date": "2017-02-06", 5524 | "price": 1028.4 5525 | }, 5526 | { 5527 | "date": "2017-02-07", 5528 | "price": 1040.14 5529 | }, 5530 | { 5531 | "date": "2017-02-08", 5532 | "price": 1062.32 5533 | }, 5534 | { 5535 | "date": "2017-02-09", 5536 | "price": 1064.7 5537 | }, 5538 | { 5539 | "date": "2017-02-10", 5540 | "price": 995.63 5541 | }, 5542 | { 5543 | "date": "2017-02-11", 5544 | "price": 988.9 5545 | }, 5546 | { 5547 | "date": "2017-02-12", 5548 | "price": 1003.52 5549 | }, 5550 | { 5551 | "date": "2017-02-13", 5552 | "price": 998.89 5553 | }, 5554 | { 5555 | "date": "2017-02-14", 5556 | "price": 991.73 5557 | }, 5558 | { 5559 | "date": "2017-02-15", 5560 | "price": 1006.21 5561 | }, 5562 | { 5563 | "date": "2017-02-16", 5564 | "price": 1007.65 5565 | }, 5566 | { 5567 | "date": "2017-02-17", 5568 | "price": 1026.12 5569 | }, 5570 | { 5571 | "date": "2017-02-18", 5572 | "price": 1049.21 5573 | }, 5574 | { 5575 | "date": "2017-02-19", 5576 | "price": 1054.76 5577 | }, 5578 | { 5579 | "date": "2017-02-20", 5580 | "price": 1048.69 5581 | }, 5582 | { 5583 | "date": "2017-02-21", 5584 | "price": 1079.28 5585 | }, 5586 | { 5587 | "date": "2017-02-22", 5588 | "price": 1114.8 5589 | }, 5590 | { 5591 | "date": "2017-02-23", 5592 | "price": 1117.27 5593 | }, 5594 | { 5595 | "date": "2017-02-24", 5596 | "price": 1172.71 5597 | }, 5598 | { 5599 | "date": "2017-02-25", 5600 | "price": 1170.41 5601 | }, 5602 | { 5603 | "date": "2017-02-26", 5604 | "price": 1144.27 5605 | }, 5606 | { 5607 | "date": "2017-02-27", 5608 | "price": 1163.78 5609 | }, 5610 | { 5611 | "date": "2017-02-28", 5612 | "price": 1180.72 5613 | }, 5614 | { 5615 | "date": "2017-03-01", 5616 | "price": 1180.04 5617 | }, 5618 | { 5619 | "date": "2017-03-02", 5620 | "price": 1224.68 5621 | }, 5622 | { 5623 | "date": "2017-03-03", 5624 | "price": 1250.71 5625 | }, 5626 | { 5627 | "date": "2017-03-04", 5628 | "price": 1277.43 5629 | }, 5630 | { 5631 | "date": "2017-03-05", 5632 | "price": 1254.29 5633 | }, 5634 | { 5635 | "date": "2017-03-06", 5636 | "price": 1267.47 5637 | }, 5638 | { 5639 | "date": "2017-03-07", 5640 | "price": 1273.21 5641 | }, 5642 | { 5643 | "date": "2017-03-08", 5644 | "price": 1223.23 5645 | }, 5646 | { 5647 | "date": "2017-03-09", 5648 | "price": 1150.35 5649 | }, 5650 | { 5651 | "date": "2017-03-10", 5652 | "price": 1189.36 5653 | }, 5654 | { 5655 | "date": "2017-03-11", 5656 | "price": 1116.32 5657 | }, 5658 | { 5659 | "date": "2017-03-12", 5660 | "price": 1176.62 5661 | }, 5662 | { 5663 | "date": "2017-03-13", 5664 | "price": 1221.78 5665 | }, 5666 | { 5667 | "date": "2017-03-14", 5668 | "price": 1232.16 5669 | }, 5670 | { 5671 | "date": "2017-03-15", 5672 | "price": 1240.16 5673 | }, 5674 | { 5675 | "date": "2017-03-16", 5676 | "price": 1251.33 5677 | }, 5678 | { 5679 | "date": "2017-03-17", 5680 | "price": 1180.16 5681 | }, 5682 | { 5683 | "date": "2017-03-18", 5684 | "price": 1099.69 5685 | }, 5686 | { 5687 | "date": "2017-03-19", 5688 | "price": 976.73 5689 | }, 5690 | { 5691 | "date": "2017-03-20", 5692 | "price": 1037.24 5693 | }, 5694 | { 5695 | "date": "2017-03-21", 5696 | "price": 1055.36 5697 | }, 5698 | { 5699 | "date": "2017-03-22", 5700 | "price": 1120.65 5701 | }, 5702 | { 5703 | "date": "2017-03-23", 5704 | "price": 1050.05 5705 | }, 5706 | { 5707 | "date": "2017-03-24", 5708 | "price": 1038.45 5709 | }, 5710 | { 5711 | "date": "2017-03-25", 5712 | "price": 936.54 5713 | }, 5714 | { 5715 | "date": "2017-03-26", 5716 | "price": 974.02 5717 | }, 5718 | { 5719 | "date": "2017-03-27", 5720 | "price": 972.05 5721 | }, 5722 | { 5723 | "date": "2017-03-28", 5724 | "price": 1044.58 5725 | }, 5726 | { 5727 | "date": "2017-03-29", 5728 | "price": 1046.08 5729 | }, 5730 | { 5731 | "date": "2017-03-30", 5732 | "price": 1042.21 5733 | }, 5734 | { 5735 | "date": "2017-03-31", 5736 | "price": 1026.64 5737 | }, 5738 | { 5739 | "date": "2017-04-01", 5740 | "price": 1071.71 5741 | }, 5742 | { 5743 | "date": "2017-04-02", 5744 | "price": 1080.61 5745 | }, 5746 | { 5747 | "date": "2017-04-03", 5748 | "price": 1102.95 5749 | }, 5750 | { 5751 | "date": "2017-04-04", 5752 | "price": 1145.52 5753 | }, 5754 | { 5755 | "date": "2017-04-05", 5756 | "price": 1134.14 5757 | }, 5758 | { 5759 | "date": "2017-04-06", 5760 | "price": 1125.81 5761 | }, 5762 | { 5763 | "date": "2017-04-07", 5764 | "price": 1178.94 5765 | }, 5766 | { 5767 | "date": "2017-04-08", 5768 | "price": 1172.65 5769 | }, 5770 | { 5771 | "date": "2017-04-09", 5772 | "price": 1176.57 5773 | }, 5774 | { 5775 | "date": "2017-04-10", 5776 | "price": 1187.3 5777 | }, 5778 | { 5779 | "date": "2017-04-11", 5780 | "price": 1187.46 5781 | }, 5782 | { 5783 | "date": "2017-04-12", 5784 | "price": 1204.81 5785 | }, 5786 | { 5787 | "date": "2017-04-13", 5788 | "price": 1201.02 5789 | }, 5790 | { 5791 | "date": "2017-04-14", 5792 | "price": 1170.33 5793 | }, 5794 | { 5795 | "date": "2017-04-15", 5796 | "price": 1167.3 5797 | }, 5798 | { 5799 | "date": "2017-04-16", 5800 | "price": 1172.61 5801 | }, 5802 | { 5803 | "date": "2017-04-17", 5804 | "price": 1183.25 5805 | }, 5806 | { 5807 | "date": "2017-04-18", 5808 | "price": 1193.77 5809 | }, 5810 | { 5811 | "date": "2017-04-19", 5812 | "price": 1212.13 5813 | }, 5814 | { 5815 | "date": "2017-04-20", 5816 | "price": 1211.08 5817 | }, 5818 | { 5819 | "date": "2017-04-21", 5820 | "price": 1229.42 5821 | }, 5822 | { 5823 | "date": "2017-04-22", 5824 | "price": 1222.71 5825 | }, 5826 | { 5827 | "date": "2017-04-23", 5828 | "price": 1231.92 5829 | }, 5830 | { 5831 | "date": "2017-04-24", 5832 | "price": 1209.63 5833 | }, 5834 | { 5835 | "date": "2017-04-25", 5836 | "price": 1250.45 5837 | }, 5838 | { 5839 | "date": "2017-04-26", 5840 | "price": 1265.99 5841 | }, 5842 | { 5843 | "date": "2017-04-27", 5844 | "price": 1281.88 5845 | }, 5846 | { 5847 | "date": "2017-04-28", 5848 | "price": 1317.74 5849 | }, 5850 | { 5851 | "date": "2017-04-29", 5852 | "price": 1317.84 5853 | }, 5854 | { 5855 | "date": "2017-04-30", 5856 | "price": 1321.87 5857 | }, 5858 | { 5859 | "date": "2017-05-01", 5860 | "price": 1348.3 5861 | }, 5862 | { 5863 | "date": "2017-05-02", 5864 | "price": 1421.03 5865 | }, 5866 | { 5867 | "date": "2017-05-03", 5868 | "price": 1453.78 5869 | }, 5870 | { 5871 | "date": "2017-05-04", 5872 | "price": 1490.72 5873 | }, 5874 | { 5875 | "date": "2017-05-05", 5876 | "price": 1540.87 5877 | }, 5878 | { 5879 | "date": "2017-05-06", 5880 | "price": 1556.81 5881 | }, 5882 | { 5883 | "date": "2017-05-07", 5884 | "price": 1579.47 5885 | }, 5886 | { 5887 | "date": "2017-05-08", 5888 | "price": 1596.92 5889 | }, 5890 | { 5891 | "date": "2017-05-09", 5892 | "price": 1723.89 5893 | }, 5894 | { 5895 | "date": "2017-05-10", 5896 | "price": 1756.52 5897 | }, 5898 | { 5899 | "date": "2017-05-11", 5900 | "price": 1780.37 5901 | }, 5902 | { 5903 | "date": "2017-05-12", 5904 | "price": 1845.76 5905 | }, 5906 | { 5907 | "date": "2017-05-13", 5908 | "price": 1723.12 5909 | }, 5910 | { 5911 | "date": "2017-05-14", 5912 | "price": 1800.86 5913 | }, 5914 | { 5915 | "date": "2017-05-15", 5916 | "price": 1808.44 5917 | }, 5918 | { 5919 | "date": "2017-05-16", 5920 | "price": 1741.7 5921 | }, 5922 | { 5923 | "date": "2017-05-17", 5924 | "price": 1726.73 5925 | }, 5926 | { 5927 | "date": "2017-05-18", 5928 | "price": 1818.7 5929 | }, 5930 | { 5931 | "date": "2017-05-19", 5932 | "price": 1897.37 5933 | }, 5934 | { 5935 | "date": "2017-05-20", 5936 | "price": 1984.24 5937 | }, 5938 | { 5939 | "date": "2017-05-21", 5940 | "price": 2067.03 5941 | }, 5942 | { 5943 | "date": "2017-05-22", 5944 | "price": 2043.19 5945 | }, 5946 | { 5947 | "date": "2017-05-23", 5948 | "price": 2191.56 5949 | }, 5950 | { 5951 | "date": "2017-05-24", 5952 | "price": 2321.37 5953 | }, 5954 | { 5955 | "date": "2017-05-25", 5956 | "price": 2446.24 5957 | }, 5958 | { 5959 | "date": "2017-05-26", 5960 | "price": 2320.89 5961 | }, 5962 | { 5963 | "date": "2017-05-27", 5964 | "price": 2196.27 5965 | }, 5966 | { 5967 | "date": "2017-05-28", 5968 | "price": 2054.08 5969 | }, 5970 | { 5971 | "date": "2017-05-29", 5972 | "price": 2159.43 5973 | }, 5974 | { 5975 | "date": "2017-05-30", 5976 | "price": 2255.36 5977 | }, 5978 | { 5979 | "date": "2017-05-31", 5980 | "price": 2187.19 5981 | }, 5982 | { 5983 | "date": "2017-06-01", 5984 | "price": 2288.33 5985 | }, 5986 | { 5987 | "date": "2017-06-02", 5988 | "price": 2404.03 5989 | }, 5990 | { 5991 | "date": "2017-06-03", 5992 | "price": 2493.72 5993 | }, 5994 | { 5995 | "date": "2017-06-04", 5996 | "price": 2547.79 5997 | }, 5998 | { 5999 | "date": "2017-06-05", 6000 | "price": 2512.4 6001 | }, 6002 | { 6003 | "date": "2017-06-06", 6004 | "price": 2690.84 6005 | }, 6006 | { 6007 | "date": "2017-06-07", 6008 | "price": 2869.38 6009 | }, 6010 | { 6011 | "date": "2017-06-08", 6012 | "price": 2720.49 6013 | }, 6014 | { 6015 | "date": "2017-06-09", 6016 | "price": 2807.44 6017 | }, 6018 | { 6019 | "date": "2017-06-10", 6020 | "price": 2828.14 6021 | }, 6022 | { 6023 | "date": "2017-06-11", 6024 | "price": 2942.41 6025 | }, 6026 | { 6027 | "date": "2017-06-12", 6028 | "price": 2953.22 6029 | }, 6030 | { 6031 | "date": "2017-06-13", 6032 | "price": 2680.91 6033 | }, 6034 | { 6035 | "date": "2017-06-14", 6036 | "price": 2716.88 6037 | }, 6038 | { 6039 | "date": "2017-06-15", 6040 | "price": 2499.58 6041 | }, 6042 | { 6043 | "date": "2017-06-16", 6044 | "price": 2469.57 6045 | }, 6046 | { 6047 | "date": "2017-06-17", 6048 | "price": 2514.01 6049 | }, 6050 | { 6051 | "date": "2017-06-18", 6052 | "price": 2655.35 6053 | }, 6054 | { 6055 | "date": "2017-06-19", 6056 | "price": 2549.03 6057 | }, 6058 | { 6059 | "date": "2017-06-20", 6060 | "price": 2591.26 6061 | }, 6062 | { 6063 | "date": "2017-06-21", 6064 | "price": 2709.43 6065 | }, 6066 | { 6067 | "date": "2017-06-22", 6068 | "price": 2691.03 6069 | }, 6070 | { 6071 | "date": "2017-06-23", 6072 | "price": 2707.34 6073 | }, 6074 | { 6075 | "date": "2017-06-24", 6076 | "price": 2738.52 6077 | }, 6078 | { 6079 | "date": "2017-06-25", 6080 | "price": 2607.25 6081 | }, 6082 | { 6083 | "date": "2017-06-26", 6084 | "price": 2590.57 6085 | }, 6086 | { 6087 | "date": "2017-06-27", 6088 | "price": 2478.45 6089 | }, 6090 | { 6091 | "date": "2017-06-28", 6092 | "price": 2553.03 6093 | }, 6094 | { 6095 | "date": "2017-06-29", 6096 | "price": 2567.56 6097 | }, 6098 | { 6099 | "date": "2017-06-30", 6100 | "price": 2539.24 6101 | }, 6102 | { 6103 | "date": "2017-07-01", 6104 | "price": 2492.6 6105 | }, 6106 | { 6107 | "date": "2017-07-02", 6108 | "price": 2436.4 6109 | }, 6110 | { 6111 | "date": "2017-07-03", 6112 | "price": 2498.56 6113 | }, 6114 | { 6115 | "date": "2017-07-04", 6116 | "price": 2561 6117 | }, 6118 | { 6119 | "date": "2017-07-05", 6120 | "price": 2602.87 6121 | }, 6122 | { 6123 | "date": "2017-07-06", 6124 | "price": 2608.1 6125 | }, 6126 | { 6127 | "date": "2017-07-07", 6128 | "price": 2608.59 6129 | }, 6130 | { 6131 | "date": "2017-07-08", 6132 | "price": 2520.27 6133 | }, 6134 | { 6135 | "date": "2017-07-09", 6136 | "price": 2572.61 6137 | }, 6138 | { 6139 | "date": "2017-07-10", 6140 | "price": 2525.25 6141 | }, 6142 | { 6143 | "date": "2017-07-11", 6144 | "price": 2385.89 6145 | }, 6146 | { 6147 | "date": "2017-07-12", 6148 | "price": 2332.77 6149 | }, 6150 | { 6151 | "date": "2017-07-13", 6152 | "price": 2402.7 6153 | }, 6154 | { 6155 | "date": "2017-07-14", 6156 | "price": 2360.59 6157 | }, 6158 | { 6159 | "date": "2017-07-15", 6160 | "price": 2230.12 6161 | }, 6162 | { 6163 | "date": "2017-07-16", 6164 | "price": 1991.98 6165 | }, 6166 | { 6167 | "date": "2017-07-17", 6168 | "price": 1932.62 6169 | }, 6170 | { 6171 | "date": "2017-07-18", 6172 | "price": 2233.52 6173 | }, 6174 | { 6175 | "date": "2017-07-19", 6176 | "price": 2323.08 6177 | }, 6178 | { 6179 | "date": "2017-07-20", 6180 | "price": 2269.89 6181 | }, 6182 | { 6183 | "date": "2017-07-21", 6184 | "price": 2838.41 6185 | }, 6186 | { 6187 | "date": "2017-07-22", 6188 | "price": 2668.63 6189 | }, 6190 | { 6191 | "date": "2017-07-23", 6192 | "price": 2808.1 6193 | }, 6194 | { 6195 | "date": "2017-07-24", 6196 | "price": 2732.7 6197 | }, 6198 | { 6199 | "date": "2017-07-25", 6200 | "price": 2757.5 6201 | }, 6202 | { 6203 | "date": "2017-07-26", 6204 | "price": 2577.77 6205 | }, 6206 | { 6207 | "date": "2017-07-27", 6208 | "price": 2538.71 6209 | }, 6210 | { 6211 | "date": "2017-07-28", 6212 | "price": 2679.73 6213 | }, 6214 | { 6215 | "date": "2017-07-29", 6216 | "price": 2807.02 6217 | }, 6218 | { 6219 | "date": "2017-07-30", 6220 | "price": 2724.39 6221 | }, 6222 | { 6223 | "date": "2017-07-31", 6224 | "price": 2763.24 6225 | }, 6226 | { 6227 | "date": "2017-08-01", 6228 | "price": 2871.3 6229 | }, 6230 | { 6231 | "date": "2017-08-02", 6232 | "price": 2727.13 6233 | }, 6234 | { 6235 | "date": "2017-08-03", 6236 | "price": 2709.56 6237 | }, 6238 | { 6239 | "date": "2017-08-04", 6240 | "price": 2806.93 6241 | }, 6242 | { 6243 | "date": "2017-08-05", 6244 | "price": 2897.63 6245 | }, 6246 | { 6247 | "date": "2017-08-06", 6248 | "price": 3257.61 6249 | }, 6250 | { 6251 | "date": "2017-08-07", 6252 | "price": 3212.78 6253 | }, 6254 | { 6255 | "date": "2017-08-08", 6256 | "price": 3370.22 6257 | }, 6258 | { 6259 | "date": "2017-08-09", 6260 | "price": 3420.4 6261 | }, 6262 | { 6263 | "date": "2017-08-10", 6264 | "price": 3341.84 6265 | }, 6266 | { 6267 | "date": "2017-08-11", 6268 | "price": 3373.82 6269 | }, 6270 | { 6271 | "date": "2017-08-12", 6272 | "price": 3650.63 6273 | }, 6274 | { 6275 | "date": "2017-08-13", 6276 | "price": 3880.04 6277 | }, 6278 | { 6279 | "date": "2017-08-14", 6280 | "price": 4066.1 6281 | }, 6282 | { 6283 | "date": "2017-08-15", 6284 | "price": 4326.99 6285 | }, 6286 | { 6287 | "date": "2017-08-16", 6288 | "price": 4200.34 6289 | }, 6290 | { 6291 | "date": "2017-08-17", 6292 | "price": 4384.44 6293 | }, 6294 | { 6295 | "date": "2017-08-18", 6296 | "price": 4324.34 6297 | }, 6298 | { 6299 | "date": "2017-08-19", 6300 | "price": 4137.75 6301 | }, 6302 | { 6303 | "date": "2017-08-20", 6304 | "price": 4189.31 6305 | }, 6306 | { 6307 | "date": "2017-08-21", 6308 | "price": 4090.48 6309 | }, 6310 | { 6311 | "date": "2017-08-22", 6312 | "price": 3998.35 6313 | }, 6314 | { 6315 | "date": "2017-08-23", 6316 | "price": 4089.01 6317 | }, 6318 | { 6319 | "date": "2017-08-24", 6320 | "price": 4137.6 6321 | }, 6322 | { 6323 | "date": "2017-08-25", 6324 | "price": 4332.82 6325 | }, 6326 | { 6327 | "date": "2017-08-26", 6328 | "price": 4372.06 6329 | }, 6330 | { 6331 | "date": "2017-08-27", 6332 | "price": 4345.1 6333 | }, 6334 | { 6335 | "date": "2017-08-28", 6336 | "price": 4384.45 6337 | }, 6338 | { 6339 | "date": "2017-08-29", 6340 | "price": 4389.21 6341 | }, 6342 | { 6343 | "date": "2017-08-30", 6344 | "price": 4570.36 6345 | }, 6346 | { 6347 | "date": "2017-08-31", 6348 | "price": 4555.59 6349 | }, 6350 | { 6351 | "date": "2017-09-01", 6352 | "price": 4701.76 6353 | }, 6354 | { 6355 | "date": "2017-09-02", 6356 | "price": 4901.42 6357 | }, 6358 | { 6359 | "date": "2017-09-03", 6360 | "price": 4585.27 6361 | }, 6362 | { 6363 | "date": "2017-09-04", 6364 | "price": 4591.63 6365 | }, 6366 | { 6367 | "date": "2017-09-05", 6368 | "price": 4228.29 6369 | }, 6370 | { 6371 | "date": "2017-09-06", 6372 | "price": 4376.59 6373 | }, 6374 | { 6375 | "date": "2017-09-07", 6376 | "price": 4589.14 6377 | }, 6378 | { 6379 | "date": "2017-09-08", 6380 | "price": 4605.16 6381 | }, 6382 | { 6383 | "date": "2017-09-09", 6384 | "price": 4229.81 6385 | }, 6386 | { 6387 | "date": "2017-09-10", 6388 | "price": 4229.34 6389 | }, 6390 | { 6391 | "date": "2017-09-11", 6392 | "price": 4122.47 6393 | }, 6394 | { 6395 | "date": "2017-09-12", 6396 | "price": 4168.88 6397 | }, 6398 | { 6399 | "date": "2017-09-13", 6400 | "price": 4131.98 6401 | }, 6402 | { 6403 | "date": "2017-09-14", 6404 | "price": 3875.37 6405 | }, 6406 | { 6407 | "date": "2017-09-15", 6408 | "price": 3166.3 6409 | }, 6410 | { 6411 | "date": "2017-09-16", 6412 | "price": 3637.75 6413 | }, 6414 | { 6415 | "date": "2017-09-17", 6416 | "price": 3606.28 6417 | }, 6418 | { 6419 | "date": "2017-09-18", 6420 | "price": 3591.09 6421 | }, 6422 | { 6423 | "date": "2017-09-19", 6424 | "price": 4073.79 6425 | }, 6426 | { 6427 | "date": "2017-09-20", 6428 | "price": 3916.36 6429 | }, 6430 | { 6431 | "date": "2017-09-21", 6432 | "price": 3901.47 6433 | }, 6434 | { 6435 | "date": "2017-09-22", 6436 | "price": 3628.02 6437 | }, 6438 | { 6439 | "date": "2017-09-23", 6440 | "price": 3629.92 6441 | }, 6442 | { 6443 | "date": "2017-09-24", 6444 | "price": 3796.15 6445 | }, 6446 | { 6447 | "date": "2017-09-25", 6448 | "price": 3681.58 6449 | }, 6450 | { 6451 | "date": "2017-09-26", 6452 | "price": 3928.41 6453 | }, 6454 | { 6455 | "date": "2017-09-27", 6456 | "price": 3892.94 6457 | }, 6458 | { 6459 | "date": "2017-09-28", 6460 | "price": 4197.13 6461 | }, 6462 | { 6463 | "date": "2017-09-29", 6464 | "price": 4171.62 6465 | }, 6466 | { 6467 | "date": "2017-09-30", 6468 | "price": 4166.11 6469 | }, 6470 | { 6471 | "date": "2017-10-01", 6472 | "price": 4341.05 6473 | }, 6474 | { 6475 | "date": "2017-10-02", 6476 | "price": 4395.81 6477 | }, 6478 | { 6479 | "date": "2017-10-03", 6480 | "price": 4408.46 6481 | }, 6482 | { 6483 | "date": "2017-10-04", 6484 | "price": 4319.37 6485 | }, 6486 | { 6487 | "date": "2017-10-05", 6488 | "price": 4229.88 6489 | }, 6490 | { 6491 | "date": "2017-10-06", 6492 | "price": 4324.46 6493 | }, 6494 | { 6495 | "date": "2017-10-07", 6496 | "price": 4369.35 6497 | }, 6498 | { 6499 | "date": "2017-10-08", 6500 | "price": 4429.67 6501 | }, 6502 | { 6503 | "date": "2017-10-09", 6504 | "price": 4614.52 6505 | }, 6506 | { 6507 | "date": "2017-10-10", 6508 | "price": 4776.21 6509 | }, 6510 | { 6511 | "date": "2017-10-11", 6512 | "price": 4789.25 6513 | }, 6514 | { 6515 | "date": "2017-10-12", 6516 | "price": 4829.58 6517 | }, 6518 | { 6519 | "date": "2017-10-13", 6520 | "price": 5464.16 6521 | }, 6522 | { 6523 | "date": "2017-10-14", 6524 | "price": 5643.53 6525 | }, 6526 | { 6527 | "date": "2017-10-15", 6528 | "price": 5835.96 6529 | }, 6530 | { 6531 | "date": "2017-10-16", 6532 | "price": 5687.57 6533 | }, 6534 | { 6535 | "date": "2017-10-17", 6536 | "price": 5741.58 6537 | }, 6538 | { 6539 | "date": "2017-10-18", 6540 | "price": 5603.82 6541 | }, 6542 | { 6543 | "date": "2017-10-19", 6544 | "price": 5583.74 6545 | }, 6546 | { 6547 | "date": "2017-10-20", 6548 | "price": 5708.11 6549 | }, 6550 | { 6551 | "date": "2017-10-21", 6552 | "price": 5996.79 6553 | }, 6554 | { 6555 | "date": "2017-10-22", 6556 | "price": 6036.66 6557 | }, 6558 | { 6559 | "date": "2017-10-23", 6560 | "price": 6006 6561 | }, 6562 | { 6563 | "date": "2017-10-24", 6564 | "price": 5935.52 6565 | }, 6566 | { 6567 | "date": "2017-10-25", 6568 | "price": 5524.6 6569 | }, 6570 | { 6571 | "date": "2017-10-26", 6572 | "price": 5747.95 6573 | }, 6574 | { 6575 | "date": "2017-10-27", 6576 | "price": 5899.74 6577 | }, 6578 | { 6579 | "date": "2017-10-28", 6580 | "price": 5787.82 6581 | }, 6582 | { 6583 | "date": "2017-10-29", 6584 | "price": 5754.44 6585 | }, 6586 | { 6587 | "date": "2017-10-30", 6588 | "price": 6114.85 6589 | }, 6590 | { 6591 | "date": "2017-10-31", 6592 | "price": 6132.02 6593 | }, 6594 | { 6595 | "date": "2017-11-01", 6596 | "price": 6440.97 6597 | }, 6598 | { 6599 | "date": "2017-11-02", 6600 | "price": 6777.77 6601 | }, 6602 | { 6603 | "date": "2017-11-03", 6604 | "price": 7087.53 6605 | }, 6606 | { 6607 | "date": "2017-11-04", 6608 | "price": 7164.48 6609 | }, 6610 | { 6611 | "date": "2017-11-05", 6612 | "price": 7404.52 6613 | }, 6614 | { 6615 | "date": "2017-11-06", 6616 | "price": 7403.22 6617 | }, 6618 | { 6619 | "date": "2017-11-07", 6620 | "price": 7023.1 6621 | }, 6622 | { 6623 | "date": "2017-11-08", 6624 | "price": 7141.38 6625 | }, 6626 | { 6627 | "date": "2017-11-09", 6628 | "price": 7446.83 6629 | }, 6630 | { 6631 | "date": "2017-11-10", 6632 | "price": 7173.73 6633 | }, 6634 | { 6635 | "date": "2017-11-11", 6636 | "price": 6618.61 6637 | }, 6638 | { 6639 | "date": "2017-11-12", 6640 | "price": 6295.45 6641 | }, 6642 | { 6643 | "date": "2017-11-13", 6644 | "price": 5938.25 6645 | }, 6646 | { 6647 | "date": "2017-11-14", 6648 | "price": 6561.48 6649 | }, 6650 | { 6651 | "date": "2017-11-15", 6652 | "price": 6634.76 6653 | }, 6654 | { 6655 | "date": "2017-11-16", 6656 | "price": 7323.24 6657 | }, 6658 | { 6659 | "date": "2017-11-17", 6660 | "price": 7853.57 6661 | }, 6662 | { 6663 | "date": "2017-11-18", 6664 | "price": 7697.21 6665 | }, 6666 | { 6667 | "date": "2017-11-19", 6668 | "price": 7766.03 6669 | }, 6670 | { 6671 | "date": "2017-11-20", 6672 | "price": 8039.07 6673 | }, 6674 | { 6675 | "date": "2017-11-21", 6676 | "price": 8205.74 6677 | }, 6678 | { 6679 | "date": "2017-11-22", 6680 | "price": 8077.95 6681 | }, 6682 | { 6683 | "date": "2017-11-23", 6684 | "price": 8232.38 6685 | }, 6686 | { 6687 | "date": "2017-11-24", 6688 | "price": 8074.02 6689 | }, 6690 | { 6691 | "date": "2017-11-25", 6692 | "price": 8241.71 6693 | }, 6694 | { 6695 | "date": "2017-11-26", 6696 | "price": 8789.04 6697 | }, 6698 | { 6699 | "date": "2017-11-27", 6700 | "price": 9352.72 6701 | }, 6702 | { 6703 | "date": "2017-11-28", 6704 | "price": 9823.43 6705 | }, 6706 | { 6707 | "date": "2017-11-29", 6708 | "price": 10077.4 6709 | }, 6710 | { 6711 | "date": "2017-11-30", 6712 | "price": 9906.79 6713 | }, 6714 | { 6715 | "date": "2017-12-01", 6716 | "price": 10198.6 6717 | }, 6718 | { 6719 | "date": "2017-12-02", 6720 | "price": 10978.3 6721 | }, 6722 | { 6723 | "date": "2017-12-03", 6724 | "price": 11082.7 6725 | }, 6726 | { 6727 | "date": "2017-12-04", 6728 | "price": 11315.4 6729 | }, 6730 | { 6731 | "date": "2017-12-05", 6732 | "price": 11685.7 6733 | }, 6734 | { 6735 | "date": "2017-12-06", 6736 | "price": 11923.4 6737 | }, 6738 | { 6739 | "date": "2017-12-07", 6740 | "price": 14266.1 6741 | }, 6742 | { 6743 | "date": "2017-12-08", 6744 | "price": 17802.9 6745 | }, 6746 | { 6747 | "date": "2017-12-09", 6748 | "price": 16523.3 6749 | }, 6750 | { 6751 | "date": "2017-12-10", 6752 | "price": 15168.4 6753 | }, 6754 | { 6755 | "date": "2017-12-11", 6756 | "price": 15427.4 6757 | }, 6758 | { 6759 | "date": "2017-12-12", 6760 | "price": 16919.8 6761 | }, 6762 | { 6763 | "date": "2017-12-13", 6764 | "price": 17500 6765 | }, 6766 | { 6767 | "date": "2017-12-14", 6768 | "price": 16384.6 6769 | }, 6770 | { 6771 | "date": "2017-12-15", 6772 | "price": 16601.3 6773 | }, 6774 | { 6775 | "date": "2017-12-16", 6776 | "price": 17760.3 6777 | }, 6778 | { 6779 | "date": "2017-12-17", 6780 | "price": 19475.8 6781 | }, 6782 | { 6783 | "date": "2017-12-18", 6784 | "price": 19106.4 6785 | }, 6786 | { 6787 | "date": "2017-12-19", 6788 | "price": 19118.3 6789 | }, 6790 | { 6791 | "date": "2017-12-20", 6792 | "price": 17760.3 6793 | }, 6794 | { 6795 | "date": "2017-12-21", 6796 | "price": 16642.4 6797 | }, 6798 | { 6799 | "date": "2017-12-22", 6800 | "price": 15898 6801 | }, 6802 | { 6803 | "date": "2017-12-23", 6804 | "price": 13948.7 6805 | }, 6806 | { 6807 | "date": "2017-12-24", 6808 | "price": 14608.2 6809 | }, 6810 | { 6811 | "date": "2017-12-25", 6812 | "price": 13995.9 6813 | }, 6814 | { 6815 | "date": "2017-12-26", 6816 | "price": 14036.6 6817 | }, 6818 | { 6819 | "date": "2017-12-27", 6820 | "price": 16163.5 6821 | }, 6822 | { 6823 | "date": "2017-12-28", 6824 | "price": 15864.1 6825 | }, 6826 | { 6827 | "date": "2017-12-29", 6828 | "price": 14695.8 6829 | }, 6830 | { 6831 | "date": "2017-12-30", 6832 | "price": 14681.9 6833 | }, 6834 | { 6835 | "date": "2017-12-31", 6836 | "price": 12897.7 6837 | }, 6838 | { 6839 | "date": "2018-01-01", 6840 | "price": 14112.2 6841 | }, 6842 | { 6843 | "date": "2018-01-02", 6844 | "price": 13625 6845 | }, 6846 | { 6847 | "date": "2018-01-03", 6848 | "price": 14978.2 6849 | }, 6850 | { 6851 | "date": "2018-01-04", 6852 | "price": 15270.7 6853 | }, 6854 | { 6855 | "date": "2018-01-05", 6856 | "price": 15477.2 6857 | }, 6858 | { 6859 | "date": "2018-01-06", 6860 | "price": 17462.1 6861 | }, 6862 | { 6863 | "date": "2018-01-07", 6864 | "price": 17527.3 6865 | }, 6866 | { 6867 | "date": "2018-01-08", 6868 | "price": 16476.2 6869 | }, 6870 | { 6871 | "date": "2018-01-09", 6872 | "price": 15123.7 6873 | }, 6874 | { 6875 | "date": "2018-01-10", 6876 | "price": 14588.5 6877 | }, 6878 | { 6879 | "date": "2018-01-11", 6880 | "price": 14968.2 6881 | }, 6882 | { 6883 | "date": "2018-01-12", 6884 | "price": 13453.9 6885 | }, 6886 | { 6887 | "date": "2018-01-13", 6888 | "price": 13952.4 6889 | }, 6890 | { 6891 | "date": "2018-01-14", 6892 | "price": 14370.8 6893 | }, 6894 | { 6895 | "date": "2018-01-15", 6896 | "price": 13767.3 6897 | }, 6898 | { 6899 | "date": "2018-01-16", 6900 | "price": 13836.1 6901 | }, 6902 | { 6903 | "date": "2018-01-17", 6904 | "price": 11431.1 6905 | }, 6906 | { 6907 | "date": "2018-01-18", 6908 | "price": 11198.8 6909 | }, 6910 | { 6911 | "date": "2018-01-19", 6912 | "price": 11429.8 6913 | }, 6914 | { 6915 | "date": "2018-01-20", 6916 | "price": 11656.2 6917 | }, 6918 | { 6919 | "date": "2018-01-21", 6920 | "price": 12889.2 6921 | }, 6922 | { 6923 | "date": "2018-01-22", 6924 | "price": 11633.1 6925 | }, 6926 | { 6927 | "date": "2018-01-23", 6928 | "price": 10944.5 6929 | }, 6930 | { 6931 | "date": "2018-01-24", 6932 | "price": 10903.4 6933 | }, 6934 | { 6935 | "date": "2018-01-25", 6936 | "price": 11421.7 6937 | }, 6938 | { 6939 | "date": "2018-01-26", 6940 | "price": 11256 6941 | }, 6942 | { 6943 | "date": "2018-01-27", 6944 | "price": 11174.9 6945 | }, 6946 | { 6947 | "date": "2018-01-28", 6948 | "price": 11475.3 6949 | }, 6950 | { 6951 | "date": "2018-01-29", 6952 | "price": 11755.5 6953 | }, 6954 | { 6955 | "date": "2018-01-30", 6956 | "price": 11306.8 6957 | }, 6958 | { 6959 | "date": "2018-01-31", 6960 | "price": 10108.2 6961 | }, 6962 | { 6963 | "date": "2018-02-01", 6964 | "price": 10237.3 6965 | }, 6966 | { 6967 | "date": "2018-02-02", 6968 | "price": 9142.28 6969 | }, 6970 | { 6971 | "date": "2018-02-03", 6972 | "price": 8852.12 6973 | }, 6974 | { 6975 | "date": "2018-02-04", 6976 | "price": 9175.7 6977 | }, 6978 | { 6979 | "date": "2018-02-05", 6980 | "price": 8270.54 6981 | }, 6982 | { 6983 | "date": "2018-02-06", 6984 | "price": 7051.75 6985 | }, 6986 | { 6987 | "date": "2018-02-07", 6988 | "price": 7755.49 6989 | }, 6990 | { 6991 | "date": "2018-02-08", 6992 | "price": 7637.86 6993 | }, 6994 | { 6995 | "date": "2018-02-09", 6996 | "price": 8271.84 6997 | }, 6998 | { 6999 | "date": "2018-02-10", 7000 | "price": 8720.08 7001 | }, 7002 | { 7003 | "date": "2018-02-11", 7004 | "price": 8616.13 7005 | }, 7006 | { 7007 | "date": "2018-02-12", 7008 | "price": 8141.43 7009 | }, 7010 | { 7011 | "date": "2018-02-13", 7012 | "price": 8926.72 7013 | }, 7014 | { 7015 | "date": "2018-02-14", 7016 | "price": 8599.92 7017 | }, 7018 | { 7019 | "date": "2018-02-15", 7020 | "price": 9488.32 7021 | }, 7022 | { 7023 | "date": "2018-02-16", 7024 | "price": 10135.7 7025 | }, 7026 | { 7027 | "date": "2018-02-17", 7028 | "price": 10207.5 7029 | }, 7030 | { 7031 | "date": "2018-02-18", 7032 | "price": 11123.4 7033 | }, 7034 | { 7035 | "date": "2018-02-19", 7036 | "price": 10552.6 7037 | }, 7038 | { 7039 | "date": "2018-02-20", 7040 | "price": 11231.8 7041 | }, 7042 | { 7043 | "date": "2018-02-21", 7044 | "price": 11372.2 7045 | }, 7046 | { 7047 | "date": "2018-02-22", 7048 | "price": 10660.4 7049 | }, 7050 | { 7051 | "date": "2018-02-23", 7052 | "price": 9937.07 7053 | }, 7054 | { 7055 | "date": "2018-02-24", 7056 | "price": 10287.7 7057 | }, 7058 | { 7059 | "date": "2018-02-25", 7060 | "price": 9796.42 7061 | }, 7062 | { 7063 | "date": "2018-02-26", 7064 | "price": 9669.43 7065 | }, 7066 | { 7067 | "date": "2018-02-27", 7068 | "price": 10393.9 7069 | }, 7070 | { 7071 | "date": "2018-02-28", 7072 | "price": 10687.2 7073 | }, 7074 | { 7075 | "date": "2018-03-01", 7076 | "price": 10385 7077 | }, 7078 | { 7079 | "date": "2018-03-02", 7080 | "price": 10977.4 7081 | }, 7082 | { 7083 | "date": "2018-03-03", 7084 | "price": 11101.9 7085 | }, 7086 | { 7087 | "date": "2018-03-04", 7088 | "price": 11497.4 7089 | }, 7090 | { 7091 | "date": "2018-03-05", 7092 | "price": 11532.4 7093 | }, 7094 | { 7095 | "date": "2018-03-06", 7096 | "price": 11500.1 7097 | }, 7098 | { 7099 | "date": "2018-03-07", 7100 | "price": 10803.9 7101 | }, 7102 | { 7103 | "date": "2018-03-08", 7104 | "price": 9951.44 7105 | }, 7106 | { 7107 | "date": "2018-03-09", 7108 | "price": 9414.69 7109 | }, 7110 | { 7111 | "date": "2018-03-10", 7112 | "price": 9350.59 7113 | }, 7114 | { 7115 | "date": "2018-03-11", 7116 | "price": 8852.78 7117 | }, 7118 | { 7119 | "date": "2018-03-12", 7120 | "price": 9602.93 7121 | }, 7122 | { 7123 | "date": "2018-03-13", 7124 | "price": 9173.04 7125 | }, 7126 | { 7127 | "date": "2018-03-14", 7128 | "price": 9214.65 7129 | }, 7130 | { 7131 | "date": "2018-03-15", 7132 | "price": 8290.76 7133 | }, 7134 | { 7135 | "date": "2018-03-16", 7136 | "price": 8322.91 7137 | }, 7138 | { 7139 | "date": "2018-03-17", 7140 | "price": 8321.91 7141 | }, 7142 | { 7143 | "date": "2018-03-18", 7144 | "price": 7890.52 7145 | }, 7146 | { 7147 | "date": "2018-03-19", 7148 | "price": 8344.12 7149 | }, 7150 | { 7151 | "date": "2018-03-20", 7152 | "price": 8619.67 7153 | }, 7154 | { 7155 | "date": "2018-03-21", 7156 | "price": 8937.48 7157 | }, 7158 | { 7159 | "date": "2018-03-22", 7160 | "price": 8939.44 7161 | }, 7162 | { 7163 | "date": "2018-03-23", 7164 | "price": 8736.25 7165 | }, 7166 | { 7167 | "date": "2018-03-24", 7168 | "price": 8901.95 7169 | }, 7170 | { 7171 | "date": "2018-03-25", 7172 | "price": 8612.81 7173 | }, 7174 | { 7175 | "date": "2018-03-26", 7176 | "price": 8498.47 7177 | }, 7178 | { 7179 | "date": "2018-03-27", 7180 | "price": 8200 7181 | }, 7182 | { 7183 | "date": "2018-03-28", 7184 | "price": 7836.83 7185 | }, 7186 | { 7187 | "date": "2018-03-29", 7188 | "price": 7979.07 7189 | }, 7190 | { 7191 | "date": "2018-03-30", 7192 | "price": 7171.45 7193 | }, 7194 | { 7195 | "date": "2018-03-31", 7196 | "price": 6892.48 7197 | }, 7198 | { 7199 | "date": "2018-04-01", 7200 | "price": 7003.06 7201 | }, 7202 | { 7203 | "date": "2018-04-02", 7204 | "price": 6844.86 7205 | }, 7206 | { 7207 | "date": "2018-04-03", 7208 | "price": 7102.26 7209 | }, 7210 | { 7211 | "date": "2018-04-04", 7212 | "price": 7456.41 7213 | }, 7214 | { 7215 | "date": "2018-04-05", 7216 | "price": 6848.65 7217 | }, 7218 | { 7219 | "date": "2018-04-06", 7220 | "price": 6815.96 7221 | }, 7222 | { 7223 | "date": "2018-04-07", 7224 | "price": 6630.51 7225 | }, 7226 | { 7227 | "date": "2018-04-08", 7228 | "price": 6919.98 7229 | }, 7230 | { 7231 | "date": "2018-04-09", 7232 | "price": 7044.32 7233 | }, 7234 | { 7235 | "date": "2018-04-10", 7236 | "price": 6795.44 7237 | }, 7238 | { 7239 | "date": "2018-04-11", 7240 | "price": 6843.47 7241 | }, 7242 | { 7243 | "date": "2018-04-12", 7244 | "price": 6955.38 7245 | }, 7246 | { 7247 | "date": "2018-04-13", 7248 | "price": 7901.09 7249 | }, 7250 | { 7251 | "date": "2018-04-14", 7252 | "price": 7874.67 7253 | }, 7254 | { 7255 | "date": "2018-04-15", 7256 | "price": 7999.33 7257 | }, 7258 | { 7259 | "date": "2018-04-16", 7260 | "price": 8337.57 7261 | }, 7262 | { 7263 | "date": "2018-04-17", 7264 | "price": 8071.66 7265 | }, 7266 | { 7267 | "date": "2018-04-18", 7268 | "price": 7944.43 7269 | }, 7270 | { 7271 | "date": "2018-04-19", 7272 | "price": 8159.27 7273 | }, 7274 | { 7275 | "date": "2018-04-20", 7276 | "price": 8286.88 7277 | }, 7278 | { 7279 | "date": "2018-04-21", 7280 | "price": 8848.79 7281 | }, 7282 | { 7283 | "date": "2018-04-22", 7284 | "price": 8925.06 7285 | }, 7286 | { 7287 | "date": "2018-04-23", 7288 | "price": 8794.39 7289 | }, 7290 | { 7291 | "date": "2018-04-24", 7292 | "price": 8934.34 7293 | }, 7294 | { 7295 | "date": "2018-04-25", 7296 | "price": 9701.03 7297 | }, 7298 | { 7299 | "date": "2018-04-26", 7300 | "price": 8867.32 7301 | }, 7302 | { 7303 | "date": "2018-04-27", 7304 | "price": 9290.63 7305 | }, 7306 | { 7307 | "date": "2018-04-28", 7308 | "price": 8939.27 7309 | }, 7310 | { 7311 | "date": "2018-04-29", 7312 | "price": 9346.41 7313 | }, 7314 | { 7315 | "date": "2018-04-30", 7316 | "price": 9426.11 7317 | }, 7318 | { 7319 | "date": "2018-05-01", 7320 | "price": 9251.47 7321 | }, 7322 | { 7323 | "date": "2018-05-02", 7324 | "price": 9104.6 7325 | }, 7326 | { 7327 | "date": "2018-05-03", 7328 | "price": 9233.97 7329 | }, 7330 | { 7331 | "date": "2018-05-04", 7332 | "price": 9695.5 7333 | }, 7334 | { 7335 | "date": "2018-05-05", 7336 | "price": 9700.28 7337 | }, 7338 | { 7339 | "date": "2018-05-06", 7340 | "price": 9845.31 7341 | }, 7342 | { 7343 | "date": "2018-05-07", 7344 | "price": 9645.67 7345 | }, 7346 | { 7347 | "date": "2018-05-08", 7348 | "price": 9380.87 7349 | }, 7350 | { 7351 | "date": "2018-05-09", 7352 | "price": 9223.73 7353 | }, 7354 | { 7355 | "date": "2018-05-10", 7356 | "price": 9325.96 7357 | }, 7358 | { 7359 | "date": "2018-05-11", 7360 | "price": 9052.96 7361 | }, 7362 | { 7363 | "date": "2018-05-12", 7364 | "price": 8441.44 7365 | }, 7366 | { 7367 | "date": "2018-05-13", 7368 | "price": 8515.49 7369 | }, 7370 | { 7371 | "date": "2018-05-14", 7372 | "price": 8713.1 7373 | }, 7374 | { 7375 | "date": "2018-05-15", 7376 | "price": 8705.19 7377 | }, 7378 | { 7379 | "date": "2018-05-16", 7380 | "price": 8504.41 7381 | }, 7382 | { 7383 | "date": "2018-05-17", 7384 | "price": 8370.05 7385 | }, 7386 | { 7387 | "date": "2018-05-18", 7388 | "price": 8091.83 7389 | }, 7390 | { 7391 | "date": "2018-05-19", 7392 | "price": 8255.73 7393 | }, 7394 | { 7395 | "date": "2018-05-20", 7396 | "price": 8246.99 7397 | }, 7398 | { 7399 | "date": "2018-05-21", 7400 | "price": 8522.33 7401 | }, 7402 | { 7403 | "date": "2018-05-22", 7404 | "price": 8419.87 7405 | }, 7406 | { 7407 | "date": "2018-05-23", 7408 | "price": 8037.08 7409 | }, 7410 | { 7411 | "date": "2018-05-24", 7412 | "price": 7561.12 7413 | }, 7414 | { 7415 | "date": "2018-05-25", 7416 | "price": 7592.3 7417 | }, 7418 | { 7419 | "date": "2018-05-26", 7420 | "price": 7486.48 7421 | }, 7422 | { 7423 | "date": "2018-05-27", 7424 | "price": 7362.08 7425 | }, 7426 | { 7427 | "date": "2018-05-28", 7428 | "price": 7371.31 7429 | }, 7430 | { 7431 | "date": "2018-05-29", 7432 | "price": 7129.46 7433 | }, 7434 | { 7435 | "date": "2018-05-30", 7436 | "price": 7469.73 7437 | }, 7438 | { 7439 | "date": "2018-05-31", 7440 | "price": 7406.15 7441 | }, 7442 | { 7443 | "date": "2018-06-01", 7444 | "price": 7500.7 7445 | }, 7446 | { 7447 | "date": "2018-06-02", 7448 | "price": 7536.72 7449 | }, 7450 | { 7451 | "date": "2018-06-03", 7452 | "price": 7632.09 7453 | }, 7454 | { 7455 | "date": "2018-06-04", 7456 | "price": 7722.53 7457 | }, 7458 | { 7459 | "date": "2018-06-05", 7460 | "price": 7500.9 7461 | }, 7462 | { 7463 | "date": "2018-06-06", 7464 | "price": 7625.97 7465 | }, 7466 | { 7467 | "date": "2018-06-07", 7468 | "price": 7650.82 7469 | }, 7470 | { 7471 | "date": "2018-06-08", 7472 | "price": 7685.14 7473 | }, 7474 | { 7475 | "date": "2018-06-09", 7476 | "price": 7632.52 7477 | }, 7478 | { 7479 | "date": "2018-06-10", 7480 | "price": 7499.55 7481 | }, 7482 | { 7483 | "date": "2018-06-11", 7484 | "price": 6799.29 7485 | }, 7486 | { 7487 | "date": "2018-06-12", 7488 | "price": 6905.82 7489 | }, 7490 | { 7491 | "date": "2018-06-13", 7492 | "price": 6596.88 7493 | }, 7494 | { 7495 | "date": "2018-06-14", 7496 | "price": 6342.75 7497 | }, 7498 | { 7499 | "date": "2018-06-15", 7500 | "price": 6674.08 7501 | }, 7502 | { 7503 | "date": "2018-06-16", 7504 | "price": 6455.45 7505 | }, 7506 | { 7507 | "date": "2018-06-17", 7508 | "price": 6545.53 7509 | }, 7510 | { 7511 | "date": "2018-06-18", 7512 | "price": 6510.07 7513 | }, 7514 | { 7515 | "date": "2018-06-19", 7516 | "price": 6742.39 7517 | }, 7518 | { 7519 | "date": "2018-06-20", 7520 | "price": 6770.76 7521 | }, 7522 | { 7523 | "date": "2018-06-21", 7524 | "price": 6780.09 7525 | }, 7526 | { 7527 | "date": "2018-06-22", 7528 | "price": 6737.88 7529 | }, 7530 | { 7531 | "date": "2018-06-23", 7532 | "price": 6090.1 7533 | }, 7534 | { 7535 | "date": "2018-06-24", 7536 | "price": 6164.28 7537 | }, 7538 | { 7539 | "date": "2018-06-25", 7540 | "price": 6171.97 7541 | }, 7542 | { 7543 | "date": "2018-06-26", 7544 | "price": 6253.55 7545 | }, 7546 | { 7547 | "date": "2018-06-27", 7548 | "price": 6084.4 7549 | }, 7550 | { 7551 | "date": "2018-06-28", 7552 | "price": 6153.16 7553 | }, 7554 | { 7555 | "date": "2018-06-29", 7556 | "price": 5898.13 7557 | }, 7558 | { 7559 | "date": "2018-06-30", 7560 | "price": 6214.22 7561 | }, 7562 | { 7563 | "date": "2018-07-01", 7564 | "price": 6411.68 7565 | }, 7566 | { 7567 | "date": "2018-07-02", 7568 | "price": 6380.38 7569 | }, 7570 | { 7571 | "date": "2018-07-03", 7572 | "price": 6596.66 7573 | }, 7574 | { 7575 | "date": "2018-07-04", 7576 | "price": 6550.87 7577 | }, 7578 | { 7579 | "date": "2018-07-05", 7580 | "price": 6599.71 7581 | }, 7582 | { 7583 | "date": "2018-07-06", 7584 | "price": 6638.69 7585 | }, 7586 | { 7587 | "date": "2018-07-07", 7588 | "price": 6668.71 7589 | }, 7590 | { 7591 | "date": "2018-07-08", 7592 | "price": 6857.8 7593 | }, 7594 | { 7595 | "date": "2018-07-09", 7596 | "price": 6775.08 7597 | }, 7598 | { 7599 | "date": "2018-07-10", 7600 | "price": 6739.21 7601 | }, 7602 | { 7603 | "date": "2018-07-11", 7604 | "price": 6330.77 7605 | }, 7606 | { 7607 | "date": "2018-07-12", 7608 | "price": 6396.78 7609 | }, 7610 | { 7611 | "date": "2018-07-13", 7612 | "price": 6235.03 7613 | }, 7614 | { 7615 | "date": "2018-07-14", 7616 | "price": 6247.5 7617 | }, 7618 | { 7619 | "date": "2018-07-15", 7620 | "price": 6272.7 7621 | }, 7622 | { 7623 | "date": "2018-07-16", 7624 | "price": 6357.01 7625 | }, 7626 | { 7627 | "date": "2018-07-17", 7628 | "price": 6739.65 7629 | }, 7630 | { 7631 | "date": "2018-07-18", 7632 | "price": 7315.32 7633 | }, 7634 | { 7635 | "date": "2018-07-19", 7636 | "price": 7378.2 7637 | }, 7638 | { 7639 | "date": "2018-07-20", 7640 | "price": 7467.4 7641 | }, 7642 | { 7643 | "date": "2018-07-21", 7644 | "price": 7352.72 7645 | }, 7646 | { 7647 | "date": "2018-07-22", 7648 | "price": 7417.8 7649 | }, 7650 | { 7651 | "date": "2018-07-23", 7652 | "price": 7414.71 7653 | }, 7654 | { 7655 | "date": "2018-07-24", 7656 | "price": 7716.51 7657 | }, 7658 | { 7659 | "date": "2018-07-25", 7660 | "price": 8379.66 7661 | }, 7662 | { 7663 | "date": "2018-07-26", 7664 | "price": 8176.85 7665 | }, 7666 | { 7667 | "date": "2018-07-27", 7668 | "price": 7950.4 7669 | }, 7670 | { 7671 | "date": "2018-07-28", 7672 | "price": 8169.06 7673 | }, 7674 | { 7675 | "date": "2018-07-29", 7676 | "price": 8205.82 7677 | }, 7678 | { 7679 | "date": "2018-07-30", 7680 | "price": 8221.58 7681 | }, 7682 | { 7683 | "date": "2018-07-31", 7684 | "price": 8181.2 7685 | }, 7686 | { 7687 | "date": "2018-08-01", 7688 | "price": 7769.04 7689 | }, 7690 | { 7691 | "date": "2018-08-02", 7692 | "price": 7634.19 7693 | }, 7694 | { 7695 | "date": "2018-08-03", 7696 | "price": 7562.14 7697 | }, 7698 | { 7699 | "date": "2018-08-04", 7700 | "price": 7438.67 7701 | }, 7702 | { 7703 | "date": "2018-08-05", 7704 | "price": 7031.08 7705 | }, 7706 | { 7707 | "date": "2018-08-06", 7708 | "price": 7062.94 7709 | }, 7710 | { 7711 | "date": "2018-08-07", 7712 | "price": 6958.32 7713 | }, 7714 | { 7715 | "date": "2018-08-08", 7716 | "price": 6746.85 7717 | }, 7718 | { 7719 | "date": "2018-08-09", 7720 | "price": 6305.56 7721 | }, 7722 | { 7723 | "date": "2018-08-10", 7724 | "price": 6571.42 7725 | }, 7726 | { 7727 | "date": "2018-08-11", 7728 | "price": 6185.79 7729 | }, 7730 | { 7731 | "date": "2018-08-12", 7732 | "price": 6283.65 7733 | }, 7734 | { 7735 | "date": "2018-08-13", 7736 | "price": 6341.36 7737 | }, 7738 | { 7739 | "date": "2018-08-14", 7740 | "price": 6287.66 7741 | }, 7742 | { 7743 | "date": "2018-08-15", 7744 | "price": 6221.42 7745 | }, 7746 | { 7747 | "date": "2018-08-16", 7748 | "price": 6294.23 7749 | }, 7750 | { 7751 | "date": "2018-08-17", 7752 | "price": 6340.91 7753 | }, 7754 | { 7755 | "date": "2018-08-18", 7756 | "price": 6583.43 7757 | }, 7758 | { 7759 | "date": "2018-08-19", 7760 | "price": 6422.57 7761 | }, 7762 | { 7763 | "date": "2018-08-20", 7764 | "price": 6500.51 7765 | }, 7766 | { 7767 | "date": "2018-08-21", 7768 | "price": 6301.07 7769 | }, 7770 | { 7771 | "date": "2018-08-22", 7772 | "price": 6486.25 7773 | }, 7774 | { 7775 | "date": "2018-08-23", 7776 | "price": 6371.34 7777 | }, 7778 | { 7779 | "date": "2018-08-24", 7780 | "price": 6551.52 7781 | }, 7782 | { 7783 | "date": "2018-08-25", 7784 | "price": 6719.95 7785 | }, 7786 | { 7787 | "date": "2018-08-26", 7788 | "price": 6754.64 7789 | }, 7790 | { 7791 | "date": "2018-08-27", 7792 | "price": 6710.8 7793 | }, 7794 | { 7795 | "date": "2018-08-28", 7796 | "price": 6891.08 7797 | }, 7798 | { 7799 | "date": "2018-08-29", 7800 | "price": 7091.71 7801 | }, 7802 | { 7803 | "date": "2018-08-30", 7804 | "price": 7043.76 7805 | }, 7806 | { 7807 | "date": "2018-08-31", 7808 | "price": 6973.97 7809 | }, 7810 | { 7811 | "date": "2018-09-01", 7812 | "price": 7044.81 7813 | }, 7814 | { 7815 | "date": "2018-09-02", 7816 | "price": 7189.58 7817 | }, 7818 | { 7819 | "date": "2018-09-03", 7820 | "price": 7279.03 7821 | }, 7822 | { 7823 | "date": "2018-09-04", 7824 | "price": 7263 7825 | }, 7826 | { 7827 | "date": "2018-09-05", 7828 | "price": 7361.46 7829 | }, 7830 | { 7831 | "date": "2018-09-06", 7832 | "price": 6755.14 7833 | }, 7834 | { 7835 | "date": "2018-09-07", 7836 | "price": 6528.92 7837 | }, 7838 | { 7839 | "date": "2018-09-08", 7840 | "price": 6460.17 7841 | }, 7842 | { 7843 | "date": "2018-09-09", 7844 | "price": 6223.38 7845 | }, 7846 | { 7847 | "date": "2018-09-10", 7848 | "price": 6301.57 7849 | }, 7850 | { 7851 | "date": "2018-09-11", 7852 | "price": 6331.88 7853 | }, 7854 | { 7855 | "date": "2018-09-12", 7856 | "price": 6317.01 7857 | }, 7858 | { 7859 | "date": "2018-09-13", 7860 | "price": 6354.24 7861 | }, 7862 | { 7863 | "date": "2018-09-14", 7864 | "price": 6515.41 7865 | }, 7866 | { 7867 | "date": "2018-09-15", 7868 | "price": 6509.4 7869 | }, 7870 | { 7871 | "date": "2018-09-16", 7872 | "price": 6536.68 7873 | }, 7874 | { 7875 | "date": "2018-09-17", 7876 | "price": 6514.06 7877 | }, 7878 | { 7879 | "date": "2018-09-18", 7880 | "price": 6280.91 7881 | }, 7882 | { 7883 | "date": "2018-09-19", 7884 | "price": 6371.85 7885 | }, 7886 | { 7887 | "date": "2018-09-20", 7888 | "price": 6398.85 7889 | }, 7890 | { 7891 | "date": "2018-09-21", 7892 | "price": 6513.87 7893 | }, 7894 | { 7895 | "date": "2018-09-22", 7896 | "price": 6735.05 7897 | }, 7898 | { 7899 | "date": "2018-09-23", 7900 | "price": 6715.32 7901 | }, 7902 | { 7903 | "date": "2018-09-24", 7904 | "price": 6704.77 7905 | }, 7906 | { 7907 | "date": "2018-09-25", 7908 | "price": 6603.64 7909 | }, 7910 | { 7911 | "date": "2018-09-26", 7912 | "price": 6452.79 7913 | }, 7914 | { 7915 | "date": "2018-09-27", 7916 | "price": 6495.29 7917 | }, 7918 | { 7919 | "date": "2018-09-28", 7920 | "price": 6678.75 7921 | }, 7922 | { 7923 | "date": "2018-09-29", 7924 | "price": 6643.1 7925 | }, 7926 | { 7927 | "date": "2018-09-30", 7928 | "price": 6604.71 7929 | }, 7930 | { 7931 | "date": "2018-10-01", 7932 | "price": 6619.85 7933 | }, 7934 | { 7935 | "date": "2018-10-02", 7936 | "price": 6593.24 7937 | }, 7938 | { 7939 | "date": "2018-10-03", 7940 | "price": 6553.86 7941 | }, 7942 | { 7943 | "date": "2018-10-04", 7944 | "price": 6497.91 7945 | }, 7946 | { 7947 | "date": "2018-10-05", 7948 | "price": 6574.15 7949 | }, 7950 | { 7951 | "date": "2018-10-06", 7952 | "price": 6622.45 7953 | }, 7954 | { 7955 | "date": "2018-10-07", 7956 | "price": 6590.68 7957 | }, 7958 | { 7959 | "date": "2018-10-08", 7960 | "price": 6600.19 7961 | }, 7962 | { 7963 | "date": "2018-10-09", 7964 | "price": 6653.08 7965 | }, 7966 | { 7967 | "date": "2018-10-10", 7968 | "price": 6640.29 7969 | }, 7970 | { 7971 | "date": "2018-10-11", 7972 | "price": 6586.74 7973 | }, 7974 | { 7975 | "date": "2018-10-12", 7976 | "price": 6239.25 7977 | }, 7978 | { 7979 | "date": "2018-10-13", 7980 | "price": 6278.08 7981 | }, 7982 | { 7983 | "date": "2018-10-14", 7984 | "price": 6288.49 7985 | }, 7986 | { 7987 | "date": "2018-10-15", 7988 | "price": 6292.64 7989 | }, 7990 | { 7991 | "date": "2018-10-16", 7992 | "price": 6601.41 7993 | }, 7994 | { 7995 | "date": "2018-10-17", 7996 | "price": 6590.52 7997 | }, 7998 | { 7999 | "date": "2018-10-18", 8000 | "price": 6542.33 8001 | }, 8002 | { 8003 | "date": "2018-10-19", 8004 | "price": 6478.07 8005 | }, 8006 | { 8007 | "date": "2018-10-20", 8008 | "price": 6460.92 8009 | }, 8010 | { 8011 | "date": "2018-10-21", 8012 | "price": 6490.09 8013 | }, 8014 | { 8015 | "date": "2018-10-22", 8016 | "price": 6486.05 8017 | }, 8018 | { 8019 | "date": "2018-10-23", 8020 | "price": 6472.36 8021 | }, 8022 | { 8023 | "date": "2018-10-24", 8024 | "price": 6478.89 8025 | }, 8026 | { 8027 | "date": "2018-10-25", 8028 | "price": 6484.65 8029 | }, 8030 | { 8031 | "date": "2018-10-26", 8032 | "price": 6468.44 8033 | }, 8034 | { 8035 | "date": "2018-10-27", 8036 | "price": 6480.84 8037 | }, 8038 | { 8039 | "date": "2018-10-28", 8040 | "price": 6482.66 8041 | }, 8042 | { 8043 | "date": "2018-10-29", 8044 | "price": 6492.35 8045 | }, 8046 | { 8047 | "date": "2018-10-30", 8048 | "price": 6337.04 8049 | }, 8050 | { 8051 | "date": "2018-10-31", 8052 | "price": 6336.99 8053 | }, 8054 | { 8055 | "date": "2018-11-01", 8056 | "price": 6318.14 8057 | }, 8058 | { 8059 | "date": "2018-11-02", 8060 | "price": 6378.92 8061 | }, 8062 | { 8063 | "date": "2018-11-03", 8064 | "price": 6387.24 8065 | }, 8066 | { 8067 | "date": "2018-11-04", 8068 | "price": 6365.47 8069 | }, 8070 | { 8071 | "date": "2018-11-05", 8072 | "price": 6363.62 8073 | }, 8074 | { 8075 | "date": "2018-11-06", 8076 | "price": 6433.38 8077 | }, 8078 | { 8079 | "date": "2018-11-07", 8080 | "price": 6468.5 8081 | }, 8082 | { 8083 | "date": "2018-11-08", 8084 | "price": 6522.27 8085 | }, 8086 | { 8087 | "date": "2018-11-09", 8088 | "price": 6442.6 8089 | }, 8090 | { 8091 | "date": "2018-11-10", 8092 | "price": 6386.13 8093 | }, 8094 | { 8095 | "date": "2018-11-11", 8096 | "price": 6413.63 8097 | }, 8098 | { 8099 | "date": "2018-11-12", 8100 | "price": 6411.76 8101 | }, 8102 | { 8103 | "date": "2018-11-13", 8104 | "price": 6373.19 8105 | }, 8106 | { 8107 | "date": "2018-11-14", 8108 | "price": 6351.24 8109 | }, 8110 | { 8111 | "date": "2018-11-15", 8112 | "price": 5736.15 8113 | }, 8114 | { 8115 | "date": "2018-11-16", 8116 | "price": 5645.32 8117 | }, 8118 | { 8119 | "date": "2018-11-17", 8120 | "price": 5578.58 8121 | }, 8122 | { 8123 | "date": "2018-11-18", 8124 | "price": 5559.74 8125 | }, 8126 | { 8127 | "date": "2018-11-19", 8128 | "price": 5620.78 8129 | }, 8130 | { 8131 | "date": "2018-11-20", 8132 | "price": 4863.93 8133 | }, 8134 | { 8135 | "date": "2018-11-21", 8136 | "price": 4465.54 8137 | }, 8138 | { 8139 | "date": "2018-11-22", 8140 | "price": 4611.57 8141 | } 8142 | ] -------------------------------------------------------------------------------- /cryptoasset/utlis_test.go: -------------------------------------------------------------------------------- 1 | package cryptoasset_test 2 | 3 | import ( 4 | "encoding/json" 5 | "os" 6 | "testing" 7 | ) 8 | 9 | func readJSONFile(t *testing.T, fName string, data interface{}) { 10 | dataByte, err := os.ReadFile(fName) 11 | if err != nil { 12 | t.Fatalf("couldnt read file. error [%s]", err) 13 | return 14 | } 15 | err = json.Unmarshal(dataByte, data) 16 | if err != nil { 17 | t.Fatalf("couldnt unmarshal data to json. error [%s]", err) 18 | } 19 | } 20 | 21 | func writeJSONFile(t *testing.T, fName string, data interface{}, indent ...bool) { 22 | var dataByte []byte 23 | var err error 24 | if len(indent) > 0 && indent[0] { 25 | dataByte, err = json.MarshalIndent(data, "", "\t") 26 | } else { 27 | dataByte, err = json.Marshal(data) 28 | } 29 | 30 | if err != nil { 31 | t.Fatalf("couldnt marshal data to json. error [%s]", err) 32 | return 33 | } 34 | err = os.WriteFile(fName, dataByte, 0600) 35 | if err != nil { 36 | t.Fatalf("couldnt create file [%s] error [%s]", fName, err) 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /dbmongo/doc.go: -------------------------------------------------------------------------------- 1 | // Package dbmongo has the mongoDB client as singleton 2 | package dbmongo 3 | -------------------------------------------------------------------------------- /dbmongo/mongo.go: -------------------------------------------------------------------------------- 1 | package dbmongo 2 | 3 | import ( 4 | "context" 5 | "os" 6 | 7 | "go.mongodb.org/mongo-driver/mongo" 8 | "go.mongodb.org/mongo-driver/mongo/options" 9 | ) 10 | 11 | var ( 12 | client *mongo.Client 13 | opt *options.ClientOptions 14 | ) 15 | 16 | // Start should be called on the service start up. Makes the first connection to the database 17 | func Start(opts ...*options.ClientOptions) (err error) { 18 | if len(opts) == 0 { 19 | opt = options.Client().ApplyURI(getURI()) 20 | } else { 21 | opt = opts[0] 22 | } 23 | err = connectDB() 24 | return 25 | } 26 | 27 | // GetClient returns a MongoDB client 28 | func GetClient() (*mongo.Client, error) { 29 | if client != nil { 30 | return client, nil 31 | } 32 | err := connectDB() 33 | return client, err 34 | } 35 | 36 | // Close closes all the connections to the database 37 | func Close(ctx context.Context) (err error) { 38 | if client == nil { 39 | return 40 | } 41 | err = client.Disconnect(ctx) 42 | return 43 | } 44 | 45 | func connectDB() error { 46 | cli, err := mongo.NewClient(opt) 47 | if err != nil { 48 | return err 49 | } 50 | err = cli.Connect(context.Background()) 51 | if err != nil { 52 | return err 53 | } 54 | client = cli 55 | return err 56 | } 57 | 58 | func getURI() (uri string) { 59 | uri = os.Getenv("MONGO_URI") 60 | if uri == "" { 61 | uri = "mongodb://localhost:27017" 62 | } 63 | return 64 | } 65 | -------------------------------------------------------------------------------- /doc.go: -------------------------------------------------------------------------------- 1 | // Package main is a service example on how to start, wait and shutdown 2 | package main 3 | -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '3' 2 | services: 3 | service: 4 | hostname: service 5 | image: service:latest 6 | build: 7 | context: . 8 | dockerfile: Dockerfile 9 | restart: always 10 | ports: 11 | - "8000:8000" 12 | depends_on: 13 | - rabbitmq 14 | - mongodb 15 | environment: 16 | - RABBITMQ_URI=amqp://guest:guest@rabbitmq:5672?heartbeat=30&connection_timeout=120 17 | - MONGO_URI=mongodb://root:root@mongodb:27017 18 | 19 | rabbitmq: 20 | image: 'rabbitmq:3-management-alpine' 21 | ports: 22 | - '15672:15672' 23 | - '5672:5672' 24 | environment: 25 | - RABBITMQ_DEFAULT_USER=guest 26 | - RABBITMQ_DEFAULT_PASS=guest 27 | 28 | mongodb: 29 | image: mongo:latest 30 | ports: 31 | - '27017:27017' 32 | environment: 33 | - MONGO_INITDB_ROOT_USERNAME=root 34 | - MONGO_INITDB_ROOT_PASSWORD=root 35 | - MONGO_INITDB_DATABASE=data 36 | volumes: 37 | - ./db:/docker-entrypoint-initdb.d:ro 38 | -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- 1 | module github.com/gbeletti/service-golang 2 | 3 | go 1.19 4 | 5 | require ( 6 | github.com/gbeletti/rabbitmq v0.0.10 7 | github.com/go-chi/chi/v5 v5.0.8 8 | github.com/joho/godotenv v1.5.1 9 | github.com/rabbitmq/amqp091-go v1.7.0 10 | go.mongodb.org/mongo-driver v1.11.2 11 | ) 12 | 13 | require ( 14 | github.com/docker/docker v23.0.1+incompatible // indirect 15 | github.com/golang/snappy v0.0.4 // indirect 16 | github.com/klauspost/compress v1.16.0 // indirect 17 | github.com/kr/pretty v0.2.1 // indirect 18 | github.com/kr/text v0.2.0 // indirect 19 | github.com/montanaflynn/stats v0.7.0 // indirect 20 | github.com/pkg/errors v0.9.1 // indirect 21 | github.com/xdg-go/pbkdf2 v1.0.0 // indirect 22 | github.com/xdg-go/scram v1.1.2 // indirect 23 | github.com/xdg-go/stringprep v1.0.4 // indirect 24 | github.com/youmark/pkcs8 v0.0.0-20201027041543-1326539a0a0a // indirect 25 | golang.org/x/crypto v0.7.0 // indirect 26 | golang.org/x/sync v0.1.0 // indirect 27 | golang.org/x/text v0.8.0 // indirect 28 | ) 29 | -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- 1 | github.com/AlecAivazis/survey/v2 v2.3.6 h1:NvTuVHISgTHEHeBFqt6BHOe4Ny/NwGZr7w+F8S9ziyw= 2 | github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 h1:UQHMgLO+TxOElx5B5HZ4hJQsoJ/PvUvKRhJHDQXO8P8= 3 | github.com/Microsoft/go-winio v0.5.2 h1:a9IhgEQBCUEk6QCdml9CiJGhAws+YwffDHEMp1VMrpA= 4 | github.com/PuerkitoBio/purell v1.1.1 h1:WEQqlqaGbrPkxLJWfBwQmfEAE1Z7ONdDLqrN38tNFfI= 5 | github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578 h1:d+Bc7a5rLufV/sSk/8dngufqelfh6jnri85riMAaF/M= 6 | github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= 7 | github.com/buger/goterm v1.0.4 h1:Z9YvGmOih81P0FbVtEYTFF6YsSgxSUKEhf/f9bTMXbY= 8 | github.com/cenkalti/backoff/v4 v4.1.3 h1:cFAlzYUlVYDysBEH2T5hyJZMh3+5+WCBvSnK6Q8UtC4= 9 | github.com/cespare/xxhash/v2 v2.1.2 h1:YRXhKfTDauu4ajMg1TPgFO5jnlC2HCbmLXMcTG5cbYE= 10 | github.com/compose-spec/compose-go v1.6.0 h1:7Ol/UULMUtbPmB0EYrETASRoum821JpOh/XaEf+hN+Q= 11 | github.com/containerd/console v1.0.3 h1:lIr7SlA5PxZyMV30bDW0MGbiOPXwc63yRuCP0ARubLw= 12 | github.com/containerd/containerd v1.6.13 h1:7llWEzjLH/fao0f2lppn1L6NhjsvxqMdUQa2mgVCs+U= 13 | github.com/containerd/continuity v0.3.0 h1:nisirsYROK15TAMVukJOUyGJjz4BNQJBVsNvAXZJ/eg= 14 | github.com/containerd/ttrpc v1.1.0 h1:GbtyLRxb0gOLR0TYQWt3O6B0NvT8tMdorEHqIQo/lWI= 15 | github.com/containerd/typeurl v1.0.2 h1:Chlt8zIieDbzQFzXzAeBEF92KhExuE4p9p92/QmY7aY= 16 | github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= 17 | github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= 18 | github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= 19 | github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= 20 | github.com/distribution/distribution/v3 v3.0.0-20220907155224-78b9c98c5c31 h1:AqcwAyaSEkILnr/bLybFnM2i/+EW67JJIRs/4dWmzxo= 21 | github.com/docker/buildx v0.9.1 h1:VLyyJ1s4seWHmBY+oNc0J4+jHluRHLyv8KHOYYdSu3U= 22 | github.com/docker/cli v20.10.19+incompatible h1:VKVBUb0KY/bx0FUCrCiNCL8wqgy8VxQli1dtNTn38AE= 23 | github.com/docker/compose/v2 v2.12.2 h1:kNlu4y/5QAluTh9aLGWyjYYlY9g//eeIq/L4yBuLpVE= 24 | github.com/docker/distribution v2.8.1+incompatible h1:Q50tZOPR6T/hjNsyc9g8/syEs6bk8XXApsHjKukMl68= 25 | github.com/docker/docker v23.0.1+incompatible h1:vjgvJZxprTTE1A37nm+CLNAdwu6xZekyoiVlUZEINcY= 26 | github.com/docker/docker v23.0.1+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= 27 | github.com/docker/docker-credential-helpers v0.6.4 h1:axCks+yV+2MR3/kZhAmy07yC56WZ2Pwu/fKWtKuZB0o= 28 | github.com/docker/go v1.5.1-1.0.20160303222718-d30aec9fd63c h1:lzqkGL9b3znc+ZUgi7FlLnqjQhcXxkNM/quxIjBVMD0= 29 | github.com/docker/go-connections v0.4.0 h1:El9xVISelRB7BuFusrZozjnkIM5YnzCViNKohAFqRJQ= 30 | github.com/docker/go-metrics v0.0.1 h1:AgB/0SvBxihN0X8OR4SjsblXkbMvalQ8cjmtKQ2rQV8= 31 | github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4= 32 | github.com/emicklei/go-restful v2.9.5+incompatible h1:spTtZBk5DYEvbxMVutUuTyh1Ao2r4iyvLdACqsl/Ljk= 33 | github.com/felixge/httpsnoop v1.0.2 h1:+nS9g82KMXccJ/wp0zyRW9ZBHFETmMGtkk+2CTTrW4o= 34 | github.com/fvbommel/sortorder v1.0.2 h1:mV4o8B2hKboCdkJm+a7uX/SIpZob4JzUpc5GGnM45eo= 35 | github.com/gbeletti/rabbitmq v0.0.10 h1:N4FyADTc5mf1vNG1CggeLoL8CzI+GyF+ZYKV1pcEyUw= 36 | github.com/gbeletti/rabbitmq v0.0.10/go.mod h1:d4jyqJJx+6NrBzykhQoBiHocTG9ZI0LFZzX0ayhHNcg= 37 | github.com/go-chi/chi/v5 v5.0.8 h1:lD+NLqFcAi1ovnVZpsnObHGW4xb4J8lNmoYVfECH1Y0= 38 | github.com/go-chi/chi/v5 v5.0.8/go.mod h1:DslCQbL2OYiznFReuXYUmQ2hGd1aDpCnlMNITLSKoi8= 39 | github.com/go-logr/logr v1.2.3 h1:2DntVwHkVopvECVRSlL5PSo9eG+cAkDCuckLubN+rq0= 40 | github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= 41 | github.com/go-openapi/jsonpointer v0.19.5 h1:gZr+CIYByUqjcgeLXnQu2gHYQC9o73G2XUeOFYEICuY= 42 | github.com/go-openapi/jsonreference v0.19.5 h1:1WJP/wi4OjB4iV8KVbH73rQaoialJrqv8gitZLxGLtM= 43 | github.com/go-openapi/swag v0.19.14 h1:gm3vOOXfiuw5i9p5N9xJvfjvuofpyvLA9Wr6QfK5Fng= 44 | github.com/gofrs/flock v0.8.0 h1:MSdYClljsF3PbENUUEx85nkWfJSGfzYI9yEBZOJz6CY= 45 | github.com/gogo/googleapis v1.4.1 h1:1Yx4Myt7BxzvUr5ldGSbwYiZG6t9wGBZ+8/fX3Wvtq0= 46 | github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= 47 | github.com/golang/mock v1.6.0 h1:ErTB+efbowRARo13NNdxyJji2egdxLGQhRaY+DUumQc= 48 | github.com/golang/protobuf v1.5.2 h1:ROPKBNFfQgOUMifHyP+KYbvpjbdoFNs+aK7DXlji0Tw= 49 | github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= 50 | github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM= 51 | github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= 52 | github.com/google/gnostic v0.5.7-v3refs h1:FhTMOKj2VhjpouxvWJAV1TL304uMlb9zcDqkl6cEI54= 53 | github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= 54 | github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= 55 | github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= 56 | github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4= 57 | github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= 58 | github.com/gorilla/mux v1.8.0 h1:i40aqfkR1h2SlN9hojwV5ZA91wcXFOvkdNIeFDP5koI= 59 | github.com/grpc-ecosystem/go-grpc-middleware v1.3.0 h1:+9834+KizmvFV7pXQGSXQTsaWhq2GjuNUt0aUU0YBYw= 60 | github.com/grpc-ecosystem/grpc-gateway v1.16.0 h1:gmcG1KaJ57LophUzW0Hy8NmPhnMZb4M0+kPpLofRdBo= 61 | github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= 62 | github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= 63 | github.com/hashicorp/go-version v1.6.0 h1:feTTfFNnjP967rlCxM/I9g701jU+RN74YKx2mOkIeek= 64 | github.com/imdario/mergo v0.3.13 h1:lFzP57bqS/wsqKssCGmtLAb8A0wKjLGrve2q3PPVcBk= 65 | github.com/inconshreveable/mousetrap v1.0.1 h1:U3uMjPSQEBMNp1lFxmllqCPM6P5u/Xq7Pgzkat/bFNc= 66 | github.com/joho/godotenv v1.5.1 h1:7eLL/+HRGLY0ldzfGMeQkb7vMd0as4CfYvUVzLqw0N0= 67 | github.com/joho/godotenv v1.5.1/go.mod h1:f4LDr5Voq0i2e/R5DDNOoa2zzDfwtkZa6DnEwAbqwq4= 68 | github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= 69 | github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= 70 | github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 h1:Z9n2FFNUXsshfwJMBgNA0RU6/i7WVaAegv3PtuIHPMs= 71 | github.com/klauspost/compress v1.13.6/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk= 72 | github.com/klauspost/compress v1.16.0 h1:iULayQNOReoYUe+1qtKOqw9CwJv3aNQu8ivo7lw1HU4= 73 | github.com/klauspost/compress v1.16.0/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE= 74 | github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= 75 | github.com/kr/pretty v0.2.1 h1:Fmg33tUaq4/8ym9TJN1x7sLJnHVwhP33CNkpYV/7rwI= 76 | github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= 77 | github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= 78 | github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= 79 | github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= 80 | github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= 81 | github.com/magiconair/properties v1.8.6 h1:5ibWZ6iY0NctNGWo87LalDlEZ6R41TqbbDamhfG/Qzo= 82 | github.com/mailru/easyjson v0.7.6 h1:8yTIVnZgCoiM1TgqoeTl+LfU5Jg6/xL3QhGQnimLYnA= 83 | github.com/mattn/go-colorable v0.1.12 h1:jF+Du6AlPIjs2BiUiQlKOX0rt3SujHxPnksPKZbaA40= 84 | github.com/mattn/go-isatty v0.0.16 h1:bq3VjFmv/sOjHtdEhmkEV4x1AJtvUvOJ2PFAZ5+peKQ= 85 | github.com/mattn/go-shellwords v1.0.12 h1:M2zGm7EW6UQJvDeQxo4T51eKPurbeFbe8WtebGE2xrk= 86 | github.com/matttproud/golang_protobuf_extensions v1.0.4 h1:mmDVorXM7PCGKw94cs5zkfA9PSy5pEvNWRP0ET0TIVo= 87 | github.com/mgutz/ansi v0.0.0-20170206155736-9520e82c474b h1:j7+1HpAFS1zy5+Q4qx1fWh90gTKwiN4QCGoY9TWyyO4= 88 | github.com/miekg/pkcs11 v1.1.1 h1:Ugu9pdy6vAYku5DEpVWVFPYnzV+bxB+iRdbuFSu7TvU= 89 | github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= 90 | github.com/moby/buildkit v0.10.4 h1:FvC+buO8isGpUFZ1abdSLdGHZVqg9sqI4BbFL8tlzP4= 91 | github.com/moby/locker v1.0.1 h1:fOXqR41zeveg4fFODix+1Ch4mj/gT0NE1XJbp/epuBg= 92 | github.com/moby/patternmatcher v0.5.0 h1:YCZgJOeULcxLw1Q+sVR636pmS7sPEn1Qo2iAN6M7DBo= 93 | github.com/moby/spdystream v0.2.0 h1:cjW1zVyyoiM0T7b6UoySUFqzXMoqRckQtXwGPiBhOM8= 94 | github.com/moby/sys/sequential v0.5.0 h1:OPvI35Lzn9K04PBbCLW0g4LcFAJgHsvXsRyewg5lXtc= 95 | github.com/moby/sys/signal v0.7.0 h1:25RW3d5TnQEoKvRbEKUGay6DCQ46IxAVTT9CUMgmsSI= 96 | github.com/moby/sys/symlink v0.2.0 h1:tk1rOM+Ljp0nFmfOIBtlV3rTDlWOwFRhjEeAhZB0nZc= 97 | github.com/moby/term v0.0.0-20220808134915-39b0c02b01ae h1:O4SWKdcHVCvYqyDV+9CJA1fcDN2L11Bule0iFy3YlAI= 98 | github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= 99 | github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= 100 | github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc= 101 | github.com/montanaflynn/stats v0.7.0 h1:r3y12KyNxj/Sb/iOE46ws+3mS1+MZca1wlHQFPsY/JU= 102 | github.com/montanaflynn/stats v0.7.0/go.mod h1:etXPPgVO6n31NxCd9KQUMvCM+ve0ruNzt6R8Bnaayow= 103 | github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A= 104 | github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= 105 | github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= 106 | github.com/opencontainers/image-spec v1.0.3-0.20220303224323-02efb9a75ee1 h1:9iFHD5Kt9hkOfeawBNiEeEaV7bmC4/Z5wJp8E9BptMs= 107 | github.com/opencontainers/runc v1.1.3 h1:vIXrkId+0/J2Ymu2m7VjGvbSlAId9XNRPhn2p4b+d8w= 108 | github.com/pelletier/go-toml v1.9.4 h1:tjENF6MfZAg8e4ZmZTeWaWiT2vXtsoO6+iuOjFhECwM= 109 | github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= 110 | github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= 111 | github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= 112 | github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= 113 | github.com/prometheus/client_golang v1.12.2 h1:51L9cDoUHVrXx4zWYlcLQIZ+d+VXHgqnYKkIuq4g/34= 114 | github.com/prometheus/client_model v0.2.0 h1:uq5h0d+GuxiXLJLNABMgp2qUWDPiLvgCzz2dUR+/W/M= 115 | github.com/prometheus/common v0.32.1 h1:hWIdL3N2HoUx3B8j3YN9mWor0qhY/NlEKZEaXxuIRh4= 116 | github.com/prometheus/procfs v0.7.3 h1:4jVXhlkAyzOScmCkXBTOLRLTz8EeU+eyjrwB/EPq0VU= 117 | github.com/rabbitmq/amqp091-go v1.7.0 h1:V5CF5qPem5OGSnEo8BoSbsDGwejg6VUJsKEdneaoTUo= 118 | github.com/rabbitmq/amqp091-go v1.7.0/go.mod h1:wfClAtY0C7bOHxd3GjmF26jEHn+rR/0B3+YV+Vn9/NI= 119 | github.com/serialx/hashring v0.0.0-20190422032157-8b2912629002 h1:ka9QPuQg2u4LGipiZGsgkg3rJCo4iIUCy75FddM0GRQ= 120 | github.com/sirupsen/logrus v1.9.0 h1:trlNQbNUG3OdDrDil03MCb1H2o9nJ1x4/5LYw7byDE0= 121 | github.com/spf13/cobra v1.6.0 h1:42a0n6jwCot1pUmomAp4T7DeMD+20LFv4Q54pxLf2LI= 122 | github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= 123 | github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= 124 | github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= 125 | github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= 126 | github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= 127 | github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= 128 | github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= 129 | github.com/testcontainers/testcontainers-go v0.16.0 h1:4joFeohTtUVnN98QEveaCFkbTNEGGp3gJum8wbGho5w= 130 | github.com/theupdateframework/notary v0.7.0 h1:QyagRZ7wlSpjT5N2qQAh/pN+DVqgekv4DzbAiAiEL3c= 131 | github.com/tidwall/pretty v1.0.0 h1:HsD+QiTn7sK6flMKIvNmpqz1qrpP3Ps6jOKIKMooyg4= 132 | github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk= 133 | github.com/tonistiigi/fsutil v0.0.0-20220930225714-4638ad635be5 h1:NJ1nZs4j4XcBJKIY5sAwTGp9w5b78Zxr3+r0zXRuKnA= 134 | github.com/tonistiigi/go-rosetta v0.0.0-20220804170347-3f4430f2d346 h1:TvtdmeYsYEij78hS4oxnwikoiLdIrgav3BA+CbhaDAI= 135 | github.com/tonistiigi/units v0.0.0-20180711220420-6950e57a87ea h1:SXhTLE6pb6eld/v/cCndK0AMpt1wiVFb/YYmqB3/QG0= 136 | github.com/tonistiigi/vt100 v0.0.0-20210615222946-8066bb97264f h1:DLpt6B5oaaS8jyXHa9VA4rrZloBVPVXeCtrOsrFauxc= 137 | github.com/xdg-go/pbkdf2 v1.0.0 h1:Su7DPu48wXMwC3bs7MCNG+z4FhcyEuz5dlvchbq0B0c= 138 | github.com/xdg-go/pbkdf2 v1.0.0/go.mod h1:jrpuAogTd400dnrH08LKmI/xc1MbPOebTwRqcT5RDeI= 139 | github.com/xdg-go/scram v1.1.1/go.mod h1:RaEWvsqvNKKvBPvcKeFjrG2cJqOkHTiyTpzz23ni57g= 140 | github.com/xdg-go/scram v1.1.2 h1:FHX5I5B4i4hKRVRBCFRxq1iQRej7WO3hhBuJf+UUySY= 141 | github.com/xdg-go/scram v1.1.2/go.mod h1:RT/sEzTbU5y00aCK8UOx6R7YryM0iF1N2MOmC3kKLN4= 142 | github.com/xdg-go/stringprep v1.0.3/go.mod h1:W3f5j4i+9rC0kuIEJL0ky1VpHXQU3ocBgklLGvcBnW8= 143 | github.com/xdg-go/stringprep v1.0.4 h1:XLI/Ng3O1Atzq0oBs3TWm+5ZVgkq2aqdlvP9JtoZ6c8= 144 | github.com/xdg-go/stringprep v1.0.4/go.mod h1:mPGuuIYwz7CmR2bT9j4GbQqutWS1zV24gijq1dTyGkM= 145 | github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb h1:zGWFAtiMcyryUHoUjUJX0/lt1H2+i2Ka2n+D3DImSNo= 146 | github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 h1:EzJWgHovont7NscjpAxXsDA8S8BMYve8Y5+7cuRE7R0= 147 | github.com/xeipuuv/gojsonschema v1.2.0 h1:LhYJRs+L4fBtjZUfuSZIKGeVu0QRy8e5Xi7D17UxZ74= 148 | github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7JulP+udvsHwJoVG1YGAP6VLg4y9I5dyZdqmA= 149 | github.com/youmark/pkcs8 v0.0.0-20201027041543-1326539a0a0a h1:fZHgsYlfvtyqToslyjUt3VOPF4J7aK/3MPcK7xp3PDk= 150 | github.com/youmark/pkcs8 v0.0.0-20201027041543-1326539a0a0a/go.mod h1:ul22v+Nro/R083muKhosV54bj5niojjWZvU8xrevuH4= 151 | github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= 152 | github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= 153 | go.mongodb.org/mongo-driver v1.11.2 h1:+1v2rDQUWNcGW7/7E0Jvdz51V38XXxJfhzbV17aNHCw= 154 | go.mongodb.org/mongo-driver v1.11.2/go.mod h1:s7p5vEtfbeR1gYi6pnj3c3/urpbLv2T5Sfd6Rp2HBB8= 155 | go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.29.0 h1:n9b7AAdbQtQ0k9dm0Dm2/KUcUqtG8i2O15KzNaDze8c= 156 | go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace v0.29.0 h1:Wjp9vsVSIEyvdiaECfqxY9xBqQ7JaSCGtvHgR4doXZk= 157 | go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.29.0 h1:SLme4Porm+UwX0DdHMxlwRt7FzPSE0sys81bet2o0pU= 158 | go.opentelemetry.io/otel v1.11.1 h1:4WLLAmcfkmDk2ukNXJyq3/kiz/3UzCaYq6PskJsaou4= 159 | go.opentelemetry.io/otel/exporters/otlp/internal/retry v1.4.1 h1:imIM3vRDMyZK1ypQlQlO+brE22I9lRhJsBDXpDWjlz8= 160 | go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.4.1 h1:WPpPsAAs8I2rA47v5u0558meKmmwm1Dj99ZbqCV8sZ8= 161 | go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.4.1 h1:AxqDiGk8CorEXStMDZF5Hz9vo9Z7ZZ+I5m8JRl/ko40= 162 | go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.4.1 h1:8qOago/OqoFclMUUj/184tZyRdDZFpcejSjbk5Jrl6Y= 163 | go.opentelemetry.io/otel/internal/metric v0.27.0 h1:9dAVGAfFiiEq5NVB9FUJ5et+btbDQAUIJehJ+ikyryk= 164 | go.opentelemetry.io/otel/metric v0.27.0 h1:HhJPsGhJoKRSegPQILFbODU56NS/L1UE4fS1sC5kIwQ= 165 | go.opentelemetry.io/otel/sdk v1.4.1 h1:J7EaW71E0v87qflB4cDolaqq3AcujGrtyIPGQoZOB0Y= 166 | go.opentelemetry.io/otel/trace v1.11.1 h1:ofxdnzsNrGBYXbP7t7zpUK281+go5rF7dvdIZXF8gdQ= 167 | go.opentelemetry.io/proto/otlp v0.12.0 h1:CMJ/3Wp7iOWES+CYLfnBv+DVmPbB+kmy9PJ92XvlR6c= 168 | go.uber.org/goleak v1.2.0 h1:xqgm/S+aQvhWFTtR0XK3Jvg7z8kGV8P4X14IzwN3Eqk= 169 | go.uber.org/goleak v1.2.0/go.mod h1:XJYK+MuIchqpmGmUSAzotztawfKvYLUIgg7guXrwVUo= 170 | golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= 171 | golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= 172 | golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= 173 | golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= 174 | golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= 175 | golang.org/x/crypto v0.7.0 h1:AvwMYaRytfdeVt3u6mLaxYtErKYjxA2OXjJ1HHq6t3A= 176 | golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU= 177 | golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= 178 | golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= 179 | golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= 180 | golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= 181 | golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= 182 | golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= 183 | golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= 184 | golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= 185 | golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= 186 | golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= 187 | golang.org/x/net v0.8.0 h1:Zrh2ngAOFYneWTAIAPethzeaQLuHwhuBkuV6ZiRnUaQ= 188 | golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8 h1:RerP+noqYHUQ8CMRcPlC2nvTa4dcBIjegkuWdcUDuqg= 189 | golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 190 | golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 191 | golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 192 | golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= 193 | golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= 194 | golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= 195 | golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 196 | golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 197 | golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 198 | golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 199 | golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= 200 | golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= 201 | golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= 202 | golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= 203 | golang.org/x/sys v0.6.0 h1:MVltZSvRTcU2ljQOhs94SXPftV6DCNnZViHeQps87pQ= 204 | golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= 205 | golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= 206 | golang.org/x/term v0.6.0 h1:clScbb1cHjoCkyRbWwBEUZ5H/tIFu5TAXIqaZD0Gcjw= 207 | golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= 208 | golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= 209 | golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= 210 | golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= 211 | golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ= 212 | golang.org/x/text v0.8.0 h1:57P1ETyNKtuIjB4SRd15iJxuhj8Gc416Y78H3qgMh68= 213 | golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= 214 | golang.org/x/time v0.0.0-20220210224613-90d013bbcef8 h1:vVKdlvoWBphwdxWKrFZEuM0kGgGLxUOYcY4U/2Vjg44= 215 | golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= 216 | golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= 217 | golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= 218 | golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= 219 | golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= 220 | golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= 221 | golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= 222 | golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= 223 | golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= 224 | google.golang.org/appengine v1.6.7 h1:FZR1q0exgwxzPzp/aF+VccGrSfxfPpkBqjIIEq3ru6c= 225 | google.golang.org/genproto v0.0.0-20220808145710-bf34ca4dd83a h1:FX/Y0fehmt5BT/GcKqm2u8l/Y1d0EQwAkI0vbXytJ60= 226 | google.golang.org/grpc v1.48.0 h1:rQOsyJ/8+ufEDJd/Gdsz7HG220Mh9HAhFHRGnIjda0w= 227 | google.golang.org/protobuf v1.28.1 h1:d0NfwRgPtno5B1Wa6L2DAG+KivqkdutMf1UhdNx175w= 228 | gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= 229 | gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= 230 | gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= 231 | gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= 232 | gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= 233 | gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= 234 | gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= 235 | k8s.io/api v0.24.1 h1:BjCMRDcyEYz03joa3K1+rbshwh1Ay6oB53+iUx2H8UY= 236 | k8s.io/apimachinery v0.24.1 h1:ShD4aDxTQKN5zNf8K1RQ2u98ELLdIW7jEnlO9uAMX/I= 237 | k8s.io/client-go v0.24.1 h1:w1hNdI9PFrzu3OlovVeTnf4oHDt+FJLd9Ndluvnb42E= 238 | k8s.io/klog/v2 v2.60.1 h1:VW25q3bZx9uE3vvdL6M8ezOX79vA2Aq1nEWLqNQclHc= 239 | k8s.io/kube-openapi v0.0.0-20220328201542-3ee0da9b0b42 h1:Gii5eqf+GmIEwGNKQYQClCayuJCe2/4fZUvF7VG99sU= 240 | k8s.io/utils v0.0.0-20220210201930-3a6ce19ff2f9 h1:HNSDgDCrr/6Ly3WEGKZftiE7IY19Vz2GdbOCyI4qqhc= 241 | sigs.k8s.io/json v0.0.0-20211208200746-9f7c6b3444d2 h1:kDi4JBNAsJWfz1aEXhO8Jg87JJaPNLh5tIzYHgStQ9Y= 242 | sigs.k8s.io/structured-merge-diff/v4 v4.2.1 h1:bKCqE9GvQ5tiVHn5rfn1r+yao3aLQEaLzkkmAkf+A6Y= 243 | sigs.k8s.io/yaml v1.2.0 h1:kr/MCeFWJWTwyaHoR9c8EjH9OumOmoF9YGiZd7lFm/Q= 244 | -------------------------------------------------------------------------------- /httpserver/doc.go: -------------------------------------------------------------------------------- 1 | // Package httpserver contains the HTTP server and the routes 2 | package httpserver 3 | -------------------------------------------------------------------------------- /httpserver/http.go: -------------------------------------------------------------------------------- 1 | package httpserver 2 | 3 | import ( 4 | "context" 5 | "encoding/json" 6 | "log" 7 | "net/http" 8 | "time" 9 | 10 | "github.com/gbeletti/service-golang/cryptoasset" 11 | "github.com/gbeletti/service-golang/queuerabbit" 12 | "github.com/go-chi/chi/v5" 13 | ) 14 | 15 | var srv *http.Server 16 | 17 | // Start starts the http server 18 | func Start() { 19 | createServer() 20 | go func() { 21 | if err := srv.ListenAndServe(); err != nil && err != http.ErrServerClosed { 22 | panic(err) 23 | } 24 | }() 25 | } 26 | 27 | // Shutdown shuts down the http server 28 | func Shutdown(ctx context.Context) (done chan struct{}) { 29 | done = make(chan struct{}) 30 | go func() { 31 | defer close(done) 32 | if err := srv.Shutdown(ctx); err != nil { 33 | log.Printf("couldnt shutdown server error [%s]\n", err) 34 | } 35 | }() 36 | return 37 | } 38 | 39 | func createServer() { 40 | mux := chi.NewRouter() 41 | mux.Get("/", helloWorld) 42 | mux.Get("/bitcoin/startdate/{startDate:[0-9]{4}-[0-9]{2}-[0-9]{2}}/enddate/{endDate:[0-9]{4}-[0-9]{2}-[0-9]{2}}", bitcoinVariation) 43 | srv = &http.Server{ 44 | Addr: ":8000", 45 | Handler: mux, 46 | ReadHeaderTimeout: time.Second * 30, 47 | } 48 | } 49 | 50 | func helloWorld(w http.ResponseWriter, r *http.Request) { 51 | msg := "Hello World" 52 | queuerabbit.PublishTest(context.Background(), msg) 53 | _, err := w.Write([]byte(msg)) 54 | if err != nil { 55 | log.Printf("couldnt write response error [%s]\n", err) 56 | } 57 | } 58 | 59 | func bitcoinVariation(w http.ResponseWriter, r *http.Request) { 60 | startDate := chi.URLParam(r, "startDate") 61 | endDate := chi.URLParam(r, "endDate") 62 | variation, err := cryptoasset.GetBitcoinVariation(startDate, endDate) 63 | w.Header().Set("Content-Type", "application/json") 64 | if err != nil { 65 | w.WriteHeader(http.StatusNotAcceptable) 66 | } 67 | res, err := json.Marshal(variation) 68 | if err != nil { 69 | log.Printf("couldnt marshal the response to json error [%s]\n", err) 70 | } 71 | _, err = w.Write(res) 72 | if err != nil { 73 | log.Printf("couldnt write response error [%s]\n", err) 74 | } 75 | } 76 | -------------------------------------------------------------------------------- /main.go: -------------------------------------------------------------------------------- 1 | package main 2 | 3 | import ( 4 | "context" 5 | "log" 6 | "time" 7 | 8 | "github.com/gbeletti/service-golang/dbmongo" 9 | "github.com/gbeletti/service-golang/httpserver" 10 | "github.com/gbeletti/service-golang/queuerabbit" 11 | "github.com/gbeletti/service-golang/servicemanager" 12 | "github.com/joho/godotenv" 13 | ) 14 | 15 | func init() { 16 | err := godotenv.Load() 17 | if err != nil { 18 | log.Println("no .env file found") 19 | } 20 | } 21 | 22 | func main() { 23 | _, cancel := start() 24 | defer shutdown(cancel) 25 | servicemanager.WaitShutdown() 26 | } 27 | 28 | func start() (ctx context.Context, cancel context.CancelFunc) { 29 | // This is the main context for the service. When it is canceled it means the service is going down. 30 | // All the tasks must be canceled 31 | ctx, cancel = context.WithCancel(context.Background()) 32 | if err := dbmongo.Start(); err != nil { 33 | log.Printf("couldnt start database error [%s]\n", err) 34 | } 35 | queuerabbit.Start(ctx) 36 | httpserver.Start() 37 | return 38 | } 39 | 40 | func shutdown(cancel context.CancelFunc) { 41 | cancel() 42 | ctx, cancelTimeout := context.WithTimeout(context.Background(), time.Second*30) 43 | defer cancelTimeout() 44 | doneHTTP := httpserver.Shutdown(ctx) 45 | doneRabbit := queuerabbit.Shutdown(ctx) 46 | err := servicemanager.WaitUntilIsDoneOrCanceled(ctx, doneHTTP, doneRabbit) 47 | if err != nil { 48 | log.Printf("service stopped by timeout %s\n", err) 49 | } 50 | if err := dbmongo.Close(context.Background()); err != nil { 51 | log.Printf("couldnt close mongo connection error [%s]\n", err) 52 | } 53 | time.Sleep(time.Millisecond * 200) 54 | log.Println("bye bye") 55 | } 56 | -------------------------------------------------------------------------------- /queuerabbit/doc.go: -------------------------------------------------------------------------------- 1 | // Package queuerabbit contains all the RabbitMQ setup 2 | package queuerabbit 3 | -------------------------------------------------------------------------------- /queuerabbit/rabbit.go: -------------------------------------------------------------------------------- 1 | package queuerabbit 2 | 3 | import ( 4 | "context" 5 | "log" 6 | "os" 7 | 8 | "github.com/gbeletti/rabbitmq" 9 | amqp "github.com/rabbitmq/amqp091-go" 10 | ) 11 | 12 | var rabbit rabbitmq.RabbitMQ 13 | 14 | // Start starts the RabbitMQ connection 15 | func Start(ctx context.Context) { 16 | rabbit = rabbitmq.NewRabbitMQ() 17 | 18 | setupRabbit(ctx) 19 | } 20 | 21 | // Shutdown stops the RabbitMQ connection 22 | func Shutdown(ctx context.Context) (done chan struct{}) { 23 | done = rabbit.Close(ctx) 24 | return 25 | } 26 | 27 | func setupRabbit(ctx context.Context) { 28 | var setup rabbitmq.Setup = func() { 29 | createQueues(rabbit) 30 | createConsumers(ctx, rabbit) 31 | } 32 | configConn := rabbitmq.ConfigConnection{ 33 | URI: loadURI(), 34 | PrefetchCount: 1, 35 | } 36 | rabbitmq.KeepConnectionAndSetup(ctx, rabbit, configConn, setup) 37 | } 38 | 39 | func createQueues(rabbit rabbitmq.QueueCreator) { 40 | config := rabbitmq.ConfigQueue{ 41 | Name: "test", 42 | Durable: true, 43 | AutoDelete: false, 44 | Exclusive: false, 45 | NoWait: false, 46 | Args: nil, 47 | } 48 | _, err := rabbit.CreateQueue(config) 49 | if err != nil { 50 | log.Printf("error creating queue: %s\n", err) 51 | } 52 | } 53 | 54 | func createConsumers(ctx context.Context, rabbit rabbitmq.Consumer) { 55 | config := rabbitmq.ConfigConsume{ 56 | QueueName: "test", 57 | Consumer: "test", 58 | AutoAck: false, 59 | Exclusive: false, 60 | NoLocal: false, 61 | NoWait: false, 62 | Args: nil, 63 | ExecuteConcurrent: true, 64 | } 65 | go func() { 66 | if err := rabbit.Consume(ctx, config, receiveMessage); err != nil { 67 | log.Printf("error consuming from queue: %s\n", err) 68 | } 69 | }() 70 | } 71 | 72 | func receiveMessage(d *amqp.Delivery) { 73 | defer func() { 74 | if err := d.Ack(false); err != nil { 75 | log.Printf("error acking message: %s\n", err) 76 | } 77 | }() 78 | log.Printf("received message: %s\n", d.Body) 79 | } 80 | 81 | // PublishTest publishes a test message to the RabbitMQ exchange 82 | func PublishTest(ctx context.Context, msg string) { 83 | config := rabbitmq.ConfigPublish{ 84 | Exchange: "", 85 | RoutingKey: "test", 86 | } 87 | if err := rabbit.Publish(ctx, []byte(msg), config); err != nil { 88 | log.Printf("error publishing message: %s\n", err) 89 | } 90 | } 91 | 92 | func loadURI() (uri string) { 93 | uri = os.Getenv("RABBITMQ_URI") 94 | return 95 | } 96 | -------------------------------------------------------------------------------- /servicemanager/doc.go: -------------------------------------------------------------------------------- 1 | // Package servicemanager contains the functions to control the service shutdown 2 | package servicemanager 3 | -------------------------------------------------------------------------------- /servicemanager/service.go: -------------------------------------------------------------------------------- 1 | package servicemanager 2 | 3 | import ( 4 | "context" 5 | "errors" 6 | "log" 7 | "os" 8 | "os/signal" 9 | "syscall" 10 | ) 11 | 12 | // ErrServiceCanceled is the error returned when the service is canceled 13 | var ErrServiceCanceled = errors.New("service canceled") 14 | 15 | // WaitShutdown waits until is going to die 16 | func WaitShutdown() { 17 | sigc := make(chan os.Signal, 1) 18 | signal.Notify(sigc, syscall.SIGHUP, syscall.SIGINT, syscall.SIGTERM, syscall.SIGQUIT) 19 | s := <-sigc 20 | log.Printf("signal received [%v] canceling everything\n", s) 21 | } 22 | 23 | // WaitUntilIsDoneOrCanceled it waits until all the dones channels are closed or the context is canceled 24 | func WaitUntilIsDoneOrCanceled(ctx context.Context, dones ...chan struct{}) (err error) { 25 | done := make(chan struct{}) 26 | go func() { 27 | for _, d := range dones { 28 | <-d 29 | } 30 | close(done) 31 | }() 32 | select { 33 | case <-done: 34 | log.Println("all done") 35 | case <-ctx.Done(): 36 | err = ErrServiceCanceled 37 | log.Println("canceled") 38 | } 39 | return 40 | } 41 | --------------------------------------------------------------------------------