From a0d9f9c27833239ef8da5ff3cc0c2220d70cd122 Mon Sep 17 00:00:00 2001 From: Aadyot Bhatnagar Date: Mon, 3 Oct 2022 10:45:29 -0700 Subject: [PATCH] Add support for exogenous regressors (#125) * Simplify implementations of SARIMA, ETS, VectorAR. We remove code duplication from these files, and we also remove the online training features of ETS. This should make the ETS model easier to use at inference time, since time_series_prev is no longer entangled with online inference features. * Bugfixes. * Simpler TransformSequence implementation. * Refactor argument order for anomaly detector train We change the order from (train_data, anomaly_labels, train_config, post_rule_train_config) to (train_data, train_config, anomaly_labels, post_rule_train_config). This brings it in line with the base signature. * Allow custom color plots. * Add exogenous regressor support for Prophet. * Add exog regressor support for SARIMA. * Add exog_data param to downstream models. We allow ForecastingDetector's, ForecasterEnsemble's, and LayeredForecaster's to accept the param exog_data in both train() and forecast() methods. However, layered models (especially autoML) do not yet support training with exogenous data. * Make base train() abstract. * Make exogenous pre-processing more rigorous. * Add exog regressor support to evaluators. * Add exog regressor test for Prophet. * Abstract away the notion of grid search. * Add ensemble & evaluator test coverage for exog. * Fix build failures. * Remove exog_data reference from SeasonalityLayer * More fixes. * Add exogenous regressor support to layered models. * Silence Prophet deserialization warnings. * Fix 2-layer AutoSarima bug. * Change train to _train for DetectorEnsemble. * Fix typos. * Slight cleanup of ensemble code. * Simplify ensemble cross-val to use evaluators. * Add save/load test coverage for exog. * Make layers aware of exogenous regressors. * Deprecate Python 3.6 & update version. * More rigorous handling of kwargs in LayeredModel. * Rename ForecasterWithExog to ForecasterExogBase * More robust support for inverse transforms. Use named variables rather than integer indexing. This ensures that we can invert multivariate forecasts. * Fix how model_kwargs is set in layered models. * Make time series more JSON-compatible. * Various bugfixes. * More systematic post-processing of forecasts. * Fix docs error. * Remove RMSE value assertions from boostingtrees. * Skip univariate VectorAR test as before. * Skip spark tests on Python 3.10 * Optimize application of inverse transforms. The inverse of many transforms is just the identity. This commit adds an optimization which skips applying the inverse altogether if this is the case. * Reduce size of walmart_mini to prevent OOM errors. * Update pyspark session fixture. * Make test_vector_ar smaller. * Remove python3.6 fallback code from conj priors. * models.anomaly.utils -> models.utils.torch_utils * Update default settings of ARIMA models. I figured out that the enforce_invertibility=True and enforce_stationarity=True settings were previously causing segfaults in the unit tests because of an out-of-memory error. I have updated the tests to use smaller data size to circumvent the error. * Fix failures from SARIMA model update. * Try unpersisting dataframes in spark tests. This could ameliorate OOM issues (if that's the cause of test failures). * Increase Spark network timeout for unit tests. * Run spark tests separately for 3.8/3.9. * Update test_forecast_ensemble. * Add tutorial on exogenous regressors. * Add auto-retry to tests. * Use cached docs from gh-pages branch. Also improve git robustness of build_docs.sh. --- .github/workflows/docs.yml | 10 +- .github/workflows/publish.yml | 6 +- .github/workflows/tests.yml | 80 +- CONTRIBUTING.md | 6 +- Dockerfile | 2 + benchmark_forecast.py | 9 +- data/walmart/walmart_mini.csv | 5374 ----------------- docs/build_docs.sh | 76 +- docs/source/conf.py | 17 +- docs/source/index.rst | 6 +- docs/source/merlion.models.automl.rst | 34 +- docs/source/merlion.rst | 4 +- docs/source/ts_datasets.rst | 2 +- docs/source/tutorials | 1 + docs/source/tutorials.rst | 10 +- examples/CustomDataset.ipynb | 150 +- .../1_AutoSARIMA_forecasting_tutorial.ipynb | 110 +- examples/forecast/1_ForecastFeatures.ipynb | 2 +- .../forecast/2_ForecastMultivariate.ipynb | 48 +- examples/forecast/3_ForecastExogenous.ipynb | 612 ++ ...ewModel.ipynb => 4_ForecastNewModel.ipynb} | 0 merlion/evaluate/anomaly.py | 18 +- merlion/evaluate/base.py | 29 +- merlion/evaluate/forecast.py | 10 +- merlion/models/anomaly/autoencoder.py | 3 +- merlion/models/anomaly/base.py | 36 +- merlion/models/anomaly/change_point/bocpd.py | 44 +- merlion/models/anomaly/dagmm.py | 16 +- merlion/models/anomaly/dbl.py | 5 +- merlion/models/anomaly/forecast_based/base.py | 146 +- merlion/models/anomaly/forecast_based/mses.py | 4 +- merlion/models/anomaly/lstm_ed.py | 3 +- merlion/models/anomaly/vae.py | 3 +- merlion/models/anomaly/windstats.py | 5 +- merlion/models/anomaly/zms.py | 4 +- merlion/models/automl/autoets.py | 76 +- merlion/models/automl/autoprophet.py | 24 +- merlion/models/automl/autosarima.py | 11 +- merlion/models/automl/base.py | 44 +- merlion/models/automl/search.py | 36 + merlion/models/automl/seasonality.py | 2 +- merlion/models/base.py | 53 +- merlion/models/defaults.py | 20 +- merlion/models/ensemble/anomaly.py | 115 +- merlion/models/ensemble/base.py | 35 +- merlion/models/ensemble/forecast.py | 98 +- merlion/models/forecast/__init__.py | 5 +- merlion/models/forecast/arima.py | 5 +- merlion/models/forecast/base.py | 548 +- merlion/models/forecast/ets.py | 24 +- merlion/models/forecast/lstm.py | 5 +- merlion/models/forecast/prophet.py | 57 +- merlion/models/forecast/sarima.py | 34 +- merlion/models/forecast/smoother.py | 21 +- merlion/models/forecast/trees.py | 6 +- merlion/models/forecast/vector_ar.py | 9 +- merlion/models/layers.py | 100 +- merlion/models/utils/autosarima_utils.py | 23 +- .../utils.py => utils/torch_utils.py} | 0 merlion/plot.py | 23 +- merlion/transform/anomalize.py | 4 +- merlion/transform/base.py | 15 + merlion/transform/factory.py | 1 + merlion/transform/moving_average.py | 27 +- merlion/transform/normalize.py | 78 +- merlion/transform/resample.py | 6 +- merlion/transform/sequence.py | 13 +- merlion/utils/conj_priors.py | 89 +- merlion/utils/misc.py | 19 +- merlion/utils/time_series.py | 76 +- setup.py | 13 +- tests/anomaly/forecast_based/test_sarima.py | 2 +- tests/anomaly/test_anom_ensemble.py | 1 - tests/anomaly/test_dbl.py | 8 +- tests/evaluate/test_eval_forecast.py | 13 +- tests/forecast/test_autosarima.py | 13 +- tests/forecast/test_baggingtrees.py | 108 +- tests/forecast/test_boostingtrees.py | 111 +- tests/forecast/test_default.py | 9 +- tests/forecast/test_exog.py | 79 + tests/forecast/test_forecast_ensemble.py | 8 +- tests/forecast/test_prophet.py | 63 + tests/forecast/test_vector_ar.py | 104 +- tests/spark/conftest.py | 15 +- tests/spark/test_anomaly.py | 5 +- tests/spark/test_forecast.py | 5 +- ts_datasets/ts_datasets/anomaly/custom.py | 2 +- ts_datasets/ts_datasets/forecast/custom.py | 2 +- 88 files changed, 2376 insertions(+), 6772 deletions(-) create mode 120000 docs/source/tutorials create mode 100644 examples/forecast/3_ForecastExogenous.ipynb rename examples/forecast/{3_ForecastNewModel.ipynb => 4_ForecastNewModel.ipynb} (100%) create mode 100644 merlion/models/automl/search.py rename merlion/models/{anomaly/utils.py => utils/torch_utils.py} (100%) create mode 100644 tests/forecast/test_exog.py diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index e63b8d2e8..1ea1b0689 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -9,18 +9,18 @@ on: types: [ published ] jobs: - build: + docs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: fetch-depth: 0 - name: Set up Python - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 with: - python-version: '3.9' + python-version: '3.10' - name: Install dependencies run: | sudo apt-get update -y @@ -29,7 +29,7 @@ jobs: - name: Build Sphinx docs run: | docs/build_docs.sh - timeout-minutes: 60 + timeout-minutes: 10 - name: Deploy to gh-pages uses: peaceiris/actions-gh-pages@v3 if: ${{ github.ref == 'refs/heads/main' || github.event_name == 'release' }} diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index f77922dfa..58e1d804f 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -8,11 +8,11 @@ jobs: deploy: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Set up Python - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 with: - python-version: '3.x' + python-version: '3.10' - name: Install dependencies run: | python -m pip install --upgrade pip setuptools build diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 3578b538d..3b2275eb5 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -1,4 +1,4 @@ -name: build +name: tests on: push: @@ -7,18 +7,18 @@ on: branches: [ main ] jobs: - build: + tests: runs-on: ubuntu-latest strategy: fail-fast: false matrix: - python-version: ["3.6", "3.7", "3.8", "3.9", "3.10"] + python-version: ["3.7", "3.8", "3.9", "3.10"] steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} @@ -34,45 +34,41 @@ jobs: - name: Test with pytest id: test - run: | - # Get a comma-separated list of the directories of all python source files - source_files=$(for f in $(find merlion -iname "*.py"); do echo -n ",$f"; done) - script="import os; print(','.join({os.path.dirname(f) for f in '$source_files'.split(',') if f}))" - source_modules=$(python -c "$script") - - # A BLAS bug causes high-dim multivar Bayesian LR test to segfault in 3.6. Run the test first to avoid. - if [[ $PYTHON_VERSION == 3.6 ]]; then - python -m pytest -v tests/change_point/test_conj_prior.py - coverage run --source=${source_modules} -L -m pytest -v --ignore tests/change_point/test_conj_prior.py - else - coverage run --source=${source_modules} -L -m pytest -v - fi - - # Obtain code coverage from coverage report - coverage report - coverage xml -o .github/badges/coverage.xml - COVERAGE=`coverage report | grep "TOTAL" | grep -Eo "[0-9\.]+%"` - echo "##[set-output name=coverage;]${COVERAGE}" - - # Choose a color based on code coverage - COVERAGE=${COVERAGE/\%/} - if (($COVERAGE > 90)); then - COLOR=brightgreen - elif (($COVERAGE > 80)); then - COLOR=green - elif (($COVERAGE > 70)); then - COLOR=yellow - elif (($COVERAGE > 60)); then - COLOR=orange - else - COLOR=red - fi - echo "##[set-output name=color;]${COLOR}" + uses: nick-fields/retry@v2 env: PYTHON_VERSION: ${{ matrix.python-version }} + with: + max_attempts: 3 + timeout_minutes: 40 + command: | + # Get a comma-separated list of the directories of all python source files + source_files=$(for f in $(find merlion -iname "*.py"); do echo -n ",$f"; done) + script="import os; print(','.join({os.path.dirname(f) for f in '$source_files'.split(',') if f}))" + source_modules=$(python -c "$script") + + # Run tests & obtain code coverage from coverage report. + coverage run --source=${source_modules} -L -m pytest -v -s + coverage report && coverage xml -o .github/badges/coverage.xml + COVERAGE=`coverage report | grep "TOTAL" | grep -Eo "[0-9\.]+%"` + echo "##[set-output name=coverage;]${COVERAGE}" + + # Choose a color based on code coverage + COVERAGE=${COVERAGE/\%/} + if (($COVERAGE > 90)); then + COLOR=brightgreen + elif (($COVERAGE > 80)); then + COLOR=green + elif (($COVERAGE > 70)); then + COLOR=yellow + elif (($COVERAGE > 60)); then + COLOR=orange + else + COLOR=red + fi + echo "##[set-output name=color;]${COLOR}" - name: Create coverage badge - if: ${{ github.ref == 'refs/heads/main' && matrix.python-version == '3.8' }} + if: ${{ github.ref == 'refs/heads/main' && matrix.python-version == '3.10' }} uses: emibcn/badge-action@v1.2.1 with: label: coverage @@ -81,8 +77,8 @@ jobs: path: .github/badges/coverage.svg - name: Push badge to badges branch - uses: s0/git-publish-subdir-action@develop - if: ${{ github.ref == 'refs/heads/main' && matrix.python-version == '3.8' }} + uses: s0/git-publish-subdir-action@v2.5.1 + if: ${{ github.ref == 'refs/heads/main' && matrix.python-version == '3.10' }} env: REPO: self BRANCH: badges diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 5b88065e4..5695ca3c5 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -74,7 +74,7 @@ transform used to process the data before giving it to the model, if the `transf given when initializing the config. See our implementation of [SARIMA](merlion/models/forecast/sarima.py) for a fairly simple example of what this looks -like in practice, and this [notebook](examples/forecast/ForecastNewModel.ipynb) for a step-by-step walkthrough of a +like in practice, and this [notebook](examples/forecast/4_ForecastNewModel.ipynb) for a step-by-step walkthrough of a minimal example. ### Forecaster-Based Anomaly Detectors @@ -92,7 +92,7 @@ this class into an `ForecasterDetectorClass`. You need to do the following thing See our implementation of a [Prophet-based anomaly detector](merlion/models/anomaly/forecast_based/prophet.py) for an example of what this looks like in practice, as well as the forecaster tutorial -[notebook](examples/forecast/3_ForecastNewModel.ipynb). +[notebook](examples/forecast/4_ForecastNewModel.ipynb). ## Data Pre-Processing Transforms To implement a new data pre-processing transform, begin by reading the @@ -127,7 +127,7 @@ You can add support for a new dataset of time series by implementing an appropri [`ts_datasets`](ts_datasets), and uploading the raw data (potentially compressed) to the [`data`](data) directory. If your dataset has labeled anomalies, it belongs in [`ts_datasets.anomaly`](ts_datasets/ts_datasets/anomaly). If it does not have labeled anomalies, it belongs in [`ts_datasets.forecast`](ts_datasets/ts_datasets/forecast). See the -[API docs](https://opensource.salesforce.com/Merlion/latest/ts_datasets.html) for more details. +[API docs](https://opensource.salesforce.com/Merlion/ts_datasets.html) for more details. Once you've implemented your data loader class, add it to the top-level namespace of the module ([`ts_datasets/ts_datasets/anomaly/__init__.py`](ts_datasets/ts_datasets/anomaly/__init__.py) or diff --git a/Dockerfile b/Dockerfile index 361681e40..bd4768882 100644 --- a/Dockerfile +++ b/Dockerfile @@ -15,3 +15,5 @@ RUN pip install pyarrow "./" COPY apps /opt/spark/apps RUN chmod g+w /opt/spark/apps USER ${spark_uid} +COPY emissions.csv emissions.csv +COPY emissions.json emissions.json \ No newline at end of file diff --git a/benchmark_forecast.py b/benchmark_forecast.py index 6070524ba..13c058d74 100644 --- a/benchmark_forecast.py +++ b/benchmark_forecast.py @@ -336,15 +336,8 @@ def train_model( config=ForecastEvaluatorConfig(train_window=train_window, horizon=horizon, retrain_freq=retrain_freq), ) - # Initialize train config - train_kwargs = {} - if type(model).__name__ == "AutoSarima": - train_kwargs = {"train_config": {"enforce_stationarity": True, "enforce_invertibility": True}} - # Get Evaluate Results - train_result, test_pred = evaluator.get_predict( - train_vals=train_vals, test_vals=test_vals, train_kwargs=train_kwargs, retrain_kwargs=train_kwargs - ) + train_result, test_pred = evaluator.get_predict(train_vals=train_vals, test_vals=test_vals) rmses = evaluator.evaluate(ground_truth=test_vals, predict=test_pred, metric=ForecastMetric.RMSE) smapes = evaluator.evaluate(ground_truth=test_vals, predict=test_pred, metric=ForecastMetric.sMAPE) diff --git a/data/walmart/walmart_mini.csv b/data/walmart/walmart_mini.csv index 62589d05e..cde756cb8 100644 --- a/data/walmart/walmart_mini.csv +++ b/data/walmart/walmart_mini.csv @@ -1429,2693 +1429,6 @@ Store,Dept,Date,Weekly_Sales,Temperature,Fuel_Price,MarkDown1,MarkDown2,MarkDown 1,10,2012-10-12,27803.78,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False 1,10,2012-10-19,29442.38,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False 1,10,2012-10-26,26285.27,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,11,2010-02-05,24213.18,42.31,2.572,,,,,,211.0963582,8.106,False -1,11,2010-02-12,21760.75,38.51,2.548,,,,,,211.2421698,8.106,True -1,11,2010-02-19,18706.21,39.93,2.514,,,,,,211.2891429,8.106,False -1,11,2010-02-26,17306.61,46.63,2.561,,,,,,211.3196429,8.106,False -1,11,2010-03-05,19082.9,46.5,2.625,,,,,,211.3501429,8.106,False -1,11,2010-03-12,17864.32,57.79,2.667,,,,,,211.3806429,8.106,False -1,11,2010-03-19,19738.42,54.58,2.72,,,,,,211.215635,8.106,False -1,11,2010-03-26,17592.13,51.45,2.732,,,,,,211.0180424,8.106,False -1,11,2010-04-02,21762.46,62.27,2.719,,,,,,210.8204499,7.808,False -1,11,2010-04-09,22186.81,65.86,2.77,,,,,,210.6228574,7.808,False -1,11,2010-04-16,19991.95,66.32,2.808,,,,,,210.4887,7.808,False -1,11,2010-04-23,17349.9,64.84,2.795,,,,,,210.4391228,7.808,False -1,11,2010-04-30,20001.75,67.41,2.78,,,,,,210.3895456,7.808,False -1,11,2010-05-07,28928.31,72.55,2.835,,,,,,210.3399684,7.808,False -1,11,2010-05-14,23301.17,74.78,2.854,,,,,,210.3374261,7.808,False -1,11,2010-05-21,27266.41,76.44,2.826,,,,,,210.6170934,7.808,False -1,11,2010-05-28,28393.85,80.44,2.759,,,,,,210.8967606,7.808,False -1,11,2010-06-04,36263.69,80.69,2.705,,,,,,211.1764278,7.808,False -1,11,2010-06-11,26806.72,80.43,2.668,,,,,,211.4560951,7.808,False -1,11,2010-06-18,34807.01,84.11,2.637,,,,,,211.4537719,7.808,False -1,11,2010-06-25,39460.59,84.34,2.653,,,,,,211.3386526,7.808,False -1,11,2010-07-02,26880.74,80.91,2.669,,,,,,211.2235333,7.787,False -1,11,2010-07-09,27604.86,80.48,2.642,,,,,,211.108414,7.787,False -1,11,2010-07-16,27781.28,83.15,2.623,,,,,,211.1003854,7.787,False -1,11,2010-07-23,28115.79,83.36,2.608,,,,,,211.2351443,7.787,False -1,11,2010-07-30,26789.66,81.84,2.64,,,,,,211.3699032,7.787,False -1,11,2010-08-06,37289.02,87.16,2.627,,,,,,211.5046621,7.787,False -1,11,2010-08-13,30250.16,87.0,2.692,,,,,,211.6394211,7.787,False -1,11,2010-08-20,31789.86,86.65,2.664,,,,,,211.6033633,7.787,False -1,11,2010-08-27,21282.09,85.22,2.619,,,,,,211.5673056,7.787,False -1,11,2010-09-03,17303.3,81.21,2.577,,,,,,211.5312479,7.787,False -1,11,2010-09-10,16107.93,78.69,2.565,,,,,,211.4951902,7.787,True -1,11,2010-09-17,16553.48,82.11,2.582,,,,,,211.5224596,7.787,False -1,11,2010-09-24,16215.81,80.94,2.624,,,,,,211.5972246,7.787,False -1,11,2010-10-01,16227.08,71.89,2.603,,,,,,211.6719895,7.838,False -1,11,2010-10-08,19605.53,63.93,2.633,,,,,,211.7467544,7.838,False -1,11,2010-10-15,17361.19,67.18,2.72,,,,,,211.8137436,7.838,False -1,11,2010-10-22,16165.56,69.86,2.725,,,,,,211.8612937,7.838,False -1,11,2010-10-29,18038.28,69.64,2.716,,,,,,211.9088438,7.838,False -1,11,2010-11-05,25063.26,58.74,2.689,,,,,,211.9563939,7.838,False -1,11,2010-11-12,21880.47,59.61,2.728,,,,,,212.003944,7.838,False -1,11,2010-11-19,23243.67,51.41,2.771,,,,,,211.8896737,7.838,False -1,11,2010-11-26,30865.64,64.52,2.735,,,,,,211.7484333,7.838,True -1,11,2010-12-03,29564.78,49.27,2.708,,,,,,211.607193,7.838,False -1,11,2010-12-10,27581.07,46.33,2.843,,,,,,211.4659526,7.838,False -1,11,2010-12-17,28597.5,49.84,2.869,,,,,,211.4053124,7.838,False -1,11,2010-12-24,32696.55,52.33,2.886,,,,,,211.4051222,7.838,False -1,11,2010-12-31,22443.1,48.43,2.943,,,,,,211.4049321,7.838,True -1,11,2011-01-07,22496.85,48.27,2.976,,,,,,211.4047419,7.742,False -1,11,2011-01-14,33958.52,35.4,2.983,,,,,,211.4574109,7.742,False -1,11,2011-01-21,20886.48,44.04,3.016,,,,,,211.8272343,7.742,False -1,11,2011-01-28,20041.24,43.83,3.01,,,,,,212.1970577,7.742,False -1,11,2011-02-04,24741.6,42.27,2.989,,,,,,212.5668812,7.742,False -1,11,2011-02-11,17711.78,36.39,3.022,,,,,,212.9367046,7.742,True -1,11,2011-02-18,18671.75,57.36,3.045,,,,,,213.2478853,7.742,False -1,11,2011-02-25,19421.42,62.9,3.065,,,,,,213.535609,7.742,False -1,11,2011-03-04,20777.31,59.58,3.288,,,,,,213.8233327,7.742,False -1,11,2011-03-11,18717.53,53.56,3.459,,,,,,214.1110564,7.742,False -1,11,2011-03-18,21683.76,62.76,3.488,,,,,,214.3627114,7.742,False -1,11,2011-03-25,26730.15,69.97,3.473,,,,,,214.5999389,7.742,False -1,11,2011-04-01,22642.55,59.17,3.524,,,,,,214.8371664,7.682,False -1,11,2011-04-08,24591.84,67.84,3.622,,,,,,215.0743939,7.682,False -1,11,2011-04-15,25526.24,71.27,3.743,,,,,,215.2918561,7.682,False -1,11,2011-04-22,25703.25,72.99,3.807,,,,,,215.4599053,7.682,False -1,11,2011-04-29,24975.38,72.03,3.81,,,,,,215.6279544,7.682,False -1,11,2011-05-06,23607.73,64.61,3.906,,,,,,215.7960035,7.682,False -1,11,2011-05-13,25332.93,75.64,3.899,,,,,,215.9640526,7.682,False -1,11,2011-05-20,19511.5,67.63,3.907,,,,,,215.7339202,7.682,False -1,11,2011-05-27,27201.64,77.72,3.786,,,,,,215.5037878,7.682,False -1,11,2011-06-03,38594.85,83.0,3.699,,,,,,215.2736553,7.682,False -1,11,2011-06-10,41413.29,83.13,3.648,,,,,,215.0435229,7.682,False -1,11,2011-06-17,35902.81,86.41,3.637,,,,,,214.9980596,7.682,False -1,11,2011-06-24,35028.61,83.58,3.594,,,,,,215.0910982,7.682,False -1,11,2011-07-01,33808.27,85.55,3.524,,,,,,215.1841368,7.962,False -1,11,2011-07-08,31642.79,85.83,3.48,,,,,,215.2771754,7.962,False -1,11,2011-07-15,37603.73,88.54,3.575,,,,,,215.3611087,7.962,False -1,11,2011-07-22,33734.44,85.77,3.651,,,,,,215.4222784,7.962,False -1,11,2011-07-29,31884.24,86.83,3.682,,,,,,215.4834482,7.962,False -1,11,2011-08-05,33020.31,91.65,3.684,,,,,,215.544618,7.962,False -1,11,2011-08-12,23696.66,90.76,3.638,,,,,,215.6057878,7.962,False -1,11,2011-08-19,18661.68,89.94,3.554,,,,,,215.6693107,7.962,False -1,11,2011-08-26,19767.53,87.96,3.523,,,,,,215.7332258,7.962,False -1,11,2011-09-02,20626.08,87.83,3.533,,,,,,215.7971409,7.962,False -1,11,2011-09-09,20208.4,76.0,3.546,,,,,,215.861056,7.962,True -1,11,2011-09-16,19000.25,79.94,3.526,,,,,,216.0410526,7.962,False -1,11,2011-09-23,17228.02,75.8,3.467,,,,,,216.3758246,7.962,False -1,11,2011-09-30,18094.24,79.69,3.355,,,,,,216.7105965,7.962,False -1,11,2011-10-07,21646.32,69.31,3.285,,,,,,217.0453684,7.866,False -1,11,2011-10-14,19513.63,71.74,3.274,,,,,,217.3552733,7.866,False -1,11,2011-10-21,22029.81,63.71,3.353,,,,,,217.5159762,7.866,False -1,11,2011-10-28,20051.11,66.57,3.372,,,,,,217.6766791,7.866,False -1,11,2011-11-04,27469.93,54.98,3.332,,,,,,217.837382,7.866,False -1,11,2011-11-11,23541.72,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,11,2011-11-18,21412.74,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,11,2011-11-25,28315.7,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,11,2011-12-02,33129.25,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,11,2011-12-09,38807.31,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,11,2011-12-16,27918.08,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,11,2011-12-23,31435.36,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,11,2011-12-30,24030.39,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,11,2012-01-06,25666.34,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,11,2012-01-13,24493.4,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,11,2012-01-20,20707.62,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,11,2012-01-27,17860.35,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,11,2012-02-03,22429.17,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,11,2012-02-10,25933.04,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,11,2012-02-17,26269.87,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,11,2012-02-24,21750.64,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,11,2012-03-02,23286.46,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,11,2012-03-09,23169.16,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,11,2012-03-16,24841.76,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,11,2012-03-23,24350.67,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,11,2012-03-30,25231.25,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,11,2012-04-06,28971.93,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,11,2012-04-13,21874.45,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,11,2012-04-20,21787.83,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,11,2012-04-27,20710.01,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,11,2012-05-04,31670.38,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,11,2012-05-11,28842.32,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,11,2012-05-18,23346.03,70.33,3.63,6154.14,,45.11,1675.49,5508.18,221.742674,7.143,False -1,11,2012-05-25,26925.54,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,11,2012-06-01,32406.68,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,11,2012-06-08,35861.22,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,11,2012-06-15,27802.84,79.35,3.393,5621.99,109.6,0.25,2420.28,3083.26,221.7626421,7.143,False -1,11,2012-06-22,26407.67,78.39,3.346,8624.56,171.25,3.05,2524.07,7063.68,221.8030211,7.143,False -1,11,2012-06-29,44553.45,84.88,3.286,3965.73,161.6,,435.99,4212.97,221.8434,7.143,False -1,11,2012-07-06,36266.25,81.57,3.227,12218.76,94.4,192.83,4066.01,6149.04,221.8837789,6.908,False -1,11,2012-07-13,25922.59,77.12,3.256,7218.13,45.2,36.24,3909.38,2596.37,221.9241579,6.908,False -1,11,2012-07-20,26026.46,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,11,2012-07-27,33443.23,82.66,3.407,7146.9,389.02,1.59,10267.54,4325.19,221.9412954,6.908,False -1,11,2012-08-03,27759.99,86.11,3.417,27584.78,119.98,30.23,12007.04,4661.71,221.9498642,6.908,False -1,11,2012-08-10,24145.93,85.05,3.494,11436.22,245.0,6.85,6964.26,4836.22,221.9584329,6.908,False -1,11,2012-08-17,20281.68,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,11,2012-08-24,20462.68,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,11,2012-08-31,21103.42,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,11,2012-09-07,23338.99,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,11,2012-09-14,17027.47,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,11,2012-09-21,18161.43,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,11,2012-09-28,17242.78,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,11,2012-10-05,22374.18,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,11,2012-10-12,21857.09,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,11,2012-10-19,18259.82,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,11,2012-10-26,22399.83,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,12,2010-02-05,8449.54,42.31,2.572,,,,,,211.0963582,8.106,False -1,12,2010-02-12,8654.07,38.51,2.548,,,,,,211.2421698,8.106,True -1,12,2010-02-19,9165.98,39.93,2.514,,,,,,211.2891429,8.106,False -1,12,2010-02-26,9015.37,46.63,2.561,,,,,,211.3196429,8.106,False -1,12,2010-03-05,10239.06,46.5,2.625,,,,,,211.3501429,8.106,False -1,12,2010-03-12,12386.15,57.79,2.667,,,,,,211.3806429,8.106,False -1,12,2010-03-19,12917.55,54.58,2.72,,,,,,211.215635,8.106,False -1,12,2010-03-26,11865.53,51.45,2.732,,,,,,211.0180424,8.106,False -1,12,2010-04-02,12033.5,62.27,2.719,,,,,,210.8204499,7.808,False -1,12,2010-04-09,10109.0,65.86,2.77,,,,,,210.6228574,7.808,False -1,12,2010-04-16,11187.99,66.32,2.808,,,,,,210.4887,7.808,False -1,12,2010-04-23,11556.42,64.84,2.795,,,,,,210.4391228,7.808,False -1,12,2010-04-30,10651.84,67.41,2.78,,,,,,210.3895456,7.808,False -1,12,2010-05-07,12761.39,72.55,2.835,,,,,,210.3399684,7.808,False -1,12,2010-05-14,9540.54,74.78,2.854,,,,,,210.3374261,7.808,False -1,12,2010-05-21,12235.62,76.44,2.826,,,,,,210.6170934,7.808,False -1,12,2010-05-28,11876.34,80.44,2.759,,,,,,210.8967606,7.808,False -1,12,2010-06-04,13358.92,80.69,2.705,,,,,,211.1764278,7.808,False -1,12,2010-06-11,10889.4,80.43,2.668,,,,,,211.4560951,7.808,False -1,12,2010-06-18,11629.41,84.11,2.637,,,,,,211.4537719,7.808,False -1,12,2010-06-25,10562.29,84.34,2.653,,,,,,211.3386526,7.808,False -1,12,2010-07-02,10720.79,80.91,2.669,,,,,,211.2235333,7.787,False -1,12,2010-07-09,11287.52,80.48,2.642,,,,,,211.108414,7.787,False -1,12,2010-07-16,10239.51,83.15,2.623,,,,,,211.1003854,7.787,False -1,12,2010-07-23,11743.8,83.36,2.608,,,,,,211.2351443,7.787,False -1,12,2010-07-30,11634.37,81.84,2.64,,,,,,211.3699032,7.787,False -1,12,2010-08-06,12887.52,87.16,2.627,,,,,,211.5046621,7.787,False -1,12,2010-08-13,13294.0,87.0,2.692,,,,,,211.6394211,7.787,False -1,12,2010-08-20,10119.6,86.65,2.664,,,,,,211.6033633,7.787,False -1,12,2010-08-27,9844.07,85.22,2.619,,,,,,211.5673056,7.787,False -1,12,2010-09-03,11239.43,81.21,2.577,,,,,,211.5312479,7.787,False -1,12,2010-09-10,10724.56,78.69,2.565,,,,,,211.4951902,7.787,True -1,12,2010-09-17,9974.03,82.11,2.582,,,,,,211.5224596,7.787,False -1,12,2010-09-24,9705.47,80.94,2.624,,,,,,211.5972246,7.787,False -1,12,2010-10-01,9759.85,71.89,2.603,,,,,,211.6719895,7.838,False -1,12,2010-10-08,11883.66,63.93,2.633,,,,,,211.7467544,7.838,False -1,12,2010-10-15,11031.93,67.18,2.72,,,,,,211.8137436,7.838,False -1,12,2010-10-22,11604.42,69.86,2.725,,,,,,211.8612937,7.838,False -1,12,2010-10-29,9128.2,69.64,2.716,,,,,,211.9088438,7.838,False -1,12,2010-11-05,9345.99,58.74,2.689,,,,,,211.9563939,7.838,False -1,12,2010-11-12,11313.89,59.61,2.728,,,,,,212.003944,7.838,False -1,12,2010-11-19,7984.58,51.41,2.771,,,,,,211.8896737,7.838,False -1,12,2010-11-26,9619.81,64.52,2.735,,,,,,211.7484333,7.838,True -1,12,2010-12-03,7943.22,49.27,2.708,,,,,,211.607193,7.838,False -1,12,2010-12-10,7204.15,46.33,2.843,,,,,,211.4659526,7.838,False -1,12,2010-12-17,7231.92,49.84,2.869,,,,,,211.4053124,7.838,False -1,12,2010-12-24,7324.7,52.33,2.886,,,,,,211.4051222,7.838,False -1,12,2010-12-31,6912.95,48.43,2.943,,,,,,211.4049321,7.838,True -1,12,2011-01-07,8022.82,48.27,2.976,,,,,,211.4047419,7.742,False -1,12,2011-01-14,6639.08,35.4,2.983,,,,,,211.4574109,7.742,False -1,12,2011-01-21,6605.12,44.04,3.016,,,,,,211.8272343,7.742,False -1,12,2011-01-28,7786.87,43.83,3.01,,,,,,212.1970577,7.742,False -1,12,2011-02-04,8254.27,42.27,2.989,,,,,,212.5668812,7.742,False -1,12,2011-02-11,7642.11,36.39,3.022,,,,,,212.9367046,7.742,True -1,12,2011-02-18,11484.78,57.36,3.045,,,,,,213.2478853,7.742,False -1,12,2011-02-25,10804.61,62.9,3.065,,,,,,213.535609,7.742,False -1,12,2011-03-04,12618.52,59.58,3.288,,,,,,213.8233327,7.742,False -1,12,2011-03-11,11762.08,53.56,3.459,,,,,,214.1110564,7.742,False -1,12,2011-03-18,15560.17,62.76,3.488,,,,,,214.3627114,7.742,False -1,12,2011-03-25,12222.77,69.97,3.473,,,,,,214.5999389,7.742,False -1,12,2011-04-01,11871.94,59.17,3.524,,,,,,214.8371664,7.682,False -1,12,2011-04-08,12543.92,67.84,3.622,,,,,,215.0743939,7.682,False -1,12,2011-04-15,12822.2,71.27,3.743,,,,,,215.2918561,7.682,False -1,12,2011-04-22,13447.09,72.99,3.807,,,,,,215.4599053,7.682,False -1,12,2011-04-29,9874.94,72.03,3.81,,,,,,215.6279544,7.682,False -1,12,2011-05-06,11747.79,64.61,3.906,,,,,,215.7960035,7.682,False -1,12,2011-05-13,12272.92,75.64,3.899,,,,,,215.9640526,7.682,False -1,12,2011-05-20,14387.22,67.63,3.907,,,,,,215.7339202,7.682,False -1,12,2011-05-27,11961.81,77.72,3.786,,,,,,215.5037878,7.682,False -1,12,2011-06-03,13346.63,83.0,3.699,,,,,,215.2736553,7.682,False -1,12,2011-06-10,12643.1,83.13,3.648,,,,,,215.0435229,7.682,False -1,12,2011-06-17,10327.88,86.41,3.637,,,,,,214.9980596,7.682,False -1,12,2011-06-24,10438.17,83.58,3.594,,,,,,215.0910982,7.682,False -1,12,2011-07-01,11414.72,85.55,3.524,,,,,,215.1841368,7.962,False -1,12,2011-07-08,12384.1,85.83,3.48,,,,,,215.2771754,7.962,False -1,12,2011-07-15,10046.0,88.54,3.575,,,,,,215.3611087,7.962,False -1,12,2011-07-22,11455.24,85.77,3.651,,,,,,215.4222784,7.962,False -1,12,2011-07-29,11641.86,86.83,3.682,,,,,,215.4834482,7.962,False -1,12,2011-08-05,10145.97,91.65,3.684,,,,,,215.544618,7.962,False -1,12,2011-08-12,11581.03,90.76,3.638,,,,,,215.6057878,7.962,False -1,12,2011-08-19,10094.04,89.94,3.554,,,,,,215.6693107,7.962,False -1,12,2011-08-26,8594.52,87.96,3.523,,,,,,215.7332258,7.962,False -1,12,2011-09-02,10325.4,87.83,3.533,,,,,,215.7971409,7.962,False -1,12,2011-09-09,10927.54,76.0,3.546,,,,,,215.861056,7.962,True -1,12,2011-09-16,10392.19,79.94,3.526,,,,,,216.0410526,7.962,False -1,12,2011-09-23,9501.54,75.8,3.467,,,,,,216.3758246,7.962,False -1,12,2011-09-30,7457.24,79.69,3.355,,,,,,216.7105965,7.962,False -1,12,2011-10-07,11240.29,69.31,3.285,,,,,,217.0453684,7.866,False -1,12,2011-10-14,12223.55,71.74,3.274,,,,,,217.3552733,7.866,False -1,12,2011-10-21,11380.28,63.71,3.353,,,,,,217.5159762,7.866,False -1,12,2011-10-28,10418.23,66.57,3.372,,,,,,217.6766791,7.866,False -1,12,2011-11-04,9964.78,54.98,3.332,,,,,,217.837382,7.866,False -1,12,2011-11-11,10216.64,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,12,2011-11-18,9872.05,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,12,2011-11-25,7816.44,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,12,2011-12-02,7587.6,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,12,2011-12-09,8014.5,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,12,2011-12-16,7784.82,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,12,2011-12-23,8311.17,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,12,2011-12-30,7699.0,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,12,2012-01-06,7634.97,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,12,2012-01-13,8111.01,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,12,2012-01-20,9296.13,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,12,2012-01-27,8229.77,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,12,2012-02-03,9612.87,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,12,2012-02-10,9587.35,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,12,2012-02-17,9262.33,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,12,2012-02-24,11284.27,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,12,2012-03-02,11994.48,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,12,2012-03-09,11947.03,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,12,2012-03-16,12178.8,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,12,2012-03-23,11448.84,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,12,2012-03-30,12109.21,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,12,2012-04-06,10747.37,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,12,2012-04-13,10565.39,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,12,2012-04-20,11730.26,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,12,2012-04-27,11746.83,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,12,2012-05-04,12338.08,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,12,2012-05-11,11420.63,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,12,2012-05-18,10199.01,70.33,3.63,6154.14,,45.11,1675.49,5508.18,221.742674,7.143,False -1,12,2012-05-25,12748.13,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,12,2012-06-01,11542.81,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,12,2012-06-08,10742.68,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,12,2012-06-15,11177.52,79.35,3.393,5621.99,109.6,0.25,2420.28,3083.26,221.7626421,7.143,False -1,12,2012-06-22,9606.33,78.39,3.346,8624.56,171.25,3.05,2524.07,7063.68,221.8030211,7.143,False -1,12,2012-06-29,11816.35,84.88,3.286,3965.73,161.6,,435.99,4212.97,221.8434,7.143,False -1,12,2012-07-06,13887.61,81.57,3.227,12218.76,94.4,192.83,4066.01,6149.04,221.8837789,6.908,False -1,12,2012-07-13,9318.1,77.12,3.256,7218.13,45.2,36.24,3909.38,2596.37,221.9241579,6.908,False -1,12,2012-07-20,12565.06,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,12,2012-07-27,11109.25,82.66,3.407,7146.9,389.02,1.59,10267.54,4325.19,221.9412954,6.908,False -1,12,2012-08-03,11298.13,86.11,3.417,27584.78,119.98,30.23,12007.04,4661.71,221.9498642,6.908,False -1,12,2012-08-10,10605.66,85.05,3.494,11436.22,245.0,6.85,6964.26,4836.22,221.9584329,6.908,False -1,12,2012-08-17,11447.03,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,12,2012-08-24,10723.59,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,12,2012-08-31,10591.46,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,12,2012-09-07,12566.45,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,12,2012-09-14,10484.08,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,12,2012-09-21,9448.14,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,12,2012-09-28,11013.77,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,12,2012-10-05,10037.09,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,12,2012-10-12,8983.82,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,12,2012-10-19,10830.48,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,12,2012-10-26,8658.41,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,13,2010-02-05,41969.29,42.31,2.572,,,,,,211.0963582,8.106,False -1,13,2010-02-12,36476.4,38.51,2.548,,,,,,211.2421698,8.106,True -1,13,2010-02-19,37857.68,39.93,2.514,,,,,,211.2891429,8.106,False -1,13,2010-02-26,37467.32,46.63,2.561,,,,,,211.3196429,8.106,False -1,13,2010-03-05,40423.95,46.5,2.625,,,,,,211.3501429,8.106,False -1,13,2010-03-12,35833.07,57.79,2.667,,,,,,211.3806429,8.106,False -1,13,2010-03-19,36807.21,54.58,2.72,,,,,,211.215635,8.106,False -1,13,2010-03-26,35431.73,51.45,2.732,,,,,,211.0180424,8.106,False -1,13,2010-04-02,38104.53,62.27,2.719,,,,,,210.8204499,7.808,False -1,13,2010-04-09,37638.44,65.86,2.77,,,,,,210.6228574,7.808,False -1,13,2010-04-16,36663.26,66.32,2.808,,,,,,210.4887,7.808,False -1,13,2010-04-23,36058.1,64.84,2.795,,,,,,210.4391228,7.808,False -1,13,2010-04-30,36717.2,67.41,2.78,,,,,,210.3895456,7.808,False -1,13,2010-05-07,40113.4,72.55,2.835,,,,,,210.3399684,7.808,False -1,13,2010-05-14,36499.93,74.78,2.854,,,,,,210.3374261,7.808,False -1,13,2010-05-21,38569.83,76.44,2.826,,,,,,210.6170934,7.808,False -1,13,2010-05-28,38347.52,80.44,2.759,,,,,,210.8967606,7.808,False -1,13,2010-06-04,41388.81,80.69,2.705,,,,,,211.1764278,7.808,False -1,13,2010-06-11,39657.1,80.43,2.668,,,,,,211.4560951,7.808,False -1,13,2010-06-18,39165.29,84.11,2.637,,,,,,211.4537719,7.808,False -1,13,2010-06-25,38697.24,84.34,2.653,,,,,,211.3386526,7.808,False -1,13,2010-07-02,41214.94,80.91,2.669,,,,,,211.2235333,7.787,False -1,13,2010-07-09,41056.4,80.48,2.642,,,,,,211.108414,7.787,False -1,13,2010-07-16,40150.0,83.15,2.623,,,,,,211.1003854,7.787,False -1,13,2010-07-23,40552.37,83.36,2.608,,,,,,211.2351443,7.787,False -1,13,2010-07-30,38018.99,81.84,2.64,,,,,,211.3699032,7.787,False -1,13,2010-08-06,42038.03,87.16,2.627,,,,,,211.5046621,7.787,False -1,13,2010-08-13,37869.12,87.0,2.692,,,,,,211.6394211,7.787,False -1,13,2010-08-20,41509.62,86.65,2.664,,,,,,211.6033633,7.787,False -1,13,2010-08-27,41175.86,85.22,2.619,,,,,,211.5673056,7.787,False -1,13,2010-09-03,44863.15,81.21,2.577,,,,,,211.5312479,7.787,False -1,13,2010-09-10,39525.93,78.69,2.565,,,,,,211.4951902,7.787,True -1,13,2010-09-17,38416.22,82.11,2.582,,,,,,211.5224596,7.787,False -1,13,2010-09-24,37293.43,80.94,2.624,,,,,,211.5972246,7.787,False -1,13,2010-10-01,40474.22,71.89,2.603,,,,,,211.6719895,7.838,False -1,13,2010-10-08,42139.25,63.93,2.633,,,,,,211.7467544,7.838,False -1,13,2010-10-15,38749.62,67.18,2.72,,,,,,211.8137436,7.838,False -1,13,2010-10-22,34712.4,69.86,2.725,,,,,,211.8612937,7.838,False -1,13,2010-10-29,37762.12,69.64,2.716,,,,,,211.9088438,7.838,False -1,13,2010-11-05,41085.66,58.74,2.689,,,,,,211.9563939,7.838,False -1,13,2010-11-12,36817.35,59.61,2.728,,,,,,212.003944,7.838,False -1,13,2010-11-19,38446.26,51.41,2.771,,,,,,211.8896737,7.838,False -1,13,2010-11-26,38371.99,64.52,2.735,,,,,,211.7484333,7.838,True -1,13,2010-12-03,36170.88,49.27,2.708,,,,,,211.607193,7.838,False -1,13,2010-12-10,34749.11,46.33,2.843,,,,,,211.4659526,7.838,False -1,13,2010-12-17,35237.93,49.84,2.869,,,,,,211.4053124,7.838,False -1,13,2010-12-24,37099.47,52.33,2.886,,,,,,211.4051222,7.838,False -1,13,2010-12-31,34081.52,48.43,2.943,,,,,,211.4049321,7.838,True -1,13,2011-01-07,39764.56,48.27,2.976,,,,,,211.4047419,7.742,False -1,13,2011-01-14,33668.55,35.4,2.983,,,,,,211.4574109,7.742,False -1,13,2011-01-21,35961.99,44.04,3.016,,,,,,211.8272343,7.742,False -1,13,2011-01-28,36321.69,43.83,3.01,,,,,,212.1970577,7.742,False -1,13,2011-02-04,38065.42,42.27,2.989,,,,,,212.5668812,7.742,False -1,13,2011-02-11,36883.13,36.39,3.022,,,,,,212.9367046,7.742,True -1,13,2011-02-18,37604.79,57.36,3.045,,,,,,213.2478853,7.742,False -1,13,2011-02-25,37838.4,62.9,3.065,,,,,,213.535609,7.742,False -1,13,2011-03-04,42277.37,59.58,3.288,,,,,,213.8233327,7.742,False -1,13,2011-03-11,37577.97,53.56,3.459,,,,,,214.1110564,7.742,False -1,13,2011-03-18,36930.48,62.76,3.488,,,,,,214.3627114,7.742,False -1,13,2011-03-25,36745.46,69.97,3.473,,,,,,214.5999389,7.742,False -1,13,2011-04-01,37630.13,59.17,3.524,,,,,,214.8371664,7.682,False -1,13,2011-04-08,38076.86,67.84,3.622,,,,,,215.0743939,7.682,False -1,13,2011-04-15,35263.45,71.27,3.743,,,,,,215.2918561,7.682,False -1,13,2011-04-22,35464.71,72.99,3.807,,,,,,215.4599053,7.682,False -1,13,2011-04-29,34311.69,72.03,3.81,,,,,,215.6279544,7.682,False -1,13,2011-05-06,40581.52,64.61,3.906,,,,,,215.7960035,7.682,False -1,13,2011-05-13,35378.71,75.64,3.899,,,,,,215.9640526,7.682,False -1,13,2011-05-20,35816.48,67.63,3.907,,,,,,215.7339202,7.682,False -1,13,2011-05-27,36203.13,77.72,3.786,,,,,,215.5037878,7.682,False -1,13,2011-06-03,39884.82,83.0,3.699,,,,,,215.2736553,7.682,False -1,13,2011-06-10,38080.39,83.13,3.648,,,,,,215.0435229,7.682,False -1,13,2011-06-17,39020.06,86.41,3.637,,,,,,214.9980596,7.682,False -1,13,2011-06-24,37316.12,83.58,3.594,,,,,,215.0910982,7.682,False -1,13,2011-07-01,37414.14,85.55,3.524,,,,,,215.1841368,7.962,False -1,13,2011-07-08,38193.09,85.83,3.48,,,,,,215.2771754,7.962,False -1,13,2011-07-15,36966.32,88.54,3.575,,,,,,215.3611087,7.962,False -1,13,2011-07-22,37990.15,85.77,3.651,,,,,,215.4222784,7.962,False -1,13,2011-07-29,34910.1,86.83,3.682,,,,,,215.4834482,7.962,False -1,13,2011-08-05,42542.66,91.65,3.684,,,,,,215.544618,7.962,False -1,13,2011-08-12,37593.97,90.76,3.638,,,,,,215.6057878,7.962,False -1,13,2011-08-19,38533.7,89.94,3.554,,,,,,215.6693107,7.962,False -1,13,2011-08-26,38727.3,87.96,3.523,,,,,,215.7332258,7.962,False -1,13,2011-09-02,42713.81,87.83,3.533,,,,,,215.7971409,7.962,False -1,13,2011-09-09,38045.63,76.0,3.546,,,,,,215.861056,7.962,True -1,13,2011-09-16,38382.65,79.94,3.526,,,,,,216.0410526,7.962,False -1,13,2011-09-23,37645.66,75.8,3.467,,,,,,216.3758246,7.962,False -1,13,2011-09-30,37928.28,79.69,3.355,,,,,,216.7105965,7.962,False -1,13,2011-10-07,41151.28,69.31,3.285,,,,,,217.0453684,7.866,False -1,13,2011-10-14,37531.43,71.74,3.274,,,,,,217.3552733,7.866,False -1,13,2011-10-21,38272.21,63.71,3.353,,,,,,217.5159762,7.866,False -1,13,2011-10-28,37117.02,66.57,3.372,,,,,,217.6766791,7.866,False -1,13,2011-11-04,41907.62,54.98,3.332,,,,,,217.837382,7.866,False -1,13,2011-11-11,37255.89,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,13,2011-11-18,37077.82,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,13,2011-11-25,38625.48,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,13,2011-12-02,37507.93,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,13,2011-12-09,36404.7,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,13,2011-12-16,32782.17,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,13,2011-12-23,36950.91,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,13,2011-12-30,32871.95,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,13,2012-01-06,41411.4,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,13,2012-01-13,38000.25,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,13,2012-01-20,37433.66,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,13,2012-01-27,34312.26,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,13,2012-02-03,43478.58,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,13,2012-02-10,43041.97,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,13,2012-02-17,38622.92,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,13,2012-02-24,40079.43,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,13,2012-03-02,44565.32,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,13,2012-03-09,40001.72,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,13,2012-03-16,38322.83,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,13,2012-03-23,37801.64,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,13,2012-03-30,38696.88,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,13,2012-04-06,44270.3,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,13,2012-04-13,39099.61,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,13,2012-04-20,39499.85,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,13,2012-04-27,39077.84,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,13,2012-05-04,43561.17,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,13,2012-05-11,38895.18,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,13,2012-05-18,37857.88,70.33,3.63,6154.14,,45.11,1675.49,5508.18,221.742674,7.143,False -1,13,2012-05-25,38541.76,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,13,2012-06-01,41462.8,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,13,2012-06-08,42304.47,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,13,2012-06-15,39024.74,79.35,3.393,5621.99,109.6,0.25,2420.28,3083.26,221.7626421,7.143,False -1,13,2012-06-22,38945.0,78.39,3.346,8624.56,171.25,3.05,2524.07,7063.68,221.8030211,7.143,False -1,13,2012-06-29,40099.49,84.88,3.286,3965.73,161.6,,435.99,4212.97,221.8434,7.143,False -1,13,2012-07-06,43326.92,81.57,3.227,12218.76,94.4,192.83,4066.01,6149.04,221.8837789,6.908,False -1,13,2012-07-13,39276.05,77.12,3.256,7218.13,45.2,36.24,3909.38,2596.37,221.9241579,6.908,False -1,13,2012-07-20,39396.59,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,13,2012-07-27,37423.21,82.66,3.407,7146.9,389.02,1.59,10267.54,4325.19,221.9412954,6.908,False -1,13,2012-08-03,44708.45,86.11,3.417,27584.78,119.98,30.23,12007.04,4661.71,221.9498642,6.908,False -1,13,2012-08-10,42241.23,85.05,3.494,11436.22,245.0,6.85,6964.26,4836.22,221.9584329,6.908,False -1,13,2012-08-17,41658.4,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,13,2012-08-24,39231.62,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,13,2012-08-31,40940.78,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,13,2012-09-07,44373.19,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,13,2012-09-14,38759.47,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,13,2012-09-21,39746.87,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,13,2012-09-28,39793.41,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,13,2012-10-05,43746.89,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,13,2012-10-12,38015.36,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,13,2012-10-19,38341.15,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,13,2012-10-26,38512.48,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,14,2010-02-05,19466.91,42.31,2.572,,,,,,211.0963582,8.106,False -1,14,2010-02-12,18129.02,38.51,2.548,,,,,,211.2421698,8.106,True -1,14,2010-02-19,17491.36,39.93,2.514,,,,,,211.2891429,8.106,False -1,14,2010-02-26,16118.26,46.63,2.561,,,,,,211.3196429,8.106,False -1,14,2010-03-05,18268.78,46.5,2.625,,,,,,211.3501429,8.106,False -1,14,2010-03-12,15331.75,57.79,2.667,,,,,,211.3806429,8.106,False -1,14,2010-03-19,12738.78,54.58,2.72,,,,,,211.215635,8.106,False -1,14,2010-03-26,12832.47,51.45,2.732,,,,,,211.0180424,8.106,False -1,14,2010-04-02,14333.75,62.27,2.719,,,,,,210.8204499,7.808,False -1,14,2010-04-09,12874.07,65.86,2.77,,,,,,210.6228574,7.808,False -1,14,2010-04-16,12309.14,66.32,2.808,,,,,,210.4887,7.808,False -1,14,2010-04-23,12749.37,64.84,2.795,,,,,,210.4391228,7.808,False -1,14,2010-04-30,12172.32,67.41,2.78,,,,,,210.3895456,7.808,False -1,14,2010-05-07,14460.84,72.55,2.835,,,,,,210.3399684,7.808,False -1,14,2010-05-14,14678.22,74.78,2.854,,,,,,210.3374261,7.808,False -1,14,2010-05-21,11480.15,76.44,2.826,,,,,,210.6170934,7.808,False -1,14,2010-05-28,12218.11,80.44,2.759,,,,,,210.8967606,7.808,False -1,14,2010-06-04,14491.35,80.69,2.705,,,,,,211.1764278,7.808,False -1,14,2010-06-11,13516.74,80.43,2.668,,,,,,211.4560951,7.808,False -1,14,2010-06-18,12693.5,84.11,2.637,,,,,,211.4537719,7.808,False -1,14,2010-06-25,12979.99,84.34,2.653,,,,,,211.3386526,7.808,False -1,14,2010-07-02,13494.79,80.91,2.669,,,,,,211.2235333,7.787,False -1,14,2010-07-09,15032.03,80.48,2.642,,,,,,211.108414,7.787,False -1,14,2010-07-16,13550.19,83.15,2.623,,,,,,211.1003854,7.787,False -1,14,2010-07-23,11945.81,83.36,2.608,,,,,,211.2351443,7.787,False -1,14,2010-07-30,12421.92,81.84,2.64,,,,,,211.3699032,7.787,False -1,14,2010-08-06,14404.15,87.16,2.627,,,,,,211.5046621,7.787,False -1,14,2010-08-13,13579.21,87.0,2.692,,,,,,211.6394211,7.787,False -1,14,2010-08-20,13260.23,86.65,2.664,,,,,,211.6033633,7.787,False -1,14,2010-08-27,13387.21,85.22,2.619,,,,,,211.5673056,7.787,False -1,14,2010-09-03,13995.39,81.21,2.577,,,,,,211.5312479,7.787,False -1,14,2010-09-10,12884.22,78.69,2.565,,,,,,211.4951902,7.787,True -1,14,2010-09-17,13783.27,82.11,2.582,,,,,,211.5224596,7.787,False -1,14,2010-09-24,11847.72,80.94,2.624,,,,,,211.5972246,7.787,False -1,14,2010-10-01,12943.86,71.89,2.603,,,,,,211.6719895,7.838,False -1,14,2010-10-08,12108.86,63.93,2.633,,,,,,211.7467544,7.838,False -1,14,2010-10-15,13215.64,67.18,2.72,,,,,,211.8137436,7.838,False -1,14,2010-10-22,11895.44,69.86,2.725,,,,,,211.8612937,7.838,False -1,14,2010-10-29,11955.77,69.64,2.716,,,,,,211.9088438,7.838,False -1,14,2010-11-05,14092.03,58.74,2.689,,,,,,211.9563939,7.838,False -1,14,2010-11-12,13837.16,59.61,2.728,,,,,,212.003944,7.838,False -1,14,2010-11-19,19788.98,51.41,2.771,,,,,,211.8896737,7.838,False -1,14,2010-11-26,38256.98,64.52,2.735,,,,,,211.7484333,7.838,True -1,14,2010-12-03,17685.93,49.27,2.708,,,,,,211.607193,7.838,False -1,14,2010-12-10,19587.66,46.33,2.843,,,,,,211.4659526,7.838,False -1,14,2010-12-17,28642.28,49.84,2.869,,,,,,211.4053124,7.838,False -1,14,2010-12-24,47983.72,52.33,2.886,,,,,,211.4051222,7.838,False -1,14,2010-12-31,21835.25,48.43,2.943,,,,,,211.4049321,7.838,True -1,14,2011-01-07,17744.78,48.27,2.976,,,,,,211.4047419,7.742,False -1,14,2011-01-14,13608.44,35.4,2.983,,,,,,211.4574109,7.742,False -1,14,2011-01-21,12889.88,44.04,3.016,,,,,,211.8272343,7.742,False -1,14,2011-01-28,11687.25,43.83,3.01,,,,,,212.1970577,7.742,False -1,14,2011-02-04,14051.43,42.27,2.989,,,,,,212.5668812,7.742,False -1,14,2011-02-11,15647.59,36.39,3.022,,,,,,212.9367046,7.742,True -1,14,2011-02-18,17304.81,57.36,3.045,,,,,,213.2478853,7.742,False -1,14,2011-02-25,15411.12,62.9,3.065,,,,,,213.535609,7.742,False -1,14,2011-03-04,17281.12,59.58,3.288,,,,,,213.8233327,7.742,False -1,14,2011-03-11,14490.48,53.56,3.459,,,,,,214.1110564,7.742,False -1,14,2011-03-18,14287.28,62.76,3.488,,,,,,214.3627114,7.742,False -1,14,2011-03-25,14006.9,69.97,3.473,,,,,,214.5999389,7.742,False -1,14,2011-04-01,13136.1,59.17,3.524,,,,,,214.8371664,7.682,False -1,14,2011-04-08,14454.19,67.84,3.622,,,,,,215.0743939,7.682,False -1,14,2011-04-15,12151.4,71.27,3.743,,,,,,215.2918561,7.682,False -1,14,2011-04-22,12478.19,72.99,3.807,,,,,,215.4599053,7.682,False -1,14,2011-04-29,13429.28,72.03,3.81,,,,,,215.6279544,7.682,False -1,14,2011-05-06,15820.88,64.61,3.906,,,,,,215.7960035,7.682,False -1,14,2011-05-13,15385.02,75.64,3.899,,,,,,215.9640526,7.682,False -1,14,2011-05-20,13166.43,67.63,3.907,,,,,,215.7339202,7.682,False -1,14,2011-05-27,12746.66,77.72,3.786,,,,,,215.5037878,7.682,False -1,14,2011-06-03,13056.1,83.0,3.699,,,,,,215.2736553,7.682,False -1,14,2011-06-10,11795.34,83.13,3.648,,,,,,215.0435229,7.682,False -1,14,2011-06-17,12884.03,86.41,3.637,,,,,,214.9980596,7.682,False -1,14,2011-06-24,13580.61,83.58,3.594,,,,,,215.0910982,7.682,False -1,14,2011-07-01,13459.55,85.55,3.524,,,,,,215.1841368,7.962,False -1,14,2011-07-08,11578.97,85.83,3.48,,,,,,215.2771754,7.962,False -1,14,2011-07-15,11404.37,88.54,3.575,,,,,,215.3611087,7.962,False -1,14,2011-07-22,11681.04,85.77,3.651,,,,,,215.4222784,7.962,False -1,14,2011-07-29,9918.05,86.83,3.682,,,,,,215.4834482,7.962,False -1,14,2011-08-05,13330.04,91.65,3.684,,,,,,215.544618,7.962,False -1,14,2011-08-12,12652.58,90.76,3.638,,,,,,215.6057878,7.962,False -1,14,2011-08-19,11724.24,89.94,3.554,,,,,,215.6693107,7.962,False -1,14,2011-08-26,14364.42,87.96,3.523,,,,,,215.7332258,7.962,False -1,14,2011-09-02,12708.18,87.83,3.533,,,,,,215.7971409,7.962,False -1,14,2011-09-09,13550.53,76.0,3.546,,,,,,215.861056,7.962,True -1,14,2011-09-16,13166.76,79.94,3.526,,,,,,216.0410526,7.962,False -1,14,2011-09-23,11558.22,75.8,3.467,,,,,,216.3758246,7.962,False -1,14,2011-09-30,14027.83,79.69,3.355,,,,,,216.7105965,7.962,False -1,14,2011-10-07,12766.52,69.31,3.285,,,,,,217.0453684,7.866,False -1,14,2011-10-14,13440.89,71.74,3.274,,,,,,217.3552733,7.866,False -1,14,2011-10-21,12476.8,63.71,3.353,,,,,,217.5159762,7.866,False -1,14,2011-10-28,13031.03,66.57,3.372,,,,,,217.6766791,7.866,False -1,14,2011-11-04,13634.48,54.98,3.332,,,,,,217.837382,7.866,False -1,14,2011-11-11,14903.78,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,14,2011-11-18,17803.49,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,14,2011-11-25,39773.89,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,14,2011-12-02,18110.97,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,14,2011-12-09,23852.42,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,14,2011-12-16,28845.68,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,14,2011-12-23,46096.24,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,14,2011-12-30,25846.86,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,14,2012-01-06,14585.64,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,14,2012-01-13,14311.83,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,14,2012-01-20,12695.7,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,14,2012-01-27,12684.05,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,14,2012-02-03,15583.82,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,14,2012-02-10,18292.4,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,14,2012-02-17,21324.12,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,14,2012-02-24,18574.25,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,14,2012-03-02,19412.26,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,14,2012-03-09,16528.29,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,14,2012-03-16,12757.86,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,14,2012-03-23,12771.12,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,14,2012-03-30,14690.27,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,14,2012-04-06,15652.72,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,14,2012-04-13,14933.13,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,14,2012-04-20,13575.69,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,14,2012-04-27,14904.8,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,14,2012-05-04,16193.63,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,14,2012-05-11,15537.79,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,14,2012-05-18,16326.55,70.33,3.63,6154.14,,45.11,1675.49,5508.18,221.742674,7.143,False -1,14,2012-05-25,14186.59,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,14,2012-06-01,14903.87,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,14,2012-06-08,12858.85,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,14,2012-06-15,14117.36,79.35,3.393,5621.99,109.6,0.25,2420.28,3083.26,221.7626421,7.143,False -1,14,2012-06-22,13158.38,78.39,3.346,8624.56,171.25,3.05,2524.07,7063.68,221.8030211,7.143,False -1,14,2012-06-29,16958.84,84.88,3.286,3965.73,161.6,,435.99,4212.97,221.8434,7.143,False -1,14,2012-07-06,19019.04,81.57,3.227,12218.76,94.4,192.83,4066.01,6149.04,221.8837789,6.908,False -1,14,2012-07-13,14332.72,77.12,3.256,7218.13,45.2,36.24,3909.38,2596.37,221.9241579,6.908,False -1,14,2012-07-20,12083.33,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,14,2012-07-27,12706.52,82.66,3.407,7146.9,389.02,1.59,10267.54,4325.19,221.9412954,6.908,False -1,14,2012-08-03,13423.3,86.11,3.417,27584.78,119.98,30.23,12007.04,4661.71,221.9498642,6.908,False -1,14,2012-08-10,12434.69,85.05,3.494,11436.22,245.0,6.85,6964.26,4836.22,221.9584329,6.908,False -1,14,2012-08-17,12419.06,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,14,2012-08-24,11041.63,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,14,2012-08-31,12912.96,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,14,2012-09-07,13711.08,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,14,2012-09-14,11596.1,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,14,2012-09-21,12193.8,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,14,2012-09-28,12037.66,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,14,2012-10-05,14381.21,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,14,2012-10-12,11450.64,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,14,2012-10-19,12035.51,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,14,2012-10-26,11150.0,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,16,2010-02-05,10217.55,42.31,2.572,,,,,,211.0963582,8.106,False -1,16,2010-02-12,11873.89,38.51,2.548,,,,,,211.2421698,8.106,True -1,16,2010-02-19,13855.54,39.93,2.514,,,,,,211.2891429,8.106,False -1,16,2010-02-26,12881.02,46.63,2.561,,,,,,211.3196429,8.106,False -1,16,2010-03-05,17129.81,46.5,2.625,,,,,,211.3501429,8.106,False -1,16,2010-03-12,23766.82,57.79,2.667,,,,,,211.3806429,8.106,False -1,16,2010-03-19,41742.21,54.58,2.72,,,,,,211.215635,8.106,False -1,16,2010-03-26,26679.52,51.45,2.732,,,,,,211.0180424,8.106,False -1,16,2010-04-02,46060.69,62.27,2.719,,,,,,210.8204499,7.808,False -1,16,2010-04-09,52976.67,65.86,2.77,,,,,,210.6228574,7.808,False -1,16,2010-04-16,59543.22,66.32,2.808,,,,,,210.4887,7.808,False -1,16,2010-04-23,51604.72,64.84,2.795,,,,,,210.4391228,7.808,False -1,16,2010-04-30,48858.08,67.41,2.78,,,,,,210.3895456,7.808,False -1,16,2010-05-07,52933.2,72.55,2.835,,,,,,210.3399684,7.808,False -1,16,2010-05-14,44148.02,74.78,2.854,,,,,,210.3374261,7.808,False -1,16,2010-05-21,38638.64,76.44,2.826,,,,,,210.6170934,7.808,False -1,16,2010-05-28,45861.03,80.44,2.759,,,,,,210.8967606,7.808,False -1,16,2010-06-04,47485.63,80.69,2.705,,,,,,211.1764278,7.808,False -1,16,2010-06-11,31807.72,80.43,2.668,,,,,,211.4560951,7.808,False -1,16,2010-06-18,34603.43,84.11,2.637,,,,,,211.4537719,7.808,False -1,16,2010-06-25,34121.08,84.34,2.653,,,,,,211.3386526,7.808,False -1,16,2010-07-02,32420.4,80.91,2.669,,,,,,211.2235333,7.787,False -1,16,2010-07-09,35796.64,80.48,2.642,,,,,,211.108414,7.787,False -1,16,2010-07-16,29763.52,83.15,2.623,,,,,,211.1003854,7.787,False -1,16,2010-07-23,24642.3,83.36,2.608,,,,,,211.2351443,7.787,False -1,16,2010-07-30,22017.61,81.84,2.64,,,,,,211.3699032,7.787,False -1,16,2010-08-06,24218.72,87.16,2.627,,,,,,211.5046621,7.787,False -1,16,2010-08-13,23288.59,87.0,2.692,,,,,,211.6394211,7.787,False -1,16,2010-08-20,22837.21,86.65,2.664,,,,,,211.6033633,7.787,False -1,16,2010-08-27,19682.2,85.22,2.619,,,,,,211.5673056,7.787,False -1,16,2010-09-03,22888.26,81.21,2.577,,,,,,211.5312479,7.787,False -1,16,2010-09-10,22643.73,78.69,2.565,,,,,,211.4951902,7.787,True -1,16,2010-09-17,17672.01,82.11,2.582,,,,,,211.5224596,7.787,False -1,16,2010-09-24,14857.74,80.94,2.624,,,,,,211.5972246,7.787,False -1,16,2010-10-01,16248.15,71.89,2.603,,,,,,211.6719895,7.838,False -1,16,2010-10-08,11501.93,63.93,2.633,,,,,,211.7467544,7.838,False -1,16,2010-10-15,11526.6,67.18,2.72,,,,,,211.8137436,7.838,False -1,16,2010-10-22,8194.25,69.86,2.725,,,,,,211.8612937,7.838,False -1,16,2010-10-29,7683.76,69.64,2.716,,,,,,211.9088438,7.838,False -1,16,2010-11-05,6063.75,58.74,2.689,,,,,,211.9563939,7.838,False -1,16,2010-11-12,7370.53,59.61,2.728,,,,,,212.003944,7.838,False -1,16,2010-11-19,5276.21,51.41,2.771,,,,,,211.8896737,7.838,False -1,16,2010-11-26,9225.41,64.52,2.735,,,,,,211.7484333,7.838,True -1,16,2010-12-03,4716.26,49.27,2.708,,,,,,211.607193,7.838,False -1,16,2010-12-10,4919.99,46.33,2.843,,,,,,211.4659526,7.838,False -1,16,2010-12-17,5513.25,49.84,2.869,,,,,,211.4053124,7.838,False -1,16,2010-12-24,8612.24,52.33,2.886,,,,,,211.4051222,7.838,False -1,16,2010-12-31,4987.81,48.43,2.943,,,,,,211.4049321,7.838,True -1,16,2011-01-07,5324.47,48.27,2.976,,,,,,211.4047419,7.742,False -1,16,2011-01-14,5725.63,35.4,2.983,,,,,,211.4574109,7.742,False -1,16,2011-01-21,4594.95,44.04,3.016,,,,,,211.8272343,7.742,False -1,16,2011-01-28,6365.91,43.83,3.01,,,,,,212.1970577,7.742,False -1,16,2011-02-04,7875.98,42.27,2.989,,,,,,212.5668812,7.742,False -1,16,2011-02-11,9715.66,36.39,3.022,,,,,,212.9367046,7.742,True -1,16,2011-02-18,14819.04,57.36,3.045,,,,,,213.2478853,7.742,False -1,16,2011-02-25,23253.54,62.9,3.065,,,,,,213.535609,7.742,False -1,16,2011-03-04,28635.06,59.58,3.288,,,,,,213.8233327,7.742,False -1,16,2011-03-11,27388.55,53.56,3.459,,,,,,214.1110564,7.742,False -1,16,2011-03-18,42549.38,62.76,3.488,,,,,,214.3627114,7.742,False -1,16,2011-03-25,48217.85,69.97,3.473,,,,,,214.5999389,7.742,False -1,16,2011-04-01,42679.11,59.17,3.524,,,,,,214.8371664,7.682,False -1,16,2011-04-08,49433.2,67.84,3.622,,,,,,215.0743939,7.682,False -1,16,2011-04-15,48643.77,71.27,3.743,,,,,,215.2918561,7.682,False -1,16,2011-04-22,48934.3,72.99,3.807,,,,,,215.4599053,7.682,False -1,16,2011-04-29,40280.3,72.03,3.81,,,,,,215.6279544,7.682,False -1,16,2011-05-06,37972.19,64.61,3.906,,,,,,215.7960035,7.682,False -1,16,2011-05-13,40944.33,75.64,3.899,,,,,,215.9640526,7.682,False -1,16,2011-05-20,35861.13,67.63,3.907,,,,,,215.7339202,7.682,False -1,16,2011-05-27,38914.76,77.72,3.786,,,,,,215.5037878,7.682,False -1,16,2011-06-03,44919.99,83.0,3.699,,,,,,215.2736553,7.682,False -1,16,2011-06-10,38098.97,83.13,3.648,,,,,,215.0435229,7.682,False -1,16,2011-06-17,38282.75,86.41,3.637,,,,,,214.9980596,7.682,False -1,16,2011-06-24,31362.66,83.58,3.594,,,,,,215.0910982,7.682,False -1,16,2011-07-01,33435.46,85.55,3.524,,,,,,215.1841368,7.962,False -1,16,2011-07-08,32379.77,85.83,3.48,,,,,,215.2771754,7.962,False -1,16,2011-07-15,25134.4,88.54,3.575,,,,,,215.3611087,7.962,False -1,16,2011-07-22,20795.03,85.77,3.651,,,,,,215.4222784,7.962,False -1,16,2011-07-29,19681.62,86.83,3.682,,,,,,215.4834482,7.962,False -1,16,2011-08-05,21143.58,91.65,3.684,,,,,,215.544618,7.962,False -1,16,2011-08-12,17998.16,90.76,3.638,,,,,,215.6057878,7.962,False -1,16,2011-08-19,15998.18,89.94,3.554,,,,,,215.6693107,7.962,False -1,16,2011-08-26,11671.46,87.96,3.523,,,,,,215.7332258,7.962,False -1,16,2011-09-02,15288.9,87.83,3.533,,,,,,215.7971409,7.962,False -1,16,2011-09-09,17838.29,76.0,3.546,,,,,,215.861056,7.962,True -1,16,2011-09-16,13499.43,79.94,3.526,,,,,,216.0410526,7.962,False -1,16,2011-09-23,10893.91,75.8,3.467,,,,,,216.3758246,7.962,False -1,16,2011-09-30,11831.25,79.69,3.355,,,,,,216.7105965,7.962,False -1,16,2011-10-07,14309.01,69.31,3.285,,,,,,217.0453684,7.866,False -1,16,2011-10-14,10030.59,71.74,3.274,,,,,,217.3552733,7.866,False -1,16,2011-10-21,10366.98,63.71,3.353,,,,,,217.5159762,7.866,False -1,16,2011-10-28,7616.55,66.57,3.372,,,,,,217.6766791,7.866,False -1,16,2011-11-04,6560.94,54.98,3.332,,,,,,217.837382,7.866,False -1,16,2011-11-11,5913.03,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,16,2011-11-18,4643.82,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,16,2011-11-25,8400.69,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,16,2011-12-02,5715.31,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,16,2011-12-09,5024.36,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,16,2011-12-16,4613.92,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,16,2011-12-23,6233.78,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,16,2011-12-30,5052.77,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,16,2012-01-06,6258.08,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,16,2012-01-13,5894.86,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,16,2012-01-20,6400.8,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,16,2012-01-27,6108.82,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,16,2012-02-03,9873.73,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,16,2012-02-10,13389.35,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,16,2012-02-17,12648.11,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,16,2012-02-24,19874.3,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,16,2012-03-02,30451.14,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,16,2012-03-09,32633.81,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,16,2012-03-16,44960.02,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,16,2012-03-23,45184.22,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,16,2012-03-30,55275.59,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,16,2012-04-06,59512.97,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,16,2012-04-13,55347.73,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,16,2012-04-20,42816.54,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,16,2012-04-27,41926.36,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,16,2012-05-04,43970.7,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,16,2012-05-11,38885.33,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,16,2012-05-18,37505.0,70.33,3.63,6154.14,,45.11,1675.49,5508.18,221.742674,7.143,False -1,16,2012-05-25,42922.55,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,16,2012-06-01,45508.72,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,16,2012-06-08,34785.29,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,16,2012-06-15,32898.46,79.35,3.393,5621.99,109.6,0.25,2420.28,3083.26,221.7626421,7.143,False -1,16,2012-06-22,36362.45,78.39,3.346,8624.56,171.25,3.05,2524.07,7063.68,221.8030211,7.143,False -1,16,2012-06-29,37677.82,84.88,3.286,3965.73,161.6,,435.99,4212.97,221.8434,7.143,False -1,16,2012-07-06,42679.2,81.57,3.227,12218.76,94.4,192.83,4066.01,6149.04,221.8837789,6.908,False -1,16,2012-07-13,22880.3,77.12,3.256,7218.13,45.2,36.24,3909.38,2596.37,221.9241579,6.908,False -1,16,2012-07-20,24017.03,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,16,2012-07-27,23838.33,82.66,3.407,7146.9,389.02,1.59,10267.54,4325.19,221.9412954,6.908,False -1,16,2012-08-03,25418.49,86.11,3.417,27584.78,119.98,30.23,12007.04,4661.71,221.9498642,6.908,False -1,16,2012-08-10,21677.85,85.05,3.494,11436.22,245.0,6.85,6964.26,4836.22,221.9584329,6.908,False -1,16,2012-08-17,20035.26,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,16,2012-08-24,18393.12,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,16,2012-08-31,16797.62,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,16,2012-09-07,20473.94,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,16,2012-09-14,14646.37,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,16,2012-09-21,13415.51,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,16,2012-09-28,14734.64,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,16,2012-10-05,11320.41,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,16,2012-10-12,10525.66,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,16,2012-10-19,9518.43,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,16,2012-10-26,9934.63,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,17,2010-02-05,13223.76,42.31,2.572,,,,,,211.0963582,8.106,False -1,17,2010-02-12,13403.66,38.51,2.548,,,,,,211.2421698,8.106,True -1,17,2010-02-19,13485.61,39.93,2.514,,,,,,211.2891429,8.106,False -1,17,2010-02-26,10667.06,46.63,2.561,,,,,,211.3196429,8.106,False -1,17,2010-03-05,12657.65,46.5,2.625,,,,,,211.3501429,8.106,False -1,17,2010-03-12,12793.17,57.79,2.667,,,,,,211.3806429,8.106,False -1,17,2010-03-19,11097.8,54.58,2.72,,,,,,211.215635,8.106,False -1,17,2010-03-26,8900.01,51.45,2.732,,,,,,211.0180424,8.106,False -1,17,2010-04-02,9572.23,62.27,2.719,,,,,,210.8204499,7.808,False -1,17,2010-04-09,8159.34,65.86,2.77,,,,,,210.6228574,7.808,False -1,17,2010-04-16,7790.67,66.32,2.808,,,,,,210.4887,7.808,False -1,17,2010-04-23,8036.98,64.84,2.795,,,,,,210.4391228,7.808,False -1,17,2010-04-30,8769.42,67.41,2.78,,,,,,210.3895456,7.808,False -1,17,2010-05-07,9970.0,72.55,2.835,,,,,,210.3399684,7.808,False -1,17,2010-05-14,10266.86,74.78,2.854,,,,,,210.3374261,7.808,False -1,17,2010-05-21,9254.13,76.44,2.826,,,,,,210.6170934,7.808,False -1,17,2010-05-28,8644.05,80.44,2.759,,,,,,210.8967606,7.808,False -1,17,2010-06-04,9212.09,80.69,2.705,,,,,,211.1764278,7.808,False -1,17,2010-06-11,8846.82,80.43,2.668,,,,,,211.4560951,7.808,False -1,17,2010-06-18,8932.62,84.11,2.637,,,,,,211.4537719,7.808,False -1,17,2010-06-25,9407.16,84.34,2.653,,,,,,211.3386526,7.808,False -1,17,2010-07-02,9242.3,80.91,2.669,,,,,,211.2235333,7.787,False -1,17,2010-07-09,8324.41,80.48,2.642,,,,,,211.108414,7.787,False -1,17,2010-07-16,7492.79,83.15,2.623,,,,,,211.1003854,7.787,False -1,17,2010-07-23,8914.49,83.36,2.608,,,,,,211.2351443,7.787,False -1,17,2010-07-30,9384.75,81.84,2.64,,,,,,211.3699032,7.787,False -1,17,2010-08-06,9851.77,87.16,2.627,,,,,,211.5046621,7.787,False -1,17,2010-08-13,9661.1,87.0,2.692,,,,,,211.6394211,7.787,False -1,17,2010-08-20,10751.74,86.65,2.664,,,,,,211.6033633,7.787,False -1,17,2010-08-27,10036.31,85.22,2.619,,,,,,211.5673056,7.787,False -1,17,2010-09-03,10118.25,81.21,2.577,,,,,,211.5312479,7.787,False -1,17,2010-09-10,9408.87,78.69,2.565,,,,,,211.4951902,7.787,True -1,17,2010-09-17,8794.19,82.11,2.582,,,,,,211.5224596,7.787,False -1,17,2010-09-24,9687.73,80.94,2.624,,,,,,211.5972246,7.787,False -1,17,2010-10-01,8648.02,71.89,2.603,,,,,,211.6719895,7.838,False -1,17,2010-10-08,10195.94,63.93,2.633,,,,,,211.7467544,7.838,False -1,17,2010-10-15,8821.23,67.18,2.72,,,,,,211.8137436,7.838,False -1,17,2010-10-22,7898.35,69.86,2.725,,,,,,211.8612937,7.838,False -1,17,2010-10-29,8198.62,69.64,2.716,,,,,,211.9088438,7.838,False -1,17,2010-11-05,9250.94,58.74,2.689,,,,,,211.9563939,7.838,False -1,17,2010-11-12,8603.57,59.61,2.728,,,,,,212.003944,7.838,False -1,17,2010-11-19,10086.41,51.41,2.771,,,,,,211.8896737,7.838,False -1,17,2010-11-26,13337.59,64.52,2.735,,,,,,211.7484333,7.838,True -1,17,2010-12-03,11045.34,49.27,2.708,,,,,,211.607193,7.838,False -1,17,2010-12-10,11917.53,46.33,2.843,,,,,,211.4659526,7.838,False -1,17,2010-12-17,13487.5,49.84,2.869,,,,,,211.4053124,7.838,False -1,17,2010-12-24,19842.0,52.33,2.886,,,,,,211.4051222,7.838,False -1,17,2010-12-31,10429.16,48.43,2.943,,,,,,211.4049321,7.838,True -1,17,2011-01-07,8582.2,48.27,2.976,,,,,,211.4047419,7.742,False -1,17,2011-01-14,8503.39,35.4,2.983,,,,,,211.4574109,7.742,False -1,17,2011-01-21,7658.87,44.04,3.016,,,,,,211.8272343,7.742,False -1,17,2011-01-28,7724.52,43.83,3.01,,,,,,212.1970577,7.742,False -1,17,2011-02-04,9741.2,42.27,2.989,,,,,,212.5668812,7.742,False -1,17,2011-02-11,11068.7,36.39,3.022,,,,,,212.9367046,7.742,True -1,17,2011-02-18,12612.94,57.36,3.045,,,,,,213.2478853,7.742,False -1,17,2011-02-25,11949.83,62.9,3.065,,,,,,213.535609,7.742,False -1,17,2011-03-04,12994.45,59.58,3.288,,,,,,213.8233327,7.742,False -1,17,2011-03-11,9728.55,53.56,3.459,,,,,,214.1110564,7.742,False -1,17,2011-03-18,10143.22,62.76,3.488,,,,,,214.3627114,7.742,False -1,17,2011-03-25,9004.62,69.97,3.473,,,,,,214.5999389,7.742,False -1,17,2011-04-01,9742.29,59.17,3.524,,,,,,214.8371664,7.682,False -1,17,2011-04-08,8618.59,67.84,3.622,,,,,,215.0743939,7.682,False -1,17,2011-04-15,7921.95,71.27,3.743,,,,,,215.2918561,7.682,False -1,17,2011-04-22,9084.67,72.99,3.807,,,,,,215.4599053,7.682,False -1,17,2011-04-29,7795.43,72.03,3.81,,,,,,215.6279544,7.682,False -1,17,2011-05-06,10121.32,64.61,3.906,,,,,,215.7960035,7.682,False -1,17,2011-05-13,9975.24,75.64,3.899,,,,,,215.9640526,7.682,False -1,17,2011-05-20,7894.76,67.63,3.907,,,,,,215.7339202,7.682,False -1,17,2011-05-27,6937.06,77.72,3.786,,,,,,215.5037878,7.682,False -1,17,2011-06-03,5913.51,83.0,3.699,,,,,,215.2736553,7.682,False -1,17,2011-06-10,9670.75,83.13,3.648,,,,,,215.0435229,7.682,False -1,17,2011-06-17,10592.73,86.41,3.637,,,,,,214.9980596,7.682,False -1,17,2011-06-24,6301.63,83.58,3.594,,,,,,215.0910982,7.682,False -1,17,2011-07-01,7424.91,85.55,3.524,,,,,,215.1841368,7.962,False -1,17,2011-07-08,8444.58,85.83,3.48,,,,,,215.2771754,7.962,False -1,17,2011-07-15,7205.38,88.54,3.575,,,,,,215.3611087,7.962,False -1,17,2011-07-22,7826.08,85.77,3.651,,,,,,215.4222784,7.962,False -1,17,2011-07-29,7500.48,86.83,3.682,,,,,,215.4834482,7.962,False -1,17,2011-08-05,8100.38,91.65,3.684,,,,,,215.544618,7.962,False -1,17,2011-08-12,8893.77,90.76,3.638,,,,,,215.6057878,7.962,False -1,17,2011-08-19,7974.09,89.94,3.554,,,,,,215.6693107,7.962,False -1,17,2011-08-26,9138.11,87.96,3.523,,,,,,215.7332258,7.962,False -1,17,2011-09-02,7577.4,87.83,3.533,,,,,,215.7971409,7.962,False -1,17,2011-09-09,8209.44,76.0,3.546,,,,,,215.861056,7.962,True -1,17,2011-09-16,7208.1,79.94,3.526,,,,,,216.0410526,7.962,False -1,17,2011-09-23,7063.24,75.8,3.467,,,,,,216.3758246,7.962,False -1,17,2011-09-30,7348.08,79.69,3.355,,,,,,216.7105965,7.962,False -1,17,2011-10-07,8149.44,69.31,3.285,,,,,,217.0453684,7.866,False -1,17,2011-10-14,8241.42,71.74,3.274,,,,,,217.3552733,7.866,False -1,17,2011-10-21,7547.77,63.71,3.353,,,,,,217.5159762,7.866,False -1,17,2011-10-28,7407.41,66.57,3.372,,,,,,217.6766791,7.866,False -1,17,2011-11-04,7760.73,54.98,3.332,,,,,,217.837382,7.866,False -1,17,2011-11-11,7316.53,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,17,2011-11-18,9558.5,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,17,2011-11-25,12329.5,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,17,2011-12-02,9490.05,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,17,2011-12-09,10484.57,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,17,2011-12-16,11642.24,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,17,2011-12-23,18463.27,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,17,2011-12-30,10619.45,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,17,2012-01-06,8086.43,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,17,2012-01-13,9454.17,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,17,2012-01-20,7968.85,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,17,2012-01-27,7237.41,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,17,2012-02-03,8128.57,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,17,2012-02-10,10461.07,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,17,2012-02-17,11684.73,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,17,2012-02-24,9309.63,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,17,2012-03-02,11187.42,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,17,2012-03-09,11553.98,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,17,2012-03-16,8523.56,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,17,2012-03-23,7456.66,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,17,2012-03-30,8433.01,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,17,2012-04-06,8662.4,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,17,2012-04-13,6936.35,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,17,2012-04-20,8559.84,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,17,2012-04-27,7868.25,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,17,2012-05-04,9064.6,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,17,2012-05-11,7964.29,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,17,2012-05-18,9308.53,70.33,3.63,6154.14,,45.11,1675.49,5508.18,221.742674,7.143,False -1,17,2012-05-25,7323.66,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,17,2012-06-01,7197.38,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,17,2012-06-08,8589.19,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,17,2012-06-15,6676.87,79.35,3.393,5621.99,109.6,0.25,2420.28,3083.26,221.7626421,7.143,False -1,17,2012-06-22,7468.47,78.39,3.346,8624.56,171.25,3.05,2524.07,7063.68,221.8030211,7.143,False -1,17,2012-06-29,8240.63,84.88,3.286,3965.73,161.6,,435.99,4212.97,221.8434,7.143,False -1,17,2012-07-06,8053.74,81.57,3.227,12218.76,94.4,192.83,4066.01,6149.04,221.8837789,6.908,False -1,17,2012-07-13,7386.64,77.12,3.256,7218.13,45.2,36.24,3909.38,2596.37,221.9241579,6.908,False -1,17,2012-07-20,7195.7,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,17,2012-07-27,8435.09,82.66,3.407,7146.9,389.02,1.59,10267.54,4325.19,221.9412954,6.908,False -1,17,2012-08-03,7809.58,86.11,3.417,27584.78,119.98,30.23,12007.04,4661.71,221.9498642,6.908,False -1,17,2012-08-10,8441.34,85.05,3.494,11436.22,245.0,6.85,6964.26,4836.22,221.9584329,6.908,False -1,17,2012-08-17,8710.04,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,17,2012-08-24,9523.9,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,17,2012-08-31,8158.73,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,17,2012-09-07,8712.44,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,17,2012-09-14,7075.73,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,17,2012-09-21,7143.59,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,17,2012-09-28,7155.75,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,17,2012-10-05,9040.52,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,17,2012-10-12,7908.36,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,17,2012-10-19,7640.43,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,17,2012-10-26,7640.92,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,18,2010-02-05,4729.5,42.31,2.572,,,,,,211.0963582,8.106,False -1,18,2010-02-12,19006.5,38.51,2.548,,,,,,211.2421698,8.106,True -1,18,2010-02-19,17623.72,39.93,2.514,,,,,,211.2891429,8.106,False -1,18,2010-02-26,545.02,46.63,2.561,,,,,,211.3196429,8.106,False -1,18,2010-03-05,634.61,46.5,2.625,,,,,,211.3501429,8.106,False -1,18,2010-03-12,1275.08,57.79,2.667,,,,,,211.3806429,8.106,False -1,18,2010-03-19,2303.36,54.58,2.72,,,,,,211.215635,8.106,False -1,18,2010-03-26,4037.16,51.45,2.732,,,,,,211.0180424,8.106,False -1,18,2010-04-02,17916.41,62.27,2.719,,,,,,210.8204499,7.808,False -1,18,2010-04-09,8668.06,65.86,2.77,,,,,,210.6228574,7.808,False -1,18,2010-04-16,584.56,66.32,2.808,,,,,,210.4887,7.808,False -1,18,2010-04-23,65.24,64.84,2.795,,,,,,210.4391228,7.808,False -1,18,2010-05-14,0.5,74.78,2.854,,,,,,210.3374261,7.808,False -1,18,2010-06-04,4.1,80.69,2.705,,,,,,211.1764278,7.808,False -1,18,2010-06-11,0.15,80.43,2.668,,,,,,211.4560951,7.808,False -1,18,2010-08-20,1.0,86.65,2.664,,,,,,211.6033633,7.787,False -1,18,2010-08-27,23.0,85.22,2.619,,,,,,211.5673056,7.787,False -1,18,2010-09-03,132.0,81.21,2.577,,,,,,211.5312479,7.787,False -1,18,2010-09-10,246.0,78.69,2.565,,,,,,211.4951902,7.787,True -1,18,2010-09-17,1583.71,82.11,2.582,,,,,,211.5224596,7.787,False -1,18,2010-09-24,3130.76,80.94,2.624,,,,,,211.5972246,7.787,False -1,18,2010-10-01,3389.42,71.89,2.603,,,,,,211.6719895,7.838,False -1,18,2010-10-08,4532.56,63.93,2.633,,,,,,211.7467544,7.838,False -1,18,2010-10-15,6195.26,67.18,2.72,,,,,,211.8137436,7.838,False -1,18,2010-10-22,9648.61,69.86,2.725,,,,,,211.8612937,7.838,False -1,18,2010-10-29,22455.8,69.64,2.716,,,,,,211.9088438,7.838,False -1,18,2010-11-05,12033.61,58.74,2.689,,,,,,211.9563939,7.838,False -1,18,2010-11-12,8943.59,59.61,2.728,,,,,,212.003944,7.838,False -1,18,2010-11-19,15020.49,51.41,2.771,,,,,,211.8896737,7.838,False -1,18,2010-11-26,33967.24,64.52,2.735,,,,,,211.7484333,7.838,True -1,18,2010-12-03,53845.12,49.27,2.708,,,,,,211.607193,7.838,False -1,18,2010-12-10,47266.75,46.33,2.843,,,,,,211.4659526,7.838,False -1,18,2010-12-17,35120.62,49.84,2.869,,,,,,211.4053124,7.838,False -1,18,2010-12-24,22403.61,52.33,2.886,,,,,,211.4051222,7.838,False -1,18,2010-12-31,20783.04,48.43,2.943,,,,,,211.4049321,7.838,True -1,18,2011-01-07,5180.76,48.27,2.976,,,,,,211.4047419,7.742,False -1,18,2011-01-14,875.4,35.4,2.983,,,,,,211.4574109,7.742,False -1,18,2011-01-21,1579.21,44.04,3.016,,,,,,211.8272343,7.742,False -1,18,2011-01-28,1964.42,43.83,3.01,,,,,,212.1970577,7.742,False -1,18,2011-02-04,3809.75,42.27,2.989,,,,,,212.5668812,7.742,False -1,18,2011-02-11,14587.89,36.39,3.022,,,,,,212.9367046,7.742,True -1,18,2011-02-18,22185.08,57.36,3.045,,,,,,213.2478853,7.742,False -1,18,2011-02-25,957.7,62.9,3.065,,,,,,213.535609,7.742,False -1,18,2011-03-04,2.75,59.58,3.288,,,,,,213.8233327,7.742,False -1,18,2011-03-11,3.1,53.56,3.459,,,,,,214.1110564,7.742,False -1,18,2011-03-18,296.03,62.76,3.488,,,,,,214.3627114,7.742,False -1,18,2011-03-25,701.98,69.97,3.473,,,,,,214.5999389,7.742,False -1,18,2011-04-01,1550.18,59.17,3.524,,,,,,214.8371664,7.682,False -1,18,2011-04-08,2133.87,67.84,3.622,,,,,,215.0743939,7.682,False -1,18,2011-04-15,4304.0,71.27,3.743,,,,,,215.2918561,7.682,False -1,18,2011-04-22,13367.64,72.99,3.807,,,,,,215.4599053,7.682,False -1,18,2011-04-29,7988.42,72.03,3.81,,,,,,215.6279544,7.682,False -1,18,2011-05-06,682.48,64.61,3.906,,,,,,215.7960035,7.682,False -1,18,2011-05-13,227.24,75.64,3.899,,,,,,215.9640526,7.682,False -1,18,2011-05-20,1.8,67.63,3.907,,,,,,215.7339202,7.682,False -1,18,2011-05-27,0.35,77.72,3.786,,,,,,215.5037878,7.682,False -1,18,2011-06-10,1.0,83.13,3.648,,,,,,215.0435229,7.682,False -1,18,2011-06-17,2.0,86.41,3.637,,,,,,214.9980596,7.682,False -1,18,2011-07-01,0.5,85.55,3.524,,,,,,215.1841368,7.962,False -1,18,2011-07-15,0.3,88.54,3.575,,,,,,215.3611087,7.962,False -1,18,2011-08-26,4.97,87.96,3.523,,,,,,215.7332258,7.962,False -1,18,2011-09-02,83.64,87.83,3.533,,,,,,215.7971409,7.962,False -1,18,2011-09-09,149.24,76.0,3.546,,,,,,215.861056,7.962,True -1,18,2011-09-16,868.86,79.94,3.526,,,,,,216.0410526,7.962,False -1,18,2011-09-23,2540.81,75.8,3.467,,,,,,216.3758246,7.962,False -1,18,2011-09-30,3279.04,79.69,3.355,,,,,,216.7105965,7.962,False -1,18,2011-10-07,4959.46,69.31,3.285,,,,,,217.0453684,7.866,False -1,18,2011-10-14,5758.87,71.74,3.274,,,,,,217.3552733,7.866,False -1,18,2011-10-21,7304.78,63.71,3.353,,,,,,217.5159762,7.866,False -1,18,2011-10-28,16545.45,66.57,3.372,,,,,,217.6766791,7.866,False -1,18,2011-11-04,14133.85,54.98,3.332,,,,,,217.837382,7.866,False -1,18,2011-11-11,10170.41,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,18,2011-11-18,14159.67,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,18,2011-11-25,30543.19,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,18,2011-12-02,47731.67,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,18,2011-12-09,41114.36,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,18,2011-12-16,33932.27,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,18,2011-12-23,22602.34,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,18,2011-12-30,21444.65,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,18,2012-01-06,7018.32,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,18,2012-01-13,1700.85,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,18,2012-01-20,1468.65,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,18,2012-01-27,1842.47,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,18,2012-02-03,3558.71,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,18,2012-02-10,12687.47,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,18,2012-02-17,26992.11,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,18,2012-02-24,1973.92,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,18,2012-03-02,1316.04,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,18,2012-03-09,1126.04,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,18,2012-03-16,1630.41,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,18,2012-03-23,2280.34,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,18,2012-03-30,3667.66,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,18,2012-04-06,14283.73,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,18,2012-04-13,5136.25,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,18,2012-04-20,61.56,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,18,2012-04-27,4.68,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,18,2012-05-04,-1.27,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,18,2012-05-11,4.58,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,18,2012-05-25,1.97,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,18,2012-06-01,0.2,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,18,2012-06-08,4.97,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,18,2012-07-20,2.91,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,18,2012-08-17,9.97,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,18,2012-08-24,4.97,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,18,2012-08-31,4.97,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,18,2012-09-07,4.97,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,18,2012-09-14,649.09,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,18,2012-09-21,3361.0,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,18,2012-09-28,4867.7,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,18,2012-10-05,7291.46,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,18,2012-10-12,8171.79,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,18,2012-10-19,10569.09,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,18,2012-10-26,17934.28,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,19,2010-02-05,1947.05,42.31,2.572,,,,,,211.0963582,8.106,False -1,19,2010-02-12,1490.79,38.51,2.548,,,,,,211.2421698,8.106,True -1,19,2010-02-19,1722.17,39.93,2.514,,,,,,211.2891429,8.106,False -1,19,2010-02-26,1655.32,46.63,2.561,,,,,,211.3196429,8.106,False -1,19,2010-03-05,1556.65,46.5,2.625,,,,,,211.3501429,8.106,False -1,19,2010-03-12,1742.14,57.79,2.667,,,,,,211.3806429,8.106,False -1,19,2010-03-19,1881.91,54.58,2.72,,,,,,211.215635,8.106,False -1,19,2010-03-26,2153.61,51.45,2.732,,,,,,211.0180424,8.106,False -1,19,2010-04-02,1514.32,62.27,2.719,,,,,,210.8204499,7.808,False -1,19,2010-04-09,1880.64,65.86,2.77,,,,,,210.6228574,7.808,False -1,19,2010-04-16,1483.5,66.32,2.808,,,,,,210.4887,7.808,False -1,19,2010-04-23,1577.25,64.84,2.795,,,,,,210.4391228,7.808,False -1,19,2010-04-30,1384.69,67.41,2.78,,,,,,210.3895456,7.808,False -1,19,2010-05-07,1616.77,72.55,2.835,,,,,,210.3399684,7.808,False -1,19,2010-05-14,1274.19,74.78,2.854,,,,,,210.3374261,7.808,False -1,19,2010-05-21,1448.08,76.44,2.826,,,,,,210.6170934,7.808,False -1,19,2010-05-28,1183.27,80.44,2.759,,,,,,210.8967606,7.808,False -1,19,2010-06-04,1106.84,80.69,2.705,,,,,,211.1764278,7.808,False -1,19,2010-06-11,1377.39,80.43,2.668,,,,,,211.4560951,7.808,False -1,19,2010-06-18,1452.82,84.11,2.637,,,,,,211.4537719,7.808,False -1,19,2010-06-25,1402.04,84.34,2.653,,,,,,211.3386526,7.808,False -1,19,2010-07-02,1537.76,80.91,2.669,,,,,,211.2235333,7.787,False -1,19,2010-07-09,1297.98,80.48,2.642,,,,,,211.108414,7.787,False -1,19,2010-07-16,1382.72,83.15,2.623,,,,,,211.1003854,7.787,False -1,19,2010-07-23,1563.01,83.36,2.608,,,,,,211.2351443,7.787,False -1,19,2010-07-30,1224.69,81.84,2.64,,,,,,211.3699032,7.787,False -1,19,2010-08-06,2169.9,87.16,2.627,,,,,,211.5046621,7.787,False -1,19,2010-08-13,1814.38,87.0,2.692,,,,,,211.6394211,7.787,False -1,19,2010-08-20,1797.85,86.65,2.664,,,,,,211.6033633,7.787,False -1,19,2010-08-27,1008.45,85.22,2.619,,,,,,211.5673056,7.787,False -1,19,2010-09-03,1460.74,81.21,2.577,,,,,,211.5312479,7.787,False -1,19,2010-09-10,1772.53,78.69,2.565,,,,,,211.4951902,7.787,True -1,19,2010-09-17,1933.16,82.11,2.582,,,,,,211.5224596,7.787,False -1,19,2010-09-24,1644.9,80.94,2.624,,,,,,211.5972246,7.787,False -1,19,2010-10-01,1583.2,71.89,2.603,,,,,,211.6719895,7.838,False -1,19,2010-10-08,1926.42,63.93,2.633,,,,,,211.7467544,7.838,False -1,19,2010-10-15,1905.88,67.18,2.72,,,,,,211.8137436,7.838,False -1,19,2010-10-22,1838.86,69.86,2.725,,,,,,211.8612937,7.838,False -1,19,2010-10-29,2600.99,69.64,2.716,,,,,,211.9088438,7.838,False -1,19,2010-11-05,1344.66,58.74,2.689,,,,,,211.9563939,7.838,False -1,19,2010-11-12,1769.86,59.61,2.728,,,,,,212.003944,7.838,False -1,19,2010-11-19,1736.17,51.41,2.771,,,,,,211.8896737,7.838,False -1,19,2010-11-26,1114.47,64.52,2.735,,,,,,211.7484333,7.838,True -1,19,2010-12-03,1616.77,49.27,2.708,,,,,,211.607193,7.838,False -1,19,2010-12-10,1576.73,46.33,2.843,,,,,,211.4659526,7.838,False -1,19,2010-12-17,1724.66,49.84,2.869,,,,,,211.4053124,7.838,False -1,19,2010-12-24,1342.63,52.33,2.886,,,,,,211.4051222,7.838,False -1,19,2010-12-31,1234.64,48.43,2.943,,,,,,211.4049321,7.838,True -1,19,2011-01-07,955.71,48.27,2.976,,,,,,211.4047419,7.742,False -1,19,2011-01-14,922.31,35.4,2.983,,,,,,211.4574109,7.742,False -1,19,2011-01-21,696.22,44.04,3.016,,,,,,211.8272343,7.742,False -1,19,2011-01-28,866.7,43.83,3.01,,,,,,212.1970577,7.742,False -1,19,2011-02-04,1273.02,42.27,2.989,,,,,,212.5668812,7.742,False -1,19,2011-02-11,1344.92,36.39,3.022,,,,,,212.9367046,7.742,True -1,19,2011-02-18,1475.75,57.36,3.045,,,,,,213.2478853,7.742,False -1,19,2011-02-25,1977.45,62.9,3.065,,,,,,213.535609,7.742,False -1,19,2011-03-04,1499.48,59.58,3.288,,,,,,213.8233327,7.742,False -1,19,2011-03-11,1572.3,53.56,3.459,,,,,,214.1110564,7.742,False -1,19,2011-03-18,1493.99,62.76,3.488,,,,,,214.3627114,7.742,False -1,19,2011-03-25,1233.35,69.97,3.473,,,,,,214.5999389,7.742,False -1,19,2011-04-01,1105.65,59.17,3.524,,,,,,214.8371664,7.682,False -1,19,2011-04-08,1875.03,67.84,3.622,,,,,,215.0743939,7.682,False -1,19,2011-04-15,953.55,71.27,3.743,,,,,,215.2918561,7.682,False -1,19,2011-04-22,1362.85,72.99,3.807,,,,,,215.4599053,7.682,False -1,19,2011-04-29,1179.32,72.03,3.81,,,,,,215.6279544,7.682,False -1,19,2011-05-06,1217.44,64.61,3.906,,,,,,215.7960035,7.682,False -1,19,2011-05-13,1018.54,75.64,3.899,,,,,,215.9640526,7.682,False -1,19,2011-05-20,1345.43,67.63,3.907,,,,,,215.7339202,7.682,False -1,19,2011-05-27,1229.72,77.72,3.786,,,,,,215.5037878,7.682,False -1,19,2011-06-03,869.89,83.0,3.699,,,,,,215.2736553,7.682,False -1,19,2011-06-10,918.08,83.13,3.648,,,,,,215.0435229,7.682,False -1,19,2011-06-17,489.9,86.41,3.637,,,,,,214.9980596,7.682,False -1,19,2011-06-24,624.38,83.58,3.594,,,,,,215.0910982,7.682,False -1,19,2011-07-01,750.76,85.55,3.524,,,,,,215.1841368,7.962,False -1,19,2011-07-08,624.94,85.83,3.48,,,,,,215.2771754,7.962,False -1,19,2011-07-15,1039.1,88.54,3.575,,,,,,215.3611087,7.962,False -1,19,2011-07-22,689.39,85.77,3.651,,,,,,215.4222784,7.962,False -1,19,2011-07-29,1327.67,86.83,3.682,,,,,,215.4834482,7.962,False -1,19,2011-08-05,898.44,91.65,3.684,,,,,,215.544618,7.962,False -1,19,2011-08-12,876.41,90.76,3.638,,,,,,215.6057878,7.962,False -1,19,2011-08-19,849.58,89.94,3.554,,,,,,215.6693107,7.962,False -1,19,2011-08-26,698.48,87.96,3.523,,,,,,215.7332258,7.962,False -1,19,2011-09-02,880.55,87.83,3.533,,,,,,215.7971409,7.962,False -1,19,2011-09-09,990.6,76.0,3.546,,,,,,215.861056,7.962,True -1,19,2011-09-16,1071.02,79.94,3.526,,,,,,216.0410526,7.962,False -1,19,2011-09-23,992.99,75.8,3.467,,,,,,216.3758246,7.962,False -1,19,2011-09-30,1003.0,79.69,3.355,,,,,,216.7105965,7.962,False -1,19,2011-10-07,984.0,69.31,3.285,,,,,,217.0453684,7.866,False -1,19,2011-10-14,1286.47,71.74,3.274,,,,,,217.3552733,7.866,False -1,19,2011-10-21,911.38,63.71,3.353,,,,,,217.5159762,7.866,False -1,19,2011-10-28,1061.44,66.57,3.372,,,,,,217.6766791,7.866,False -1,19,2011-11-04,821.45,54.98,3.332,,,,,,217.837382,7.866,False -1,19,2011-11-11,932.24,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,19,2011-11-18,793.08,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,19,2011-11-25,831.4,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,19,2011-12-02,1414.06,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,19,2011-12-09,1749.04,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,19,2011-12-16,1381.01,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,19,2011-12-23,1904.53,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,19,2011-12-30,878.8,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,19,2012-01-06,607.22,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,19,2012-01-13,758.08,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,19,2012-01-20,714.21,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,19,2012-01-27,720.98,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,19,2012-02-03,1175.9,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,19,2012-02-10,973.9,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,19,2012-02-17,762.59,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,19,2012-02-24,988.95,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,19,2012-03-02,761.16,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,19,2012-03-09,1514.62,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,19,2012-03-16,1273.4,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,19,2012-03-23,1057.43,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,19,2012-03-30,973.05,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,19,2012-04-06,875.56,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,19,2012-04-13,753.73,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,19,2012-04-20,1162.5,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,19,2012-04-27,524.17,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,19,2012-05-04,1155.4,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,19,2012-05-11,1848.79,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,19,2012-05-18,1441.88,70.33,3.63,6154.14,,45.11,1675.49,5508.18,221.742674,7.143,False -1,19,2012-05-25,1036.21,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,19,2012-06-01,1406.0,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,19,2012-06-08,1242.44,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,19,2012-06-15,951.49,79.35,3.393,5621.99,109.6,0.25,2420.28,3083.26,221.7626421,7.143,False -1,19,2012-06-22,1174.7,78.39,3.346,8624.56,171.25,3.05,2524.07,7063.68,221.8030211,7.143,False -1,19,2012-06-29,1040.98,84.88,3.286,3965.73,161.6,,435.99,4212.97,221.8434,7.143,False -1,19,2012-07-06,1195.29,81.57,3.227,12218.76,94.4,192.83,4066.01,6149.04,221.8837789,6.908,False -1,19,2012-07-13,1003.66,77.12,3.256,7218.13,45.2,36.24,3909.38,2596.37,221.9241579,6.908,False -1,19,2012-07-20,955.74,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,19,2012-07-27,1016.28,82.66,3.407,7146.9,389.02,1.59,10267.54,4325.19,221.9412954,6.908,False -1,19,2012-08-03,901.62,86.11,3.417,27584.78,119.98,30.23,12007.04,4661.71,221.9498642,6.908,False -1,19,2012-08-10,875.1,85.05,3.494,11436.22,245.0,6.85,6964.26,4836.22,221.9584329,6.908,False -1,19,2012-08-17,1192.39,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,19,2012-08-24,1328.49,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,19,2012-08-31,900.06,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,19,2012-09-07,1225.7,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,19,2012-09-14,733.78,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,19,2012-09-21,1015.46,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,19,2012-09-28,1385.85,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,19,2012-10-05,1192.58,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,19,2012-10-12,1415.68,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,19,2012-10-19,1247.56,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,19,2012-10-26,1640.81,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,20,2010-02-05,5034.1,42.31,2.572,,,,,,211.0963582,8.106,False -1,20,2010-02-12,3697.7,38.51,2.548,,,,,,211.2421698,8.106,True -1,20,2010-02-19,4719.89,39.93,2.514,,,,,,211.2891429,8.106,False -1,20,2010-02-26,4007.94,46.63,2.561,,,,,,211.3196429,8.106,False -1,20,2010-03-05,4215.67,46.5,2.625,,,,,,211.3501429,8.106,False -1,20,2010-03-12,6476.41,57.79,2.667,,,,,,211.3806429,8.106,False -1,20,2010-03-19,4458.06,54.58,2.72,,,,,,211.215635,8.106,False -1,20,2010-03-26,4195.7,51.45,2.732,,,,,,211.0180424,8.106,False -1,20,2010-04-02,3468.69,62.27,2.719,,,,,,210.8204499,7.808,False -1,20,2010-04-09,3010.11,65.86,2.77,,,,,,210.6228574,7.808,False -1,20,2010-04-16,3284.41,66.32,2.808,,,,,,210.4887,7.808,False -1,20,2010-04-23,3008.93,64.84,2.795,,,,,,210.4391228,7.808,False -1,20,2010-04-30,3957.01,67.41,2.78,,,,,,210.3895456,7.808,False -1,20,2010-05-07,4249.64,72.55,2.835,,,,,,210.3399684,7.808,False -1,20,2010-05-14,4530.95,74.78,2.854,,,,,,210.3374261,7.808,False -1,20,2010-05-21,4020.38,76.44,2.826,,,,,,210.6170934,7.808,False -1,20,2010-05-28,5115.39,80.44,2.759,,,,,,210.8967606,7.808,False -1,20,2010-06-04,7150.79,80.69,2.705,,,,,,211.1764278,7.808,False -1,20,2010-06-11,5151.98,80.43,2.668,,,,,,211.4560951,7.808,False -1,20,2010-06-18,5596.07,84.11,2.637,,,,,,211.4537719,7.808,False -1,20,2010-06-25,5084.26,84.34,2.653,,,,,,211.3386526,7.808,False -1,20,2010-07-02,5958.02,80.91,2.669,,,,,,211.2235333,7.787,False -1,20,2010-07-09,5352.73,80.48,2.642,,,,,,211.108414,7.787,False -1,20,2010-07-16,5025.69,83.15,2.623,,,,,,211.1003854,7.787,False -1,20,2010-07-23,4328.35,83.36,2.608,,,,,,211.2351443,7.787,False -1,20,2010-07-30,4266.71,81.84,2.64,,,,,,211.3699032,7.787,False -1,20,2010-08-06,4764.92,87.16,2.627,,,,,,211.5046621,7.787,False -1,20,2010-08-13,4133.81,87.0,2.692,,,,,,211.6394211,7.787,False -1,20,2010-08-20,4297.24,86.65,2.664,,,,,,211.6033633,7.787,False -1,20,2010-08-27,3607.91,85.22,2.619,,,,,,211.5673056,7.787,False -1,20,2010-09-03,3985.35,81.21,2.577,,,,,,211.5312479,7.787,False -1,20,2010-09-10,2715.5,78.69,2.565,,,,,,211.4951902,7.787,True -1,20,2010-09-17,3146.58,82.11,2.582,,,,,,211.5224596,7.787,False -1,20,2010-09-24,3314.39,80.94,2.624,,,,,,211.5972246,7.787,False -1,20,2010-10-01,3859.87,71.89,2.603,,,,,,211.6719895,7.838,False -1,20,2010-10-08,3947.33,63.93,2.633,,,,,,211.7467544,7.838,False -1,20,2010-10-15,3300.77,67.18,2.72,,,,,,211.8137436,7.838,False -1,20,2010-10-22,3130.7,69.86,2.725,,,,,,211.8612937,7.838,False -1,20,2010-10-29,3114.61,69.64,2.716,,,,,,211.9088438,7.838,False -1,20,2010-11-05,2961.74,58.74,2.689,,,,,,211.9563939,7.838,False -1,20,2010-11-12,2717.45,59.61,2.728,,,,,,212.003944,7.838,False -1,20,2010-11-19,3276.59,51.41,2.771,,,,,,211.8896737,7.838,False -1,20,2010-11-26,5994.53,64.52,2.735,,,,,,211.7484333,7.838,True -1,20,2010-12-03,2656.78,49.27,2.708,,,,,,211.607193,7.838,False -1,20,2010-12-10,2863.79,46.33,2.843,,,,,,211.4659526,7.838,False -1,20,2010-12-17,3289.02,49.84,2.869,,,,,,211.4053124,7.838,False -1,20,2010-12-24,3724.99,52.33,2.886,,,,,,211.4051222,7.838,False -1,20,2010-12-31,3361.51,48.43,2.943,,,,,,211.4049321,7.838,True -1,20,2011-01-07,3218.91,48.27,2.976,,,,,,211.4047419,7.742,False -1,20,2011-01-14,3082.87,35.4,2.983,,,,,,211.4574109,7.742,False -1,20,2011-01-21,2464.49,44.04,3.016,,,,,,211.8272343,7.742,False -1,20,2011-01-28,3071.34,43.83,3.01,,,,,,212.1970577,7.742,False -1,20,2011-02-04,3408.23,42.27,2.989,,,,,,212.5668812,7.742,False -1,20,2011-02-11,3232.53,36.39,3.022,,,,,,212.9367046,7.742,True -1,20,2011-02-18,4092.92,57.36,3.045,,,,,,213.2478853,7.742,False -1,20,2011-02-25,4184.4,62.9,3.065,,,,,,213.535609,7.742,False -1,20,2011-03-04,4237.4,59.58,3.288,,,,,,213.8233327,7.742,False -1,20,2011-03-11,4287.05,53.56,3.459,,,,,,214.1110564,7.742,False -1,20,2011-03-18,4034.08,62.76,3.488,,,,,,214.3627114,7.742,False -1,20,2011-03-25,3804.36,69.97,3.473,,,,,,214.5999389,7.742,False -1,20,2011-04-01,3649.35,59.17,3.524,,,,,,214.8371664,7.682,False -1,20,2011-04-08,3195.42,67.84,3.622,,,,,,215.0743939,7.682,False -1,20,2011-04-15,2767.75,71.27,3.743,,,,,,215.2918561,7.682,False -1,20,2011-04-22,3570.88,72.99,3.807,,,,,,215.4599053,7.682,False -1,20,2011-04-29,2804.09,72.03,3.81,,,,,,215.6279544,7.682,False -1,20,2011-05-06,3777.83,64.61,3.906,,,,,,215.7960035,7.682,False -1,20,2011-05-13,3811.95,75.64,3.899,,,,,,215.9640526,7.682,False -1,20,2011-05-20,3919.78,67.63,3.907,,,,,,215.7339202,7.682,False -1,20,2011-05-27,5110.62,77.72,3.786,,,,,,215.5037878,7.682,False -1,20,2011-06-03,5376.07,83.0,3.699,,,,,,215.2736553,7.682,False -1,20,2011-06-10,4933.74,83.13,3.648,,,,,,215.0435229,7.682,False -1,20,2011-06-17,4492.41,86.41,3.637,,,,,,214.9980596,7.682,False -1,20,2011-06-24,3696.8,83.58,3.594,,,,,,215.0910982,7.682,False -1,20,2011-07-01,5342.26,85.55,3.524,,,,,,215.1841368,7.962,False -1,20,2011-07-08,4786.95,85.83,3.48,,,,,,215.2771754,7.962,False -1,20,2011-07-15,3834.98,88.54,3.575,,,,,,215.3611087,7.962,False -1,20,2011-07-22,4339.86,85.77,3.651,,,,,,215.4222784,7.962,False -1,20,2011-07-29,3953.8,86.83,3.682,,,,,,215.4834482,7.962,False -1,20,2011-08-05,4499.02,91.65,3.684,,,,,,215.544618,7.962,False -1,20,2011-08-12,4242.47,90.76,3.638,,,,,,215.6057878,7.962,False -1,20,2011-08-19,4403.03,89.94,3.554,,,,,,215.6693107,7.962,False -1,20,2011-08-26,4612.13,87.96,3.523,,,,,,215.7332258,7.962,False -1,20,2011-09-02,4333.53,87.83,3.533,,,,,,215.7971409,7.962,False -1,20,2011-09-09,3991.02,76.0,3.546,,,,,,215.861056,7.962,True -1,20,2011-09-16,3427.12,79.94,3.526,,,,,,216.0410526,7.962,False -1,20,2011-09-23,3571.86,75.8,3.467,,,,,,216.3758246,7.962,False -1,20,2011-09-30,3560.89,79.69,3.355,,,,,,216.7105965,7.962,False -1,20,2011-10-07,3135.0,69.31,3.285,,,,,,217.0453684,7.866,False -1,20,2011-10-14,3516.39,71.74,3.274,,,,,,217.3552733,7.866,False -1,20,2011-10-21,2638.07,63.71,3.353,,,,,,217.5159762,7.866,False -1,20,2011-10-28,3180.74,66.57,3.372,,,,,,217.6766791,7.866,False -1,20,2011-11-04,3180.12,54.98,3.332,,,,,,217.837382,7.866,False -1,20,2011-11-11,3114.01,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,20,2011-11-18,2690.25,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,20,2011-11-25,5425.0,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,20,2011-12-02,3117.17,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,20,2011-12-09,2944.45,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,20,2011-12-16,3619.16,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,20,2011-12-23,5524.27,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,20,2011-12-30,4009.01,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,20,2012-01-06,3246.33,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,20,2012-01-13,4485.95,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,20,2012-01-20,3937.59,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,20,2012-01-27,3364.8,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,20,2012-02-03,4206.91,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,20,2012-02-10,6051.57,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,20,2012-02-17,5569.54,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,20,2012-02-24,4455.36,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,20,2012-03-02,5446.7,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,20,2012-03-09,7272.2,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,20,2012-03-16,5040.41,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,20,2012-03-23,3909.02,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,20,2012-03-30,5264.6,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,20,2012-04-06,3868.02,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,20,2012-04-13,3449.45,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,20,2012-04-20,4246.85,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,20,2012-04-27,4844.73,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,20,2012-05-04,4647.31,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,20,2012-05-11,4418.12,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,20,2012-05-18,5296.28,70.33,3.63,6154.14,,45.11,1675.49,5508.18,221.742674,7.143,False -1,20,2012-05-25,4614.33,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,20,2012-06-01,4353.92,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,20,2012-06-08,4943.11,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,20,2012-06-15,3948.1,79.35,3.393,5621.99,109.6,0.25,2420.28,3083.26,221.7626421,7.143,False -1,20,2012-06-22,5218.84,78.39,3.346,8624.56,171.25,3.05,2524.07,7063.68,221.8030211,7.143,False -1,20,2012-06-29,4847.43,84.88,3.286,3965.73,161.6,,435.99,4212.97,221.8434,7.143,False -1,20,2012-07-06,5485.86,81.57,3.227,12218.76,94.4,192.83,4066.01,6149.04,221.8837789,6.908,False -1,20,2012-07-13,3737.06,77.12,3.256,7218.13,45.2,36.24,3909.38,2596.37,221.9241579,6.908,False -1,20,2012-07-20,4831.71,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,20,2012-07-27,3810.16,82.66,3.407,7146.9,389.02,1.59,10267.54,4325.19,221.9412954,6.908,False -1,20,2012-08-03,4708.44,86.11,3.417,27584.78,119.98,30.23,12007.04,4661.71,221.9498642,6.908,False -1,20,2012-08-10,4534.37,85.05,3.494,11436.22,245.0,6.85,6964.26,4836.22,221.9584329,6.908,False -1,20,2012-08-17,3980.4,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,20,2012-08-24,3452.67,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,20,2012-08-31,4602.26,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,20,2012-09-07,4342.34,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,20,2012-09-14,3548.56,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,20,2012-09-21,3532.28,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,20,2012-09-28,3200.54,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,20,2012-10-05,4184.73,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,20,2012-10-12,3126.49,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,20,2012-10-19,3640.07,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,20,2012-10-26,2680.53,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,21,2010-02-05,8907.63,42.31,2.572,,,,,,211.0963582,8.106,False -1,21,2010-02-12,8735.83,38.51,2.548,,,,,,211.2421698,8.106,True -1,21,2010-02-19,8949.67,39.93,2.514,,,,,,211.2891429,8.106,False -1,21,2010-02-26,8592.42,46.63,2.561,,,,,,211.3196429,8.106,False -1,21,2010-03-05,8275.44,46.5,2.625,,,,,,211.3501429,8.106,False -1,21,2010-03-12,7785.3,57.79,2.667,,,,,,211.3806429,8.106,False -1,21,2010-03-19,7829.35,54.58,2.72,,,,,,211.215635,8.106,False -1,21,2010-03-26,7121.77,51.45,2.732,,,,,,211.0180424,8.106,False -1,21,2010-04-02,8432.73,62.27,2.719,,,,,,210.8204499,7.808,False -1,21,2010-04-09,8152.57,65.86,2.77,,,,,,210.6228574,7.808,False -1,21,2010-04-16,6907.06,66.32,2.808,,,,,,210.4887,7.808,False -1,21,2010-04-23,7127.27,64.84,2.795,,,,,,210.4391228,7.808,False -1,21,2010-04-30,7665.23,67.41,2.78,,,,,,210.3895456,7.808,False -1,21,2010-05-07,8356.06,72.55,2.835,,,,,,210.3399684,7.808,False -1,21,2010-05-14,7905.15,74.78,2.854,,,,,,210.3374261,7.808,False -1,21,2010-05-21,7369.84,76.44,2.826,,,,,,210.6170934,7.808,False -1,21,2010-05-28,8570.69,80.44,2.759,,,,,,210.8967606,7.808,False -1,21,2010-06-04,8326.97,80.69,2.705,,,,,,211.1764278,7.808,False -1,21,2010-06-11,7516.34,80.43,2.668,,,,,,211.4560951,7.808,False -1,21,2010-06-18,8742.63,84.11,2.637,,,,,,211.4537719,7.808,False -1,21,2010-06-25,8143.9,84.34,2.653,,,,,,211.3386526,7.808,False -1,21,2010-07-02,8662.48,80.91,2.669,,,,,,211.2235333,7.787,False -1,21,2010-07-09,8739.92,80.48,2.642,,,,,,211.108414,7.787,False -1,21,2010-07-16,8403.67,83.15,2.623,,,,,,211.1003854,7.787,False -1,21,2010-07-23,7070.09,83.36,2.608,,,,,,211.2351443,7.787,False -1,21,2010-07-30,7305.13,81.84,2.64,,,,,,211.3699032,7.787,False -1,21,2010-08-06,7573.36,87.16,2.627,,,,,,211.5046621,7.787,False -1,21,2010-08-13,7662.31,87.0,2.692,,,,,,211.6394211,7.787,False -1,21,2010-08-20,6712.09,86.65,2.664,,,,,,211.6033633,7.787,False -1,21,2010-08-27,7281.05,85.22,2.619,,,,,,211.5673056,7.787,False -1,21,2010-09-03,8664.27,81.21,2.577,,,,,,211.5312479,7.787,False -1,21,2010-09-10,7966.59,78.69,2.565,,,,,,211.4951902,7.787,True -1,21,2010-09-17,7477.6,82.11,2.582,,,,,,211.5224596,7.787,False -1,21,2010-09-24,6974.13,80.94,2.624,,,,,,211.5972246,7.787,False -1,21,2010-10-01,7880.07,71.89,2.603,,,,,,211.6719895,7.838,False -1,21,2010-10-08,7632.01,63.93,2.633,,,,,,211.7467544,7.838,False -1,21,2010-10-15,7578.99,67.18,2.72,,,,,,211.8137436,7.838,False -1,21,2010-10-22,7225.88,69.86,2.725,,,,,,211.8612937,7.838,False -1,21,2010-10-29,7266.9,69.64,2.716,,,,,,211.9088438,7.838,False -1,21,2010-11-05,7608.28,58.74,2.689,,,,,,211.9563939,7.838,False -1,21,2010-11-12,7969.61,59.61,2.728,,,,,,212.003944,7.838,False -1,21,2010-11-19,7394.27,51.41,2.771,,,,,,211.8896737,7.838,False -1,21,2010-11-26,9093.19,64.52,2.735,,,,,,211.7484333,7.838,True -1,21,2010-12-03,8844.39,49.27,2.708,,,,,,211.607193,7.838,False -1,21,2010-12-10,9160.14,46.33,2.843,,,,,,211.4659526,7.838,False -1,21,2010-12-17,10135.43,49.84,2.869,,,,,,211.4053124,7.838,False -1,21,2010-12-24,12446.93,52.33,2.886,,,,,,211.4051222,7.838,False -1,21,2010-12-31,6349.45,48.43,2.943,,,,,,211.4049321,7.838,True -1,21,2011-01-07,7716.16,48.27,2.976,,,,,,211.4047419,7.742,False -1,21,2011-01-14,6359.4,35.4,2.983,,,,,,211.4574109,7.742,False -1,21,2011-01-21,6480.25,44.04,3.016,,,,,,211.8272343,7.742,False -1,21,2011-01-28,7217.54,43.83,3.01,,,,,,212.1970577,7.742,False -1,21,2011-02-04,7331.93,42.27,2.989,,,,,,212.5668812,7.742,False -1,21,2011-02-11,8058.65,36.39,3.022,,,,,,212.9367046,7.742,True -1,21,2011-02-18,8478.51,57.36,3.045,,,,,,213.2478853,7.742,False -1,21,2011-02-25,7274.81,62.9,3.065,,,,,,213.535609,7.742,False -1,21,2011-03-04,8488.15,59.58,3.288,,,,,,213.8233327,7.742,False -1,21,2011-03-11,7731.5,53.56,3.459,,,,,,214.1110564,7.742,False -1,21,2011-03-18,7263.97,62.76,3.488,,,,,,214.3627114,7.742,False -1,21,2011-03-25,6303.72,69.97,3.473,,,,,,214.5999389,7.742,False -1,21,2011-04-01,7161.88,59.17,3.524,,,,,,214.8371664,7.682,False -1,21,2011-04-08,7486.59,67.84,3.622,,,,,,215.0743939,7.682,False -1,21,2011-04-15,7167.39,71.27,3.743,,,,,,215.2918561,7.682,False -1,21,2011-04-22,7503.26,72.99,3.807,,,,,,215.4599053,7.682,False -1,21,2011-04-29,7443.54,72.03,3.81,,,,,,215.6279544,7.682,False -1,21,2011-05-06,8099.62,64.61,3.906,,,,,,215.7960035,7.682,False -1,21,2011-05-13,7135.34,75.64,3.899,,,,,,215.9640526,7.682,False -1,21,2011-05-20,5898.29,67.63,3.907,,,,,,215.7339202,7.682,False -1,21,2011-05-27,6857.5,77.72,3.786,,,,,,215.5037878,7.682,False -1,21,2011-06-03,7490.16,83.0,3.699,,,,,,215.2736553,7.682,False -1,21,2011-06-10,7100.54,83.13,3.648,,,,,,215.0435229,7.682,False -1,21,2011-06-17,6261.02,86.41,3.637,,,,,,214.9980596,7.682,False -1,21,2011-06-24,7662.72,83.58,3.594,,,,,,215.0910982,7.682,False -1,21,2011-07-01,6546.71,85.55,3.524,,,,,,215.1841368,7.962,False -1,21,2011-07-08,6943.22,85.83,3.48,,,,,,215.2771754,7.962,False -1,21,2011-07-15,7118.71,88.54,3.575,,,,,,215.3611087,7.962,False -1,21,2011-07-22,7550.92,85.77,3.651,,,,,,215.4222784,7.962,False -1,21,2011-07-29,7825.99,86.83,3.682,,,,,,215.4834482,7.962,False -1,21,2011-08-05,8404.28,91.65,3.684,,,,,,215.544618,7.962,False -1,21,2011-08-12,7662.32,90.76,3.638,,,,,,215.6057878,7.962,False -1,21,2011-08-19,7619.8,89.94,3.554,,,,,,215.6693107,7.962,False -1,21,2011-08-26,7739.79,87.96,3.523,,,,,,215.7332258,7.962,False -1,21,2011-09-02,8384.67,87.83,3.533,,,,,,215.7971409,7.962,False -1,21,2011-09-09,8021.04,76.0,3.546,,,,,,215.861056,7.962,True -1,21,2011-09-16,8792.26,79.94,3.526,,,,,,216.0410526,7.962,False -1,21,2011-09-23,7764.04,75.8,3.467,,,,,,216.3758246,7.962,False -1,21,2011-09-30,8104.0,79.69,3.355,,,,,,216.7105965,7.962,False -1,21,2011-10-07,9020.44,69.31,3.285,,,,,,217.0453684,7.866,False -1,21,2011-10-14,7774.11,71.74,3.274,,,,,,217.3552733,7.866,False -1,21,2011-10-21,8113.95,63.71,3.353,,,,,,217.5159762,7.866,False -1,21,2011-10-28,8346.1,66.57,3.372,,,,,,217.6766791,7.866,False -1,21,2011-11-04,8784.77,54.98,3.332,,,,,,217.837382,7.866,False -1,21,2011-11-11,8742.41,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,21,2011-11-18,7820.46,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,21,2011-11-25,10158.02,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,21,2011-12-02,7854.17,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,21,2011-12-09,9686.83,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,21,2011-12-16,10855.44,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,21,2011-12-23,13551.98,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,21,2011-12-30,7329.41,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,21,2012-01-06,7154.5,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,21,2012-01-13,7090.86,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,21,2012-01-20,7062.96,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,21,2012-01-27,6843.13,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,21,2012-02-03,8168.45,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,21,2012-02-10,8467.27,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,21,2012-02-17,9065.08,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,21,2012-02-24,8042.3,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,21,2012-03-02,9722.09,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,21,2012-03-09,7309.95,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,21,2012-03-16,8184.24,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,21,2012-03-23,7602.33,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,21,2012-03-30,8410.81,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,21,2012-04-06,10083.36,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,21,2012-04-13,7223.96,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,21,2012-04-20,6508.01,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,21,2012-04-27,7561.57,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,21,2012-05-04,7873.18,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,21,2012-05-11,7120.67,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,21,2012-05-18,7124.99,70.33,3.63,6154.14,,45.11,1675.49,5508.18,221.742674,7.143,False -1,21,2012-05-25,6872.63,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,21,2012-06-01,7206.04,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,21,2012-06-08,7373.09,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,21,2012-06-15,7345.49,79.35,3.393,5621.99,109.6,0.25,2420.28,3083.26,221.7626421,7.143,False -1,21,2012-06-22,7768.11,78.39,3.346,8624.56,171.25,3.05,2524.07,7063.68,221.8030211,7.143,False -1,21,2012-06-29,6490.2,84.88,3.286,3965.73,161.6,,435.99,4212.97,221.8434,7.143,False -1,21,2012-07-06,7500.71,81.57,3.227,12218.76,94.4,192.83,4066.01,6149.04,221.8837789,6.908,False -1,21,2012-07-13,6717.31,77.12,3.256,7218.13,45.2,36.24,3909.38,2596.37,221.9241579,6.908,False -1,21,2012-07-20,6321.9,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,21,2012-07-27,6371.95,82.66,3.407,7146.9,389.02,1.59,10267.54,4325.19,221.9412954,6.908,False -1,21,2012-08-03,6393.77,86.11,3.417,27584.78,119.98,30.23,12007.04,4661.71,221.9498642,6.908,False -1,21,2012-08-10,6752.85,85.05,3.494,11436.22,245.0,6.85,6964.26,4836.22,221.9584329,6.908,False -1,21,2012-08-17,6182.36,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,21,2012-08-24,6965.28,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,21,2012-08-31,7031.77,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,21,2012-09-07,8258.47,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,21,2012-09-14,8013.36,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,21,2012-09-21,7085.79,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,21,2012-09-28,7737.13,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,21,2012-10-05,7790.01,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,21,2012-10-12,7020.8,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,21,2012-10-19,7614.71,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,21,2012-10-26,8194.63,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,22,2010-02-05,13623.98,42.31,2.572,,,,,,211.0963582,8.106,False -1,22,2010-02-12,14807.95,38.51,2.548,,,,,,211.2421698,8.106,True -1,22,2010-02-19,12290.16,39.93,2.514,,,,,,211.2891429,8.106,False -1,22,2010-02-26,9295.78,46.63,2.561,,,,,,211.3196429,8.106,False -1,22,2010-03-05,8219.49,46.5,2.625,,,,,,211.3501429,8.106,False -1,22,2010-03-12,10372.48,57.79,2.667,,,,,,211.3806429,8.106,False -1,22,2010-03-19,9338.09,54.58,2.72,,,,,,211.215635,8.106,False -1,22,2010-03-26,7464.39,51.45,2.732,,,,,,211.0180424,8.106,False -1,22,2010-04-02,7589.35,62.27,2.719,,,,,,210.8204499,7.808,False -1,22,2010-04-09,7407.71,65.86,2.77,,,,,,210.6228574,7.808,False -1,22,2010-04-16,6788.1,66.32,2.808,,,,,,210.4887,7.808,False -1,22,2010-04-23,5816.92,64.84,2.795,,,,,,210.4391228,7.808,False -1,22,2010-04-30,5271.14,67.41,2.78,,,,,,210.3895456,7.808,False -1,22,2010-05-07,7175.17,72.55,2.835,,,,,,210.3399684,7.808,False -1,22,2010-05-14,6772.41,74.78,2.854,,,,,,210.3374261,7.808,False -1,22,2010-05-21,5133.32,76.44,2.826,,,,,,210.6170934,7.808,False -1,22,2010-05-28,5729.72,80.44,2.759,,,,,,210.8967606,7.808,False -1,22,2010-06-04,7708.71,80.69,2.705,,,,,,211.1764278,7.808,False -1,22,2010-06-11,5877.06,80.43,2.668,,,,,,211.4560951,7.808,False -1,22,2010-06-18,6213.93,84.11,2.637,,,,,,211.4537719,7.808,False -1,22,2010-06-25,6058.56,84.34,2.653,,,,,,211.3386526,7.808,False -1,22,2010-07-02,6785.55,80.91,2.669,,,,,,211.2235333,7.787,False -1,22,2010-07-09,6256.11,80.48,2.642,,,,,,211.108414,7.787,False -1,22,2010-07-16,7016.9,83.15,2.623,,,,,,211.1003854,7.787,False -1,22,2010-07-23,5560.44,83.36,2.608,,,,,,211.2351443,7.787,False -1,22,2010-07-30,7201.71,81.84,2.64,,,,,,211.3699032,7.787,False -1,22,2010-08-06,7703.29,87.16,2.627,,,,,,211.5046621,7.787,False -1,22,2010-08-13,6373.79,87.0,2.692,,,,,,211.6394211,7.787,False -1,22,2010-08-20,8988.52,86.65,2.664,,,,,,211.6033633,7.787,False -1,22,2010-08-27,7620.68,85.22,2.619,,,,,,211.5673056,7.787,False -1,22,2010-09-03,7244.16,81.21,2.577,,,,,,211.5312479,7.787,False -1,22,2010-09-10,8800.21,78.69,2.565,,,,,,211.4951902,7.787,True -1,22,2010-09-17,7434.0,82.11,2.582,,,,,,211.5224596,7.787,False -1,22,2010-09-24,8387.18,80.94,2.624,,,,,,211.5972246,7.787,False -1,22,2010-10-01,8353.58,71.89,2.603,,,,,,211.6719895,7.838,False -1,22,2010-10-08,8086.24,63.93,2.633,,,,,,211.7467544,7.838,False -1,22,2010-10-15,7348.71,67.18,2.72,,,,,,211.8137436,7.838,False -1,22,2010-10-22,7117.18,69.86,2.725,,,,,,211.8612937,7.838,False -1,22,2010-10-29,5414.52,69.64,2.716,,,,,,211.9088438,7.838,False -1,22,2010-11-05,8085.19,58.74,2.689,,,,,,211.9563939,7.838,False -1,22,2010-11-12,7336.21,59.61,2.728,,,,,,212.003944,7.838,False -1,22,2010-11-19,7723.69,51.41,2.771,,,,,,211.8896737,7.838,False -1,22,2010-11-26,15769.67,64.52,2.735,,,,,,211.7484333,7.838,True -1,22,2010-12-03,9384.42,49.27,2.708,,,,,,211.607193,7.838,False -1,22,2010-12-10,12258.11,46.33,2.843,,,,,,211.4659526,7.838,False -1,22,2010-12-17,13589.23,49.84,2.869,,,,,,211.4053124,7.838,False -1,22,2010-12-24,19256.51,52.33,2.886,,,,,,211.4051222,7.838,False -1,22,2010-12-31,11551.12,48.43,2.943,,,,,,211.4049321,7.838,True -1,22,2011-01-07,7742.97,48.27,2.976,,,,,,211.4047419,7.742,False -1,22,2011-01-14,8329.06,35.4,2.983,,,,,,211.4574109,7.742,False -1,22,2011-01-21,6025.52,44.04,3.016,,,,,,211.8272343,7.742,False -1,22,2011-01-28,7536.69,43.83,3.01,,,,,,212.1970577,7.742,False -1,22,2011-02-04,12670.48,42.27,2.989,,,,,,212.5668812,7.742,False -1,22,2011-02-11,10871.95,36.39,3.022,,,,,,212.9367046,7.742,True -1,22,2011-02-18,13106.62,57.36,3.045,,,,,,213.2478853,7.742,False -1,22,2011-02-25,9172.57,62.9,3.065,,,,,,213.535609,7.742,False -1,22,2011-03-04,11331.35,59.58,3.288,,,,,,213.8233327,7.742,False -1,22,2011-03-11,9212.41,53.56,3.459,,,,,,214.1110564,7.742,False -1,22,2011-03-18,8456.15,62.76,3.488,,,,,,214.3627114,7.742,False -1,22,2011-03-25,8375.58,69.97,3.473,,,,,,214.5999389,7.742,False -1,22,2011-04-01,7319.02,59.17,3.524,,,,,,214.8371664,7.682,False -1,22,2011-04-08,6478.82,67.84,3.622,,,,,,215.0743939,7.682,False -1,22,2011-04-15,7416.29,71.27,3.743,,,,,,215.2918561,7.682,False -1,22,2011-04-22,6458.74,72.99,3.807,,,,,,215.4599053,7.682,False -1,22,2011-04-29,5759.63,72.03,3.81,,,,,,215.6279544,7.682,False -1,22,2011-05-06,7019.7,64.61,3.906,,,,,,215.7960035,7.682,False -1,22,2011-05-13,5839.53,75.64,3.899,,,,,,215.9640526,7.682,False -1,22,2011-05-20,5595.39,67.63,3.907,,,,,,215.7339202,7.682,False -1,22,2011-05-27,6510.11,77.72,3.786,,,,,,215.5037878,7.682,False -1,22,2011-06-03,6345.16,83.0,3.699,,,,,,215.2736553,7.682,False -1,22,2011-06-10,5776.12,83.13,3.648,,,,,,215.0435229,7.682,False -1,22,2011-06-17,7918.89,86.41,3.637,,,,,,214.9980596,7.682,False -1,22,2011-06-24,5829.38,83.58,3.594,,,,,,215.0910982,7.682,False -1,22,2011-07-01,6407.25,85.55,3.524,,,,,,215.1841368,7.962,False -1,22,2011-07-08,6244.32,85.83,3.48,,,,,,215.2771754,7.962,False -1,22,2011-07-15,5623.44,88.54,3.575,,,,,,215.3611087,7.962,False -1,22,2011-07-22,6115.76,85.77,3.651,,,,,,215.4222784,7.962,False -1,22,2011-07-29,7517.85,86.83,3.682,,,,,,215.4834482,7.962,False -1,22,2011-08-05,7073.87,91.65,3.684,,,,,,215.544618,7.962,False -1,22,2011-08-12,8233.21,90.76,3.638,,,,,,215.6057878,7.962,False -1,22,2011-08-19,6672.27,89.94,3.554,,,,,,215.6693107,7.962,False -1,22,2011-08-26,8073.21,87.96,3.523,,,,,,215.7332258,7.962,False -1,22,2011-09-02,7166.39,87.83,3.533,,,,,,215.7971409,7.962,False -1,22,2011-09-09,9716.37,76.0,3.546,,,,,,215.861056,7.962,True -1,22,2011-09-16,7526.42,79.94,3.526,,,,,,216.0410526,7.962,False -1,22,2011-09-23,7295.83,75.8,3.467,,,,,,216.3758246,7.962,False -1,22,2011-09-30,5153.35,79.69,3.355,,,,,,216.7105965,7.962,False -1,22,2011-10-07,7980.63,69.31,3.285,,,,,,217.0453684,7.866,False -1,22,2011-10-14,7688.46,71.74,3.274,,,,,,217.3552733,7.866,False -1,22,2011-10-21,7727.26,63.71,3.353,,,,,,217.5159762,7.866,False -1,22,2011-10-28,6866.34,66.57,3.372,,,,,,217.6766791,7.866,False -1,22,2011-11-04,8835.52,54.98,3.332,,,,,,217.837382,7.866,False -1,22,2011-11-11,6596.53,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,22,2011-11-18,7206.64,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,22,2011-11-25,20555.07,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,22,2011-12-02,7882.59,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,22,2011-12-09,10035.25,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,22,2011-12-16,9596.7,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,22,2011-12-23,16590.12,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,22,2011-12-30,10671.89,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,22,2012-01-06,8998.71,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,22,2012-01-13,8429.49,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,22,2012-01-20,6176.87,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,22,2012-01-27,5593.64,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,22,2012-02-03,9723.63,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,22,2012-02-10,11817.34,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,22,2012-02-17,10815.19,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,22,2012-02-24,8625.07,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,22,2012-03-02,11402.9,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,22,2012-03-09,11076.38,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,22,2012-03-16,7827.86,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,22,2012-03-23,6592.15,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,22,2012-03-30,8538.98,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,22,2012-04-06,7462.34,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,22,2012-04-13,5901.71,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,22,2012-04-20,7171.34,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,22,2012-04-27,6068.54,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,22,2012-05-04,7884.36,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,22,2012-05-11,6363.42,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,22,2012-05-18,6752.83,70.33,3.63,6154.14,,45.11,1675.49,5508.18,221.742674,7.143,False -1,22,2012-05-25,6878.26,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,22,2012-06-01,6332.62,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,22,2012-06-08,6816.23,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,22,2012-06-15,5764.52,79.35,3.393,5621.99,109.6,0.25,2420.28,3083.26,221.7626421,7.143,False -1,22,2012-06-22,7233.96,78.39,3.346,8624.56,171.25,3.05,2524.07,7063.68,221.8030211,7.143,False -1,22,2012-06-29,6008.22,84.88,3.286,3965.73,161.6,,435.99,4212.97,221.8434,7.143,False -1,22,2012-07-06,6382.12,81.57,3.227,12218.76,94.4,192.83,4066.01,6149.04,221.8837789,6.908,False -1,22,2012-07-13,5881.8,77.12,3.256,7218.13,45.2,36.24,3909.38,2596.37,221.9241579,6.908,False -1,22,2012-07-20,6767.52,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,22,2012-07-27,7170.57,82.66,3.407,7146.9,389.02,1.59,10267.54,4325.19,221.9412954,6.908,False -1,22,2012-08-03,7160.87,86.11,3.417,27584.78,119.98,30.23,12007.04,4661.71,221.9498642,6.908,False -1,22,2012-08-10,7229.94,85.05,3.494,11436.22,245.0,6.85,6964.26,4836.22,221.9584329,6.908,False -1,22,2012-08-17,7788.49,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,22,2012-08-24,6364.81,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,22,2012-08-31,5742.4,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,22,2012-09-07,7669.83,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,22,2012-09-14,5462.99,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,22,2012-09-21,5663.49,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,22,2012-09-28,6892.92,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,22,2012-10-05,7821.14,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,22,2012-10-12,8966.16,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,22,2012-10-19,8236.39,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,22,2012-10-26,8236.88,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,23,2010-02-05,24146.49,42.31,2.572,,,,,,211.0963582,8.106,False -1,23,2010-02-12,22812.41,38.51,2.548,,,,,,211.2421698,8.106,True -1,23,2010-02-19,21381.85,39.93,2.514,,,,,,211.2891429,8.106,False -1,23,2010-02-26,17798.37,46.63,2.561,,,,,,211.3196429,8.106,False -1,23,2010-03-05,18993.69,46.5,2.625,,,,,,211.3501429,8.106,False -1,23,2010-03-12,17426.63,57.79,2.667,,,,,,211.3806429,8.106,False -1,23,2010-03-19,20132.03,54.58,2.72,,,,,,211.215635,8.106,False -1,23,2010-03-26,19105.92,51.45,2.732,,,,,,211.0180424,8.106,False -1,23,2010-04-02,18666.57,62.27,2.719,,,,,,210.8204499,7.808,False -1,23,2010-04-09,21678.02,65.86,2.77,,,,,,210.6228574,7.808,False -1,23,2010-04-16,19811.02,66.32,2.808,,,,,,210.4887,7.808,False -1,23,2010-04-23,19377.76,64.84,2.795,,,,,,210.4391228,7.808,False -1,23,2010-04-30,18274.46,67.41,2.78,,,,,,210.3895456,7.808,False -1,23,2010-05-07,22172.27,72.55,2.835,,,,,,210.3399684,7.808,False -1,23,2010-05-14,19986.37,74.78,2.854,,,,,,210.3374261,7.808,False -1,23,2010-05-21,20697.6,76.44,2.826,,,,,,210.6170934,7.808,False -1,23,2010-05-28,23409.56,80.44,2.759,,,,,,210.8967606,7.808,False -1,23,2010-06-04,28857.18,80.69,2.705,,,,,,211.1764278,7.808,False -1,23,2010-06-11,24072.22,80.43,2.668,,,,,,211.4560951,7.808,False -1,23,2010-06-18,27795.85,84.11,2.637,,,,,,211.4537719,7.808,False -1,23,2010-06-25,27161.66,84.34,2.653,,,,,,211.3386526,7.808,False -1,23,2010-07-02,23137.32,80.91,2.669,,,,,,211.2235333,7.787,False -1,23,2010-07-09,22121.47,80.48,2.642,,,,,,211.108414,7.787,False -1,23,2010-07-16,19234.02,83.15,2.623,,,,,,211.1003854,7.787,False -1,23,2010-07-23,20200.65,83.36,2.608,,,,,,211.2351443,7.787,False -1,23,2010-07-30,20456.24,81.84,2.64,,,,,,211.3699032,7.787,False -1,23,2010-08-06,22200.83,87.16,2.627,,,,,,211.5046621,7.787,False -1,23,2010-08-13,20503.99,87.0,2.692,,,,,,211.6394211,7.787,False -1,23,2010-08-20,26519.58,86.65,2.664,,,,,,211.6033633,7.787,False -1,23,2010-08-27,28311.76,85.22,2.619,,,,,,211.5673056,7.787,False -1,23,2010-09-03,19045.76,81.21,2.577,,,,,,211.5312479,7.787,False -1,23,2010-09-10,16086.08,78.69,2.565,,,,,,211.4951902,7.787,True -1,23,2010-09-17,15589.89,82.11,2.582,,,,,,211.5224596,7.787,False -1,23,2010-09-24,15671.19,80.94,2.624,,,,,,211.5972246,7.787,False -1,23,2010-10-01,18377.92,71.89,2.603,,,,,,211.6719895,7.838,False -1,23,2010-10-08,22280.97,63.93,2.633,,,,,,211.7467544,7.838,False -1,23,2010-10-15,17717.02,67.18,2.72,,,,,,211.8137436,7.838,False -1,23,2010-10-22,17609.38,69.86,2.725,,,,,,211.8612937,7.838,False -1,23,2010-10-29,19134.38,69.64,2.716,,,,,,211.9088438,7.838,False -1,23,2010-11-05,26416.48,58.74,2.689,,,,,,211.9563939,7.838,False -1,23,2010-11-12,21370.42,59.61,2.728,,,,,,212.003944,7.838,False -1,23,2010-11-19,23106.93,51.41,2.771,,,,,,211.8896737,7.838,False -1,23,2010-11-26,33328.17,64.52,2.735,,,,,,211.7484333,7.838,True -1,23,2010-12-03,24834.59,49.27,2.708,,,,,,211.607193,7.838,False -1,23,2010-12-10,31241.47,46.33,2.843,,,,,,211.4659526,7.838,False -1,23,2010-12-17,40193.56,49.84,2.869,,,,,,211.4053124,7.838,False -1,23,2010-12-24,62381.0,52.33,2.886,,,,,,211.4051222,7.838,False -1,23,2010-12-31,18054.72,48.43,2.943,,,,,,211.4049321,7.838,True -1,23,2011-01-07,16955.3,48.27,2.976,,,,,,211.4047419,7.742,False -1,23,2011-01-14,20525.34,35.4,2.983,,,,,,211.4574109,7.742,False -1,23,2011-01-21,17596.0,44.04,3.016,,,,,,211.8272343,7.742,False -1,23,2011-01-28,13915.16,43.83,3.01,,,,,,212.1970577,7.742,False -1,23,2011-02-04,24429.4,42.27,2.989,,,,,,212.5668812,7.742,False -1,23,2011-02-11,22686.25,36.39,3.022,,,,,,212.9367046,7.742,True -1,23,2011-02-18,23901.98,57.36,3.045,,,,,,213.2478853,7.742,False -1,23,2011-02-25,19336.18,62.9,3.065,,,,,,213.535609,7.742,False -1,23,2011-03-04,21611.57,59.58,3.288,,,,,,213.8233327,7.742,False -1,23,2011-03-11,21167.35,53.56,3.459,,,,,,214.1110564,7.742,False -1,23,2011-03-18,19134.28,62.76,3.488,,,,,,214.3627114,7.742,False -1,23,2011-03-25,22776.24,69.97,3.473,,,,,,214.5999389,7.742,False -1,23,2011-04-01,20704.87,59.17,3.524,,,,,,214.8371664,7.682,False -1,23,2011-04-08,19942.92,67.84,3.622,,,,,,215.0743939,7.682,False -1,23,2011-04-15,20292.45,71.27,3.743,,,,,,215.2918561,7.682,False -1,23,2011-04-22,19716.05,72.99,3.807,,,,,,215.4599053,7.682,False -1,23,2011-04-29,19226.08,72.03,3.81,,,,,,215.6279544,7.682,False -1,23,2011-05-06,19922.66,64.61,3.906,,,,,,215.7960035,7.682,False -1,23,2011-05-13,21917.77,75.64,3.899,,,,,,215.9640526,7.682,False -1,23,2011-05-20,17367.03,67.63,3.907,,,,,,215.7339202,7.682,False -1,23,2011-05-27,21275.42,77.72,3.786,,,,,,215.5037878,7.682,False -1,23,2011-06-03,22916.25,83.0,3.699,,,,,,215.2736553,7.682,False -1,23,2011-06-10,21231.14,83.13,3.648,,,,,,215.0435229,7.682,False -1,23,2011-06-17,21482.19,86.41,3.637,,,,,,214.9980596,7.682,False -1,23,2011-06-24,25480.66,83.58,3.594,,,,,,215.0910982,7.682,False -1,23,2011-07-01,19484.78,85.55,3.524,,,,,,215.1841368,7.962,False -1,23,2011-07-08,19567.15,85.83,3.48,,,,,,215.2771754,7.962,False -1,23,2011-07-15,18171.24,88.54,3.575,,,,,,215.3611087,7.962,False -1,23,2011-07-22,17140.02,85.77,3.651,,,,,,215.4222784,7.962,False -1,23,2011-07-29,17790.7,86.83,3.682,,,,,,215.4834482,7.962,False -1,23,2011-08-05,20923.11,91.65,3.684,,,,,,215.544618,7.962,False -1,23,2011-08-12,21142.51,90.76,3.638,,,,,,215.6057878,7.962,False -1,23,2011-08-19,23568.53,89.94,3.554,,,,,,215.6693107,7.962,False -1,23,2011-08-26,24851.96,87.96,3.523,,,,,,215.7332258,7.962,False -1,23,2011-09-02,18827.59,87.83,3.533,,,,,,215.7971409,7.962,False -1,23,2011-09-09,16403.15,76.0,3.546,,,,,,215.861056,7.962,True -1,23,2011-09-16,13053.74,79.94,3.526,,,,,,216.0410526,7.962,False -1,23,2011-09-23,15044.0,75.8,3.467,,,,,,216.3758246,7.962,False -1,23,2011-09-30,16135.85,79.69,3.355,,,,,,216.7105965,7.962,False -1,23,2011-10-07,18327.16,69.31,3.285,,,,,,217.0453684,7.866,False -1,23,2011-10-14,17951.52,71.74,3.274,,,,,,217.3552733,7.866,False -1,23,2011-10-21,20272.49,63.71,3.353,,,,,,217.5159762,7.866,False -1,23,2011-10-28,19970.49,66.57,3.372,,,,,,217.6766791,7.866,False -1,23,2011-11-04,23869.96,54.98,3.332,,,,,,217.837382,7.866,False -1,23,2011-11-11,21318.68,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,23,2011-11-18,19124.1,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,23,2011-11-25,31848.99,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,23,2011-12-02,24682.22,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,23,2011-12-09,33303.15,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,23,2011-12-16,32907.32,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,23,2011-12-23,51911.82,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,23,2011-12-30,23757.52,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,23,2012-01-06,17203.25,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,23,2012-01-13,15395.96,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,23,2012-01-20,13738.46,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,23,2012-01-27,13690.78,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,23,2012-02-03,18537.41,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,23,2012-02-10,25581.44,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,23,2012-02-17,25295.03,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,23,2012-02-24,20374.68,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,23,2012-03-02,22257.51,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,23,2012-03-09,21179.12,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,23,2012-03-16,19391.07,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,23,2012-03-23,19261.99,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,23,2012-03-30,23356.66,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,23,2012-04-06,24604.49,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,23,2012-04-13,20132.49,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,23,2012-04-20,20768.42,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,23,2012-04-27,17587.72,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,23,2012-05-04,21973.08,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,23,2012-05-11,21536.76,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,23,2012-05-18,18435.16,70.33,3.63,6154.14,,45.11,1675.49,5508.18,221.742674,7.143,False -1,23,2012-05-25,20778.32,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,23,2012-06-01,23504.62,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,23,2012-06-08,23792.73,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,23,2012-06-15,24836.02,79.35,3.393,5621.99,109.6,0.25,2420.28,3083.26,221.7626421,7.143,False -1,23,2012-06-22,26200.55,78.39,3.346,8624.56,171.25,3.05,2524.07,7063.68,221.8030211,7.143,False -1,23,2012-06-29,23036.0,84.88,3.286,3965.73,161.6,,435.99,4212.97,221.8434,7.143,False -1,23,2012-07-06,22965.73,81.57,3.227,12218.76,94.4,192.83,4066.01,6149.04,221.8837789,6.908,False -1,23,2012-07-13,18326.49,77.12,3.256,7218.13,45.2,36.24,3909.38,2596.37,221.9241579,6.908,False -1,23,2012-07-20,18400.73,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,23,2012-07-27,18105.68,82.66,3.407,7146.9,389.02,1.59,10267.54,4325.19,221.9412954,6.908,False -1,23,2012-08-03,22566.41,86.11,3.417,27584.78,119.98,30.23,12007.04,4661.71,221.9498642,6.908,False -1,23,2012-08-10,21599.34,85.05,3.494,11436.22,245.0,6.85,6964.26,4836.22,221.9584329,6.908,False -1,23,2012-08-17,21808.81,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,23,2012-08-24,25618.62,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,23,2012-08-31,23361.12,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,23,2012-09-07,17406.85,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,23,2012-09-14,14172.52,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,23,2012-09-21,15702.02,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,23,2012-09-28,14731.92,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,23,2012-10-05,19478.62,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,23,2012-10-12,21024.28,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,23,2012-10-19,17191.96,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,23,2012-10-26,21460.58,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,24,2010-02-05,8272.9,42.31,2.572,,,,,,211.0963582,8.106,False -1,24,2010-02-12,8050.24,38.51,2.548,,,,,,211.2421698,8.106,True -1,24,2010-02-19,7366.7,39.93,2.514,,,,,,211.2891429,8.106,False -1,24,2010-02-26,5630.82,46.63,2.561,,,,,,211.3196429,8.106,False -1,24,2010-03-05,6885.9,46.5,2.625,,,,,,211.3501429,8.106,False -1,24,2010-03-12,5396.96,57.79,2.667,,,,,,211.3806429,8.106,False -1,24,2010-03-19,4519.82,54.58,2.72,,,,,,211.215635,8.106,False -1,24,2010-03-26,4618.27,51.45,2.732,,,,,,211.0180424,8.106,False -1,24,2010-04-02,7219.38,62.27,2.719,,,,,,210.8204499,7.808,False -1,24,2010-04-09,6358.78,65.86,2.77,,,,,,210.6228574,7.808,False -1,24,2010-04-16,5536.07,66.32,2.808,,,,,,210.4887,7.808,False -1,24,2010-04-23,5160.08,64.84,2.795,,,,,,210.4391228,7.808,False -1,24,2010-04-30,4628.59,67.41,2.78,,,,,,210.3895456,7.808,False -1,24,2010-05-07,5675.4,72.55,2.835,,,,,,210.3399684,7.808,False -1,24,2010-05-14,5180.35,74.78,2.854,,,,,,210.3374261,7.808,False -1,24,2010-05-21,5099.86,76.44,2.826,,,,,,210.6170934,7.808,False -1,24,2010-05-28,5085.04,80.44,2.759,,,,,,210.8967606,7.808,False -1,24,2010-06-04,6024.48,80.69,2.705,,,,,,211.1764278,7.808,False -1,24,2010-06-11,4863.25,80.43,2.668,,,,,,211.4560951,7.808,False -1,24,2010-06-18,4771.79,84.11,2.637,,,,,,211.4537719,7.808,False -1,24,2010-06-25,4590.68,84.34,2.653,,,,,,211.3386526,7.808,False -1,24,2010-07-02,4608.04,80.91,2.669,,,,,,211.2235333,7.787,False -1,24,2010-07-09,4632.65,80.48,2.642,,,,,,211.108414,7.787,False -1,24,2010-07-16,4688.09,83.15,2.623,,,,,,211.1003854,7.787,False -1,24,2010-07-23,4894.69,83.36,2.608,,,,,,211.2351443,7.787,False -1,24,2010-07-30,7541.56,81.84,2.64,,,,,,211.3699032,7.787,False -1,24,2010-08-06,10293.02,87.16,2.627,,,,,,211.5046621,7.787,False -1,24,2010-08-13,10872.75,87.0,2.692,,,,,,211.6394211,7.787,False -1,24,2010-08-20,17223.95,86.65,2.664,,,,,,211.6033633,7.787,False -1,24,2010-08-27,16489.07,85.22,2.619,,,,,,211.5673056,7.787,False -1,24,2010-09-03,4759.52,81.21,2.577,,,,,,211.5312479,7.787,False -1,24,2010-09-10,4214.57,78.69,2.565,,,,,,211.4951902,7.787,True -1,24,2010-09-17,3343.8,82.11,2.582,,,,,,211.5224596,7.787,False -1,24,2010-09-24,3526.46,80.94,2.624,,,,,,211.5972246,7.787,False -1,24,2010-10-01,5430.09,71.89,2.603,,,,,,211.6719895,7.838,False -1,24,2010-10-08,7042.44,63.93,2.633,,,,,,211.7467544,7.838,False -1,24,2010-10-15,4385.01,67.18,2.72,,,,,,211.8137436,7.838,False -1,24,2010-10-22,5223.73,69.86,2.725,,,,,,211.8612937,7.838,False -1,24,2010-10-29,5989.09,69.64,2.716,,,,,,211.9088438,7.838,False -1,24,2010-11-05,7834.13,58.74,2.689,,,,,,211.9563939,7.838,False -1,24,2010-11-12,5644.17,59.61,2.728,,,,,,212.003944,7.838,False -1,24,2010-11-19,6948.82,51.41,2.771,,,,,,211.8896737,7.838,False -1,24,2010-11-26,11915.5,64.52,2.735,,,,,,211.7484333,7.838,True -1,24,2010-12-03,8971.35,49.27,2.708,,,,,,211.607193,7.838,False -1,24,2010-12-10,10646.0,46.33,2.843,,,,,,211.4659526,7.838,False -1,24,2010-12-17,13318.9,49.84,2.869,,,,,,211.4053124,7.838,False -1,24,2010-12-24,15366.58,52.33,2.886,,,,,,211.4051222,7.838,False -1,24,2010-12-31,4562.4,48.43,2.943,,,,,,211.4049321,7.838,True -1,24,2011-01-07,4858.97,48.27,2.976,,,,,,211.4047419,7.742,False -1,24,2011-01-14,4859.54,35.4,2.983,,,,,,211.4574109,7.742,False -1,24,2011-01-21,4221.76,44.04,3.016,,,,,,211.8272343,7.742,False -1,24,2011-01-28,4187.94,43.83,3.01,,,,,,212.1970577,7.742,False -1,24,2011-02-04,9819.74,42.27,2.989,,,,,,212.5668812,7.742,False -1,24,2011-02-11,7695.45,36.39,3.022,,,,,,212.9367046,7.742,True -1,24,2011-02-18,7250.89,57.36,3.045,,,,,,213.2478853,7.742,False -1,24,2011-02-25,5887.9,62.9,3.065,,,,,,213.535609,7.742,False -1,24,2011-03-04,5691.44,59.58,3.288,,,,,,213.8233327,7.742,False -1,24,2011-03-11,5391.08,53.56,3.459,,,,,,214.1110564,7.742,False -1,24,2011-03-18,4117.8,62.76,3.488,,,,,,214.3627114,7.742,False -1,24,2011-03-25,5520.2,69.97,3.473,,,,,,214.5999389,7.742,False -1,24,2011-04-01,5356.2,59.17,3.524,,,,,,214.8371664,7.682,False -1,24,2011-04-08,5130.31,67.84,3.622,,,,,,215.0743939,7.682,False -1,24,2011-04-15,4581.3,71.27,3.743,,,,,,215.2918561,7.682,False -1,24,2011-04-22,5903.09,72.99,3.807,,,,,,215.4599053,7.682,False -1,24,2011-04-29,4639.8,72.03,3.81,,,,,,215.6279544,7.682,False -1,24,2011-05-06,3929.07,64.61,3.906,,,,,,215.7960035,7.682,False -1,24,2011-05-13,4007.6,75.64,3.899,,,,,,215.9640526,7.682,False -1,24,2011-05-20,3615.99,67.63,3.907,,,,,,215.7339202,7.682,False -1,24,2011-05-27,3529.22,77.72,3.786,,,,,,215.5037878,7.682,False -1,24,2011-06-03,3864.18,83.0,3.699,,,,,,215.2736553,7.682,False -1,24,2011-06-10,3930.71,83.13,3.648,,,,,,215.0435229,7.682,False -1,24,2011-06-17,3181.97,86.41,3.637,,,,,,214.9980596,7.682,False -1,24,2011-06-24,3249.59,83.58,3.594,,,,,,215.0910982,7.682,False -1,24,2011-07-01,4108.54,85.55,3.524,,,,,,215.1841368,7.962,False -1,24,2011-07-08,3217.71,85.83,3.48,,,,,,215.2771754,7.962,False -1,24,2011-07-15,2646.13,88.54,3.575,,,,,,215.3611087,7.962,False -1,24,2011-07-22,3557.17,85.77,3.651,,,,,,215.4222784,7.962,False -1,24,2011-07-29,4437.73,86.83,3.682,,,,,,215.4834482,7.962,False -1,24,2011-08-05,8729.88,91.65,3.684,,,,,,215.544618,7.962,False -1,24,2011-08-12,7863.47,90.76,3.638,,,,,,215.6057878,7.962,False -1,24,2011-08-19,14288.65,89.94,3.554,,,,,,215.6693107,7.962,False -1,24,2011-08-26,13670.95,87.96,3.523,,,,,,215.7332258,7.962,False -1,24,2011-09-02,4629.39,87.83,3.533,,,,,,215.7971409,7.962,False -1,24,2011-09-09,4212.08,76.0,3.546,,,,,,215.861056,7.962,True -1,24,2011-09-16,3840.96,79.94,3.526,,,,,,216.0410526,7.962,False -1,24,2011-09-23,2854.73,75.8,3.467,,,,,,216.3758246,7.962,False -1,24,2011-09-30,2957.53,79.69,3.355,,,,,,216.7105965,7.962,False -1,24,2011-10-07,4446.16,69.31,3.285,,,,,,217.0453684,7.866,False -1,24,2011-10-14,3461.67,71.74,3.274,,,,,,217.3552733,7.866,False -1,24,2011-10-21,7007.77,63.71,3.353,,,,,,217.5159762,7.866,False -1,24,2011-10-28,7173.54,66.57,3.372,,,,,,217.6766791,7.866,False -1,24,2011-11-04,6207.98,54.98,3.332,,,,,,217.837382,7.866,False -1,24,2011-11-11,6053.49,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,24,2011-11-18,4818.2,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,24,2011-11-25,10847.14,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,24,2011-12-02,6760.41,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,24,2011-12-09,9842.25,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,24,2011-12-16,11274.48,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,24,2011-12-23,12694.74,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,24,2011-12-30,4818.81,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,24,2012-01-06,4539.89,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,24,2012-01-13,3087.45,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,24,2012-01-20,3119.12,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,24,2012-01-27,3534.93,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,24,2012-02-03,5455.8,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,24,2012-02-10,7473.32,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,24,2012-02-17,6598.42,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,24,2012-02-24,5345.89,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,24,2012-03-02,6269.69,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,24,2012-03-09,5554.83,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,24,2012-03-16,4842.19,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,24,2012-03-23,5184.95,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,24,2012-03-30,5401.75,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,24,2012-04-06,7077.44,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,24,2012-04-13,4986.97,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,24,2012-04-20,5047.11,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,24,2012-04-27,3328.23,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,24,2012-05-04,5753.71,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,24,2012-05-11,4449.04,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,24,2012-05-18,4439.01,70.33,3.63,6154.14,,45.11,1675.49,5508.18,221.742674,7.143,False -1,24,2012-05-25,4830.18,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,24,2012-06-01,3853.81,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,24,2012-06-08,3810.35,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,24,2012-06-15,3670.73,79.35,3.393,5621.99,109.6,0.25,2420.28,3083.26,221.7626421,7.143,False -1,24,2012-06-22,4129.07,78.39,3.346,8624.56,171.25,3.05,2524.07,7063.68,221.8030211,7.143,False -1,24,2012-06-29,3729.35,84.88,3.286,3965.73,161.6,,435.99,4212.97,221.8434,7.143,False -1,24,2012-07-06,4671.82,81.57,3.227,12218.76,94.4,192.83,4066.01,6149.04,221.8837789,6.908,False -1,24,2012-07-13,4537.83,77.12,3.256,7218.13,45.2,36.24,3909.38,2596.37,221.9241579,6.908,False -1,24,2012-07-20,5164.1,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,24,2012-07-27,5974.25,82.66,3.407,7146.9,389.02,1.59,10267.54,4325.19,221.9412954,6.908,False -1,24,2012-08-03,8003.97,86.11,3.417,27584.78,119.98,30.23,12007.04,4661.71,221.9498642,6.908,False -1,24,2012-08-10,8870.23,85.05,3.494,11436.22,245.0,6.85,6964.26,4836.22,221.9584329,6.908,False -1,24,2012-08-17,12967.94,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,24,2012-08-24,16785.62,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,24,2012-08-31,13181.63,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,24,2012-09-07,5138.69,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,24,2012-09-14,4980.64,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,24,2012-09-21,4979.52,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,24,2012-09-28,4364.69,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,24,2012-10-05,7322.07,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,24,2012-10-12,7733.2,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,24,2012-10-19,5355.52,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,24,2012-10-26,7106.74,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,25,2010-02-05,11609.5,42.31,2.572,,,,,,211.0963582,8.106,False -1,25,2010-02-12,13268.75,38.51,2.548,,,,,,211.2421698,8.106,True -1,25,2010-02-19,10271.25,39.93,2.514,,,,,,211.2891429,8.106,False -1,25,2010-02-26,10218.67,46.63,2.561,,,,,,211.3196429,8.106,False -1,25,2010-03-05,10345.5,46.5,2.625,,,,,,211.3501429,8.106,False -1,25,2010-03-12,10705.75,57.79,2.667,,,,,,211.3806429,8.106,False -1,25,2010-03-19,12213.5,54.58,2.72,,,,,,211.215635,8.106,False -1,25,2010-03-26,13876.5,51.45,2.732,,,,,,211.0180424,8.106,False -1,25,2010-04-02,14964.5,62.27,2.719,,,,,,210.8204499,7.808,False -1,25,2010-04-09,12906.0,65.86,2.77,,,,,,210.6228574,7.808,False -1,25,2010-04-16,12360.85,66.32,2.808,,,,,,210.4887,7.808,False -1,25,2010-04-23,11295.45,64.84,2.795,,,,,,210.4391228,7.808,False -1,25,2010-04-30,11435.6,67.41,2.78,,,,,,210.3895456,7.808,False -1,25,2010-05-07,11446.25,72.55,2.835,,,,,,210.3399684,7.808,False -1,25,2010-05-14,11247.0,74.78,2.854,,,,,,210.3374261,7.808,False -1,25,2010-05-21,11805.5,76.44,2.826,,,,,,210.6170934,7.808,False -1,25,2010-05-28,11229.88,80.44,2.759,,,,,,210.8967606,7.808,False -1,25,2010-06-04,13504.5,80.69,2.705,,,,,,211.1764278,7.808,False -1,25,2010-06-11,11220.75,80.43,2.668,,,,,,211.4560951,7.808,False -1,25,2010-06-18,10119.0,84.11,2.637,,,,,,211.4537719,7.808,False -1,25,2010-06-25,10956.25,84.34,2.653,,,,,,211.3386526,7.808,False -1,25,2010-07-02,10504.25,80.91,2.669,,,,,,211.2235333,7.787,False -1,25,2010-07-09,9082.5,80.48,2.642,,,,,,211.108414,7.787,False -1,25,2010-07-16,9096.1,83.15,2.623,,,,,,211.1003854,7.787,False -1,25,2010-07-23,8238.77,83.36,2.608,,,,,,211.2351443,7.787,False -1,25,2010-07-30,8319.6,81.84,2.64,,,,,,211.3699032,7.787,False -1,25,2010-08-06,8737.4,87.16,2.627,,,,,,211.5046621,7.787,False -1,25,2010-08-13,8857.17,87.0,2.692,,,,,,211.6394211,7.787,False -1,25,2010-08-20,10173.93,86.65,2.664,,,,,,211.6033633,7.787,False -1,25,2010-08-27,11156.75,85.22,2.619,,,,,,211.5673056,7.787,False -1,25,2010-09-03,9170.32,81.21,2.577,,,,,,211.5312479,7.787,False -1,25,2010-09-10,8239.24,78.69,2.565,,,,,,211.4951902,7.787,True -1,25,2010-09-17,7817.07,82.11,2.582,,,,,,211.5224596,7.787,False -1,25,2010-09-24,7886.08,80.94,2.624,,,,,,211.5972246,7.787,False -1,25,2010-10-01,8643.04,71.89,2.603,,,,,,211.6719895,7.838,False -1,25,2010-10-08,10343.22,63.93,2.633,,,,,,211.7467544,7.838,False -1,25,2010-10-15,9056.33,67.18,2.72,,,,,,211.8137436,7.838,False -1,25,2010-10-22,9422.39,69.86,2.725,,,,,,211.8612937,7.838,False -1,25,2010-10-29,10949.11,69.64,2.716,,,,,,211.9088438,7.838,False -1,25,2010-11-05,10713.05,58.74,2.689,,,,,,211.9563939,7.838,False -1,25,2010-11-12,9402.53,59.61,2.728,,,,,,212.003944,7.838,False -1,25,2010-11-19,9919.34,51.41,2.771,,,,,,211.8896737,7.838,False -1,25,2010-11-26,11504.57,64.52,2.735,,,,,,211.7484333,7.838,True -1,25,2010-12-03,10536.65,49.27,2.708,,,,,,211.607193,7.838,False -1,25,2010-12-10,11086.99,46.33,2.843,,,,,,211.4659526,7.838,False -1,25,2010-12-17,12313.4,49.84,2.869,,,,,,211.4053124,7.838,False -1,25,2010-12-24,17880.04,52.33,2.886,,,,,,211.4051222,7.838,False -1,25,2010-12-31,7182.16,48.43,2.943,,,,,,211.4049321,7.838,True -1,25,2011-01-07,6747.11,48.27,2.976,,,,,,211.4047419,7.742,False -1,25,2011-01-14,6816.68,35.4,2.983,,,,,,211.4574109,7.742,False -1,25,2011-01-21,6624.78,44.04,3.016,,,,,,211.8272343,7.742,False -1,25,2011-01-28,6431.82,43.83,3.01,,,,,,212.1970577,7.742,False -1,25,2011-02-04,10044.53,42.27,2.989,,,,,,212.5668812,7.742,False -1,25,2011-02-11,8484.31,36.39,3.022,,,,,,212.9367046,7.742,True -1,25,2011-02-18,9605.64,57.36,3.045,,,,,,213.2478853,7.742,False -1,25,2011-02-25,9337.71,62.9,3.065,,,,,,213.535609,7.742,False -1,25,2011-03-04,12060.08,59.58,3.288,,,,,,213.8233327,7.742,False -1,25,2011-03-11,10509.59,53.56,3.459,,,,,,214.1110564,7.742,False -1,25,2011-03-18,11290.68,62.76,3.488,,,,,,214.3627114,7.742,False -1,25,2011-03-25,13071.74,69.97,3.473,,,,,,214.5999389,7.742,False -1,25,2011-04-01,10570.5,59.17,3.524,,,,,,214.8371664,7.682,False -1,25,2011-04-08,10712.47,67.84,3.622,,,,,,215.0743939,7.682,False -1,25,2011-04-15,10168.91,71.27,3.743,,,,,,215.2918561,7.682,False -1,25,2011-04-22,10590.44,72.99,3.807,,,,,,215.4599053,7.682,False -1,25,2011-04-29,10050.82,72.03,3.81,,,,,,215.6279544,7.682,False -1,25,2011-05-06,10466.42,64.61,3.906,,,,,,215.7960035,7.682,False -1,25,2011-05-13,10360.45,75.64,3.899,,,,,,215.9640526,7.682,False -1,25,2011-05-20,9257.67,67.63,3.907,,,,,,215.7339202,7.682,False -1,25,2011-05-27,9204.18,77.72,3.786,,,,,,215.5037878,7.682,False -1,25,2011-06-03,10967.44,83.0,3.699,,,,,,215.2736553,7.682,False -1,25,2011-06-10,9735.2,83.13,3.648,,,,,,215.0435229,7.682,False -1,25,2011-06-17,11024.11,86.41,3.637,,,,,,214.9980596,7.682,False -1,25,2011-06-24,11050.45,83.58,3.594,,,,,,215.0910982,7.682,False -1,25,2011-07-01,10158.06,85.55,3.524,,,,,,215.1841368,7.962,False -1,25,2011-07-08,10506.09,85.83,3.48,,,,,,215.2771754,7.962,False -1,25,2011-07-15,7500.17,88.54,3.575,,,,,,215.3611087,7.962,False -1,25,2011-07-22,7703.58,85.77,3.651,,,,,,215.4222784,7.962,False -1,25,2011-07-29,7299.9,86.83,3.682,,,,,,215.4834482,7.962,False -1,25,2011-08-05,10582.42,91.65,3.684,,,,,,215.544618,7.962,False -1,25,2011-08-12,8731.19,90.76,3.638,,,,,,215.6057878,7.962,False -1,25,2011-08-19,8972.53,89.94,3.554,,,,,,215.6693107,7.962,False -1,25,2011-08-26,10073.34,87.96,3.523,,,,,,215.7332258,7.962,False -1,25,2011-09-02,8186.36,87.83,3.533,,,,,,215.7971409,7.962,False -1,25,2011-09-09,9241.48,76.0,3.546,,,,,,215.861056,7.962,True -1,25,2011-09-16,7613.85,79.94,3.526,,,,,,216.0410526,7.962,False -1,25,2011-09-23,7538.64,75.8,3.467,,,,,,216.3758246,7.962,False -1,25,2011-09-30,8010.24,79.69,3.355,,,,,,216.7105965,7.962,False -1,25,2011-10-07,8907.86,69.31,3.285,,,,,,217.0453684,7.866,False -1,25,2011-10-14,9111.45,71.74,3.274,,,,,,217.3552733,7.866,False -1,25,2011-10-21,9014.23,63.71,3.353,,,,,,217.5159762,7.866,False -1,25,2011-10-28,10461.93,66.57,3.372,,,,,,217.6766791,7.866,False -1,25,2011-11-04,11718.41,54.98,3.332,,,,,,217.837382,7.866,False -1,25,2011-11-11,10417.72,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,25,2011-11-18,8130.08,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,25,2011-11-25,11997.22,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,25,2011-12-02,10721.09,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,25,2011-12-09,11802.37,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,25,2011-12-16,11820.17,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,25,2011-12-23,15195.72,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,25,2011-12-30,9327.8,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,25,2012-01-06,7359.16,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,25,2012-01-13,6384.22,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,25,2012-01-20,5272.76,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,25,2012-01-27,6350.26,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,25,2012-02-03,8798.84,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,25,2012-02-10,10179.01,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,25,2012-02-17,10930.07,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,25,2012-02-24,10225.67,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,25,2012-03-02,11620.37,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,25,2012-03-09,13087.32,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,25,2012-03-16,13002.03,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,25,2012-03-23,11387.52,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,25,2012-03-30,15027.13,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,25,2012-04-06,14732.09,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,25,2012-04-13,12736.32,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,25,2012-04-20,10115.85,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,25,2012-04-27,10563.87,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,25,2012-05-04,13530.43,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,25,2012-05-11,10206.26,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,25,2012-05-18,10029.04,70.33,3.63,6154.14,,45.11,1675.49,5508.18,221.742674,7.143,False -1,25,2012-05-25,10702.21,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,25,2012-06-01,11528.12,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,25,2012-06-08,10527.53,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,25,2012-06-15,10329.88,79.35,3.393,5621.99,109.6,0.25,2420.28,3083.26,221.7626421,7.143,False -1,25,2012-06-22,9848.45,78.39,3.346,8624.56,171.25,3.05,2524.07,7063.68,221.8030211,7.143,False -1,25,2012-06-29,9566.04,84.88,3.286,3965.73,161.6,,435.99,4212.97,221.8434,7.143,False -1,25,2012-07-06,11324.5,81.57,3.227,12218.76,94.4,192.83,4066.01,6149.04,221.8837789,6.908,False -1,25,2012-07-13,8281.23,77.12,3.256,7218.13,45.2,36.24,3909.38,2596.37,221.9241579,6.908,False -1,25,2012-07-20,9237.46,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,25,2012-07-27,8528.82,82.66,3.407,7146.9,389.02,1.59,10267.54,4325.19,221.9412954,6.908,False -1,25,2012-08-03,10019.2,86.11,3.417,27584.78,119.98,30.23,12007.04,4661.71,221.9498642,6.908,False -1,25,2012-08-10,8614.67,85.05,3.494,11436.22,245.0,6.85,6964.26,4836.22,221.9584329,6.908,False -1,25,2012-08-17,9780.51,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,25,2012-08-24,10625.07,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,25,2012-08-31,10284.77,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,25,2012-09-07,7461.45,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,25,2012-09-14,7541.58,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,25,2012-09-21,7804.28,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,25,2012-09-28,7685.71,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,25,2012-10-05,11140.24,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,25,2012-10-12,10485.04,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,25,2012-10-19,8702.47,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,25,2012-10-26,11066.13,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,26,2010-02-05,11737.12,42.31,2.572,,,,,,211.0963582,8.106,False -1,26,2010-02-12,10050.92,38.51,2.548,,,,,,211.2421698,8.106,True -1,26,2010-02-19,10547.6,39.93,2.514,,,,,,211.2891429,8.106,False -1,26,2010-02-26,8541.14,46.63,2.561,,,,,,211.3196429,8.106,False -1,26,2010-03-05,8772.65,46.5,2.625,,,,,,211.3501429,8.106,False -1,26,2010-03-12,7877.4,57.79,2.667,,,,,,211.3806429,8.106,False -1,26,2010-03-19,7923.66,54.58,2.72,,,,,,211.215635,8.106,False -1,26,2010-03-26,5870.09,51.45,2.732,,,,,,211.0180424,8.106,False -1,26,2010-04-02,9137.94,62.27,2.719,,,,,,210.8204499,7.808,False -1,26,2010-04-09,9152.08,65.86,2.77,,,,,,210.6228574,7.808,False -1,26,2010-04-16,8671.28,66.32,2.808,,,,,,210.4887,7.808,False -1,26,2010-04-23,7827.17,64.84,2.795,,,,,,210.4391228,7.808,False -1,26,2010-04-30,7971.44,67.41,2.78,,,,,,210.3895456,7.808,False -1,26,2010-05-07,7994.2,72.55,2.835,,,,,,210.3399684,7.808,False -1,26,2010-05-14,7378.58,74.78,2.854,,,,,,210.3374261,7.808,False -1,26,2010-05-21,7721.92,76.44,2.826,,,,,,210.6170934,7.808,False -1,26,2010-05-28,5720.08,80.44,2.759,,,,,,210.8967606,7.808,False -1,26,2010-06-04,7184.92,80.69,2.705,,,,,,211.1764278,7.808,False -1,26,2010-06-11,5737.18,80.43,2.668,,,,,,211.4560951,7.808,False -1,26,2010-06-18,6336.16,84.11,2.637,,,,,,211.4537719,7.808,False -1,26,2010-06-25,5754.0,84.34,2.653,,,,,,211.3386526,7.808,False -1,26,2010-07-02,5552.42,80.91,2.669,,,,,,211.2235333,7.787,False -1,26,2010-07-09,6279.07,80.48,2.642,,,,,,211.108414,7.787,False -1,26,2010-07-16,5830.68,83.15,2.623,,,,,,211.1003854,7.787,False -1,26,2010-07-23,5530.75,83.36,2.608,,,,,,211.2351443,7.787,False -1,26,2010-07-30,5607.96,81.84,2.64,,,,,,211.3699032,7.787,False -1,26,2010-08-06,6151.1,87.16,2.627,,,,,,211.5046621,7.787,False -1,26,2010-08-13,5975.36,87.0,2.692,,,,,,211.6394211,7.787,False -1,26,2010-08-20,6037.64,86.65,2.664,,,,,,211.6033633,7.787,False -1,26,2010-08-27,6148.47,85.22,2.619,,,,,,211.5673056,7.787,False -1,26,2010-09-03,6357.16,81.21,2.577,,,,,,211.5312479,7.787,False -1,26,2010-09-10,6160.0,78.69,2.565,,,,,,211.4951902,7.787,True -1,26,2010-09-17,5000.9,82.11,2.582,,,,,,211.5224596,7.787,False -1,26,2010-09-24,5282.7,80.94,2.624,,,,,,211.5972246,7.787,False -1,26,2010-10-01,8255.99,71.89,2.603,,,,,,211.6719895,7.838,False -1,26,2010-10-08,10543.31,63.93,2.633,,,,,,211.7467544,7.838,False -1,26,2010-10-15,7421.11,67.18,2.72,,,,,,211.8137436,7.838,False -1,26,2010-10-22,6316.22,69.86,2.725,,,,,,211.8612937,7.838,False -1,26,2010-10-29,6105.17,69.64,2.716,,,,,,211.9088438,7.838,False -1,26,2010-11-05,9601.7,58.74,2.689,,,,,,211.9563939,7.838,False -1,26,2010-11-12,7582.52,59.61,2.728,,,,,,212.003944,7.838,False -1,26,2010-11-19,8583.68,51.41,2.771,,,,,,211.8896737,7.838,False -1,26,2010-11-26,11918.3,64.52,2.735,,,,,,211.7484333,7.838,True -1,26,2010-12-03,8572.96,49.27,2.708,,,,,,211.607193,7.838,False -1,26,2010-12-10,8726.6,46.33,2.843,,,,,,211.4659526,7.838,False -1,26,2010-12-17,10671.46,49.84,2.869,,,,,,211.4053124,7.838,False -1,26,2010-12-24,14479.39,52.33,2.886,,,,,,211.4051222,7.838,False -1,26,2010-12-31,5003.84,48.43,2.943,,,,,,211.4049321,7.838,True -1,26,2011-01-07,4010.16,48.27,2.976,,,,,,211.4047419,7.742,False -1,26,2011-01-14,5355.58,35.4,2.983,,,,,,211.4574109,7.742,False -1,26,2011-01-21,4651.93,44.04,3.016,,,,,,211.8272343,7.742,False -1,26,2011-01-28,5285.36,43.83,3.01,,,,,,212.1970577,7.742,False -1,26,2011-02-04,7142.9,42.27,2.989,,,,,,212.5668812,7.742,False -1,26,2011-02-11,7738.63,36.39,3.022,,,,,,212.9367046,7.742,True -1,26,2011-02-18,8608.27,57.36,3.045,,,,,,213.2478853,7.742,False -1,26,2011-02-25,7227.41,62.9,3.065,,,,,,213.535609,7.742,False -1,26,2011-03-04,7576.44,59.58,3.288,,,,,,213.8233327,7.742,False -1,26,2011-03-11,7016.59,53.56,3.459,,,,,,214.1110564,7.742,False -1,26,2011-03-18,6892.71,62.76,3.488,,,,,,214.3627114,7.742,False -1,26,2011-03-25,5852.84,69.97,3.473,,,,,,214.5999389,7.742,False -1,26,2011-04-01,5946.53,59.17,3.524,,,,,,214.8371664,7.682,False -1,26,2011-04-08,5841.8,67.84,3.622,,,,,,215.0743939,7.682,False -1,26,2011-04-15,6997.03,71.27,3.743,,,,,,215.2918561,7.682,False -1,26,2011-04-22,6496.3,72.99,3.807,,,,,,215.4599053,7.682,False -1,26,2011-04-29,5813.66,72.03,3.81,,,,,,215.6279544,7.682,False -1,26,2011-05-06,5867.67,64.61,3.906,,,,,,215.7960035,7.682,False -1,26,2011-05-13,5372.91,75.64,3.899,,,,,,215.9640526,7.682,False -1,26,2011-05-20,5500.06,67.63,3.907,,,,,,215.7339202,7.682,False -1,26,2011-05-27,6253.05,77.72,3.786,,,,,,215.5037878,7.682,False -1,26,2011-06-03,6270.58,83.0,3.699,,,,,,215.2736553,7.682,False -1,26,2011-06-10,5711.42,83.13,3.648,,,,,,215.0435229,7.682,False -1,26,2011-06-17,5508.5,86.41,3.637,,,,,,214.9980596,7.682,False -1,26,2011-06-24,5543.24,83.58,3.594,,,,,,215.0910982,7.682,False -1,26,2011-07-01,5701.4,85.55,3.524,,,,,,215.1841368,7.962,False -1,26,2011-07-08,5172.07,85.83,3.48,,,,,,215.2771754,7.962,False -1,26,2011-07-15,4887.42,88.54,3.575,,,,,,215.3611087,7.962,False -1,26,2011-07-22,4356.37,85.77,3.651,,,,,,215.4222784,7.962,False -1,26,2011-07-29,4289.04,86.83,3.682,,,,,,215.4834482,7.962,False -1,26,2011-08-05,4825.24,91.65,3.684,,,,,,215.544618,7.962,False -1,26,2011-08-12,4529.47,90.76,3.638,,,,,,215.6057878,7.962,False -1,26,2011-08-19,6590.93,89.94,3.554,,,,,,215.6693107,7.962,False -1,26,2011-08-26,5089.68,87.96,3.523,,,,,,215.7332258,7.962,False -1,26,2011-09-02,4014.69,87.83,3.533,,,,,,215.7971409,7.962,False -1,26,2011-09-09,4217.53,76.0,3.546,,,,,,215.861056,7.962,True -1,26,2011-09-16,5003.37,79.94,3.526,,,,,,216.0410526,7.962,False -1,26,2011-09-23,4583.66,75.8,3.467,,,,,,216.3758246,7.962,False -1,26,2011-09-30,5081.35,79.69,3.355,,,,,,216.7105965,7.962,False -1,26,2011-10-07,7492.61,69.31,3.285,,,,,,217.0453684,7.866,False -1,26,2011-10-14,6560.2,71.74,3.274,,,,,,217.3552733,7.866,False -1,26,2011-10-21,8928.79,63.71,3.353,,,,,,217.5159762,7.866,False -1,26,2011-10-28,9038.21,66.57,3.372,,,,,,217.6766791,7.866,False -1,26,2011-11-04,9017.92,54.98,3.332,,,,,,217.837382,7.866,False -1,26,2011-11-11,7693.46,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,26,2011-11-18,5878.78,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,26,2011-11-25,8690.17,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,26,2011-12-02,7107.23,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,26,2011-12-09,8443.46,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,26,2011-12-16,9502.94,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,26,2011-12-23,12517.98,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,26,2011-12-30,5036.62,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,26,2012-01-06,4220.51,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,26,2012-01-13,4369.57,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,26,2012-01-20,4492.42,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,26,2012-01-27,4667.16,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,26,2012-02-03,6969.74,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,26,2012-02-10,9120.37,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,26,2012-02-17,7499.33,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,26,2012-02-24,7457.98,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,26,2012-03-02,8247.41,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,26,2012-03-09,7890.21,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,26,2012-03-16,7462.19,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,26,2012-03-23,7313.8,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,26,2012-03-30,7592.79,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,26,2012-04-06,8152.94,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,26,2012-04-13,6095.14,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,26,2012-04-20,6869.49,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,26,2012-04-27,6317.77,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,26,2012-05-04,6788.13,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,26,2012-05-11,5958.51,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,26,2012-05-18,5783.96,70.33,3.63,6154.14,,45.11,1675.49,5508.18,221.742674,7.143,False -1,26,2012-05-25,5069.36,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,26,2012-06-01,5319.66,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,26,2012-06-08,5082.27,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,26,2012-06-15,5688.08,79.35,3.393,5621.99,109.6,0.25,2420.28,3083.26,221.7626421,7.143,False -1,26,2012-06-22,5852.37,78.39,3.346,8624.56,171.25,3.05,2524.07,7063.68,221.8030211,7.143,False -1,26,2012-06-29,5615.89,84.88,3.286,3965.73,161.6,,435.99,4212.97,221.8434,7.143,False -1,26,2012-07-06,5851.77,81.57,3.227,12218.76,94.4,192.83,4066.01,6149.04,221.8837789,6.908,False -1,26,2012-07-13,4375.44,77.12,3.256,7218.13,45.2,36.24,3909.38,2596.37,221.9241579,6.908,False -1,26,2012-07-20,5279.41,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,26,2012-07-27,4350.86,82.66,3.407,7146.9,389.02,1.59,10267.54,4325.19,221.9412954,6.908,False -1,26,2012-08-03,5764.11,86.11,3.417,27584.78,119.98,30.23,12007.04,4661.71,221.9498642,6.908,False -1,26,2012-08-10,5498.9,85.05,3.494,11436.22,245.0,6.85,6964.26,4836.22,221.9584329,6.908,False -1,26,2012-08-17,4924.3,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,26,2012-08-24,5369.29,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,26,2012-08-31,5602.58,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,26,2012-09-07,5011.22,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,26,2012-09-14,6001.13,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,26,2012-09-21,6550.81,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,26,2012-09-28,5035.97,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,26,2012-10-05,8784.99,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,26,2012-10-12,12773.34,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,26,2012-10-19,7004.13,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,26,2012-10-26,7412.16,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,27,2010-02-05,2293.0,42.31,2.572,,,,,,211.0963582,8.106,False -1,27,2010-02-12,2339.5,38.51,2.548,,,,,,211.2421698,8.106,True -1,27,2010-02-19,2494.5,39.93,2.514,,,,,,211.2891429,8.106,False -1,27,2010-02-26,1666.75,46.63,2.561,,,,,,211.3196429,8.106,False -1,27,2010-03-05,1467.5,46.5,2.625,,,,,,211.3501429,8.106,False -1,27,2010-03-12,1130.0,57.79,2.667,,,,,,211.3806429,8.106,False -1,27,2010-03-19,1214.0,54.58,2.72,,,,,,211.215635,8.106,False -1,27,2010-03-26,1211.0,51.45,2.732,,,,,,211.0180424,8.106,False -1,27,2010-04-02,934.5,62.27,2.719,,,,,,210.8204499,7.808,False -1,27,2010-04-09,1111.25,65.86,2.77,,,,,,210.6228574,7.808,False -1,27,2010-04-16,1021.5,66.32,2.808,,,,,,210.4887,7.808,False -1,27,2010-04-23,1028.0,64.84,2.795,,,,,,210.4391228,7.808,False -1,27,2010-04-30,1061.29,67.41,2.78,,,,,,210.3895456,7.808,False -1,27,2010-05-07,966.75,72.55,2.835,,,,,,210.3399684,7.808,False -1,27,2010-05-14,1139.35,74.78,2.854,,,,,,210.3374261,7.808,False -1,27,2010-05-21,957.93,76.44,2.826,,,,,,210.6170934,7.808,False -1,27,2010-05-28,864.92,80.44,2.759,,,,,,210.8967606,7.808,False -1,27,2010-06-04,827.52,80.69,2.705,,,,,,211.1764278,7.808,False -1,27,2010-06-11,965.3,80.43,2.668,,,,,,211.4560951,7.808,False -1,27,2010-06-18,875.85,84.11,2.637,,,,,,211.4537719,7.808,False -1,27,2010-06-25,935.32,84.34,2.653,,,,,,211.3386526,7.808,False -1,27,2010-07-02,849.69,80.91,2.669,,,,,,211.2235333,7.787,False -1,27,2010-07-09,837.51,80.48,2.642,,,,,,211.108414,7.787,False -1,27,2010-07-16,897.88,83.15,2.623,,,,,,211.1003854,7.787,False -1,27,2010-07-23,819.8,83.36,2.608,,,,,,211.2351443,7.787,False -1,27,2010-07-30,882.13,81.84,2.64,,,,,,211.3699032,7.787,False -1,27,2010-08-06,1317.52,87.16,2.627,,,,,,211.5046621,7.787,False -1,27,2010-08-13,967.53,87.0,2.692,,,,,,211.6394211,7.787,False -1,27,2010-08-20,1737.89,86.65,2.664,,,,,,211.6033633,7.787,False -1,27,2010-08-27,1898.48,85.22,2.619,,,,,,211.5673056,7.787,False -1,27,2010-09-03,867.29,81.21,2.577,,,,,,211.5312479,7.787,False -1,27,2010-09-10,832.26,78.69,2.565,,,,,,211.4951902,7.787,True -1,27,2010-09-17,728.02,82.11,2.582,,,,,,211.5224596,7.787,False -1,27,2010-09-24,791.7,80.94,2.624,,,,,,211.5972246,7.787,False -1,27,2010-10-01,1042.3,71.89,2.603,,,,,,211.6719895,7.838,False -1,27,2010-10-08,1427.0,63.93,2.633,,,,,,211.7467544,7.838,False -1,27,2010-10-15,1208.8,67.18,2.72,,,,,,211.8137436,7.838,False -1,27,2010-10-22,1186.4,69.86,2.725,,,,,,211.8612937,7.838,False -1,27,2010-10-29,1371.4,69.64,2.716,,,,,,211.9088438,7.838,False -1,27,2010-11-05,1654.8,58.74,2.689,,,,,,211.9563939,7.838,False -1,27,2010-11-12,1474.2,59.61,2.728,,,,,,212.003944,7.838,False -1,27,2010-11-19,1884.6,51.41,2.771,,,,,,211.8896737,7.838,False -1,27,2010-11-26,2099.1,64.52,2.735,,,,,,211.7484333,7.838,True -1,27,2010-12-03,2385.59,49.27,2.708,,,,,,211.607193,7.838,False -1,27,2010-12-10,3035.7,46.33,2.843,,,,,,211.4659526,7.838,False -1,27,2010-12-17,3190.2,49.84,2.869,,,,,,211.4053124,7.838,False -1,27,2010-12-24,4168.6,52.33,2.886,,,,,,211.4051222,7.838,False -1,27,2010-12-31,1624.8,48.43,2.943,,,,,,211.4049321,7.838,True -1,27,2011-01-07,1562.57,48.27,2.976,,,,,,211.4047419,7.742,False -1,27,2011-01-14,1606.24,35.4,2.983,,,,,,211.4574109,7.742,False -1,27,2011-01-21,1312.55,44.04,3.016,,,,,,211.8272343,7.742,False -1,27,2011-01-28,1320.18,43.83,3.01,,,,,,212.1970577,7.742,False -1,27,2011-02-04,2096.94,42.27,2.989,,,,,,212.5668812,7.742,False -1,27,2011-02-11,1643.21,36.39,3.022,,,,,,212.9367046,7.742,True -1,27,2011-02-18,1797.04,57.36,3.045,,,,,,213.2478853,7.742,False -1,27,2011-02-25,1333.69,62.9,3.065,,,,,,213.535609,7.742,False -1,27,2011-03-04,1273.55,59.58,3.288,,,,,,213.8233327,7.742,False -1,27,2011-03-11,1420.55,53.56,3.459,,,,,,214.1110564,7.742,False -1,27,2011-03-18,1340.76,62.76,3.488,,,,,,214.3627114,7.742,False -1,27,2011-03-25,1232.91,69.97,3.473,,,,,,214.5999389,7.742,False -1,27,2011-04-01,1167.0,59.17,3.524,,,,,,214.8371664,7.682,False -1,27,2011-04-08,1054.96,67.84,3.622,,,,,,215.0743939,7.682,False -1,27,2011-04-15,1072.68,71.27,3.743,,,,,,215.2918561,7.682,False -1,27,2011-04-22,1061.68,72.99,3.807,,,,,,215.4599053,7.682,False -1,27,2011-04-29,1020.54,72.03,3.81,,,,,,215.6279544,7.682,False -1,27,2011-05-06,1016.2,64.61,3.906,,,,,,215.7960035,7.682,False -1,27,2011-05-13,835.91,75.64,3.899,,,,,,215.9640526,7.682,False -1,27,2011-05-20,914.25,67.63,3.907,,,,,,215.7339202,7.682,False -1,27,2011-05-27,984.31,77.72,3.786,,,,,,215.5037878,7.682,False -1,27,2011-06-03,895.74,83.0,3.699,,,,,,215.2736553,7.682,False -1,27,2011-06-10,1027.89,83.13,3.648,,,,,,215.0435229,7.682,False -1,27,2011-06-17,674.36,86.41,3.637,,,,,,214.9980596,7.682,False -1,27,2011-06-24,642.82,83.58,3.594,,,,,,215.0910982,7.682,False -1,27,2011-07-01,623.57,85.55,3.524,,,,,,215.1841368,7.962,False -1,27,2011-07-08,677.97,85.83,3.48,,,,,,215.2771754,7.962,False -1,27,2011-07-15,698.42,88.54,3.575,,,,,,215.3611087,7.962,False -1,27,2011-07-22,727.57,85.77,3.651,,,,,,215.4222784,7.962,False -1,27,2011-07-29,720.26,86.83,3.682,,,,,,215.4834482,7.962,False -1,27,2011-08-05,997.04,91.65,3.684,,,,,,215.544618,7.962,False -1,27,2011-08-12,815.45,90.76,3.638,,,,,,215.6057878,7.962,False -1,27,2011-08-19,1360.46,89.94,3.554,,,,,,215.6693107,7.962,False -1,27,2011-08-26,1698.89,87.96,3.523,,,,,,215.7332258,7.962,False -1,27,2011-09-02,826.83,87.83,3.533,,,,,,215.7971409,7.962,False -1,27,2011-09-09,786.47,76.0,3.546,,,,,,215.861056,7.962,True -1,27,2011-09-16,806.31,79.94,3.526,,,,,,216.0410526,7.962,False -1,27,2011-09-23,834.84,75.8,3.467,,,,,,216.3758246,7.962,False -1,27,2011-09-30,939.73,79.69,3.355,,,,,,216.7105965,7.962,False -1,27,2011-10-07,1295.94,69.31,3.285,,,,,,217.0453684,7.866,False -1,27,2011-10-14,1228.98,71.74,3.274,,,,,,217.3552733,7.866,False -1,27,2011-10-21,1785.51,63.71,3.353,,,,,,217.5159762,7.866,False -1,27,2011-10-28,1422.84,66.57,3.372,,,,,,217.6766791,7.866,False -1,27,2011-11-04,2002.85,54.98,3.332,,,,,,217.837382,7.866,False -1,27,2011-11-11,1882.59,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,27,2011-11-18,1707.85,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,27,2011-11-25,1992.88,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,27,2011-12-02,1752.13,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,27,2011-12-09,2606.7,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,27,2011-12-16,4225.6,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,27,2011-12-23,5131.93,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,27,2011-12-30,2882.08,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,27,2012-01-06,1788.6,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,27,2012-01-13,1623.81,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,27,2012-01-20,1451.96,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,27,2012-01-27,966.46,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,27,2012-02-03,1915.13,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,27,2012-02-10,2367.25,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,27,2012-02-17,2538.15,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,27,2012-02-24,1784.56,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,27,2012-03-02,1550.19,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,27,2012-03-09,1418.25,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,27,2012-03-16,1461.99,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,27,2012-03-23,1269.16,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,27,2012-03-30,1409.77,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,27,2012-04-06,1429.08,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,27,2012-04-13,983.69,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,27,2012-04-20,970.43,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,27,2012-04-27,1019.53,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,27,2012-05-04,1033.05,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,27,2012-05-11,887.99,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,27,2012-05-18,921.0,70.33,3.63,6154.14,,45.11,1675.49,5508.18,221.742674,7.143,False -1,27,2012-05-25,775.09,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,27,2012-06-01,1030.9,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,27,2012-06-08,1033.86,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,27,2012-06-15,822.19,79.35,3.393,5621.99,109.6,0.25,2420.28,3083.26,221.7626421,7.143,False -1,27,2012-06-22,1030.06,78.39,3.346,8624.56,171.25,3.05,2524.07,7063.68,221.8030211,7.143,False -1,27,2012-06-29,1010.07,84.88,3.286,3965.73,161.6,,435.99,4212.97,221.8434,7.143,False -1,27,2012-07-06,993.52,81.57,3.227,12218.76,94.4,192.83,4066.01,6149.04,221.8837789,6.908,False -1,27,2012-07-13,1018.36,77.12,3.256,7218.13,45.2,36.24,3909.38,2596.37,221.9241579,6.908,False -1,27,2012-07-20,1241.1,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,27,2012-07-27,938.36,82.66,3.407,7146.9,389.02,1.59,10267.54,4325.19,221.9412954,6.908,False -1,27,2012-08-03,1145.67,86.11,3.417,27584.78,119.98,30.23,12007.04,4661.71,221.9498642,6.908,False -1,27,2012-08-10,1122.14,85.05,3.494,11436.22,245.0,6.85,6964.26,4836.22,221.9584329,6.908,False -1,27,2012-08-17,1476.09,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,27,2012-08-24,1643.59,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,27,2012-08-31,1580.28,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,27,2012-09-07,1060.29,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,27,2012-09-14,857.88,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,27,2012-09-21,1047.27,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,27,2012-09-28,948.57,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,27,2012-10-05,1492.09,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,27,2012-10-12,1536.58,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,27,2012-10-19,1841.73,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,27,2012-10-26,1712.02,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,28,2010-02-05,1085.29,42.31,2.572,,,,,,211.0963582,8.106,False -1,28,2010-02-12,1008.36,38.51,2.548,,,,,,211.2421698,8.106,True -1,28,2010-02-19,1012.09,39.93,2.514,,,,,,211.2891429,8.106,False -1,28,2010-02-26,986.07,46.63,2.561,,,,,,211.3196429,8.106,False -1,28,2010-03-05,1002.2,46.5,2.625,,,,,,211.3501429,8.106,False -1,28,2010-03-12,838.67,57.79,2.667,,,,,,211.3806429,8.106,False -1,28,2010-03-19,806.03,54.58,2.72,,,,,,211.215635,8.106,False -1,28,2010-03-26,726.11,51.45,2.732,,,,,,211.0180424,8.106,False -1,28,2010-04-02,995.36,62.27,2.719,,,,,,210.8204499,7.808,False -1,28,2010-04-09,1151.63,65.86,2.77,,,,,,210.6228574,7.808,False -1,28,2010-04-16,582.63,66.32,2.808,,,,,,210.4887,7.808,False -1,28,2010-04-23,627.02,64.84,2.795,,,,,,210.4391228,7.808,False -1,28,2010-04-30,691.4,67.41,2.78,,,,,,210.3895456,7.808,False -1,28,2010-05-07,773.22,72.55,2.835,,,,,,210.3399684,7.808,False -1,28,2010-05-14,653.81,74.78,2.854,,,,,,210.3374261,7.808,False -1,28,2010-05-21,491.69,76.44,2.826,,,,,,210.6170934,7.808,False -1,28,2010-05-28,416.53,80.44,2.759,,,,,,210.8967606,7.808,False -1,28,2010-06-04,483.93,80.69,2.705,,,,,,211.1764278,7.808,False -1,28,2010-06-11,487.7,80.43,2.668,,,,,,211.4560951,7.808,False -1,28,2010-06-18,456.77,84.11,2.637,,,,,,211.4537719,7.808,False -1,28,2010-06-25,513.53,84.34,2.653,,,,,,211.3386526,7.808,False -1,28,2010-07-02,446.76,80.91,2.669,,,,,,211.2235333,7.787,False -1,28,2010-07-09,423.22,80.48,2.642,,,,,,211.108414,7.787,False -1,28,2010-07-16,453.36,83.15,2.623,,,,,,211.1003854,7.787,False -1,28,2010-07-23,534.78,83.36,2.608,,,,,,211.2351443,7.787,False -1,28,2010-07-30,383.56,81.84,2.64,,,,,,211.3699032,7.787,False -1,28,2010-08-06,532.59,87.16,2.627,,,,,,211.5046621,7.787,False -1,28,2010-08-13,495.27,87.0,2.692,,,,,,211.6394211,7.787,False -1,28,2010-08-20,436.4,86.65,2.664,,,,,,211.6033633,7.787,False -1,28,2010-08-27,521.37,85.22,2.619,,,,,,211.5673056,7.787,False -1,28,2010-09-03,406.39,81.21,2.577,,,,,,211.5312479,7.787,False -1,28,2010-09-10,478.76,78.69,2.565,,,,,,211.4951902,7.787,True -1,28,2010-09-17,604.44,82.11,2.582,,,,,,211.5224596,7.787,False -1,28,2010-09-24,560.07,80.94,2.624,,,,,,211.5972246,7.787,False -1,28,2010-10-01,741.36,71.89,2.603,,,,,,211.6719895,7.838,False -1,28,2010-10-08,950.27,63.93,2.633,,,,,,211.7467544,7.838,False -1,28,2010-10-15,831.09,67.18,2.72,,,,,,211.8137436,7.838,False -1,28,2010-10-22,628.66,69.86,2.725,,,,,,211.8612937,7.838,False -1,28,2010-10-29,862.24,69.64,2.716,,,,,,211.9088438,7.838,False -1,28,2010-11-05,857.28,58.74,2.689,,,,,,211.9563939,7.838,False -1,28,2010-11-12,1027.18,59.61,2.728,,,,,,212.003944,7.838,False -1,28,2010-11-19,936.9,51.41,2.771,,,,,,211.8896737,7.838,False -1,28,2010-11-26,932.76,64.52,2.735,,,,,,211.7484333,7.838,True -1,28,2010-12-03,731.31,49.27,2.708,,,,,,211.607193,7.838,False -1,28,2010-12-10,1050.63,46.33,2.843,,,,,,211.4659526,7.838,False -1,28,2010-12-17,1071.86,49.84,2.869,,,,,,211.4053124,7.838,False -1,28,2010-12-24,994.88,52.33,2.886,,,,,,211.4051222,7.838,False -1,28,2010-12-31,516.85,48.43,2.943,,,,,,211.4049321,7.838,True -1,28,2011-01-07,656.29,48.27,2.976,,,,,,211.4047419,7.742,False -1,28,2011-01-14,781.19,35.4,2.983,,,,,,211.4574109,7.742,False -1,28,2011-01-21,795.05,44.04,3.016,,,,,,211.8272343,7.742,False -1,28,2011-01-28,796.71,43.83,3.01,,,,,,212.1970577,7.742,False -1,28,2011-02-04,671.34,42.27,2.989,,,,,,212.5668812,7.742,False -1,28,2011-02-11,780.76,36.39,3.022,,,,,,212.9367046,7.742,True -1,28,2011-02-18,905.99,57.36,3.045,,,,,,213.2478853,7.742,False -1,28,2011-02-25,662.16,62.9,3.065,,,,,,213.535609,7.742,False -1,28,2011-03-04,674.35,59.58,3.288,,,,,,213.8233327,7.742,False -1,28,2011-03-11,660.45,53.56,3.459,,,,,,214.1110564,7.742,False -1,28,2011-03-18,627.89,62.76,3.488,,,,,,214.3627114,7.742,False -1,28,2011-03-25,578.59,69.97,3.473,,,,,,214.5999389,7.742,False -1,28,2011-04-01,602.63,59.17,3.524,,,,,,214.8371664,7.682,False -1,28,2011-04-08,623.65,67.84,3.622,,,,,,215.0743939,7.682,False -1,28,2011-04-15,421.77,71.27,3.743,,,,,,215.2918561,7.682,False -1,28,2011-04-22,729.26,72.99,3.807,,,,,,215.4599053,7.682,False -1,28,2011-04-29,646.18,72.03,3.81,,,,,,215.6279544,7.682,False -1,28,2011-05-06,571.94,64.61,3.906,,,,,,215.7960035,7.682,False -1,28,2011-05-13,551.12,75.64,3.899,,,,,,215.9640526,7.682,False -1,28,2011-05-20,482.1,67.63,3.907,,,,,,215.7339202,7.682,False -1,28,2011-05-27,363.45,77.72,3.786,,,,,,215.5037878,7.682,False -1,28,2011-06-03,411.94,83.0,3.699,,,,,,215.2736553,7.682,False -1,28,2011-06-10,495.52,83.13,3.648,,,,,,215.0435229,7.682,False -1,28,2011-06-17,376.32,86.41,3.637,,,,,,214.9980596,7.682,False -1,28,2011-06-24,304.32,83.58,3.594,,,,,,215.0910982,7.682,False -1,28,2011-07-01,436.66,85.55,3.524,,,,,,215.1841368,7.962,False -1,28,2011-07-08,423.27,85.83,3.48,,,,,,215.2771754,7.962,False -1,28,2011-07-15,350.95,88.54,3.575,,,,,,215.3611087,7.962,False -1,28,2011-07-22,372.51,85.77,3.651,,,,,,215.4222784,7.962,False -1,28,2011-07-29,301.2,86.83,3.682,,,,,,215.4834482,7.962,False -1,28,2011-08-05,449.39,91.65,3.684,,,,,,215.544618,7.962,False -1,28,2011-08-12,302.76,90.76,3.638,,,,,,215.6057878,7.962,False -1,28,2011-08-19,259.67,89.94,3.554,,,,,,215.6693107,7.962,False -1,28,2011-08-26,334.16,87.96,3.523,,,,,,215.7332258,7.962,False -1,28,2011-09-02,342.96,87.83,3.533,,,,,,215.7971409,7.962,False -1,28,2011-09-09,483.05,76.0,3.546,,,,,,215.861056,7.962,True -1,28,2011-09-16,427.2,79.94,3.526,,,,,,216.0410526,7.962,False -1,28,2011-09-23,418.48,75.8,3.467,,,,,,216.3758246,7.962,False -1,28,2011-09-30,537.0,79.69,3.355,,,,,,216.7105965,7.962,False -1,28,2011-10-07,548.26,69.31,3.285,,,,,,217.0453684,7.866,False -1,28,2011-10-14,430.34,71.74,3.274,,,,,,217.3552733,7.866,False -1,28,2011-10-21,616.4,63.71,3.353,,,,,,217.5159762,7.866,False -1,28,2011-10-28,670.38,66.57,3.372,,,,,,217.6766791,7.866,False -1,28,2011-11-04,966.26,54.98,3.332,,,,,,217.837382,7.866,False -1,28,2011-11-11,788.61,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,28,2011-11-18,648.03,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,28,2011-11-25,526.29,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,28,2011-12-02,685.52,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,28,2011-12-09,820.59,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,28,2011-12-16,853.19,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,28,2011-12-23,903.97,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,28,2011-12-30,714.86,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,28,2012-01-06,557.94,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,28,2012-01-13,539.86,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,28,2012-01-20,634.48,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,28,2012-01-27,641.94,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,28,2012-02-03,571.7,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,28,2012-02-10,745.15,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,28,2012-02-17,845.62,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,28,2012-02-24,734.59,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,28,2012-03-02,633.51,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,28,2012-03-09,657.41,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,28,2012-03-16,513.24,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,28,2012-03-23,457.22,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,28,2012-03-30,502.86,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,28,2012-04-06,655.22,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,28,2012-04-13,434.56,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,28,2012-04-20,527.48,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,28,2012-04-27,354.59,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,28,2012-05-04,564.69,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,28,2012-05-11,420.08,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,28,2012-05-18,427.37,70.33,3.63,6154.14,,45.11,1675.49,5508.18,221.742674,7.143,False -1,28,2012-05-25,300.15,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,28,2012-06-01,352.99,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,28,2012-06-08,389.31,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,28,2012-06-15,419.35,79.35,3.393,5621.99,109.6,0.25,2420.28,3083.26,221.7626421,7.143,False -1,28,2012-06-22,371.9,78.39,3.346,8624.56,171.25,3.05,2524.07,7063.68,221.8030211,7.143,False -1,28,2012-06-29,439.75,84.88,3.286,3965.73,161.6,,435.99,4212.97,221.8434,7.143,False -1,28,2012-07-06,416.06,81.57,3.227,12218.76,94.4,192.83,4066.01,6149.04,221.8837789,6.908,False -1,28,2012-07-13,331.24,77.12,3.256,7218.13,45.2,36.24,3909.38,2596.37,221.9241579,6.908,False -1,28,2012-07-20,310.65,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,28,2012-07-27,258.1,82.66,3.407,7146.9,389.02,1.59,10267.54,4325.19,221.9412954,6.908,False -1,28,2012-08-03,303.36,86.11,3.417,27584.78,119.98,30.23,12007.04,4661.71,221.9498642,6.908,False -1,28,2012-08-10,307.87,85.05,3.494,11436.22,245.0,6.85,6964.26,4836.22,221.9584329,6.908,False -1,28,2012-08-17,312.75,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,28,2012-08-24,307.34,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,28,2012-08-31,283.4,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,28,2012-09-07,374.15,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,28,2012-09-14,403.87,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,28,2012-09-21,490.61,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,28,2012-09-28,402.73,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,28,2012-10-05,641.7,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,28,2012-10-12,596.37,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,28,2012-10-19,656.45,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,28,2012-10-26,742.48,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,29,2010-02-05,7024.95,42.31,2.572,,,,,,211.0963582,8.106,False -1,29,2010-02-12,7696.61,38.51,2.548,,,,,,211.2421698,8.106,True -1,29,2010-02-19,7966.55,39.93,2.514,,,,,,211.2891429,8.106,False -1,29,2010-02-26,4972.65,46.63,2.561,,,,,,211.3196429,8.106,False -1,29,2010-03-05,5306.7,46.5,2.625,,,,,,211.3501429,8.106,False -1,29,2010-03-12,3841.96,57.79,2.667,,,,,,211.3806429,8.106,False -1,29,2010-03-19,5406.4,54.58,2.72,,,,,,211.215635,8.106,False -1,29,2010-03-26,3520.75,51.45,2.732,,,,,,211.0180424,8.106,False -1,29,2010-04-02,4143.54,62.27,2.719,,,,,,210.8204499,7.808,False -1,29,2010-04-09,4317.52,65.86,2.77,,,,,,210.6228574,7.808,False -1,29,2010-04-16,3963.5,66.32,2.808,,,,,,210.4887,7.808,False -1,29,2010-04-23,4187.11,64.84,2.795,,,,,,210.4391228,7.808,False -1,29,2010-04-30,3793.75,67.41,2.78,,,,,,210.3895456,7.808,False -1,29,2010-05-07,5277.46,72.55,2.835,,,,,,210.3399684,7.808,False -1,29,2010-05-14,5651.19,74.78,2.854,,,,,,210.3374261,7.808,False -1,29,2010-05-21,4333.28,76.44,2.826,,,,,,210.6170934,7.808,False -1,29,2010-05-28,3532.78,80.44,2.759,,,,,,210.8967606,7.808,False -1,29,2010-06-04,4062.22,80.69,2.705,,,,,,211.1764278,7.808,False -1,29,2010-06-11,4121.2,80.43,2.668,,,,,,211.4560951,7.808,False -1,29,2010-06-18,4022.0,84.11,2.637,,,,,,211.4537719,7.808,False -1,29,2010-06-25,4486.72,84.34,2.653,,,,,,211.3386526,7.808,False -1,29,2010-07-02,5222.08,80.91,2.669,,,,,,211.2235333,7.787,False -1,29,2010-07-09,5469.9,80.48,2.642,,,,,,211.108414,7.787,False -1,29,2010-07-16,4571.66,83.15,2.623,,,,,,211.1003854,7.787,False -1,29,2010-07-23,3814.24,83.36,2.608,,,,,,211.2351443,7.787,False -1,29,2010-07-30,4519.33,81.84,2.64,,,,,,211.3699032,7.787,False -1,29,2010-08-06,5511.97,87.16,2.627,,,,,,211.5046621,7.787,False -1,29,2010-08-13,5075.2,87.0,2.692,,,,,,211.6394211,7.787,False -1,29,2010-08-20,5348.58,86.65,2.664,,,,,,211.6033633,7.787,False -1,29,2010-08-27,5115.42,85.22,2.619,,,,,,211.5673056,7.787,False -1,29,2010-09-03,4892.98,81.21,2.577,,,,,,211.5312479,7.787,False -1,29,2010-09-10,3701.66,78.69,2.565,,,,,,211.4951902,7.787,True -1,29,2010-09-17,3959.42,82.11,2.582,,,,,,211.5224596,7.787,False -1,29,2010-09-24,3775.77,80.94,2.624,,,,,,211.5972246,7.787,False -1,29,2010-10-01,3425.58,71.89,2.603,,,,,,211.6719895,7.838,False -1,29,2010-10-08,4706.6,63.93,2.633,,,,,,211.7467544,7.838,False -1,29,2010-10-15,4085.14,67.18,2.72,,,,,,211.8137436,7.838,False -1,29,2010-10-22,3853.68,69.86,2.725,,,,,,211.8612937,7.838,False -1,29,2010-10-29,4498.64,69.64,2.716,,,,,,211.9088438,7.838,False -1,29,2010-11-05,5087.02,58.74,2.689,,,,,,211.9563939,7.838,False -1,29,2010-11-12,4990.65,59.61,2.728,,,,,,212.003944,7.838,False -1,29,2010-11-19,5275.25,51.41,2.771,,,,,,211.8896737,7.838,False -1,29,2010-11-26,6603.2,64.52,2.735,,,,,,211.7484333,7.838,True -1,29,2010-12-03,5539.2,49.27,2.708,,,,,,211.607193,7.838,False -1,29,2010-12-10,7917.07,46.33,2.843,,,,,,211.4659526,7.838,False -1,29,2010-12-17,9210.45,49.84,2.869,,,,,,211.4053124,7.838,False -1,29,2010-12-24,14065.97,52.33,2.886,,,,,,211.4051222,7.838,False -1,29,2010-12-31,5104.15,48.43,2.943,,,,,,211.4049321,7.838,True -1,29,2011-01-07,4993.4,48.27,2.976,,,,,,211.4047419,7.742,False -1,29,2011-01-14,4923.2,35.4,2.983,,,,,,211.4574109,7.742,False -1,29,2011-01-21,3778.3,44.04,3.016,,,,,,211.8272343,7.742,False -1,29,2011-01-28,3749.14,43.83,3.01,,,,,,212.1970577,7.742,False -1,29,2011-02-04,5656.37,42.27,2.989,,,,,,212.5668812,7.742,False -1,29,2011-02-11,6388.13,36.39,3.022,,,,,,212.9367046,7.742,True -1,29,2011-02-18,7917.33,57.36,3.045,,,,,,213.2478853,7.742,False -1,29,2011-02-25,4607.7,62.9,3.065,,,,,,213.535609,7.742,False -1,29,2011-03-04,5396.35,59.58,3.288,,,,,,213.8233327,7.742,False -1,29,2011-03-11,4876.69,53.56,3.459,,,,,,214.1110564,7.742,False -1,29,2011-03-18,4086.48,62.76,3.488,,,,,,214.3627114,7.742,False -1,29,2011-03-25,3932.66,69.97,3.473,,,,,,214.5999389,7.742,False -1,29,2011-04-01,3885.21,59.17,3.524,,,,,,214.8371664,7.682,False -1,29,2011-04-08,4548.03,67.84,3.622,,,,,,215.0743939,7.682,False -1,29,2011-04-15,4176.76,71.27,3.743,,,,,,215.2918561,7.682,False -1,29,2011-04-22,3866.11,72.99,3.807,,,,,,215.4599053,7.682,False -1,29,2011-04-29,4108.54,72.03,3.81,,,,,,215.6279544,7.682,False -1,29,2011-05-06,5672.1,64.61,3.906,,,,,,215.7960035,7.682,False -1,29,2011-05-13,4724.29,75.64,3.899,,,,,,215.9640526,7.682,False -1,29,2011-05-20,3623.54,67.63,3.907,,,,,,215.7339202,7.682,False -1,29,2011-05-27,3537.56,77.72,3.786,,,,,,215.5037878,7.682,False -1,29,2011-06-03,4158.77,83.0,3.699,,,,,,215.2736553,7.682,False -1,29,2011-06-10,3643.74,83.13,3.648,,,,,,215.0435229,7.682,False -1,29,2011-06-17,3735.04,86.41,3.637,,,,,,214.9980596,7.682,False -1,29,2011-06-24,3608.28,83.58,3.594,,,,,,215.0910982,7.682,False -1,29,2011-07-01,3750.0,85.55,3.524,,,,,,215.1841368,7.962,False -1,29,2011-07-08,4581.24,85.83,3.48,,,,,,215.2771754,7.962,False -1,29,2011-07-15,3243.28,88.54,3.575,,,,,,215.3611087,7.962,False -1,29,2011-07-22,3439.7,85.77,3.651,,,,,,215.4222784,7.962,False -1,29,2011-07-29,2978.08,86.83,3.682,,,,,,215.4834482,7.962,False -1,29,2011-08-05,4564.77,91.65,3.684,,,,,,215.544618,7.962,False -1,29,2011-08-12,3339.78,90.76,3.638,,,,,,215.6057878,7.962,False -1,29,2011-08-19,4158.06,89.94,3.554,,,,,,215.6693107,7.962,False -1,29,2011-08-26,3735.18,87.96,3.523,,,,,,215.7332258,7.962,False -1,29,2011-09-02,3652.7,87.83,3.533,,,,,,215.7971409,7.962,False -1,29,2011-09-09,3210.79,76.0,3.546,,,,,,215.861056,7.962,True -1,29,2011-09-16,2986.42,79.94,3.526,,,,,,216.0410526,7.962,False -1,29,2011-09-23,3343.26,75.8,3.467,,,,,,216.3758246,7.962,False -1,29,2011-09-30,3209.28,79.69,3.355,,,,,,216.7105965,7.962,False -1,29,2011-10-07,4011.5,69.31,3.285,,,,,,217.0453684,7.866,False -1,29,2011-10-14,3619.49,71.74,3.274,,,,,,217.3552733,7.866,False -1,29,2011-10-21,4093.77,63.71,3.353,,,,,,217.5159762,7.866,False -1,29,2011-10-28,3968.2,66.57,3.372,,,,,,217.6766791,7.866,False -1,29,2011-11-04,5024.72,54.98,3.332,,,,,,217.837382,7.866,False -1,29,2011-11-11,4530.75,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,29,2011-11-18,4334.62,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,29,2011-11-25,5641.46,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,29,2011-12-02,5466.91,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,29,2011-12-09,6750.53,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,29,2011-12-16,8445.01,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,29,2011-12-23,12848.12,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,29,2011-12-30,6951.19,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,29,2012-01-06,4174.68,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,29,2012-01-13,4008.75,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,29,2012-01-20,3689.44,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,29,2012-01-27,3510.94,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,29,2012-02-03,5646.11,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,29,2012-02-10,7755.83,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,29,2012-02-17,7122.71,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,29,2012-02-24,5337.27,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,29,2012-03-02,5082.59,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,29,2012-03-09,4735.19,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,29,2012-03-16,4735.58,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,29,2012-03-23,3903.39,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,29,2012-03-30,4392.74,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,29,2012-04-06,3976.42,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,29,2012-04-13,3294.36,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,29,2012-04-20,3733.04,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,29,2012-04-27,3698.19,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,29,2012-05-04,4880.96,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,29,2012-05-11,4632.27,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,29,2012-05-18,3864.86,70.33,3.63,6154.14,,45.11,1675.49,5508.18,221.742674,7.143,False -1,29,2012-05-25,3118.55,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,29,2012-06-01,3788.69,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,29,2012-06-08,4042.24,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,29,2012-06-15,3575.94,79.35,3.393,5621.99,109.6,0.25,2420.28,3083.26,221.7626421,7.143,False -1,29,2012-06-22,3229.2,78.39,3.346,8624.56,171.25,3.05,2524.07,7063.68,221.8030211,7.143,False -1,29,2012-06-29,3898.01,84.88,3.286,3965.73,161.6,,435.99,4212.97,221.8434,7.143,False -1,29,2012-07-06,3925.61,81.57,3.227,12218.76,94.4,192.83,4066.01,6149.04,221.8837789,6.908,False -1,29,2012-07-13,3716.03,77.12,3.256,7218.13,45.2,36.24,3909.38,2596.37,221.9241579,6.908,False -1,29,2012-07-20,3707.9,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,29,2012-07-27,3356.82,82.66,3.407,7146.9,389.02,1.59,10267.54,4325.19,221.9412954,6.908,False -1,29,2012-08-03,4145.19,86.11,3.417,27584.78,119.98,30.23,12007.04,4661.71,221.9498642,6.908,False -1,29,2012-08-10,4162.46,85.05,3.494,11436.22,245.0,6.85,6964.26,4836.22,221.9584329,6.908,False -1,29,2012-08-17,4208.19,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,29,2012-08-24,3966.86,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,29,2012-08-31,4183.85,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,29,2012-09-07,3268.08,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,29,2012-09-14,3418.62,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,29,2012-09-21,3683.28,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,29,2012-09-28,3515.91,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,29,2012-10-05,4288.34,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,29,2012-10-12,3465.18,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,29,2012-10-19,3739.1,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,29,2012-10-26,4077.2,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False -1,30,2010-02-05,5491.0,42.31,2.572,,,,,,211.0963582,8.106,False -1,30,2010-02-12,5328.5,38.51,2.548,,,,,,211.2421698,8.106,True -1,30,2010-02-19,5735.0,39.93,2.514,,,,,,211.2891429,8.106,False -1,30,2010-02-26,3614.48,46.63,2.561,,,,,,211.3196429,8.106,False -1,30,2010-03-05,4360.5,46.5,2.625,,,,,,211.3501429,8.106,False -1,30,2010-03-12,3021.5,57.79,2.667,,,,,,211.3806429,8.106,False -1,30,2010-03-19,3822.5,54.58,2.72,,,,,,211.215635,8.106,False -1,30,2010-03-26,3324.0,51.45,2.732,,,,,,211.0180424,8.106,False -1,30,2010-04-02,4278.26,62.27,2.719,,,,,,210.8204499,7.808,False -1,30,2010-04-09,4406.48,65.86,2.77,,,,,,210.6228574,7.808,False -1,30,2010-04-16,4380.38,66.32,2.808,,,,,,210.4887,7.808,False -1,30,2010-04-23,4283.99,64.84,2.795,,,,,,210.4391228,7.808,False -1,30,2010-04-30,3728.17,67.41,2.78,,,,,,210.3895456,7.808,False -1,30,2010-05-07,5308.69,72.55,2.835,,,,,,210.3399684,7.808,False -1,30,2010-05-14,3885.42,74.78,2.854,,,,,,210.3374261,7.808,False -1,30,2010-05-21,4342.18,76.44,2.826,,,,,,210.6170934,7.808,False -1,30,2010-05-28,3887.9,80.44,2.759,,,,,,210.8967606,7.808,False -1,30,2010-06-04,4230.56,80.69,2.705,,,,,,211.1764278,7.808,False -1,30,2010-06-11,4225.12,80.43,2.668,,,,,,211.4560951,7.808,False -1,30,2010-06-18,3731.51,84.11,2.637,,,,,,211.4537719,7.808,False -1,30,2010-06-25,3603.83,84.34,2.653,,,,,,211.3386526,7.808,False -1,30,2010-07-02,4124.82,80.91,2.669,,,,,,211.2235333,7.787,False -1,30,2010-07-09,4365.06,80.48,2.642,,,,,,211.108414,7.787,False -1,30,2010-07-16,3840.68,83.15,2.623,,,,,,211.1003854,7.787,False -1,30,2010-07-23,3561.26,83.36,2.608,,,,,,211.2351443,7.787,False -1,30,2010-07-30,3087.8,81.84,2.64,,,,,,211.3699032,7.787,False -1,30,2010-08-06,4505.88,87.16,2.627,,,,,,211.5046621,7.787,False -1,30,2010-08-13,3936.8,87.0,2.692,,,,,,211.6394211,7.787,False -1,30,2010-08-20,4803.42,86.65,2.664,,,,,,211.6033633,7.787,False -1,30,2010-08-27,4613.42,85.22,2.619,,,,,,211.5673056,7.787,False -1,30,2010-09-03,3485.88,81.21,2.577,,,,,,211.5312479,7.787,False -1,30,2010-09-10,3342.76,78.69,2.565,,,,,,211.4951902,7.787,True -1,30,2010-09-17,3045.1,82.11,2.582,,,,,,211.5224596,7.787,False -1,30,2010-09-24,3586.76,80.94,2.624,,,,,,211.5972246,7.787,False -1,30,2010-10-01,3257.42,71.89,2.603,,,,,,211.6719895,7.838,False -1,30,2010-10-08,3881.3,63.93,2.633,,,,,,211.7467544,7.838,False -1,30,2010-10-15,3283.88,67.18,2.72,,,,,,211.8137436,7.838,False -1,30,2010-10-22,2681.46,69.86,2.725,,,,,,211.8612937,7.838,False -1,30,2010-10-29,2732.22,69.64,2.716,,,,,,211.9088438,7.838,False -1,30,2010-11-05,2915.0,58.74,2.689,,,,,,211.9563939,7.838,False -1,30,2010-11-12,2856.38,59.61,2.728,,,,,,212.003944,7.838,False -1,30,2010-11-19,2781.26,51.41,2.771,,,,,,211.8896737,7.838,False -1,30,2010-11-26,2844.88,64.52,2.735,,,,,,211.7484333,7.838,True -1,30,2010-12-03,2830.96,49.27,2.708,,,,,,211.607193,7.838,False -1,30,2010-12-10,2697.0,46.33,2.843,,,,,,211.4659526,7.838,False -1,30,2010-12-17,3260.88,49.84,2.869,,,,,,211.4053124,7.838,False -1,30,2010-12-24,3883.38,52.33,2.886,,,,,,211.4051222,7.838,False -1,30,2010-12-31,2454.3,48.43,2.943,,,,,,211.4049321,7.838,True -1,30,2011-01-07,2785.92,48.27,2.976,,,,,,211.4047419,7.742,False -1,30,2011-01-14,2456.5,35.4,2.983,,,,,,211.4574109,7.742,False -1,30,2011-01-21,2625.72,44.04,3.016,,,,,,211.8272343,7.742,False -1,30,2011-01-28,2970.36,43.83,3.01,,,,,,212.1970577,7.742,False -1,30,2011-02-04,3521.78,42.27,2.989,,,,,,212.5668812,7.742,False -1,30,2011-02-11,4234.14,36.39,3.022,,,,,,212.9367046,7.742,True -1,30,2011-02-18,4921.42,57.36,3.045,,,,,,213.2478853,7.742,False -1,30,2011-02-25,4042.31,62.9,3.065,,,,,,213.535609,7.742,False -1,30,2011-03-04,4850.96,59.58,3.288,,,,,,213.8233327,7.742,False -1,30,2011-03-11,4561.26,53.56,3.459,,,,,,214.1110564,7.742,False -1,30,2011-03-18,4581.04,62.76,3.488,,,,,,214.3627114,7.742,False -1,30,2011-03-25,4346.38,69.97,3.473,,,,,,214.5999389,7.742,False -1,30,2011-04-01,3897.48,59.17,3.524,,,,,,214.8371664,7.682,False -1,30,2011-04-08,4732.04,67.84,3.622,,,,,,215.0743939,7.682,False -1,30,2011-04-15,4158.26,71.27,3.743,,,,,,215.2918561,7.682,False -1,30,2011-04-22,4077.88,72.99,3.807,,,,,,215.4599053,7.682,False -1,30,2011-04-29,3630.66,72.03,3.81,,,,,,215.6279544,7.682,False -1,30,2011-05-06,3759.18,64.61,3.906,,,,,,215.7960035,7.682,False -1,30,2011-05-13,3621.1,75.64,3.899,,,,,,215.9640526,7.682,False -1,30,2011-05-20,3204.98,67.63,3.907,,,,,,215.7339202,7.682,False -1,30,2011-05-27,3555.48,77.72,3.786,,,,,,215.5037878,7.682,False -1,30,2011-06-03,3536.7,83.0,3.699,,,,,,215.2736553,7.682,False -1,30,2011-06-10,4216.64,83.13,3.648,,,,,,215.0435229,7.682,False -1,30,2011-06-17,3183.18,86.41,3.637,,,,,,214.9980596,7.682,False -1,30,2011-06-24,3485.28,83.58,3.594,,,,,,215.0910982,7.682,False -1,30,2011-07-01,4202.83,85.55,3.524,,,,,,215.1841368,7.962,False -1,30,2011-07-08,4308.14,85.83,3.48,,,,,,215.2771754,7.962,False -1,30,2011-07-15,3724.75,88.54,3.575,,,,,,215.3611087,7.962,False -1,30,2011-07-22,3599.5,85.77,3.651,,,,,,215.4222784,7.962,False -1,30,2011-07-29,2874.22,86.83,3.682,,,,,,215.4834482,7.962,False -1,30,2011-08-05,3172.58,91.65,3.684,,,,,,215.544618,7.962,False -1,30,2011-08-12,3114.22,90.76,3.638,,,,,,215.6057878,7.962,False -1,30,2011-08-19,3465.77,89.94,3.554,,,,,,215.6693107,7.962,False -1,30,2011-08-26,3336.7,87.96,3.523,,,,,,215.7332258,7.962,False -1,30,2011-09-02,2837.66,87.83,3.533,,,,,,215.7971409,7.962,False -1,30,2011-09-09,2755.4,76.0,3.546,,,,,,215.861056,7.962,True -1,30,2011-09-16,2580.54,79.94,3.526,,,,,,216.0410526,7.962,False -1,30,2011-09-23,2585.95,75.8,3.467,,,,,,216.3758246,7.962,False -1,30,2011-09-30,2529.32,79.69,3.355,,,,,,216.7105965,7.962,False -1,30,2011-10-07,3051.62,69.31,3.285,,,,,,217.0453684,7.866,False -1,30,2011-10-14,2921.56,71.74,3.274,,,,,,217.3552733,7.866,False -1,30,2011-10-21,2566.7,63.71,3.353,,,,,,217.5159762,7.866,False -1,30,2011-10-28,2688.58,66.57,3.372,,,,,,217.6766791,7.866,False -1,30,2011-11-04,2670.86,54.98,3.332,,,,,,217.837382,7.866,False -1,30,2011-11-11,2573.12,59.11,3.297,10382.9,6115.67,215.07,2406.62,6551.42,217.9980849,7.866,False -1,30,2011-11-18,2041.76,62.25,3.308,6074.12,254.39,51.98,427.39,5988.57,218.2205088,7.866,False -1,30,2011-11-25,3152.56,60.14,3.236,410.31,98.0,55805.51,8.0,554.92,218.4676211,7.866,True -1,30,2011-12-02,2334.96,48.91,3.172,5629.51,68.0,1398.11,2084.64,20475.32,218.7147333,7.866,False -1,30,2011-12-09,2343.4,43.93,3.158,4640.65,19.0,105.02,3639.42,14461.82,218.9618456,7.866,False -1,30,2011-12-16,2395.98,51.63,3.159,5011.32,67.0,347.37,225.79,4011.37,219.1794533,7.866,False -1,30,2011-12-23,2829.74,47.96,3.112,2725.36,40.48,634.7,24.9,2739.43,219.3577216,7.866,False -1,30,2011-12-30,2155.22,44.55,3.129,5762.1,46011.38,260.36,983.65,4735.78,219.5359898,7.866,True -1,30,2012-01-06,2425.04,49.01,3.157,6277.39,21813.16,143.1,1450.13,8483.0,219.7142581,7.348,False -1,30,2012-01-13,2014.96,48.53,3.261,5183.29,8025.87,42.24,453.08,3719.38,219.8925263,7.348,False -1,30,2012-01-20,2695.82,54.11,3.268,4139.87,2807.19,33.88,500.62,3400.21,219.9856893,7.348,False -1,30,2012-01-27,2507.48,54.26,3.29,1164.46,1082.74,44.0,11.0,1222.19,220.0788523,7.348,False -1,30,2012-02-03,3107.1,56.55,3.36,34577.06,3579.21,160.53,32403.87,5630.4,220.1720153,7.348,False -1,30,2012-02-10,4257.72,48.02,3.409,13925.06,6927.23,101.64,8471.88,6886.04,220.2651783,7.348,True -1,30,2012-02-17,3725.26,45.32,3.51,9873.33,11062.27,9.8,8409.31,3402.66,220.4257586,7.348,False -1,30,2012-02-24,2927.0,57.25,3.555,9349.61,7556.01,3.2,1219.92,8143.59,220.636902,7.348,False -1,30,2012-03-02,4393.08,60.96,3.63,15441.4,1569.0,10.8,25390.88,8067.61,220.8480454,7.348,False -1,30,2012-03-09,4133.36,58.76,3.669,10331.04,151.88,6.0,671.43,5509.84,221.0591887,7.348,False -1,30,2012-03-16,3505.18,64.74,3.734,4298.16,7.5,2.02,2724.65,2017.69,221.2118132,7.348,False -1,30,2012-03-23,3421.12,65.93,3.787,6118.56,9.48,4.97,426.72,3657.22,221.2864126,7.348,False -1,30,2012-03-30,3536.71,67.61,3.845,10309.58,0.5,10.25,1654.17,2642.78,221.3610119,7.348,False -1,30,2012-04-06,3544.7,70.43,3.891,10121.97,,77.98,3750.59,4510.72,221.4356112,7.143,False -1,30,2012-04-13,3711.72,69.07,3.891,6186.19,3288.69,17.07,1822.55,1063.78,221.5102105,7.143,False -1,30,2012-04-20,3151.6,66.76,3.877,2230.8,612.02,19.75,275.13,5747.1,221.5640737,7.143,False -1,30,2012-04-27,2822.92,67.23,3.814,3221.25,,35.49,577.14,6222.25,221.6179368,7.143,False -1,30,2012-05-04,4751.06,75.55,3.749,21290.13,,69.89,4977.35,3261.04,221.6718,7.143,False -1,30,2012-05-11,2564.12,73.77,3.688,8351.4,,10.52,2443.14,3127.88,221.7256632,7.143,False -1,30,2012-05-18,3064.12,70.33,3.63,6154.14,,45.11,1675.49,5508.18,221.742674,7.143,False -1,30,2012-05-25,3055.24,77.22,3.561,4039.39,,745.19,1429.96,3631.13,221.744944,7.143,False -1,30,2012-06-01,3931.58,77.95,3.501,6086.21,12.0,370.51,148.75,3690.85,221.7472139,7.143,False -1,30,2012-06-08,3629.94,78.3,3.452,8813.81,116.8,64.55,2652.04,7161.91,221.7494839,7.143,False -1,30,2012-06-15,2752.74,79.35,3.393,5621.99,109.6,0.25,2420.28,3083.26,221.7626421,7.143,False -1,30,2012-06-22,2784.5,78.39,3.346,8624.56,171.25,3.05,2524.07,7063.68,221.8030211,7.143,False -1,30,2012-06-29,3402.4,84.88,3.286,3965.73,161.6,,435.99,4212.97,221.8434,7.143,False -1,30,2012-07-06,3054.34,81.57,3.227,12218.76,94.4,192.83,4066.01,6149.04,221.8837789,6.908,False -1,30,2012-07-13,2723.02,77.12,3.256,7218.13,45.2,36.24,3909.38,2596.37,221.9241579,6.908,False -1,30,2012-07-20,2821.6,80.42,3.311,3213.0,313.72,9.53,2262.02,3228.19,221.9327267,6.908,False -1,30,2012-07-27,2959.0,82.66,3.407,7146.9,389.02,1.59,10267.54,4325.19,221.9412954,6.908,False -1,30,2012-08-03,3202.68,86.11,3.417,27584.78,119.98,30.23,12007.04,4661.71,221.9498642,6.908,False -1,30,2012-08-10,3355.34,85.05,3.494,11436.22,245.0,6.85,6964.26,4836.22,221.9584329,6.908,False -1,30,2012-08-17,3300.68,84.85,3.571,3662.06,137.86,4.84,2752.2,3446.15,222.0384109,6.908,False -1,30,2012-08-24,3686.74,77.66,3.62,6237.83,260.06,2.97,3463.03,7988.25,222.1719457,6.908,False -1,30,2012-08-31,3058.82,80.49,3.638,21442.73,102.32,21.7,13209.64,3032.96,222.3054805,6.908,False -1,30,2012-09-07,2669.67,83.96,3.73,5204.68,35.74,50.94,4120.32,2737.17,222.4390153,6.908,True -1,30,2012-09-14,2115.88,74.97,3.717,17212.52,7.0,18.79,1523.11,7992.72,222.5820193,6.908,False -1,30,2012-09-21,1986.16,69.87,3.721,6352.3,7.64,4.69,1010.06,6456.71,222.7818386,6.908,False -1,30,2012-09-28,2047.42,76.08,3.666,3666.27,7.64,1.65,1417.96,4744.28,222.9816579,6.908,False -1,30,2012-10-05,2520.85,68.55,3.617,8077.89,,18.22,3617.43,3626.14,223.1814772,6.573,False -1,30,2012-10-12,2258.74,62.99,3.601,2086.18,,8.11,602.36,5926.45,223.3812965,6.573,False -1,30,2012-10-19,2559.08,67.97,3.594,950.33,,4.93,80.25,2312.85,223.4257233,6.573,False -1,30,2012-10-26,2830.48,69.16,3.506,2585.85,31.75,6.0,1057.16,1305.01,223.4442513,6.573,False 2,1,2010-02-05,35034.06,40.19,2.572,,,,,,210.7526053,8.324,False 2,1,2010-02-12,60483.7,38.49,2.548,,,,,,210.8979935,8.324,True 2,1,2010-02-19,58221.52,39.69,2.514,,,,,,210.9451605,8.324,False @@ -5546,2690 +2859,3 @@ Store,Dept,Date,Weekly_Sales,Temperature,Fuel_Price,MarkDown1,MarkDown2,MarkDown 2,10,2012-10-12,35332.34,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False 2,10,2012-10-19,35721.09,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False 2,10,2012-10-26,34260.76,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,11,2010-02-05,24800.3,40.19,2.572,,,,,,210.7526053,8.324,False -2,11,2010-02-12,18323.66,38.49,2.548,,,,,,210.8979935,8.324,True -2,11,2010-02-19,19504.74,39.69,2.514,,,,,,210.9451605,8.324,False -2,11,2010-02-26,19397.41,46.1,2.561,,,,,,210.9759573,8.324,False -2,11,2010-03-05,21422.84,47.17,2.625,,,,,,211.0067542,8.324,False -2,11,2010-03-12,20672.91,57.56,2.667,,,,,,211.037551,8.324,False -2,11,2010-03-19,18002.46,54.52,2.72,,,,,,210.8733316,8.324,False -2,11,2010-03-26,17716.31,51.26,2.732,,,,,,210.6766095,8.324,False -2,11,2010-04-02,21841.98,63.27,2.719,,,,,,210.4798874,8.2,False -2,11,2010-04-09,19173.28,65.41,2.77,,,,,,210.2831653,8.2,False -2,11,2010-04-16,19537.78,68.07,2.808,,,,,,210.1495463,8.2,False -2,11,2010-04-23,19303.76,65.11,2.795,,,,,,210.1000648,8.2,False -2,11,2010-04-30,19744.67,66.98,2.78,,,,,,210.0505833,8.2,False -2,11,2010-05-07,25793.95,71.28,2.835,,,,,,210.0011018,8.2,False -2,11,2010-05-14,21622.2,73.31,2.854,,,,,,209.9984585,8.2,False -2,11,2010-05-21,26348.34,74.83,2.826,,,,,,210.2768443,8.2,False -2,11,2010-05-28,28225.04,81.13,2.759,,,,,,210.5552301,8.2,False -2,11,2010-06-04,36172.11,81.81,2.705,,,,,,210.833616,8.2,False -2,11,2010-06-11,35478.75,83.4,2.668,,,,,,211.1120018,8.2,False -2,11,2010-06-18,29824.99,85.81,2.637,,,,,,211.1096543,8.2,False -2,11,2010-06-25,32644.13,86.26,2.653,,,,,,210.9950134,8.2,False -2,11,2010-07-02,25225.23,82.74,2.669,,,,,,210.8803726,8.099,False -2,11,2010-07-09,21782.47,82.59,2.642,,,,,,210.7657317,8.099,False -2,11,2010-07-16,26337.79,85.32,2.623,,,,,,210.7577954,8.099,False -2,11,2010-07-23,27345.43,87.66,2.608,,,,,,210.8921319,8.099,False -2,11,2010-07-30,24241.74,83.49,2.64,,,,,,211.0264684,8.099,False -2,11,2010-08-06,38708.3,89.53,2.627,,,,,,211.1608049,8.099,False -2,11,2010-08-13,29838.67,89.05,2.692,,,,,,211.2951413,8.099,False -2,11,2010-08-20,26546.9,88.7,2.664,,,,,,211.2596586,8.099,False -2,11,2010-08-27,20351.03,87.12,2.619,,,,,,211.2241759,8.099,False -2,11,2010-09-03,19706.72,81.83,2.577,,,,,,211.1886931,8.099,False -2,11,2010-09-10,20700.25,79.09,2.565,,,,,,211.1532104,8.099,True -2,11,2010-09-17,19389.59,82.05,2.582,,,,,,211.1806415,8.099,False -2,11,2010-09-24,16869.33,81.79,2.624,,,,,,211.2552578,8.099,False -2,11,2010-10-01,19715.97,69.24,2.603,,,,,,211.3298742,8.163,False -2,11,2010-10-08,19673.95,63.19,2.633,,,,,,211.4044906,8.163,False -2,11,2010-10-15,16705.72,65.8,2.72,,,,,,211.4713286,8.163,False -2,11,2010-10-22,16661.09,68.5,2.725,,,,,,211.5187208,8.163,False -2,11,2010-10-29,17837.79,66.24,2.716,,,,,,211.5661131,8.163,False -2,11,2010-11-05,27897.88,57.85,2.689,,,,,,211.6135053,8.163,False -2,11,2010-11-12,23387.77,59.69,2.728,,,,,,211.6608975,8.163,False -2,11,2010-11-19,25460.69,50.81,2.771,,,,,,211.5470304,8.163,False -2,11,2010-11-26,36577.0,62.98,2.735,,,,,,211.4062867,8.163,True -2,11,2010-12-03,29507.27,49.33,2.708,,,,,,211.265543,8.163,False -2,11,2010-12-10,32312.31,45.5,2.843,,,,,,211.1247993,8.163,False -2,11,2010-12-17,31671.65,47.55,2.869,,,,,,211.0645458,8.163,False -2,11,2010-12-24,37983.95,49.97,2.886,,,,,,211.0646599,8.163,False -2,11,2010-12-31,21677.27,47.3,2.943,,,,,,211.064774,8.163,True -2,11,2011-01-07,24475.41,44.69,2.976,,,,,,211.0648881,8.028,False -2,11,2011-01-14,30770.48,33.02,2.983,,,,,,211.1176713,8.028,False -2,11,2011-01-21,24171.27,41.4,3.016,,,,,,211.4864691,8.028,False -2,11,2011-01-28,20028.83,42.83,3.01,,,,,,211.8552668,8.028,False -2,11,2011-02-04,24692.06,38.25,2.989,,,,,,212.2240646,8.028,False -2,11,2011-02-11,19333.28,33.19,3.022,,,,,,212.5928624,8.028,True -2,11,2011-02-18,17715.89,57.83,3.045,,,,,,212.9033115,8.028,False -2,11,2011-02-25,17050.25,60.8,3.065,,,,,,213.190421,8.028,False -2,11,2011-03-04,17301.63,57.77,3.288,,,,,,213.4775305,8.028,False -2,11,2011-03-11,18216.84,52.7,3.459,,,,,,213.7646401,8.028,False -2,11,2011-03-18,20137.68,62.32,3.488,,,,,,214.0156238,8.028,False -2,11,2011-03-25,22996.57,69.42,3.473,,,,,,214.2521573,8.028,False -2,11,2011-04-01,18475.71,55.43,3.524,,,,,,214.4886908,7.931,False -2,11,2011-04-08,21166.11,67.0,3.622,,,,,,214.7252242,7.931,False -2,11,2011-04-15,23264.34,69.48,3.743,,,,,,214.9420631,7.931,False -2,11,2011-04-22,17500.03,69.39,3.807,,,,,,215.1096657,7.931,False -2,11,2011-04-29,17958.82,69.21,3.81,,,,,,215.2772683,7.931,False -2,11,2011-05-06,17998.02,61.48,3.906,,,,,,215.4448709,7.931,False -2,11,2011-05-13,21386.81,74.61,3.899,,,,,,215.6124735,7.931,False -2,11,2011-05-20,16405.28,67.14,3.907,,,,,,215.3834778,7.931,False -2,11,2011-05-27,20807.73,76.42,3.786,,,,,,215.1544822,7.931,False -2,11,2011-06-03,36370.75,83.07,3.699,,,,,,214.9254865,7.931,False -2,11,2011-06-10,37438.97,83.4,3.648,,,,,,214.6964908,7.931,False -2,11,2011-06-17,35848.37,86.53,3.637,,,,,,214.6513538,7.931,False -2,11,2011-06-24,29889.05,85.17,3.594,,,,,,214.7441108,7.931,False -2,11,2011-07-01,33080.01,85.69,3.524,,,,,,214.8368678,7.852,False -2,11,2011-07-08,32248.34,87.7,3.48,,,,,,214.9296249,7.852,False -2,11,2011-07-15,31109.86,89.83,3.575,,,,,,215.0134426,7.852,False -2,11,2011-07-22,30142.06,89.34,3.651,,,,,,215.0749122,7.852,False -2,11,2011-07-29,25304.92,90.07,3.682,,,,,,215.1363819,7.852,False -2,11,2011-08-05,35124.67,93.34,3.684,,,,,,215.1978515,7.852,False -2,11,2011-08-12,20738.84,91.58,3.638,,,,,,215.2593211,7.852,False -2,11,2011-08-19,18602.71,89.86,3.554,,,,,,215.3229307,7.852,False -2,11,2011-08-26,18132.95,90.45,3.523,,,,,,215.386897,7.852,False -2,11,2011-09-02,19089.87,89.64,3.533,,,,,,215.4508632,7.852,False -2,11,2011-09-09,17711.06,77.97,3.546,,,,,,215.5148295,7.852,True -2,11,2011-09-16,15384.53,78.85,3.526,,,,,,215.6944378,7.852,False -2,11,2011-09-23,15562.85,75.58,3.467,,,,,,216.0282356,7.852,False -2,11,2011-09-30,15491.04,78.14,3.355,,,,,,216.3620333,7.852,False -2,11,2011-10-07,18247.4,69.92,3.285,,,,,,216.6958311,7.441,False -2,11,2011-10-14,15550.16,71.67,3.274,,,,,,217.0048261,7.441,False -2,11,2011-10-21,19013.86,64.53,3.353,,,,,,217.1650042,7.441,False -2,11,2011-10-28,18158.84,65.87,3.372,,,,,,217.3251824,7.441,False -2,11,2011-11-04,25748.38,55.53,3.332,,,,,,217.4853605,7.441,False -2,11,2011-11-11,19154.44,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,11,2011-11-18,19946.27,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,11,2011-11-25,26977.29,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,11,2011-12-02,32380.26,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,11,2011-12-09,37622.16,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,11,2011-12-16,27445.32,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,11,2011-12-23,33074.28,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,11,2011-12-30,22700.47,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,11,2012-01-06,22074.3,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,11,2012-01-13,20660.6,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,11,2012-01-20,19829.15,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,11,2012-01-27,23482.78,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,11,2012-02-03,19342.08,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,11,2012-02-10,21944.35,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,11,2012-02-17,24490.64,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,11,2012-02-24,20226.11,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,11,2012-03-02,18766.28,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,11,2012-03-09,18203.78,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,11,2012-03-16,22737.58,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,11,2012-03-23,19196.79,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,11,2012-03-30,19728.57,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,11,2012-04-06,20779.01,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,11,2012-04-13,18762.92,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,11,2012-04-20,20007.3,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,11,2012-04-27,19100.83,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,11,2012-05-04,25179.53,76.73,3.749,23731.47,,78.09,7931.42,4443.52,221.3095166,6.891,False -2,11,2012-05-11,25065.28,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,11,2012-05-18,19161.59,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,11,2012-05-25,24026.31,78.19,3.561,10701.32,,1030.53,3595.04,14920.27,221.3828029,6.891,False -2,11,2012-06-01,25067.26,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,11,2012-06-08,26233.68,78.69,3.452,12162.04,463.6,78.39,3610.78,10877.64,221.3877467,6.891,False -2,11,2012-06-15,26842.85,80.56,3.393,8573.41,195.0,0.19,4455.38,5288.61,221.4009901,6.891,False -2,11,2012-06-22,23936.9,81.04,3.346,12126.02,314.0,60.99,6058.6,36430.33,221.4411622,6.891,False -2,11,2012-06-29,39879.14,86.32,3.286,8495.34,275.8,,1935.16,5686.13,221.4813343,6.891,False -2,11,2012-07-06,30681.78,84.2,3.227,12355.5,295.05,100.15,6720.4,5506.53,221.5215064,6.565,False -2,11,2012-07-13,26051.86,80.17,3.256,8354.65,342.25,20.53,5674.44,5012.22,221.5616784,6.565,False -2,11,2012-07-20,23285.82,83.23,3.311,6961.58,241.2,24.97,3401.36,2453.42,221.5701123,6.565,False -2,11,2012-07-27,25901.75,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,11,2012-08-03,34090.06,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,11,2012-08-10,24323.07,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,11,2012-08-17,19550.71,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,11,2012-08-24,18304.48,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,11,2012-08-31,19048.29,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,11,2012-09-07,22637.2,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,11,2012-09-14,16955.5,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,11,2012-09-21,16835.55,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,11,2012-09-28,16867.42,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,11,2012-10-05,19152.2,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,11,2012-10-12,20823.63,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,11,2012-10-19,18513.04,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,11,2012-10-26,21167.76,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,12,2010-02-05,6906.2,40.19,2.572,,,,,,210.7526053,8.324,False -2,12,2010-02-12,6507.63,38.49,2.548,,,,,,210.8979935,8.324,True -2,12,2010-02-19,6786.66,39.69,2.514,,,,,,210.9451605,8.324,False -2,12,2010-02-26,7281.54,46.1,2.561,,,,,,210.9759573,8.324,False -2,12,2010-03-05,8806.59,47.17,2.625,,,,,,211.0067542,8.324,False -2,12,2010-03-12,8567.82,57.56,2.667,,,,,,211.037551,8.324,False -2,12,2010-03-19,8993.18,54.52,2.72,,,,,,210.8733316,8.324,False -2,12,2010-03-26,6711.89,51.26,2.732,,,,,,210.6766095,8.324,False -2,12,2010-04-02,9186.5,63.27,2.719,,,,,,210.4798874,8.2,False -2,12,2010-04-09,8425.24,65.41,2.77,,,,,,210.2831653,8.2,False -2,12,2010-04-16,8483.84,68.07,2.808,,,,,,210.1495463,8.2,False -2,12,2010-04-23,8500.73,65.11,2.795,,,,,,210.1000648,8.2,False -2,12,2010-04-30,8985.11,66.98,2.78,,,,,,210.0505833,8.2,False -2,12,2010-05-07,9081.36,71.28,2.835,,,,,,210.0011018,8.2,False -2,12,2010-05-14,7459.53,73.31,2.854,,,,,,209.9984585,8.2,False -2,12,2010-05-21,10116.84,74.83,2.826,,,,,,210.2768443,8.2,False -2,12,2010-05-28,8464.82,81.13,2.759,,,,,,210.5552301,8.2,False -2,12,2010-06-04,9304.88,81.81,2.705,,,,,,210.833616,8.2,False -2,12,2010-06-11,8605.15,83.4,2.668,,,,,,211.1120018,8.2,False -2,12,2010-06-18,9701.7,85.81,2.637,,,,,,211.1096543,8.2,False -2,12,2010-06-25,9133.46,86.26,2.653,,,,,,210.9950134,8.2,False -2,12,2010-07-02,8646.9,82.74,2.669,,,,,,210.8803726,8.099,False -2,12,2010-07-09,7785.75,82.59,2.642,,,,,,210.7657317,8.099,False -2,12,2010-07-16,10103.58,85.32,2.623,,,,,,210.7577954,8.099,False -2,12,2010-07-23,8872.63,87.66,2.608,,,,,,210.8921319,8.099,False -2,12,2010-07-30,10480.81,83.49,2.64,,,,,,211.0264684,8.099,False -2,12,2010-08-06,9352.51,89.53,2.627,,,,,,211.1608049,8.099,False -2,12,2010-08-13,9219.2,89.05,2.692,,,,,,211.2951413,8.099,False -2,12,2010-08-20,7647.09,88.7,2.664,,,,,,211.2596586,8.099,False -2,12,2010-08-27,8522.05,87.12,2.619,,,,,,211.2241759,8.099,False -2,12,2010-09-03,7936.47,81.83,2.577,,,,,,211.1886931,8.099,False -2,12,2010-09-10,8909.92,79.09,2.565,,,,,,211.1532104,8.099,True -2,12,2010-09-17,8489.21,82.05,2.582,,,,,,211.1806415,8.099,False -2,12,2010-09-24,7606.59,81.79,2.624,,,,,,211.2552578,8.099,False -2,12,2010-10-01,8915.64,69.24,2.603,,,,,,211.3298742,8.163,False -2,12,2010-10-08,9030.65,63.19,2.633,,,,,,211.4044906,8.163,False -2,12,2010-10-15,9653.69,65.8,2.72,,,,,,211.4713286,8.163,False -2,12,2010-10-22,8225.85,68.5,2.725,,,,,,211.5187208,8.163,False -2,12,2010-10-29,8194.23,66.24,2.716,,,,,,211.5661131,8.163,False -2,12,2010-11-05,7196.52,57.85,2.689,,,,,,211.6135053,8.163,False -2,12,2010-11-12,7699.76,59.69,2.728,,,,,,211.6608975,8.163,False -2,12,2010-11-19,6997.33,50.81,2.771,,,,,,211.5470304,8.163,False -2,12,2010-11-26,7679.34,62.98,2.735,,,,,,211.4062867,8.163,True -2,12,2010-12-03,6701.76,49.33,2.708,,,,,,211.265543,8.163,False -2,12,2010-12-10,5942.18,45.5,2.843,,,,,,211.1247993,8.163,False -2,12,2010-12-17,6009.7,47.55,2.869,,,,,,211.0645458,8.163,False -2,12,2010-12-24,5575.02,49.97,2.886,,,,,,211.0646599,8.163,False -2,12,2010-12-31,5186.44,47.3,2.943,,,,,,211.064774,8.163,True -2,12,2011-01-07,5186.85,44.69,2.976,,,,,,211.0648881,8.028,False -2,12,2011-01-14,4709.72,33.02,2.983,,,,,,211.1176713,8.028,False -2,12,2011-01-21,5193.9,41.4,3.016,,,,,,211.4864691,8.028,False -2,12,2011-01-28,5836.66,42.83,3.01,,,,,,211.8552668,8.028,False -2,12,2011-02-04,5331.97,38.25,2.989,,,,,,212.2240646,8.028,False -2,12,2011-02-11,5728.32,33.19,3.022,,,,,,212.5928624,8.028,True -2,12,2011-02-18,7820.87,57.83,3.045,,,,,,212.9033115,8.028,False -2,12,2011-02-25,7248.51,60.8,3.065,,,,,,213.190421,8.028,False -2,12,2011-03-04,8053.77,57.77,3.288,,,,,,213.4775305,8.028,False -2,12,2011-03-11,8101.81,52.7,3.459,,,,,,213.7646401,8.028,False -2,12,2011-03-18,8881.27,62.32,3.488,,,,,,214.0156238,8.028,False -2,12,2011-03-25,8604.4,69.42,3.473,,,,,,214.2521573,8.028,False -2,12,2011-04-01,7135.51,55.43,3.524,,,,,,214.4886908,7.931,False -2,12,2011-04-08,8407.98,67.0,3.622,,,,,,214.7252242,7.931,False -2,12,2011-04-15,8709.89,69.48,3.743,,,,,,214.9420631,7.931,False -2,12,2011-04-22,8169.18,69.39,3.807,,,,,,215.1096657,7.931,False -2,12,2011-04-29,7471.73,69.21,3.81,,,,,,215.2772683,7.931,False -2,12,2011-05-06,7242.41,61.48,3.906,,,,,,215.4448709,7.931,False -2,12,2011-05-13,7251.97,74.61,3.899,,,,,,215.6124735,7.931,False -2,12,2011-05-20,7776.84,67.14,3.907,,,,,,215.3834778,7.931,False -2,12,2011-05-27,8009.39,76.42,3.786,,,,,,215.1544822,7.931,False -2,12,2011-06-03,8596.4,83.07,3.699,,,,,,214.9254865,7.931,False -2,12,2011-06-10,8343.21,83.4,3.648,,,,,,214.6964908,7.931,False -2,12,2011-06-17,7603.38,86.53,3.637,,,,,,214.6513538,7.931,False -2,12,2011-06-24,7790.61,85.17,3.594,,,,,,214.7441108,7.931,False -2,12,2011-07-01,8510.24,85.69,3.524,,,,,,214.8368678,7.852,False -2,12,2011-07-08,8192.55,87.7,3.48,,,,,,214.9296249,7.852,False -2,12,2011-07-15,7626.87,89.83,3.575,,,,,,215.0134426,7.852,False -2,12,2011-07-22,7194.29,89.34,3.651,,,,,,215.0749122,7.852,False -2,12,2011-07-29,7378.24,90.07,3.682,,,,,,215.1363819,7.852,False -2,12,2011-08-05,7032.96,93.34,3.684,,,,,,215.1978515,7.852,False -2,12,2011-08-12,6657.31,91.58,3.638,,,,,,215.2593211,7.852,False -2,12,2011-08-19,6794.05,89.86,3.554,,,,,,215.3229307,7.852,False -2,12,2011-08-26,6951.42,90.45,3.523,,,,,,215.386897,7.852,False -2,12,2011-09-02,7492.48,89.64,3.533,,,,,,215.4508632,7.852,False -2,12,2011-09-09,7083.13,77.97,3.546,,,,,,215.5148295,7.852,True -2,12,2011-09-16,7151.62,78.85,3.526,,,,,,215.6944378,7.852,False -2,12,2011-09-23,6519.56,75.58,3.467,,,,,,216.0282356,7.852,False -2,12,2011-09-30,6948.97,78.14,3.355,,,,,,216.3620333,7.852,False -2,12,2011-10-07,8473.08,69.92,3.285,,,,,,216.6958311,7.441,False -2,12,2011-10-14,7016.0,71.67,3.274,,,,,,217.0048261,7.441,False -2,12,2011-10-21,8550.54,64.53,3.353,,,,,,217.1650042,7.441,False -2,12,2011-10-28,7076.68,65.87,3.372,,,,,,217.3251824,7.441,False -2,12,2011-11-04,7027.09,55.53,3.332,,,,,,217.4853605,7.441,False -2,12,2011-11-11,6240.13,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,12,2011-11-18,6791.9,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,12,2011-11-25,6757.66,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,12,2011-12-02,7490.07,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,12,2011-12-09,5987.98,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,12,2011-12-16,6106.27,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,12,2011-12-23,6163.95,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,12,2011-12-30,5327.95,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,12,2012-01-06,6425.5,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,12,2012-01-13,5673.72,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,12,2012-01-20,6329.54,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,12,2012-01-27,6952.79,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,12,2012-02-03,5841.18,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,12,2012-02-10,6541.44,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,12,2012-02-17,7024.05,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,12,2012-02-24,7739.02,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,12,2012-03-02,8144.35,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,12,2012-03-09,7620.7,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,12,2012-03-16,9050.3,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,12,2012-03-23,7395.2,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,12,2012-03-30,8558.41,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,12,2012-04-06,8842.92,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,12,2012-04-13,8418.04,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,12,2012-04-20,7502.41,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,12,2012-04-27,9289.76,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,12,2012-05-04,8450.56,76.73,3.749,23731.47,,78.09,7931.42,4443.52,221.3095166,6.891,False -2,12,2012-05-11,8142.71,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,12,2012-05-18,9432.88,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,12,2012-05-25,8279.28,78.19,3.561,10701.32,,1030.53,3595.04,14920.27,221.3828029,6.891,False -2,12,2012-06-01,8738.43,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,12,2012-06-08,8236.71,78.69,3.452,12162.04,463.6,78.39,3610.78,10877.64,221.3877467,6.891,False -2,12,2012-06-15,8686.06,80.56,3.393,8573.41,195.0,0.19,4455.38,5288.61,221.4009901,6.891,False -2,12,2012-06-22,8138.75,81.04,3.346,12126.02,314.0,60.99,6058.6,36430.33,221.4411622,6.891,False -2,12,2012-06-29,8932.05,86.32,3.286,8495.34,275.8,,1935.16,5686.13,221.4813343,6.891,False -2,12,2012-07-06,8186.17,84.2,3.227,12355.5,295.05,100.15,6720.4,5506.53,221.5215064,6.565,False -2,12,2012-07-13,8725.05,80.17,3.256,8354.65,342.25,20.53,5674.44,5012.22,221.5616784,6.565,False -2,12,2012-07-20,8018.15,83.23,3.311,6961.58,241.2,24.97,3401.36,2453.42,221.5701123,6.565,False -2,12,2012-07-27,8692.91,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,12,2012-08-03,7916.28,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,12,2012-08-10,7973.64,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,12,2012-08-17,7657.49,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,12,2012-08-24,9590.91,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,12,2012-08-31,7257.77,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,12,2012-09-07,7695.58,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,12,2012-09-14,7606.98,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,12,2012-09-21,7626.51,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,12,2012-09-28,8029.62,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,12,2012-10-05,7107.15,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,12,2012-10-12,7161.14,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,12,2012-10-19,8206.99,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,12,2012-10-26,8060.19,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,13,2010-02-05,53319.96,40.19,2.572,,,,,,210.7526053,8.324,False -2,13,2010-02-12,47186.1,38.49,2.548,,,,,,210.8979935,8.324,True -2,13,2010-02-19,51947.05,39.69,2.514,,,,,,210.9451605,8.324,False -2,13,2010-02-26,50308.0,46.1,2.561,,,,,,210.9759573,8.324,False -2,13,2010-03-05,52696.93,47.17,2.625,,,,,,211.0067542,8.324,False -2,13,2010-03-12,48536.59,57.56,2.667,,,,,,211.037551,8.324,False -2,13,2010-03-19,48346.27,54.52,2.72,,,,,,210.8733316,8.324,False -2,13,2010-03-26,43150.33,51.26,2.732,,,,,,210.6766095,8.324,False -2,13,2010-04-02,49482.41,63.27,2.719,,,,,,210.4798874,8.2,False -2,13,2010-04-09,47217.48,65.41,2.77,,,,,,210.2831653,8.2,False -2,13,2010-04-16,48778.34,68.07,2.808,,,,,,210.1495463,8.2,False -2,13,2010-04-23,47625.97,65.11,2.795,,,,,,210.1000648,8.2,False -2,13,2010-04-30,46926.99,66.98,2.78,,,,,,210.0505833,8.2,False -2,13,2010-05-07,47983.65,71.28,2.835,,,,,,210.0011018,8.2,False -2,13,2010-05-14,44535.87,73.31,2.854,,,,,,209.9984585,8.2,False -2,13,2010-05-21,49845.16,74.83,2.826,,,,,,210.2768443,8.2,False -2,13,2010-05-28,49982.04,81.13,2.759,,,,,,210.5552301,8.2,False -2,13,2010-06-04,51485.83,81.81,2.705,,,,,,210.833616,8.2,False -2,13,2010-06-11,51481.89,83.4,2.668,,,,,,211.1120018,8.2,False -2,13,2010-06-18,49484.8,85.81,2.637,,,,,,211.1096543,8.2,False -2,13,2010-06-25,48398.48,86.26,2.653,,,,,,210.9950134,8.2,False -2,13,2010-07-02,52460.87,82.74,2.669,,,,,,210.8803726,8.099,False -2,13,2010-07-09,47722.62,82.59,2.642,,,,,,210.7657317,8.099,False -2,13,2010-07-16,49672.88,85.32,2.623,,,,,,210.7577954,8.099,False -2,13,2010-07-23,46883.57,87.66,2.608,,,,,,210.8921319,8.099,False -2,13,2010-07-30,46255.77,83.49,2.64,,,,,,211.0264684,8.099,False -2,13,2010-08-06,51948.67,89.53,2.627,,,,,,211.1608049,8.099,False -2,13,2010-08-13,45660.53,89.05,2.692,,,,,,211.2951413,8.099,False -2,13,2010-08-20,46653.59,88.7,2.664,,,,,,211.2596586,8.099,False -2,13,2010-08-27,48739.12,87.12,2.619,,,,,,211.2241759,8.099,False -2,13,2010-09-03,52807.63,81.83,2.577,,,,,,211.1886931,8.099,False -2,13,2010-09-10,49352.6,79.09,2.565,,,,,,211.1532104,8.099,True -2,13,2010-09-17,50605.99,82.05,2.582,,,,,,211.1806415,8.099,False -2,13,2010-09-24,47396.93,81.79,2.624,,,,,,211.2552578,8.099,False -2,13,2010-10-01,51662.65,69.24,2.603,,,,,,211.3298742,8.163,False -2,13,2010-10-08,49015.78,63.19,2.633,,,,,,211.4044906,8.163,False -2,13,2010-10-15,46042.26,65.8,2.72,,,,,,211.4713286,8.163,False -2,13,2010-10-22,45900.44,68.5,2.725,,,,,,211.5187208,8.163,False -2,13,2010-10-29,45828.94,66.24,2.716,,,,,,211.5661131,8.163,False -2,13,2010-11-05,50724.17,57.85,2.689,,,,,,211.6135053,8.163,False -2,13,2010-11-12,47466.21,59.69,2.728,,,,,,211.6608975,8.163,False -2,13,2010-11-19,48465.38,50.81,2.771,,,,,,211.5470304,8.163,False -2,13,2010-11-26,49693.62,62.98,2.735,,,,,,211.4062867,8.163,True -2,13,2010-12-03,44822.6,49.33,2.708,,,,,,211.265543,8.163,False -2,13,2010-12-10,44300.27,45.5,2.843,,,,,,211.1247993,8.163,False -2,13,2010-12-17,42513.81,47.55,2.869,,,,,,211.0645458,8.163,False -2,13,2010-12-24,47569.45,49.97,2.886,,,,,,211.0646599,8.163,False -2,13,2010-12-31,43646.92,47.3,2.943,,,,,,211.064774,8.163,True -2,13,2011-01-07,47995.82,44.69,2.976,,,,,,211.0648881,8.028,False -2,13,2011-01-14,43357.53,33.02,2.983,,,,,,211.1176713,8.028,False -2,13,2011-01-21,50290.38,41.4,3.016,,,,,,211.4864691,8.028,False -2,13,2011-01-28,45608.19,42.83,3.01,,,,,,211.8552668,8.028,False -2,13,2011-02-04,44132.34,38.25,2.989,,,,,,212.2240646,8.028,False -2,13,2011-02-11,49051.22,33.19,3.022,,,,,,212.5928624,8.028,True -2,13,2011-02-18,48013.57,57.83,3.045,,,,,,212.9033115,8.028,False -2,13,2011-02-25,47681.17,60.8,3.065,,,,,,213.190421,8.028,False -2,13,2011-03-04,50789.38,57.77,3.288,,,,,,213.4775305,8.028,False -2,13,2011-03-11,44920.74,52.7,3.459,,,,,,213.7646401,8.028,False -2,13,2011-03-18,45372.02,62.32,3.488,,,,,,214.0156238,8.028,False -2,13,2011-03-25,42548.15,69.42,3.473,,,,,,214.2521573,8.028,False -2,13,2011-04-01,43089.07,55.43,3.524,,,,,,214.4886908,7.931,False -2,13,2011-04-08,44846.88,67.0,3.622,,,,,,214.7252242,7.931,False -2,13,2011-04-15,42638.48,69.48,3.743,,,,,,214.9420631,7.931,False -2,13,2011-04-22,40836.61,69.39,3.807,,,,,,215.1096657,7.931,False -2,13,2011-04-29,41067.65,69.21,3.81,,,,,,215.2772683,7.931,False -2,13,2011-05-06,43964.49,61.48,3.906,,,,,,215.4448709,7.931,False -2,13,2011-05-13,41956.9,74.61,3.899,,,,,,215.6124735,7.931,False -2,13,2011-05-20,41448.03,67.14,3.907,,,,,,215.3834778,7.931,False -2,13,2011-05-27,42768.57,76.42,3.786,,,,,,215.1544822,7.931,False -2,13,2011-06-03,45225.61,83.07,3.699,,,,,,214.9254865,7.931,False -2,13,2011-06-10,44499.26,83.4,3.648,,,,,,214.6964908,7.931,False -2,13,2011-06-17,42953.97,86.53,3.637,,,,,,214.6513538,7.931,False -2,13,2011-06-24,43116.26,85.17,3.594,,,,,,214.7441108,7.931,False -2,13,2011-07-01,42815.86,85.69,3.524,,,,,,214.8368678,7.852,False -2,13,2011-07-08,43078.3,87.7,3.48,,,,,,214.9296249,7.852,False -2,13,2011-07-15,42400.51,89.83,3.575,,,,,,215.0134426,7.852,False -2,13,2011-07-22,42761.27,89.34,3.651,,,,,,215.0749122,7.852,False -2,13,2011-07-29,42661.18,90.07,3.682,,,,,,215.1363819,7.852,False -2,13,2011-08-05,45093.55,93.34,3.684,,,,,,215.1978515,7.852,False -2,13,2011-08-12,42715.26,91.58,3.638,,,,,,215.2593211,7.852,False -2,13,2011-08-19,43889.81,89.86,3.554,,,,,,215.3229307,7.852,False -2,13,2011-08-26,45810.67,90.45,3.523,,,,,,215.386897,7.852,False -2,13,2011-09-02,48399.6,89.64,3.533,,,,,,215.4508632,7.852,False -2,13,2011-09-09,45300.83,77.97,3.546,,,,,,215.5148295,7.852,True -2,13,2011-09-16,43458.52,78.85,3.526,,,,,,215.6944378,7.852,False -2,13,2011-09-23,42643.4,75.58,3.467,,,,,,216.0282356,7.852,False -2,13,2011-09-30,42217.5,78.14,3.355,,,,,,216.3620333,7.852,False -2,13,2011-10-07,46943.82,69.92,3.285,,,,,,216.6958311,7.441,False -2,13,2011-10-14,43462.12,71.67,3.274,,,,,,217.0048261,7.441,False -2,13,2011-10-21,42628.03,64.53,3.353,,,,,,217.1650042,7.441,False -2,13,2011-10-28,43146.42,65.87,3.372,,,,,,217.3251824,7.441,False -2,13,2011-11-04,46195.06,55.53,3.332,,,,,,217.4853605,7.441,False -2,13,2011-11-11,43893.56,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,13,2011-11-18,41830.69,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,13,2011-11-25,45221.05,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,13,2011-12-02,41985.3,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,13,2011-12-09,41300.96,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,13,2011-12-16,39745.11,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,13,2011-12-23,45358.28,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,13,2011-12-30,38064.22,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,13,2012-01-06,46230.05,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,13,2012-01-13,44436.58,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,13,2012-01-20,42850.02,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,13,2012-01-27,42017.51,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,13,2012-02-03,46869.35,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,13,2012-02-10,46221.28,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,13,2012-02-17,46172.03,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,13,2012-02-24,45058.78,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,13,2012-03-02,48866.39,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,13,2012-03-09,44727.74,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,13,2012-03-16,45955.7,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,13,2012-03-23,43704.89,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,13,2012-03-30,45316.37,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,13,2012-04-06,47723.86,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,13,2012-04-13,43826.64,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,13,2012-04-20,46514.01,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,13,2012-04-27,43820.31,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,13,2012-05-04,48375.31,76.73,3.749,23731.47,,78.09,7931.42,4443.52,221.3095166,6.891,False -2,13,2012-05-11,44945.28,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,13,2012-05-18,45528.42,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,13,2012-05-25,47129.89,78.19,3.561,10701.32,,1030.53,3595.04,14920.27,221.3828029,6.891,False -2,13,2012-06-01,46920.79,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,13,2012-06-08,48406.46,78.69,3.452,12162.04,463.6,78.39,3610.78,10877.64,221.3877467,6.891,False -2,13,2012-06-15,46617.55,80.56,3.393,8573.41,195.0,0.19,4455.38,5288.61,221.4009901,6.891,False -2,13,2012-06-22,46317.67,81.04,3.346,12126.02,314.0,60.99,6058.6,36430.33,221.4411622,6.891,False -2,13,2012-06-29,47493.59,86.32,3.286,8495.34,275.8,,1935.16,5686.13,221.4813343,6.891,False -2,13,2012-07-06,49805.45,84.2,3.227,12355.5,295.05,100.15,6720.4,5506.53,221.5215064,6.565,False -2,13,2012-07-13,44715.09,80.17,3.256,8354.65,342.25,20.53,5674.44,5012.22,221.5616784,6.565,False -2,13,2012-07-20,46537.71,83.23,3.311,6961.58,241.2,24.97,3401.36,2453.42,221.5701123,6.565,False -2,13,2012-07-27,44651.67,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,13,2012-08-03,47817.73,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,13,2012-08-10,45416.76,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,13,2012-08-17,45854.8,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,13,2012-08-24,46305.29,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,13,2012-08-31,47502.6,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,13,2012-09-07,46471.17,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,13,2012-09-14,45803.72,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,13,2012-09-21,45159.15,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,13,2012-09-28,44953.35,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,13,2012-10-05,50442.51,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,13,2012-10-12,44493.28,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,13,2012-10-19,45272.78,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,13,2012-10-26,47892.06,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,14,2010-02-05,26425.58,40.19,2.572,,,,,,210.7526053,8.324,False -2,14,2010-02-12,22993.48,38.49,2.548,,,,,,210.8979935,8.324,True -2,14,2010-02-19,25802.77,39.69,2.514,,,,,,210.9451605,8.324,False -2,14,2010-02-26,23585.55,46.1,2.561,,,,,,210.9759573,8.324,False -2,14,2010-03-05,24936.9,47.17,2.625,,,,,,211.0067542,8.324,False -2,14,2010-03-12,19373.8,57.56,2.667,,,,,,211.037551,8.324,False -2,14,2010-03-19,20236.78,54.52,2.72,,,,,,210.8733316,8.324,False -2,14,2010-03-26,18939.91,51.26,2.732,,,,,,210.6766095,8.324,False -2,14,2010-04-02,19648.41,63.27,2.719,,,,,,210.4798874,8.2,False -2,14,2010-04-09,18929.69,65.41,2.77,,,,,,210.2831653,8.2,False -2,14,2010-04-16,15584.61,68.07,2.808,,,,,,210.1495463,8.2,False -2,14,2010-04-23,16881.86,65.11,2.795,,,,,,210.1000648,8.2,False -2,14,2010-04-30,16125.19,66.98,2.78,,,,,,210.0505833,8.2,False -2,14,2010-05-07,20054.97,71.28,2.835,,,,,,210.0011018,8.2,False -2,14,2010-05-14,19351.92,73.31,2.854,,,,,,209.9984585,8.2,False -2,14,2010-05-21,18529.31,74.83,2.826,,,,,,210.2768443,8.2,False -2,14,2010-05-28,18552.58,81.13,2.759,,,,,,210.5552301,8.2,False -2,14,2010-06-04,19716.99,81.81,2.705,,,,,,210.833616,8.2,False -2,14,2010-06-11,20276.94,83.4,2.668,,,,,,211.1120018,8.2,False -2,14,2010-06-18,18450.15,85.81,2.637,,,,,,211.1096543,8.2,False -2,14,2010-06-25,16534.18,86.26,2.653,,,,,,210.9950134,8.2,False -2,14,2010-07-02,20027.37,82.74,2.669,,,,,,210.8803726,8.099,False -2,14,2010-07-09,17849.39,82.59,2.642,,,,,,210.7657317,8.099,False -2,14,2010-07-16,18449.13,85.32,2.623,,,,,,210.7577954,8.099,False -2,14,2010-07-23,16611.98,87.66,2.608,,,,,,210.8921319,8.099,False -2,14,2010-07-30,17320.14,83.49,2.64,,,,,,211.0264684,8.099,False -2,14,2010-08-06,20406.24,89.53,2.627,,,,,,211.1608049,8.099,False -2,14,2010-08-13,17538.24,89.05,2.692,,,,,,211.2951413,8.099,False -2,14,2010-08-20,20366.05,88.7,2.664,,,,,,211.2596586,8.099,False -2,14,2010-08-27,19669.65,87.12,2.619,,,,,,211.2241759,8.099,False -2,14,2010-09-03,20221.83,81.83,2.577,,,,,,211.1886931,8.099,False -2,14,2010-09-10,20507.83,79.09,2.565,,,,,,211.1532104,8.099,True -2,14,2010-09-17,18320.26,82.05,2.582,,,,,,211.1806415,8.099,False -2,14,2010-09-24,16957.73,81.79,2.624,,,,,,211.2552578,8.099,False -2,14,2010-10-01,18869.84,69.24,2.603,,,,,,211.3298742,8.163,False -2,14,2010-10-08,18464.96,63.19,2.633,,,,,,211.4044906,8.163,False -2,14,2010-10-15,18012.26,65.8,2.72,,,,,,211.4713286,8.163,False -2,14,2010-10-22,16546.89,68.5,2.725,,,,,,211.5187208,8.163,False -2,14,2010-10-29,17557.0,66.24,2.716,,,,,,211.5661131,8.163,False -2,14,2010-11-05,19859.89,57.85,2.689,,,,,,211.6135053,8.163,False -2,14,2010-11-12,18895.4,59.69,2.728,,,,,,211.6608975,8.163,False -2,14,2010-11-19,29749.98,50.81,2.771,,,,,,211.5470304,8.163,False -2,14,2010-11-26,56144.11,62.98,2.735,,,,,,211.4062867,8.163,True -2,14,2010-12-03,26246.33,49.33,2.708,,,,,,211.265543,8.163,False -2,14,2010-12-10,33966.75,45.5,2.843,,,,,,211.1247993,8.163,False -2,14,2010-12-17,46254.94,47.55,2.869,,,,,,211.0645458,8.163,False -2,14,2010-12-24,76486.63,49.97,2.886,,,,,,211.0646599,8.163,False -2,14,2010-12-31,23161.13,47.3,2.943,,,,,,211.064774,8.163,True -2,14,2011-01-07,16916.65,44.69,2.976,,,,,,211.0648881,8.028,False -2,14,2011-01-14,16438.95,33.02,2.983,,,,,,211.1176713,8.028,False -2,14,2011-01-21,19331.36,41.4,3.016,,,,,,211.4864691,8.028,False -2,14,2011-01-28,20790.92,42.83,3.01,,,,,,211.8552668,8.028,False -2,14,2011-02-04,20956.14,38.25,2.989,,,,,,212.2240646,8.028,False -2,14,2011-02-11,24718.91,33.19,3.022,,,,,,212.5928624,8.028,True -2,14,2011-02-18,25035.76,57.83,3.045,,,,,,212.9033115,8.028,False -2,14,2011-02-25,18468.61,60.8,3.065,,,,,,213.190421,8.028,False -2,14,2011-03-04,20675.84,57.77,3.288,,,,,,213.4775305,8.028,False -2,14,2011-03-11,20061.64,52.7,3.459,,,,,,213.7646401,8.028,False -2,14,2011-03-18,17797.7,62.32,3.488,,,,,,214.0156238,8.028,False -2,14,2011-03-25,15337.73,69.42,3.473,,,,,,214.2521573,8.028,False -2,14,2011-04-01,19893.39,55.43,3.524,,,,,,214.4886908,7.931,False -2,14,2011-04-08,17809.41,67.0,3.622,,,,,,214.7252242,7.931,False -2,14,2011-04-15,15774.0,69.48,3.743,,,,,,214.9420631,7.931,False -2,14,2011-04-22,16252.3,69.39,3.807,,,,,,215.1096657,7.931,False -2,14,2011-04-29,16214.02,69.21,3.81,,,,,,215.2772683,7.931,False -2,14,2011-05-06,20475.27,61.48,3.906,,,,,,215.4448709,7.931,False -2,14,2011-05-13,19521.67,74.61,3.899,,,,,,215.6124735,7.931,False -2,14,2011-05-20,17834.92,67.14,3.907,,,,,,215.3834778,7.931,False -2,14,2011-05-27,18223.68,76.42,3.786,,,,,,215.1544822,7.931,False -2,14,2011-06-03,18548.61,83.07,3.699,,,,,,214.9254865,7.931,False -2,14,2011-06-10,17394.06,83.4,3.648,,,,,,214.6964908,7.931,False -2,14,2011-06-17,17730.08,86.53,3.637,,,,,,214.6513538,7.931,False -2,14,2011-06-24,17780.68,85.17,3.594,,,,,,214.7441108,7.931,False -2,14,2011-07-01,18266.58,85.69,3.524,,,,,,214.8368678,7.852,False -2,14,2011-07-08,19241.44,87.7,3.48,,,,,,214.9296249,7.852,False -2,14,2011-07-15,16125.94,89.83,3.575,,,,,,215.0134426,7.852,False -2,14,2011-07-22,17949.03,89.34,3.651,,,,,,215.0749122,7.852,False -2,14,2011-07-29,15194.01,90.07,3.682,,,,,,215.1363819,7.852,False -2,14,2011-08-05,19150.57,93.34,3.684,,,,,,215.1978515,7.852,False -2,14,2011-08-12,16991.05,91.58,3.638,,,,,,215.2593211,7.852,False -2,14,2011-08-19,16320.3,89.86,3.554,,,,,,215.3229307,7.852,False -2,14,2011-08-26,16250.06,90.45,3.523,,,,,,215.386897,7.852,False -2,14,2011-09-02,16404.21,89.64,3.533,,,,,,215.4508632,7.852,False -2,14,2011-09-09,17840.64,77.97,3.546,,,,,,215.5148295,7.852,True -2,14,2011-09-16,15101.08,78.85,3.526,,,,,,215.6944378,7.852,False -2,14,2011-09-23,16580.34,75.58,3.467,,,,,,216.0282356,7.852,False -2,14,2011-09-30,15396.74,78.14,3.355,,,,,,216.3620333,7.852,False -2,14,2011-10-07,16962.2,69.92,3.285,,,,,,216.6958311,7.441,False -2,14,2011-10-14,17825.09,71.67,3.274,,,,,,217.0048261,7.441,False -2,14,2011-10-21,18247.67,64.53,3.353,,,,,,217.1650042,7.441,False -2,14,2011-10-28,18521.6,65.87,3.372,,,,,,217.3251824,7.441,False -2,14,2011-11-04,19940.83,55.53,3.332,,,,,,217.4853605,7.441,False -2,14,2011-11-11,22006.37,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,14,2011-11-18,25460.97,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,14,2011-11-25,63334.0,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,14,2011-12-02,26538.9,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,14,2011-12-09,33026.41,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,14,2011-12-16,40104.81,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,14,2011-12-23,67053.47,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,14,2011-12-30,30419.21,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,14,2012-01-06,20087.89,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,14,2012-01-13,19330.06,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,14,2012-01-20,18993.71,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,14,2012-01-27,19828.28,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,14,2012-02-03,24060.84,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,14,2012-02-10,26428.15,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,14,2012-02-17,26357.43,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,14,2012-02-24,21245.98,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,14,2012-03-02,23406.63,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,14,2012-03-09,21101.45,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,14,2012-03-16,21421.17,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,14,2012-03-23,17022.52,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,14,2012-03-30,16866.61,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,14,2012-04-06,19585.46,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,14,2012-04-13,22766.23,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,14,2012-04-20,19582.61,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,14,2012-04-27,18573.31,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,14,2012-05-04,20525.75,76.73,3.749,23731.47,,78.09,7931.42,4443.52,221.3095166,6.891,False -2,14,2012-05-11,22581.53,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,14,2012-05-18,24262.67,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,14,2012-05-25,20048.95,78.19,3.561,10701.32,,1030.53,3595.04,14920.27,221.3828029,6.891,False -2,14,2012-06-01,22565.57,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,14,2012-06-08,22170.57,78.69,3.452,12162.04,463.6,78.39,3610.78,10877.64,221.3877467,6.891,False -2,14,2012-06-15,21919.88,80.56,3.393,8573.41,195.0,0.19,4455.38,5288.61,221.4009901,6.891,False -2,14,2012-06-22,19647.21,81.04,3.346,12126.02,314.0,60.99,6058.6,36430.33,221.4411622,6.891,False -2,14,2012-06-29,20047.01,86.32,3.286,8495.34,275.8,,1935.16,5686.13,221.4813343,6.891,False -2,14,2012-07-06,23682.42,84.2,3.227,12355.5,295.05,100.15,6720.4,5506.53,221.5215064,6.565,False -2,14,2012-07-13,17747.66,80.17,3.256,8354.65,342.25,20.53,5674.44,5012.22,221.5616784,6.565,False -2,14,2012-07-20,15821.3,83.23,3.311,6961.58,241.2,24.97,3401.36,2453.42,221.5701123,6.565,False -2,14,2012-07-27,18600.51,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,14,2012-08-03,16229.35,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,14,2012-08-10,17308.87,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,14,2012-08-17,17888.07,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,14,2012-08-24,17374.02,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,14,2012-08-31,17516.64,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,14,2012-09-07,19536.7,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,14,2012-09-14,15959.23,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,14,2012-09-21,18745.59,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,14,2012-09-28,14039.31,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,14,2012-10-05,19510.9,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,14,2012-10-12,18380.89,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,14,2012-10-19,19174.57,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,14,2012-10-26,18348.17,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,16,2010-02-05,9674.86,40.19,2.572,,,,,,210.7526053,8.324,False -2,16,2010-02-12,9987.62,38.49,2.548,,,,,,210.8979935,8.324,True -2,16,2010-02-19,11495.54,39.69,2.514,,,,,,210.9451605,8.324,False -2,16,2010-02-26,12558.37,46.1,2.561,,,,,,210.9759573,8.324,False -2,16,2010-03-05,21957.34,47.17,2.625,,,,,,211.0067542,8.324,False -2,16,2010-03-12,25826.56,57.56,2.667,,,,,,211.037551,8.324,False -2,16,2010-03-19,45310.9,54.52,2.72,,,,,,210.8733316,8.324,False -2,16,2010-03-26,22084.09,51.26,2.732,,,,,,210.6766095,8.324,False -2,16,2010-04-02,48041.98,63.27,2.719,,,,,,210.4798874,8.2,False -2,16,2010-04-09,58887.31,65.41,2.77,,,,,,210.2831653,8.2,False -2,16,2010-04-16,67515.61,68.07,2.808,,,,,,210.1495463,8.2,False -2,16,2010-04-23,48577.91,65.11,2.795,,,,,,210.1000648,8.2,False -2,16,2010-04-30,59737.98,66.98,2.78,,,,,,210.0505833,8.2,False -2,16,2010-05-07,54829.3,71.28,2.835,,,,,,210.0011018,8.2,False -2,16,2010-05-14,44648.12,73.31,2.854,,,,,,209.9984585,8.2,False -2,16,2010-05-21,46300.64,74.83,2.826,,,,,,210.2768443,8.2,False -2,16,2010-05-28,59638.47,81.13,2.759,,,,,,210.5552301,8.2,False -2,16,2010-06-04,69765.65,81.81,2.705,,,,,,210.833616,8.2,False -2,16,2010-06-11,51913.06,83.4,2.668,,,,,,211.1120018,8.2,False -2,16,2010-06-18,57212.57,85.81,2.637,,,,,,211.1096543,8.2,False -2,16,2010-06-25,54304.31,86.26,2.653,,,,,,210.9950134,8.2,False -2,16,2010-07-02,44514.67,82.74,2.669,,,,,,210.8803726,8.099,False -2,16,2010-07-09,42022.73,82.59,2.642,,,,,,210.7657317,8.099,False -2,16,2010-07-16,36305.11,85.32,2.623,,,,,,210.7577954,8.099,False -2,16,2010-07-23,36604.99,87.66,2.608,,,,,,210.8921319,8.099,False -2,16,2010-07-30,29812.69,83.49,2.64,,,,,,211.0264684,8.099,False -2,16,2010-08-06,32172.54,89.53,2.627,,,,,,211.1608049,8.099,False -2,16,2010-08-13,27186.27,89.05,2.692,,,,,,211.2951413,8.099,False -2,16,2010-08-20,24058.13,88.7,2.664,,,,,,211.2596586,8.099,False -2,16,2010-08-27,18214.97,87.12,2.619,,,,,,211.2241759,8.099,False -2,16,2010-09-03,23042.29,81.83,2.577,,,,,,211.1886931,8.099,False -2,16,2010-09-10,20287.38,79.09,2.565,,,,,,211.1532104,8.099,True -2,16,2010-09-17,17120.84,82.05,2.582,,,,,,211.1806415,8.099,False -2,16,2010-09-24,17588.99,81.79,2.624,,,,,,211.2552578,8.099,False -2,16,2010-10-01,13570.97,69.24,2.603,,,,,,211.3298742,8.163,False -2,16,2010-10-08,13689.36,63.19,2.633,,,,,,211.4044906,8.163,False -2,16,2010-10-15,11764.12,65.8,2.72,,,,,,211.4713286,8.163,False -2,16,2010-10-22,9896.08,68.5,2.725,,,,,,211.5187208,8.163,False -2,16,2010-10-29,8448.19,66.24,2.716,,,,,,211.5661131,8.163,False -2,16,2010-11-05,7414.42,57.85,2.689,,,,,,211.6135053,8.163,False -2,16,2010-11-12,6766.04,59.69,2.728,,,,,,211.6608975,8.163,False -2,16,2010-11-19,7492.7,50.81,2.771,,,,,,211.5470304,8.163,False -2,16,2010-11-26,10354.51,62.98,2.735,,,,,,211.4062867,8.163,True -2,16,2010-12-03,4512.83,49.33,2.708,,,,,,211.265543,8.163,False -2,16,2010-12-10,5824.27,45.5,2.843,,,,,,211.1247993,8.163,False -2,16,2010-12-17,5383.66,47.55,2.869,,,,,,211.0645458,8.163,False -2,16,2010-12-24,6912.04,49.97,2.886,,,,,,211.0646599,8.163,False -2,16,2010-12-31,4678.67,47.3,2.943,,,,,,211.064774,8.163,True -2,16,2011-01-07,5668.32,44.69,2.976,,,,,,211.0648881,8.028,False -2,16,2011-01-14,7539.94,33.02,2.983,,,,,,211.1176713,8.028,False -2,16,2011-01-21,7192.85,41.4,3.016,,,,,,211.4864691,8.028,False -2,16,2011-01-28,8558.07,42.83,3.01,,,,,,211.8552668,8.028,False -2,16,2011-02-04,11660.16,38.25,2.989,,,,,,212.2240646,8.028,False -2,16,2011-02-11,12075.76,33.19,3.022,,,,,,212.5928624,8.028,True -2,16,2011-02-18,15566.84,57.83,3.045,,,,,,212.9033115,8.028,False -2,16,2011-02-25,23137.36,60.8,3.065,,,,,,213.190421,8.028,False -2,16,2011-03-04,29704.92,57.77,3.288,,,,,,213.4775305,8.028,False -2,16,2011-03-11,25803.25,52.7,3.459,,,,,,213.7646401,8.028,False -2,16,2011-03-18,43939.89,62.32,3.488,,,,,,214.0156238,8.028,False -2,16,2011-03-25,52536.38,69.42,3.473,,,,,,214.2521573,8.028,False -2,16,2011-04-01,40585.79,55.43,3.524,,,,,,214.4886908,7.931,False -2,16,2011-04-08,48360.42,67.0,3.622,,,,,,214.7252242,7.931,False -2,16,2011-04-15,43826.18,69.48,3.743,,,,,,214.9420631,7.931,False -2,16,2011-04-22,43993.76,69.39,3.807,,,,,,215.1096657,7.931,False -2,16,2011-04-29,38636.29,69.21,3.81,,,,,,215.2772683,7.931,False -2,16,2011-05-06,37593.03,61.48,3.906,,,,,,215.4448709,7.931,False -2,16,2011-05-13,43716.62,74.61,3.899,,,,,,215.6124735,7.931,False -2,16,2011-05-20,39997.54,67.14,3.907,,,,,,215.3834778,7.931,False -2,16,2011-05-27,39900.87,76.42,3.786,,,,,,215.1544822,7.931,False -2,16,2011-06-03,60383.42,83.07,3.699,,,,,,214.9254865,7.931,False -2,16,2011-06-10,51390.09,83.4,3.648,,,,,,214.6964908,7.931,False -2,16,2011-06-17,46432.64,86.53,3.637,,,,,,214.6513538,7.931,False -2,16,2011-06-24,41742.56,85.17,3.594,,,,,,214.7441108,7.931,False -2,16,2011-07-01,45377.7,85.69,3.524,,,,,,214.8368678,7.852,False -2,16,2011-07-08,46554.94,87.7,3.48,,,,,,214.9296249,7.852,False -2,16,2011-07-15,32239.86,89.83,3.575,,,,,,215.0134426,7.852,False -2,16,2011-07-22,31599.97,89.34,3.651,,,,,,215.0749122,7.852,False -2,16,2011-07-29,26455.06,90.07,3.682,,,,,,215.1363819,7.852,False -2,16,2011-08-05,23871.68,93.34,3.684,,,,,,215.1978515,7.852,False -2,16,2011-08-12,21574.38,91.58,3.638,,,,,,215.2593211,7.852,False -2,16,2011-08-19,19526.92,89.86,3.554,,,,,,215.3229307,7.852,False -2,16,2011-08-26,18011.32,90.45,3.523,,,,,,215.386897,7.852,False -2,16,2011-09-02,18111.52,89.64,3.533,,,,,,215.4508632,7.852,False -2,16,2011-09-09,16794.46,77.97,3.546,,,,,,215.5148295,7.852,True -2,16,2011-09-16,12371.14,78.85,3.526,,,,,,215.6944378,7.852,False -2,16,2011-09-23,11305.76,75.58,3.467,,,,,,216.0282356,7.852,False -2,16,2011-09-30,10694.72,78.14,3.355,,,,,,216.3620333,7.852,False -2,16,2011-10-07,11698.05,69.92,3.285,,,,,,216.6958311,7.441,False -2,16,2011-10-14,8461.04,71.67,3.274,,,,,,217.0048261,7.441,False -2,16,2011-10-21,8275.43,64.53,3.353,,,,,,217.1650042,7.441,False -2,16,2011-10-28,8030.03,65.87,3.372,,,,,,217.3251824,7.441,False -2,16,2011-11-04,7047.32,55.53,3.332,,,,,,217.4853605,7.441,False -2,16,2011-11-11,5551.97,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,16,2011-11-18,6351.17,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,16,2011-11-25,9528.26,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,16,2011-12-02,5247.3,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,16,2011-12-09,5540.47,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,16,2011-12-16,4877.02,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,16,2011-12-23,6874.56,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,16,2011-12-30,6120.69,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,16,2012-01-06,6857.17,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,16,2012-01-13,5822.21,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,16,2012-01-20,6390.02,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,16,2012-01-27,6766.53,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,16,2012-02-03,12100.76,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,16,2012-02-10,14331.81,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,16,2012-02-17,11628.3,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,16,2012-02-24,18344.1,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,16,2012-03-02,29071.02,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,16,2012-03-09,30060.91,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,16,2012-03-16,38449.89,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,16,2012-03-23,39796.37,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,16,2012-03-30,57270.21,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,16,2012-04-06,58753.03,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,16,2012-04-13,49269.1,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,16,2012-04-20,43658.78,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,16,2012-04-27,47384.36,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,16,2012-05-04,54561.21,76.73,3.749,23731.47,,78.09,7931.42,4443.52,221.3095166,6.891,False -2,16,2012-05-11,45366.08,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,16,2012-05-18,44772.09,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,16,2012-05-25,53840.9,78.19,3.561,10701.32,,1030.53,3595.04,14920.27,221.3828029,6.891,False -2,16,2012-06-01,51827.41,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,16,2012-06-08,44017.97,78.69,3.452,12162.04,463.6,78.39,3610.78,10877.64,221.3877467,6.891,False -2,16,2012-06-15,42603.99,80.56,3.393,8573.41,195.0,0.19,4455.38,5288.61,221.4009901,6.891,False -2,16,2012-06-22,45878.38,81.04,3.346,12126.02,314.0,60.99,6058.6,36430.33,221.4411622,6.891,False -2,16,2012-06-29,48796.53,86.32,3.286,8495.34,275.8,,1935.16,5686.13,221.4813343,6.891,False -2,16,2012-07-06,49878.72,84.2,3.227,12355.5,295.05,100.15,6720.4,5506.53,221.5215064,6.565,False -2,16,2012-07-13,28746.12,80.17,3.256,8354.65,342.25,20.53,5674.44,5012.22,221.5616784,6.565,False -2,16,2012-07-20,30715.15,83.23,3.311,6961.58,241.2,24.97,3401.36,2453.42,221.5701123,6.565,False -2,16,2012-07-27,29470.21,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,16,2012-08-03,30756.74,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,16,2012-08-10,24513.0,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,16,2012-08-17,21813.9,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,16,2012-08-24,20245.01,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,16,2012-08-31,18075.31,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,16,2012-09-07,21633.53,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,16,2012-09-14,10942.85,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,16,2012-09-21,11361.67,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,16,2012-09-28,10878.34,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,16,2012-10-05,7781.04,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,16,2012-10-12,8109.4,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,16,2012-10-19,7769.29,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,16,2012-10-26,7487.94,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,17,2010-02-05,18810.11,40.19,2.572,,,,,,210.7526053,8.324,False -2,17,2010-02-12,16749.96,38.49,2.548,,,,,,210.8979935,8.324,True -2,17,2010-02-19,18650.87,39.69,2.514,,,,,,210.9451605,8.324,False -2,17,2010-02-26,16339.18,46.1,2.561,,,,,,210.9759573,8.324,False -2,17,2010-03-05,16338.14,47.17,2.625,,,,,,211.0067542,8.324,False -2,17,2010-03-12,15135.48,57.56,2.667,,,,,,211.037551,8.324,False -2,17,2010-03-19,16941.45,54.52,2.72,,,,,,210.8733316,8.324,False -2,17,2010-03-26,13164.03,51.26,2.732,,,,,,210.6766095,8.324,False -2,17,2010-04-02,11679.99,63.27,2.719,,,,,,210.4798874,8.2,False -2,17,2010-04-09,10891.7,65.41,2.77,,,,,,210.2831653,8.2,False -2,17,2010-04-16,9750.12,68.07,2.808,,,,,,210.1495463,8.2,False -2,17,2010-04-23,10041.35,65.11,2.795,,,,,,210.1000648,8.2,False -2,17,2010-04-30,10763.28,66.98,2.78,,,,,,210.0505833,8.2,False -2,17,2010-05-07,12852.02,71.28,2.835,,,,,,210.0011018,8.2,False -2,17,2010-05-14,13109.68,73.31,2.854,,,,,,209.9984585,8.2,False -2,17,2010-05-21,12115.19,74.83,2.826,,,,,,210.2768443,8.2,False -2,17,2010-05-28,11622.26,81.13,2.759,,,,,,210.5552301,8.2,False -2,17,2010-06-04,13531.59,81.81,2.705,,,,,,210.833616,8.2,False -2,17,2010-06-11,11925.21,83.4,2.668,,,,,,211.1120018,8.2,False -2,17,2010-06-18,12362.54,85.81,2.637,,,,,,211.1096543,8.2,False -2,17,2010-06-25,11772.69,86.26,2.653,,,,,,210.9950134,8.2,False -2,17,2010-07-02,11778.86,82.74,2.669,,,,,,210.8803726,8.099,False -2,17,2010-07-09,12685.71,82.59,2.642,,,,,,210.7657317,8.099,False -2,17,2010-07-16,11528.69,85.32,2.623,,,,,,210.7577954,8.099,False -2,17,2010-07-23,12036.4,87.66,2.608,,,,,,210.8921319,8.099,False -2,17,2010-07-30,11584.95,83.49,2.64,,,,,,211.0264684,8.099,False -2,17,2010-08-06,14647.2,89.53,2.627,,,,,,211.1608049,8.099,False -2,17,2010-08-13,13068.22,89.05,2.692,,,,,,211.2951413,8.099,False -2,17,2010-08-20,14337.45,88.7,2.664,,,,,,211.2596586,8.099,False -2,17,2010-08-27,14713.96,87.12,2.619,,,,,,211.2241759,8.099,False -2,17,2010-09-03,14536.02,81.83,2.577,,,,,,211.1886931,8.099,False -2,17,2010-09-10,12247.21,79.09,2.565,,,,,,211.1532104,8.099,True -2,17,2010-09-17,13889.59,82.05,2.582,,,,,,211.1806415,8.099,False -2,17,2010-09-24,12856.2,81.79,2.624,,,,,,211.2552578,8.099,False -2,17,2010-10-01,13697.8,69.24,2.603,,,,,,211.3298742,8.163,False -2,17,2010-10-08,13840.58,63.19,2.633,,,,,,211.4044906,8.163,False -2,17,2010-10-15,11289.27,65.8,2.72,,,,,,211.4713286,8.163,False -2,17,2010-10-22,11985.71,68.5,2.725,,,,,,211.5187208,8.163,False -2,17,2010-10-29,11703.28,66.24,2.716,,,,,,211.5661131,8.163,False -2,17,2010-11-05,11907.92,57.85,2.689,,,,,,211.6135053,8.163,False -2,17,2010-11-12,14651.57,59.69,2.728,,,,,,211.6608975,8.163,False -2,17,2010-11-19,15047.76,50.81,2.771,,,,,,211.5470304,8.163,False -2,17,2010-11-26,18737.13,62.98,2.735,,,,,,211.4062867,8.163,True -2,17,2010-12-03,13764.94,49.33,2.708,,,,,,211.265543,8.163,False -2,17,2010-12-10,16238.47,45.5,2.843,,,,,,211.1247993,8.163,False -2,17,2010-12-17,19249.13,47.55,2.869,,,,,,211.0645458,8.163,False -2,17,2010-12-24,31310.15,49.97,2.886,,,,,,211.0646599,8.163,False -2,17,2010-12-31,15112.34,47.3,2.943,,,,,,211.064774,8.163,True -2,17,2011-01-07,11669.55,44.69,2.976,,,,,,211.0648881,8.028,False -2,17,2011-01-14,10118.69,33.02,2.983,,,,,,211.1176713,8.028,False -2,17,2011-01-21,12629.08,41.4,3.016,,,,,,211.4864691,8.028,False -2,17,2011-01-28,13361.35,42.83,3.01,,,,,,211.8552668,8.028,False -2,17,2011-02-04,12555.71,38.25,2.989,,,,,,212.2240646,8.028,False -2,17,2011-02-11,14889.15,33.19,3.022,,,,,,212.5928624,8.028,True -2,17,2011-02-18,15655.64,57.83,3.045,,,,,,212.9033115,8.028,False -2,17,2011-02-25,13523.11,60.8,3.065,,,,,,213.190421,8.028,False -2,17,2011-03-04,14623.41,57.77,3.288,,,,,,213.4775305,8.028,False -2,17,2011-03-11,14421.53,52.7,3.459,,,,,,213.7646401,8.028,False -2,17,2011-03-18,11930.46,62.32,3.488,,,,,,214.0156238,8.028,False -2,17,2011-03-25,11833.06,69.42,3.473,,,,,,214.2521573,8.028,False -2,17,2011-04-01,10087.98,55.43,3.524,,,,,,214.4886908,7.931,False -2,17,2011-04-08,11837.49,67.0,3.622,,,,,,214.7252242,7.931,False -2,17,2011-04-15,10306.42,69.48,3.743,,,,,,214.9420631,7.931,False -2,17,2011-04-22,10975.38,69.39,3.807,,,,,,215.1096657,7.931,False -2,17,2011-04-29,12134.16,69.21,3.81,,,,,,215.2772683,7.931,False -2,17,2011-05-06,13051.75,61.48,3.906,,,,,,215.4448709,7.931,False -2,17,2011-05-13,12790.97,74.61,3.899,,,,,,215.6124735,7.931,False -2,17,2011-05-20,10118.85,67.14,3.907,,,,,,215.3834778,7.931,False -2,17,2011-05-27,11691.14,76.42,3.786,,,,,,215.1544822,7.931,False -2,17,2011-06-03,13093.76,83.07,3.699,,,,,,214.9254865,7.931,False -2,17,2011-06-10,10668.24,83.4,3.648,,,,,,214.6964908,7.931,False -2,17,2011-06-17,13233.62,86.53,3.637,,,,,,214.6513538,7.931,False -2,17,2011-06-24,10329.03,85.17,3.594,,,,,,214.7441108,7.931,False -2,17,2011-07-01,11445.0,85.69,3.524,,,,,,214.8368678,7.852,False -2,17,2011-07-08,12433.78,87.7,3.48,,,,,,214.9296249,7.852,False -2,17,2011-07-15,12598.95,89.83,3.575,,,,,,215.0134426,7.852,False -2,17,2011-07-22,13731.02,89.34,3.651,,,,,,215.0749122,7.852,False -2,17,2011-07-29,13270.89,90.07,3.682,,,,,,215.1363819,7.852,False -2,17,2011-08-05,14366.25,93.34,3.684,,,,,,215.1978515,7.852,False -2,17,2011-08-12,14102.43,91.58,3.638,,,,,,215.2593211,7.852,False -2,17,2011-08-19,13943.95,89.86,3.554,,,,,,215.3229307,7.852,False -2,17,2011-08-26,13055.85,90.45,3.523,,,,,,215.386897,7.852,False -2,17,2011-09-02,13639.99,89.64,3.533,,,,,,215.4508632,7.852,False -2,17,2011-09-09,13013.99,77.97,3.546,,,,,,215.5148295,7.852,True -2,17,2011-09-16,12527.68,78.85,3.526,,,,,,215.6944378,7.852,False -2,17,2011-09-23,12047.35,75.58,3.467,,,,,,216.0282356,7.852,False -2,17,2011-09-30,12234.4,78.14,3.355,,,,,,216.3620333,7.852,False -2,17,2011-10-07,11816.99,69.92,3.285,,,,,,216.6958311,7.441,False -2,17,2011-10-14,12107.11,71.67,3.274,,,,,,217.0048261,7.441,False -2,17,2011-10-21,11660.57,64.53,3.353,,,,,,217.1650042,7.441,False -2,17,2011-10-28,11827.4,65.87,3.372,,,,,,217.3251824,7.441,False -2,17,2011-11-04,13369.39,55.53,3.332,,,,,,217.4853605,7.441,False -2,17,2011-11-11,13599.24,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,17,2011-11-18,13481.43,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,17,2011-11-25,23668.23,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,17,2011-12-02,15765.36,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,17,2011-12-09,18441.24,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,17,2011-12-16,21383.78,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,17,2011-12-23,32817.23,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,17,2011-12-30,18756.69,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,17,2012-01-06,14106.21,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,17,2012-01-13,11112.18,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,17,2012-01-20,14019.6,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,17,2012-01-27,12628.27,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,17,2012-02-03,15024.68,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,17,2012-02-10,17675.28,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,17,2012-02-17,17462.79,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,17,2012-02-24,18727.27,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,17,2012-03-02,15866.49,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,17,2012-03-09,14182.77,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,17,2012-03-16,15851.1,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,17,2012-03-23,12921.86,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,17,2012-03-30,12559.67,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,17,2012-04-06,13263.58,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,17,2012-04-13,12726.55,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,17,2012-04-20,11741.15,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,17,2012-04-27,11799.54,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,17,2012-05-04,13016.09,76.73,3.749,23731.47,,78.09,7931.42,4443.52,221.3095166,6.891,False -2,17,2012-05-11,14189.92,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,17,2012-05-18,16087.01,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,17,2012-05-25,12672.66,78.19,3.561,10701.32,,1030.53,3595.04,14920.27,221.3828029,6.891,False -2,17,2012-06-01,12311.16,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,17,2012-06-08,13684.66,78.69,3.452,12162.04,463.6,78.39,3610.78,10877.64,221.3877467,6.891,False -2,17,2012-06-15,14742.77,80.56,3.393,8573.41,195.0,0.19,4455.38,5288.61,221.4009901,6.891,False -2,17,2012-06-22,13206.37,81.04,3.346,12126.02,314.0,60.99,6058.6,36430.33,221.4411622,6.891,False -2,17,2012-06-29,14279.93,86.32,3.286,8495.34,275.8,,1935.16,5686.13,221.4813343,6.891,False -2,17,2012-07-06,14409.95,84.2,3.227,12355.5,295.05,100.15,6720.4,5506.53,221.5215064,6.565,False -2,17,2012-07-13,12561.5,80.17,3.256,8354.65,342.25,20.53,5674.44,5012.22,221.5616784,6.565,False -2,17,2012-07-20,12582.05,83.23,3.311,6961.58,241.2,24.97,3401.36,2453.42,221.5701123,6.565,False -2,17,2012-07-27,11696.19,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,17,2012-08-03,14022.9,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,17,2012-08-10,13756.98,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,17,2012-08-17,14577.63,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,17,2012-08-24,13421.8,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,17,2012-08-31,14446.1,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,17,2012-09-07,13742.84,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,17,2012-09-14,12251.02,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,17,2012-09-21,13248.59,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,17,2012-09-28,11926.62,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,17,2012-10-05,13752.23,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,17,2012-10-12,13786.08,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,17,2012-10-19,12404.85,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,17,2012-10-26,12016.19,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,18,2010-02-05,7277.75,40.19,2.572,,,,,,210.7526053,8.324,False -2,18,2010-02-12,22756.44,38.49,2.548,,,,,,210.8979935,8.324,True -2,18,2010-02-19,18259.4,39.69,2.514,,,,,,210.9451605,8.324,False -2,18,2010-02-26,910.33,46.1,2.561,,,,,,210.9759573,8.324,False -2,18,2010-03-05,625.1,47.17,2.625,,,,,,211.0067542,8.324,False -2,18,2010-03-12,2693.39,57.56,2.667,,,,,,211.037551,8.324,False -2,18,2010-03-19,2645.17,54.52,2.72,,,,,,210.8733316,8.324,False -2,18,2010-03-26,4777.04,51.26,2.732,,,,,,210.6766095,8.324,False -2,18,2010-04-02,23331.6,63.27,2.719,,,,,,210.4798874,8.2,False -2,18,2010-04-09,12103.12,65.41,2.77,,,,,,210.2831653,8.2,False -2,18,2010-04-16,535.77,68.07,2.808,,,,,,210.1495463,8.2,False -2,18,2010-04-23,19.9,65.11,2.795,,,,,,210.1000648,8.2,False -2,18,2010-04-30,30.69,66.98,2.78,,,,,,210.0505833,8.2,False -2,18,2010-05-07,6.5,71.28,2.835,,,,,,210.0011018,8.2,False -2,18,2010-05-14,1.75,73.31,2.854,,,,,,209.9984585,8.2,False -2,18,2010-05-21,13.25,74.83,2.826,,,,,,210.2768443,8.2,False -2,18,2010-05-28,5.3,81.13,2.759,,,,,,210.5552301,8.2,False -2,18,2010-06-04,29.0,81.81,2.705,,,,,,210.833616,8.2,False -2,18,2010-06-11,3.0,83.4,2.668,,,,,,211.1120018,8.2,False -2,18,2010-06-18,1.0,85.81,2.637,,,,,,211.1096543,8.2,False -2,18,2010-08-27,103.0,87.12,2.619,,,,,,211.2241759,8.099,False -2,18,2010-09-03,251.0,81.83,2.577,,,,,,211.1886931,8.099,False -2,18,2010-09-10,1083.84,79.09,2.565,,,,,,211.1532104,8.099,True -2,18,2010-09-17,3857.76,82.05,2.582,,,,,,211.1806415,8.099,False -2,18,2010-09-24,5123.79,81.79,2.624,,,,,,211.2552578,8.099,False -2,18,2010-10-01,6984.65,69.24,2.603,,,,,,211.3298742,8.163,False -2,18,2010-10-08,10066.17,63.19,2.633,,,,,,211.4044906,8.163,False -2,18,2010-10-15,11932.85,65.8,2.72,,,,,,211.4713286,8.163,False -2,18,2010-10-22,16786.47,68.5,2.725,,,,,,211.5187208,8.163,False -2,18,2010-10-29,37559.42,66.24,2.716,,,,,,211.5661131,8.163,False -2,18,2010-11-05,17527.96,57.85,2.689,,,,,,211.6135053,8.163,False -2,18,2010-11-12,13540.66,59.69,2.728,,,,,,211.6608975,8.163,False -2,18,2010-11-19,22929.94,50.81,2.771,,,,,,211.5470304,8.163,False -2,18,2010-11-26,49045.82,62.98,2.735,,,,,,211.4062867,8.163,True -2,18,2010-12-03,71185.71,49.33,2.708,,,,,,211.265543,8.163,False -2,18,2010-12-10,64334.44,45.5,2.843,,,,,,211.1247993,8.163,False -2,18,2010-12-17,52321.19,47.55,2.869,,,,,,211.0645458,8.163,False -2,18,2010-12-24,41304.01,49.97,2.886,,,,,,211.0646599,8.163,False -2,18,2010-12-31,33799.07,47.3,2.943,,,,,,211.064774,8.163,True -2,18,2011-01-07,7422.14,44.69,2.976,,,,,,211.0648881,8.028,False -2,18,2011-01-14,1054.9,33.02,2.983,,,,,,211.1176713,8.028,False -2,18,2011-01-21,1828.89,41.4,3.016,,,,,,211.4864691,8.028,False -2,18,2011-01-28,2904.6,42.83,3.01,,,,,,211.8552668,8.028,False -2,18,2011-02-04,4373.45,38.25,2.989,,,,,,212.2240646,8.028,False -2,18,2011-02-11,18434.68,33.19,3.022,,,,,,212.5928624,8.028,True -2,18,2011-02-18,26498.6,57.83,3.045,,,,,,212.9033115,8.028,False -2,18,2011-02-25,825.21,60.8,3.065,,,,,,213.190421,8.028,False -2,18,2011-03-04,46.6,57.77,3.288,,,,,,213.4775305,8.028,False -2,18,2011-03-11,3.4,52.7,3.459,,,,,,213.7646401,8.028,False -2,18,2011-03-18,958.23,62.32,3.488,,,,,,214.0156238,8.028,False -2,18,2011-03-25,1889.35,69.42,3.473,,,,,,214.2521573,8.028,False -2,18,2011-04-01,1905.69,55.43,3.524,,,,,,214.4886908,7.931,False -2,18,2011-04-08,2813.81,67.0,3.622,,,,,,214.7252242,7.931,False -2,18,2011-04-15,6619.28,69.48,3.743,,,,,,214.9420631,7.931,False -2,18,2011-04-22,18087.17,69.39,3.807,,,,,,215.1096657,7.931,False -2,18,2011-04-29,9838.95,69.21,3.81,,,,,,215.2772683,7.931,False -2,18,2011-05-06,1082.76,61.48,3.906,,,,,,215.4448709,7.931,False -2,18,2011-05-13,105.97,74.61,3.899,,,,,,215.6124735,7.931,False -2,18,2011-06-03,0.1,83.07,3.699,,,,,,214.9254865,7.931,False -2,18,2011-07-22,3.0,89.34,3.651,,,,,,215.0749122,7.852,False -2,18,2011-08-26,29.91,90.45,3.523,,,,,,215.386897,7.852,False -2,18,2011-09-02,22.07,89.64,3.533,,,,,,215.4508632,7.852,False -2,18,2011-09-09,997.82,77.97,3.546,,,,,,215.5148295,7.852,True -2,18,2011-09-16,4402.47,78.85,3.526,,,,,,215.6944378,7.852,False -2,18,2011-09-23,5256.94,75.58,3.467,,,,,,216.0282356,7.852,False -2,18,2011-09-30,5854.88,78.14,3.355,,,,,,216.3620333,7.852,False -2,18,2011-10-07,9703.12,69.92,3.285,,,,,,216.6958311,7.441,False -2,18,2011-10-14,11484.48,71.67,3.274,,,,,,217.0048261,7.441,False -2,18,2011-10-21,15682.44,64.53,3.353,,,,,,217.1650042,7.441,False -2,18,2011-10-28,26898.37,65.87,3.372,,,,,,217.3251824,7.441,False -2,18,2011-11-04,25749.47,55.53,3.332,,,,,,217.4853605,7.441,False -2,18,2011-11-11,14970.51,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,18,2011-11-18,18648.9,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,18,2011-11-25,50925.45,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,18,2011-12-02,71401.56,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,18,2011-12-09,56172.54,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,18,2011-12-16,50865.48,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,18,2011-12-23,38458.19,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,18,2011-12-30,36279.02,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,18,2012-01-06,11130.93,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,18,2012-01-13,2363.09,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,18,2012-01-20,2088.13,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,18,2012-01-27,2345.21,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,18,2012-02-03,4159.51,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,18,2012-02-10,12431.69,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,18,2012-02-17,33202.85,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,18,2012-02-24,3278.68,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,18,2012-03-02,1710.87,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,18,2012-03-09,1909.03,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,18,2012-03-16,2414.56,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,18,2012-03-23,3237.63,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,18,2012-03-30,5961.59,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,18,2012-04-06,19149.78,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,18,2012-04-13,8991.99,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,18,2012-04-20,370.8,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,18,2012-04-27,0.1,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,18,2012-05-11,0.1,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,18,2012-05-18,0.1,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,18,2012-06-01,-1.97,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,18,2012-07-27,-3.03,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,18,2012-08-03,14.91,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,18,2012-08-10,20.91,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,18,2012-08-17,6.97,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,18,2012-08-24,66.67,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,18,2012-08-31,568.28,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,18,2012-09-07,1120.08,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,18,2012-09-14,2626.17,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,18,2012-09-21,7678.69,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,18,2012-09-28,10341.89,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,18,2012-10-05,13504.84,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,18,2012-10-12,17327.28,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,18,2012-10-19,20327.21,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,18,2012-10-26,26085.43,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,19,2010-02-05,4891.96,40.19,2.572,,,,,,210.7526053,8.324,False -2,19,2010-02-12,3713.47,38.49,2.548,,,,,,210.8979935,8.324,True -2,19,2010-02-19,4488.64,39.69,2.514,,,,,,210.9451605,8.324,False -2,19,2010-02-26,5016.24,46.1,2.561,,,,,,210.9759573,8.324,False -2,19,2010-03-05,4658.09,47.17,2.625,,,,,,211.0067542,8.324,False -2,19,2010-03-12,4116.18,57.56,2.667,,,,,,211.037551,8.324,False -2,19,2010-03-19,4605.53,54.52,2.72,,,,,,210.8733316,8.324,False -2,19,2010-03-26,4241.32,51.26,2.732,,,,,,210.6766095,8.324,False -2,19,2010-04-02,4176.03,63.27,2.719,,,,,,210.4798874,8.2,False -2,19,2010-04-09,2972.01,65.41,2.77,,,,,,210.2831653,8.2,False -2,19,2010-04-16,3549.69,68.07,2.808,,,,,,210.1495463,8.2,False -2,19,2010-04-23,4050.41,65.11,2.795,,,,,,210.1000648,8.2,False -2,19,2010-04-30,4231.33,66.98,2.78,,,,,,210.0505833,8.2,False -2,19,2010-05-07,4143.68,71.28,2.835,,,,,,210.0011018,8.2,False -2,19,2010-05-14,3437.11,73.31,2.854,,,,,,209.9984585,8.2,False -2,19,2010-05-21,4093.77,74.83,2.826,,,,,,210.2768443,8.2,False -2,19,2010-05-28,3077.89,81.13,2.759,,,,,,210.5552301,8.2,False -2,19,2010-06-04,4087.01,81.81,2.705,,,,,,210.833616,8.2,False -2,19,2010-06-11,3684.37,83.4,2.668,,,,,,211.1120018,8.2,False -2,19,2010-06-18,2950.46,85.81,2.637,,,,,,211.1096543,8.2,False -2,19,2010-06-25,2987.55,86.26,2.653,,,,,,210.9950134,8.2,False -2,19,2010-07-02,3999.53,82.74,2.669,,,,,,210.8803726,8.099,False -2,19,2010-07-09,4116.62,82.59,2.642,,,,,,210.7657317,8.099,False -2,19,2010-07-16,4878.77,85.32,2.623,,,,,,210.7577954,8.099,False -2,19,2010-07-23,4589.07,87.66,2.608,,,,,,210.8921319,8.099,False -2,19,2010-07-30,4244.78,83.49,2.64,,,,,,211.0264684,8.099,False -2,19,2010-08-06,4061.96,89.53,2.627,,,,,,211.1608049,8.099,False -2,19,2010-08-13,4589.26,89.05,2.692,,,,,,211.2951413,8.099,False -2,19,2010-08-20,4632.26,88.7,2.664,,,,,,211.2596586,8.099,False -2,19,2010-08-27,4137.69,87.12,2.619,,,,,,211.2241759,8.099,False -2,19,2010-09-03,4137.17,81.83,2.577,,,,,,211.1886931,8.099,False -2,19,2010-09-10,5330.96,79.09,2.565,,,,,,211.1532104,8.099,True -2,19,2010-09-17,5856.07,82.05,2.582,,,,,,211.1806415,8.099,False -2,19,2010-09-24,5079.03,81.79,2.624,,,,,,211.2552578,8.099,False -2,19,2010-10-01,5888.99,69.24,2.603,,,,,,211.3298742,8.163,False -2,19,2010-10-08,5269.76,63.19,2.633,,,,,,211.4044906,8.163,False -2,19,2010-10-15,4868.32,65.8,2.72,,,,,,211.4713286,8.163,False -2,19,2010-10-22,5724.64,68.5,2.725,,,,,,211.5187208,8.163,False -2,19,2010-10-29,6531.14,66.24,2.716,,,,,,211.5661131,8.163,False -2,19,2010-11-05,4887.69,57.85,2.689,,,,,,211.6135053,8.163,False -2,19,2010-11-12,5681.41,59.69,2.728,,,,,,211.6608975,8.163,False -2,19,2010-11-19,5234.23,50.81,2.771,,,,,,211.5470304,8.163,False -2,19,2010-11-26,5555.78,62.98,2.735,,,,,,211.4062867,8.163,True -2,19,2010-12-03,6206.07,49.33,2.708,,,,,,211.265543,8.163,False -2,19,2010-12-10,6748.27,45.5,2.843,,,,,,211.1247993,8.163,False -2,19,2010-12-17,6338.33,47.55,2.869,,,,,,211.0645458,8.163,False -2,19,2010-12-24,5873.94,49.97,2.886,,,,,,211.0646599,8.163,False -2,19,2010-12-31,3282.9,47.3,2.943,,,,,,211.064774,8.163,True -2,19,2011-01-07,4036.13,44.69,2.976,,,,,,211.0648881,8.028,False -2,19,2011-01-14,3047.8,33.02,2.983,,,,,,211.1176713,8.028,False -2,19,2011-01-21,4380.97,41.4,3.016,,,,,,211.4864691,8.028,False -2,19,2011-01-28,4165.72,42.83,3.01,,,,,,211.8552668,8.028,False -2,19,2011-02-04,4039.44,38.25,2.989,,,,,,212.2240646,8.028,False -2,19,2011-02-11,5785.33,33.19,3.022,,,,,,212.5928624,8.028,True -2,19,2011-02-18,5287.47,57.83,3.045,,,,,,212.9033115,8.028,False -2,19,2011-02-25,4506.85,60.8,3.065,,,,,,213.190421,8.028,False -2,19,2011-03-04,4588.08,57.77,3.288,,,,,,213.4775305,8.028,False -2,19,2011-03-11,4336.65,52.7,3.459,,,,,,213.7646401,8.028,False -2,19,2011-03-18,3666.68,62.32,3.488,,,,,,214.0156238,8.028,False -2,19,2011-03-25,3675.47,69.42,3.473,,,,,,214.2521573,8.028,False -2,19,2011-04-01,4046.72,55.43,3.524,,,,,,214.4886908,7.931,False -2,19,2011-04-08,4550.97,67.0,3.622,,,,,,214.7252242,7.931,False -2,19,2011-04-15,3632.69,69.48,3.743,,,,,,214.9420631,7.931,False -2,19,2011-04-22,3550.85,69.39,3.807,,,,,,215.1096657,7.931,False -2,19,2011-04-29,3909.21,69.21,3.81,,,,,,215.2772683,7.931,False -2,19,2011-05-06,4568.87,61.48,3.906,,,,,,215.4448709,7.931,False -2,19,2011-05-13,3769.41,74.61,3.899,,,,,,215.6124735,7.931,False -2,19,2011-05-20,3329.61,67.14,3.907,,,,,,215.3834778,7.931,False -2,19,2011-05-27,3023.71,76.42,3.786,,,,,,215.1544822,7.931,False -2,19,2011-06-03,3181.17,83.07,3.699,,,,,,214.9254865,7.931,False -2,19,2011-06-10,3814.41,83.4,3.648,,,,,,214.6964908,7.931,False -2,19,2011-06-17,3364.18,86.53,3.637,,,,,,214.6513538,7.931,False -2,19,2011-06-24,3655.05,85.17,3.594,,,,,,214.7441108,7.931,False -2,19,2011-07-01,3247.04,85.69,3.524,,,,,,214.8368678,7.852,False -2,19,2011-07-08,3199.66,87.7,3.48,,,,,,214.9296249,7.852,False -2,19,2011-07-15,4030.49,89.83,3.575,,,,,,215.0134426,7.852,False -2,19,2011-07-22,3277.67,89.34,3.651,,,,,,215.0749122,7.852,False -2,19,2011-07-29,3405.64,90.07,3.682,,,,,,215.1363819,7.852,False -2,19,2011-08-05,3623.76,93.34,3.684,,,,,,215.1978515,7.852,False -2,19,2011-08-12,3581.82,91.58,3.638,,,,,,215.2593211,7.852,False -2,19,2011-08-19,3747.86,89.86,3.554,,,,,,215.3229307,7.852,False -2,19,2011-08-26,4141.19,90.45,3.523,,,,,,215.386897,7.852,False -2,19,2011-09-02,3244.05,89.64,3.533,,,,,,215.4508632,7.852,False -2,19,2011-09-09,3417.86,77.97,3.546,,,,,,215.5148295,7.852,True -2,19,2011-09-16,3456.12,78.85,3.526,,,,,,215.6944378,7.852,False -2,19,2011-09-23,4222.56,75.58,3.467,,,,,,216.0282356,7.852,False -2,19,2011-09-30,3137.36,78.14,3.355,,,,,,216.3620333,7.852,False -2,19,2011-10-07,4255.99,69.92,3.285,,,,,,216.6958311,7.441,False -2,19,2011-10-14,4223.87,71.67,3.274,,,,,,217.0048261,7.441,False -2,19,2011-10-21,4374.91,64.53,3.353,,,,,,217.1650042,7.441,False -2,19,2011-10-28,4556.27,65.87,3.372,,,,,,217.3251824,7.441,False -2,19,2011-11-04,3943.7,55.53,3.332,,,,,,217.4853605,7.441,False -2,19,2011-11-11,3935.94,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,19,2011-11-18,3775.61,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,19,2011-11-25,4002.66,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,19,2011-12-02,4815.72,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,19,2011-12-09,5389.93,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,19,2011-12-16,4518.92,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,19,2011-12-23,4960.59,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,19,2011-12-30,3118.72,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,19,2012-01-06,3262.54,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,19,2012-01-13,3190.59,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,19,2012-01-20,2962.97,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,19,2012-01-27,2721.4,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,19,2012-02-03,3853.08,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,19,2012-02-10,4151.04,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,19,2012-02-17,3527.33,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,19,2012-02-24,4282.15,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,19,2012-03-02,3889.32,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,19,2012-03-09,4083.85,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,19,2012-03-16,4046.09,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,19,2012-03-23,3651.41,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,19,2012-03-30,3199.35,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,19,2012-04-06,3369.52,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,19,2012-04-13,3399.48,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,19,2012-04-20,3626.29,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,19,2012-04-27,3142.56,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,19,2012-05-04,4216.42,76.73,3.749,23731.47,,78.09,7931.42,4443.52,221.3095166,6.891,False -2,19,2012-05-11,4061.81,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,19,2012-05-18,3756.08,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,19,2012-05-25,3973.02,78.19,3.561,10701.32,,1030.53,3595.04,14920.27,221.3828029,6.891,False -2,19,2012-06-01,3546.99,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,19,2012-06-08,3771.5,78.69,3.452,12162.04,463.6,78.39,3610.78,10877.64,221.3877467,6.891,False -2,19,2012-06-15,3054.04,80.56,3.393,8573.41,195.0,0.19,4455.38,5288.61,221.4009901,6.891,False -2,19,2012-06-22,3428.13,81.04,3.346,12126.02,314.0,60.99,6058.6,36430.33,221.4411622,6.891,False -2,19,2012-06-29,3402.55,86.32,3.286,8495.34,275.8,,1935.16,5686.13,221.4813343,6.891,False -2,19,2012-07-06,2304.07,84.2,3.227,12355.5,295.05,100.15,6720.4,5506.53,221.5215064,6.565,False -2,19,2012-07-13,3186.42,80.17,3.256,8354.65,342.25,20.53,5674.44,5012.22,221.5616784,6.565,False -2,19,2012-07-20,3034.66,83.23,3.311,6961.58,241.2,24.97,3401.36,2453.42,221.5701123,6.565,False -2,19,2012-07-27,3261.07,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,19,2012-08-03,3377.89,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,19,2012-08-10,3306.51,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,19,2012-08-17,3647.23,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,19,2012-08-24,4444.18,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,19,2012-08-31,3508.43,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,19,2012-09-07,3281.69,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,19,2012-09-14,3155.08,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,19,2012-09-21,3776.77,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,19,2012-09-28,3094.42,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,19,2012-10-05,4099.12,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,19,2012-10-12,4552.24,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,19,2012-10-19,3290.89,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,19,2012-10-26,4315.0,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,20,2010-02-05,7231.65,40.19,2.572,,,,,,210.7526053,8.324,False -2,20,2010-02-12,6521.37,38.49,2.548,,,,,,210.8979935,8.324,True -2,20,2010-02-19,6596.04,39.69,2.514,,,,,,210.9451605,8.324,False -2,20,2010-02-26,6828.44,46.1,2.561,,,,,,210.9759573,8.324,False -2,20,2010-03-05,6467.05,47.17,2.625,,,,,,211.0067542,8.324,False -2,20,2010-03-12,6991.71,57.56,2.667,,,,,,211.037551,8.324,False -2,20,2010-03-19,6957.56,54.52,2.72,,,,,,210.8733316,8.324,False -2,20,2010-03-26,5320.84,51.26,2.732,,,,,,210.6766095,8.324,False -2,20,2010-04-02,6804.64,63.27,2.719,,,,,,210.4798874,8.2,False -2,20,2010-04-09,5762.13,65.41,2.77,,,,,,210.2831653,8.2,False -2,20,2010-04-16,5412.47,68.07,2.808,,,,,,210.1495463,8.2,False -2,20,2010-04-23,5300.66,65.11,2.795,,,,,,210.1000648,8.2,False -2,20,2010-04-30,6123.42,66.98,2.78,,,,,,210.0505833,8.2,False -2,20,2010-05-07,7337.95,71.28,2.835,,,,,,210.0011018,8.2,False -2,20,2010-05-14,5660.09,73.31,2.854,,,,,,209.9984585,8.2,False -2,20,2010-05-21,7562.49,74.83,2.826,,,,,,210.2768443,8.2,False -2,20,2010-05-28,7266.6,81.13,2.759,,,,,,210.5552301,8.2,False -2,20,2010-06-04,8855.11,81.81,2.705,,,,,,210.833616,8.2,False -2,20,2010-06-11,8297.7,83.4,2.668,,,,,,211.1120018,8.2,False -2,20,2010-06-18,6690.33,85.81,2.637,,,,,,211.1096543,8.2,False -2,20,2010-06-25,7259.92,86.26,2.653,,,,,,210.9950134,8.2,False -2,20,2010-07-02,7701.43,82.74,2.669,,,,,,210.8803726,8.099,False -2,20,2010-07-09,6986.78,82.59,2.642,,,,,,210.7657317,8.099,False -2,20,2010-07-16,6771.47,85.32,2.623,,,,,,210.7577954,8.099,False -2,20,2010-07-23,7038.29,87.66,2.608,,,,,,210.8921319,8.099,False -2,20,2010-07-30,7785.98,83.49,2.64,,,,,,211.0264684,8.099,False -2,20,2010-08-06,6325.55,89.53,2.627,,,,,,211.1608049,8.099,False -2,20,2010-08-13,5607.34,89.05,2.692,,,,,,211.2951413,8.099,False -2,20,2010-08-20,5961.82,88.7,2.664,,,,,,211.2596586,8.099,False -2,20,2010-08-27,4799.14,87.12,2.619,,,,,,211.2241759,8.099,False -2,20,2010-09-03,6468.2,81.83,2.577,,,,,,211.1886931,8.099,False -2,20,2010-09-10,5750.5,79.09,2.565,,,,,,211.1532104,8.099,True -2,20,2010-09-17,5620.06,82.05,2.582,,,,,,211.1806415,8.099,False -2,20,2010-09-24,4501.11,81.79,2.624,,,,,,211.2552578,8.099,False -2,20,2010-10-01,5797.55,69.24,2.603,,,,,,211.3298742,8.163,False -2,20,2010-10-08,5129.94,63.19,2.633,,,,,,211.4044906,8.163,False -2,20,2010-10-15,4095.32,65.8,2.72,,,,,,211.4713286,8.163,False -2,20,2010-10-22,5184.34,68.5,2.725,,,,,,211.5187208,8.163,False -2,20,2010-10-29,4053.38,66.24,2.716,,,,,,211.5661131,8.163,False -2,20,2010-11-05,3678.8,57.85,2.689,,,,,,211.6135053,8.163,False -2,20,2010-11-12,5257.88,59.69,2.728,,,,,,211.6608975,8.163,False -2,20,2010-11-19,4856.67,50.81,2.771,,,,,,211.5470304,8.163,False -2,20,2010-11-26,7853.92,62.98,2.735,,,,,,211.4062867,8.163,True -2,20,2010-12-03,3404.52,49.33,2.708,,,,,,211.265543,8.163,False -2,20,2010-12-10,4631.52,45.5,2.843,,,,,,211.1247993,8.163,False -2,20,2010-12-17,5013.75,47.55,2.869,,,,,,211.0645458,8.163,False -2,20,2010-12-24,5692.74,49.97,2.886,,,,,,211.0646599,8.163,False -2,20,2010-12-31,4925.93,47.3,2.943,,,,,,211.064774,8.163,True -2,20,2011-01-07,4146.7,44.69,2.976,,,,,,211.0648881,8.028,False -2,20,2011-01-14,3808.65,33.02,2.983,,,,,,211.1176713,8.028,False -2,20,2011-01-21,4258.18,41.4,3.016,,,,,,211.4864691,8.028,False -2,20,2011-01-28,3920.28,42.83,3.01,,,,,,211.8552668,8.028,False -2,20,2011-02-04,5657.76,38.25,2.989,,,,,,212.2240646,8.028,False -2,20,2011-02-11,6629.82,33.19,3.022,,,,,,212.5928624,8.028,True -2,20,2011-02-18,6939.12,57.83,3.045,,,,,,212.9033115,8.028,False -2,20,2011-02-25,5756.46,60.8,3.065,,,,,,213.190421,8.028,False -2,20,2011-03-04,5921.7,57.77,3.288,,,,,,213.4775305,8.028,False -2,20,2011-03-11,5611.85,52.7,3.459,,,,,,213.7646401,8.028,False -2,20,2011-03-18,5745.64,62.32,3.488,,,,,,214.0156238,8.028,False -2,20,2011-03-25,5772.7,69.42,3.473,,,,,,214.2521573,8.028,False -2,20,2011-04-01,5021.62,55.43,3.524,,,,,,214.4886908,7.931,False -2,20,2011-04-08,4761.29,67.0,3.622,,,,,,214.7252242,7.931,False -2,20,2011-04-15,4610.6,69.48,3.743,,,,,,214.9420631,7.931,False -2,20,2011-04-22,5069.12,69.39,3.807,,,,,,215.1096657,7.931,False -2,20,2011-04-29,5006.57,69.21,3.81,,,,,,215.2772683,7.931,False -2,20,2011-05-06,4364.77,61.48,3.906,,,,,,215.4448709,7.931,False -2,20,2011-05-13,5406.33,74.61,3.899,,,,,,215.6124735,7.931,False -2,20,2011-05-20,5459.23,67.14,3.907,,,,,,215.3834778,7.931,False -2,20,2011-05-27,5243.81,76.42,3.786,,,,,,215.1544822,7.931,False -2,20,2011-06-03,7317.64,83.07,3.699,,,,,,214.9254865,7.931,False -2,20,2011-06-10,6843.0,83.4,3.648,,,,,,214.6964908,7.931,False -2,20,2011-06-17,6601.09,86.53,3.637,,,,,,214.6513538,7.931,False -2,20,2011-06-24,5923.55,85.17,3.594,,,,,,214.7441108,7.931,False -2,20,2011-07-01,7193.29,85.69,3.524,,,,,,214.8368678,7.852,False -2,20,2011-07-08,6423.16,87.7,3.48,,,,,,214.9296249,7.852,False -2,20,2011-07-15,6185.33,89.83,3.575,,,,,,215.0134426,7.852,False -2,20,2011-07-22,5678.68,89.34,3.651,,,,,,215.0749122,7.852,False -2,20,2011-07-29,5041.02,90.07,3.682,,,,,,215.1363819,7.852,False -2,20,2011-08-05,5980.21,93.34,3.684,,,,,,215.1978515,7.852,False -2,20,2011-08-12,5134.68,91.58,3.638,,,,,,215.2593211,7.852,False -2,20,2011-08-19,5468.8,89.86,3.554,,,,,,215.3229307,7.852,False -2,20,2011-08-26,4568.85,90.45,3.523,,,,,,215.386897,7.852,False -2,20,2011-09-02,4703.23,89.64,3.533,,,,,,215.4508632,7.852,False -2,20,2011-09-09,5707.38,77.97,3.546,,,,,,215.5148295,7.852,True -2,20,2011-09-16,4306.32,78.85,3.526,,,,,,215.6944378,7.852,False -2,20,2011-09-23,4530.99,75.58,3.467,,,,,,216.0282356,7.852,False -2,20,2011-09-30,4639.16,78.14,3.355,,,,,,216.3620333,7.852,False -2,20,2011-10-07,4682.22,69.92,3.285,,,,,,216.6958311,7.441,False -2,20,2011-10-14,3937.74,71.67,3.274,,,,,,217.0048261,7.441,False -2,20,2011-10-21,3944.78,64.53,3.353,,,,,,217.1650042,7.441,False -2,20,2011-10-28,4335.29,65.87,3.372,,,,,,217.3251824,7.441,False -2,20,2011-11-04,4623.25,55.53,3.332,,,,,,217.4853605,7.441,False -2,20,2011-11-11,4517.89,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,20,2011-11-18,4609.69,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,20,2011-11-25,9080.75,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,20,2011-12-02,4496.79,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,20,2011-12-09,4681.06,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,20,2011-12-16,4858.32,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,20,2011-12-23,7703.23,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,20,2011-12-30,4632.03,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,20,2012-01-06,5656.33,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,20,2012-01-13,4767.65,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,20,2012-01-20,5157.23,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,20,2012-01-27,4868.72,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,20,2012-02-03,6396.85,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,20,2012-02-10,7270.45,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,20,2012-02-17,6938.09,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,20,2012-02-24,7272.5,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,20,2012-03-02,7512.6,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,20,2012-03-09,6431.1,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,20,2012-03-16,6714.12,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,20,2012-03-23,5641.89,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,20,2012-03-30,5226.15,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,20,2012-04-06,5640.9,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,20,2012-04-13,5407.58,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,20,2012-04-20,6064.11,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,20,2012-04-27,5577.12,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,20,2012-05-04,5345.25,76.73,3.749,23731.47,,78.09,7931.42,4443.52,221.3095166,6.891,False -2,20,2012-05-11,6013.31,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,20,2012-05-18,6321.54,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,20,2012-05-25,6775.15,78.19,3.561,10701.32,,1030.53,3595.04,14920.27,221.3828029,6.891,False -2,20,2012-06-01,7119.73,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,20,2012-06-08,7270.37,78.69,3.452,12162.04,463.6,78.39,3610.78,10877.64,221.3877467,6.891,False -2,20,2012-06-15,6286.46,80.56,3.393,8573.41,195.0,0.19,4455.38,5288.61,221.4009901,6.891,False -2,20,2012-06-22,6736.25,81.04,3.346,12126.02,314.0,60.99,6058.6,36430.33,221.4411622,6.891,False -2,20,2012-06-29,6977.56,86.32,3.286,8495.34,275.8,,1935.16,5686.13,221.4813343,6.891,False -2,20,2012-07-06,7795.53,84.2,3.227,12355.5,295.05,100.15,6720.4,5506.53,221.5215064,6.565,False -2,20,2012-07-13,5855.37,80.17,3.256,8354.65,342.25,20.53,5674.44,5012.22,221.5616784,6.565,False -2,20,2012-07-20,6206.31,83.23,3.311,6961.58,241.2,24.97,3401.36,2453.42,221.5701123,6.565,False -2,20,2012-07-27,6021.36,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,20,2012-08-03,6823.79,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,20,2012-08-10,5915.87,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,20,2012-08-17,4863.49,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,20,2012-08-24,6030.39,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,20,2012-08-31,5588.05,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,20,2012-09-07,4927.99,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,20,2012-09-14,4459.05,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,20,2012-09-21,4515.17,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,20,2012-09-28,4003.31,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,20,2012-10-05,5288.22,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,20,2012-10-12,4611.52,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,20,2012-10-19,4463.78,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,20,2012-10-26,3690.65,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,21,2010-02-05,12636.72,40.19,2.572,,,,,,210.7526053,8.324,False -2,21,2010-02-12,11932.84,38.49,2.548,,,,,,210.8979935,8.324,True -2,21,2010-02-19,12645.93,39.69,2.514,,,,,,210.9451605,8.324,False -2,21,2010-02-26,12108.36,46.1,2.561,,,,,,210.9759573,8.324,False -2,21,2010-03-05,12268.19,47.17,2.625,,,,,,211.0067542,8.324,False -2,21,2010-03-12,11849.63,57.56,2.667,,,,,,211.037551,8.324,False -2,21,2010-03-19,12110.53,54.52,2.72,,,,,,210.8733316,8.324,False -2,21,2010-03-26,10845.7,51.26,2.732,,,,,,210.6766095,8.324,False -2,21,2010-04-02,11413.2,63.27,2.719,,,,,,210.4798874,8.2,False -2,21,2010-04-09,10703.09,65.41,2.77,,,,,,210.2831653,8.2,False -2,21,2010-04-16,10197.11,68.07,2.808,,,,,,210.1495463,8.2,False -2,21,2010-04-23,10289.38,65.11,2.795,,,,,,210.1000648,8.2,False -2,21,2010-04-30,10978.42,66.98,2.78,,,,,,210.0505833,8.2,False -2,21,2010-05-07,12322.1,71.28,2.835,,,,,,210.0011018,8.2,False -2,21,2010-05-14,10583.82,73.31,2.854,,,,,,209.9984585,8.2,False -2,21,2010-05-21,10005.31,74.83,2.826,,,,,,210.2768443,8.2,False -2,21,2010-05-28,10882.75,81.13,2.759,,,,,,210.5552301,8.2,False -2,21,2010-06-04,11543.27,81.81,2.705,,,,,,210.833616,8.2,False -2,21,2010-06-11,11615.82,83.4,2.668,,,,,,211.1120018,8.2,False -2,21,2010-06-18,11365.7,85.81,2.637,,,,,,211.1096543,8.2,False -2,21,2010-06-25,11821.97,86.26,2.653,,,,,,210.9950134,8.2,False -2,21,2010-07-02,11467.79,82.74,2.669,,,,,,210.8803726,8.099,False -2,21,2010-07-09,12155.36,82.59,2.642,,,,,,210.7657317,8.099,False -2,21,2010-07-16,12791.98,85.32,2.623,,,,,,210.7577954,8.099,False -2,21,2010-07-23,11060.01,87.66,2.608,,,,,,210.8921319,8.099,False -2,21,2010-07-30,11725.69,83.49,2.64,,,,,,211.0264684,8.099,False -2,21,2010-08-06,10766.95,89.53,2.627,,,,,,211.1608049,8.099,False -2,21,2010-08-13,9930.44,89.05,2.692,,,,,,211.2951413,8.099,False -2,21,2010-08-20,9702.27,88.7,2.664,,,,,,211.2596586,8.099,False -2,21,2010-08-27,10921.49,87.12,2.619,,,,,,211.2241759,8.099,False -2,21,2010-09-03,11285.44,81.83,2.577,,,,,,211.1886931,8.099,False -2,21,2010-09-10,9745.75,79.09,2.565,,,,,,211.1532104,8.099,True -2,21,2010-09-17,10302.25,82.05,2.582,,,,,,211.1806415,8.099,False -2,21,2010-09-24,9809.48,81.79,2.624,,,,,,211.2552578,8.099,False -2,21,2010-10-01,10544.26,69.24,2.603,,,,,,211.3298742,8.163,False -2,21,2010-10-08,9604.46,63.19,2.633,,,,,,211.4044906,8.163,False -2,21,2010-10-15,8948.53,65.8,2.72,,,,,,211.4713286,8.163,False -2,21,2010-10-22,9019.85,68.5,2.725,,,,,,211.5187208,8.163,False -2,21,2010-10-29,11195.53,66.24,2.716,,,,,,211.5661131,8.163,False -2,21,2010-11-05,10925.31,57.85,2.689,,,,,,211.6135053,8.163,False -2,21,2010-11-12,11716.35,59.69,2.728,,,,,,211.6608975,8.163,False -2,21,2010-11-19,11401.31,50.81,2.771,,,,,,211.5470304,8.163,False -2,21,2010-11-26,13362.66,62.98,2.735,,,,,,211.4062867,8.163,True -2,21,2010-12-03,11121.14,49.33,2.708,,,,,,211.265543,8.163,False -2,21,2010-12-10,13236.88,45.5,2.843,,,,,,211.1247993,8.163,False -2,21,2010-12-17,16929.94,47.55,2.869,,,,,,211.0645458,8.163,False -2,21,2010-12-24,19078.6,49.97,2.886,,,,,,211.0646599,8.163,False -2,21,2010-12-31,8979.65,47.3,2.943,,,,,,211.064774,8.163,True -2,21,2011-01-07,9574.93,44.69,2.976,,,,,,211.0648881,8.028,False -2,21,2011-01-14,8643.58,33.02,2.983,,,,,,211.1176713,8.028,False -2,21,2011-01-21,9135.87,41.4,3.016,,,,,,211.4864691,8.028,False -2,21,2011-01-28,9013.4,42.83,3.01,,,,,,211.8552668,8.028,False -2,21,2011-02-04,9147.97,38.25,2.989,,,,,,212.2240646,8.028,False -2,21,2011-02-11,10754.79,33.19,3.022,,,,,,212.5928624,8.028,True -2,21,2011-02-18,9837.68,57.83,3.045,,,,,,212.9033115,8.028,False -2,21,2011-02-25,9712.93,60.8,3.065,,,,,,213.190421,8.028,False -2,21,2011-03-04,10740.44,57.77,3.288,,,,,,213.4775305,8.028,False -2,21,2011-03-11,9810.96,52.7,3.459,,,,,,213.7646401,8.028,False -2,21,2011-03-18,9772.01,62.32,3.488,,,,,,214.0156238,8.028,False -2,21,2011-03-25,8248.74,69.42,3.473,,,,,,214.2521573,8.028,False -2,21,2011-04-01,9624.28,55.43,3.524,,,,,,214.4886908,7.931,False -2,21,2011-04-08,9599.72,67.0,3.622,,,,,,214.7252242,7.931,False -2,21,2011-04-15,9219.99,69.48,3.743,,,,,,214.9420631,7.931,False -2,21,2011-04-22,9966.49,69.39,3.807,,,,,,215.1096657,7.931,False -2,21,2011-04-29,9816.53,69.21,3.81,,,,,,215.2772683,7.931,False -2,21,2011-05-06,10281.07,61.48,3.906,,,,,,215.4448709,7.931,False -2,21,2011-05-13,8960.17,74.61,3.899,,,,,,215.6124735,7.931,False -2,21,2011-05-20,8424.39,67.14,3.907,,,,,,215.3834778,7.931,False -2,21,2011-05-27,8606.54,76.42,3.786,,,,,,215.1544822,7.931,False -2,21,2011-06-03,8609.49,83.07,3.699,,,,,,214.9254865,7.931,False -2,21,2011-06-10,9474.59,83.4,3.648,,,,,,214.6964908,7.931,False -2,21,2011-06-17,9212.06,86.53,3.637,,,,,,214.6513538,7.931,False -2,21,2011-06-24,11085.94,85.17,3.594,,,,,,214.7441108,7.931,False -2,21,2011-07-01,10241.1,85.69,3.524,,,,,,214.8368678,7.852,False -2,21,2011-07-08,9499.1,87.7,3.48,,,,,,214.9296249,7.852,False -2,21,2011-07-15,8963.2,89.83,3.575,,,,,,215.0134426,7.852,False -2,21,2011-07-22,9152.1,89.34,3.651,,,,,,215.0749122,7.852,False -2,21,2011-07-29,9629.14,90.07,3.682,,,,,,215.1363819,7.852,False -2,21,2011-08-05,9035.35,93.34,3.684,,,,,,215.1978515,7.852,False -2,21,2011-08-12,8913.96,91.58,3.638,,,,,,215.2593211,7.852,False -2,21,2011-08-19,9409.3,89.86,3.554,,,,,,215.3229307,7.852,False -2,21,2011-08-26,8657.7,90.45,3.523,,,,,,215.386897,7.852,False -2,21,2011-09-02,9390.45,89.64,3.533,,,,,,215.4508632,7.852,False -2,21,2011-09-09,8379.19,77.97,3.546,,,,,,215.5148295,7.852,True -2,21,2011-09-16,8567.34,78.85,3.526,,,,,,215.6944378,7.852,False -2,21,2011-09-23,9075.57,75.58,3.467,,,,,,216.0282356,7.852,False -2,21,2011-09-30,9189.47,78.14,3.355,,,,,,216.3620333,7.852,False -2,21,2011-10-07,9324.92,69.92,3.285,,,,,,216.6958311,7.441,False -2,21,2011-10-14,8782.91,71.67,3.274,,,,,,217.0048261,7.441,False -2,21,2011-10-21,9107.84,64.53,3.353,,,,,,217.1650042,7.441,False -2,21,2011-10-28,9556.5,65.87,3.372,,,,,,217.3251824,7.441,False -2,21,2011-11-04,9811.09,55.53,3.332,,,,,,217.4853605,7.441,False -2,21,2011-11-11,10535.35,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,21,2011-11-18,9330.41,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,21,2011-11-25,12030.12,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,21,2011-12-02,9695.55,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,21,2011-12-09,11415.99,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,21,2011-12-16,14811.89,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,21,2011-12-23,15774.84,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,21,2011-12-30,7873.65,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,21,2012-01-06,8154.63,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,21,2012-01-13,8208.17,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,21,2012-01-20,8457.0,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,21,2012-01-27,7767.15,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,21,2012-02-03,8852.23,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,21,2012-02-10,9374.27,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,21,2012-02-17,9390.08,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,21,2012-02-24,9471.68,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,21,2012-03-02,9860.07,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,21,2012-03-09,9884.76,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,21,2012-03-16,8989.2,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,21,2012-03-23,8674.57,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,21,2012-03-30,10124.45,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,21,2012-04-06,10106.41,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,21,2012-04-13,9092.4,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,21,2012-04-20,8874.06,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,21,2012-04-27,8133.31,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,21,2012-05-04,8238.31,76.73,3.749,23731.47,,78.09,7931.42,4443.52,221.3095166,6.891,False -2,21,2012-05-11,8270.06,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,21,2012-05-18,8450.82,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,21,2012-05-25,8227.68,78.19,3.561,10701.32,,1030.53,3595.04,14920.27,221.3828029,6.891,False -2,21,2012-06-01,7567.53,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,21,2012-06-08,7823.94,78.69,3.452,12162.04,463.6,78.39,3610.78,10877.64,221.3877467,6.891,False -2,21,2012-06-15,7826.65,80.56,3.393,8573.41,195.0,0.19,4455.38,5288.61,221.4009901,6.891,False -2,21,2012-06-22,7672.0,81.04,3.346,12126.02,314.0,60.99,6058.6,36430.33,221.4411622,6.891,False -2,21,2012-06-29,7845.35,86.32,3.286,8495.34,275.8,,1935.16,5686.13,221.4813343,6.891,False -2,21,2012-07-06,8662.35,84.2,3.227,12355.5,295.05,100.15,6720.4,5506.53,221.5215064,6.565,False -2,21,2012-07-13,7938.67,80.17,3.256,8354.65,342.25,20.53,5674.44,5012.22,221.5616784,6.565,False -2,21,2012-07-20,7230.31,83.23,3.311,6961.58,241.2,24.97,3401.36,2453.42,221.5701123,6.565,False -2,21,2012-07-27,8001.08,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,21,2012-08-03,7937.24,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,21,2012-08-10,8605.48,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,21,2012-08-17,8420.22,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,21,2012-08-24,7917.0,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,21,2012-08-31,9235.42,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,21,2012-09-07,9360.64,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,21,2012-09-14,8612.57,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,21,2012-09-21,7709.25,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,21,2012-09-28,7547.16,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,21,2012-10-05,9091.03,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,21,2012-10-12,8406.99,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,21,2012-10-19,7988.96,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,21,2012-10-26,7985.45,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,22,2010-02-05,20565.41,40.19,2.572,,,,,,210.7526053,8.324,False -2,22,2010-02-12,18694.14,38.49,2.548,,,,,,210.8979935,8.324,True -2,22,2010-02-19,16502.25,39.69,2.514,,,,,,210.9451605,8.324,False -2,22,2010-02-26,14974.46,46.1,2.561,,,,,,210.9759573,8.324,False -2,22,2010-03-05,15641.52,47.17,2.625,,,,,,211.0067542,8.324,False -2,22,2010-03-12,13264.44,57.56,2.667,,,,,,211.037551,8.324,False -2,22,2010-03-19,13551.46,54.52,2.72,,,,,,210.8733316,8.324,False -2,22,2010-03-26,10029.49,51.26,2.732,,,,,,210.6766095,8.324,False -2,22,2010-04-02,10464.41,63.27,2.719,,,,,,210.4798874,8.2,False -2,22,2010-04-09,10361.36,65.41,2.77,,,,,,210.2831653,8.2,False -2,22,2010-04-16,10474.53,68.07,2.808,,,,,,210.1495463,8.2,False -2,22,2010-04-23,8997.68,65.11,2.795,,,,,,210.1000648,8.2,False -2,22,2010-04-30,10060.01,66.98,2.78,,,,,,210.0505833,8.2,False -2,22,2010-05-07,9182.24,71.28,2.835,,,,,,210.0011018,8.2,False -2,22,2010-05-14,10399.73,73.31,2.854,,,,,,209.9984585,8.2,False -2,22,2010-05-21,10289.97,74.83,2.826,,,,,,210.2768443,8.2,False -2,22,2010-05-28,8849.83,81.13,2.759,,,,,,210.5552301,8.2,False -2,22,2010-06-04,11361.09,81.81,2.705,,,,,,210.833616,8.2,False -2,22,2010-06-11,11062.6,83.4,2.668,,,,,,211.1120018,8.2,False -2,22,2010-06-18,9879.54,85.81,2.637,,,,,,211.1096543,8.2,False -2,22,2010-06-25,10396.39,86.26,2.653,,,,,,210.9950134,8.2,False -2,22,2010-07-02,12224.64,82.74,2.669,,,,,,210.8803726,8.099,False -2,22,2010-07-09,11540.55,82.59,2.642,,,,,,210.7657317,8.099,False -2,22,2010-07-16,11140.59,85.32,2.623,,,,,,210.7577954,8.099,False -2,22,2010-07-23,11180.76,87.66,2.608,,,,,,210.8921319,8.099,False -2,22,2010-07-30,11691.19,83.49,2.64,,,,,,211.0264684,8.099,False -2,22,2010-08-06,11055.39,89.53,2.627,,,,,,211.1608049,8.099,False -2,22,2010-08-13,11264.56,89.05,2.692,,,,,,211.2951413,8.099,False -2,22,2010-08-20,10644.22,88.7,2.664,,,,,,211.2596586,8.099,False -2,22,2010-08-27,11915.81,87.12,2.619,,,,,,211.2241759,8.099,False -2,22,2010-09-03,10452.24,81.83,2.577,,,,,,211.1886931,8.099,False -2,22,2010-09-10,11873.87,79.09,2.565,,,,,,211.1532104,8.099,True -2,22,2010-09-17,11555.48,82.05,2.582,,,,,,211.1806415,8.099,False -2,22,2010-09-24,13615.73,81.79,2.624,,,,,,211.2552578,8.099,False -2,22,2010-10-01,14696.41,69.24,2.603,,,,,,211.3298742,8.163,False -2,22,2010-10-08,14939.1,63.19,2.633,,,,,,211.4044906,8.163,False -2,22,2010-10-15,12173.67,65.8,2.72,,,,,,211.4713286,8.163,False -2,22,2010-10-22,9966.46,68.5,2.725,,,,,,211.5187208,8.163,False -2,22,2010-10-29,10484.95,66.24,2.716,,,,,,211.5661131,8.163,False -2,22,2010-11-05,13902.53,57.85,2.689,,,,,,211.6135053,8.163,False -2,22,2010-11-12,13571.25,59.69,2.728,,,,,,211.6608975,8.163,False -2,22,2010-11-19,14285.09,50.81,2.771,,,,,,211.5470304,8.163,False -2,22,2010-11-26,27523.9,62.98,2.735,,,,,,211.4062867,8.163,True -2,22,2010-12-03,15348.29,49.33,2.708,,,,,,211.265543,8.163,False -2,22,2010-12-10,21019.64,45.5,2.843,,,,,,211.1247993,8.163,False -2,22,2010-12-17,25600.58,47.55,2.869,,,,,,211.0645458,8.163,False -2,22,2010-12-24,34762.15,49.97,2.886,,,,,,211.0646599,8.163,False -2,22,2010-12-31,15074.49,47.3,2.943,,,,,,211.064774,8.163,True -2,22,2011-01-07,11150.0,44.69,2.976,,,,,,211.0648881,8.028,False -2,22,2011-01-14,12046.19,33.02,2.983,,,,,,211.1176713,8.028,False -2,22,2011-01-21,12562.86,41.4,3.016,,,,,,211.4864691,8.028,False -2,22,2011-01-28,13738.33,42.83,3.01,,,,,,211.8552668,8.028,False -2,22,2011-02-04,17758.1,38.25,2.989,,,,,,212.2240646,8.028,False -2,22,2011-02-11,17697.6,33.19,3.022,,,,,,212.5928624,8.028,True -2,22,2011-02-18,20883.87,57.83,3.045,,,,,,212.9033115,8.028,False -2,22,2011-02-25,13562.47,60.8,3.065,,,,,,213.190421,8.028,False -2,22,2011-03-04,14340.86,57.77,3.288,,,,,,213.4775305,8.028,False -2,22,2011-03-11,15905.92,52.7,3.459,,,,,,213.7646401,8.028,False -2,22,2011-03-18,15718.56,62.32,3.488,,,,,,214.0156238,8.028,False -2,22,2011-03-25,9725.22,69.42,3.473,,,,,,214.2521573,8.028,False -2,22,2011-04-01,12344.08,55.43,3.524,,,,,,214.4886908,7.931,False -2,22,2011-04-08,9672.64,67.0,3.622,,,,,,214.7252242,7.931,False -2,22,2011-04-15,7961.41,69.48,3.743,,,,,,214.9420631,7.931,False -2,22,2011-04-22,9352.63,69.39,3.807,,,,,,215.1096657,7.931,False -2,22,2011-04-29,9159.76,69.21,3.81,,,,,,215.2772683,7.931,False -2,22,2011-05-06,11119.84,61.48,3.906,,,,,,215.4448709,7.931,False -2,22,2011-05-13,8196.89,74.61,3.899,,,,,,215.6124735,7.931,False -2,22,2011-05-20,8631.15,67.14,3.907,,,,,,215.3834778,7.931,False -2,22,2011-05-27,9805.2,76.42,3.786,,,,,,215.1544822,7.931,False -2,22,2011-06-03,9688.27,83.07,3.699,,,,,,214.9254865,7.931,False -2,22,2011-06-10,9410.97,83.4,3.648,,,,,,214.6964908,7.931,False -2,22,2011-06-17,10376.42,86.53,3.637,,,,,,214.6513538,7.931,False -2,22,2011-06-24,8300.41,85.17,3.594,,,,,,214.7441108,7.931,False -2,22,2011-07-01,10634.8,85.69,3.524,,,,,,214.8368678,7.852,False -2,22,2011-07-08,10309.09,87.7,3.48,,,,,,214.9296249,7.852,False -2,22,2011-07-15,10723.28,89.83,3.575,,,,,,215.0134426,7.852,False -2,22,2011-07-22,10043.93,89.34,3.651,,,,,,215.0749122,7.852,False -2,22,2011-07-29,11300.23,90.07,3.682,,,,,,215.1363819,7.852,False -2,22,2011-08-05,11000.99,93.34,3.684,,,,,,215.1978515,7.852,False -2,22,2011-08-12,9584.55,91.58,3.638,,,,,,215.2593211,7.852,False -2,22,2011-08-19,10232.06,89.86,3.554,,,,,,215.3229307,7.852,False -2,22,2011-08-26,10035.0,90.45,3.523,,,,,,215.386897,7.852,False -2,22,2011-09-02,9674.3,89.64,3.533,,,,,,215.4508632,7.852,False -2,22,2011-09-09,9682.67,77.97,3.546,,,,,,215.5148295,7.852,True -2,22,2011-09-16,8332.47,78.85,3.526,,,,,,215.6944378,7.852,False -2,22,2011-09-23,12058.33,75.58,3.467,,,,,,216.0282356,7.852,False -2,22,2011-09-30,11146.51,78.14,3.355,,,,,,216.3620333,7.852,False -2,22,2011-10-07,13124.1,69.92,3.285,,,,,,216.6958311,7.441,False -2,22,2011-10-14,9897.19,71.67,3.274,,,,,,217.0048261,7.441,False -2,22,2011-10-21,12870.24,64.53,3.353,,,,,,217.1650042,7.441,False -2,22,2011-10-28,11155.15,65.87,3.372,,,,,,217.3251824,7.441,False -2,22,2011-11-04,13929.14,55.53,3.332,,,,,,217.4853605,7.441,False -2,22,2011-11-11,13515.47,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,22,2011-11-18,11046.93,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,22,2011-11-25,26993.34,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,22,2011-12-02,16016.91,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,22,2011-12-09,18218.17,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,22,2011-12-16,20351.91,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,22,2011-12-23,29263.28,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,22,2011-12-30,14628.24,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,22,2012-01-06,13068.02,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,22,2012-01-13,10981.26,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,22,2012-01-20,11406.28,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,22,2012-01-27,13919.73,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,22,2012-02-03,16903.99,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,22,2012-02-10,22875.87,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,22,2012-02-17,21783.68,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,22,2012-02-24,19685.76,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,22,2012-03-02,17866.79,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,22,2012-03-09,15300.79,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,22,2012-03-16,14209.91,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,22,2012-03-23,11234.12,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,22,2012-03-30,10405.72,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,22,2012-04-06,12376.26,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,22,2012-04-13,8896.65,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,22,2012-04-20,11817.63,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,22,2012-04-27,10476.82,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,22,2012-05-04,10603.89,76.73,3.749,23731.47,,78.09,7931.42,4443.52,221.3095166,6.891,False -2,22,2012-05-11,9275.0,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,22,2012-05-18,11921.94,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,22,2012-05-25,8497.76,78.19,3.561,10701.32,,1030.53,3595.04,14920.27,221.3828029,6.891,False -2,22,2012-06-01,10169.55,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,22,2012-06-08,10275.16,78.69,3.452,12162.04,463.6,78.39,3610.78,10877.64,221.3877467,6.891,False -2,22,2012-06-15,11635.22,80.56,3.393,8573.41,195.0,0.19,4455.38,5288.61,221.4009901,6.891,False -2,22,2012-06-22,9522.48,81.04,3.346,12126.02,314.0,60.99,6058.6,36430.33,221.4411622,6.891,False -2,22,2012-06-29,9840.5,86.32,3.286,8495.34,275.8,,1935.16,5686.13,221.4813343,6.891,False -2,22,2012-07-06,11857.31,84.2,3.227,12355.5,295.05,100.15,6720.4,5506.53,221.5215064,6.565,False -2,22,2012-07-13,11690.51,80.17,3.256,8354.65,342.25,20.53,5674.44,5012.22,221.5616784,6.565,False -2,22,2012-07-20,11876.65,83.23,3.311,6961.58,241.2,24.97,3401.36,2453.42,221.5701123,6.565,False -2,22,2012-07-27,11423.75,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,22,2012-08-03,12704.04,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,22,2012-08-10,12684.7,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,22,2012-08-17,11812.09,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,22,2012-08-24,13507.19,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,22,2012-08-31,12980.36,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,22,2012-09-07,11284.18,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,22,2012-09-14,11627.47,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,22,2012-09-21,12869.42,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,22,2012-09-28,10296.29,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,22,2012-10-05,13876.22,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,22,2012-10-12,14586.06,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,22,2012-10-19,11371.19,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,22,2012-10-26,13208.75,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,23,2010-02-05,31836.69,40.19,2.572,,,,,,210.7526053,8.324,False -2,23,2010-02-12,30285.16,38.49,2.548,,,,,,210.8979935,8.324,True -2,23,2010-02-19,28701.21,39.69,2.514,,,,,,210.9451605,8.324,False -2,23,2010-02-26,24557.74,46.1,2.561,,,,,,210.9759573,8.324,False -2,23,2010-03-05,23409.21,47.17,2.625,,,,,,211.0067542,8.324,False -2,23,2010-03-12,24705.59,57.56,2.667,,,,,,211.037551,8.324,False -2,23,2010-03-19,23955.93,54.52,2.72,,,,,,210.8733316,8.324,False -2,23,2010-03-26,22541.17,51.26,2.732,,,,,,210.6766095,8.324,False -2,23,2010-04-02,24528.69,63.27,2.719,,,,,,210.4798874,8.2,False -2,23,2010-04-09,25666.11,65.41,2.77,,,,,,210.2831653,8.2,False -2,23,2010-04-16,25322.71,68.07,2.808,,,,,,210.1495463,8.2,False -2,23,2010-04-23,26937.87,65.11,2.795,,,,,,210.1000648,8.2,False -2,23,2010-04-30,24395.64,66.98,2.78,,,,,,210.0505833,8.2,False -2,23,2010-05-07,27031.35,71.28,2.835,,,,,,210.0011018,8.2,False -2,23,2010-05-14,28229.56,73.31,2.854,,,,,,209.9984585,8.2,False -2,23,2010-05-21,30443.74,74.83,2.826,,,,,,210.2768443,8.2,False -2,23,2010-05-28,34551.07,81.13,2.759,,,,,,210.5552301,8.2,False -2,23,2010-06-04,37589.5,81.81,2.705,,,,,,210.833616,8.2,False -2,23,2010-06-11,35947.03,83.4,2.668,,,,,,211.1120018,8.2,False -2,23,2010-06-18,40674.33,85.81,2.637,,,,,,211.1096543,8.2,False -2,23,2010-06-25,41345.21,86.26,2.653,,,,,,210.9950134,8.2,False -2,23,2010-07-02,33794.64,82.74,2.669,,,,,,210.8803726,8.099,False -2,23,2010-07-09,29561.94,82.59,2.642,,,,,,210.7657317,8.099,False -2,23,2010-07-16,27198.61,85.32,2.623,,,,,,210.7577954,8.099,False -2,23,2010-07-23,27646.32,87.66,2.608,,,,,,210.8921319,8.099,False -2,23,2010-07-30,28468.45,83.49,2.64,,,,,,211.0264684,8.099,False -2,23,2010-08-06,31867.29,89.53,2.627,,,,,,211.1608049,8.099,False -2,23,2010-08-13,31185.34,89.05,2.692,,,,,,211.2951413,8.099,False -2,23,2010-08-20,37294.48,88.7,2.664,,,,,,211.2596586,8.099,False -2,23,2010-08-27,37043.28,87.12,2.619,,,,,,211.2241759,8.099,False -2,23,2010-09-03,24405.12,81.83,2.577,,,,,,211.1886931,8.099,False -2,23,2010-09-10,20399.29,79.09,2.565,,,,,,211.1532104,8.099,True -2,23,2010-09-17,21264.0,82.05,2.582,,,,,,211.1806415,8.099,False -2,23,2010-09-24,20399.84,81.79,2.624,,,,,,211.2552578,8.099,False -2,23,2010-10-01,24515.96,69.24,2.603,,,,,,211.3298742,8.163,False -2,23,2010-10-08,28017.14,63.19,2.633,,,,,,211.4044906,8.163,False -2,23,2010-10-15,21958.53,65.8,2.72,,,,,,211.4713286,8.163,False -2,23,2010-10-22,25902.1,68.5,2.725,,,,,,211.5187208,8.163,False -2,23,2010-10-29,26298.0,66.24,2.716,,,,,,211.5661131,8.163,False -2,23,2010-11-05,33387.8,57.85,2.689,,,,,,211.6135053,8.163,False -2,23,2010-11-12,29464.48,59.69,2.728,,,,,,211.6608975,8.163,False -2,23,2010-11-19,30594.32,50.81,2.771,,,,,,211.5470304,8.163,False -2,23,2010-11-26,45629.58,62.98,2.735,,,,,,211.4062867,8.163,True -2,23,2010-12-03,34715.55,49.33,2.708,,,,,,211.265543,8.163,False -2,23,2010-12-10,49921.17,45.5,2.843,,,,,,211.1247993,8.163,False -2,23,2010-12-17,59330.0,47.55,2.869,,,,,,211.0645458,8.163,False -2,23,2010-12-24,88454.23,49.97,2.886,,,,,,211.0646599,8.163,False -2,23,2010-12-31,20845.42,47.3,2.943,,,,,,211.064774,8.163,True -2,23,2011-01-07,22442.3,44.69,2.976,,,,,,211.0648881,8.028,False -2,23,2011-01-14,27128.58,33.02,2.983,,,,,,211.1176713,8.028,False -2,23,2011-01-21,23282.0,41.4,3.016,,,,,,211.4864691,8.028,False -2,23,2011-01-28,21054.98,42.83,3.01,,,,,,211.8552668,8.028,False -2,23,2011-02-04,34523.05,38.25,2.989,,,,,,212.2240646,8.028,False -2,23,2011-02-11,30127.76,33.19,3.022,,,,,,212.5928624,8.028,True -2,23,2011-02-18,29243.1,57.83,3.045,,,,,,212.9033115,8.028,False -2,23,2011-02-25,26395.39,60.8,3.065,,,,,,213.190421,8.028,False -2,23,2011-03-04,25809.29,57.77,3.288,,,,,,213.4775305,8.028,False -2,23,2011-03-11,25194.24,52.7,3.459,,,,,,213.7646401,8.028,False -2,23,2011-03-18,23432.65,62.32,3.488,,,,,,214.0156238,8.028,False -2,23,2011-03-25,24012.89,69.42,3.473,,,,,,214.2521573,8.028,False -2,23,2011-04-01,26136.34,55.43,3.524,,,,,,214.4886908,7.931,False -2,23,2011-04-08,24264.9,67.0,3.622,,,,,,214.7252242,7.931,False -2,23,2011-04-15,24445.53,69.48,3.743,,,,,,214.9420631,7.931,False -2,23,2011-04-22,24774.7,69.39,3.807,,,,,,215.1096657,7.931,False -2,23,2011-04-29,25165.59,69.21,3.81,,,,,,215.2772683,7.931,False -2,23,2011-05-06,22442.98,61.48,3.906,,,,,,215.4448709,7.931,False -2,23,2011-05-13,26030.76,74.61,3.899,,,,,,215.6124735,7.931,False -2,23,2011-05-20,24385.42,67.14,3.907,,,,,,215.3834778,7.931,False -2,23,2011-05-27,26340.51,76.42,3.786,,,,,,215.1544822,7.931,False -2,23,2011-06-03,32275.59,83.07,3.699,,,,,,214.9254865,7.931,False -2,23,2011-06-10,33681.83,83.4,3.648,,,,,,214.6964908,7.931,False -2,23,2011-06-17,36271.44,86.53,3.637,,,,,,214.6513538,7.931,False -2,23,2011-06-24,34244.66,85.17,3.594,,,,,,214.7441108,7.931,False -2,23,2011-07-01,27176.45,85.69,3.524,,,,,,214.8368678,7.852,False -2,23,2011-07-08,27656.15,87.7,3.48,,,,,,214.9296249,7.852,False -2,23,2011-07-15,24733.77,89.83,3.575,,,,,,215.0134426,7.852,False -2,23,2011-07-22,25475.53,89.34,3.651,,,,,,215.0749122,7.852,False -2,23,2011-07-29,24228.61,90.07,3.682,,,,,,215.1363819,7.852,False -2,23,2011-08-05,28666.85,93.34,3.684,,,,,,215.1978515,7.852,False -2,23,2011-08-12,28273.74,91.58,3.638,,,,,,215.2593211,7.852,False -2,23,2011-08-19,34842.33,89.86,3.554,,,,,,215.3229307,7.852,False -2,23,2011-08-26,36257.41,90.45,3.523,,,,,,215.386897,7.852,False -2,23,2011-09-02,20713.87,89.64,3.533,,,,,,215.4508632,7.852,False -2,23,2011-09-09,19193.92,77.97,3.546,,,,,,215.5148295,7.852,True -2,23,2011-09-16,19278.61,78.85,3.526,,,,,,215.6944378,7.852,False -2,23,2011-09-23,20247.42,75.58,3.467,,,,,,216.0282356,7.852,False -2,23,2011-09-30,19305.23,78.14,3.355,,,,,,216.3620333,7.852,False -2,23,2011-10-07,21637.38,69.92,3.285,,,,,,216.6958311,7.441,False -2,23,2011-10-14,19174.31,71.67,3.274,,,,,,217.0048261,7.441,False -2,23,2011-10-21,26431.24,64.53,3.353,,,,,,217.1650042,7.441,False -2,23,2011-10-28,26066.91,65.87,3.372,,,,,,217.3251824,7.441,False -2,23,2011-11-04,31250.27,55.53,3.332,,,,,,217.4853605,7.441,False -2,23,2011-11-11,30482.45,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,23,2011-11-18,25253.1,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,23,2011-11-25,37493.36,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,23,2011-12-02,35300.5,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,23,2011-12-09,55473.53,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,23,2011-12-16,49105.99,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,23,2011-12-23,82601.72,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,23,2011-12-30,32348.78,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,23,2012-01-06,21735.59,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,23,2012-01-13,20841.36,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,23,2012-01-20,20133.52,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,23,2012-01-27,19032.57,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,23,2012-02-03,22572.73,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,23,2012-02-10,30778.67,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,23,2012-02-17,32908.23,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,23,2012-02-24,24439.84,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,23,2012-03-02,27084.02,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,23,2012-03-09,26863.95,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,23,2012-03-16,28185.45,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,23,2012-03-23,23949.14,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,23,2012-03-30,27934.15,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,23,2012-04-06,32207.84,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,23,2012-04-13,26763.12,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,23,2012-04-20,27718.98,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,23,2012-04-27,23811.86,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,23,2012-05-04,30071.79,76.73,3.749,23731.47,,78.09,7931.42,4443.52,221.3095166,6.891,False -2,23,2012-05-11,26503.72,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,23,2012-05-18,28418.49,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,23,2012-05-25,27119.98,78.19,3.561,10701.32,,1030.53,3595.04,14920.27,221.3828029,6.891,False -2,23,2012-06-01,32328.81,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,23,2012-06-08,33841.84,78.69,3.452,12162.04,463.6,78.39,3610.78,10877.64,221.3877467,6.891,False -2,23,2012-06-15,35212.8,80.56,3.393,8573.41,195.0,0.19,4455.38,5288.61,221.4009901,6.891,False -2,23,2012-06-22,36067.2,81.04,3.346,12126.02,314.0,60.99,6058.6,36430.33,221.4411622,6.891,False -2,23,2012-06-29,30546.33,86.32,3.286,8495.34,275.8,,1935.16,5686.13,221.4813343,6.891,False -2,23,2012-07-06,33375.79,84.2,3.227,12355.5,295.05,100.15,6720.4,5506.53,221.5215064,6.565,False -2,23,2012-07-13,27272.16,80.17,3.256,8354.65,342.25,20.53,5674.44,5012.22,221.5616784,6.565,False -2,23,2012-07-20,28345.05,83.23,3.311,6961.58,241.2,24.97,3401.36,2453.42,221.5701123,6.565,False -2,23,2012-07-27,25824.58,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,23,2012-08-03,29065.41,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,23,2012-08-10,29282.18,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,23,2012-08-17,32212.01,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,23,2012-08-24,35197.49,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,23,2012-08-31,29981.95,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,23,2012-09-07,21132.94,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,23,2012-09-14,20513.8,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,23,2012-09-21,19813.34,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,23,2012-09-28,16752.99,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,23,2012-10-05,23322.7,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,23,2012-10-12,29792.09,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,23,2012-10-19,21873.41,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,23,2012-10-26,26574.0,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,24,2010-02-05,9731.05,40.19,2.572,,,,,,210.7526053,8.324,False -2,24,2010-02-12,11838.72,38.49,2.548,,,,,,210.8979935,8.324,True -2,24,2010-02-19,9620.64,39.69,2.514,,,,,,210.9451605,8.324,False -2,24,2010-02-26,8785.76,46.1,2.561,,,,,,210.9759573,8.324,False -2,24,2010-03-05,8678.56,47.17,2.625,,,,,,211.0067542,8.324,False -2,24,2010-03-12,7650.12,57.56,2.667,,,,,,211.037551,8.324,False -2,24,2010-03-19,6416.62,54.52,2.72,,,,,,210.8733316,8.324,False -2,24,2010-03-26,5995.61,51.26,2.732,,,,,,210.6766095,8.324,False -2,24,2010-04-02,8839.61,63.27,2.719,,,,,,210.4798874,8.2,False -2,24,2010-04-09,8731.12,65.41,2.77,,,,,,210.2831653,8.2,False -2,24,2010-04-16,7025.53,68.07,2.808,,,,,,210.1495463,8.2,False -2,24,2010-04-23,6527.13,65.11,2.795,,,,,,210.1000648,8.2,False -2,24,2010-04-30,5279.71,66.98,2.78,,,,,,210.0505833,8.2,False -2,24,2010-05-07,6856.03,71.28,2.835,,,,,,210.0011018,8.2,False -2,24,2010-05-14,5971.1,73.31,2.854,,,,,,209.9984585,8.2,False -2,24,2010-05-21,7352.65,74.83,2.826,,,,,,210.2768443,8.2,False -2,24,2010-05-28,7605.71,81.13,2.759,,,,,,210.5552301,8.2,False -2,24,2010-06-04,7865.05,81.81,2.705,,,,,,210.833616,8.2,False -2,24,2010-06-11,6938.34,83.4,2.668,,,,,,211.1120018,8.2,False -2,24,2010-06-18,6542.43,85.81,2.637,,,,,,211.1096543,8.2,False -2,24,2010-06-25,6341.13,86.26,2.653,,,,,,210.9950134,8.2,False -2,24,2010-07-02,7864.03,82.74,2.669,,,,,,210.8803726,8.099,False -2,24,2010-07-09,5930.88,82.59,2.642,,,,,,210.7657317,8.099,False -2,24,2010-07-16,5785.82,85.32,2.623,,,,,,210.7577954,8.099,False -2,24,2010-07-23,7873.69,87.66,2.608,,,,,,210.8921319,8.099,False -2,24,2010-07-30,10894.4,83.49,2.64,,,,,,211.0264684,8.099,False -2,24,2010-08-06,15464.74,89.53,2.627,,,,,,211.1608049,8.099,False -2,24,2010-08-13,14371.26,89.05,2.692,,,,,,211.2951413,8.099,False -2,24,2010-08-20,24084.77,88.7,2.664,,,,,,211.2596586,8.099,False -2,24,2010-08-27,19731.92,87.12,2.619,,,,,,211.2241759,8.099,False -2,24,2010-09-03,6059.35,81.83,2.577,,,,,,211.1886931,8.099,False -2,24,2010-09-10,5180.93,79.09,2.565,,,,,,211.1532104,8.099,True -2,24,2010-09-17,4892.42,82.05,2.582,,,,,,211.1806415,8.099,False -2,24,2010-09-24,4884.66,81.79,2.624,,,,,,211.2552578,8.099,False -2,24,2010-10-01,7490.25,69.24,2.603,,,,,,211.3298742,8.163,False -2,24,2010-10-08,8597.51,63.19,2.633,,,,,,211.4044906,8.163,False -2,24,2010-10-15,6924.63,65.8,2.72,,,,,,211.4713286,8.163,False -2,24,2010-10-22,5685.51,68.5,2.725,,,,,,211.5187208,8.163,False -2,24,2010-10-29,7699.94,66.24,2.716,,,,,,211.5661131,8.163,False -2,24,2010-11-05,10758.45,57.85,2.689,,,,,,211.6135053,8.163,False -2,24,2010-11-12,9882.2,59.69,2.728,,,,,,211.6608975,8.163,False -2,24,2010-11-19,9555.0,50.81,2.771,,,,,,211.5470304,8.163,False -2,24,2010-11-26,18633.55,62.98,2.735,,,,,,211.4062867,8.163,True -2,24,2010-12-03,13103.91,49.33,2.708,,,,,,211.265543,8.163,False -2,24,2010-12-10,24949.2,45.5,2.843,,,,,,211.1247993,8.163,False -2,24,2010-12-17,18880.73,47.55,2.869,,,,,,211.0645458,8.163,False -2,24,2010-12-24,18032.75,49.97,2.886,,,,,,211.0646599,8.163,False -2,24,2010-12-31,3824.32,47.3,2.943,,,,,,211.064774,8.163,True -2,24,2011-01-07,5832.43,44.69,2.976,,,,,,211.0648881,8.028,False -2,24,2011-01-14,5901.66,33.02,2.983,,,,,,211.1176713,8.028,False -2,24,2011-01-21,5521.55,41.4,3.016,,,,,,211.4864691,8.028,False -2,24,2011-01-28,5425.96,42.83,3.01,,,,,,211.8552668,8.028,False -2,24,2011-02-04,8343.52,38.25,2.989,,,,,,212.2240646,8.028,False -2,24,2011-02-11,9763.95,33.19,3.022,,,,,,212.5928624,8.028,True -2,24,2011-02-18,7927.01,57.83,3.045,,,,,,212.9033115,8.028,False -2,24,2011-02-25,6366.97,60.8,3.065,,,,,,213.190421,8.028,False -2,24,2011-03-04,7311.89,57.77,3.288,,,,,,213.4775305,8.028,False -2,24,2011-03-11,6599.46,52.7,3.459,,,,,,213.7646401,8.028,False -2,24,2011-03-18,6543.77,62.32,3.488,,,,,,214.0156238,8.028,False -2,24,2011-03-25,6116.47,69.42,3.473,,,,,,214.2521573,8.028,False -2,24,2011-04-01,6230.74,55.43,3.524,,,,,,214.4886908,7.931,False -2,24,2011-04-08,5621.35,67.0,3.622,,,,,,214.7252242,7.931,False -2,24,2011-04-15,6145.48,69.48,3.743,,,,,,214.9420631,7.931,False -2,24,2011-04-22,7159.79,69.39,3.807,,,,,,215.1096657,7.931,False -2,24,2011-04-29,5623.76,69.21,3.81,,,,,,215.2772683,7.931,False -2,24,2011-05-06,4563.31,61.48,3.906,,,,,,215.4448709,7.931,False -2,24,2011-05-13,5268.62,74.61,3.899,,,,,,215.6124735,7.931,False -2,24,2011-05-20,5166.66,67.14,3.907,,,,,,215.3834778,7.931,False -2,24,2011-05-27,5831.95,76.42,3.786,,,,,,215.1544822,7.931,False -2,24,2011-06-03,6584.94,83.07,3.699,,,,,,214.9254865,7.931,False -2,24,2011-06-10,8384.43,83.4,3.648,,,,,,214.6964908,7.931,False -2,24,2011-06-17,6689.47,86.53,3.637,,,,,,214.6513538,7.931,False -2,24,2011-06-24,5908.7,85.17,3.594,,,,,,214.7441108,7.931,False -2,24,2011-07-01,5482.89,85.69,3.524,,,,,,214.8368678,7.852,False -2,24,2011-07-08,6364.86,87.7,3.48,,,,,,214.9296249,7.852,False -2,24,2011-07-15,5985.18,89.83,3.575,,,,,,215.0134426,7.852,False -2,24,2011-07-22,6791.2,89.34,3.651,,,,,,215.0749122,7.852,False -2,24,2011-07-29,7592.65,90.07,3.682,,,,,,215.1363819,7.852,False -2,24,2011-08-05,11799.02,93.34,3.684,,,,,,215.1978515,7.852,False -2,24,2011-08-12,14356.6,91.58,3.638,,,,,,215.2593211,7.852,False -2,24,2011-08-19,24585.84,89.86,3.554,,,,,,215.3229307,7.852,False -2,24,2011-08-26,18995.15,90.45,3.523,,,,,,215.386897,7.852,False -2,24,2011-09-02,5215.29,89.64,3.533,,,,,,215.4508632,7.852,False -2,24,2011-09-09,4326.63,77.97,3.546,,,,,,215.5148295,7.852,True -2,24,2011-09-16,4790.21,78.85,3.526,,,,,,215.6944378,7.852,False -2,24,2011-09-23,4792.96,75.58,3.467,,,,,,216.0282356,7.852,False -2,24,2011-09-30,4662.72,78.14,3.355,,,,,,216.3620333,7.852,False -2,24,2011-10-07,5764.43,69.92,3.285,,,,,,216.6958311,7.441,False -2,24,2011-10-14,5332.8,71.67,3.274,,,,,,217.0048261,7.441,False -2,24,2011-10-21,8525.54,64.53,3.353,,,,,,217.1650042,7.441,False -2,24,2011-10-28,7251.87,65.87,3.372,,,,,,217.3251824,7.441,False -2,24,2011-11-04,9947.73,55.53,3.332,,,,,,217.4853605,7.441,False -2,24,2011-11-11,8135.39,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,24,2011-11-18,6915.09,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,24,2011-11-25,14529.15,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,24,2011-12-02,10526.0,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,24,2011-12-09,26097.66,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,24,2011-12-16,14642.07,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,24,2011-12-23,17986.73,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,24,2011-12-30,5483.91,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,24,2012-01-06,4236.56,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,24,2012-01-13,3750.01,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,24,2012-01-20,4193.36,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,24,2012-01-27,4313.9,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,24,2012-02-03,6176.76,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,24,2012-02-10,8517.62,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,24,2012-02-17,7097.11,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,24,2012-02-24,6441.65,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,24,2012-03-02,5935.4,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,24,2012-03-09,6195.81,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,24,2012-03-16,6270.24,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,24,2012-03-23,5013.95,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,24,2012-03-30,6620.49,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,24,2012-04-06,7615.6,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,24,2012-04-13,6480.53,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,24,2012-04-20,5780.13,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,24,2012-04-27,4841.61,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,24,2012-05-04,5645.77,76.73,3.749,23731.47,,78.09,7931.42,4443.52,221.3095166,6.891,False -2,24,2012-05-11,5608.52,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,24,2012-05-18,5386.14,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,24,2012-05-25,5939.51,78.19,3.561,10701.32,,1030.53,3595.04,14920.27,221.3828029,6.891,False -2,24,2012-06-01,5785.3,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,24,2012-06-08,6175.22,78.69,3.452,12162.04,463.6,78.39,3610.78,10877.64,221.3877467,6.891,False -2,24,2012-06-15,5801.98,80.56,3.393,8573.41,195.0,0.19,4455.38,5288.61,221.4009901,6.891,False -2,24,2012-06-22,5068.6,81.04,3.346,12126.02,314.0,60.99,6058.6,36430.33,221.4411622,6.891,False -2,24,2012-06-29,5460.65,86.32,3.286,8495.34,275.8,,1935.16,5686.13,221.4813343,6.891,False -2,24,2012-07-06,6235.94,84.2,3.227,12355.5,295.05,100.15,6720.4,5506.53,221.5215064,6.565,False -2,24,2012-07-13,6422.58,80.17,3.256,8354.65,342.25,20.53,5674.44,5012.22,221.5616784,6.565,False -2,24,2012-07-20,5989.26,83.23,3.311,6961.58,241.2,24.97,3401.36,2453.42,221.5701123,6.565,False -2,24,2012-07-27,6570.12,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,24,2012-08-03,9553.0,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,24,2012-08-10,11212.86,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,24,2012-08-17,15501.67,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,24,2012-08-24,23163.57,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,24,2012-08-31,14712.13,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,24,2012-09-07,5525.58,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,24,2012-09-14,4813.31,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,24,2012-09-21,5059.15,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,24,2012-09-28,5942.96,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,24,2012-10-05,7536.29,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,24,2012-10-12,9575.68,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,24,2012-10-19,6937.84,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,24,2012-10-26,7820.52,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,25,2010-02-05,16827.5,40.19,2.572,,,,,,210.7526053,8.324,False -2,25,2010-02-12,19286.0,38.49,2.548,,,,,,210.8979935,8.324,True -2,25,2010-02-19,17803.75,39.69,2.514,,,,,,210.9451605,8.324,False -2,25,2010-02-26,13153.25,46.1,2.561,,,,,,210.9759573,8.324,False -2,25,2010-03-05,14656.5,47.17,2.625,,,,,,211.0067542,8.324,False -2,25,2010-03-12,16055.25,57.56,2.667,,,,,,211.037551,8.324,False -2,25,2010-03-19,17283.75,54.52,2.72,,,,,,210.8733316,8.324,False -2,25,2010-03-26,16632.75,51.26,2.732,,,,,,210.6766095,8.324,False -2,25,2010-04-02,20982.5,63.27,2.719,,,,,,210.4798874,8.2,False -2,25,2010-04-09,21236.25,65.41,2.77,,,,,,210.2831653,8.2,False -2,25,2010-04-16,17095.5,68.07,2.808,,,,,,210.1495463,8.2,False -2,25,2010-04-23,16876.0,65.11,2.795,,,,,,210.1000648,8.2,False -2,25,2010-04-30,16576.5,66.98,2.78,,,,,,210.0505833,8.2,False -2,25,2010-05-07,27799.0,71.28,2.835,,,,,,210.0011018,8.2,False -2,25,2010-05-14,15107.25,73.31,2.854,,,,,,209.9984585,8.2,False -2,25,2010-05-21,17035.25,74.83,2.826,,,,,,210.2768443,8.2,False -2,25,2010-05-28,17879.25,81.13,2.759,,,,,,210.5552301,8.2,False -2,25,2010-06-04,19886.75,81.81,2.705,,,,,,210.833616,8.2,False -2,25,2010-06-11,18220.0,83.4,2.668,,,,,,211.1120018,8.2,False -2,25,2010-06-18,16997.5,85.81,2.637,,,,,,211.1096543,8.2,False -2,25,2010-06-25,17223.0,86.26,2.653,,,,,,210.9950134,8.2,False -2,25,2010-07-02,15389.5,82.74,2.669,,,,,,210.8803726,8.099,False -2,25,2010-07-09,14617.75,82.59,2.642,,,,,,210.7657317,8.099,False -2,25,2010-07-16,12375.83,85.32,2.623,,,,,,210.7577954,8.099,False -2,25,2010-07-23,13264.0,87.66,2.608,,,,,,210.8921319,8.099,False -2,25,2010-07-30,14486.65,83.49,2.64,,,,,,211.0264684,8.099,False -2,25,2010-08-06,14768.0,89.53,2.627,,,,,,211.1608049,8.099,False -2,25,2010-08-13,14424.98,89.05,2.692,,,,,,211.2951413,8.099,False -2,25,2010-08-20,17355.76,88.7,2.664,,,,,,211.2596586,8.099,False -2,25,2010-08-27,18175.92,87.12,2.619,,,,,,211.2241759,8.099,False -2,25,2010-09-03,13813.27,81.83,2.577,,,,,,211.1886931,8.099,False -2,25,2010-09-10,14026.13,79.09,2.565,,,,,,211.1532104,8.099,True -2,25,2010-09-17,12650.03,82.05,2.582,,,,,,211.1806415,8.099,False -2,25,2010-09-24,12821.48,81.79,2.624,,,,,,211.2552578,8.099,False -2,25,2010-10-01,13783.66,69.24,2.603,,,,,,211.3298742,8.163,False -2,25,2010-10-08,14718.65,63.19,2.633,,,,,,211.4044906,8.163,False -2,25,2010-10-15,12614.9,65.8,2.72,,,,,,211.4713286,8.163,False -2,25,2010-10-22,14434.14,68.5,2.725,,,,,,211.5187208,8.163,False -2,25,2010-10-29,15303.68,66.24,2.716,,,,,,211.5661131,8.163,False -2,25,2010-11-05,17019.23,57.85,2.689,,,,,,211.6135053,8.163,False -2,25,2010-11-12,15578.51,59.69,2.728,,,,,,211.6608975,8.163,False -2,25,2010-11-19,16927.86,50.81,2.771,,,,,,211.5470304,8.163,False -2,25,2010-11-26,18878.98,62.98,2.735,,,,,,211.4062867,8.163,True -2,25,2010-12-03,15601.15,49.33,2.708,,,,,,211.265543,8.163,False -2,25,2010-12-10,22285.19,45.5,2.843,,,,,,211.1247993,8.163,False -2,25,2010-12-17,20580.15,47.55,2.869,,,,,,211.0645458,8.163,False -2,25,2010-12-24,30205.63,49.97,2.886,,,,,,211.0646599,8.163,False -2,25,2010-12-31,11574.68,47.3,2.943,,,,,,211.064774,8.163,True -2,25,2011-01-07,10612.29,44.69,2.976,,,,,,211.0648881,8.028,False -2,25,2011-01-14,13163.69,33.02,2.983,,,,,,211.1176713,8.028,False -2,25,2011-01-21,11978.96,41.4,3.016,,,,,,211.4864691,8.028,False -2,25,2011-01-28,9782.15,42.83,3.01,,,,,,211.8552668,8.028,False -2,25,2011-02-04,17864.58,38.25,2.989,,,,,,212.2240646,8.028,False -2,25,2011-02-11,18730.4,33.19,3.022,,,,,,212.5928624,8.028,True -2,25,2011-02-18,16128.24,57.83,3.045,,,,,,212.9033115,8.028,False -2,25,2011-02-25,15140.4,60.8,3.065,,,,,,213.190421,8.028,False -2,25,2011-03-04,18037.54,57.77,3.288,,,,,,213.4775305,8.028,False -2,25,2011-03-11,15025.51,52.7,3.459,,,,,,213.7646401,8.028,False -2,25,2011-03-18,16880.29,62.32,3.488,,,,,,214.0156238,8.028,False -2,25,2011-03-25,15395.9,69.42,3.473,,,,,,214.2521573,8.028,False -2,25,2011-04-01,14044.3,55.43,3.524,,,,,,214.4886908,7.931,False -2,25,2011-04-08,16142.72,67.0,3.622,,,,,,214.7252242,7.931,False -2,25,2011-04-15,14324.69,69.48,3.743,,,,,,214.9420631,7.931,False -2,25,2011-04-22,15511.25,69.39,3.807,,,,,,215.1096657,7.931,False -2,25,2011-04-29,15292.55,69.21,3.81,,,,,,215.2772683,7.931,False -2,25,2011-05-06,13757.13,61.48,3.906,,,,,,215.4448709,7.931,False -2,25,2011-05-13,16569.01,74.61,3.899,,,,,,215.6124735,7.931,False -2,25,2011-05-20,12881.55,67.14,3.907,,,,,,215.3834778,7.931,False -2,25,2011-05-27,14288.44,76.42,3.786,,,,,,215.1544822,7.931,False -2,25,2011-06-03,17438.27,83.07,3.699,,,,,,214.9254865,7.931,False -2,25,2011-06-10,17671.59,83.4,3.648,,,,,,214.6964908,7.931,False -2,25,2011-06-17,15306.08,86.53,3.637,,,,,,214.6513538,7.931,False -2,25,2011-06-24,15209.36,85.17,3.594,,,,,,214.7441108,7.931,False -2,25,2011-07-01,14093.77,85.69,3.524,,,,,,214.8368678,7.852,False -2,25,2011-07-08,14355.06,87.7,3.48,,,,,,214.9296249,7.852,False -2,25,2011-07-15,13131.18,89.83,3.575,,,,,,215.0134426,7.852,False -2,25,2011-07-22,13760.29,89.34,3.651,,,,,,215.0749122,7.852,False -2,25,2011-07-29,12114.68,90.07,3.682,,,,,,215.1363819,7.852,False -2,25,2011-08-05,13327.18,93.34,3.684,,,,,,215.1978515,7.852,False -2,25,2011-08-12,13764.91,91.58,3.638,,,,,,215.2593211,7.852,False -2,25,2011-08-19,17474.71,89.86,3.554,,,,,,215.3229307,7.852,False -2,25,2011-08-26,18495.89,90.45,3.523,,,,,,215.386897,7.852,False -2,25,2011-09-02,11028.83,89.64,3.533,,,,,,215.4508632,7.852,False -2,25,2011-09-09,10760.52,77.97,3.546,,,,,,215.5148295,7.852,True -2,25,2011-09-16,12319.88,78.85,3.526,,,,,,215.6944378,7.852,False -2,25,2011-09-23,11374.85,75.58,3.467,,,,,,216.0282356,7.852,False -2,25,2011-09-30,11004.32,78.14,3.355,,,,,,216.3620333,7.852,False -2,25,2011-10-07,13048.5,69.92,3.285,,,,,,216.6958311,7.441,False -2,25,2011-10-14,12163.39,71.67,3.274,,,,,,217.0048261,7.441,False -2,25,2011-10-21,14971.53,64.53,3.353,,,,,,217.1650042,7.441,False -2,25,2011-10-28,15000.03,65.87,3.372,,,,,,217.3251824,7.441,False -2,25,2011-11-04,14819.58,55.53,3.332,,,,,,217.4853605,7.441,False -2,25,2011-11-11,13738.08,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,25,2011-11-18,12840.99,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,25,2011-11-25,17623.65,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,25,2011-12-02,15445.98,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,25,2011-12-09,24058.76,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,25,2011-12-16,21668.16,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,25,2011-12-23,26814.72,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,25,2011-12-30,12141.41,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,25,2012-01-06,9560.36,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,25,2012-01-13,9588.34,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,25,2012-01-20,10127.64,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,25,2012-01-27,9977.79,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,25,2012-02-03,12435.94,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,25,2012-02-10,13697.93,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,25,2012-02-17,14198.49,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,25,2012-02-24,14996.91,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,25,2012-03-02,14379.23,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,25,2012-03-09,15467.27,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,25,2012-03-16,17776.31,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,25,2012-03-23,16867.16,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,25,2012-03-30,18367.41,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,25,2012-04-06,19176.04,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,25,2012-04-13,16904.37,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,25,2012-04-20,14871.96,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,25,2012-04-27,12961.33,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,25,2012-05-04,14711.65,76.73,3.749,23731.47,,78.09,7931.42,4443.52,221.3095166,6.891,False -2,25,2012-05-11,14370.04,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,25,2012-05-18,16587.87,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,25,2012-05-25,14472.9,78.19,3.561,10701.32,,1030.53,3595.04,14920.27,221.3828029,6.891,False -2,25,2012-06-01,16089.96,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,25,2012-06-08,15163.48,78.69,3.452,12162.04,463.6,78.39,3610.78,10877.64,221.3877467,6.891,False -2,25,2012-06-15,15002.93,80.56,3.393,8573.41,195.0,0.19,4455.38,5288.61,221.4009901,6.891,False -2,25,2012-06-22,14921.58,81.04,3.346,12126.02,314.0,60.99,6058.6,36430.33,221.4411622,6.891,False -2,25,2012-06-29,15096.38,86.32,3.286,8495.34,275.8,,1935.16,5686.13,221.4813343,6.891,False -2,25,2012-07-06,15180.28,84.2,3.227,12355.5,295.05,100.15,6720.4,5506.53,221.5215064,6.565,False -2,25,2012-07-13,12719.4,80.17,3.256,8354.65,342.25,20.53,5674.44,5012.22,221.5616784,6.565,False -2,25,2012-07-20,12762.42,83.23,3.311,6961.58,241.2,24.97,3401.36,2453.42,221.5701123,6.565,False -2,25,2012-07-27,12090.67,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,25,2012-08-03,13023.42,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,25,2012-08-10,12611.44,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,25,2012-08-17,14073.8,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,25,2012-08-24,14991.37,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,25,2012-08-31,15559.65,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,25,2012-09-07,11377.59,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,25,2012-09-14,11613.66,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,25,2012-09-21,12410.97,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,25,2012-09-28,11893.45,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,25,2012-10-05,16415.05,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,25,2012-10-12,15992.38,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,25,2012-10-19,13573.3,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,25,2012-10-26,12962.63,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,26,2010-02-05,13414.69,40.19,2.572,,,,,,210.7526053,8.324,False -2,26,2010-02-12,12962.49,38.49,2.548,,,,,,210.8979935,8.324,True -2,26,2010-02-19,13654.17,39.69,2.514,,,,,,210.9451605,8.324,False -2,26,2010-02-26,10098.66,46.1,2.561,,,,,,210.9759573,8.324,False -2,26,2010-03-05,11353.56,47.17,2.625,,,,,,211.0067542,8.324,False -2,26,2010-03-12,11071.3,57.56,2.667,,,,,,211.037551,8.324,False -2,26,2010-03-19,11206.35,54.52,2.72,,,,,,210.8733316,8.324,False -2,26,2010-03-26,9767.11,51.26,2.732,,,,,,210.6766095,8.324,False -2,26,2010-04-02,12741.66,63.27,2.719,,,,,,210.4798874,8.2,False -2,26,2010-04-09,11576.46,65.41,2.77,,,,,,210.2831653,8.2,False -2,26,2010-04-16,12512.55,68.07,2.808,,,,,,210.1495463,8.2,False -2,26,2010-04-23,10990.66,65.11,2.795,,,,,,210.1000648,8.2,False -2,26,2010-04-30,9596.62,66.98,2.78,,,,,,210.0505833,8.2,False -2,26,2010-05-07,11039.88,71.28,2.835,,,,,,210.0011018,8.2,False -2,26,2010-05-14,8574.81,73.31,2.854,,,,,,209.9984585,8.2,False -2,26,2010-05-21,10114.5,74.83,2.826,,,,,,210.2768443,8.2,False -2,26,2010-05-28,9590.84,81.13,2.759,,,,,,210.5552301,8.2,False -2,26,2010-06-04,9667.52,81.81,2.705,,,,,,210.833616,8.2,False -2,26,2010-06-11,9246.8,83.4,2.668,,,,,,211.1120018,8.2,False -2,26,2010-06-18,8823.4,85.81,2.637,,,,,,211.1096543,8.2,False -2,26,2010-06-25,8836.02,86.26,2.653,,,,,,210.9950134,8.2,False -2,26,2010-07-02,7824.56,82.74,2.669,,,,,,210.8803726,8.099,False -2,26,2010-07-09,7977.95,82.59,2.642,,,,,,210.7657317,8.099,False -2,26,2010-07-16,7317.54,85.32,2.623,,,,,,210.7577954,8.099,False -2,26,2010-07-23,7514.06,87.66,2.608,,,,,,210.8921319,8.099,False -2,26,2010-07-30,7014.7,83.49,2.64,,,,,,211.0264684,8.099,False -2,26,2010-08-06,7469.9,89.53,2.627,,,,,,211.1608049,8.099,False -2,26,2010-08-13,8116.42,89.05,2.692,,,,,,211.2951413,8.099,False -2,26,2010-08-20,9847.16,88.7,2.664,,,,,,211.2596586,8.099,False -2,26,2010-08-27,7953.17,87.12,2.619,,,,,,211.2241759,8.099,False -2,26,2010-09-03,8230.82,81.83,2.577,,,,,,211.1886931,8.099,False -2,26,2010-09-10,8250.78,79.09,2.565,,,,,,211.1532104,8.099,True -2,26,2010-09-17,7579.61,82.05,2.582,,,,,,211.1806415,8.099,False -2,26,2010-09-24,7630.38,81.79,2.624,,,,,,211.2552578,8.099,False -2,26,2010-10-01,12894.67,69.24,2.603,,,,,,211.3298742,8.163,False -2,26,2010-10-08,12999.08,63.19,2.633,,,,,,211.4044906,8.163,False -2,26,2010-10-15,11695.89,65.8,2.72,,,,,,211.4713286,8.163,False -2,26,2010-10-22,8719.74,68.5,2.725,,,,,,211.5187208,8.163,False -2,26,2010-10-29,11454.81,66.24,2.716,,,,,,211.5661131,8.163,False -2,26,2010-11-05,13031.34,57.85,2.689,,,,,,211.6135053,8.163,False -2,26,2010-11-12,11809.66,59.69,2.728,,,,,,211.6608975,8.163,False -2,26,2010-11-19,12616.71,50.81,2.771,,,,,,211.5470304,8.163,False -2,26,2010-11-26,19633.74,62.98,2.735,,,,,,211.4062867,8.163,True -2,26,2010-12-03,11398.87,49.33,2.708,,,,,,211.265543,8.163,False -2,26,2010-12-10,16014.39,45.5,2.843,,,,,,211.1247993,8.163,False -2,26,2010-12-17,15333.6,47.55,2.869,,,,,,211.0645458,8.163,False -2,26,2010-12-24,19679.04,49.97,2.886,,,,,,211.0646599,8.163,False -2,26,2010-12-31,4470.39,47.3,2.943,,,,,,211.064774,8.163,True -2,26,2011-01-07,4942.64,44.69,2.976,,,,,,211.0648881,8.028,False -2,26,2011-01-14,6301.96,33.02,2.983,,,,,,211.1176713,8.028,False -2,26,2011-01-21,6098.7,41.4,3.016,,,,,,211.4864691,8.028,False -2,26,2011-01-28,7766.99,42.83,3.01,,,,,,211.8552668,8.028,False -2,26,2011-02-04,9974.55,38.25,2.989,,,,,,212.2240646,8.028,False -2,26,2011-02-11,10707.98,33.19,3.022,,,,,,212.5928624,8.028,True -2,26,2011-02-18,10881.99,57.83,3.045,,,,,,212.9033115,8.028,False -2,26,2011-02-25,10533.64,60.8,3.065,,,,,,213.190421,8.028,False -2,26,2011-03-04,10224.45,57.77,3.288,,,,,,213.4775305,8.028,False -2,26,2011-03-11,10200.36,52.7,3.459,,,,,,213.7646401,8.028,False -2,26,2011-03-18,8522.97,62.32,3.488,,,,,,214.0156238,8.028,False -2,26,2011-03-25,9316.5,69.42,3.473,,,,,,214.2521573,8.028,False -2,26,2011-04-01,8291.39,55.43,3.524,,,,,,214.4886908,7.931,False -2,26,2011-04-08,8357.62,67.0,3.622,,,,,,214.7252242,7.931,False -2,26,2011-04-15,8829.14,69.48,3.743,,,,,,214.9420631,7.931,False -2,26,2011-04-22,8971.53,69.39,3.807,,,,,,215.1096657,7.931,False -2,26,2011-04-29,7797.25,69.21,3.81,,,,,,215.2772683,7.931,False -2,26,2011-05-06,8026.23,61.48,3.906,,,,,,215.4448709,7.931,False -2,26,2011-05-13,7762.65,74.61,3.899,,,,,,215.6124735,7.931,False -2,26,2011-05-20,7384.45,67.14,3.907,,,,,,215.3834778,7.931,False -2,26,2011-05-27,8389.32,76.42,3.786,,,,,,215.1544822,7.931,False -2,26,2011-06-03,8861.93,83.07,3.699,,,,,,214.9254865,7.931,False -2,26,2011-06-10,8316.9,83.4,3.648,,,,,,214.6964908,7.931,False -2,26,2011-06-17,7876.01,86.53,3.637,,,,,,214.6513538,7.931,False -2,26,2011-06-24,6820.54,85.17,3.594,,,,,,214.7441108,7.931,False -2,26,2011-07-01,7423.39,85.69,3.524,,,,,,214.8368678,7.852,False -2,26,2011-07-08,6812.08,87.7,3.48,,,,,,214.9296249,7.852,False -2,26,2011-07-15,6118.44,89.83,3.575,,,,,,215.0134426,7.852,False -2,26,2011-07-22,5340.07,89.34,3.651,,,,,,215.0749122,7.852,False -2,26,2011-07-29,5068.56,90.07,3.682,,,,,,215.1363819,7.852,False -2,26,2011-08-05,7111.04,93.34,3.684,,,,,,215.1978515,7.852,False -2,26,2011-08-12,7893.09,91.58,3.638,,,,,,215.2593211,7.852,False -2,26,2011-08-19,7622.85,89.86,3.554,,,,,,215.3229307,7.852,False -2,26,2011-08-26,7497.41,90.45,3.523,,,,,,215.386897,7.852,False -2,26,2011-09-02,8360.22,89.64,3.533,,,,,,215.4508632,7.852,False -2,26,2011-09-09,7842.46,77.97,3.546,,,,,,215.5148295,7.852,True -2,26,2011-09-16,8355.47,78.85,3.526,,,,,,215.6944378,7.852,False -2,26,2011-09-23,9226.82,75.58,3.467,,,,,,216.0282356,7.852,False -2,26,2011-09-30,8762.99,78.14,3.355,,,,,,216.3620333,7.852,False -2,26,2011-10-07,9558.17,69.92,3.285,,,,,,216.6958311,7.441,False -2,26,2011-10-14,8685.88,71.67,3.274,,,,,,217.0048261,7.441,False -2,26,2011-10-21,12354.02,64.53,3.353,,,,,,217.1650042,7.441,False -2,26,2011-10-28,11103.1,65.87,3.372,,,,,,217.3251824,7.441,False -2,26,2011-11-04,13758.8,55.53,3.332,,,,,,217.4853605,7.441,False -2,26,2011-11-11,11442.32,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,26,2011-11-18,9077.37,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,26,2011-11-25,15642.36,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,26,2011-12-02,11870.34,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,26,2011-12-09,17785.07,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,26,2011-12-16,14195.06,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,26,2011-12-23,18128.64,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,26,2011-12-30,6066.69,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,26,2012-01-06,4179.99,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,26,2012-01-13,5922.15,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,26,2012-01-20,5820.49,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,26,2012-01-27,5831.27,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,26,2012-02-03,9349.84,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,26,2012-02-10,9919.39,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,26,2012-02-17,9932.64,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,26,2012-02-24,9880.16,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,26,2012-03-02,10576.16,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,26,2012-03-09,10482.88,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,26,2012-03-16,10564.17,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,26,2012-03-23,8960.97,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,26,2012-03-30,11150.68,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,26,2012-04-06,11900.55,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,26,2012-04-13,8447.95,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,26,2012-04-20,7731.8,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,26,2012-04-27,9059.24,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,26,2012-05-04,9285.31,76.73,3.749,23731.47,,78.09,7931.42,4443.52,221.3095166,6.891,False -2,26,2012-05-11,8123.32,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,26,2012-05-18,8143.01,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,26,2012-05-25,7345.38,78.19,3.561,10701.32,,1030.53,3595.04,14920.27,221.3828029,6.891,False -2,26,2012-06-01,7594.74,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,26,2012-06-08,6937.26,78.69,3.452,12162.04,463.6,78.39,3610.78,10877.64,221.3877467,6.891,False -2,26,2012-06-15,7291.87,80.56,3.393,8573.41,195.0,0.19,4455.38,5288.61,221.4009901,6.891,False -2,26,2012-06-22,6767.98,81.04,3.346,12126.02,314.0,60.99,6058.6,36430.33,221.4411622,6.891,False -2,26,2012-06-29,5937.57,86.32,3.286,8495.34,275.8,,1935.16,5686.13,221.4813343,6.891,False -2,26,2012-07-06,7139.51,84.2,3.227,12355.5,295.05,100.15,6720.4,5506.53,221.5215064,6.565,False -2,26,2012-07-13,6705.78,80.17,3.256,8354.65,342.25,20.53,5674.44,5012.22,221.5616784,6.565,False -2,26,2012-07-20,6753.58,83.23,3.311,6961.58,241.2,24.97,3401.36,2453.42,221.5701123,6.565,False -2,26,2012-07-27,6048.51,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,26,2012-08-03,6292.9,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,26,2012-08-10,6861.45,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,26,2012-08-17,7246.76,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,26,2012-08-24,7760.39,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,26,2012-08-31,7151.12,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,26,2012-09-07,6747.98,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,26,2012-09-14,8578.81,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,26,2012-09-21,9990.41,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,26,2012-09-28,6520.65,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,26,2012-10-05,9979.28,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,26,2012-10-12,12950.43,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,26,2012-10-19,8022.05,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,26,2012-10-26,9258.88,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,27,2010-02-05,3184.5,40.19,2.572,,,,,,210.7526053,8.324,False -2,27,2010-02-12,2537.5,38.49,2.548,,,,,,210.8979935,8.324,True -2,27,2010-02-19,2791.0,39.69,2.514,,,,,,210.9451605,8.324,False -2,27,2010-02-26,2389.0,46.1,2.561,,,,,,210.9759573,8.324,False -2,27,2010-03-05,2473.5,47.17,2.625,,,,,,211.0067542,8.324,False -2,27,2010-03-12,2171.75,57.56,2.667,,,,,,211.037551,8.324,False -2,27,2010-03-19,1944.5,54.52,2.72,,,,,,210.8733316,8.324,False -2,27,2010-03-26,1602.25,51.26,2.732,,,,,,210.6766095,8.324,False -2,27,2010-04-02,1520.5,63.27,2.719,,,,,,210.4798874,8.2,False -2,27,2010-04-09,1401.5,65.41,2.77,,,,,,210.2831653,8.2,False -2,27,2010-04-16,1316.0,68.07,2.808,,,,,,210.1495463,8.2,False -2,27,2010-04-23,1208.25,65.11,2.795,,,,,,210.1000648,8.2,False -2,27,2010-04-30,1463.25,66.98,2.78,,,,,,210.0505833,8.2,False -2,27,2010-05-07,1441.75,71.28,2.835,,,,,,210.0011018,8.2,False -2,27,2010-05-14,1305.75,73.31,2.854,,,,,,209.9984585,8.2,False -2,27,2010-05-21,1182.25,74.83,2.826,,,,,,210.2768443,8.2,False -2,27,2010-05-28,1241.25,81.13,2.759,,,,,,210.5552301,8.2,False -2,27,2010-06-04,1240.0,81.81,2.705,,,,,,210.833616,8.2,False -2,27,2010-06-11,1469.0,83.4,2.668,,,,,,211.1120018,8.2,False -2,27,2010-06-18,1431.75,85.81,2.637,,,,,,211.1096543,8.2,False -2,27,2010-06-25,1053.0,86.26,2.653,,,,,,210.9950134,8.2,False -2,27,2010-07-02,1121.25,82.74,2.669,,,,,,210.8803726,8.099,False -2,27,2010-07-09,1208.5,82.59,2.642,,,,,,210.7657317,8.099,False -2,27,2010-07-16,1279.5,85.32,2.623,,,,,,210.7577954,8.099,False -2,27,2010-07-23,1328.25,87.66,2.608,,,,,,210.8921319,8.099,False -2,27,2010-07-30,1458.52,83.49,2.64,,,,,,211.0264684,8.099,False -2,27,2010-08-06,1409.12,89.53,2.627,,,,,,211.1608049,8.099,False -2,27,2010-08-13,1574.51,89.05,2.692,,,,,,211.2951413,8.099,False -2,27,2010-08-20,2148.24,88.7,2.664,,,,,,211.2596586,8.099,False -2,27,2010-08-27,2334.73,87.12,2.619,,,,,,211.2241759,8.099,False -2,27,2010-09-03,1108.39,81.83,2.577,,,,,,211.1886931,8.099,False -2,27,2010-09-10,1282.02,79.09,2.565,,,,,,211.1532104,8.099,True -2,27,2010-09-17,1224.0,82.05,2.582,,,,,,211.1806415,8.099,False -2,27,2010-09-24,1308.12,81.79,2.624,,,,,,211.2552578,8.099,False -2,27,2010-10-01,1743.31,69.24,2.603,,,,,,211.3298742,8.163,False -2,27,2010-10-08,1816.94,63.19,2.633,,,,,,211.4044906,8.163,False -2,27,2010-10-15,1813.74,65.8,2.72,,,,,,211.4713286,8.163,False -2,27,2010-10-22,1682.88,68.5,2.725,,,,,,211.5187208,8.163,False -2,27,2010-10-29,2338.06,66.24,2.716,,,,,,211.5661131,8.163,False -2,27,2010-11-05,2866.43,57.85,2.689,,,,,,211.6135053,8.163,False -2,27,2010-11-12,2520.27,59.69,2.728,,,,,,211.6608975,8.163,False -2,27,2010-11-19,2715.78,50.81,2.771,,,,,,211.5470304,8.163,False -2,27,2010-11-26,3035.7,62.98,2.735,,,,,,211.4062867,8.163,True -2,27,2010-12-03,3075.94,49.33,2.708,,,,,,211.265543,8.163,False -2,27,2010-12-10,4218.12,45.5,2.843,,,,,,211.1247993,8.163,False -2,27,2010-12-17,5342.62,47.55,2.869,,,,,,211.0645458,8.163,False -2,27,2010-12-24,7060.44,49.97,2.886,,,,,,211.0646599,8.163,False -2,27,2010-12-31,2426.1,47.3,2.943,,,,,,211.064774,8.163,True -2,27,2011-01-07,2110.27,44.69,2.976,,,,,,211.0648881,8.028,False -2,27,2011-01-14,2205.36,33.02,2.983,,,,,,211.1176713,8.028,False -2,27,2011-01-21,2281.89,41.4,3.016,,,,,,211.4864691,8.028,False -2,27,2011-01-28,1986.21,42.83,3.01,,,,,,211.8552668,8.028,False -2,27,2011-02-04,2531.82,38.25,2.989,,,,,,212.2240646,8.028,False -2,27,2011-02-11,2960.25,33.19,3.022,,,,,,212.5928624,8.028,True -2,27,2011-02-18,2350.28,57.83,3.045,,,,,,212.9033115,8.028,False -2,27,2011-02-25,2058.09,60.8,3.065,,,,,,213.190421,8.028,False -2,27,2011-03-04,1876.73,57.77,3.288,,,,,,213.4775305,8.028,False -2,27,2011-03-11,2004.91,52.7,3.459,,,,,,213.7646401,8.028,False -2,27,2011-03-18,1603.99,62.32,3.488,,,,,,214.0156238,8.028,False -2,27,2011-03-25,1234.72,69.42,3.473,,,,,,214.2521573,8.028,False -2,27,2011-04-01,1427.84,55.43,3.524,,,,,,214.4886908,7.931,False -2,27,2011-04-08,1203.28,67.0,3.622,,,,,,214.7252242,7.931,False -2,27,2011-04-15,1215.55,69.48,3.743,,,,,,214.9420631,7.931,False -2,27,2011-04-22,1053.77,69.39,3.807,,,,,,215.1096657,7.931,False -2,27,2011-04-29,995.56,69.21,3.81,,,,,,215.2772683,7.931,False -2,27,2011-05-06,1293.03,61.48,3.906,,,,,,215.4448709,7.931,False -2,27,2011-05-13,1136.83,74.61,3.899,,,,,,215.6124735,7.931,False -2,27,2011-05-20,1225.36,67.14,3.907,,,,,,215.3834778,7.931,False -2,27,2011-05-27,1014.41,76.42,3.786,,,,,,215.1544822,7.931,False -2,27,2011-06-03,1117.74,83.07,3.699,,,,,,214.9254865,7.931,False -2,27,2011-06-10,1286.85,83.4,3.648,,,,,,214.6964908,7.931,False -2,27,2011-06-17,1324.08,86.53,3.637,,,,,,214.6513538,7.931,False -2,27,2011-06-24,1096.94,85.17,3.594,,,,,,214.7441108,7.931,False -2,27,2011-07-01,1089.29,85.69,3.524,,,,,,214.8368678,7.852,False -2,27,2011-07-08,791.18,87.7,3.48,,,,,,214.9296249,7.852,False -2,27,2011-07-15,1074.97,89.83,3.575,,,,,,215.0134426,7.852,False -2,27,2011-07-22,870.13,89.34,3.651,,,,,,215.0749122,7.852,False -2,27,2011-07-29,1154.85,90.07,3.682,,,,,,215.1363819,7.852,False -2,27,2011-08-05,1182.47,93.34,3.684,,,,,,215.1978515,7.852,False -2,27,2011-08-12,1329.92,91.58,3.638,,,,,,215.2593211,7.852,False -2,27,2011-08-19,2198.43,89.86,3.554,,,,,,215.3229307,7.852,False -2,27,2011-08-26,2329.44,90.45,3.523,,,,,,215.386897,7.852,False -2,27,2011-09-02,1009.87,89.64,3.533,,,,,,215.4508632,7.852,False -2,27,2011-09-09,1029.72,77.97,3.546,,,,,,215.5148295,7.852,True -2,27,2011-09-16,1268.43,78.85,3.526,,,,,,215.6944378,7.852,False -2,27,2011-09-23,1410.72,75.58,3.467,,,,,,216.0282356,7.852,False -2,27,2011-09-30,1309.49,78.14,3.355,,,,,,216.3620333,7.852,False -2,27,2011-10-07,1444.59,69.92,3.285,,,,,,216.6958311,7.441,False -2,27,2011-10-14,1384.74,71.67,3.274,,,,,,217.0048261,7.441,False -2,27,2011-10-21,1810.38,64.53,3.353,,,,,,217.1650042,7.441,False -2,27,2011-10-28,1870.07,65.87,3.372,,,,,,217.3251824,7.441,False -2,27,2011-11-04,2491.77,55.53,3.332,,,,,,217.4853605,7.441,False -2,27,2011-11-11,2247.58,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,27,2011-11-18,2285.07,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,27,2011-11-25,2914.17,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,27,2011-12-02,3143.63,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,27,2011-12-09,4701.74,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,27,2011-12-16,5402.85,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,27,2011-12-23,6765.2,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,27,2011-12-30,2841.71,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,27,2012-01-06,1769.13,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,27,2012-01-13,1928.87,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,27,2012-01-20,1685.16,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,27,2012-01-27,1731.93,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,27,2012-02-03,2163.42,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,27,2012-02-10,2429.9,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,27,2012-02-17,2482.62,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,27,2012-02-24,2049.42,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,27,2012-03-02,2180.14,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,27,2012-03-09,2010.0,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,27,2012-03-16,1718.14,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,27,2012-03-23,1456.14,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,27,2012-03-30,1153.55,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,27,2012-04-06,1331.1,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,27,2012-04-13,1353.89,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,27,2012-04-20,1055.8,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,27,2012-04-27,1345.0,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,27,2012-05-04,1116.04,76.73,3.749,23731.47,,78.09,7931.42,4443.52,221.3095166,6.891,False -2,27,2012-05-11,1196.65,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,27,2012-05-18,1372.6,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,27,2012-05-25,1096.82,78.19,3.561,10701.32,,1030.53,3595.04,14920.27,221.3828029,6.891,False -2,27,2012-06-01,1089.98,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,27,2012-06-08,1380.36,78.69,3.452,12162.04,463.6,78.39,3610.78,10877.64,221.3877467,6.891,False -2,27,2012-06-15,1302.47,80.56,3.393,8573.41,195.0,0.19,4455.38,5288.61,221.4009901,6.891,False -2,27,2012-06-22,1309.0,81.04,3.346,12126.02,314.0,60.99,6058.6,36430.33,221.4411622,6.891,False -2,27,2012-06-29,982.62,86.32,3.286,8495.34,275.8,,1935.16,5686.13,221.4813343,6.891,False -2,27,2012-07-06,972.72,84.2,3.227,12355.5,295.05,100.15,6720.4,5506.53,221.5215064,6.565,False -2,27,2012-07-13,1158.08,80.17,3.256,8354.65,342.25,20.53,5674.44,5012.22,221.5616784,6.565,False -2,27,2012-07-20,1038.91,83.23,3.311,6961.58,241.2,24.97,3401.36,2453.42,221.5701123,6.565,False -2,27,2012-07-27,1025.14,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,27,2012-08-03,1128.31,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,27,2012-08-10,1604.22,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,27,2012-08-17,1972.69,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,27,2012-08-24,2175.91,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,27,2012-08-31,2085.69,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,27,2012-09-07,1185.49,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,27,2012-09-14,1441.38,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,27,2012-09-21,1304.67,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,27,2012-09-28,1306.66,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,27,2012-10-05,1892.54,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,27,2012-10-12,1889.67,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,27,2012-10-19,2090.89,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,27,2012-10-26,2105.89,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,28,2010-02-05,1592.41,40.19,2.572,,,,,,210.7526053,8.324,False -2,28,2010-02-12,1400.7,38.49,2.548,,,,,,210.8979935,8.324,True -2,28,2010-02-19,1665.82,39.69,2.514,,,,,,210.9451605,8.324,False -2,28,2010-02-26,1251.45,46.1,2.561,,,,,,210.9759573,8.324,False -2,28,2010-03-05,1405.51,47.17,2.625,,,,,,211.0067542,8.324,False -2,28,2010-03-12,1355.75,57.56,2.667,,,,,,211.037551,8.324,False -2,28,2010-03-19,1178.91,54.52,2.72,,,,,,210.8733316,8.324,False -2,28,2010-03-26,1119.2,51.26,2.732,,,,,,210.6766095,8.324,False -2,28,2010-04-02,1354.86,63.27,2.719,,,,,,210.4798874,8.2,False -2,28,2010-04-09,1435.13,65.41,2.77,,,,,,210.2831653,8.2,False -2,28,2010-04-16,938.8,68.07,2.808,,,,,,210.1495463,8.2,False -2,28,2010-04-23,872.06,65.11,2.795,,,,,,210.1000648,8.2,False -2,28,2010-04-30,920.12,66.98,2.78,,,,,,210.0505833,8.2,False -2,28,2010-05-07,761.15,71.28,2.835,,,,,,210.0011018,8.2,False -2,28,2010-05-14,914.99,73.31,2.854,,,,,,209.9984585,8.2,False -2,28,2010-05-21,869.83,74.83,2.826,,,,,,210.2768443,8.2,False -2,28,2010-05-28,719.75,81.13,2.759,,,,,,210.5552301,8.2,False -2,28,2010-06-04,814.09,81.81,2.705,,,,,,210.833616,8.2,False -2,28,2010-06-11,697.68,83.4,2.668,,,,,,211.1120018,8.2,False -2,28,2010-06-18,641.04,85.81,2.637,,,,,,211.1096543,8.2,False -2,28,2010-06-25,581.38,86.26,2.653,,,,,,210.9950134,8.2,False -2,28,2010-07-02,639.7,82.74,2.669,,,,,,210.8803726,8.099,False -2,28,2010-07-09,437.54,82.59,2.642,,,,,,210.7657317,8.099,False -2,28,2010-07-16,510.16,85.32,2.623,,,,,,210.7577954,8.099,False -2,28,2010-07-23,654.62,87.66,2.608,,,,,,210.8921319,8.099,False -2,28,2010-07-30,508.39,83.49,2.64,,,,,,211.0264684,8.099,False -2,28,2010-08-06,619.57,89.53,2.627,,,,,,211.1608049,8.099,False -2,28,2010-08-13,509.78,89.05,2.692,,,,,,211.2951413,8.099,False -2,28,2010-08-20,569.89,88.7,2.664,,,,,,211.2596586,8.099,False -2,28,2010-08-27,644.54,87.12,2.619,,,,,,211.2241759,8.099,False -2,28,2010-09-03,593.64,81.83,2.577,,,,,,211.1886931,8.099,False -2,28,2010-09-10,629.37,79.09,2.565,,,,,,211.1532104,8.099,True -2,28,2010-09-17,744.07,82.05,2.582,,,,,,211.1806415,8.099,False -2,28,2010-09-24,655.78,81.79,2.624,,,,,,211.2552578,8.099,False -2,28,2010-10-01,1001.1,69.24,2.603,,,,,,211.3298742,8.163,False -2,28,2010-10-08,1058.31,63.19,2.633,,,,,,211.4044906,8.163,False -2,28,2010-10-15,1238.31,65.8,2.72,,,,,,211.4713286,8.163,False -2,28,2010-10-22,1126.37,68.5,2.725,,,,,,211.5187208,8.163,False -2,28,2010-10-29,1603.03,66.24,2.716,,,,,,211.5661131,8.163,False -2,28,2010-11-05,1763.78,57.85,2.689,,,,,,211.6135053,8.163,False -2,28,2010-11-12,1274.71,59.69,2.728,,,,,,211.6608975,8.163,False -2,28,2010-11-19,1308.49,50.81,2.771,,,,,,211.5470304,8.163,False -2,28,2010-11-26,1103.3,62.98,2.735,,,,,,211.4062867,8.163,True -2,28,2010-12-03,1198.05,49.33,2.708,,,,,,211.265543,8.163,False -2,28,2010-12-10,1687.92,45.5,2.843,,,,,,211.1247993,8.163,False -2,28,2010-12-17,1655.36,47.55,2.869,,,,,,211.0645458,8.163,False -2,28,2010-12-24,1323.02,49.97,2.886,,,,,,211.0646599,8.163,False -2,28,2010-12-31,1051.84,47.3,2.943,,,,,,211.064774,8.163,True -2,28,2011-01-07,1048.42,44.69,2.976,,,,,,211.0648881,8.028,False -2,28,2011-01-14,966.87,33.02,2.983,,,,,,211.1176713,8.028,False -2,28,2011-01-21,908.47,41.4,3.016,,,,,,211.4864691,8.028,False -2,28,2011-01-28,1296.23,42.83,3.01,,,,,,211.8552668,8.028,False -2,28,2011-02-04,887.33,38.25,2.989,,,,,,212.2240646,8.028,False -2,28,2011-02-11,1110.96,33.19,3.022,,,,,,212.5928624,8.028,True -2,28,2011-02-18,1006.44,57.83,3.045,,,,,,212.9033115,8.028,False -2,28,2011-02-25,860.9,60.8,3.065,,,,,,213.190421,8.028,False -2,28,2011-03-04,807.25,57.77,3.288,,,,,,213.4775305,8.028,False -2,28,2011-03-11,885.39,52.7,3.459,,,,,,213.7646401,8.028,False -2,28,2011-03-18,712.19,62.32,3.488,,,,,,214.0156238,8.028,False -2,28,2011-03-25,849.37,69.42,3.473,,,,,,214.2521573,8.028,False -2,28,2011-04-01,767.57,55.43,3.524,,,,,,214.4886908,7.931,False -2,28,2011-04-08,560.46,67.0,3.622,,,,,,214.7252242,7.931,False -2,28,2011-04-15,737.34,69.48,3.743,,,,,,214.9420631,7.931,False -2,28,2011-04-22,930.95,69.39,3.807,,,,,,215.1096657,7.931,False -2,28,2011-04-29,885.64,69.21,3.81,,,,,,215.2772683,7.931,False -2,28,2011-05-06,619.05,61.48,3.906,,,,,,215.4448709,7.931,False -2,28,2011-05-13,725.09,74.61,3.899,,,,,,215.6124735,7.931,False -2,28,2011-05-20,731.29,67.14,3.907,,,,,,215.3834778,7.931,False -2,28,2011-05-27,644.51,76.42,3.786,,,,,,215.1544822,7.931,False -2,28,2011-06-03,474.54,83.07,3.699,,,,,,214.9254865,7.931,False -2,28,2011-06-10,547.8,83.4,3.648,,,,,,214.6964908,7.931,False -2,28,2011-06-17,414.11,86.53,3.637,,,,,,214.6513538,7.931,False -2,28,2011-06-24,478.79,85.17,3.594,,,,,,214.7441108,7.931,False -2,28,2011-07-01,326.22,85.69,3.524,,,,,,214.8368678,7.852,False -2,28,2011-07-08,422.34,87.7,3.48,,,,,,214.9296249,7.852,False -2,28,2011-07-15,425.94,89.83,3.575,,,,,,215.0134426,7.852,False -2,28,2011-07-22,371.94,89.34,3.651,,,,,,215.0749122,7.852,False -2,28,2011-07-29,387.34,90.07,3.682,,,,,,215.1363819,7.852,False -2,28,2011-08-05,481.33,93.34,3.684,,,,,,215.1978515,7.852,False -2,28,2011-08-12,387.21,91.58,3.638,,,,,,215.2593211,7.852,False -2,28,2011-08-19,347.38,89.86,3.554,,,,,,215.3229307,7.852,False -2,28,2011-08-26,499.48,90.45,3.523,,,,,,215.386897,7.852,False -2,28,2011-09-02,378.56,89.64,3.533,,,,,,215.4508632,7.852,False -2,28,2011-09-09,437.79,77.97,3.546,,,,,,215.5148295,7.852,True -2,28,2011-09-16,411.07,78.85,3.526,,,,,,215.6944378,7.852,False -2,28,2011-09-23,460.03,75.58,3.467,,,,,,216.0282356,7.852,False -2,28,2011-09-30,614.02,78.14,3.355,,,,,,216.3620333,7.852,False -2,28,2011-10-07,693.87,69.92,3.285,,,,,,216.6958311,7.441,False -2,28,2011-10-14,690.05,71.67,3.274,,,,,,217.0048261,7.441,False -2,28,2011-10-21,994.93,64.53,3.353,,,,,,217.1650042,7.441,False -2,28,2011-10-28,1042.02,65.87,3.372,,,,,,217.3251824,7.441,False -2,28,2011-11-04,1102.4,55.53,3.332,,,,,,217.4853605,7.441,False -2,28,2011-11-11,971.24,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,28,2011-11-18,895.8,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,28,2011-11-25,825.01,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,28,2011-12-02,951.32,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,28,2011-12-09,1195.99,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,28,2011-12-16,1432.18,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,28,2011-12-23,1277.99,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,28,2011-12-30,741.66,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,28,2012-01-06,830.61,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,28,2012-01-13,802.58,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,28,2012-01-20,874.56,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,28,2012-01-27,900.94,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,28,2012-02-03,953.76,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,28,2012-02-10,1212.42,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,28,2012-02-17,1044.08,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,28,2012-02-24,1000.83,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,28,2012-03-02,874.65,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,28,2012-03-09,712.85,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,28,2012-03-16,678.35,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,28,2012-03-23,636.47,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,28,2012-03-30,663.27,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,28,2012-04-06,720.04,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,28,2012-04-13,808.3,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,28,2012-04-20,641.87,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,28,2012-04-27,603.21,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,28,2012-05-04,559.27,76.73,3.749,23731.47,,78.09,7931.42,4443.52,221.3095166,6.891,False -2,28,2012-05-11,491.94,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,28,2012-05-18,624.96,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,28,2012-05-25,466.91,78.19,3.561,10701.32,,1030.53,3595.04,14920.27,221.3828029,6.891,False -2,28,2012-06-01,475.69,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,28,2012-06-08,414.8,78.69,3.452,12162.04,463.6,78.39,3610.78,10877.64,221.3877467,6.891,False -2,28,2012-06-15,489.15,80.56,3.393,8573.41,195.0,0.19,4455.38,5288.61,221.4009901,6.891,False -2,28,2012-06-22,393.1,81.04,3.346,12126.02,314.0,60.99,6058.6,36430.33,221.4411622,6.891,False -2,28,2012-06-29,350.21,86.32,3.286,8495.34,275.8,,1935.16,5686.13,221.4813343,6.891,False -2,28,2012-07-06,441.53,84.2,3.227,12355.5,295.05,100.15,6720.4,5506.53,221.5215064,6.565,False -2,28,2012-07-13,408.98,80.17,3.256,8354.65,342.25,20.53,5674.44,5012.22,221.5616784,6.565,False -2,28,2012-07-20,332.71,83.23,3.311,6961.58,241.2,24.97,3401.36,2453.42,221.5701123,6.565,False -2,28,2012-07-27,328.78,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,28,2012-08-03,524.07,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,28,2012-08-10,443.47,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,28,2012-08-17,427.62,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,28,2012-08-24,403.41,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,28,2012-08-31,422.67,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,28,2012-09-07,389.55,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,28,2012-09-14,372.88,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,28,2012-09-21,498.39,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,28,2012-09-28,522.94,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,28,2012-10-05,736.0,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,28,2012-10-12,734.47,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,28,2012-10-19,783.49,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,28,2012-10-26,1025.47,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,29,2010-02-05,10322.43,40.19,2.572,,,,,,210.7526053,8.324,False -2,29,2010-02-12,10985.98,38.49,2.548,,,,,,210.8979935,8.324,True -2,29,2010-02-19,11228.01,39.69,2.514,,,,,,210.9451605,8.324,False -2,29,2010-02-26,8270.12,46.1,2.561,,,,,,210.9759573,8.324,False -2,29,2010-03-05,8005.81,47.17,2.625,,,,,,211.0067542,8.324,False -2,29,2010-03-12,7376.63,57.56,2.667,,,,,,211.037551,8.324,False -2,29,2010-03-19,6771.7,54.52,2.72,,,,,,210.8733316,8.324,False -2,29,2010-03-26,5590.34,51.26,2.732,,,,,,210.6766095,8.324,False -2,29,2010-04-02,6284.74,63.27,2.719,,,,,,210.4798874,8.2,False -2,29,2010-04-09,5994.42,65.41,2.77,,,,,,210.2831653,8.2,False -2,29,2010-04-16,7228.13,68.07,2.808,,,,,,210.1495463,8.2,False -2,29,2010-04-23,6072.4,65.11,2.795,,,,,,210.1000648,8.2,False -2,29,2010-04-30,6944.53,66.98,2.78,,,,,,210.0505833,8.2,False -2,29,2010-05-07,8430.4,71.28,2.835,,,,,,210.0011018,8.2,False -2,29,2010-05-14,7619.28,73.31,2.854,,,,,,209.9984585,8.2,False -2,29,2010-05-21,7157.78,74.83,2.826,,,,,,210.2768443,8.2,False -2,29,2010-05-28,7100.75,81.13,2.759,,,,,,210.5552301,8.2,False -2,29,2010-06-04,6370.58,81.81,2.705,,,,,,210.833616,8.2,False -2,29,2010-06-11,7403.0,83.4,2.668,,,,,,211.1120018,8.2,False -2,29,2010-06-18,6719.37,85.81,2.637,,,,,,211.1096543,8.2,False -2,29,2010-06-25,6215.0,86.26,2.653,,,,,,210.9950134,8.2,False -2,29,2010-07-02,6780.25,82.74,2.669,,,,,,210.8803726,8.099,False -2,29,2010-07-09,7105.5,82.59,2.642,,,,,,210.7657317,8.099,False -2,29,2010-07-16,6422.5,85.32,2.623,,,,,,210.7577954,8.099,False -2,29,2010-07-23,6306.0,87.66,2.608,,,,,,210.8921319,8.099,False -2,29,2010-07-30,6495.52,83.49,2.64,,,,,,211.0264684,8.099,False -2,29,2010-08-06,7267.94,89.53,2.627,,,,,,211.1608049,8.099,False -2,29,2010-08-13,7546.13,89.05,2.692,,,,,,211.2951413,8.099,False -2,29,2010-08-20,7649.54,88.7,2.664,,,,,,211.2596586,8.099,False -2,29,2010-08-27,7727.05,87.12,2.619,,,,,,211.2241759,8.099,False -2,29,2010-09-03,6722.31,81.83,2.577,,,,,,211.1886931,8.099,False -2,29,2010-09-10,6458.7,79.09,2.565,,,,,,211.1532104,8.099,True -2,29,2010-09-17,7080.17,82.05,2.582,,,,,,211.1806415,8.099,False -2,29,2010-09-24,6783.81,81.79,2.624,,,,,,211.2552578,8.099,False -2,29,2010-10-01,6677.74,69.24,2.603,,,,,,211.3298742,8.163,False -2,29,2010-10-08,6979.49,63.19,2.633,,,,,,211.4044906,8.163,False -2,29,2010-10-15,5534.57,65.8,2.72,,,,,,211.4713286,8.163,False -2,29,2010-10-22,5116.69,68.5,2.725,,,,,,211.5187208,8.163,False -2,29,2010-10-29,5911.44,66.24,2.716,,,,,,211.5661131,8.163,False -2,29,2010-11-05,8128.24,57.85,2.689,,,,,,211.6135053,8.163,False -2,29,2010-11-12,6661.6,59.69,2.728,,,,,,211.6608975,8.163,False -2,29,2010-11-19,7907.6,50.81,2.771,,,,,,211.5470304,8.163,False -2,29,2010-11-26,10613.4,62.98,2.735,,,,,,211.4062867,8.163,True -2,29,2010-12-03,8809.35,49.33,2.708,,,,,,211.265543,8.163,False -2,29,2010-12-10,11948.8,45.5,2.843,,,,,,211.1247993,8.163,False -2,29,2010-12-17,15541.42,47.55,2.869,,,,,,211.0645458,8.163,False -2,29,2010-12-24,22289.92,49.97,2.886,,,,,,211.0646599,8.163,False -2,29,2010-12-31,8216.75,47.3,2.943,,,,,,211.064774,8.163,True -2,29,2011-01-07,6966.65,44.69,2.976,,,,,,211.0648881,8.028,False -2,29,2011-01-14,6338.93,33.02,2.983,,,,,,211.1176713,8.028,False -2,29,2011-01-21,6695.85,41.4,3.016,,,,,,211.4864691,8.028,False -2,29,2011-01-28,6658.28,42.83,3.01,,,,,,211.8552668,8.028,False -2,29,2011-02-04,9633.88,38.25,2.989,,,,,,212.2240646,8.028,False -2,29,2011-02-11,9915.63,33.19,3.022,,,,,,212.5928624,8.028,True -2,29,2011-02-18,10154.55,57.83,3.045,,,,,,212.9033115,8.028,False -2,29,2011-02-25,6353.08,60.8,3.065,,,,,,213.190421,8.028,False -2,29,2011-03-04,7925.45,57.77,3.288,,,,,,213.4775305,8.028,False -2,29,2011-03-11,6547.36,52.7,3.459,,,,,,213.7646401,8.028,False -2,29,2011-03-18,6060.83,62.32,3.488,,,,,,214.0156238,8.028,False -2,29,2011-03-25,6442.17,69.42,3.473,,,,,,214.2521573,8.028,False -2,29,2011-04-01,6076.14,55.43,3.524,,,,,,214.4886908,7.931,False -2,29,2011-04-08,5713.61,67.0,3.622,,,,,,214.7252242,7.931,False -2,29,2011-04-15,5319.36,69.48,3.743,,,,,,214.9420631,7.931,False -2,29,2011-04-22,5480.12,69.39,3.807,,,,,,215.1096657,7.931,False -2,29,2011-04-29,5808.44,69.21,3.81,,,,,,215.2772683,7.931,False -2,29,2011-05-06,6651.07,61.48,3.906,,,,,,215.4448709,7.931,False -2,29,2011-05-13,6961.12,74.61,3.899,,,,,,215.6124735,7.931,False -2,29,2011-05-20,6033.37,67.14,3.907,,,,,,215.3834778,7.931,False -2,29,2011-05-27,5603.69,76.42,3.786,,,,,,215.1544822,7.931,False -2,29,2011-06-03,5881.06,83.07,3.699,,,,,,214.9254865,7.931,False -2,29,2011-06-10,6269.92,83.4,3.648,,,,,,214.6964908,7.931,False -2,29,2011-06-17,6492.88,86.53,3.637,,,,,,214.6513538,7.931,False -2,29,2011-06-24,6382.26,85.17,3.594,,,,,,214.7441108,7.931,False -2,29,2011-07-01,6120.23,85.69,3.524,,,,,,214.8368678,7.852,False -2,29,2011-07-08,5347.12,87.7,3.48,,,,,,214.9296249,7.852,False -2,29,2011-07-15,6463.0,89.83,3.575,,,,,,215.0134426,7.852,False -2,29,2011-07-22,6397.06,89.34,3.651,,,,,,215.0749122,7.852,False -2,29,2011-07-29,5817.4,90.07,3.682,,,,,,215.1363819,7.852,False -2,29,2011-08-05,6399.67,93.34,3.684,,,,,,215.1978515,7.852,False -2,29,2011-08-12,5887.63,91.58,3.638,,,,,,215.2593211,7.852,False -2,29,2011-08-19,7021.74,89.86,3.554,,,,,,215.3229307,7.852,False -2,29,2011-08-26,6584.09,90.45,3.523,,,,,,215.386897,7.852,False -2,29,2011-09-02,5367.12,89.64,3.533,,,,,,215.4508632,7.852,False -2,29,2011-09-09,4490.15,77.97,3.546,,,,,,215.5148295,7.852,True -2,29,2011-09-16,5067.56,78.85,3.526,,,,,,215.6944378,7.852,False -2,29,2011-09-23,5087.59,75.58,3.467,,,,,,216.0282356,7.852,False -2,29,2011-09-30,4687.88,78.14,3.355,,,,,,216.3620333,7.852,False -2,29,2011-10-07,5799.56,69.92,3.285,,,,,,216.6958311,7.441,False -2,29,2011-10-14,4761.01,71.67,3.274,,,,,,217.0048261,7.441,False -2,29,2011-10-21,5884.42,64.53,3.353,,,,,,217.1650042,7.441,False -2,29,2011-10-28,6290.37,65.87,3.372,,,,,,217.3251824,7.441,False -2,29,2011-11-04,7118.21,55.53,3.332,,,,,,217.4853605,7.441,False -2,29,2011-11-11,6768.82,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,29,2011-11-18,6302.9,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,29,2011-11-25,9434.82,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,29,2011-12-02,8355.44,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,29,2011-12-09,12149.61,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,29,2011-12-16,12831.95,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,29,2011-12-23,20028.07,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,29,2011-12-30,10734.87,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,29,2012-01-06,5580.99,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,29,2012-01-13,5811.07,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,29,2012-01-20,5788.55,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,29,2012-01-27,5831.56,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,29,2012-02-03,8768.61,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,29,2012-02-10,9347.61,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,29,2012-02-17,8118.56,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,29,2012-02-24,7069.02,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,29,2012-03-02,7331.7,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,29,2012-03-09,6831.84,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,29,2012-03-16,6268.03,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,29,2012-03-23,6773.52,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,29,2012-03-30,5586.96,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,29,2012-04-06,5232.37,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,29,2012-04-13,6026.64,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,29,2012-04-20,6299.4,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,29,2012-04-27,5806.59,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,29,2012-05-04,6919.72,76.73,3.749,23731.47,,78.09,7931.42,4443.52,221.3095166,6.891,False -2,29,2012-05-11,7292.52,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,29,2012-05-18,7823.38,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,29,2012-05-25,5608.48,78.19,3.561,10701.32,,1030.53,3595.04,14920.27,221.3828029,6.891,False -2,29,2012-06-01,5611.84,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,29,2012-06-08,5742.21,78.69,3.452,12162.04,463.6,78.39,3610.78,10877.64,221.3877467,6.891,False -2,29,2012-06-15,5698.79,80.56,3.393,8573.41,195.0,0.19,4455.38,5288.61,221.4009901,6.891,False -2,29,2012-06-22,5996.08,81.04,3.346,12126.02,314.0,60.99,6058.6,36430.33,221.4411622,6.891,False -2,29,2012-06-29,5614.75,86.32,3.286,8495.34,275.8,,1935.16,5686.13,221.4813343,6.891,False -2,29,2012-07-06,6237.6,84.2,3.227,12355.5,295.05,100.15,6720.4,5506.53,221.5215064,6.565,False -2,29,2012-07-13,6213.81,80.17,3.256,8354.65,342.25,20.53,5674.44,5012.22,221.5616784,6.565,False -2,29,2012-07-20,6314.03,83.23,3.311,6961.58,241.2,24.97,3401.36,2453.42,221.5701123,6.565,False -2,29,2012-07-27,5960.88,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,29,2012-08-03,6938.9,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,29,2012-08-10,5995.86,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,29,2012-08-17,7122.72,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,29,2012-08-24,6967.7,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,29,2012-08-31,6344.88,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,29,2012-09-07,5784.06,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,29,2012-09-14,5171.73,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,29,2012-09-21,5379.34,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,29,2012-09-28,5609.07,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,29,2012-10-05,6221.06,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,29,2012-10-12,5758.86,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,29,2012-10-19,6239.78,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,29,2012-10-26,5563.13,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False -2,30,2010-02-05,6916.0,40.19,2.572,,,,,,210.7526053,8.324,False -2,30,2010-02-12,6753.0,38.49,2.548,,,,,,210.8979935,8.324,True -2,30,2010-02-19,7222.46,39.69,2.514,,,,,,210.9451605,8.324,False -2,30,2010-02-26,5990.5,46.1,2.561,,,,,,210.9759573,8.324,False -2,30,2010-03-05,6943.0,47.17,2.625,,,,,,211.0067542,8.324,False -2,30,2010-03-12,5426.0,57.56,2.667,,,,,,211.037551,8.324,False -2,30,2010-03-19,4662.5,54.52,2.72,,,,,,210.8733316,8.324,False -2,30,2010-03-26,4584.12,51.26,2.732,,,,,,210.6766095,8.324,False -2,30,2010-04-02,6021.38,63.27,2.719,,,,,,210.4798874,8.2,False -2,30,2010-04-09,6369.49,65.41,2.77,,,,,,210.2831653,8.2,False -2,30,2010-04-16,6447.46,68.07,2.808,,,,,,210.1495463,8.2,False -2,30,2010-04-23,5275.48,65.11,2.795,,,,,,210.1000648,8.2,False -2,30,2010-04-30,6086.14,66.98,2.78,,,,,,210.0505833,8.2,False -2,30,2010-05-07,6976.89,71.28,2.835,,,,,,210.0011018,8.2,False -2,30,2010-05-14,6431.2,73.31,2.854,,,,,,209.9984585,8.2,False -2,30,2010-05-21,6427.46,74.83,2.826,,,,,,210.2768443,8.2,False -2,30,2010-05-28,6598.13,81.13,2.759,,,,,,210.5552301,8.2,False -2,30,2010-06-04,6599.96,81.81,2.705,,,,,,210.833616,8.2,False -2,30,2010-06-11,7198.57,83.4,2.668,,,,,,211.1120018,8.2,False -2,30,2010-06-18,6558.09,85.81,2.637,,,,,,211.1096543,8.2,False -2,30,2010-06-25,5361.66,86.26,2.653,,,,,,210.9950134,8.2,False -2,30,2010-07-02,6359.02,82.74,2.669,,,,,,210.8803726,8.099,False -2,30,2010-07-09,5738.14,82.59,2.642,,,,,,210.7657317,8.099,False -2,30,2010-07-16,6338.46,85.32,2.623,,,,,,210.7577954,8.099,False -2,30,2010-07-23,6749.54,87.66,2.608,,,,,,210.8921319,8.099,False -2,30,2010-07-30,5803.08,83.49,2.64,,,,,,211.0264684,8.099,False -2,30,2010-08-06,6340.68,89.53,2.627,,,,,,211.1608049,8.099,False -2,30,2010-08-13,6406.62,89.05,2.692,,,,,,211.2951413,8.099,False -2,30,2010-08-20,7348.44,88.7,2.664,,,,,,211.2596586,8.099,False -2,30,2010-08-27,7495.98,87.12,2.619,,,,,,211.2241759,8.099,False -2,30,2010-09-03,4971.12,81.83,2.577,,,,,,211.1886931,8.099,False -2,30,2010-09-10,4848.94,79.09,2.565,,,,,,211.1532104,8.099,True -2,30,2010-09-17,5200.78,82.05,2.582,,,,,,211.1806415,8.099,False -2,30,2010-09-24,4883.06,81.79,2.624,,,,,,211.2552578,8.099,False -2,30,2010-10-01,5038.1,69.24,2.603,,,,,,211.3298742,8.163,False -2,30,2010-10-08,4648.72,63.19,2.633,,,,,,211.4044906,8.163,False -2,30,2010-10-15,5018.38,65.8,2.72,,,,,,211.4713286,8.163,False -2,30,2010-10-22,4223.54,68.5,2.725,,,,,,211.5187208,8.163,False -2,30,2010-10-29,5305.72,66.24,2.716,,,,,,211.5661131,8.163,False -2,30,2010-11-05,5095.92,57.85,2.689,,,,,,211.6135053,8.163,False -2,30,2010-11-12,4715.8,59.69,2.728,,,,,,211.6608975,8.163,False -2,30,2010-11-19,4038.6,50.81,2.771,,,,,,211.5470304,8.163,False -2,30,2010-11-26,4252.72,62.98,2.735,,,,,,211.4062867,8.163,True -2,30,2010-12-03,3040.18,49.33,2.708,,,,,,211.265543,8.163,False -2,30,2010-12-10,4803.98,45.5,2.843,,,,,,211.1247993,8.163,False -2,30,2010-12-17,4477.22,47.55,2.869,,,,,,211.0645458,8.163,False -2,30,2010-12-24,5837.68,49.97,2.886,,,,,,211.0646599,8.163,False -2,30,2010-12-31,4549.18,47.3,2.943,,,,,,211.064774,8.163,True -2,30,2011-01-07,4711.56,44.69,2.976,,,,,,211.0648881,8.028,False -2,30,2011-01-14,3192.8,33.02,2.983,,,,,,211.1176713,8.028,False -2,30,2011-01-21,4156.76,41.4,3.016,,,,,,211.4864691,8.028,False -2,30,2011-01-28,4956.84,42.83,3.01,,,,,,211.8552668,8.028,False -2,30,2011-02-04,4784.18,38.25,2.989,,,,,,212.2240646,8.028,False -2,30,2011-02-11,6788.78,33.19,3.022,,,,,,212.5928624,8.028,True -2,30,2011-02-18,7558.68,57.83,3.045,,,,,,212.9033115,8.028,False -2,30,2011-02-25,6614.64,60.8,3.065,,,,,,213.190421,8.028,False -2,30,2011-03-04,6864.2,57.77,3.288,,,,,,213.4775305,8.028,False -2,30,2011-03-11,6259.98,52.7,3.459,,,,,,213.7646401,8.028,False -2,30,2011-03-18,6250.3,62.32,3.488,,,,,,214.0156238,8.028,False -2,30,2011-03-25,5034.34,69.42,3.473,,,,,,214.2521573,8.028,False -2,30,2011-04-01,5467.08,55.43,3.524,,,,,,214.4886908,7.931,False -2,30,2011-04-08,4789.64,67.0,3.622,,,,,,214.7252242,7.931,False -2,30,2011-04-15,5017.68,69.48,3.743,,,,,,214.9420631,7.931,False -2,30,2011-04-22,4261.18,69.39,3.807,,,,,,215.1096657,7.931,False -2,30,2011-04-29,4602.22,69.21,3.81,,,,,,215.2772683,7.931,False -2,30,2011-05-06,4575.64,61.48,3.906,,,,,,215.4448709,7.931,False -2,30,2011-05-13,5007.12,74.61,3.899,,,,,,215.6124735,7.931,False -2,30,2011-05-20,4502.62,67.14,3.907,,,,,,215.3834778,7.931,False -2,30,2011-05-27,5668.4,76.42,3.786,,,,,,215.1544822,7.931,False -2,30,2011-06-03,5699.4,83.07,3.699,,,,,,214.9254865,7.931,False -2,30,2011-06-10,5385.08,83.4,3.648,,,,,,214.6964908,7.931,False -2,30,2011-06-17,5228.52,86.53,3.637,,,,,,214.6513538,7.931,False -2,30,2011-06-24,5796.12,85.17,3.594,,,,,,214.7441108,7.931,False -2,30,2011-07-01,5251.54,85.69,3.524,,,,,,214.8368678,7.852,False -2,30,2011-07-08,4241.2,87.7,3.48,,,,,,214.9296249,7.852,False -2,30,2011-07-15,3967.68,89.83,3.575,,,,,,215.0134426,7.852,False -2,30,2011-07-22,5137.06,89.34,3.651,,,,,,215.0749122,7.852,False -2,30,2011-07-29,4943.56,90.07,3.682,,,,,,215.1363819,7.852,False -2,30,2011-08-05,5090.78,93.34,3.684,,,,,,215.1978515,7.852,False -2,30,2011-08-12,4723.06,91.58,3.638,,,,,,215.2593211,7.852,False -2,30,2011-08-19,5236.64,89.86,3.554,,,,,,215.3229307,7.852,False -2,30,2011-08-26,5943.24,90.45,3.523,,,,,,215.386897,7.852,False -2,30,2011-09-02,4150.58,89.64,3.533,,,,,,215.4508632,7.852,False -2,30,2011-09-09,3844.28,77.97,3.546,,,,,,215.5148295,7.852,True -2,30,2011-09-16,3954.26,78.85,3.526,,,,,,215.6944378,7.852,False -2,30,2011-09-23,4248.3,75.58,3.467,,,,,,216.0282356,7.852,False -2,30,2011-09-30,3855.22,78.14,3.355,,,,,,216.3620333,7.852,False -2,30,2011-10-07,4067.22,69.92,3.285,,,,,,216.6958311,7.441,False -2,30,2011-10-14,3890.67,71.67,3.274,,,,,,217.0048261,7.441,False -2,30,2011-10-21,3666.76,64.53,3.353,,,,,,217.1650042,7.441,False -2,30,2011-10-28,4003.14,65.87,3.372,,,,,,217.3251824,7.441,False -2,30,2011-11-04,3218.66,55.53,3.332,,,,,,217.4853605,7.441,False -2,30,2011-11-11,4059.98,59.33,3.297,10797.64,20445.0,443.32,4754.07,4787.16,217.6455387,7.441,False -2,30,2011-11-18,3632.94,62.01,3.308,6490.92,1217.76,152.12,873.82,7656.42,217.8670218,7.441,False -2,30,2011-11-25,3785.8,56.36,3.236,919.71,62.0,77451.26,23.0,1589.43,218.1130269,7.441,True -2,30,2011-12-02,2954.18,48.74,3.172,8010.99,83.47,1897.27,4444.0,28238.93,218.3590319,7.441,False -2,30,2011-12-09,3510.07,41.76,3.158,11472.59,40.0,306.43,4160.55,8899.08,218.605037,7.441,False -2,30,2011-12-16,3625.52,50.13,3.159,4908.83,61.03,341.49,469.8,4744.27,218.8217928,7.441,False -2,30,2011-12-23,4617.33,46.66,3.112,2971.04,15.18,1501.75,88.76,6437.61,218.9995495,7.441,False -2,30,2011-12-30,3698.96,44.57,3.129,8321.44,92523.94,139.53,1515.4,3027.69,219.1773063,7.441,True -2,30,2012-01-06,3424.44,46.75,3.157,5886.72,37454.29,121.16,2388.92,7103.97,219.355063,7.057,False -2,30,2012-01-13,3215.58,45.99,3.261,4414.72,12092.63,98.38,708.18,4245.6,219.5328198,7.057,False -2,30,2012-01-20,3327.42,51.7,3.268,6552.26,4355.69,105.97,1703.1,3376.03,219.6258417,7.057,False -2,30,2012-01-27,3680.4,50.5,3.29,1920.15,1507.56,86.09,43.4,2613.53,219.7188636,7.057,False -2,30,2012-02-03,4907.38,55.21,3.36,75149.79,3818.85,221.4,48159.86,7423.61,219.8118854,7.057,False -2,30,2012-02-10,6147.64,46.98,3.409,13510.89,6674.42,94.07,14114.9,9577.83,219.9049073,7.057,True -2,30,2012-02-17,4742.86,43.82,3.51,13942.54,14273.24,15.76,4927.14,6650.08,220.0651993,7.057,False -2,30,2012-02-24,5207.0,54.63,3.555,13048.36,12059.1,10.2,5299.73,10380.03,220.275944,7.057,False -2,30,2012-03-02,4895.32,58.79,3.63,23901.27,2144.7,9.0,9799.63,4929.53,220.4866886,7.057,False -2,30,2012-03-09,4601.15,57.11,3.669,11784.91,368.32,3.0,2498.17,7746.0,220.6974332,7.057,False -2,30,2012-03-16,5204.5,63.68,3.734,5965.99,230.42,3.0,2650.77,2073.81,220.8498468,7.057,False -2,30,2012-03-23,3828.62,64.01,3.787,6008.98,139.93,6.63,1650.49,5263.08,220.9244858,7.057,False -2,30,2012-03-30,5074.98,66.83,3.845,14369.3,164.77,17.0,1017.31,3470.49,220.9991248,7.057,False -2,30,2012-04-06,4878.73,68.43,3.891,12132.59,1.3,32.58,4874.69,5535.13,221.0737638,6.891,False -2,30,2012-04-13,4295.54,68.08,3.891,8994.04,6573.08,20.21,4162.2,1966.38,221.1484028,6.891,False -2,30,2012-04-20,4874.78,65.69,3.877,7311.02,2236.2,33.53,878.07,4080.32,221.2021074,6.891,False -2,30,2012-04-27,3993.04,67.2,3.814,3076.68,,38.32,108.71,2708.9,221.255812,6.891,False -2,30,2012-05-04,5119.1,76.73,3.749,23731.47,,78.09,7931.42,4443.52,221.3095166,6.891,False -2,30,2012-05-11,4802.32,73.87,3.688,16519.5,,117.38,5131.02,3634.25,221.3632212,6.891,False -2,30,2012-05-18,4767.46,71.27,3.63,9262.12,,42.67,3694.8,4612.01,221.380331,6.891,False -2,30,2012-05-25,4516.12,78.19,3.561,10701.32,,1030.53,3595.04,14920.27,221.3828029,6.891,False -2,30,2012-06-01,4143.94,78.38,3.501,13091.33,21.0,245.37,2993.15,5521.72,221.3852748,6.891,False -2,30,2012-06-08,4726.76,78.69,3.452,12162.04,463.6,78.39,3610.78,10877.64,221.3877467,6.891,False -2,30,2012-06-15,5125.7,80.56,3.393,8573.41,195.0,0.19,4455.38,5288.61,221.4009901,6.891,False -2,30,2012-06-22,5301.21,81.04,3.346,12126.02,314.0,60.99,6058.6,36430.33,221.4411622,6.891,False -2,30,2012-06-29,4257.68,86.32,3.286,8495.34,275.8,,1935.16,5686.13,221.4813343,6.891,False -2,30,2012-07-06,4640.24,84.2,3.227,12355.5,295.05,100.15,6720.4,5506.53,221.5215064,6.565,False -2,30,2012-07-13,4304.14,80.17,3.256,8354.65,342.25,20.53,5674.44,5012.22,221.5616784,6.565,False -2,30,2012-07-20,4692.12,83.23,3.311,6961.58,241.2,24.97,3401.36,2453.42,221.5701123,6.565,False -2,30,2012-07-27,4643.57,86.37,3.407,6999.14,197.72,2.53,6319.33,5007.01,221.5785461,6.565,False -2,30,2012-08-03,3775.38,90.22,3.417,27650.68,164.58,43.02,21801.9,6652.98,221.5869799,6.565,False -2,30,2012-08-10,4691.62,88.55,3.494,5554.54,142.3,13.43,4187.43,5286.19,221.5954138,6.565,False -2,30,2012-08-17,5211.58,84.79,3.571,4774.16,330.78,10.53,4253.28,4927.26,221.6751459,6.565,False -2,30,2012-08-24,5634.34,76.91,3.62,4759.7,211.38,6.62,2972.88,5102.26,221.8083518,6.565,False -2,30,2012-08-31,4510.6,82.64,3.638,17500.26,73.22,21.38,12878.62,4756.5,221.9415576,6.565,False -2,30,2012-09-07,4531.46,87.65,3.73,10658.86,149.28,60.97,2920.9,3275.57,222.0747635,6.565,True -2,30,2012-09-14,3377.26,75.88,3.717,8325.93,,37.32,1808.69,9314.55,222.2174395,6.565,False -2,30,2012-09-21,4357.42,71.09,3.721,6707.94,3.82,15.55,1001.42,7607.94,222.4169362,6.565,False -2,30,2012-09-28,3307.9,79.45,3.666,7106.05,1.91,1.65,1549.1,3946.03,222.6164329,6.565,False -2,30,2012-10-05,3697.52,70.27,3.617,6037.76,,10.04,3027.37,3853.4,222.8159296,6.17,False -2,30,2012-10-12,3085.98,60.97,3.601,2145.5,,33.31,586.83,10421.01,223.0154263,6.17,False -2,30,2012-10-19,4043.06,68.08,3.594,4461.89,,1.14,1579.67,2642.29,223.0598077,6.17,False -2,30,2012-10-26,3869.88,69.79,3.506,6152.59,129.77,200.0,272.29,2924.15,223.0783366,6.17,False diff --git a/docs/build_docs.sh b/docs/build_docs.sh index cab00f657..bbb650472 100755 --- a/docs/build_docs.sh +++ b/docs/build_docs.sh @@ -13,18 +13,21 @@ if [ ! -d venv ]; then fi source venv/bin/activate -# Get current git branch & stash unsaved changes +# Get current git head & stash unsaved changes +GIT_HEAD=$(git rev-parse HEAD) GIT_BRANCH=$(git branch --show-current) if [ -z "${GIT_BRANCH}" ]; then GIT_BRANCH="main" fi +n_stash=$(git stash list | wc -l) git stash # Set up exit handler to restore git state & delete temp branches function exit_handler { - git reset --hard - git checkout "${GIT_BRANCH}" -- - git stash pop || true + git reset --hard && git checkout "${GIT_BRANCH}" -- + if (( n_stash < $(git stash list | wc -l) )); then + git stash pop + fi for version in $(git tag --list 'v[0-9]*'); do branch="${version}_local_docs_only" if git show-ref --verify --quiet "refs/heads/$branch"; then @@ -34,44 +37,47 @@ function exit_handler { } trap exit_handler EXIT -# Clean up build directory and install Sphinx requirements +# Install Sphinx requirements. Get old Merlion docs from gh-pages branch, but only keep the version-tagged ones. pip3 install -r "${DIRNAME}/requirements.txt" +git checkout gh-pages && git pull && git checkout --force "${GIT_HEAD}" sphinx-build -M clean "${DIRNAME}/source" "${DIRNAME}/build" +mkdir -p "${DIRNAME}/build" "${DIRNAME}/build/html" +git --work-tree "${DIRNAME}/build/html" checkout gh-pages . && git reset --hard +python -c \ +"import re; import os; import shutil; +for f in [os.path.join('${DIRNAME}/build/html', f) for f in os.listdir('${DIRNAME}/build/html')]: + if not (os.path.isdir(f) and re.search('v([0-9].)+[0-9]$', f)): + shutil.rmtree(f) if os.path.isdir(f) else os.remove(f)" -# Build API docs for current head -export current_version="latest" -pip3 install ".[all]" -pip3 install ts_datasets/ -sphinx-build -b html "${DIRNAME}/source" "${DIRNAME}/build/html/${current_version}" -W --keep-going -rm -rf "${DIRNAME}/build/html/${current_version}/.doctrees" -pip3 uninstall -y salesforce-merlion -pip3 uninstall -y ts_datasets - -# Install all previous released versions of Merlion/ts_datasets -# and use them to build the appropriate API docs. +# Install all released versions of Merlion/ts_datasets and use them to build the appropriate API docs. # Uninstall after we're done with each one. -versions=() -checkout_files=("${DIRNAME}/source/*.rst" "examples" "merlion" "ts_datasets" "setup.py" "MANIFEST.in") -for version in $(git tag --list 'v[0-9]*'); do - versions+=("$version") - git checkout -b "${version}_local_docs_only" - for f in $(git diff --name-only --diff-filter=A "tags/${version}" "${DIRNAME}/source/*.rst" "examples"); do - git rm "$f" - done - git checkout "tags/${version}" -- "${checkout_files[@]}" - export current_version=${version} - pip3 install ".[all]" - pip3 install ts_datasets/ - sphinx-build -b html "${DIRNAME}/source" "${DIRNAME}/build/html/${current_version}" -W --keep-going - rm -rf "${DIRNAME}/build/html/${current_version}/.doctrees" - pip3 uninstall -y salesforce-merlion - pip3 uninstall -y ts_datasets - git reset --hard - git checkout "${GIT_BRANCH}" -- +versions=("latest") +for v in $(git tag --list 'v[0-9]*'); do + versions+=("$v") +done +docs_files=("${DIRNAME}/source/*.rst" "examples") +checkout_files=("${docs_files[@]}" "merlion" "ts_datasets" "setup.py" "MANIFEST.in") +for version in "${versions[@]}"; do + if [[ ! -d "${DIRNAME}/build/html/${version}" ]]; then + if [[ ${version} != "latest" ]]; then + git checkout -b "${version}_local_docs_only" + for f in $(git diff --name-only --diff-filter=AR "tags/${version}" "${DIRNAME}/source/*.rst" "examples"); do + git rm "$f" + done + git checkout "tags/${version}" -- "${checkout_files[@]}" + fi + export current_version=${version} + pip3 install ".[all]" + pip3 install ts_datasets/ + sphinx-build -b html "${DIRNAME}/source" "${DIRNAME}/build/html/${current_version}" -W --keep-going + rm -rf "${DIRNAME}/build/html/${current_version}/.doctrees" + pip3 uninstall -y salesforce-merlion ts_datasets + git reset --hard && git checkout --force "${GIT_HEAD}" + fi done # Determine the latest stable version if there is one -if (( ${#versions[@]} > 0 )); then +if (( ${#versions[@]} > 1 )); then stable_hash=$(git rev-list --tags --max-count=1) stable_version=$(git describe --tags "$stable_hash") export stable_version diff --git a/docs/source/conf.py b/docs/source/conf.py index e7027b594..328bd0153 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -12,6 +12,7 @@ # from git import Repo import os +import packaging.version import pkg_resources import re import sys @@ -51,11 +52,6 @@ # Add any paths that contain templates here, relative to this directory. templates_path = ["_templates"] -# List of patterns, relative to source directory, that match files and -# directories to ignore when looking for source files. -# This pattern also affects html_static_path and html_extra_path. -exclude_patterns = [] - # -- Options for HTML output ------------------------------------------------- @@ -84,3 +80,14 @@ versions = sorted([tag.name for tag in repo.tags if re.match("v[0-9].*", tag.name)], reverse=True) versions = ["latest", *versions] html_context["versions"] = versions + +else: + current_version = "latest" + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. +# This pattern also affects html_static_path and html_extra_path. +if current_version == "latest" or packaging.version.parse(current_version) > packaging.version.parse("1.3.0"): + exclude_patterns = ["examples"] +else: + exclude_patterns = ["tutorials"] diff --git a/docs/source/index.rst b/docs/source/index.rst index 07acd5375..fead75d27 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -59,9 +59,9 @@ Note the following external dependencies: Getting Started --------------- -To get started, we recommend the linked tutorials on `anomaly detection ` -and `forecasting `. After that, you should read in more detail about Merlion's -main data structure for representing time series `here `. +To get started, we recommend the linked tutorials on `anomaly detection ` +and `forecasting `. After that, you should read in more detail about Merlion's +main data structure for representing time series `here `. .. toctree:: :maxdepth: 2 diff --git a/docs/source/merlion.models.automl.rst b/docs/source/merlion.models.automl.rst index 35ab127e4..c7ac27e54 100644 --- a/docs/source/merlion.models.automl.rst +++ b/docs/source/merlion.models.automl.rst @@ -10,6 +10,7 @@ merlion.models.automl package .. autosummary:: base seasonality + search autoets autoprophet autosarima @@ -25,19 +26,42 @@ merlion.models.automl.base module :undoc-members: :show-inheritance: -merlion.models.automl.autosarima module ------------------------------------------ +merlion.models.automl.seasonality module +---------------------------------------- -.. automodule:: merlion.models.automl.autosarima +.. automodule:: merlion.models.automl.seasonality :members: :undoc-members: :show-inheritance: +merlion.models.automl.search module +----------------------------------- -merlion.models.automl.seasonality module +.. automodule:: merlion.models.automl.search + :members: + :undoc-members: + :show-inheritance: + +merlion.models.automl.autoets module +------------------------------------ + +.. automodule:: merlion.models.automl.autoets + :members: + :undoc-members: + :show-inheritance: + +merlion.models.automl.autoprophet module ---------------------------------------- -.. automodule:: merlion.models.automl.seasonality +.. automodule:: merlion.models.automl.autoprophet + :members: + :undoc-members: + :show-inheritance: + +merlion.models.automl.autosarima module +----------------------------------------- + +.. automodule:: merlion.models.automl.autosarima :members: :undoc-members: :show-inheritance: diff --git a/docs/source/merlion.rst b/docs/source/merlion.rst index bced69942..00fb46b71 100644 --- a/docs/source/merlion.rst +++ b/docs/source/merlion.rst @@ -10,7 +10,7 @@ each associated with its own sub-package: for getting started. - :py:mod:`merlion.models.anomaly`: Anomaly detection models - :py:mod:`merlion.models.anomaly.change_point`: Change point detection models - - :py:mod:`merlion.models.forecast`: Forecasting models + - :py:mod:`merlion.models.forecast`: Forecasting models, including those which support exogenous regressors - :py:mod:`merlion.models.anomaly.forecast_based`: Forecasting models adapted for anomaly detection. Anomaly scores are based on the residual between the predicted and true value at each timestamp. - :py:mod:`merlion.models.ensemble`: Ensembles & automated model selection of models for both anomaly @@ -40,7 +40,7 @@ each associated with its own sub-package: The key classes for input and output are `merlion.utils.time_series.TimeSeries` and `merlion.utils.time_series.UnivariateTimeSeries`. Notably, these classes have transparent inter-operability -with ``pandas.DataFrame`` and ``pandas.Series``, respectively. Check this `tutorial ` +with ``pandas.DataFrame`` and ``pandas.Series``, respectively. Check this `tutorial ` for some examples on how to use these classes, or the API docs linked above for a full list of features. .. automodule:: merlion diff --git a/docs/source/ts_datasets.rst b/docs/source/ts_datasets.rst index 223d14125..af1905f87 100644 --- a/docs/source/ts_datasets.rst +++ b/docs/source/ts_datasets.rst @@ -23,7 +23,7 @@ The core features of general data loaders (e.g. for forecasting) are outlined in are outlined in the API doc for :py:class:`ts_datasets.anomaly.TSADBaseDataset`. The easiest way to load a custom dataset is to use either the :py:class:`ts_datasets.forecast.CustomDataset` or -:py:class:`ts_datasets.anomaly.CustomAnomalyDataset` classes. Please review the `tutorial ` +:py:class:`ts_datasets.anomaly.CustomAnomalyDataset` classes. Please review the `tutorial ` to get started. .. automodule:: ts_datasets diff --git a/docs/source/tutorials b/docs/source/tutorials new file mode 120000 index 000000000..d15735c1d --- /dev/null +++ b/docs/source/tutorials @@ -0,0 +1 @@ +../../examples \ No newline at end of file diff --git a/docs/source/tutorials.rst b/docs/source/tutorials.rst index f9f682d1d..e65e35ed3 100644 --- a/docs/source/tutorials.rst +++ b/docs/source/tutorials.rst @@ -8,8 +8,8 @@ Basics :maxdepth: 2 :glob: - examples/TimeSeries.ipynb - examples/CustomDataset.ipynb + tutorials/TimeSeries.ipynb + tutorials/CustomDataset.ipynb Anomaly Detection ----------------- @@ -17,7 +17,7 @@ Anomaly Detection :maxdepth: 2 :glob: - examples/anomaly/* + tutorials/anomaly/* Forecasting ----------- @@ -25,7 +25,7 @@ Forecasting :maxdepth: 2 :glob: - examples/forecast/* + tutorials/forecast/* Advanced Features ----------------- @@ -33,4 +33,4 @@ Advanced Features :maxdepth: 2 :glob: - examples/advanced/* + tutorials/advanced/* diff --git a/examples/CustomDataset.ipynb b/examples/CustomDataset.ipynb index 33691a873..548990ea0 100644 --- a/examples/CustomDataset.ipynb +++ b/examples/CustomDataset.ipynb @@ -798,11 +798,11 @@ " ...\n", " \n", " \n", - " 8229\n", + " 2855\n", " 2\n", - " 30\n", + " 10\n", " 2012-09-28\n", - " 3307.90\n", + " 37104.67\n", " 79.45\n", " 3.666\n", " 7106.05\n", @@ -815,11 +815,11 @@ " False\n", " \n", " \n", - " 8230\n", + " 2856\n", " 2\n", - " 30\n", + " 10\n", " 2012-10-05\n", - " 3697.52\n", + " 36361.28\n", " 70.27\n", " 3.617\n", " 6037.76\n", @@ -832,11 +832,11 @@ " False\n", " \n", " \n", - " 8231\n", + " 2857\n", " 2\n", - " 30\n", + " 10\n", " 2012-10-12\n", - " 3085.98\n", + " 35332.34\n", " 60.97\n", " 3.601\n", " 2145.50\n", @@ -849,11 +849,11 @@ " False\n", " \n", " \n", - " 8232\n", + " 2858\n", " 2\n", - " 30\n", + " 10\n", " 2012-10-19\n", - " 4043.06\n", + " 35721.09\n", " 68.08\n", " 3.594\n", " 4461.89\n", @@ -866,11 +866,11 @@ " False\n", " \n", " \n", - " 8233\n", + " 2859\n", " 2\n", - " 30\n", + " 10\n", " 2012-10-26\n", - " 3869.88\n", + " 34260.76\n", " 69.79\n", " 3.506\n", " 6152.59\n", @@ -884,7 +884,7 @@ " \n", " \n", "\n", - "

8234 rows × 14 columns

\n", + "

2860 rows × 14 columns

\n", "" ], "text/plain": [ @@ -895,11 +895,11 @@ "3 1 1 2010-02-26 19403.54 46.63 2.561 \n", "4 1 1 2010-03-05 21827.90 46.50 2.625 \n", "... ... ... ... ... ... ... \n", - "8229 2 30 2012-09-28 3307.90 79.45 3.666 \n", - "8230 2 30 2012-10-05 3697.52 70.27 3.617 \n", - "8231 2 30 2012-10-12 3085.98 60.97 3.601 \n", - "8232 2 30 2012-10-19 4043.06 68.08 3.594 \n", - "8233 2 30 2012-10-26 3869.88 69.79 3.506 \n", + "2855 2 10 2012-09-28 37104.67 79.45 3.666 \n", + "2856 2 10 2012-10-05 36361.28 70.27 3.617 \n", + "2857 2 10 2012-10-12 35332.34 60.97 3.601 \n", + "2858 2 10 2012-10-19 35721.09 68.08 3.594 \n", + "2859 2 10 2012-10-26 34260.76 69.79 3.506 \n", "\n", " MarkDown1 MarkDown2 MarkDown3 MarkDown4 MarkDown5 CPI \\\n", "0 NaN NaN NaN NaN NaN 211.096358 \n", @@ -908,11 +908,11 @@ "3 NaN NaN NaN NaN NaN 211.319643 \n", "4 NaN NaN NaN NaN NaN 211.350143 \n", "... ... ... ... ... ... ... \n", - "8229 7106.05 1.91 1.65 1549.10 3946.03 222.616433 \n", - "8230 6037.76 NaN 10.04 3027.37 3853.40 222.815930 \n", - "8231 2145.50 NaN 33.31 586.83 10421.01 223.015426 \n", - "8232 4461.89 NaN 1.14 1579.67 2642.29 223.059808 \n", - "8233 6152.59 129.77 200.00 272.29 2924.15 223.078337 \n", + "2855 7106.05 1.91 1.65 1549.10 3946.03 222.616433 \n", + "2856 6037.76 NaN 10.04 3027.37 3853.40 222.815930 \n", + "2857 2145.50 NaN 33.31 586.83 10421.01 223.015426 \n", + "2858 4461.89 NaN 1.14 1579.67 2642.29 223.059808 \n", + "2859 6152.59 129.77 200.00 272.29 2924.15 223.078337 \n", "\n", " Unemployment IsHoliday \n", "0 8.106 False \n", @@ -921,13 +921,13 @@ "3 8.106 False \n", "4 8.106 False \n", "... ... ... \n", - "8229 6.565 False \n", - "8230 6.170 False \n", - "8231 6.170 False \n", - "8232 6.170 False \n", - "8233 6.170 False \n", + "2855 6.565 False \n", + "2856 6.170 False \n", + "2857 6.170 False \n", + "2858 6.170 False \n", + "2859 6.170 False \n", "\n", - "[8234 rows x 14 columns]" + "[2860 rows x 14 columns]" ] }, "metadata": {}, @@ -973,13 +973,13 @@ "name": "stdout", "output_type": "stream", "text": [ - "There are 58 time series in this dataset.\n" + "There are 20 time series in this dataset.\n" ] } ], "source": [ "print(f\"There are {len(dataset)} time series in this dataset.\")\n", - "time_series, metadata = dataset[52]" + "time_series, metadata = dataset[17]" ] }, { @@ -1047,7 +1047,7 @@ " \n", " \n", " 2010-02-05\n", - " 16827.50\n", + " 69634.80\n", " 40.19\n", " 2.572\n", " NaN\n", @@ -1061,7 +1061,7 @@ " \n", " \n", " 2010-02-12\n", - " 19286.00\n", + " 63393.29\n", " 38.49\n", " 2.548\n", " NaN\n", @@ -1075,7 +1075,7 @@ " \n", " \n", " 2010-02-19\n", - " 17803.75\n", + " 66589.27\n", " 39.69\n", " 2.514\n", " NaN\n", @@ -1089,7 +1089,7 @@ " \n", " \n", " 2010-02-26\n", - " 13153.25\n", + " 61875.48\n", " 46.10\n", " 2.561\n", " NaN\n", @@ -1103,7 +1103,7 @@ " \n", " \n", " 2010-03-05\n", - " 14656.50\n", + " 67041.18\n", " 47.17\n", " 2.625\n", " NaN\n", @@ -1131,7 +1131,7 @@ " \n", " \n", " 2012-09-28\n", - " 11893.45\n", + " 57424.00\n", " 79.45\n", " 3.666\n", " 7106.05\n", @@ -1145,7 +1145,7 @@ " \n", " \n", " 2012-10-05\n", - " 16415.05\n", + " 62955.51\n", " 70.27\n", " 3.617\n", " 6037.76\n", @@ -1159,7 +1159,7 @@ " \n", " \n", " 2012-10-12\n", - " 15992.38\n", + " 63083.63\n", " 60.97\n", " 3.601\n", " 2145.50\n", @@ -1173,7 +1173,7 @@ " \n", " \n", " 2012-10-19\n", - " 13573.30\n", + " 60502.97\n", " 68.08\n", " 3.594\n", " 4461.89\n", @@ -1187,7 +1187,7 @@ " \n", " \n", " 2012-10-26\n", - " 12962.63\n", + " 63992.36\n", " 69.79\n", " 3.506\n", " 6152.59\n", @@ -1207,17 +1207,17 @@ "text/plain": [ " Weekly_Sales Temperature Fuel_Price MarkDown1 MarkDown2 \\\n", "Date \n", - "2010-02-05 16827.50 40.19 2.572 NaN NaN \n", - "2010-02-12 19286.00 38.49 2.548 NaN NaN \n", - "2010-02-19 17803.75 39.69 2.514 NaN NaN \n", - "2010-02-26 13153.25 46.10 2.561 NaN NaN \n", - "2010-03-05 14656.50 47.17 2.625 NaN NaN \n", + "2010-02-05 69634.80 40.19 2.572 NaN NaN \n", + "2010-02-12 63393.29 38.49 2.548 NaN NaN \n", + "2010-02-19 66589.27 39.69 2.514 NaN NaN \n", + "2010-02-26 61875.48 46.10 2.561 NaN NaN \n", + "2010-03-05 67041.18 47.17 2.625 NaN NaN \n", "... ... ... ... ... ... \n", - "2012-09-28 11893.45 79.45 3.666 7106.05 1.91 \n", - "2012-10-05 16415.05 70.27 3.617 6037.76 NaN \n", - "2012-10-12 15992.38 60.97 3.601 2145.50 NaN \n", - "2012-10-19 13573.30 68.08 3.594 4461.89 NaN \n", - "2012-10-26 12962.63 69.79 3.506 6152.59 129.77 \n", + "2012-09-28 57424.00 79.45 3.666 7106.05 1.91 \n", + "2012-10-05 62955.51 70.27 3.617 6037.76 NaN \n", + "2012-10-12 63083.63 60.97 3.601 2145.50 NaN \n", + "2012-10-19 60502.97 68.08 3.594 4461.89 NaN \n", + "2012-10-26 63992.36 69.79 3.506 6152.59 129.77 \n", "\n", " MarkDown3 MarkDown4 MarkDown5 CPI Unemployment \\\n", "Date \n", @@ -1309,31 +1309,31 @@ " 2010-02-05\n", " True\n", " 2\n", - " 25\n", + " 8\n", " \n", " \n", " 2010-02-12\n", " True\n", " 2\n", - " 25\n", + " 8\n", " \n", " \n", " 2010-02-19\n", " True\n", " 2\n", - " 25\n", + " 8\n", " \n", " \n", " 2010-02-26\n", " True\n", " 2\n", - " 25\n", + " 8\n", " \n", " \n", " 2010-03-05\n", " True\n", " 2\n", - " 25\n", + " 8\n", " \n", " \n", " ...\n", @@ -1345,31 +1345,31 @@ " 2012-09-28\n", " False\n", " 2\n", - " 25\n", + " 8\n", " \n", " \n", " 2012-10-05\n", " False\n", " 2\n", - " 25\n", + " 8\n", " \n", " \n", " 2012-10-12\n", " False\n", " 2\n", - " 25\n", + " 8\n", " \n", " \n", " 2012-10-19\n", " False\n", " 2\n", - " 25\n", + " 8\n", " \n", " \n", " 2012-10-26\n", " False\n", " 2\n", - " 25\n", + " 8\n", " \n", " \n", "\n", @@ -1379,17 +1379,17 @@ "text/plain": [ " trainval Store Dept\n", "Date \n", - "2010-02-05 True 2 25\n", - "2010-02-12 True 2 25\n", - "2010-02-19 True 2 25\n", - "2010-02-26 True 2 25\n", - "2010-03-05 True 2 25\n", + "2010-02-05 True 2 8\n", + "2010-02-12 True 2 8\n", + "2010-02-19 True 2 8\n", + "2010-02-26 True 2 8\n", + "2010-03-05 True 2 8\n", "... ... ... ...\n", - "2012-09-28 False 2 25\n", - "2012-10-05 False 2 25\n", - "2012-10-12 False 2 25\n", - "2012-10-19 False 2 25\n", - "2012-10-26 False 2 25\n", + "2012-09-28 False 2 8\n", + "2012-10-05 False 2 8\n", + "2012-10-12 False 2 8\n", + "2012-10-19 False 2 8\n", + "2012-10-26 False 2 8\n", "\n", "[143 rows x 3 columns]" ] @@ -1429,7 +1429,7 @@ " \"data_cols\": [\"Weekly_Sales\"]}'\n", "```\n", "\n", - "Note in the example above, we specify \"data_cols\" as \"Weekly_Sales\". This indicates that we want" + "Note in the example above, we specify \"data_cols\" as \"Weekly_Sales\". This indicates that the only column we are modeling is Weekly_Sales. If you wanted to do multivariate prediction, you could also add \"Temperature\", \"Fuel_Price\", \"CPI\", etc. We treat the first of the data columns as the target univariate whose value you wish to forecast." ] } ], diff --git a/examples/advanced/1_AutoSARIMA_forecasting_tutorial.ipynb b/examples/advanced/1_AutoSARIMA_forecasting_tutorial.ipynb index 0b91b1f21..046d79101 100644 --- a/examples/advanced/1_AutoSARIMA_forecasting_tutorial.ipynb +++ b/examples/advanced/1_AutoSARIMA_forecasting_tutorial.ipynb @@ -8,11 +8,10 @@ "\n", "This notebook provides an advanced example on how to use the Auto Sarima forecasting model.\n", "\n", - "AutoSARIMA runs in 4 settings:\n", + "AutoSARIMA runs in 3 settings:\n", "1. Full AutoSARIMA with approximation \n", "2. Full AutoSARIMA without approximation\n", "3. Partial AutoSARIMA (Predefined AR, MA, Seasonal AR, Seasonal MA hyper-parameters)\n", - "4. Autosarima without enforcing stationarity and invertibility (this is the default setting) \n", "\n", "Example codes are provided for both cases below." ] @@ -33,7 +32,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "100%|██████████| 414/414 [00:00<00:00, 720.35it/s]\n" + "100%|██████████| 414/414 [00:00<00:00, 799.18it/s]\n" ] }, { @@ -92,7 +91,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Train a full AutoSarima model with approximation (suggested)" + "## Train a full AutoSarima model with approximation (suggested, default)" ] }, { @@ -110,12 +109,13 @@ "INFO:merlion.models.automl.autosarima:Seasonal difference order is 1\n", "INFO:merlion.models.automl.autosarima:Difference order is 0\n", "INFO:merlion.models.automl.autosarima:Fitting models using approximations(approx_iter is 1) to speed things up\n", - "INFO:merlion.models.automl.autosarima:Best model: SARIMA(1,0,5)(0,1,2)[24] without constant\n" + "INFO:merlion.models.automl.autosarima:Best model: SARIMA(2,0,2)(0,1,1)[24] without constant\n" ] } ], "source": [ "# Specify the configuration of AutoSarima with approximation\n", + "# By default, approximation is only used if the time series is long enough\n", "#\n", "# p, q, P, Q refer to the AR, MA, seasonal AR, and seasonal MA params, so\n", "# auto_pqPQ=True (default) means select them automatically\n", @@ -129,8 +129,7 @@ "model1 = AutoSarima(config1)\n", "\n", "# Model training\n", - "train_pred, train_err = model1.train(\n", - " train_data, train_config={\"enforce_stationarity\": True,\"enforce_invertibility\": True})" + "train_pred, train_err = model1.train(train_data)" ] }, { @@ -142,7 +141,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Full AutoSarima with approximation sMAPE is 3.4972\n" + "Full AutoSarima with approximation sMAPE is 3.4491\n" ] } ], @@ -162,7 +161,7 @@ "outputs": [ { "data": { - "image/png": "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pNeysrJ4+eWXk15XFIWf/exnQzkcIUQvdUR1yutC+J39qxFaV1/Pb3/7G1RF5exzzubiSy4hLze325QJ0zSp6YjTFNKYk5t4NOZ2u1m2bBnLli0DIBgMsnPnTrZv387//M//UFtby9y5c1m4cCGrVq2SlCwhBPBeveNUHfFGK7fNgsuqUt0eJxQ3mJPjxjGKO/SdnmLR1tZGW1sb559/PgC33norH/nIRzq3f+ADHwBg37597Nq1iyuvvBJILJrLz8+no6OD6urqzqyCk/eKeDzOv//7v/PWW2+hqirV1dXU1dUxd+5cvvGNb3D33Xdz5ZVXcu655w7633H0frUSQoyIiGawozaIy6Zit/TtAm2YJq+99iov/OMFrnj/+zn//PN7VQdUURJF9yOawabqAGl6nLQMo8sNwuPxsHLlSlauXAkkLsg7d+5k27ZtfPWrX+WXv/zloOSdCSHGrtGUd9xXiqKQ5bbSGtXYVBVgQb7njAujzzTTO1p4PB4g8d9nzpw5vPHGG122d3SkngX/3e9+R2NjIxs2bMBmszFz5kwikQgzZ85kw4YNPP/889xzzz1cdNFFfOtb3xrUMY/erydCiGGnGya760MYmH1eNFJXX89DDz3Ejh07+eqdX+XCCy7oc5F8p1Ul22WlJqixobKDqvYoupG6C196ejrnnnsun//851myZAnPPPNMn36XEGL8OZl3nOEcu/N/focViwqbqjpoCMZGeji9kp6ejt/v56233gLgiSee4Lzzzkvab+bMmTQ0NLBhwwYgMUO8e/dufD4fRUVFnSkT0WiUUChEW1sbOTk52Gw2XnvtNY4ePQpAdXU1brebj3zkI3zlK19h69atAHi93m6D7b4au58gIcSgMk2T/U1hWqM62X3I2zNMk1dffZUXX3iB9195Jeedd96AukclOlOp+OwW9jaFOdoaZVa2q8fFK7fddhtf+MIXWL16NX6/v9+/Wwgxdo2FvOPectssWFWF7bUhpmcZTE53jPrFe4888kjnIr0pU6bw8MMPJ+1jt9t58skn+dd//Vfa2trQNI0vfOELzJkzh1/84hd86Utf4rvf/S42m40nnniCm2++mRtuuIElS5awdOlSZs2aBSS6NX/zm99EVVVsNhv/8z//AySqp1199dUUFhYOeJGeYppm6umZMWDhwoU8//zzAzpGQ0PDmKztOJLk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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -181,7 +180,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Train a full AutoSarima model without approximation" + "## Train a full AutoSarima model without approximation (slower)" ] }, { @@ -196,7 +195,7 @@ "INFO:merlion.models.automl.seasonality:Automatically detect the periodicity is [24]\n", "INFO:merlion.models.automl.autosarima:Seasonal difference order is 1\n", "INFO:merlion.models.automl.autosarima:Difference order is 0\n", - "INFO:merlion.models.automl.autosarima:Best model: SARIMA(5,0,1)(2,1,0)[24] without constant\n" + "INFO:merlion.models.automl.autosarima:Best model: SARIMA(2,0,3)(1,1,1)[24] without constant\n" ] } ], @@ -207,8 +206,7 @@ "model2 = AutoSarima(config2)\n", "\n", "# Model training\n", - "train_pred, train_err = model2.train(\n", - " train_data, train_config={\"enforce_stationarity\": True,\"enforce_invertibility\": True})" + "train_pred, train_err = model2.train(train_data)" ] }, { @@ -220,7 +218,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Full AutoSarima without approximation sMAPE is 4.1451\n" + "Full AutoSarima without approximation sMAPE is 3.6991\n" ] } ], @@ -240,7 +238,7 @@ "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAsgAAAGoCAYAAABbtxOxAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAAsTAAALEwEAmpwYAADibElEQVR4nOzdd3hcZ5X48e+904ukUZcs2ZZt2ZZluduxk9iJnUYK6Y1AlgABFthQAixkye5SF0IgwAJZ2JQfJOxCSEJIAmxCCjixkzhxt+Xei3obSdPnlt8fsmXLM2qWxhpJ5/M8fh5r7tw7r8bXc8+897znKKZpmgghhBBCCCEAUEd6AEIIIYQQQqQTCZCFEEIIIYQ4jQTIQgghhBBCnEYCZCGEEEIIIU4jAbIQQgghhBCnkQBZCCGEEEKI00iALIQQKeD1ejl48OBID2PcME2Tj370o2RnZ3PeeeeN9HCEEKOcBMhCiLS2cuVKsrOziUajg9pPURT2798/4Oe/8MILzJ8/n8zMTPLy8rjkkks4dOjQYIfbLRAIMHXq1LPe/2x94xvfwGaz4fV6u/88+OCD53wcg/XrX/+a5cuXn/X+a9eu5dVXX+X48eO89957Az5+WVkZr732GgB1dXVcd911TJgwAUVROHz48FmPRwgxukmALIRIW4cPH2bNmjUoisKLL76YstfZv38/H/7wh3nooYdob2/n0KFD/NM//RMWi2XQx9I0LQUjHJzbb7+dQCDQ/ecrX/nKoPZPh99hsI4cOUJZWRkej+esj6GqKldeeSV/+MMfhnFkQojRSAJkIUTaevLJJ1m2bBkf+chHeOKJJ3psW7lyJY899lj3z6fPEF500UUAzJs3D6/Xy+9//3sAHn30UcrLy8nJyeG6666jtrYWgC1btjBlyhQuvfRSFEUhIyODm2++mUmTJgHw3nvvcf755+Pz+SguLuaee+4hFot1v7aiKDz88MNMnz6d6dOndz92cgb7Ix/5CJ/5zGe46qqr8Hq9XHjhhdTX1/OFL3yB7OxsKioq2Lx5c/fxHnjgAaZNm0ZGRgaVlZX88Y9/HJb388UXX2T27Nn4fD5WrlzJrl27ureVlZXx/e9/n7lz5+LxeNA0jXXr1nHBBRfg8/mYN28eq1ev7n5+a2srH/3oR5kwYQLZ2dnccMMNALS1tfH+97+f/Px8srOzef/738/x48d7/DtNnTqVjIwMpkyZwv/+7/+ya9cuPvWpT/HOO+/g9Xrx+XxJx19bW8t1111HTk4O5eXlPProowA8/vjjfPzjH+/e/+tf//pZvT+FhYV85jOfYcmSJWe1vxBiDDGFECJNTZs2zXz44YfNDRs2mFar1ayvr+/edvHFF5uPPvpo98+/+tWvzAsvvLD7Z8Dct29f98+vv/66mZuba27cuNGMRCLmPffcY65YscI0TdM8cOCA6XA4zC984Qvm3/72N7Ozs7PHODZs2GC+8847ZjweNw8dOmRWVFSYP/7xj3u81mWXXWa2tLSYoVAo4fXvuusuMzc319ywYYMZDofNVatWmWVlZeYTTzxhappm3n///ebKlSu7j/f000+bNTU1pq7r5lNPPWW63W6ztrbWNE3TPHLkiJmVlWUeOXIk6Xv29a9/3fzQhz6U8PiePXtMt9ttvvLKK2YsFjO///3vm9OmTTOj0ahpmqY5efJkc968eebRo0fNUChkHj9+3MzJyTH/8pe/mLqum6+88oqZk5NjNjY2mqZpmldffbV52223ma2trWYsFjNXr15tmqZpNjc3m88++6wZDAbNjo4O85ZbbjGvv/560zRNMxAImBkZGebu3btN0zTN2tpas7q6Oum/XzIrVqwwP/3pT5vhcNjcvHmzmZeXZ77++usD2r+37ZMnTzZfffXVHo/F43ETMA8dOtTneIQQY5cEyEKItLRmzRrTarWaTU1Npmma5syZM80f/ehH3dsHGyB/7GMfM//5n/+5++fOzk7TarV2B0HvvPOOeeutt5p5eXmmw+Ew77rrroRA+aQf//jH5g033NDjtU4Gasle/6677jI//vGPd2/76U9/alZUVHT/vG3bNjMrK6vX92LevHnm888/3+v203396183bTabmZWV1f2npqbG/Na3vmXeeuut3c/Tdd2cMGGC+fe//900za5A8fHHH+/e/sADD5h33nlnj2NfccUV5q9//WuztrbWVBTFbG1t7Xc8mzdvNn0+n2maXQFyVlaW+eyzz3Z/kTipvwD36NGjpqqqZkdHR/dj9913n3nXXXcNaP9f/epXpsVi6fG+ZGVlmYqiSIAshEggKRZCiLT0xBNPcMUVV5CXlwfABz/4wYQ0i8Gora1l8uTJ3T97vV5yc3OpqakBYNmyZTz99NM0NTWxZs0a3nzzTf7jP/4D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\n", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAsgAAAGoCAYAAABbtxOxAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAAsTAAALEwEAmpwYAADhoUlEQVR4nOzdd3hcZ5X48e+dXqVRL5Zs2ZZt2Za7Hbf0npBeqTEBkt2wtIUAWcrSliX82BDIAguBEBJaOnGA9ECq7bi32HJkx029S9Nnbvn9MbZieUa9S+fzPH5Ac+feeTUZ3Xvmvec9RzEMw0AIIYQQQggBgGm0ByCEEEIIIcRYIgGyEEIIIYQQp5AAWQghhBBCiFNIgCyEEEIIIcQpJEAWQgghhBDiFBIgCyGEEEIIcQoJkIUQYhh4PB7ee++90R7GpGEYBrfeeisZGRmcccYZoz0cIcQ4JwGyEGJMO/fcc8nIyCAajfZrP0VROHjwYJ+fv379ehYvXkxaWhrZ2dmcf/75HD58uL/D7RQIBJgxY8aA9x+ob3/721itVjweT+e///f//t+Ij6O/fve733HmmWcOeP8333yTl156iaqqKjZv3tzn45eUlPDyyy8DUFtby1VXXUVhYSGKonDkyJEBj0cIMb5JgCyEGLOOHDnCG2+8gaIoPPPMM8P2OgcPHuSWW27hnnvuob29ncOHD/Nv//ZvmM3mfh9LVdVhGGH/3HzzzQQCgc5/X/nKV/q1/1j4Hfrr6NGjlJSU4Ha7B3wMk8nEpZdeypNPPjmEIxNCjEcSIAshxqyHH36YVatW8fGPf5yHHnqoy7Zzzz2X3/zmN50/nzpDePbZZwOwaNEiPB4Pjz76KAC//vWvKS0tJTMzk6uuuoqamhoAdu7cyfTp07ngggtQFAWv18v111/P1KlTAdi8eTOrV6/G5/NRUFDAZz7zGWKxWOdrK4rCz3/+c2bNmsWsWbM6Hzs5g/3xj3+cT3/601x22WV4PB7Wrl1LXV0dX/jCF8jIyKCsrIwdO3Z0Hu/uu+9m5syZeL1e5s2bx1/+8pcheT+feeYZ5s+fj8/n49xzz2X//v2d20pKSvjhD3/IwoULcbvdqKrKpk2bWLNmDT6fj0WLFvHqq692Pr+lpYVbb72VwsJCMjIyuOaaawBobW3liiuuICcnh4yMDK644gqqqqq6/HeaMWMGXq+X6dOn88c//pH9+/fzr//6r2zcuBGPx4PP50s5/pqaGq666ioyMzMpLS3l17/+NQAPPPAAn/rUpzr3/9a3vjWg9ycvL49Pf/rTrFixYkD7CyEmEEMIIcaomTNnGj//+c+NrVu3GhaLxairq+vcds455xi//vWvO39+8MEHjbVr13b+DBiVlZWdP7/yyitGVlaWsW3bNiMSiRif+cxnjLPOOsswDMM4dOiQYbfbjS984QvGP/7xD8Pv93cZx9atW42NGzca8XjcOHz4sFFWVmbce++9XV7rwgsvNJqbm41QKJT0+uvWrTOysrKMrVu3GuFw2DjvvPOMkpIS46GHHjJUVTW+/vWvG+eee27n8R577DGjurra0DTNeOSRRwyXy2XU1NQYhmEYR48eNdLT042jR4+mfM++9a1vGR/5yEeSHj9w4IDhcrmMF1980YjFYsYPf/hDY+bMmUY0GjUMwzCmTZtmLFq0yDh27JgRCoWMqqoqIzMz0/j73/9uaJpmvPjii0ZmZqbR0NBgGIZhXH755cZNN91ktLS0GLFYzHj11VcNwzCMpqYm44knnjCCwaDR0dFh3HDDDcbVV19tGIZhBAIBw+v1GhUVFYZhGEZNTY2xd+/elP/9UjnrrLOMO+64wwiHw8aOHTuM7Oxs45VXXunT/t1tnzZtmvHSSy91eSwejxuAcfjw4R7HI4SYuCRAFkKMSW+88YZhsViMxsZGwzAMY86cOcaPf/zjzu39DZA/8YlPGF/+8pc7f/b7/YbFYukMgjZu3GjceOONRnZ2tmG3241169YlBcon3XvvvcY111zT5bVOBmqpXn/dunXGpz71qc5t9913n1FWVtb58+7du4309PRu34tFixYZTz/9dLfbT/Wtb33LsFqtRnp6eue/6upq47vf/a5x4403dj5P0zSjsLDQ+Oc//2kYRiJQfOCBBzq333333cZHP/rRLse++OKLjd/97ndGTU2NoSiK0dLS0ut4duzYYfh8PsMwEgFyenq68cQTT3R+kTiptwD32LFjhslkMjo6Ojofu+uuu4x169b1af8HH3zQMJvNXd6X9PR0Q1EUCZCFEEkkxUIIMSY99NBDXHzxxWRnZwPw4Q9/OCnNoj9qamqYNm1a588ej4esrCyqq6sBWLVqFY899hiNjY288cYbvP7663z/+98H4N133+WKK64gPz+ftLQ0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\n", "text/plain": [ "
" ] @@ -303,7 +301,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Partial AutoSarima without approximation sMAPE is 3.1810\n" + "Partial AutoSarima without approximation sMAPE is 3.5288\n" ] } ], @@ -323,7 +321,7 @@ "outputs": [ { "data": { - "image/png": "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xz/+8d7HP/zhDwOwe/dutm3bxiWXXAJANBqloKCA7u5u6urquPLKKwFwOGIbHSORCP/+7//Om2++iclkoq6ujsbGRhYsWMA3v/lNvvOd73DJJZdw5plnjvifcVT/6/ziF7/g/vvvRynFTTfdxNe//nXa2tq47rrrOHjwIGVlZTz22GNkZmailOJrX/sazz//PC6Xi9/+9rcsXbp0NIcnhBimQMSgJxyl2RemJRBFjyo0TeGymMl2mntnSXRDsb89yP72INPTbRR57dKmVQgxYiJRgy0NfiwmDUeKfgl3WEw4LCZ84Sjra3vId1uZmeXAbTv1Chsnm+lNFW63G4htnpw/fz6vv/563OPd3clnwR955BFaWlpYt24dVquVOXPmEAwGmTNnDuvWreNvf/sb3/3udzn33HP513/91xEd86h9impqarj//vt599132bx5M8899xx79+7ljjvu4Pzzz2fPnj2cf/753HHHHQD89a9/Zc+ePezZs4f77ruPL3zhC6M1NCHEKdINRXtAZ39bgLVHull7pJutjT46glG8VhM5LgvZTitOqyluCdFi0sh2WsiwmznaFWbtkS52tvjxhaMDvJoQQpycoRQ7mgOEogrPMILNseK2mclzW+kKRVl3tIddLX4CkYld8SI9PZ2MjAzefPNNAP74xz+yZs2ahOPmzJlDc3Mz69atA2IzxNu3b8fr9VJcXNybMhEKhfD7/XR2dpKbm4vVauXVV1/l0KFDANTV1eFyufj4xz/OLbfcwqZNmwDweDz9BttDNWozyDt27GDFihW9OwnPPvtsnnzySZ5++mleffVVAG644QbOOeccfvKTn/D0009z/fXXo2kaK1eupKOjg/r6egoLC0driEKIIQjqBhvregjqBhaThstqwu0a2iXEbIqVQjKUorknQm1XmDyXlekZdtIn8HKjEGL87GsL0hKIkOMc24oVw+W1m3ErRUNPhNruMDMzHUxPt4977vSpevDBB/nyl7+M3+9nxowZ3H///QnH2Gw2Hn30Uf75n/+Zzs5OdF3nK1/5CvPnz+eBBx7ga1/7Gt///vexWq388Y9/5GMf+xhXX301S5cuZdmyZcydOxeITcJ++9vfxmQyYbVa+eUvfwnAZz7zGS6//HKKior4xz/+Maw/z6jdkSorK/nXf/1XWltbcTqdPP/88yxfvpzGxsbeoLeg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yU967X1frMHaX0opVVlZqZRSqra2Vs2ePbtloctAG+g+O+ett95qs0jv3N+YZVnqy1/+snrssccu7k32ooHur3A4rJYuXap++MMfdtjGwbZIry/77JzOFnR29Prdue5AGKz9pdRH97FQKKSWLl2q1q1b16P32hsGur/OOXHiRJtFeufuYUop9cQTT6g777yz2++rLw10n1mWpe677z715S9/ucM2DqZFep311y9+8Qt1ySWXqEAg0Ok1Vq5c2WqR3pNPPtnq94PlHjZkAmSlmldITpw4UY0fP159+9vfbvn5j3/8Y5WXl6d0XVe5ubnqwQcfbHOuaZrq0ksvVTNmzFDTp09Xd999d8uKx2AwqFauXKkmTJigFixYoI4dO9bu6z/11FNqwoQJasKECepXv/qVUkqpiooKNX/+fDVz5kw1ffp09YUvfEFFo9E+ePfxG4z9pZRSd911l5o6daqaOnXqoKj4cb6B7rPLL79ceb1e5XK5VF5ennr11VeVUkpdffXVLde95557lM/n64N3H7+B7K/f/OY3yjAMNXv27Jb/7dixo9uvP1D6qs82b96s8vLylMfjUenp6WratGndfv3OrjvQBmN/KaXU1772NTVlyhQ1adKkTr+k9beB7q+77rpL5eTkKMMwVF5eXkt1j3vvvVfNmDFDzZw5U33sYx9rFTAPtIHssw0bNihAzZw5s+U+9tJLLymllPrLX/6i8vLylMPhUFlZWeraa6/tox6IT0f9peu6Gj9+fMv7+Na3vtXu+ceOHVMLFixQEyZMUCtXrlShUEgpNfjuYbLVtBBCCCGEEOcZMjnIQgghhBBC9AcJkIUQQgghhDiPBMhCCCGEEEKcRwJkIYQQQgghziMBshBCCCGEEOeRAFkIIYaImpoaioqKKCoqIicnh7y8PIqKikhMTOThhx8e6OYJIcSwIWXehBBiCPrmN79JYmIiX/va1wa6KUIIMezICLIQQgxxb7/9NjfddBPQHDivWrWKJUuWMGbMGP7yl7/w6KOPMnPmTFasWEE0GgVg27ZtXHnllcybN4/rrruO8vLygXwLQggxqEiALIQQw8yxY8dYv349L774Ivfeey9XX301e/bswe1289JLLxGNRvniF7/I2rVr2bZtGw888ADf+MY3BrrZQggxaBgD3QAhhBC96/rrr8dutzNz5kxM02TFihUAzJw5k+LiYg4dOsTevXtZvnw5AKZpkpubO5BNFkKIQUUCZCGEGGacTicANpsNu92Opmkt/x6LxVBKMX36dDZu3DiQzRRCiEFLUiyEEGKEmTx5MlVVVS0BcjQaZd++fQPcKiGEGDwkQBZCiBHG4XCwdu1aHnvsMWbPnk1RUREffPDBQDdLCCEGDSnzJoQQQgghxHlkBFkIIYQQQojzSIAshBBCCCHEeSRAFkIIIYQQ4jwSIAshhBBCCHEeCZCFEEIIIYQ4jwTIQgghhBBCnEcCZCGEEEIIIc7z/wMY9lf1uh/i4AAAAABJRU5ErkJggg==\n", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAsgAAAGoCAYAAABbtxOxAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAAsTAAALEwEAmpwYAADh8klEQVR4nOzdd3hc5ZX48e+906tGvdtyl225G9wohgAJBDAQSN8QSMgm2bCBlA1Jdh+S/LJZsumQsoEQQrIJBAjBbAodQrENuPdeZfUykqbPLb8/xhaWZyRLtspIOp/n8QOauXPn1Xg898z7nvccxTRNEyGEEEIIIQQA6kgPQAghhBBCiGwiAbIQQgghhBCnkABZCCGEEEKIU0iALIQQQgghxCkkQBZCCCGEEOIUEiALIYQQQghxCgmQhRBiCHi9Xg4ePDjSwxg3TNPklltuITc3l/PPP3+khyOEGOUkQBZCZLWVK1eSm5tLPB4f0OMURWH//v39Pn716tXMnz8fv99PQUEBl156KYcOHRrocLuFQiEmT5581o8/W9/4xjew2Wx4vd7uP//93/897OMYqN/85jdccMEFZ/34119/neeff57a2lreeuutfp+/qqqKF154AYD6+nquvfZaysrKUBSFw4cPn/V4hBCjmwTIQoisdfjwYV577TUUReHpp58esufZv38/H/vYx/jBD35AR0cHhw4d4l/+5V+wWCwDPpemaUMwwoH5wAc+QCgU6v7zb//2bwN6fDb8DgN15MgRqqqq8Hg8Z30OVVV5z3vew5/+9KdBHJkQYjSSAFkIkbV++9vfsnTpUj7+8Y/z8MMP97hv5cqV/OpXv+r++dQZwosuugiAefPm4fV6+eMf/wjAAw88wNSpU8nLy+Paa6+lrq4OgM2bNzNp0iTe9a53oSgKPp+P973vfUyYMAGAt956i2XLlhEIBCgtLeVzn/sciUSi+7kVReFnP/sZ06ZNY9q0ad23nZzB/vjHP85nP/tZrrzySrxeLytWrKChoYE77riD3Nxcqqur2bRpU/f57rnnHqZMmYLP52PWrFn8+c9/HpTX8+mnn2b27NkEAgFWrlzJrl27uu+rqqriu9/9LnPnzsXj8aBpGuvWrWP58uUEAgHmzZvHK6+80n18W1sbt9xyC2VlZeTm5nLdddcB0N7eztVXX01hYSG5ublcffXV1NbW9vh7mjx5Mj6fj0mTJvH73/+eXbt28elPf5q1a9fi9XoJBAIZx19XV8e1115LXl4eU6dO5YEHHgDgwQcf5JOf/GT34+++++6zen2Ki4v57Gc/y3nnnXdWjxdCjCGmEEJkqSlTppg/+9nPzPXr15tWq9VsaGjovu/iiy82H3jgge6fH3roIXPFihXdPwPmvn37un9+8cUXzfz8fHPDhg1mLBYzP/e5z5kXXnihaZqmeeDAAdPhcJh33HGH+dJLL5ldXV09xrF+/Xpz7dq1ZjKZNA8dOmRWV1ebP/rRj3o812WXXWa2traakUgk7flvvvlmMz8/31y/fr0ZjUbNSy65xKyqqjIffvhhU9M08+tf/7q5cuXK7vM99thj5vHjx01d181HH33UdLvdZl1dnWmapnnkyBEzJyfHPHLkSMbX7O677zY/8pGPpN2+Z88e0+12m88995yZSCTM7373u+aUKVPMeDxumqZpTpw40Zw3b5559OhRMxKJmLW1tWZeXp7517/+1dR13XzuuefMvLw8s6mpyTRN07zqqqvM97///WZbW5uZSCTMV155xTRN02xpaTGfeOIJMxwOm52dneaNN95orlq1yjRN0wyFQqbP5zN3795tmqZp1tXVmdu3b8/495fJhRdeaH7mM58xo9GouWnTJrOgoMB88cUX+/X43u6fOHGi+fzzz/e4LZlMmoB56NChPscjhBi7JEAWQmSl1157zbRarWZzc7NpmqY5Y8YM84c//GH3/QMNkG+99Vbzy1/+cvfPXV1dptVq7Q6C1q5da950001mQUGB6XA4zJtvvjktUD7pRz/6kXndddf1eK6TgVqm57/55pvNT37yk9333XvvvWZ1dXX3z1u3bjVzcnJ6fS3mzZtnPvXUU73ef6q7777btNlsZk5OTvef48ePm9/61rfMm266qfs4XdfNsrIy8+WXXzZNMxUoPvjgg93333PPPeZHP/rRHue+4oorzN/85jdmXV2dqSiK2dbWdsbxbNq0yQwEAqZppgLknJwc84knnuj+InHSmQLco0ePmqqqmp2dnd233XXXXebNN9/cr8c/9NBDpsVi6fG65OTkmIqiSIAshEgjKRZCiKz08MMPc8UVV1BQUADAhz/84bQ0i4Goq6tj4sSJ3T97vV7y8/M5fvw4AEuXLuWxxx6jubmZ1157jVdffZX//M//BGDv3r1c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x7ve9S7uueceAP7+97+zb98+9u3bx/33389nPvOZoRqaEGKAErrBtsYwLqtCvsuK23buecTWE3l4eS4rzaEkbx3vYkNdF62R5JgsrC+EGFyGabIjyypWnKtU62orxzsTbG+MjNmScKPBkL2jdu3axZIlS3C73VitVi6++GKefPJJVq9ezc033wzAzTffzFNPPQXA6tWr+djHPoaiKCxdupRgMNhdG08IMXJM02RPS5SkkWqnOthURSHHaaXQbSOpm2xpCPNmfYydTWFawklimlwghBDpgjGdroSOd4xVyFEUhQK3jfaYzqb6MNGkfAaOhCGby66pqeHrX/86ra2tuFwu/va3v7F48WIaGxspLS0FoKSkhMbGRgCOHz9OZWVl9+MrKio4fvx497En3X///dx///1Aasmnubn5nMZ5spC16D95zQZmtL9ex7uSHAgmKXBbaI8N/fNZADMW4nAj7NFSM8lum0qhy0KO04LHqmAZI92oBstof48NN3m9Bi4bX7MdLXHimkF7Ivtmjzs7B2ejWHPC4KW2dmblO/DaU7+naZokk8lRl6N8JrquD+n5TdNE1/V+x41DFiDPnDmTr3zlK1xxxRV4PB7mz5+PxdLzW56iKAP+C/7Upz7Fpz71KSCVgzwYOVHZmFeV7eQ1G5jR+noFYxqtXSEml1iHPSg9NX8voRt0JQw64iZKMpXmUeSx4XNYhmRWezQare+xkSKv18Bl02sWTujoXV2U52ZvSbezyUFOOwcQTRocSujMC3jI99gIBoN0dXWRm5s75oLkocpBNk2T9vZ27HY7gUCgf2MZkpGc8IlPfIJPfOITAHzta1+joqKC4uJi6uvrKS0tpb6+nqKiIgDKy8s5duxY92Nra2spLy8fyuEJIfoQ01IdqXx2y5AEx7FYjOaWZhobm2hubqKpqZmmxkbag+1UVVUxadIkpk2dRkVlJXaLBbsrNXtimCahuE5zRANMnBaVYq9tVBbbF0KcnfquBLZxspLksqlYVNjcEGZmkYtin4/29nZaWlpGemiDStf1tInUwWSxWPD5fP0+fkgD5KamJoqKijh69ChPPvkk69at49ChQzz88MPcddddPPzww91dU6699lp++tOf8sEPfpA333yTnJyctPQKIcTwMEyT3c0RwMRpPfsPLN0waGlpobmpiabmJpoa3/lvOBKhsLCAosIi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\n", "text/plain": [ "
" ] @@ -337,84 +335,6 @@ "fig, ax = model3.plot_forecast(time_series=test_data, plot_forecast_uncertainty=True)\n", "plt.show()" ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Train without enforcing stationarity and invertibility (default)" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "INFO:merlion.models.automl.seasonality:Automatically detect the periodicity is [24]\n", - "INFO:merlion.models.automl.autosarima:Seasonal difference order is 1\n", - "INFO:merlion.models.automl.autosarima:Difference order is 0\n", - "INFO:merlion.models.automl.autosarima:Fitting models using approximations(approx_iter is 1) to speed things up\n", - "INFO:merlion.models.automl.autosarima:Best model: SARIMA(1,0,5)(0,1,2)[24] without constant\n" - ] - } - ], - "source": [ - "# Specify the configuration of AutoSarima without enforcing stationarity and invertibility\n", - "config4 = AutoSarimaConfig(approximation=True, maxiter=5)\n", - "model4 = AutoSarima(config4)\n", - "\n", - "# Model training\n", - "train_pred, train_err = model4.train(\n", - " train_data, train_config={\"enforce_stationarity\": False,\"enforce_invertibility\": False})" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "AutoSarima without enforcing stationarity and invertibility sMAPE is 3.4972\n" - ] - } - ], - "source": [ - "# Model forecasting\n", - "forecast4, stderr4 = model4.forecast(len(test_data))\n", - "\n", - "# Model evaluation\n", - "smape4 = ForecastMetric.sMAPE.value(ground_truth=test_data, predict=forecast4)\n", - "print(f\"AutoSarima without enforcing stationarity and invertibility sMAPE is {smape4:.4f}\")" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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pNeysrJ4+eWXk15XFIWf/exnQzkcIUQvdUR1yutC+J39qxFaV1/Pb3/7G1RF5exzzubiSy4hLze325QJ0zSp6YjTFNKYk5t4NOZ2u1m2bBnLli0DIBgMsnPnTrZv387//M//UFtby9y5c1m4cCGrVq2SlCwhBPBeveNUHfFGK7fNgsuqUt0eJxQ3mJPjxjGKO/SdnmLR1tZGW1sb559/PgC33norH/nIRzq3f+ADHwBg37597Nq1iyuvvBJILJrLz8+no6OD6urqzqyCk/eKeDzOv//7v/PWW2+hqirV1dXU1dUxd+5cvvGNb3D33Xdz5ZVXcu655w7633H0frUSQoyIiGawozaIy6Zit/TtAm2YJq+99iov/OMFrnj/+zn//PN7VQdUURJF9yOawabqAGl6nLQMo8sNwuPxsHLlSlauXAkkLsg7d+5k27ZtfPWrX+WXv/zloOSdCSHGrtGUd9xXiqKQ5bbSGtXYVBVgQb7njAujzzTTO1p4PB4g8d9nzpw5vPHGG122d3SkngX/3e9+R2NjIxs2bMBmszFz5kwikQgzZ85kw4YNPP/889xzzz1cdNFFfOtb3xrUMY/erydCiGGnGya760MYmH1eNFJXX89DDz3Ejh07+eqdX+XCCy7oc5F8p1Ul22WlJqixobKDqvYoupG6C196ejrnnnsun//851myZAnPPPNMn36XEGL8OZl3nOEcu/N/focViwqbqjpoCMZGeji9kp6ejt/v56233gLgiSee4Lzzzkvab+bMmTQ0NLBhwwYgMUO8e/dufD4fRUVFnSkT0WiUUChEW1sbOTk52Gw2XnvtNY4ePQpAdXU1brebj3zkI3zlK19h69atAHi93m6D7b4au58gIcSgMk2T/U1hWqM62X3I2zNMk1dffZUXX3iB9195Jeedd96AukclOlOp+OwW9jaFOdoaZVa2q8fFK7fddhtf+MIXWL16NX6/v9+/Wwgxdo2FvOPectssWFWF7bUhpmcZTE53jPrFe4888kjnIr0pU6bw8MMPJ+1jt9t58skn+dd//Vfa2trQNI0vfOELzJkzh1/84hd86Utf4rvf/S42m40nnniCm2++mRtuuIElS5awdOlSZs2aBSS6NX/zm99EVVVsNhv/8z//AySqp1199dUUFhYOeJGeYppm6umZMWDhwoU8//zzAzpGQ0PDmKztOJLk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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "# Visualize the groud truth, actual forecast and confidence interval \n", - "fig, ax = model4.plot_forecast(time_series=test_data, plot_forecast_uncertainty=True)\n", - "plt.show()" - ] } ], "metadata": { diff --git a/examples/forecast/1_ForecastFeatures.ipynb b/examples/forecast/1_ForecastFeatures.ipynb index 6566690a3..672fe4221 100644 --- a/examples/forecast/1_ForecastFeatures.ipynb +++ b/examples/forecast/1_ForecastFeatures.ipynb @@ -883,7 +883,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.0" + "version": "3.9.5" } }, "nbformat": 4, diff --git a/examples/forecast/2_ForecastMultivariate.ipynb b/examples/forecast/2_ForecastMultivariate.ipynb index 1dafb9968..690fa21b6 100644 --- a/examples/forecast/2_ForecastMultivariate.ipynb +++ b/examples/forecast/2_ForecastMultivariate.ipynb @@ -57,13 +57,6 @@ "id": "46593ce3", "metadata": {}, "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "Inferred granularity 0 days 01:00:00\n" - ] - }, { "name": "stdout", "output_type": "stream", @@ -75,6 +68,7 @@ "name": "stderr", "output_type": "stream", "text": [ + "Inferred granularity 0 days 01:00:00\n", "Inferred granularity 0 days 01:00:00\n" ] }, @@ -103,9 +97,8 @@ "name": "stderr", "output_type": "stream", "text": [ - "Inferred granularity 0 days 01:00:00\n", - "Inferred granularity 0 days 01:00:00\n", - "Inferred granularity 0 days 01:00:00\n" + "ForecastEvaluator: 100%|██████████| 31550400/31550400 [01:36<00:00, 328262.84it/s]\n", + "ForecastEvaluator: 100%|██████████| 31550400/31550400 [03:24<00:00, 154110.26it/s]\n" ] } ], @@ -113,6 +106,7 @@ "from merlion.evaluate.forecast import ForecastMetric\n", "from merlion.models.factory import ModelFactory\n", "from merlion.models.ensemble.combine import ModelSelector\n", + "from merlion.transform.resample import TemporalResample\n", "\n", "# Time series is sampled hourly, so max_forecast_steps = 24 means we can predict up to 1 day in the future\n", "target_seq_index = 2\n", @@ -123,7 +117,7 @@ "model2 = ModelFactory.create(\"Arima\", **kwargs)\n", "\n", "# This ModelSelector combiner picks the best model based on sMAPE\n", - "model3 = ModelFactory.create(\"ForecasterEnsemble\", models=[model1, model2],\n", + "model3 = ModelFactory.create(\"ForecasterEnsemble\", models=[model1, model2], transform=TemporalResample(),\n", " combiner=ModelSelector(metric=ForecastMetric.sMAPE))\n", "for model in [model1, model2, model3]:\n", " print(f\"Training {type(model).__name__}...\")\n", @@ -150,16 +144,16 @@ "output_type": "stream", "text": [ "DefaultForecaster\n", - "RMSE: 6.6216\n", - "sMAPE: 121.1709\n", + "RMSE: 7.5235\n", + "sMAPE: 132.8147\n", "\n", "Arima\n", "RMSE: 10.2208\n", - "sMAPE: 140.2772\n", + "sMAPE: 140.2771\n", "\n", "ForecasterEnsemble\n", - "RMSE: 6.6216\n", - "sMAPE: 121.1709\n", + "RMSE: 7.5235\n", + "sMAPE: 132.8147\n", "\n" ] } @@ -167,13 +161,10 @@ "source": [ "from merlion.evaluate.forecast import ForecastMetric\n", "\n", - "target_univariate = test_data.univariates[test_data.names[target_seq_index]]\n", - "target = target_univariate[:max_forecast_steps].to_ts()\n", - "\n", "for model in [model1, model2, model3]:\n", - " forecast, stderr = model.forecast(target.time_stamps)\n", - " rmse = ForecastMetric.RMSE.value(ground_truth=target, predict=forecast)\n", - " smape = ForecastMetric.sMAPE.value(ground_truth=target, predict=forecast)\n", + " forecast, stderr = model.forecast(test_data.time_stamps[:max_forecast_steps])\n", + " rmse = ForecastMetric.RMSE.value(ground_truth=test_data, predict=forecast, target_seq_index=target_seq_index)\n", + " smape = ForecastMetric.sMAPE.value(ground_truth=test_data, predict=forecast, target_seq_index=target_seq_index)\n", " print(f\"{type(model).__name__}\")\n", " print(f\"RMSE: {rmse:.4f}\")\n", " print(f\"sMAPE: {smape:.4f}\")\n", @@ -212,7 +203,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "ForecastEvaluator: 100%|██████████| 31528800/31528800 [01:04<00:00, 491549.47it/s]\n", + "ForecastEvaluator: 100%|██████████| 31528800/31528800 [02:03<00:00, 255804.57it/s]\n", "Inferred granularity 0 days 01:00:00\n" ] }, @@ -230,7 +221,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "ForecastEvaluator: 100%|██████████| 31528800/31528800 [02:24<00:00, 218558.84it/s]" + "ForecastEvaluator: 100%|██████████| 31528800/31528800 [04:19<00:00, 121688.66it/s]\n" ] }, { @@ -238,14 +229,7 @@ "output_type": "stream", "text": [ "RMSE: 13.1032\n", - "sMAPE: 112.2607\n", - "\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ + "sMAPE: 112.2604\n", "\n" ] } diff --git a/examples/forecast/3_ForecastExogenous.ipynb b/examples/forecast/3_ForecastExogenous.ipynb new file mode 100644 index 000000000..4c3dacaa9 --- /dev/null +++ b/examples/forecast/3_ForecastExogenous.ipynb @@ -0,0 +1,612 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "42a0f481", + "metadata": {}, + "source": [ + "# Forecasting With Exogenous Regressors\n", + "Consider a multivariate time series $X^{(1)}, \\ldots, X^{(t)}$, where each $X^{(i)} \\in \\mathbb{R}^d$ is a d-dimensional vector. In multivariate forecasting, our goal is to predict the future values of the k'th univariate $X_k^{(t+1)}, \\ldots, X_k^{(t+h)}$. \n", + "\n", + "Exogenous regressors $Y^{(i)}$ are a set of additional variables whose values we know a priori. The task of forecasting with exogenous regressors is to predict our target univariate $X_k^{(t+1)}, \\ldots, X_k^{(t+h)}$, conditioned on\n", + "- The past values of the time series $X^{(1)}, \\ldots, X^{(t)}$\n", + "- The past values of the exogenous regressors $Y^{(1)}, \\ldots, Y^{(t)}$\n", + "- The *future* values of the exogenous regressors $Y^{(t+1)}, \\ldots, Y^{(t+h)}$\n", + "\n", + "For example, one can consider the task of predicting the sales of a specific item at a store. Endogenous variables $X^{(i)} \\in \\mathbb{R}^4$ may contain the number of units sold (the target univariate), the temperature outside, the consumer price index, and the current unemployemnt rate. Exogenous variables $Y^{(i)} \\in \\mathbb{R}^6$ are variables that the store has control over or prior knowledge of. They may include whether a particular day is a holiday, and various information about the sort of markdowns the store is running.\n", + "\n", + "To be more concrete, let's show this with some real data." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "509b77ea", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
Weekly_SalesTemperatureFuel_PriceMarkDown1MarkDown2MarkDown3MarkDown4MarkDown5CPIUnemploymentIsHoliday
Date
2010-02-0524924.5042.312.572NaNNaNNaNNaNNaN211.0963588.106False
2010-02-1246039.4938.512.548NaNNaNNaNNaNNaN211.2421708.106True
2010-02-1941595.5539.932.514NaNNaNNaNNaNNaN211.2891438.106False
2010-02-2619403.5446.632.561NaNNaNNaNNaNNaN211.3196438.106False
2010-03-0521827.9046.502.625NaNNaNNaNNaNNaN211.3501438.106False
....................................
2012-09-2818947.8176.083.6663666.277.641.651417.964744.28222.9816586.908False
2012-10-0521904.4768.553.6178077.89NaN18.223617.433626.14223.1814776.573False
2012-10-1222764.0162.993.6012086.18NaN8.11602.365926.45223.3812966.573False
2012-10-1924185.2767.973.594950.33NaN4.9380.252312.85223.4257236.573False
2012-10-2627390.8169.163.5062585.8531.756.001057.161305.01223.4442516.573False
\n", + "

143 rows × 11 columns

\n", + "
" + ], + "text/plain": [ + " Weekly_Sales Temperature Fuel_Price MarkDown1 MarkDown2 \\\n", + "Date \n", + "2010-02-05 24924.50 42.31 2.572 NaN NaN \n", + "2010-02-12 46039.49 38.51 2.548 NaN NaN \n", + "2010-02-19 41595.55 39.93 2.514 NaN NaN \n", + "2010-02-26 19403.54 46.63 2.561 NaN NaN \n", + "2010-03-05 21827.90 46.50 2.625 NaN NaN \n", + "... ... ... ... ... ... \n", + "2012-09-28 18947.81 76.08 3.666 3666.27 7.64 \n", + "2012-10-05 21904.47 68.55 3.617 8077.89 NaN \n", + "2012-10-12 22764.01 62.99 3.601 2086.18 NaN \n", + "2012-10-19 24185.27 67.97 3.594 950.33 NaN \n", + "2012-10-26 27390.81 69.16 3.506 2585.85 31.75 \n", + "\n", + " MarkDown3 MarkDown4 MarkDown5 CPI Unemployment \\\n", + "Date \n", + "2010-02-05 NaN NaN NaN 211.096358 8.106 \n", + "2010-02-12 NaN NaN NaN 211.242170 8.106 \n", + "2010-02-19 NaN NaN NaN 211.289143 8.106 \n", + "2010-02-26 NaN NaN NaN 211.319643 8.106 \n", + "2010-03-05 NaN NaN NaN 211.350143 8.106 \n", + "... ... ... ... ... ... \n", + "2012-09-28 1.65 1417.96 4744.28 222.981658 6.908 \n", + "2012-10-05 18.22 3617.43 3626.14 223.181477 6.573 \n", + "2012-10-12 8.11 602.36 5926.45 223.381296 6.573 \n", + "2012-10-19 4.93 80.25 2312.85 223.425723 6.573 \n", + "2012-10-26 6.00 1057.16 1305.01 223.444251 6.573 \n", + "\n", + " IsHoliday \n", + "Date \n", + "2010-02-05 False \n", + "2010-02-12 True \n", + "2010-02-19 False \n", + "2010-02-26 False \n", + "2010-03-05 False \n", + "... ... \n", + "2012-09-28 False \n", + "2012-10-05 False \n", + "2012-10-12 False \n", + "2012-10-19 False \n", + "2012-10-26 False \n", + "\n", + "[143 rows x 11 columns]" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# This is the same dataset used in the custom dataset tutorial\n", + "import os\n", + "from ts_datasets.forecast import CustomDataset\n", + "csv = os.path.join(\"..\", \"..\", \"data\", \"walmart\", \"walmart_mini.csv\")\n", + "dataset = CustomDataset(rootdir=csv, index_cols=[\"Store\", \"Dept\"], test_frac=0.10)\n", + "ts, md = dataset[0]\n", + "display(ts)" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "f2ea8bed", + "metadata": {}, + "outputs": [], + "source": [ + "from merlion.utils import TimeSeries\n", + "\n", + "# Get the endogenous variables X and split them into train & test\n", + "endog = ts[[\"Weekly_Sales\", \"Temperature\", \"CPI\", \"Unemployment\"]]\n", + "train = TimeSeries.from_pd(endog[md.trainval])\n", + "test = TimeSeries.from_pd(endog[~md.trainval])\n", + "\n", + "# Get the exogenous variables Y\n", + "exog = TimeSeries.from_pd(ts[[\"IsHoliday\", \"MarkDown1\", \"MarkDown2\", \"MarkDown3\", \"MarkDown4\", \"MarkDown5\"]])" + ] + }, + { + "cell_type": "markdown", + "id": "1b01c639", + "metadata": {}, + "source": [ + "Here, our task is to predict the weekly sales. We would like our model to also account for variables which may have an impact on consumer demand (i.e. temperature, consumer price index, and unemployment), as knowledge of these variables could improve the quality of our sales forecast. This would be a multivariate forecasting problem, covered [here](2_ForecastMultivariate.ipynb).\n", + "\n", + "In principle, we could add markdowns and holidays to the multivariate model. However, as a retailer, we know a priori which days are holidays, and we ourselves control the markdowns. In many cases, we can get better forecasts by providing the future values of these variables in addition to the past values. Moreover, we may wish to model how changing the future markdowns would change the future sales. This is why we should model these variables as exogenous regressors instead. \n", + "\n", + "All Merlion forecasters support an API which accepts exogenous regressors at both training and inference time, though only some models actually support the feature. Using the feature is as easy as specifying an optional argument `exog_data` to both `train()` and `forecast()`. We show how to use the feature for the popular `Prophet` model below, and demonstrate that adding exogenous regressors can improve the quality of the forecast." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "36f106f6", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "12:31:47 - cmdstanpy - INFO - Chain [1] start processing\n", + "12:31:47 - cmdstanpy - INFO - Chain [1] done processing\n", + "12:31:48 - cmdstanpy - INFO - Chain [1] start processing\n", + "12:31:48 - cmdstanpy - INFO - Chain [1] done processing\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "sMAPE (w/o exog) = 8.21\n", + "sMAPE (w/ exog) = 7.67\n" + ] + } + ], + "source": [ + "from merlion.evaluate.forecast import ForecastMetric\n", + "from merlion.models.forecast.prophet import Prophet, ProphetConfig\n", + "\n", + "# Train a model without exogenous data\n", + "model = Prophet(ProphetConfig(target_seq_index=0))\n", + "model.train(train)\n", + "pred, err = model.forecast(test.time_stamps)\n", + "smape = ForecastMetric.sMAPE.value(test, pred, target_seq_index=model.target_seq_index)\n", + "print(f\"sMAPE (w/o exog) = {smape:.2f}\")\n", + "\n", + "# Train a model with exogenous data\n", + "exog_model = Prophet(ProphetConfig(target_seq_index=0))\n", + "exog_model.train(train, exog_data=exog)\n", + "exog_pred, exog_err = exog_model.forecast(test.time_stamps, exog_data=exog)\n", + "exog_smape = ForecastMetric.sMAPE.value(test, exog_pred, target_seq_index=exog_model.target_seq_index)\n", + "print(f\"sMAPE (w/ exog) = {exog_smape:.2f}\")" + ] + }, + { + "cell_type": "markdown", + "id": "39749b73", + "metadata": {}, + "source": [ + "Before we wrap up this tutorial, we note that the exogenous variables contain a lot of missing data:" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "5f2690f8", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
IsHolidayMarkDown1MarkDown2MarkDown3MarkDown4MarkDown5
time
2010-02-050.0NaNNaNNaNNaNNaN
2010-02-121.0NaNNaNNaNNaNNaN
2010-02-190.0NaNNaNNaNNaNNaN
2010-02-260.0NaNNaNNaNNaNNaN
2010-03-050.0NaNNaNNaNNaNNaN
.....................
2012-09-280.03666.277.641.651417.964744.28
2012-10-050.08077.89NaN18.223617.433626.14
2012-10-120.02086.18NaN8.11602.365926.45
2012-10-190.0950.33NaN4.9380.252312.85
2012-10-260.02585.8531.756.001057.161305.01
\n", + "

143 rows × 6 columns

\n", + "
" + ], + "text/plain": [ + " IsHoliday MarkDown1 MarkDown2 MarkDown3 MarkDown4 MarkDown5\n", + "time \n", + "2010-02-05 0.0 NaN NaN NaN NaN NaN\n", + "2010-02-12 1.0 NaN NaN NaN NaN NaN\n", + "2010-02-19 0.0 NaN NaN NaN NaN NaN\n", + "2010-02-26 0.0 NaN NaN NaN NaN NaN\n", + "2010-03-05 0.0 NaN NaN NaN NaN NaN\n", + "... ... ... ... ... ... ...\n", + "2012-09-28 0.0 3666.27 7.64 1.65 1417.96 4744.28\n", + "2012-10-05 0.0 8077.89 NaN 18.22 3617.43 3626.14\n", + "2012-10-12 0.0 2086.18 NaN 8.11 602.36 5926.45\n", + "2012-10-19 0.0 950.33 NaN 4.93 80.25 2312.85\n", + "2012-10-26 0.0 2585.85 31.75 6.00 1057.16 1305.01\n", + "\n", + "[143 rows x 6 columns]" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "display(exog.to_pd())" + ] + }, + { + "cell_type": "markdown", + "id": "b3c44fa9", + "metadata": {}, + "source": [ + "Behind the scenes, Merlion models will apply an optional `exog_transform` to the exogenous variables, and they will then resample the exogenous variables to the same timestamps as the endogenous variables. This resampling is achieved using the `exog_missing_value_policy` and `exog_aggregation_policy`, which can be specified in the config of any model which accepts exogenous regressors. We can see the default values for each of these parameters by inspecting the config:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "f5a3707e", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Default exog_transform: Identity()\n", + "Default exog_missing_value_policy: MissingValuePolicy.ZFill\n", + "Default exog_aggregation_policy: AggregationPolicy.Mean\n" + ] + } + ], + "source": [ + "print(f\"Default exog_transform: {exog_model.config.exog_transform}\")\n", + "print(f\"Default exog_missing_value_policy: {exog_model.config.exog_missing_value_policy}\")\n", + "print(f\"Default exog_aggregation_policy: {exog_model.config.exog_aggregation_policy}\")" + ] + }, + { + "cell_type": "markdown", + "id": "25b42747", + "metadata": {}, + "source": [ + "So in this case, we first apply the identity transform to the exogenous data. Then, we impute missing values by filling them with zeros (`ZFill`), and we downsample the exogenous data by taking the `Mean` of any relevant windows." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.5" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/examples/forecast/3_ForecastNewModel.ipynb b/examples/forecast/4_ForecastNewModel.ipynb similarity index 100% rename from examples/forecast/3_ForecastNewModel.ipynb rename to examples/forecast/4_ForecastNewModel.ipynb diff --git a/merlion/evaluate/anomaly.py b/merlion/evaluate/anomaly.py index bb61f0345..a5da0603b 100644 --- a/merlion/evaluate/anomaly.py +++ b/merlion/evaluate/anomaly.py @@ -17,6 +17,7 @@ from merlion.evaluate.base import EvaluatorBase, EvaluatorConfig from merlion.utils import TimeSeries, UnivariateTimeSeries +from merlion.utils.misc import call_with_accepted_kwargs def scaled_sigmoid(x, scale=2.5): @@ -391,8 +392,11 @@ def max_early_sec(self): def max_delay_sec(self): return self.config.max_delay_sec - def _call_model(self, time_series: TimeSeries, time_series_prev: TimeSeries) -> TimeSeries: - return self.model.get_anomaly_score(time_series, time_series_prev) + def _call_model( + self, time_series: TimeSeries, time_series_prev: TimeSeries, exog_data: TimeSeries = None + ) -> TimeSeries: + kwargs = dict(time_series=time_series, time_series_prev=time_series_prev, exog_data=exog_data) + return call_with_accepted_kwargs(self.model.get_anomaly_score, **kwargs) def default_retrain_kwargs(self) -> dict: from merlion.models.ensemble.anomaly import DetectorEnsemble, DetectorEnsembleTrainConfig @@ -407,6 +411,7 @@ def get_predict( self, train_vals: TimeSeries, test_vals: TimeSeries, + exog_data: TimeSeries = None, train_kwargs: dict = None, retrain_kwargs: dict = None, post_process=True, @@ -419,6 +424,7 @@ def get_predict( :param train_vals: initial training data :param test_vals: all data where we want to get the model's predictions and compare it to the ground truth + :param exog_data: any exogenous data (only used for some models) :param train_kwargs: dict of keyword arguments we want to use for the initial training process. Typically, you will want to provide the key "anomaly_labels" here, if you have training data with labeled @@ -435,11 +441,15 @@ def get_predict( `TimeSeries` of the model's anomaly scores on ``test_vals``. """ train_result, result = super().get_predict( - train_vals=train_vals, test_vals=test_vals, train_kwargs=train_kwargs, retrain_kwargs=retrain_kwargs + train_vals=train_vals, + test_vals=test_vals, + exog_data=exog_data, + train_kwargs=train_kwargs, + retrain_kwargs=retrain_kwargs, ) if post_process: train_result = self.model.post_rule(train_result) - result = self.model.post_rule(result) + result = None if result is None else self.model.post_rule(result) return train_result, result def evaluate( diff --git a/merlion/evaluate/base.py b/merlion/evaluate/base.py index a51779001..4fc53a88a 100644 --- a/merlion/evaluate/base.py +++ b/merlion/evaluate/base.py @@ -16,6 +16,7 @@ from tqdm import tqdm from merlion.models.base import ModelBase +from merlion.models.forecast.base import ForecasterBase from merlion.utils.misc import AutodocABCMeta from merlion.utils.resample import granularity_str_to_seconds from merlion.utils.time_series import TimeSeries @@ -122,7 +123,9 @@ def horizon(self): return self.config.horizon @abstractmethod - def _call_model(self, time_series: TimeSeries, time_series_prev: TimeSeries) -> TimeSeries: + def _call_model( + self, time_series: TimeSeries, time_series_prev: TimeSeries, exog_data: TimeSeries = None + ) -> TimeSeries: raise NotImplementedError def _train_model(self, train_vals: TimeSeries, **train_kwargs) -> TimeSeries: @@ -147,9 +150,9 @@ def get_predict( self, train_vals: TimeSeries, test_vals: TimeSeries, + exog_data: TimeSeries = None, train_kwargs: dict = None, retrain_kwargs: dict = None, - pretrained: bool = False, ) -> Tuple[Any, Union[TimeSeries, List[TimeSeries]]]: """ Initialize the model by training it on an initial set of train data. @@ -158,28 +161,30 @@ def get_predict( :param train_vals: initial training data :param test_vals: all data where we want to get the model's predictions and compare it to the ground truth + :param exog_data: any exogenous data (only used for some models) :param train_kwargs: dict of keyword arguments we want to use for the initial training process :param retrain_kwargs: dict of keyword arguments we want to use for all subsequent retrainings - :param pretrained: whether the model has already been trained :return: ``(train_result, result)``. ``train_result`` is the output of training the model on ``train_vals`` (``None`` if ``pretrained`` is ``True``). ``result`` is the model's predictions on ``test_vals``, and is specific to each evaluation task. """ - # Initially the model w/ appropriate train kwargs + # Determine the appropriate training/retraining kwargs train_kwargs = {} if train_kwargs is None else train_kwargs full_train_kwargs = self.default_train_kwargs() full_train_kwargs.update(train_kwargs) - if not pretrained: - self.model.reset() - train_result = self._train_model(train_vals, **full_train_kwargs) - else: - train_result = None - - # Determine the appropriate kwargs for re-training retrain_kwargs = {} if retrain_kwargs is None else retrain_kwargs full_retrain_kwargs = self.default_retrain_kwargs() full_retrain_kwargs.update(retrain_kwargs) + if isinstance(self.model, ForecasterBase): + full_train_kwargs.update(exog_data=exog_data) + full_retrain_kwargs.update(exog_data=exog_data) + + # Train the initial model (if not pretrained) + self.model.reset() + train_result = self._train_model(train_vals, **full_train_kwargs) + if test_vals is None: + return train_result, None # We will incrementally build up the final result window-by-window, # where each window is a time series. t_next is the next time we will @@ -217,7 +222,7 @@ def get_predict( # Add this result if there is any result to add if not cur_test.is_empty(): - cur_result = self._call_model(cur_test, cur_train) + cur_result = self._call_model(time_series=cur_test, time_series_prev=cur_train, exog_data=exog_data) result.append(cur_result) # Move to the next eval window based on the cadence. diff --git a/merlion/evaluate/forecast.py b/merlion/evaluate/forecast.py index 9cd2c1ca6..09f2ab0ef 100644 --- a/merlion/evaluate/forecast.py +++ b/merlion/evaluate/forecast.py @@ -365,14 +365,20 @@ def cadence(self): return self.config.cadence def _call_model( - self, time_series: TimeSeries, time_series_prev: TimeSeries, return_err: bool = False + self, + time_series: TimeSeries, + time_series_prev: TimeSeries, + exog_data: TimeSeries = None, + return_err: bool = False, ) -> Union[Tuple[TimeSeries, TimeSeries], TimeSeries]: if self.model.target_seq_index is not None: name = time_series.names[self.model.target_seq_index] time_stamps = time_series.univariates[name].time_stamps else: time_stamps = time_series.time_stamps - forecast, err = self.model.forecast(time_stamps, time_series_prev) + forecast, err = self.model.forecast( + time_stamps=time_stamps, time_series_prev=time_series_prev, exog_data=exog_data + ) return (forecast, err) if return_err else forecast def evaluate( diff --git a/merlion/models/anomaly/autoencoder.py b/merlion/models/anomaly/autoencoder.py index 6bc8e9a2d..a83aeedc0 100644 --- a/merlion/models/anomaly/autoencoder.py +++ b/merlion/models/anomaly/autoencoder.py @@ -23,12 +23,11 @@ import numpy as np import pandas as pd -from merlion.utils import UnivariateTimeSeries, TimeSeries from merlion.models.base import NormalizingConfig from merlion.models.anomaly.base import DetectorBase, DetectorConfig from merlion.post_process.threshold import AggregateAlarms from merlion.utils.misc import ProgressBar, initializer -from merlion.models.anomaly.utils import InputData, batch_detect +from merlion.models.utils.torch_utils import InputData, batch_detect class AutoEncoderConfig(DetectorConfig, NormalizingConfig): diff --git a/merlion/models/anomaly/base.py b/merlion/models/anomaly/base.py index f3621e9da..7b181d4ac 100644 --- a/merlion/models/anomaly/base.py +++ b/merlion/models/anomaly/base.py @@ -23,6 +23,7 @@ from merlion.post_process.sequence import PostRuleSequence from merlion.post_process.threshold import AggregateAlarms, Threshold from merlion.utils import TimeSeries, UnivariateTimeSeries +from merlion.utils.misc import call_with_accepted_kwargs logger = logging.getLogger(__name__) @@ -178,24 +179,28 @@ def post_rule(self): return self.config.post_rule def train( - self, train_data: TimeSeries, anomaly_labels: TimeSeries = None, train_config=None, post_rule_train_config=None + self, train_data: TimeSeries, train_config=None, anomaly_labels: TimeSeries = None, post_rule_train_config=None ) -> TimeSeries: """ Trains the anomaly detector (unsupervised) and its post-rule (supervised, if labels are given) on train data. :param train_data: a `TimeSeries` of metric values to train the model. - :param anomaly_labels: a `TimeSeries` indicating which timestamps are anomalous. Optional. :param train_config: Additional training configs, if needed. Only required for some models. + :param anomaly_labels: a `TimeSeries` indicating which timestamps are anomalous. Optional. :param post_rule_train_config: The config to use for training the model's post-rule. The model's default post-rule train config is used if none is supplied here. :return: A `TimeSeries` of the model's anomaly scores on the training data. """ - return super().train( - train_data=train_data, - anomaly_labels=anomaly_labels, - train_config=train_config, - post_rule_train_config=post_rule_train_config, + if train_config is None: + train_config = copy.deepcopy(self._default_train_config) + train_data = self.train_pre_process(train_data) + train_data = train_data.to_pd() if self._pandas_train else train_data + train_result = call_with_accepted_kwargs( # For ensembles + self._train, train_data=train_data, train_config=train_config, anomaly_labels=anomaly_labels + ) + return self.train_post_process( + train_result=train_result, anomaly_labels=anomaly_labels, post_rule_train_config=post_rule_train_config ) def train_post_process( @@ -214,10 +219,8 @@ def train_post_process( kwargs = copy.copy(self._default_post_rule_train_config) if post_rule_train_config is not None: kwargs.update(post_rule_train_config) - params = inspect.signature(self.post_rule.train).parameters - if not any(v.kind.name == "VAR_KEYWORD" for v in params.values()): - kwargs = {k: v for k, v in kwargs.items() if k in params} - self.post_rule.train(anomaly_scores=anomaly_scores, anomaly_labels=anomaly_labels, **kwargs) + kwargs.update(anomaly_scores=anomaly_scores, anomaly_labels=anomaly_labels) + call_with_accepted_kwargs(self.post_rule.train, **kwargs) return anomaly_scores @abstractmethod @@ -291,6 +294,7 @@ def get_figure( filter_scores=True, plot_time_series_prev=False, fig: Figure = None, + **kwargs, ) -> Figure: """ :param time_series: The `TimeSeries` we wish to plot & predict anomaly scores for. @@ -306,7 +310,7 @@ def get_figure( :return: a `Figure` of the model's anomaly score predictions. """ f = self.get_anomaly_label if filter_scores else self.get_anomaly_score - scores = f(time_series, time_series_prev=time_series_prev) + scores = f(time_series, time_series_prev=time_series_prev, **kwargs) scores = scores.univariates[scores.names[0]] # Get the severity level associated with each value & convert things to @@ -406,8 +410,8 @@ class MultipleTimeseriesDetectorMixin(MultipleTimeseriesModelMixin): def train_multiple( self, multiple_train_data: List[TimeSeries], - anomaly_labels: List[TimeSeries] = None, train_config=None, + anomaly_labels: List[TimeSeries] = None, post_rule_train_config=None, ) -> List[TimeSeries]: """ @@ -415,10 +419,8 @@ def train_multiple( (supervised, if labels are given) on the input multiple time series. :param multiple_train_data: a list of `TimeSeries` of metric values to train the model. - :param anomaly_labels: a list of `TimeSeries` indicating which timestamps are - anomalous. Optional. - :param train_config: Additional training configs, if needed. Only - required for some models. + :param anomaly_labels: a list of `TimeSeries` indicating which timestamps are anomalous. Optional. + :param train_config: Additional training configs, if needed. Only required for some models. :param post_rule_train_config: The config to use for training the model's post-rule. The model's default post-rule train config is used if none is supplied here. diff --git a/merlion/models/anomaly/change_point/bocpd.py b/merlion/models/anomaly/change_point/bocpd.py index 3c9b27556..84cba0851 100644 --- a/merlion/models/anomaly/change_point/bocpd.py +++ b/merlion/models/anomaly/change_point/bocpd.py @@ -151,6 +151,10 @@ def __init__(self, config: BOCPDConfig = None): self.full_run_length_posterior = scipy.sparse.dok_matrix((0, 0), dtype=float) self.pw_model: List[Tuple[pd.Timestamp, ConjPrior]] = [] + @property + def _pandas_train(self): + return False + @property def _online_model(self) -> bool: return True @@ -263,7 +267,9 @@ def _update_model(self, timestamps): _, data = train_data.bisect(t0, t_in_left=False) self.pw_model.append((t0, self.change_kind.value(data))) - def train_pre_process(self, train_data: TimeSeries) -> TimeSeries: + def train_pre_process( + self, train_data: TimeSeries, exog_data: TimeSeries = None, return_exog=False + ) -> Union[TimeSeries, Tuple[TimeSeries, Union[TimeSeries, None]]]: # BOCPD doesn't _require_ target_seq_index to be specified, but train_pre_process() does. if self.target_seq_index is None and train_data.dim > 1: self.config.target_seq_index = 0 @@ -271,10 +277,10 @@ def train_pre_process(self, train_data: TimeSeries) -> TimeSeries: f"Received a {train_data.dim}-variate time series, but `target_seq_index` was not " f"specified. Setting `target_seq_index = 0` so the `forecast()` method will work." ) - train_data = super().train_pre_process(train_data) + ret = super().train_pre_process(train_data, exog_data=exog_data, return_exog=return_exog) # We manually update self.train_data in update(), so do nothing here self.train_data = None - return train_data + return ret def _forecast( self, time_stamps: List[int], time_series_prev: pd.DataFrame = None, return_prev=False @@ -407,10 +413,10 @@ def update(self, time_series: TimeSeries): # Return the anomaly scores return self._get_anom_scores(time_stamps) - def _train(self, train_data: pd.DataFrame, train_config=None) -> pd.DataFrame: + def _train(self, train_data: TimeSeries, train_config=None) -> TimeSeries: # If not automatically detecting the change kind, train as normal if self.change_kind is not ChangeKind.Auto: - return self.update(time_series=TimeSeries.from_pd(train_data)).to_pd() + return self.update(time_series=train_data) # Otherwise, evaluate all change kinds as options candidates = [] @@ -429,7 +435,9 @@ def _train(self, train_data: pd.DataFrame, train_config=None) -> pd.DataFrame: logger.info(f"Using change kind {self.change_kind.name} because it has the best log likelihood.") return train_scores - def get_anomaly_score(self, time_series: TimeSeries, time_series_prev: TimeSeries = None) -> TimeSeries: + def get_anomaly_score( + self, time_series: TimeSeries, time_series_prev: TimeSeries = None, exog_data: TimeSeries = None + ) -> TimeSeries: return DetectorBase.get_anomaly_score(self, time_series, time_series_prev) def _get_anomaly_score(self, time_series: pd.DataFrame, time_series_prev: pd.DataFrame = None) -> pd.DataFrame: @@ -437,27 +445,7 @@ def _get_anomaly_score(self, time_series: pd.DataFrame, time_series_prev: pd.Dat self.update(TimeSeries.from_pd(time_series_prev)) return self.update(TimeSeries.from_pd(time_series)).to_pd() - def get_figure( - self, - *, - time_series: TimeSeries = None, - time_stamps: List[int] = None, - time_series_prev: TimeSeries = None, - plot_anomaly=True, - filter_scores=True, - plot_forecast=False, - plot_forecast_uncertainty=False, - plot_time_series_prev=False, - ) -> Figure: + def get_figure(self, *, time_series: TimeSeries = None, **kwargs) -> Figure: if time_series is not None: self.update(self.transform(time_series)) - return super().get_figure( - time_series=time_series, - time_stamps=time_stamps, - time_series_prev=time_series_prev, - plot_anomaly=plot_anomaly, - filter_scores=filter_scores, - plot_forecast=plot_forecast, - plot_forecast_uncertainty=plot_forecast_uncertainty, - plot_time_series_prev=plot_time_series_prev, - ) + return super().get_figure(time_series=time_series, **kwargs) diff --git a/merlion/models/anomaly/dagmm.py b/merlion/models/anomaly/dagmm.py index a196872e5..8963f3cb4 100644 --- a/merlion/models/anomaly/dagmm.py +++ b/merlion/models/anomaly/dagmm.py @@ -26,12 +26,12 @@ import numpy as np import pandas as pd -from merlion.utils import UnivariateTimeSeries, TimeSeries +from merlion.utils import TimeSeries from merlion.models.base import NormalizingConfig from merlion.models.anomaly.base import DetectorBase, DetectorConfig, MultipleTimeseriesDetectorMixin from merlion.post_process.threshold import AggregateAlarms from merlion.utils.misc import ProgressBar, initializer -from merlion.models.anomaly.utils import InputData, batch_detect +from merlion.models.utils.torch_utils import InputData, batch_detect class DAGMMConfig(DetectorConfig, NormalizingConfig): @@ -81,7 +81,6 @@ class DAGMM(DetectorBase, MultipleTimeseriesDetectorMixin): """ config_class = DAGMMConfig - _default_train_config = dict() def __init__(self, config: DAGMMConfig): super().__init__(config) @@ -108,6 +107,10 @@ def require_even_sampling(self) -> bool: def require_univariate(self) -> bool: return False + @property + def _default_train_config(self): + return dict() + def _build_model(self, dim): hidden_size = self.hidden_size + int(dim / 20) dagmm = DAGMMModule( @@ -192,8 +195,8 @@ def _get_sequence_len(self): def train_multiple( self, multiple_train_data: List[TimeSeries], - anomaly_labels: List[TimeSeries] = None, train_config=None, + anomaly_labels: List[TimeSeries] = None, post_rule_train_config=None, ) -> List[TimeSeries]: """ @@ -201,14 +204,13 @@ def train_multiple( (supervised, if labels are given) on the input multiple time series. :param multiple_train_data: a list of `TimeSeries` of metric values to train the model. - :param anomaly_labels: a list of `TimeSeries` indicating which timestamps are - anomalous. Optional. :param train_config: Additional training config dict with keys: * | "n_epochs": ``int`` indicating how many times the model must be | trained on the timeseries in ``multiple_train_data``. Defaults to 1. * | "shuffle": ``bool`` indicating if the ``multiple_train_data`` collection | should be shuffled before every epoch. Defaults to True if "n_epochs" > 1. + :param anomaly_labels: a list of `TimeSeries` indicating which timestamps are anomalous. Optional. :param post_rule_train_config: The config to use for training the model's post-rule. The model's default post-rule train config is used if none is supplied here. @@ -233,8 +235,8 @@ def train_multiple( train_scores_list.append( self.train( train_data=train_data, - anomaly_labels=anomaly_series, train_config=train_config, + anomaly_labels=anomaly_series, post_rule_train_config=post_rule_train_config # FIXME: the post-rule (calibrator and threshold) is trained individually on each time series # but ideally it needs to be re-trained on all of the `train_scores_list` diff --git a/merlion/models/anomaly/dbl.py b/merlion/models/anomaly/dbl.py index b53a7959b..afd97eb89 100644 --- a/merlion/models/anomaly/dbl.py +++ b/merlion/models/anomaly/dbl.py @@ -116,7 +116,6 @@ class DynamicBaseline(DetectorBase): """ config_class = DynamicBaselineConfig - _default_post_rule_train_config = dict(metric=TSADMetric.F1, unsup_quantile=None) def __init__(self, config: DynamicBaselineConfig): super().__init__(config) @@ -131,6 +130,10 @@ def require_even_sampling(self) -> bool: def require_univariate(self) -> bool: return True + @property + def _default_post_rule_train_config(self): + return dict(metric=TSADMetric.F1, unsup_quantile=None) + @property def train_window(self): return pd.to_timedelta(self.config.train_window) diff --git a/merlion/models/anomaly/forecast_based/base.py b/merlion/models/anomaly/forecast_based/base.py index 874d9bf0f..f01f1b931 100644 --- a/merlion/models/anomaly/forecast_based/base.py +++ b/merlion/models/anomaly/forecast_based/base.py @@ -7,6 +7,7 @@ """ Base class for anomaly detectors based on forecasting models. """ +import copy import logging from typing import List, Optional, Tuple, Union @@ -63,6 +64,28 @@ def forecast_to_anom_score( sigma[np.isnan(sigma)] = np.mean(sigma) return pd.DataFrame((y - yhat) / (sigma + 1e-8), index=times, columns=["anom_score"]) + def train( + self, + train_data: TimeSeries, + train_config=None, + exog_data: TimeSeries = None, + anomaly_labels=None, + post_rule_train_config=None, + ) -> TimeSeries: + if train_config is None: + train_config = copy.deepcopy(self._default_train_config) + train_data, exog_data = self.train_pre_process(train_data, exog_data=exog_data, return_exog=True) + if self._pandas_train: + train_data = train_data.to_pd() + exog_data = None if exog_data is None else exog_data.to_pd() + if exog_data is None: + train_result = self._train(train_data=train_data, train_config=train_config) + else: + train_result = self._train_with_exog(train_data=train_data, train_config=train_config, exog_data=exog_data) + return self.train_post_process( + train_result, anomaly_labels=anomaly_labels, post_rule_train_config=post_rule_train_config + ) + def train_post_process( self, train_result: Tuple[Union[TimeSeries, pd.DataFrame], Optional[Union[TimeSeries, pd.DataFrame]]], @@ -77,21 +100,12 @@ def train_post_process( self, train_result, anomaly_labels=anomaly_labels, post_rule_train_config=post_rule_train_config ) - def train( - self, train_data: TimeSeries, anomaly_labels: TimeSeries = None, train_config=None, post_rule_train_config=None + def get_anomaly_score( + self, time_series: TimeSeries, time_series_prev: TimeSeries = None, exog_data: TimeSeries = None ) -> TimeSeries: - return DetectorBase.train( - self, - train_data=train_data, - anomaly_labels=anomaly_labels, - train_config=train_config, - post_rule_train_config=post_rule_train_config, - ) - - def get_anomaly_score(self, time_series: TimeSeries, time_series_prev: TimeSeries = None) -> TimeSeries: if not self.invert_transform: time_series, _ = self.transform_time_series(time_series, time_series_prev) - forecast, err = self.forecast(time_series.time_stamps, time_series_prev) + forecast, err = self.forecast(time_series.time_stamps, time_series_prev=time_series_prev, exog_data=exog_data) # Make sure stderr & forecast are of the appropriate lengths assert err is None or len(forecast) == len(err), ( @@ -107,12 +121,19 @@ def get_anomaly_score(self, time_series: TimeSeries, time_series_prev: TimeSerie def _get_anomaly_score(self, time_series: pd.DataFrame, time_series_prev: pd.DataFrame = None) -> pd.DataFrame: raise NotImplementedError("_get_anomaly_score() should not be called from a forecast-based anomaly detector.") + def get_anomaly_label( + self, time_series: TimeSeries, time_series_prev: TimeSeries = None, exog_data: TimeSeries = None + ) -> TimeSeries: + scores = self.get_anomaly_score(time_series, time_series_prev, exog_data=exog_data) + return self.post_rule(scores) if self.post_rule is not None else scores + def get_figure( self, *, time_series: TimeSeries = None, time_stamps: List[int] = None, time_series_prev: TimeSeries = None, + exog_data: TimeSeries = None, plot_anomaly=True, filter_scores=True, plot_forecast=False, @@ -120,36 +141,36 @@ def get_figure( plot_time_series_prev=False, ) -> Figure: """ - :param time_series: the time series over whose timestamps we wish to - make a forecast. Exactly one of ``time_series`` or ``time_stamps`` - should be provided. - :param time_stamps: a list of timestamps we wish to forecast for. Exactly - one of ``time_series`` or ``time_stamps`` should be provided. - :param time_series_prev: a `TimeSeries` immediately preceding - ``time_stamps``. If given, we use it to initialize the time series - model. Otherwise, we assume that ``time_stamps`` immediately follows - the training data. + :param time_series: the time series over whose timestamps we wish to make a forecast. Exactly one of + ``time_series`` or ``time_stamps`` should be provided. + :param time_stamps: Either a ``list`` of timestamps we wish to forecast for, or the number of steps (``int``) + we wish to forecast for. Exactly one of ``time_series`` or ``time_stamps`` should be provided. + :param time_series_prev: a time series immediately preceding ``time_series``. If given, we use it to initialize + the forecaster's state. Otherwise, we assume that ``time_series`` immediately follows the training data. + :param exog_data: A time series of exogenous variables. Exogenous variables are known a priori, and they are + independent of the variable being forecasted. ``exog_data`` must include data for all of ``time_stamps``; + if ``time_series_prev`` is given, it must include data for all of ``time_series_prev.time_stamps`` as well. + Optional. Only supported for models which inherit from `ForecasterExogBase`. :param plot_anomaly: Whether to plot the model's predicted anomaly scores. - :param filter_scores: whether to filter the anomaly scores by the - post-rule before plotting them. + :param filter_scores: whether to filter the anomaly scores by the post-rule before plotting them. :param plot_forecast: Whether to plot the model's forecasted values. - :param plot_forecast_uncertainty: whether to plot uncertainty estimates (the - inter-quartile range) for forecast values. Not supported for all - models. - :param plot_time_series_prev: whether to plot ``time_series_prev`` (and - the model's fit for it). Only used if ``time_series_prev`` is given. + :param plot_forecast_uncertainty: whether to plot uncertainty estimates (the inter-quartile range) for forecast + values. Not supported for all models. + :param plot_time_series_prev: whether to plot ``time_series_prev`` (and the model's fit for it). Only used if + ``time_series_prev`` is given. :return: a `Figure` of the model's anomaly score predictions and/or forecast. """ assert not ( time_series is None and time_stamps is None ), "Must provide at least one of time_series or time_stamps" fig = None - plot_forecast = plot_forecast or not plot_anomaly + plot_forecast = plot_forecast or plot_forecast_uncertainty or not plot_anomaly if plot_forecast or time_series is None: fig = ForecasterBase.get_figure( self, time_series=time_series, time_stamps=time_stamps, + exog_data=exog_data, time_series_prev=time_series_prev, plot_forecast_uncertainty=plot_forecast_uncertainty, plot_time_series_prev=plot_time_series_prev, @@ -160,6 +181,7 @@ def get_figure( self, time_series=time_series, time_series_prev=time_series_prev, + exog_data=exog_data, plot_time_series_prev=plot_time_series_prev, filter_scores=filter_scores, fig=fig, @@ -169,6 +191,7 @@ def plot_anomaly( self, time_series: TimeSeries, time_series_prev: TimeSeries = None, + exog_data: TimeSeries = None, *, filter_scores=True, plot_forecast=False, @@ -183,21 +206,20 @@ def plot_anomaly( anomalies. Optionally allows you to overlay the model's forecast & the model's uncertainty in its forecast (if applicable). - :param time_series: The time series we wish to plot, with color-coding - to indicate anomalies. - :param time_series_prev: A time series immediately preceding - ``time_series``, which is used to initialize the time series model. - Otherwise, we assume ``time_series`` immediately follows the training - data. - :param filter_scores: whether to filter the anomaly scores by the - post-rule before plotting them. - :param plot_forecast: Whether to plot the model's forecast, in addition - to the anomaly scores. - :param plot_forecast_uncertainty: Whether to plot the model's - uncertainty in its own forecast, in addition to the forecast and - anomaly scores. Only used if ``plot_forecast`` is ``True``. - :param plot_time_series_prev: whether to plot ``time_series_prev`` (and - the model's fit for it). Only used if ``time_series_prev`` is given. + :param time_series: the time series over whose timestamps we wish to make a forecast. Exactly one of + ``time_series`` or ``time_stamps`` should be provided. + :param time_series_prev: a time series immediately preceding ``time_series``. If given, we use it to initialize + the forecaster's state. Otherwise, we assume that ``time_series`` immediately follows the training data. + :param exog_data: A time series of exogenous variables. Exogenous variables are known a priori, and they are + independent of the variable being forecasted. ``exog_data`` must include data for all of ``time_stamps``; + if ``time_series_prev`` is given, it must include data for all of ``time_series_prev.time_stamps`` as well. + Optional. Only supported for models which inherit from `ForecasterExogBase`. + :param filter_scores: whether to filter the anomaly scores by the post-rule before plotting them. + :param plot_forecast: Whether to plot the model's forecast, in addition to the anomaly scores. + :param plot_forecast_uncertainty: whether to plot uncertainty estimates (the inter-quartile range) for forecast + values. Not supported for all models. + :param plot_time_series_prev: whether to plot ``time_series_prev`` (and the model's fit for it). Only used if + ``time_series_prev`` is given. :param figsize: figure size in pixels :param ax: matplotlib axis to add this plot to @@ -207,6 +229,7 @@ def plot_anomaly( fig = self.get_figure( time_series=time_series, time_series_prev=time_series_prev, + exog_data=exog_data, filter_scores=filter_scores, plot_anomaly=True, plot_forecast=plot_forecast, @@ -223,6 +246,7 @@ def plot_anomaly_plotly( self, time_series: TimeSeries, time_series_prev: TimeSeries = None, + exog_data: TimeSeries = None, *, filter_scores=True, plot_forecast=False, @@ -236,21 +260,20 @@ def plot_anomaly_plotly( anomalies. Optionally allows you to overlay the model's forecast & the model's uncertainty in its forecast (if applicable). - :param time_series: The time series we wish to plot, with color-coding - to indicate anomalies. - :param time_series_prev: A time series immediately preceding - ``time_series``, which is used to initialize the time series model. - Otherwise, we assume ``time_series`` immediately follows the training - data. - :param filter_scores: whether to filter the anomaly scores by the - post-rule before plotting them. - :param plot_forecast: Whether to plot the model's forecast, in addition - to the anomaly scores. - :param plot_forecast_uncertainty: Whether to plot the model's - uncertainty in its own forecast, in addition to the forecast and - anomaly scores. Only used if ``plot_forecast`` is ``True``. - :param plot_time_series_prev: whether to plot ``time_series_prev`` (and - the model's fit for it). Only used if ``time_series_prev`` is given. + :param time_series: the time series over whose timestamps we wish to make a forecast. Exactly one of + ``time_series`` or ``time_stamps`` should be provided. + :param time_series_prev: a time series immediately preceding ``time_series``. If given, we use it to initialize + the forecaster's state. Otherwise, we assume that ``time_series`` immediately follows the training data. + :param exog_data: A time series of exogenous variables. Exogenous variables are known a priori, and they are + independent of the variable being forecasted. ``exog_data`` must include data for all of ``time_stamps``; + if ``time_series_prev`` is given, it must include data for all of ``time_series_prev.time_stamps`` as well. + Optional. Only supported for models which inherit from `ForecasterExogBase`. + :param filter_scores: whether to filter the anomaly scores by the post-rule before plotting them. + :param plot_forecast: Whether to plot the model's forecast, in addition to the anomaly scores. + :param plot_forecast_uncertainty: whether to plot uncertainty estimates (the inter-quartile range) for forecast + values. Not supported for all models. + :param plot_time_series_prev: whether to plot ``time_series_prev`` (and the model's fit for it). Only used if + ``time_series_prev`` is given. :param figsize: figure size in pixels :return: plotly figure """ @@ -258,6 +281,7 @@ def plot_anomaly_plotly( fig = self.get_figure( time_series=time_series, time_series_prev=time_series_prev, + exog_data=exog_data, filter_scores=filter_scores, plot_forecast=plot_forecast, plot_anomaly=True, @@ -275,6 +299,7 @@ def plot_forecast( time_series: TimeSeries = None, time_stamps: List[int] = None, time_series_prev: TimeSeries = None, + exog_data: TimeSeries = None, plot_forecast_uncertainty=False, plot_time_series_prev=False, figsize=(1000, 600), @@ -284,6 +309,7 @@ def plot_forecast( time_series=time_series, time_stamps=time_stamps, time_series_prev=time_series_prev, + exog_data=exog_data, plot_forecast_uncertainty=plot_forecast_uncertainty, plot_time_series_prev=plot_time_series_prev, plot_anomaly=False, @@ -298,6 +324,7 @@ def plot_forecast_plotly( time_series: TimeSeries = None, time_stamps: List[int] = None, time_series_prev: TimeSeries = None, + exog_data: TimeSeries = None, plot_forecast_uncertainty=False, plot_time_series_prev=False, figsize=(1000, 600), @@ -306,6 +333,7 @@ def plot_forecast_plotly( time_series=time_series, time_stamps=time_stamps, time_series_prev=time_series_prev, + exog_data=exog_data, plot_forecast_uncertainty=plot_forecast_uncertainty, plot_time_series_prev=plot_time_series_prev, plot_anomaly=False, diff --git a/merlion/models/anomaly/forecast_based/mses.py b/merlion/models/anomaly/forecast_based/mses.py index c52d78d16..3f9130526 100644 --- a/merlion/models/anomaly/forecast_based/mses.py +++ b/merlion/models/anomaly/forecast_based/mses.py @@ -39,7 +39,9 @@ def online_updates(self): def _default_train_config(self): return MSESTrainConfig(train_cadence=1 if self.online_updates else None) - def get_anomaly_score(self, time_series: TimeSeries, time_series_prev: TimeSeries = None) -> TimeSeries: + def get_anomaly_score( + self, time_series: TimeSeries, time_series_prev: TimeSeries = None, exog_data=None + ) -> TimeSeries: if self.online_updates: time_series, time_series_prev = self.transform_time_series(time_series, time_series_prev) if time_series_prev is None: diff --git a/merlion/models/anomaly/lstm_ed.py b/merlion/models/anomaly/lstm_ed.py index d26505f1b..6a5253815 100644 --- a/merlion/models/anomaly/lstm_ed.py +++ b/merlion/models/anomaly/lstm_ed.py @@ -23,12 +23,11 @@ ) raise ImportError(str(e) + ". " + err) -from merlion.utils import UnivariateTimeSeries, TimeSeries from merlion.models.base import NormalizingConfig from merlion.models.anomaly.base import DetectorBase, DetectorConfig from merlion.post_process.threshold import AggregateAlarms from merlion.utils.misc import ProgressBar, initializer -from merlion.models.anomaly.utils import InputData, batch_detect +from merlion.models.utils.torch_utils import InputData, batch_detect class LSTMEDConfig(DetectorConfig, NormalizingConfig): diff --git a/merlion/models/anomaly/vae.py b/merlion/models/anomaly/vae.py index e6bd6a5a8..9823a64a2 100644 --- a/merlion/models/anomaly/vae.py +++ b/merlion/models/anomaly/vae.py @@ -23,12 +23,11 @@ ) raise ImportError(str(e) + ". " + err) -from merlion.utils import UnivariateTimeSeries, TimeSeries from merlion.models.base import NormalizingConfig from merlion.models.anomaly.base import DetectorBase, DetectorConfig from merlion.post_process.threshold import AggregateAlarms from merlion.utils.misc import ProgressBar, initializer -from merlion.models.anomaly.utils import InputData, batch_detect +from merlion.models.utils.torch_utils import InputData, batch_detect class VAEConfig(DetectorConfig, NormalizingConfig): diff --git a/merlion/models/anomaly/windstats.py b/merlion/models/anomaly/windstats.py index a0e63bde1..775e24994 100644 --- a/merlion/models/anomaly/windstats.py +++ b/merlion/models/anomaly/windstats.py @@ -62,7 +62,6 @@ class WindStats(DetectorBase): """ config_class = WindStatsConfig - _default_post_rule_train_config = dict(metric=TSADMetric.F1, unsup_quantile=None) def __init__(self, config: WindStatsConfig = None): """ @@ -81,6 +80,10 @@ def require_even_sampling(self) -> bool: def require_univariate(self) -> bool: return True + @property + def _default_post_rule_train_config(self): + return dict(metric=TSADMetric.F1, unsup_quantile=None) + def _get_anomaly_score(self, time_series: pd.DataFrame, time_series_prev: pd.DataFrame = None) -> pd.DataFrame: times, scores = [], [] for t, (x,) in zip(time_series.index, time_series.values): diff --git a/merlion/models/anomaly/zms.py b/merlion/models/anomaly/zms.py index 124f7a39a..97f400bf8 100644 --- a/merlion/models/anomaly/zms.py +++ b/merlion/models/anomaly/zms.py @@ -145,11 +145,11 @@ def adjust_z_scores(self) -> bool: return self.lag_inflation > 0.0 and len(self.lag_scales) > 1 def train( - self, train_data: TimeSeries, anomaly_labels: TimeSeries = None, train_config=None, post_rule_train_config=None + self, train_data: TimeSeries, train_config=None, anomaly_labels: TimeSeries = None, post_rule_train_config=None ) -> TimeSeries: if self.n_lags is None: self.n_lags = int(log(len(train_data), self.config.base)) - return super().train(train_data, anomaly_labels, train_config, post_rule_train_config) + return super().train(train_data, train_config, anomaly_labels, post_rule_train_config) def _train(self, train_data: pd.DataFrame, train_config=None) -> pd.DataFrame: return self._get_anomaly_score(train_data) diff --git a/merlion/models/automl/autoets.py b/merlion/models/automl/autoets.py index 1427bba5d..8ef127cdd 100644 --- a/merlion/models/automl/autoets.py +++ b/merlion/models/automl/autoets.py @@ -7,21 +7,18 @@ """ Automatic hyperparamter selection for ETS. """ -from copy import deepcopy -from itertools import product +from collections import OrderedDict import logging -from typing import Union, Iterator, Any, Optional, Tuple -import warnings +from typing import Union, Iterator, Tuple import numpy as np import pandas as pd -from scipy.stats import norm -from statsmodels.tsa.exponential_smoothing.ets import ETSModel -from merlion.models.forecast.ets import ETS, ETSConfig +from merlion.models.forecast.ets import ETS from merlion.models.automl.base import InformationCriterion, ICConfig, ICAutoMLForecaster +from merlion.models.automl.search import GridSearch from merlion.models.automl.seasonality import PeriodicityStrategy, SeasonalityConfig, SeasonalityLayer -from merlion.utils import TimeSeries, UnivariateTimeSeries +from merlion.utils import TimeSeries logger = logging.getLogger(__name__) @@ -136,48 +133,31 @@ def generate_theta(self, train_data: TimeSeries) -> Iterator: if not self.config.auto_damped: D_range = [self.model.config.damped_trend] - thetas = [] - for error, trend, seasonal, damped in product(E_range, T_range, S_range, D_range): - if trend is None and damped: - continue - if self.config.additive_only: - if error == "mul" or trend == "mul" or seasonal == "mul": - continue - if self.config.restrict: - if error == "add" and (trend == "mul" or seasonal == "mul"): - continue - if error == "mul" and trend == "mul" and seasonal == "add": - continue - - thetas.append((error, trend, seasonal, damped, m)) - return iter(thetas) + # Construct a grid search object + param_values = OrderedDict(error=E_range, trend=T_range, seasonal=S_range, damped=D_range, m=[m]) + restrictions = [dict(trend=None, damped=True)] + if self.config.additive_only: + restrictions.extend([dict(error="mul"), dict(trend="mul"), dict(seasonal="mul")]) + if self.config.restrict: + restrictions.append(dict(error="add", trend="mul")) + restrictions.append(dict(error="add", seasonal="mul")) + restrictions.append(dict(error="mul", trend="mul", seasonal="add")) + return iter(GridSearch(param_values=param_values, restrictions=restrictions)) def set_theta(self, model, theta, train_data: TimeSeries = None): - error, trend, seasonal, damped_trend, seasonal_periods = theta - if seasonal_periods <= 1: - seasonal = None - model.config.error = error - model.config.trend = trend - model.config.damped_trend = damped_trend - model.config.seasonal = seasonal - model.config.seasonal_periods = seasonal_periods - - @staticmethod - def _model_name(theta): - error, trend, seasonal, damped, seasonal_periods = theta - return f"ETS(err={error},trend={trend},seas={seasonal},damped={damped})" + m = theta["m"] + model.config.error = theta["error"] + model.config.trend = theta["trend"] + model.config.damped_trend = theta["damped"] + model.config.seasonal = None if m <= 1 else theta["seasonal"] + model.config.seasonal_periods = m + + def _model_name(self, theta): + return f"ETS(err={theta['error']},trend={theta['trend']},seas={theta['seasonal']},damped={theta['damped']})" def get_ic(self, model, train_data: pd.DataFrame, train_result: Tuple[pd.DataFrame, pd.DataFrame]) -> float: - pred, stderr = train_result - log_like = norm.logpdf((pred.values - train_data.values) / stderr.values).sum() - n_params = model.base_model.model.df_model - ic_id = self.config.information_criterion - if ic_id is InformationCriterion.AIC: - ic = 2 * n_params - 2 * log_like.sum() - elif ic_id is InformationCriterion.BIC: - ic = n_params * np.log(len(train_data)) - 2 * log_like - elif ic_id is InformationCriterion.AICc: - ic = 2 * n_params - 2 * log_like + (2 * n_params * (n_params + 1)) / max(1, len(train_data) - n_params - 1) + ic = self.config.information_criterion.name + if ic in ["AIC", "BIC", "AICc"]: + return getattr(model.base_model.model, ic.lower()) else: - raise ValueError(f"{type(self.model).__name__} doesn't support information criterion {ic_id.name}") - return ic + raise ValueError(f"{type(self.model).__name__} doesn't support information criterion {ic}") diff --git a/merlion/models/automl/autoprophet.py b/merlion/models/automl/autoprophet.py index d8152a82d..f49aaf773 100644 --- a/merlion/models/automl/autoprophet.py +++ b/merlion/models/automl/autoprophet.py @@ -7,15 +7,16 @@ """ Automatic hyperparameter selection for Facebook's Prophet. """ -import copy +from collections import OrderedDict import logging -from typing import Any, Iterator, Optional, Tuple, Union +from typing import Iterator, Tuple, Union import numpy as np import pandas as pd from scipy.stats import norm from merlion.models.automl.base import InformationCriterion, ICConfig, ICAutoMLForecaster +from merlion.models.automl.search import GridSearch from merlion.models.automl.seasonality import PeriodicityStrategy, SeasonalityConfig, SeasonalityLayer from merlion.models.forecast.prophet import Prophet from merlion.utils import TimeSeries @@ -60,32 +61,31 @@ class AutoProphet(ICAutoMLForecaster, SeasonalityLayer): config_class = AutoProphetConfig def generate_theta(self, train_data: TimeSeries) -> Iterator: - seasonalities = list(super().generate_theta(train_data)) - seasonality_modes = ["additive", "multiplicative"] - return ((seasonalities, mode) for mode in seasonality_modes) + seas = list(super().generate_theta(train_data)) + modes = ["additive", "multiplicative"] + return iter(GridSearch(param_values=OrderedDict(seas=[seas], seasonality_mode=modes))) def set_theta(self, model, theta, train_data: TimeSeries = None): - seasonalities, seasonality_mode = theta + seasonalities, seasonality_mode = theta["seas"], theta["seasonality_mode"] seasonalities, _, _ = SeasonalityLayer.evaluate_theta(self, thetas=iter(seasonalities), train_data=train_data) SeasonalityLayer.set_theta(self, model=model, theta=seasonalities, train_data=train_data) model.base_model.config.seasonality_mode = seasonality_mode model.base_model.model.seasonality_mode = seasonality_mode def _model_name(self, theta) -> str: - seas, mode = theta - return f"Prophet(seasonalities={seas}, seasonality_mode={mode})" + return f"Prophet({','.join(f'{k}={v}' for k, v in theta.items())})" def get_ic(self, model, train_data: pd.DataFrame, train_result: Tuple[pd.DataFrame, pd.DataFrame]) -> float: pred, stderr = train_result + n = len(train_data) log_like = norm.logpdf((pred.values - train_data.values) / stderr.values).sum() n_params = sum(len(v.flatten()) for k, v in model.base_model.model.params.items() if k != "trend") ic_id = self.config.information_criterion if ic_id is InformationCriterion.AIC: - ic = 2 * n_params - 2 * log_like.sum() + return 2 * n_params - 2 * log_like.sum() elif ic_id is InformationCriterion.BIC: - ic = n_params * np.log(len(train_data)) - 2 * log_like + return n_params * np.log(n) - 2 * log_like elif ic_id is InformationCriterion.AICc: - ic = 2 * n_params - 2 * log_like + (2 * n_params * (n_params + 1)) / max(1, len(train_data) - n_params - 1) + return 2 * n_params - 2 * log_like + (2 * n_params * (n_params + 1)) / max(1, n - n_params - 1) else: raise ValueError(f"{type(self.model).__name__} doesn't support information criterion {ic_id.name}") - return ic diff --git a/merlion/models/automl/autosarima.py b/merlion/models/automl/autosarima.py index 4dd6dd08a..21556fd58 100644 --- a/merlion/models/automl/autosarima.py +++ b/merlion/models/automl/autosarima.py @@ -21,6 +21,7 @@ logger = logging.getLogger(__name__) + # FIXME: convert to information criterion version class AutoSarimaConfig(SeasonalityConfig): """ @@ -98,7 +99,6 @@ class AutoSarima(SeasonalityLayer): def _generate_sarima_parameters(self, train_data: TimeSeries) -> dict: y = train_data.univariates[self.target_name].np_values - X = None order = list(self.config.order) seasonal_order = list(self.config.seasonal_order) @@ -206,7 +206,6 @@ def _generate_sarima_parameters(self, train_data: TimeSeries) -> dict: return_dict = dict( y=y, - X=X, p=p, d=d, q=q, @@ -279,18 +278,17 @@ def generate_theta(self, train_data: TimeSeries) -> Iterator: return iter([{"action": action, "theta": [order, seasonal_order, trend], "val_dict": val_dict}]) def evaluate_theta( - self, thetas: Iterator, train_data: TimeSeries, train_config=None, **kwargs + self, thetas: Iterator, train_data: TimeSeries, train_config=None, exog_data: TimeSeries = None ) -> Tuple[Any, Optional[Sarima], Optional[Tuple[TimeSeries, Optional[TimeSeries]]]]: # preprocess train_config = copy(train_config) if train_config is not None else {} - for k, v in {"enforce_stationarity": False, "enforce_invertibility": False}.items(): - train_config[k] = train_config.get(k, v) + if exog_data is not None: + train_config["exog"] = exog_data.to_pd() # read from val_dict theta_value = next(thetas) val_dict = theta_value["val_dict"] - X = val_dict["X"] y = val_dict["y"] method = val_dict["method"] maxiter = val_dict["maxiter"] @@ -346,7 +344,6 @@ def evaluate_theta( seasonal_order = [0, 0, 0, 0] best_model_fit, fit_time, ic = autosarima_utils._fit_sarima_model( y=y, - X=X, order=order, seasonal_order=seasonal_order, trend=trend, diff --git a/merlion/models/automl/base.py b/merlion/models/automl/base.py index 21858e285..77dc2af27 100644 --- a/merlion/models/automl/base.py +++ b/merlion/models/automl/base.py @@ -16,7 +16,7 @@ import pandas as pd -from merlion.models.layers import Config, ModelBase, LayeredModel, LayeredModelConfig, ForecasterBase +from merlion.models.layers import Config, ModelBase, LayeredModel, ForecasterBase from merlion.utils import TimeSeries from merlion.utils.misc import AutodocABCMeta @@ -28,7 +28,11 @@ class AutoMLMixIn(LayeredModel, metaclass=AutodocABCMeta): Abstract base class which converts `LayeredModel` into an AutoML model. """ - def train_model(self, train_data: TimeSeries, train_config=None, **kwargs): + @property + def _pandas_train(self): + return False + + def _train_with_exog(self, train_data: TimeSeries, train_config=None, exog_data: TimeSeries = None): """ Generates a set of candidate models and picks the best one. @@ -36,18 +40,22 @@ def train_model(self, train_data: TimeSeries, train_config=None, **kwargs): :param train_config: the train config of the underlying model (optional). """ # don't call train_pre_process() in generate/evaluate theta. get model.train_data for the original train data. - processed_train_data = self.model.train_pre_process(train_data) - candidate_thetas = self.generate_theta(processed_train_data) - theta, model, train_result = self.evaluate_theta(candidate_thetas, processed_train_data, **kwargs) + candidate_thetas = self.generate_theta(train_data) + theta, model, train_result = self.evaluate_theta(candidate_thetas, train_data, exog_data=exog_data) if model is not None: self.model = model - return model.train_post_process(train_result, **kwargs) + return train_result else: - model = deepcopy(self.model) - model.reset() - self.set_theta(model, theta, processed_train_data) - self.model = model - return super().train_model(train_data, **kwargs) + self.set_theta(self.model, theta, train_data) + train_data = train_data.to_pd() if self.model._pandas_train else train_data + exog_data = exog_data.to_pd() if exog_data is not None and self.model._pandas_train else exog_data + if exog_data is None: + return self.model._train(train_data, train_config=train_config) + else: + return self.model._train_with_exog(train_data, train_config=train_config, exog_data=exog_data) + + def _train(self, train_data: TimeSeries, train_config=None): + return self._train_with_exog(train_data, train_config=train_config, exog_data=None) @abstractmethod def generate_theta(self, train_data: TimeSeries) -> Iterator: @@ -60,7 +68,7 @@ def generate_theta(self, train_data: TimeSeries) -> Iterator: @abstractmethod def evaluate_theta( - self, thetas: Iterator, train_data: TimeSeries, train_config=None, **kwargs + self, thetas: Iterator, train_data: TimeSeries, train_config=None, exog_data: TimeSeries = None ) -> Tuple[Any, Optional[ModelBase], Optional[Tuple[TimeSeries, Optional[TimeSeries]]]]: r""" :param thetas: Iterator of the hyperparameter candidates @@ -174,17 +182,21 @@ def _model_name(self, theta) -> str: raise NotImplementedError def evaluate_theta( - self, thetas: Iterator, train_data: TimeSeries, train_config=None, **kwargs + self, thetas: Iterator, train_data: TimeSeries, train_config=None, exog_data: TimeSeries = None ) -> Tuple[Any, ModelBase, Tuple[TimeSeries, Optional[TimeSeries]]]: best = None - y = train_data.to_pd() + y = train_data.to_pd() if self.model._pandas_train else train_data + y_exog = exog_data.to_pd() if exog_data is not None and self.model._pandas_train else exog_data y_target = pd.DataFrame(y[self.model.target_name]) for theta in thetas: # Start timer & fit model using the current theta start = time.time() model = deepcopy(self.model) self.set_theta(model, theta, train_data) - train_result = model._train(y, train_config=train_config) + if exog_data is None: + train_result = model._train(y, train_config=train_config) + else: + train_result = model._train_with_exog(y, train_config=train_config, exog_data=y_exog) fit_time = time.time() - start ic = float(self.get_ic(model=model, train_data=y_target, train_result=train_result)) logger.debug(f"{self._model_name(theta)}: {self.information_criterion.name}={ic:.3f}, Time={fit_time:.2f}s") @@ -201,4 +213,4 @@ def evaluate_theta( # Return best model after post-processing its train result theta, model, train_result = best["theta"], best["model"], best["train_result"] - return theta, model, model.train_post_process(train_result, **kwargs) + return theta, model, train_result diff --git a/merlion/models/automl/search.py b/merlion/models/automl/search.py new file mode 100644 index 000000000..5c8016d86 --- /dev/null +++ b/merlion/models/automl/search.py @@ -0,0 +1,36 @@ +# +# Copyright (c) 2022 salesforce.com, inc. +# All rights reserved. +# SPDX-License-Identifier: BSD-3-Clause +# For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/BSD-3-Clause +# +""" +Abstractions for hyperparameter search. +""" +from collections import OrderedDict +import itertools +from typing import Any, Dict, List + + +class GridSearch: + """ + Iterator over a grid of parameter values, skipping any restricted combinations of values. + """ + + def __init__(self, param_values: Dict[str, List], restrictions: List[Dict[str, Any]] = None): + """ + :param param_values: a dict mapping a set of parameter names to lists of values they can take on. + :param restrictions: a list of dicts indicating inadmissible combinations of parameter values. + For example, an ETS model has parameters error (add/mul), trend (add/mul/none), seasonal (add/mul), + and damped_trend (True/False). If we are only considering additive models, we would impose the restrictions + ``[{"error": "mul"}, {"trend": "mul"}, {"seasonal": "mul"}]``. Since a damped trend is only possible if + the model has a trend, we would add the restriction ``{"trend": None, "damped_trend": True}``. + """ + self.param_values = param_values + self.restrictions = [] if restrictions is None else restrictions + + def __iter__(self): + for val_tuples in itertools.product(*(itertools.product([k], v) for k, v in self.param_values.items())): + val_dict = OrderedDict(val_tuples) + if not any(all(k in val_dict and val_dict[k] == v for k, v in r.items()) for r in self.restrictions): + yield val_dict diff --git a/merlion/models/automl/seasonality.py b/merlion/models/automl/seasonality.py index 3bddc6907..31fd118b7 100644 --- a/merlion/models/automl/seasonality.py +++ b/merlion/models/automl/seasonality.py @@ -167,7 +167,7 @@ def set_theta(self, model, theta, train_data: TimeSeries = None): model.set_seasonality(theta, train_data.univariates[self.target_name]) def evaluate_theta( - self, thetas: Iterator, train_data: TimeSeries, train_config=None, **kwargs + self, thetas: Iterator, train_data: TimeSeries, train_config=None, exog_data: TimeSeries = None ) -> Tuple[Any, Optional[ModelBase], Optional[Tuple[TimeSeries, Optional[TimeSeries]]]]: # If multiple seasonalities are supported, return a list of all detected seasonalities return list(thetas) if self.config.multi_seasonality else next(thetas), None, None diff --git a/merlion/models/base.py b/merlion/models/base.py index a442c2f55..5b623e377 100644 --- a/merlion/models/base.py +++ b/merlion/models/base.py @@ -158,7 +158,6 @@ class ModelBase(metaclass=AutodocABCMeta): filename = "model.pkl" config_class = Config - _default_train_config = None train_data: Optional[TimeSeries] = None """ @@ -206,6 +205,10 @@ def auto_align(self) -> bool: """ return True + @property + def _default_train_config(self): + return None + def __getstate__(self): return {k: copy.deepcopy(v) for k, v in self.__dict__.items()} @@ -265,12 +268,18 @@ def last_train_time(self): def last_train_time(self, last_train_time): self._last_train_time = to_pd_datetime(last_train_time) + @property + def _pandas_train(self): + """ + Whether the _train() method requires ``pandas.DataFrame``. If False, we assume it accepts `TimeSeries`. + """ + return True + def train_pre_process(self, train_data: TimeSeries) -> TimeSeries: """ Applies pre-processing steps common for training most models. :param train_data: the original time series of training data - :return: the training data, after any necessary pre-processing has been applied """ self.train_data = train_data @@ -278,8 +287,7 @@ def train_pre_process(self, train_data: TimeSeries) -> TimeSeries: self.transform.train(train_data) train_data = self.transform(train_data) - # Make sure the training data is univariate & all timestamps are equally - # spaced (this is a key assumption for ARIMA) + # Make sure the training data is univariate if needed if self.require_univariate and train_data.dim != 1: raise RuntimeError( f"Transform {self.transform} transforms data into a {train_data.dim}-" @@ -287,6 +295,7 @@ def train_pre_process(self, train_data: TimeSeries) -> TimeSeries: f"only handle uni-variate time series. Change the transform or set target_seq_index." ) + # Make sure timestamps are equally spaced if needed (e.g. for ARIMA) t = train_data.time_stamps if self.require_even_sampling: assert_equal_timedeltas(train_data.univariates[train_data.names[0]]) @@ -301,14 +310,11 @@ def transform_time_series( self, time_series: TimeSeries, time_series_prev: TimeSeries = None ) -> Tuple[TimeSeries, Optional[TimeSeries]]: """ - Applies the model's pre-processing transform to ``time_series`` and - ``time_series_prev``. + Applies the model's pre-processing transform to ``time_series`` and ``time_series_prev``. :param time_series: The time series - :param time_series_prev: A time series of context, immediately preceding - ``time_series``. Optional. - - :return: The transformed ``time_series``. + :param time_series_prev: A time series of context, immediately preceding ``time_series``. Optional. + :return: The transformed ``time_series`` and ``time_series_prev``. """ if time_series_prev is not None and not time_series.is_empty(): t0 = time_series.t0 @@ -320,7 +326,8 @@ def transform_time_series( time_series = self.transform(time_series) return time_series, time_series_prev - def train(self, train_data: TimeSeries, train_config=None, *args, **kwargs): + @abstractmethod + def train(self, train_data: TimeSeries, train_config=None): """ Trains the model on the specified time series, optionally with some additional implementation-specific config options ``train_config``. @@ -328,33 +335,27 @@ def train(self, train_data: TimeSeries, train_config=None, *args, **kwargs): :param train_data: a `TimeSeries` to use as a training set :param train_config: additional configurations (if needed) """ - if train_config is None: - train_config = copy.deepcopy(self._default_train_config) - train_data = self.train_pre_process(train_data).to_pd() - train_result = self._train(train_data=train_data, train_config=train_config) - return self.train_post_process(train_result, *args, **kwargs) + raise NotImplementedError @abstractmethod def _train(self, train_data: pd.DataFrame, train_config=None): raise NotImplementedError @abstractmethod - def train_post_process(self, train_result, *args, **kwargs): + def train_post_process(self, train_result): raise NotImplementedError def _save_state(self, state_dict: Dict[str, Any], filename: str = None, **save_config) -> Dict[str, Any]: """ - Saves the model's state to the the specified file. If you override this - method, please also override _load_state(). By default, the model's state - dict is just serialized using dill. + Saves the model's state to the the specified file. If you override this method, please also override + ``_load_state()``. By default, the model's state dict is just serialized using dill. :param state_dict: The state dict to save. :param filename: The name of the file to save the model to. :param save_config: additional configurations (if needed) :return: The state dict to save. """ - if "config" in state_dict: # don't save the config - state_dict.pop("config") + state_dict.pop("config", None) # don't save the model's config in binary if filename is not None: with open(filename, "wb") as f: dill.dump(state_dict, f) @@ -381,13 +382,11 @@ def save(self, dirname: str, **save_config): def _load_state(self, state_dict: Dict[str, Any], **kwargs): """ - Loads the model's state from the specified file. Override this method if - you have overridden _save_state(). By default, the model's state dict is - loaded from a file (serialized by dill), and the state is set. + Loads the model's state from the specified file. Override this method if you have overridden _save_state(). + By default, the model's state dict is loaded from a file (serialized by dill), and the state is set. :param filename: serialized file containing the model's state. - :param kwargs: any additional keyword arguments to set manually in the - state dict (after loading it). + :param kwargs: any additional keyword arguments to set manually in the state dict (after loading it). """ if "config" in state_dict: # don't re-set the config state_dict.pop("config") diff --git a/merlion/models/defaults.py b/merlion/models/defaults.py index fa866dba3..e634c81c2 100644 --- a/merlion/models/defaults.py +++ b/merlion/models/defaults.py @@ -53,8 +53,12 @@ def _default_post_rule_train_config(self): def granularity(self): return self.config.granularity + def reset(self): + if self.model is not None: + self.model.reset() + def train( - self, train_data: TimeSeries, anomaly_labels: TimeSeries = None, train_config=None, post_rule_train_config=None + self, train_data: TimeSeries, train_config=None, anomaly_labels: TimeSeries = None, post_rule_train_config=None ) -> TimeSeries: transform_dict = dict(name="TemporalResample", granularity=self.granularity) @@ -107,9 +111,6 @@ def train( post_rule_train_config=post_rule_train_config, ) - def _train(self, train_data: pd.DataFrame, train_config=None): - raise NotImplementedError("Default model _train() should not be called") - class DefaultForecasterConfig(LayeredModelConfig): """ @@ -144,10 +145,13 @@ class DefaultForecaster(LayeredForecaster): def granularity(self): return self.config.granularity - def _train(self, train_data: pd.DataFrame, train_config=None): - raise NotImplementedError("Default model _train() should not be called") + def reset(self): + if self.model is not None: + self.model.reset() - def train(self, train_data: TimeSeries, train_config=None) -> Tuple[TimeSeries, Optional[TimeSeries]]: + def train( + self, train_data: TimeSeries, train_config=None, exog_data=None + ) -> Tuple[TimeSeries, Optional[TimeSeries]]: transform_dict = dict(name="TemporalResample", granularity=self.granularity) kwargs = dict(transform=transform_dict, **self.config.model_kwargs) @@ -168,4 +172,4 @@ def train(self, train_data: TimeSeries, train_config=None) -> Tuple[TimeSeries, else: self.model = ModelFactory.create("AutoETS", additive_only=True, **kwargs) - return super().train(train_data=train_data, train_config=train_config) + return super().train(train_data=train_data, train_config=train_config, exog_data=exog_data) diff --git a/merlion/models/ensemble/anomaly.py b/merlion/models/ensemble/anomaly.py index 1db1ed981..5b45a5c92 100644 --- a/merlion/models/ensemble/anomaly.py +++ b/merlion/models/ensemble/anomaly.py @@ -7,14 +7,13 @@ """ Ensembles of anomaly detectors. """ -import copy import logging import traceback from typing import List import pandas as pd -from merlion.evaluate.anomaly import TSADMetric +from merlion.evaluate.anomaly import TSADMetric, TSADEvaluator, TSADEvaluatorConfig from merlion.models.anomaly.base import DetectorBase, DetectorConfig from merlion.models.ensemble.base import EnsembleConfig, EnsembleTrainConfig, EnsembleBase from merlion.models.ensemble.combine import Mean @@ -83,7 +82,6 @@ class DetectorEnsemble(EnsembleBase, DetectorBase): models: List[DetectorBase] config_class = DetectorEnsembleConfig - _default_train_config = DetectorEnsembleTrainConfig() def __init__(self, config: DetectorEnsembleConfig = None, models: List[DetectorBase] = None): super().__init__(config=config, models=models) @@ -106,6 +104,10 @@ def require_univariate(self) -> bool: def _default_post_rule_train_config(self): return dict(metric=TSADMetric.F1, unsup_quantile=None) + @property + def _default_train_config(self): + return DetectorEnsembleTrainConfig() + @property def per_model_threshold(self): """ @@ -114,94 +116,81 @@ def per_model_threshold(self): """ return self.config.per_model_threshold - def _train(self, train_data: pd.DataFrame, train_config=None) -> pd.DataFrame: - raise NotImplementedError("_train() is not meant to be called for DetectorEnsemble") - - def train( + def _train( self, train_data: TimeSeries, - anomaly_labels: TimeSeries = None, train_config: DetectorEnsembleTrainConfig = None, - post_rule_train_config=None, + anomaly_labels: TimeSeries = None, ) -> TimeSeries: """ Trains each anomaly detector in the ensemble unsupervised, and each of their post-rules supervised (if labels are given). :param train_data: a `TimeSeries` of metric values to train the model. - :param anomaly_labels: a `TimeSeries` indicating which timestamps are anomalous. Optional. :param train_config: `DetectorEnsembleTrainConfig` for ensemble training. - :param post_rule_train_config: the post-rule train config to use for the ensemble-level post-rule. + :param anomaly_labels: a `TimeSeries` indicating which timestamps are anomalous. Optional. :return: A `TimeSeries` of the ensemble's anomaly scores on the training data. """ - if train_config is None: - train_config = copy.deepcopy(self._default_train_config) - full_train = self.train_pre_process(train_data) - train, valid = self.train_valid_split(full_train, train_config) - if train is not valid: + train, valid = self.train_valid_split(train_data, train_config) + if valid is not None: logger.warning("Using a train/validation split to train a DetectorEnsemble is not recommended!") - per_model_train_configs = train_config.per_model_train_configs - if per_model_train_configs is None: - per_model_train_configs = [None] * len(self.models) - assert len(per_model_train_configs) == len(self.models), ( - f"You must provide the same number of per-model train configs " - f"as models, but received received {len(per_model_train_configs)} " - f"train configs for an ensemble with {len(self.models)} models" + train_cfgs = train_config.per_model_train_configs + if train_cfgs is None: + train_cfgs = [None] * len(self.models) + assert len(train_cfgs) == len(self.models), ( + f"You must provide the same number of per-model train configs as models, but received received" + f"{len(train_cfgs)} train configs for an ensemble with {len(self.models)} models." ) - # Train each model individually, with its own post-rule train config - per_model_pr_cfgs = train_config.per_model_post_rule_train_configs - if per_model_pr_cfgs is None: - per_model_pr_cfgs = [None] * len(self.models) - assert len(per_model_pr_cfgs) == len(self.models), ( + pr_cfgs = train_config.per_model_post_rule_train_configs + if pr_cfgs is None: + pr_cfgs = [None] * len(self.models) + assert len(pr_cfgs) == len(self.models), ( f"You must provide the same number of per-model post-rule train configs as models, but received " - f"{len(per_model_pr_cfgs)} post-rule train configs for an ensemble with {len(self.models)} models." + f"{len(pr_cfgs)} post-rule train configs for an ensemble with {len(self.models)} models." ) - all_train_scores = [] - for i, (model, cfg, pr_cfg) in enumerate(zip(self.models, per_model_train_configs, per_model_pr_cfgs)): + + # Train each model individually, with its own train config & post-rule train config + all_scores = [] + eval_cfg = TSADEvaluatorConfig(retrain_freq=None, cadence=self.get_max_common_horizon(train)) + # TODO: parallelize me + for i, (model, cfg, pr_cfg) in enumerate(zip(self.models, train_cfgs, pr_cfgs)): try: - train_scores = model.train( - train_data=train, anomaly_labels=anomaly_labels, train_config=cfg, post_rule_train_config=pr_cfg + train_kwargs = dict(train_config=cfg, anomaly_labels=anomaly_labels, post_rule_train_config=pr_cfg) + train_scores, valid_scores = TSADEvaluator(model=model, config=eval_cfg).get_predict( + train_vals=train, test_vals=valid, train_kwargs=train_kwargs, post_process=True ) - train_scores = model.post_rule(train_scores) + scores = train_scores if valid is None else valid_scores except Exception: logger.warning( f"Caught an exception while training model {i + 1}/{len(self.models)} ({type(model).__name__}). " f"Model will not be used. {traceback.format_exc()}" ) self.combiner.set_model_used(i, False) + scores = None + all_scores.append(scores) + + # Train combiner on train data if there is no validation data + if valid is None: + return self.train_combiner(all_scores, anomaly_labels) + + # Otherwise, train the combiner on the validation data, and re-train the models on the full data + self.train_combiner(all_scores, anomaly_labels.bisect(t=valid.time_stamps[0], t_in_left=False)[1]) + all_scores = [] + # TODO: parallelize me + for i, (model, cfg, pr_cfg, used) in enumerate(zip(self.models, train_cfgs, pr_cfgs, self.models_used)): + model.reset() + if used: + logger.info(f"Re-training model {i+1}/{len(self.models)} ({type(model).__name__}) on full data...") + train_kwargs = dict(train_config=cfg, anomaly_labels=anomaly_labels, post_rule_train_config=pr_cfg) + train_scores = model.train(train_data, **train_kwargs) + train_scores = model.post_rule(train_scores) + else: train_scores = None - all_train_scores.append(train_scores) - - # Train combiner on validation data if there is any, otherwise use train data - if train is valid: - combined = self.train_combiner(all_train_scores, anomaly_labels) - else: - valid = self.truncate_valid_data(valid) - all_valid_scores = [m.get_anomaly_label(valid) for m in self.models] - self.train_combiner(all_valid_scores, anomaly_labels) - - # Re-train models on the full data if validation data was distinct from train data - all_train_scores = [] - for model, cfg, used in zip(self.models, per_model_pr_cfgs, self.models_used): - model.reset() - if used: - train_scores = model.train( - train_data=full_train, anomaly_labels=anomaly_labels, post_rule_train_config=cfg - ) - train_scores = model.post_rule(train_scores) - else: - train_scores = None - all_train_scores.append(train_scores) - combined = self.combiner(all_train_scores, anomaly_labels) - - # Train the model-level post-rule - self.train_post_process( - train_result=combined, anomaly_labels=anomaly_labels, post_rule_train_config=post_rule_train_config - ) - return combined + all_scores.append(train_scores) + return self.combiner(all_scores, anomaly_labels) def _get_anomaly_score(self, time_series: pd.DataFrame, time_series_prev: pd.DataFrame = None) -> pd.DataFrame: time_series, time_series_prev = TimeSeries.from_pd(time_series), TimeSeries.from_pd(time_series_prev) diff --git a/merlion/models/ensemble/base.py b/merlion/models/ensemble/base.py index 2140cd1d2..7c3351d2a 100644 --- a/merlion/models/ensemble/base.py +++ b/merlion/models/ensemble/base.py @@ -101,7 +101,6 @@ class EnsembleBase(ModelBase, metaclass=AutodocABCMeta): """ config_class = EnsembleConfig - _default_train_config = EnsembleTrainConfig(valid_frac=0.0) def __init__(self, config: EnsembleConfig = None, models: List[ModelBase] = None): """ @@ -131,6 +130,10 @@ def combiner(self) -> CombinerBase: """ return self.config.combiner + @property + def _default_train_config(self): + return EnsembleTrainConfig(valid_frac=0.0) + def reset(self): for model in self.models: model.reset() @@ -143,23 +146,34 @@ def models_used(self): else: return [True] * len(self.models) + @property + def _pandas_train(self): + return False + def train_valid_split( self, transformed_train_data: TimeSeries, train_config: EnsembleTrainConfig - ) -> Tuple[TimeSeries, TimeSeries]: + ) -> Tuple[TimeSeries, Union[TimeSeries, None]]: valid_frac = train_config.valid_frac if valid_frac == 0 or not self.combiner.requires_training: - return transformed_train_data, transformed_train_data + return transformed_train_data, None t0 = transformed_train_data.t0 tf = transformed_train_data.tf return transformed_train_data.bisect(t0 + (tf - t0) * (1 - valid_frac)) - def get_max_common_horizon(self): + def get_max_common_horizon(self, train_data=None): horizons = [] for model in self.models: dt = getattr(model, "timedelta", None) n = getattr(model, "max_forecast_steps", None) + if train_data is not None and n is not None and dt is None: + try: + model.train_pre_process(train_data) + except: + continue + dt = getattr(model, "timedelta", None) + n = getattr(model, "max_forecast_steps", None) if dt is not None and n is not None: try: h = pd.to_timedelta(dt * n, unit="s") @@ -171,19 +185,6 @@ def get_max_common_horizon(self): i = np.argmin([pd.to_datetime(0) + h for h in horizons if h is not None]) return horizons[i] - def truncate_valid_data(self, transformed_valid_data: TimeSeries): - tf = transformed_valid_data.tf - max_model_tfs = [tf] - for model in self.models: - t0 = getattr(model, "last_train_time", None) - dt = getattr(model, "timedelta", None) - n = getattr(model, "max_forecast_steps", None) - if all(x is not None for x in [t0, dt, n]): - max_model_tfs.append(t0 + dt * n) - - tf = min(max_model_tfs) - return transformed_valid_data.bisect(tf, t_in_left=True)[0] - def train_combiner(self, all_model_outs: List[TimeSeries], target: TimeSeries, **kwargs) -> TimeSeries: combined = self.combiner.train(all_model_outs, target, **kwargs) if not any(self.models_used): diff --git a/merlion/models/ensemble/forecast.py b/merlion/models/ensemble/forecast.py index a91cef414..419fe4aad 100644 --- a/merlion/models/ensemble/forecast.py +++ b/merlion/models/ensemble/forecast.py @@ -14,13 +14,13 @@ from merlion.evaluate.forecast import ForecastEvaluator, ForecastEvaluatorConfig from merlion.models.ensemble.base import EnsembleConfig, EnsembleTrainConfig, EnsembleBase from merlion.models.ensemble.combine import Mean -from merlion.models.forecast.base import ForecasterConfig, ForecasterBase +from merlion.models.forecast.base import ForecasterBase, ForecasterExogConfig, ForecasterExogBase from merlion.utils.time_series import TimeSeries logger = logging.getLogger(__name__) -class ForecasterEnsembleConfig(ForecasterConfig, EnsembleConfig): +class ForecasterEnsembleConfig(ForecasterExogConfig, EnsembleConfig): """ Config class for an ensemble of forecasters. """ @@ -60,7 +60,7 @@ def target_seq_index(self, target_seq_index): self._target_seq_index = target_seq_index -class ForecasterEnsemble(EnsembleBase, ForecasterBase): +class ForecasterEnsemble(EnsembleBase, ForecasterExogBase): """ Class representing an ensemble of multiple forecasting models. """ @@ -68,7 +68,9 @@ class ForecasterEnsemble(EnsembleBase, ForecasterBase): models: List[ForecasterBase] config_class = ForecasterEnsembleConfig - _default_train_config = EnsembleTrainConfig(valid_frac=0.2) + @property + def _default_train_config(self): + return EnsembleTrainConfig(valid_frac=0.2) @property def require_even_sampling(self) -> bool: @@ -82,7 +84,9 @@ def __init__(self, config: ForecasterEnsembleConfig = None, models: List[Forecas ), f"Expected all models in {type(self).__name__} to be forecasters, but got a {type(model).__name__}." model.config.invert_transform = True - def train_pre_process(self, train_data: TimeSeries) -> TimeSeries: + def train_pre_process( + self, train_data: TimeSeries, exog_data: TimeSeries = None, return_exog=None + ) -> Union[TimeSeries, Tuple[TimeSeries, Union[TimeSeries, None]]]: idxs = [model.target_seq_index for model in self.models] if any(i is not None for i in idxs): self.config.target_seq_index = [i for i in idxs if i is not None][0] @@ -91,7 +95,7 @@ def train_pre_process(self, train_data: TimeSeries) -> TimeSeries: f"to be used in a ForecasterEnsemble, but got the following " f"target_seq_idx values: {idxs}" ) - return super().train_pre_process(train_data=train_data) + return super().train_pre_process(train_data=train_data, exog_data=exog_data, return_exog=return_exog) def resample_time_stamps(self, time_stamps: Union[int, List[int]], time_series_prev: TimeSeries = None): return time_stamps @@ -99,11 +103,10 @@ def resample_time_stamps(self, time_stamps: Union[int, List[int]], time_series_p def train_combiner(self, all_model_outs: List[TimeSeries], target: TimeSeries, **kwargs) -> TimeSeries: return super().train_combiner(all_model_outs, target, target_seq_index=self.target_seq_index, **kwargs) - def _train( - self, train_data: pd.DataFrame, train_config: EnsembleTrainConfig = None + def _train_with_exog( + self, train_data: TimeSeries, train_config: EnsembleTrainConfig = None, exog_data: TimeSeries = None ) -> Tuple[Optional[TimeSeries], None]: - full_train = TimeSeries.from_pd(train_data) - train, valid = self.train_valid_split(full_train, train_config) + train, valid = self.train_valid_split(train_data, train_config) per_model_train_configs = train_config.per_model_train_configs if per_model_train_configs is None: @@ -116,12 +119,17 @@ def _train( # Train individual models on the training data preds, errs = [], [] + eval_cfg = ForecastEvaluatorConfig(retrain_freq=None, horizon=self.get_max_common_horizon(train)) + # TODO: parallelize me for i, (model, cfg) in enumerate(zip(self.models, per_model_train_configs)): - logger.info(f"Training model {i+1}/{len(self.models)} ({type(model).__name__})...") + logger.info(f"Training & evaluating model {i+1}/{len(self.models)} ({type(model).__name__})...") try: - pred, err = model.train(train, train_config=cfg) - preds.append(pred) - errs.append(err) + train_kwargs = dict(train_config=cfg) + (train_pred, train_err), pred = ForecastEvaluator(model=model, config=eval_cfg).get_predict( + train_vals=train, test_vals=valid, exog_data=exog_data, train_kwargs=train_kwargs + ) + preds.append(train_pred if valid is None else pred) + errs.append(train_err if valid is None else None) except Exception: logger.warning( f"Caught an exception while training model {i+1}/{len(self.models)} ({type(model).__name__}). " @@ -131,40 +139,21 @@ def _train( preds.append(None) errs.append(None) - # Train the combiner on the validation data - if train is valid: - combined = self.train_combiner(preds, train) - else: - logger.info("Evaluating validation performance...") - h = self.get_max_common_horizon() - preds = [] - for i, model in enumerate(self.models): - pred = None - try: - if self.combiner.get_model_used(i): - evaluator = ForecastEvaluator(model=model, config=ForecastEvaluatorConfig(horizon=h)) - _, pred = evaluator.get_predict(train_vals=train, test_vals=valid, pretrained=True) - except Exception: - logger.warning( - f"Caught an exception while evaluating model {i + 1}/{len(self.models)} " - f"({type(model).__name__}). Model will not be used. {traceback.format_exc()}" - ) - self.combiner.set_model_used(i, False) - preds.append(pred) - combined = self.train_combiner(preds, valid) + # Train the combiner on the train data if we didn't use validation data. + if valid is None: + pred = self.train_combiner(preds, train_data) + err = None if any(e is None for e in errs) else self.combiner(errs, train_data) + return pred, err - # No need to re-train if we didn't use a validation split - if train is valid: - err = None if any(e is None for e in errs) else self.combiner(errs, None) - return combined, err - - # Re-train on the full data if we used a validation split + # Otherwise, train the combiner on the validation data, and re-train the models on the full data + self.train_combiner(preds, valid) full_preds, full_errs = [], [] + # TODO: parallelize me for i, (model, used, cfg) in enumerate(zip(self.models, self.models_used, per_model_train_configs)): model.reset() if used: logger.info(f"Re-training model {i+1}/{len(self.models)} ({type(model).__name__}) on full data...") - pred, err = model.train(full_train, train_config=cfg) + pred, err = model.train(train_data, train_config=cfg, exog_data=exog_data) else: pred, err = None, None full_preds.append(pred) @@ -172,18 +161,29 @@ def _train( if any(used and e is None for used, e in zip(self.models_used, full_errs)): err = None else: - err = self.combiner(full_errs, None) - return self.combiner(full_preds, None), err - - def _forecast( - self, time_stamps: Union[int, List[int]], time_series_prev: pd.DataFrame = None, return_prev: bool = False - ) -> Tuple[pd.DataFrame, Union[pd.DataFrame, None]]: + err = self.combiner(full_errs, train_data) + return self.combiner(full_preds, train_data), err + + def _forecast_with_exog( + self, + time_stamps: List[int], + time_series_prev: pd.DataFrame = None, + return_prev=False, + exog_data: pd.DataFrame = None, + exog_data_prev: pd.DataFrame = None, + ) -> Tuple[pd.DataFrame, Optional[pd.DataFrame]]: preds, errs = [], [] time_series_prev = TimeSeries.from_pd(time_series_prev) + if exog_data is not None: + exog_data = pd.concat((exog_data_prev, exog_data)) if exog_data_prev is not None else exog_data + exog_data = TimeSeries.from_pd(exog_data) for model, used in zip(self.models, self.models_used): if used: pred, err = model.forecast( - time_stamps=time_stamps, time_series_prev=time_series_prev, return_prev=return_prev + time_stamps=time_stamps, + time_series_prev=time_series_prev, + exog_data=exog_data, + return_prev=return_prev, ) preds.append(pred) errs.append(err) diff --git a/merlion/models/forecast/__init__.py b/merlion/models/forecast/__init__.py index 587a50c57..782046bd3 100644 --- a/merlion/models/forecast/__init__.py +++ b/merlion/models/forecast/__init__.py @@ -1,11 +1,12 @@ # -# Copyright (c) 2021 salesforce.com, inc. +# Copyright (c) 2022 salesforce.com, inc. # All rights reserved. # SPDX-License-Identifier: BSD-3-Clause # For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/BSD-3-Clause # """ -Contains all forecasting models. +Contains all forecasting models, including those which support +`exogenous regressors `. For forecasting, we define an abstract base `ForecasterBase` class which inherits from `ModelBase` and supports the following interface, in addition to ``model.save()`` and ``ForecasterClass.load`` defined for ``ModelBase``: diff --git a/merlion/models/forecast/arima.py b/merlion/models/forecast/arima.py index b41e8c73e..e9d657e42 100644 --- a/merlion/models/forecast/arima.py +++ b/merlion/models/forecast/arima.py @@ -1,5 +1,5 @@ # -# Copyright (c) 2021 salesforce.com, inc. +# Copyright (c) 2022 salesforce.com, inc. # All rights reserved. # SPDX-License-Identifier: BSD-3-Clause # For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/BSD-3-Clause @@ -44,8 +44,7 @@ def seasonal_order(self, seasonal_order: Tuple[int, int, int, int]): class Arima(Sarima): """ - Implementation of the classic statistical model ARIMA (AutoRegressive - Integrated Moving Average) for forecasting. + Implementation of the classic statistical model ARIMA (AutoRegressive Integrated Moving Average) for forecasting. """ config_class = ArimaConfig diff --git a/merlion/models/forecast/base.py b/merlion/models/forecast/base.py index d7d322f39..5c1a6249c 100644 --- a/merlion/models/forecast/base.py +++ b/merlion/models/forecast/base.py @@ -18,7 +18,9 @@ from merlion.models.base import Config, ModelBase from merlion.plot import Figure -from merlion.utils.time_series import to_pd_datetime, to_timestamp, TimeSeries +from merlion.transform.base import TransformBase, Identity +from merlion.transform.factory import TransformFactory +from merlion.utils.time_series import to_pd_datetime, to_timestamp, TimeSeries, AggregationPolicy, MissingValuePolicy logger = logging.getLogger(__name__) @@ -30,17 +32,22 @@ class ForecasterConfig(Config): max_forecast_steps: Optional[int] = None target_seq_index: Optional[int] = None - invert_transform: bool = False + invert_transform: bool = None - def __init__(self, max_forecast_steps: int = None, target_seq_index: int = None, invert_transform=False, **kwargs): + def __init__(self, max_forecast_steps: int = None, target_seq_index: int = None, invert_transform=None, **kwargs): """ - :param max_forecast_steps: Max # of steps we would like to forecast for. - Required for some models like `MSES` and `LGBMForecaster`. + :param max_forecast_steps: Max # of steps we would like to forecast for. Required for some models like `MSES`. :param target_seq_index: The index of the univariate (amongst all univariates in a general multivariate time series) whose value we would like to forecast. :param invert_transform: Whether to automatically invert the ``transform`` before returning a forecast. + By default, we will invert the transform for all base forecasters if it supports a proper inversion, but + we will not invert it for forecaster-based anomaly detectors or transforms without proper inversions. """ + from merlion.models.anomaly.base import DetectorConfig + super().__init__(**kwargs) + if invert_transform is None: + invert_transform = self.transform.proper_inversion and not isinstance(self, DetectorConfig) self.max_forecast_steps = max_forecast_steps self.target_seq_index = target_seq_index self.invert_transform = invert_transform @@ -68,8 +75,11 @@ class ForecasterBase(ModelBase): """ def __init__(self, config: ForecasterConfig): + if self.supports_exog: + assert isinstance(config, ForecasterExogConfig) super().__init__(config) self.target_name = None + self.exog_dim = None @property def max_forecast_steps(self): @@ -97,6 +107,13 @@ def require_univariate(self) -> bool: """ return False + @property + def supports_exog(self): + """ + Whether this forecaster supports exogenous data. + """ + return False + def resample_time_stamps(self, time_stamps: Union[int, List[int]], time_series_prev: TimeSeries = None): assert self.timedelta is not None and self.last_train_time is not None, ( "train() must be called before you can call forecast(). " @@ -145,7 +162,9 @@ def resample_time_stamps(self, time_stamps: Union[int, List[int]], time_series_p return to_timestamp(resampled).tolist() - def train_pre_process(self, train_data: TimeSeries) -> TimeSeries: + def train_pre_process( + self, train_data: TimeSeries, exog_data: TimeSeries = None, return_exog=None + ) -> Union[TimeSeries, Tuple[TimeSeries, Union[TimeSeries, None]]]: train_data = super().train_pre_process(train_data) if self.dim == 1: self.config.target_seq_index = 0 @@ -161,19 +180,48 @@ def train_pre_process(self, train_data: TimeSeries) -> TimeSeries: ) self.target_name = train_data.names[self.target_seq_index] - return train_data - - def train(self, train_data: TimeSeries, train_config=None) -> Tuple[TimeSeries, Optional[TimeSeries]]: + # Handle exogenous data + if return_exog is None: + return_exog = exog_data is not None + if not self.supports_exog: + if exog_data is not None: + exog_data = None + logger.warning(f"Exogenous regressors are not supported for model {type(self).__name__}") + if exog_data is not None: + self.exog_dim = exog_data.dim + self.config.exog_transform.train(exog_data) + else: + self.exog_dim = None + if return_exog and exog_data is not None: + exog_data, _ = self.transform_exog_data(exog_data=exog_data, time_stamps=train_data.time_stamps) + return (train_data, exog_data) if return_exog else train_data + + def train( + self, train_data: TimeSeries, train_config=None, exog_data: TimeSeries = None + ) -> Tuple[TimeSeries, Optional[TimeSeries]]: """ Trains the forecaster on the input time series. :param train_data: a `TimeSeries` of metric values to train the model. :param train_config: Additional training configs, if needed. Only required for some models. + :param exog_data: A time series of exogenous variables, sampled at the same time stamps as ``train_data``. + Exogenous variables are known a priori, and they are independent of the variable being forecasted. + Only supported for models which inherit from `ForecasterExogBase`. :return: the model's prediction on ``train_data``, in the same format as if you called `ForecasterBase.forecast` on the time stamps of ``train_data`` """ - return super().train(train_data=train_data, train_config=train_config) + if train_config is None: + train_config = copy.deepcopy(self._default_train_config) + train_data, exog_data = self.train_pre_process(train_data, exog_data=exog_data, return_exog=True) + if self._pandas_train: + train_data = train_data.to_pd() + exog_data = None if exog_data is None else exog_data.to_pd() + if exog_data is None: + train_result = self._train(train_data=train_data, train_config=train_config) + else: + train_result = self._train_with_exog(train_data=train_data, train_config=train_config, exog_data=exog_data) + return self.train_post_process(train_result) def train_post_process( self, train_result: Tuple[Union[TimeSeries, pd.DataFrame], Optional[Union[TimeSeries, pd.DataFrame]]] @@ -182,50 +230,60 @@ def train_post_process( Converts the train result (forecast & stderr for training data) into TimeSeries objects, and inverts the model's transform if desired. """ - train_pred, train_stderr = [TimeSeries.from_pd(df) for df in train_result] - if self.invert_transform: - train_pred, train_stderr = self._apply_inverse_transform(train_pred, train_stderr) - return train_pred, train_stderr + return self._process_forecast(*train_result) + + def transform_exog_data( + self, + exog_data: TimeSeries, + time_stamps: Union[List[int], pd.DatetimeIndex], + time_series_prev: TimeSeries = None, + ) -> Union[Tuple[TimeSeries, TimeSeries], Tuple[TimeSeries, None], Tuple[None, None]]: + if exog_data is not None: + logger.warning(f"Exogenous regressors are not supported for model {type(self).__name__}") + return None, None @abstractmethod def _train(self, train_data: pd.DataFrame, train_config=None) -> Tuple[pd.DataFrame, Optional[pd.DataFrame]]: raise NotImplementedError + def _train_with_exog( + self, train_data: pd.DataFrame, train_config=None, exog_data: pd.DataFrame = None + ) -> Tuple[pd.DataFrame, Optional[pd.DataFrame]]: + return self._train(train_data=train_data, train_config=train_config) + def forecast( self, time_stamps: Union[int, List[int]], time_series_prev: TimeSeries = None, + exog_data: TimeSeries = None, return_iqr: bool = False, return_prev: bool = False, ) -> Union[Tuple[TimeSeries, Optional[TimeSeries]], Tuple[TimeSeries, TimeSeries, TimeSeries]]: """ - Returns the model's forecast on the timestamps given. Note that if - ``self.transform`` is specified in the config, the forecast is a forecast - of transformed values! It is up to you to manually invert the transform - if desired. - - :param time_stamps: Either a ``list`` of timestamps we wish to forecast for, - or the number of steps (``int``) we wish to forecast for. - :param time_series_prev: a list of (timestamp, value) pairs immediately - preceding ``time_series``. If given, we use it to initialize the time - series model. Otherwise, we assume that ``time_series`` immediately - follows the training data. - :param return_iqr: whether to return the inter-quartile range for the - forecast. Note that not all models support this option. - :param return_prev: whether to return the forecast for - ``time_series_prev`` (and its stderr or IQR if relevant), in addition - to the forecast for ``time_stamps``. Only used if ``time_series_prev`` - is provided. - :return: ``(forecast, forecast_stderr)`` if ``return_iqr`` is false, - ``(forecast, forecast_lb, forecast_ub)`` otherwise. + Returns the model's forecast on the timestamps given. If ``self.transform`` is specified in the config, the + forecast is a forecast of transformed values by default. To invert the transform and forecast the actual + values of the time series, specify ``invert_transform = True`` when specifying the config. + + :param time_stamps: Either a ``list`` of timestamps we wish to forecast for, or the number of steps (``int``) + we wish to forecast for. + :param time_series_prev: a time series immediately preceding ``time_series``. If given, we use it to initialize + the forecaster's state. Otherwise, we assume that ``time_series`` immediately follows the training data. + :param exog_data: A time series of exogenous variables. Exogenous variables are known a priori, and they are + independent of the variable being forecasted. ``exog_data`` must include data for all of ``time_stamps``; + if ``time_series_prev`` is given, it must include data for all of ``time_series_prev.time_stamps`` as well. + Optional. Only supported for models which inherit from `ForecasterExogBase`. + :param return_iqr: whether to return the inter-quartile range for the forecast. + Only supported for models which return error bars. + :param return_prev: whether to return the forecast for ``time_series_prev`` (and its stderr or IQR if relevant), + in addition to the forecast for ``time_stamps``. Only used if ``time_series_prev`` is provided. + :return: ``(forecast, stderr)`` if ``return_iqr`` is false, ``(forecast, lb, ub)`` otherwise. - ``forecast``: the forecast for the timestamps given - - ``forecast_stderr``: the standard error of each forecast value. - May be ``None``. - - ``forecast_lb``: 25th percentile of forecast values for each timestamp - - ``forecast_ub``: 75th percentile of forecast values for each timestamp + - ``stderr``: the standard error of each forecast value. May be ``None``. + - ``lb``: 25th percentile of forecast values for each timestamp + - ``ub``: 75th percentile of forecast values for each timestamp """ - # determine the time stamps to forecast for, and resample them if needed + # Determine the time stamps to forecast for, and resample them if needed orig_t = None if isinstance(time_stamps, (int, float)) else time_stamps time_stamps = self.resample_time_stamps(time_stamps, time_series_prev) if return_prev and time_series_prev is not None: @@ -234,7 +292,7 @@ def forecast( else: orig_t = time_series_prev.time_stamps + to_timestamp(orig_t).tolist() - # transform time_series_prev if relevant (before making the prediction) + # Transform time_series_prev if it is given old_inversion_state = self.transform.inversion_state if time_series_prev is None: time_series_prev_df = None @@ -247,90 +305,103 @@ def forecast( time_series_prev_df = time_series_prev.to_pd() # Make the prediction - forecast, err = self._forecast( - time_stamps=time_stamps, time_series_prev=time_series_prev_df, return_prev=return_prev + exog_data, exog_data_prev = self.transform_exog_data( + exog_data, time_stamps=time_stamps, time_series_prev=time_series_prev ) + if exog_data is None: + forecast, err = self._forecast( + time_stamps=time_stamps, time_series_prev=time_series_prev_df, return_prev=return_prev + ) + else: + forecast, err = self._forecast_with_exog( + time_stamps=time_stamps, + time_series_prev=time_series_prev_df, + return_prev=return_prev, + exog_data=exog_data.to_pd(), + exog_data_prev=None if exog_data_prev is None else exog_data_prev.to_pd(), + ) - # Format the return value(s) + # Format the return values and reset the transform's inversion state if self.invert_transform and time_series_prev is None: time_series_prev = self.transform(self.train_data) if time_series_prev is not None: - time_series_prev = time_series_prev.univariates[time_series_prev.names[self.target_seq_index]].to_ts() - - # Handle the case where we want to return the IQR. If applying the inverse transform, we just apply - # the inverse transform directly to the upper/lower bounds. - if return_iqr: - # Compute positive & negative deviations. Case 1 is where we return distinct upper & lower errors. - if err is None: - logger.warning("Model returned err = None, so returning IQR = (None, None)") - d_neg, d_pos = None, None - elif isinstance(err, tuple) and len(err) == 2: - d_neg, d_pos = err[0].values * norm.ppf(0.25), err[1].values * norm.ppf(0.75) - else: - d_neg, d_pos = err.values * norm.ppf(0.25), err.values * norm.ppf(0.75) - - # Concatenate time_series_prev to the forecast & upper/lower bounds if inverting the transform - if self.invert_transform: - time_series_prev_df = time_series_prev.to_pd() - if d_neg is not None and d_pos is not None: - d_neg = np.concatenate((np.zeros((len(time_series_prev_df), d_neg.shape[1])), d_neg)) - d_pos = np.concatenate((np.zeros((len(time_series_prev_df), d_neg.shape[1])), d_pos)) - forecast = pd.concat((time_series_prev_df, forecast)) - - # Convert to time series & invert the transform if desired - if d_neg is None or d_pos is None: - lb, ub = None, None - else: - lb = TimeSeries.from_pd((forecast + d_neg).rename(columns=lambda c: f"{c}_lower")) - ub = TimeSeries.from_pd((forecast + d_pos).rename(columns=lambda c: f"{c}_upper")) - forecast = TimeSeries.from_pd(forecast) - if self.invert_transform: - forecast = self.transform.invert(forecast, retain_inversion_state=True) - if lb is not None and ub is not None: - lb = self.transform.invert(lb, retain_inversion_state=True) - ub = self.transform.invert(ub, retain_inversion_state=True) - ret = forecast, lb, ub - - # Handle the case where we directly return the forecast and its standard error. - # If applying the inverse transform, we compute an upper/lower bound, apply the inverse transform to those - # bounds, and use the difference of those bounds as the stderr. - else: - if isinstance(err, tuple) and len(err) == 2: - err = (err[0].abs().values + err[1].abs().values) / 2 - err = pd.DataFrame(err, index=forecast.index, columns=[f"{c}_err" for c in forecast.columns]) - forecast = TimeSeries.from_pd(forecast) - err = None if err is None else TimeSeries.from_pd(err) - ret = forecast, err - if self.invert_transform: - ret = self._apply_inverse_transform(forecast, err, None if return_prev else time_series_prev) - + time_series_prev = pd.DataFrame(time_series_prev.univariates[time_series_prev.names[self.target_seq_index]]) + ret = self._process_forecast(forecast, err, time_series_prev, return_prev=return_prev, return_iqr=return_iqr) self.transform.inversion_state = old_inversion_state return tuple(None if x is None else x.align(reference=orig_t) for x in ret) - def _apply_inverse_transform(self, forecast, err, time_series_prev=None): - forecast = forecast if time_series_prev is None else time_series_prev + forecast + def _process_forecast(self, forecast, err, time_series_prev=None, return_prev=False, return_iqr=False): + forecast = forecast.to_pd() if isinstance(forecast, TimeSeries) else forecast + if return_prev and time_series_prev is not None: + forecast = pd.concat((time_series_prev, forecast)) + # Obtain negative & positive error bars which are appropriately padded if err is not None: - forecast_df, err_df = forecast.to_pd(), err.to_pd() - n = len(time_series_prev) if time_series_prev is not None else 0 - if n > 0: - zeros = pd.DataFrame(np.zeros((n, err.dim)), index=forecast_df.index[:n], columns=err_df.columns) - err_df = pd.concat((zeros, err_df)) - lb = TimeSeries.from_pd(forecast_df.values - err_df) - ub = TimeSeries.from_pd(forecast_df.values + err_df) - lb = self.transform.invert(lb, retain_inversion_state=True) - ub = self.transform.invert(ub, retain_inversion_state=True) - err = TimeSeries.from_pd((ub.to_pd() - lb.to_pd()).abs() / 2) - - forecast = self.transform.invert(forecast, retain_inversion_state=True) + err = (err,) if not isinstance(err, tuple) else err + assert isinstance(err, tuple) and len(err) in (1, 2) + assert all(isinstance(e, (pd.DataFrame, TimeSeries)) for e in err) + new_err = [] + for e in err: + e = e.to_pd() if isinstance(e, TimeSeries) else e + n, d = len(forecast) - len(e), e.shape[1] + if n > 0: + e = pd.concat((pd.DataFrame(np.zeros((n, d)), index=forecast.index[:n], columns=e.columns), e)) + e.columns = [f"{c}_err" for c in forecast.columns] + new_err.append(e.abs()) + e_neg, e_pos = new_err if len(new_err) == 2 else (new_err[0], new_err[0]) + else: + e_neg = e_pos = None + + # Compute upper/lower bounds for the (potentially inverted) forecast. + # Only do this if returning the IQR or inverting the transform. + invert_transform = self.invert_transform and not self.transform.identity_inversion + if (return_iqr or invert_transform) and e_neg is not None and e_pos is not None: + lb = TimeSeries.from_pd((forecast + e_neg.values * (norm.ppf(0.25) if return_iqr else -1))) + ub = TimeSeries.from_pd((forecast + e_pos.values * (norm.ppf(0.75) if return_iqr else 1))) + if invert_transform: + lb = self.transform.invert(lb, retain_inversion_state=True) + ub = self.transform.invert(ub, retain_inversion_state=True) + else: + lb = ub = None + + # Convert the forecast to TimeSeries and invert the transform on it if desired + forecast = TimeSeries.from_pd(forecast) + if invert_transform: + forecast = self.transform.invert(forecast, retain_inversion_state=True) + + # Return the IQR if desired + if return_iqr: + if lb is None or ub is None: + logger.warning("Model returned err = None, so returning IQR = (None, None)") + else: + lb, ub = lb.rename(lambda c: f"{c}_lower"), ub.rename(lambda c: f"{c}_upper") + return forecast, lb, ub + + # Otherwise, either compute the stderr from the upper/lower bounds (if relevant), or just use the error + if lb is not None and ub is not None: + err = TimeSeries.from_pd((ub.to_pd() - lb.to_pd().values).rename(columns=lambda c: f"{c}_err").abs() / 2) + elif e_neg is not None and e_pos is not None: + err = TimeSeries.from_pd(e_pos if e_neg is e_pos else (e_neg + e_pos) / 2) + else: + err = None return forecast, err @abstractmethod def _forecast( self, time_stamps: List[int], time_series_prev: pd.DataFrame = None, return_prev=False - ) -> Tuple[pd.DataFrame, Union[None, pd.DataFrame, Tuple[pd.DataFrame, pd.DataFrame]]]: + ) -> Tuple[pd.DataFrame, Optional[pd.DataFrame]]: raise NotImplementedError + def _forecast_with_exog( + self, + time_stamps: List[int], + time_series_prev: pd.DataFrame = None, + return_prev=False, + exog_data: pd.DataFrame = None, + exog_data_prev: pd.DataFrame = None, + ) -> Tuple[pd.DataFrame, Optional[pd.DataFrame]]: + return self._forecast(time_stamps=time_stamps, time_series_prev=time_series_prev, return_prev=return_prev) + def batch_forecast( self, time_stamps_list: List[List[int]], @@ -344,25 +415,19 @@ def batch_forecast( ] ]: """ - Returns the model's forecast on a batch of timestamps given. Note that if - ``self.transform`` is specified in the config, the forecast is a forecast - of transformed values! It is up to you to manually invert the transform - if desired. + Returns the model's forecast on a batch of timestamps given. :param time_stamps_list: a list of lists of timestamps we wish to forecast for :param time_series_prev_list: a list of TimeSeries immediately preceding the time stamps in time_stamps_list - :param return_iqr: whether to return the inter-quartile range for the - forecast. Note that not all models support this option. - :param return_prev: whether to return the forecast for - ``time_series_prev`` (and its stderr or IQR if relevant), in addition - to the forecast for ``time_stamps``. Only used if ``time_series_prev`` - is provided. + :param return_iqr: whether to return the inter-quartile range for the forecast. + Only supported by models which can return error bars. + :param return_prev: whether to return the forecast for ``time_series_prev`` (and its stderr or IQR if relevant), + in addition to the forecast for ``time_stamps``. Only used if ``time_series_prev`` is provided. :return: ``(forecast, forecast_stderr)`` if ``return_iqr`` is false, ``(forecast, forecast_lb, forecast_ub)`` otherwise. - ``forecast``: the forecast for the timestamps given - - ``forecast_stderr``: the standard error of each forecast value. - May be ``None``. + - ``forecast_stderr``: the standard error of each forecast value. May be ``None``. - ``forecast_lb``: 25th percentile of forecast values for each timestamp - ``forecast_ub``: 75th percentile of forecast values for each timestamp """ @@ -370,7 +435,12 @@ def batch_forecast( if time_series_prev_list is None: time_series_prev_list = [None for _ in range(len(time_stamps_list))] for time_stamps, time_series_prev in zip(time_stamps_list, time_series_prev_list): - out = self.forecast(time_stamps, time_series_prev, return_iqr, return_prev) + out = self.forecast( + time_stamps=time_stamps, + time_series_prev=time_series_prev, + return_iqr=return_iqr, + return_prev=return_prev, + ) out_list.append(out) return tuple(zip(*out_list)) @@ -380,24 +450,25 @@ def get_figure( time_series: TimeSeries = None, time_stamps: List[int] = None, time_series_prev: TimeSeries = None, + exog_data: TimeSeries = None, plot_forecast_uncertainty=False, plot_time_series_prev=False, ) -> Figure: """ - :param time_series: the time series over whose timestamps we wish to - make a forecast. Exactly one of ``time_series`` or ``time_stamps`` - should be provided. - :param time_stamps: a list of timestamps we wish to forecast for. Exactly - one of ``time_series`` or ``time_stamps`` should be provided. - :param time_series_prev: a `TimeSeries` immediately preceding - ``time_stamps``. If given, we use it to initialize the time series - model. Otherwise, we assume that ``time_stamps`` immediately follows - the training data. - :param plot_forecast_uncertainty: whether to plot uncertainty estimates (the - inter-quartile range) for forecast values. Not supported for all - models. - :param plot_time_series_prev: whether to plot ``time_series_prev`` (and - the model's fit for it). Only used if ``time_series_prev`` is given. + :param time_series: the time series over whose timestamps we wish to make a forecast. Exactly one of + ``time_series`` or ``time_stamps`` should be provided. + :param time_stamps: Either a ``list`` of timestamps we wish to forecast for, or the number of steps (``int``) + we wish to forecast for. Exactly one of ``time_series`` or ``time_stamps`` should be provided. + :param time_series_prev: a time series immediately preceding ``time_series``. If given, we use it to initialize + the forecaster's state. Otherwise, we assume that ``time_series`` immediately follows the training data. + :param exog_data: A time series of exogenous variables. Exogenous variables are known a priori, and they are + independent of the variable being forecasted. ``exog_data`` must include data for all of ``time_stamps``; + if ``time_series_prev`` is given, it must include data for all of ``time_series_prev.time_stamps`` as well. + Optional. Only supported for models which inherit from `ForecasterExogBase`. + :param plot_forecast_uncertainty: whether to plot uncertainty estimates (the inter-quartile range) for forecast + values. Not supported for all models. + :param plot_time_series_prev: whether to plot ``time_series_prev`` (and the model's fit for it). + Only used if ``time_series_prev`` is given. :return: a `Figure` of the model's forecast. """ assert not ( @@ -417,7 +488,7 @@ def get_figure( # Get forecast + bounds if plotting uncertainty if plot_forecast_uncertainty: yhat, lb, ub = self.forecast( - time_stamps, time_series_prev, return_iqr=True, return_prev=plot_time_series_prev + time_stamps, time_series_prev, exog_data=exog_data, return_iqr=True, return_prev=plot_time_series_prev ) yhat, lb, ub = [None if x is None else x.univariates[x.names[0]] for x in [yhat, lb, ub]] @@ -425,7 +496,7 @@ def get_figure( else: lb, ub = None, None yhat, err = self.forecast( - time_stamps, time_series_prev, return_iqr=False, return_prev=plot_time_series_prev + time_stamps, time_series_prev, exog_data=exog_data, return_iqr=False, return_prev=plot_time_series_prev ) yhat = yhat.univariates[yhat.names[0]] @@ -468,6 +539,7 @@ def plot_forecast( time_series: TimeSeries = None, time_stamps: List[int] = None, time_series_prev: TimeSeries = None, + exog_data: TimeSeries = None, plot_forecast_uncertainty=False, plot_time_series_prev=False, figsize=(1000, 600), @@ -478,20 +550,20 @@ def plot_forecast( plotting the uncertainty of the forecast, as well as the past values (both true and predicted) of the time series. - :param time_series: the time series over whose timestamps we wish to - make a forecast. Exactly one of ``time_series`` or ``time_stamps`` - should be provided. - :param time_stamps: a list of timestamps we wish to forecast for. Exactly - one of ``time_series`` or ``time_stamps`` should be provided. - :param time_series_prev: a `TimeSeries` immediately preceding - ``time_stamps``. If given, we use it to initialize the time series - model. Otherwise, we assume that ``time_stamps`` immediately follows - the training data. - :param plot_forecast_uncertainty: whether to plot uncertainty estimates (the - inter-quartile range) for forecast values. Not supported for all - models. - :param plot_time_series_prev: whether to plot ``time_series_prev`` (and - the model's fit for it). Only used if ``time_series_prev`` is given. + :param time_series: the time series over whose timestamps we wish to make a forecast. Exactly one of + ``time_series`` or ``time_stamps`` should be provided. + :param time_stamps: Either a ``list`` of timestamps we wish to forecast for, or the number of steps (``int``) + we wish to forecast for. Exactly one of ``time_series`` or ``time_stamps`` should be provided. + :param time_series_prev: a time series immediately preceding ``time_series``. If given, we use it to initialize + the forecaster's state. Otherwise, we assume that ``time_series`` immediately follows the training data. + :param exog_data: A time series of exogenous variables. Exogenous variables are known a priori, and they are + independent of the variable being forecasted. ``exog_data`` must include data for all of ``time_stamps``; + if ``time_series_prev`` is given, it must include data for all of ``time_series_prev.time_stamps`` as well. + Optional. Only supported for models which inherit from `ForecasterExogBase`. + :param plot_forecast_uncertainty: whether to plot uncertainty estimates (the inter-quartile range) for forecast + values. Not supported for all models. + :param plot_time_series_prev: whether to plot ``time_series_prev`` (and the model's fit for it). Only used if + ``time_series_prev`` is given. :param figsize: figure size in pixels :param ax: matplotlib axis to add this plot to @@ -501,6 +573,7 @@ def plot_forecast( time_series=time_series, time_stamps=time_stamps, time_series_prev=time_series_prev, + exog_data=exog_data, plot_forecast_uncertainty=plot_forecast_uncertainty, plot_time_series_prev=plot_time_series_prev, ) @@ -513,6 +586,7 @@ def plot_forecast_plotly( time_series: TimeSeries = None, time_stamps: List[int] = None, time_series_prev: TimeSeries = None, + exog_data: TimeSeries = None, plot_forecast_uncertainty=False, plot_time_series_prev=False, figsize=(1000, 600), @@ -522,15 +596,16 @@ def plot_forecast_plotly( plotting the uncertainty of the forecast, as well as the past values (both true and predicted) of the time series. - :param time_series: the time series over whose timestamps we wish to - make a forecast. Exactly one of ``time_series`` or ``time_stamps`` - should be provided. - :param time_stamps: a list of timestamps we wish to forecast for. Exactly - one of ``time_series`` or ``time_stamps`` should be provided. - :param time_series_prev: a `TimeSeries` immediately preceding - ``time_stamps``. If given, we use it to initialize the time series - model. Otherwise, we assume that ``time_stamps`` immediately follows - the training data. + :param time_series: the time series over whose timestamps we wish to make a forecast. Exactly one of + ``time_series`` or ``time_stamps`` should be provided. + :param time_stamps: Either a ``list`` of timestamps we wish to forecast for, or the number of steps (``int``) + we wish to forecast for. Exactly one of ``time_series`` or ``time_stamps`` should be provided. + :param time_series_prev: a time series immediately preceding ``time_series``. If given, we use it to initialize + the forecaster's state. Otherwise, we assume that ``time_series`` immediately follows the training data. + :param exog_data: A time series of exogenous variables. Exogenous variables are known a priori, and they are + independent of the variable being forecasted. ``exog_data`` must include data for all of ``time_stamps``; + if ``time_series_prev`` is given, it must include data for all of ``time_series_prev.time_stamps`` as well. + Optional. Only supported for models which inherit from `ForecasterExogBase`. :param plot_forecast_uncertainty: whether to plot uncertainty estimates (the inter-quartile range) for forecast values. Not supported for all models. @@ -542,8 +617,165 @@ def plot_forecast_plotly( time_series=time_series, time_stamps=time_stamps, time_series_prev=time_series_prev, + exog_data=exog_data, plot_forecast_uncertainty=plot_forecast_uncertainty, plot_time_series_prev=plot_time_series_prev, ) title = f"{type(self).__name__}: Forecast of {self.target_name}" return fig.plot_plotly(title=title, metric_name=self.target_name, figsize=figsize) + + +class ForecasterExogConfig(ForecasterConfig): + _default_exog_transform = Identity() + exog_transform: TransformBase = None + + def __init__( + self, + exog_transform: TransformBase = None, + exog_aggregation_policy: Union[AggregationPolicy, str] = "Mean", + exog_missing_value_policy: Union[MissingValuePolicy, str] = "ZFill", + **kwargs, + ): + """ + :param exog_transform: The pre-processing transform for exogenous data. Note: resampling is handled separately. + :param exog_aggregation_policy: The policy to use for aggregating values in exogenous data, + to ensure it is sampled at the same timestamps as the endogenous data. + :param exog_missing_value_policy: The policy to use for imputing missing values in exogenous data, + to ensure it is sampled at the same timestamps as the endogenous data. + """ + super().__init__(**kwargs) + if exog_transform is None: + self.exog_transform = copy.deepcopy(self._default_exog_transform) + elif isinstance(exog_transform, dict): + self.exog_transform = TransformFactory.create(**exog_transform) + else: + self.exog_transform = exog_transform + self.exog_aggregation_policy = exog_aggregation_policy + self.exog_missing_value_policy = exog_missing_value_policy + + @property + def exog_aggregation_policy(self): + return self._exog_aggregation_policy + + @exog_aggregation_policy.setter + def exog_aggregation_policy(self, agg): + if isinstance(agg, str): + valid = set(AggregationPolicy.__members__.keys()) + if agg not in valid: + raise KeyError(f"{agg} is not a aggregation policy. Valid aggregation policies are: {valid}") + agg = AggregationPolicy[agg] + self._exog_aggregation_policy = agg + + @property + def exog_missing_value_policy(self): + return self._exog_missing_value_policy + + @exog_missing_value_policy.setter + def exog_missing_value_policy(self, mv: Union[MissingValuePolicy, str]): + if isinstance(mv, str): + valid = set(MissingValuePolicy.__members__.keys()) + if mv not in valid: + raise KeyError(f"{mv} is not a valid missing value policy. Valid missing value policies are: {valid}") + mv = MissingValuePolicy[mv] + self._exog_missing_value_policy = mv + + +class ForecasterExogBase(ForecasterBase): + """ + Base class for a forecaster model which supports exogenous variables. Exogenous variables are known a priori, and + they are independent of the variable being forecasted. + """ + + @property + def supports_exog(self): + return True + + @property + def exog_transform(self): + return self.config.exog_transform + + @property + def exog_aggregation_policy(self): + return self.config.exog_aggregation_policy + + @property + def exog_missing_value_policy(self): + return self.config.exog_missing_value_policy + + def transform_exog_data( + self, + exog_data: TimeSeries, + time_stamps: Union[List[int], pd.DatetimeIndex], + time_series_prev: TimeSeries = None, + ) -> Union[Tuple[TimeSeries, TimeSeries], Tuple[TimeSeries, None], Tuple[None, None]]: + """ + Transforms & resamples exogenous data and splits it into two subsets: + one with the same timestamps as ``time_series_prev`` (``None`` if ``time_series_prev`` is ``None``), + and one with the timestamps ``time_stamps``. + + :param exog_data: The exogenous data of interest. + :param time_stamps: The timestamps of interest (either the timestamps of data, or the timestamps at which + we want to obtain a forecast) + :param time_series_prev: The timestamps of a time series preceding ``time_stamps`` as context. Optional. + :return: ``(exog_data, exog_data_prev)``, where ``exog_data`` has been resampled to match the ``time_stamps`` + and ``exog_data_prev` has been resampled to match ``time_series_prev.time_stamps``. + """ + # Check validity + if exog_data is None: + if self.exog_dim is not None: + raise ValueError(f"Trained with {self.exog_dim}-dim exogenous data, but received none.") + return None, None + if self.exog_dim is None: + raise ValueError("Trained without exogenous data, but received exogenous data.") + if self.exog_dim != exog_data.dim: + raise ValueError(f"Trained with {self.exog_dim}-dim exogenous data, but received {exog_data.dim}-dim.") + + # Transform & resample + exog_data = self.exog_transform(exog_data) + if time_series_prev is not None: + t = time_series_prev.time_stamps + to_timestamp(time_stamps).tolist() + exog_data = exog_data.align( + reference=t, + aggregation_policy=self.exog_aggregation_policy, + missing_value_policy=self.exog_missing_value_policy, + ) + exog_data_prev, exog_data = exog_data.bisect(time_stamps[0], t_in_left=False) + else: + exog_data_prev = None + exog_data = exog_data.align( + reference=time_stamps, + aggregation_policy=self.exog_aggregation_policy, + missing_value_policy=self.exog_missing_value_policy, + ) + return exog_data, exog_data_prev + + @abstractmethod + def _train_with_exog( + self, train_data: pd.DataFrame, train_config=None, exog_data: pd.DataFrame = None + ) -> Tuple[pd.DataFrame, Optional[pd.DataFrame]]: + raise NotImplementedError + + def _train(self, train_data: pd.DataFrame, train_config=None) -> Tuple[pd.DataFrame, Optional[pd.DataFrame]]: + return self._train_with_exog(train_data=train_data, train_config=train_config, exog_data=None) + + @abstractmethod + def _forecast_with_exog( + self, + time_stamps: List[int], + time_series_prev: pd.DataFrame = None, + return_prev=False, + exog_data: pd.DataFrame = None, + exog_data_prev: pd.DataFrame = None, + ) -> Tuple[pd.DataFrame, Optional[pd.DataFrame]]: + raise NotImplementedError + + def _forecast( + self, time_stamps: List[int], time_series_prev: pd.DataFrame = None, return_prev=False + ) -> Tuple[pd.DataFrame, Optional[pd.DataFrame]]: + return self._forecast_with_exog( + time_stamps=time_stamps, + time_series_prev=time_series_prev, + return_prev=return_prev, + exog_data=None, + exog_data_prev=None, + ) diff --git a/merlion/models/forecast/ets.py b/merlion/models/forecast/ets.py index 9d64a7fef..430b2690d 100644 --- a/merlion/models/forecast/ets.py +++ b/merlion/models/forecast/ets.py @@ -19,7 +19,7 @@ from merlion.models.automl.seasonality import SeasonalityModel from merlion.models.forecast.base import ForecasterBase, ForecasterConfig from merlion.transform.resample import TemporalResample -from merlion.utils import TimeSeries, UnivariateTimeSeries, to_pd_datetime +from merlion.utils import UnivariateTimeSeries, to_pd_datetime logger = logging.getLogger(__name__) @@ -124,23 +124,23 @@ def _max_lookback(self): return max(10, 10 + 2 * (self.seasonal_periods // 2), 2 * self.seasonal_periods) def _instantiate_model(self, data): - return ETSModel( - data, - error=self.error, - trend=self.trend, - seasonal=None if self.seasonal_periods is None else self.seasonal, - damped_trend=self.damped_trend, - seasonal_periods=self.seasonal_periods, - ) + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + return ETSModel( + data, + error=self.error, + trend=self.trend, + seasonal=None if self.seasonal_periods is None else self.seasonal, + damped_trend=self.damped_trend, + seasonal_periods=self.seasonal_periods, + ) def _train(self, train_data: pd.DataFrame, train_config=None): # train model name = self.target_name train_data = train_data[name] times = train_data.index - with warnings.catch_warnings(): - warnings.simplefilter("ignore") - self.model = self._instantiate_model(train_data).fit(disp=False) + self.model = self._instantiate_model(train_data).fit(disp=False) # get forecast for the training data self._last_val = train_data[-1] diff --git a/merlion/models/forecast/lstm.py b/merlion/models/forecast/lstm.py index da14ad196..7b4ec59c4 100644 --- a/merlion/models/forecast/lstm.py +++ b/merlion/models/forecast/lstm.py @@ -248,7 +248,6 @@ class LSTM(ForecasterBase): """ config_class = LSTMConfig - _default_train_config = LSTMTrainConfig() def __init__(self, config: LSTMConfig): super().__init__(config) @@ -263,6 +262,10 @@ def __init__(self, config: LSTMConfig): def require_even_sampling(self) -> bool: return True + @property + def _default_train_config(self): + return LSTMTrainConfig() + def _train(self, train_data: pd.DataFrame, train_config: LSTMTrainConfig = None): train_data = train_data[self.target_name] train_values = train_data.values diff --git a/merlion/models/forecast/prophet.py b/merlion/models/forecast/prophet.py index a7bcfd395..e1a0c1ed1 100644 --- a/merlion/models/forecast/prophet.py +++ b/merlion/models/forecast/prophet.py @@ -11,6 +11,7 @@ import logging import os from typing import Iterable, List, Tuple, Union +import warnings import numpy as np import pandas as pd @@ -18,7 +19,7 @@ import prophet.serialize from merlion.models.automl.seasonality import SeasonalityModel -from merlion.models.forecast.base import ForecasterBase, ForecasterConfig +from merlion.models.forecast.base import ForecasterExogBase, ForecasterExogConfig from merlion.utils import TimeSeries, UnivariateTimeSeries, to_pd_datetime, to_timestamp logger = logging.getLogger(__name__) @@ -57,7 +58,7 @@ def __exit__(self, *_): os.close(fd) -class ProphetConfig(ForecasterConfig): +class ProphetConfig(ForecasterExogConfig): """ Configuration class for Facebook's `Prophet` model, as described by `Taylor & Letham, 2017 `__. @@ -111,7 +112,7 @@ def __init__( self.holidays = holidays -class Prophet(SeasonalityModel, ForecasterBase): +class Prophet(ForecasterExogBase, SeasonalityModel): """ Facebook's model for time series forecasting. See docs for `ProphetConfig` and `Taylor & Letham, 2017 `__ for more details. @@ -146,7 +147,9 @@ def __setstate__(self, state): model = state["model"] if isinstance(model, str): state = copy.copy(state) - state["model"] = prophet.serialize.model_from_json(model) + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + state["model"] = prophet.serialize.model_from_json(model) super().__setstate__(state) @property @@ -186,10 +189,28 @@ def set_seasonality(self, theta, train_data: UnivariateTimeSeries): logger.debug(f"Add seasonality {str(p)} ({p * dt})") self.model.add_seasonality(name=f"extra_season_{p}", period=period, fourier_order=p) - def _train(self, train_data: pd.DataFrame, train_config=None): - series = train_data[self.target_name] - df = pd.DataFrame({"ds": series.index, "y": series.values}) + def resample_time_stamps(self, time_stamps: Union[int, List[int]], time_series_prev: TimeSeries = None): + if isinstance(time_stamps, (int, float)): + times = pd.date_range(start=self.last_train_time, freq=self.timedelta, periods=int(time_stamps + 1))[1:] + time_stamps = to_timestamp(times) + return time_stamps + + def _add_exog_data(self, data: pd.DataFrame, exog_data: pd.DataFrame): + df = pd.DataFrame(data[self.target_name].rename("y")) + if exog_data is not None: + df = df.join(exog_data, how="outer") + df.index.rename("ds", inplace=True) + df.reset_index(inplace=True) + return df + + def _train_with_exog( + self, train_data: pd.DataFrame, train_config=None, exog_data: pd.DataFrame = None + ) -> Tuple[pd.DataFrame, pd.DataFrame]: + if exog_data is not None: + for col in exog_data.columns: + self.model.add_regressor(col) + df = self._add_exog_data(train_data, exog_data) with _suppress_stdout_stderr(): self.model.fit(df) @@ -203,22 +224,20 @@ def _train(self, train_data: pd.DataFrame, train_config=None): err = pd.DataFrame(sigma, index=df.ds, columns=[f"{self.target_name}_err"]) return yhat, err - def resample_time_stamps(self, time_stamps: Union[int, List[int]], time_series_prev: TimeSeries = None): - if isinstance(time_stamps, (int, float)): - times = pd.date_range(start=self.last_train_time, freq=self.timedelta, periods=int(time_stamps + 1))[1:] - time_stamps = to_timestamp(times) - return time_stamps - - def _forecast( - self, time_stamps: List[int], time_series_prev: pd.DataFrame = None, return_prev=False + def _forecast_with_exog( + self, + time_stamps: List[int], + time_series_prev: pd.DataFrame = None, + return_prev=False, + exog_data: pd.DataFrame = None, + exog_data_prev: pd.DataFrame = None, ) -> Tuple[pd.DataFrame, pd.DataFrame]: # Construct data frame for prophet - df = pd.DataFrame() time_stamps = to_pd_datetime(time_stamps) + df = self._add_exog_data(data=pd.DataFrame({self.target_name: np.nan}, index=time_stamps), exog_data=exog_data) if time_series_prev is not None: - series = time_series_prev.iloc[:, self.target_seq_index] - df = pd.DataFrame({"ds": series.index, "y": series.values}) - df = pd.concat((df, pd.DataFrame({"ds": time_stamps}))) + past = self._add_exog_data(time_series_prev, exog_data_prev) + df = pd.concat((past, df)) # Determine the right set of timestamps to use if return_prev and time_series_prev is not None: diff --git a/merlion/models/forecast/sarima.py b/merlion/models/forecast/sarima.py index edae57ac4..bba81f670 100644 --- a/merlion/models/forecast/sarima.py +++ b/merlion/models/forecast/sarima.py @@ -17,14 +17,14 @@ from statsmodels.tsa.arima.model import ARIMA as sm_Sarima from merlion.models.automl.seasonality import SeasonalityModel -from merlion.models.forecast.base import ForecasterBase, ForecasterConfig +from merlion.models.forecast.base import ForecasterExogBase, ForecasterExogConfig from merlion.transform.resample import TemporalResample -from merlion.utils.time_series import TimeSeries, UnivariateTimeSeries, to_pd_datetime, to_timestamp +from merlion.utils.time_series import UnivariateTimeSeries, to_pd_datetime, to_timestamp logger = logging.getLogger(__name__) -class SarimaConfig(ForecasterConfig): +class SarimaConfig(ForecasterExogConfig): """ Config class for `Sarima` (Seasonal AutoRegressive Integrated Moving Average). """ @@ -46,7 +46,7 @@ def __init__(self, order=(4, 1, 2), seasonal_order=(2, 0, 1, 24), **kwargs): self.seasonal_order = seasonal_order -class Sarima(ForecasterBase, SeasonalityModel): +class Sarima(ForecasterExogBase, SeasonalityModel): """ Implementation of the classic statistical model SARIMA (Seasonal AutoRegressive Integrated Moving Average) for forecasting. @@ -89,17 +89,19 @@ def _max_lookback(self) -> int: return 0 return 2 * orders["reduced_ar"] + 1 - def _train(self, train_data: pd.DataFrame, train_config=None): + def _train_with_exog( + self, train_data: pd.DataFrame, train_config=None, exog_data: pd.DataFrame = None + ) -> Tuple[pd.DataFrame, pd.DataFrame]: # train model name = self.target_name train_data = train_data[name] times = train_data.index train_config = train_config or {} - for k, v in {"enforce_stationarity": False, "enforce_invertibility": False}.items(): - train_config[k] = train_config.get(k, v) with warnings.catch_warnings(): warnings.simplefilter("ignore") - model = sm_Sarima(train_data, order=self.order, seasonal_order=self.seasonal_order, **train_config) + model = sm_Sarima( + train_data, exog=exog_data, order=self.order, seasonal_order=self.seasonal_order, **train_config + ) self.model = model.fit(method_kwargs={"disp": 0}) # FORECASTING: forecast for next n steps using Sarima model @@ -108,8 +110,13 @@ def _train(self, train_data: pd.DataFrame, train_config=None): err = [np.sqrt(self.model.params["sigma2"])] * len(train_data) return pd.DataFrame(yhat, index=times, columns=[name]), pd.DataFrame(err, index=times, columns=[f"{name}_err"]) - def _forecast( - self, time_stamps: List[int], time_series_prev: pd.DataFrame = None, return_prev=False + def _forecast_with_exog( + self, + time_stamps: List[int], + time_series_prev: pd.DataFrame = None, + return_prev=False, + exog_data: pd.DataFrame = None, + exog_data_prev: pd.DataFrame = None, ) -> Tuple[pd.DataFrame, pd.DataFrame]: # If there is a time_series_prev, use it to set the SARIMA model's state, and then obtain its forecast if time_series_prev is None: @@ -118,10 +125,13 @@ def _forecast( else: val_prev = time_series_prev.iloc[-self._max_lookback :, self.target_seq_index] last_val = val_prev[-1] - model = self.model.apply(val_prev, validate_specification=False) + exog_data_prev = None if exog_data_prev is None else exog_data_prev.loc[val_prev.index] + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + model = self.model.apply(val_prev, exog=exog_data_prev, validate_specification=False) try: - forecast_result = model.get_forecast(len(time_stamps)) + forecast_result = model.get_forecast(len(time_stamps), exog=exog_data) pred = np.asarray(forecast_result.predicted_mean) err = np.asarray(forecast_result.se_mean) assert len(pred) == len( diff --git a/merlion/models/forecast/smoother.py b/merlion/models/forecast/smoother.py index 9b7852698..d0e96726e 100644 --- a/merlion/models/forecast/smoother.py +++ b/merlion/models/forecast/smoother.py @@ -7,14 +7,12 @@ """ Multi-Scale Exponential Smoother for univariate time series forecasting. """ -from copy import deepcopy import logging from math import floor from typing import Dict, List, Optional, Tuple, Union import numpy as np import pandas as pd -from scipy.stats import norm from merlion.utils.time_series import TimeSeries, UnivariateTimeSeries, assert_equal_timedeltas from merlion.utils.istat import ExponentialMovingAverage, RecencyWeightedVariance @@ -169,7 +167,6 @@ class MSES(ForecasterBase): \end{align*} """ config_class = MSESConfig - _default_train_config = MSESTrainConfig() def __init__(self, config: MSESConfig): super().__init__(config) @@ -186,6 +183,10 @@ def __init__(self, config: MSESConfig): def require_even_sampling(self) -> bool: return True + @property + def _pandas_train(self): + return False + @property def rho(self): return self.config.rho @@ -198,15 +199,15 @@ def backsteps(self): def max_horizon(self): return self.max_forecast_steps * self.timedelta - def _train(self, train_data: pd.DataFrame, train_config: MSESTrainConfig = None): - if train_config is None: - train_config = deepcopy(self._default_train_config) - if isinstance(train_config, dict): - train_config = MSESTrainConfig(**train_config) + @property + def _default_train_config(self): + return MSESTrainConfig() + def _train(self, train_data: TimeSeries, train_config: MSESTrainConfig = None): + if isinstance(train_config, dict): + train_config = MSESTrainConfig(**train_config) name = self.target_name - train_data = UnivariateTimeSeries.from_pd(train_data[name]) - + train_data = train_data.univariates[name] if not train_config.incremental: self.delta_estimator.train(train_data) return None, None diff --git a/merlion/models/forecast/trees.py b/merlion/models/forecast/trees.py index f4257b0c1..37287189f 100644 --- a/merlion/models/forecast/trees.py +++ b/merlion/models/forecast/trees.py @@ -80,7 +80,6 @@ class TreeEnsembleForecaster(ForecasterBase, MultiVariateAutoRegressionMixin): """ config_class = TreeEnsembleForecasterConfig - model = None def __init__(self, config: TreeEnsembleForecasterConfig): @@ -106,9 +105,12 @@ def require_even_sampling(self) -> bool: def require_univariate(self) -> bool: return False + @property + def _default_train_config(self): + return dict() + def _train(self, train_data: pd.DataFrame, train_config=None): train_data = TimeSeries.from_pd(train_data) - train_config = {} if train_config is None else train_config fit = train_config.get("fit", True) # univariate case, hybrid of sequence + autoregression diff --git a/merlion/models/forecast/vector_ar.py b/merlion/models/forecast/vector_ar.py index 48d40efc4..760d87ba2 100644 --- a/merlion/models/forecast/vector_ar.py +++ b/merlion/models/forecast/vector_ar.py @@ -71,14 +71,7 @@ def _train(self, train_data: pd.DataFrame, train_config=None) -> Tuple[pd.DataFr # train model if self.dim == 1: train_data = train_data.iloc[:, 0] - self.model = sm_ARIMA( - train_data, - order=(self.maxlags, 0, 0), - enforce_stationarity=False, - enforce_invertibility=False, - validate_specification=False, - ) - self.model = self.model.fit(method="yule_walker", cov_type="oim") + self.model = sm_ARIMA(train_data, order=(self.maxlags, 0, 0)).fit(method="yule_walker", cov_type="oim") else: self.model = sm_VAR(train_data).fit(self.maxlags) diff --git a/merlion/models/layers.py b/merlion/models/layers.py index 3e3edf718..175d4877d 100644 --- a/merlion/models/layers.py +++ b/merlion/models/layers.py @@ -19,18 +19,28 @@ from merlion.models.base import Config, ModelBase from merlion.models.factory import ModelFactory from merlion.models.anomaly.base import DetectorBase, DetectorConfig -from merlion.models.forecast.base import ForecasterBase, ForecasterConfig +from merlion.models.forecast.base import ForecasterBase, ForecasterConfig, ForecasterExogBase, ForecasterExogConfig from merlion.models.anomaly.forecast_based.base import ForecastingDetectorBase from merlion.transform.base import Identity from merlion.transform.resample import TemporalResample from merlion.transform.sequence import TransformSequence from merlion.utils import TimeSeries -from merlion.utils.misc import AutodocABCMeta +from merlion.utils.misc import AutodocABCMeta, call_with_accepted_kwargs logger = logging.getLogger(__name__) _DETECTOR_MEMBERS = dict(inspect.getmembers(DetectorConfig)).keys() _FORECASTER_MEMBERS = dict(inspect.getmembers(ForecasterConfig)).keys() +_FORECASTER_EXOG_MEMBERS = dict(inspect.getmembers(ForecasterExogConfig)).keys() + + +def _is_detector_attr(base_model, attr): + return isinstance(base_model, DetectorBase) and attr in _DETECTOR_MEMBERS + + +def _is_forecaster_attr(base_model, attr): + is_member = isinstance(base_model, ForecasterBase) and attr in _FORECASTER_MEMBERS + return is_member or (isinstance(base_model, ForecasterExogBase) and attr in _FORECASTER_EXOG_MEMBERS) class LayeredModelConfig(Config): @@ -63,11 +73,9 @@ def __init__(self, model: Union[ModelBase, Dict], model_kwargs=None, **kwargs): self.model_kwargs = {} super().__init__(**kwargs) - # Reserve unused kwargs to try initializing the model with - # (useful if model is None, and can be helpful for reset()) - extra_kwargs = {k: v for k, v in kwargs.items() if k not in self.to_dict()} - model_kwargs = {**extra_kwargs, **model_kwargs} - self.model_kwargs = {k: v.to_dict() if hasattr(v, "to_dict") else v for k, v in model_kwargs.items()} + # Reserve unused kwargs to initialize the model with (useful if model is None, and can be helpful for reset()) + model_kwargs = {k: v.to_dict() if hasattr(v, "to_dict") else v for k, v in {**kwargs, **model_kwargs}.items()} + self.model_kwargs = self._remove_used_kwargs(self.to_dict(), model_kwargs) @property def base_model(self): @@ -82,20 +90,23 @@ def base_model(self): def to_dict(self, _skipped_keys=None): _skipped_keys = _skipped_keys if _skipped_keys is not None else set() config_dict = super().to_dict(_skipped_keys.union({"model"})) - if not self.model_kwargs and "model_kwargs" in config_dict: - config_dict["model_kwargs"] = None + # Serialize only the model's config (the model itself is serialized separately) if "model" not in _skipped_keys: if self.model is None: config_dict["model"] = None else: config_dict["model"] = dict(name=type(self.model).__name__, **self.model.config.to_dict(_skipped_keys)) + # Don't serialize any of the used keys from model_kwargs + if "model_kwargs" in config_dict: + config_dict["model_kwargs"] = self._remove_used_kwargs(config_dict, config_dict["model_kwargs"]) return config_dict @classmethod def from_dict(cls, config_dict: Dict[str, Any], return_unused_kwargs=False, dim=None, **kwargs): config, kwargs = super().from_dict(config_dict=config_dict, return_unused_kwargs=True, dim=dim, **kwargs) if config.model is None: - used = {k: v for k, v in kwargs.items() if k in _DETECTOR_MEMBERS or k in _FORECASTER_MEMBERS} + base_class_members = set(_DETECTOR_MEMBERS).union(_FORECASTER_MEMBERS).union(_FORECASTER_EXOG_MEMBERS) + used = {k: v for k, v in kwargs.items() if k in base_class_members} config.model_kwargs.update(used) kwargs = {k: v for k, v in kwargs.items() if k not in used} @@ -105,6 +116,14 @@ def from_dict(cls, config_dict: Dict[str, Any], return_unused_kwargs=False, dim= return config, kwargs return config + @staticmethod + def _remove_used_kwargs(config_dict, kwargs): + used_keys = set() # Removes kwargs which have already been used by given config dict + while isinstance(config_dict, dict): + used_keys = used_keys.union(config_dict.keys()) + config_dict = config_dict.get("model", None) + return {k: v for k, v in kwargs.items() if k not in used_keys} + def __copy__(self): config_dict = super().to_dict(_skipped_keys={"model"}) config_dict["model"] = self.model @@ -119,9 +138,7 @@ def __getattr__(self, item): if item in ["model", "base_model"]: return super().__getattribute__(item) base_model = self.base_model - is_detector_attr = isinstance(base_model, DetectorBase) and item in _DETECTOR_MEMBERS - is_forecaster_attr = isinstance(base_model, ForecasterBase) and item in _FORECASTER_MEMBERS - if is_detector_attr or is_forecaster_attr: + if _is_detector_attr(base_model, item) or _is_forecaster_attr(base_model, item): return getattr(base_model.config, item) elif base_model is None and item in self.model_kwargs: return self.model_kwargs.get(item) @@ -129,11 +146,9 @@ def __getattr__(self, item): def __setattr__(self, key, value): if hasattr(self, "model") and hasattr(self.model, "config"): - base_model = self.base_model - is_detector_attr = isinstance(base_model, DetectorBase) and key in _DETECTOR_MEMBERS - is_forecaster_attr = isinstance(base_model, ForecasterBase) and key in _FORECASTER_MEMBERS - if key not in _LAYERED_MEMBERS and (is_detector_attr or is_forecaster_attr): - return setattr(self.model.config, key, value) + base = self.base_model + if key not in _LAYERED_MEMBERS and (_is_detector_attr(base, key) or _is_forecaster_attr(base, key)): + return setattr(base.config, key, value) return super().__setattr__(key, value) def get_unused_kwargs(self, **kwargs): @@ -222,6 +237,10 @@ def _resolve_args(cls, config: LayeredModelConfig, model: ModelBase, **kwargs): config = cls.config_class(model=model, **kwargs) return config + @property + def _pandas_train(self): + return self.model._pandas_train + @property def require_even_sampling(self) -> bool: return False @@ -251,8 +270,13 @@ def train_data(self, train_data): if self.model is not None: self.model.train_data = train_data + @property + def _default_train_config(self): + return self.model._default_train_config + def reset(self): - self.model.reset() + if self.model is not None: + self.model.reset() self.__init__(config=self.config) def __getstate__(self): @@ -292,16 +316,16 @@ def __getattr__(self, item): return attr return self.__getattribute__(item) - def train_model(self, train_data, train_config=None, **kwargs): + def _train(self, train_data: pd.DataFrame, train_config=None, **kwargs): """ Trains the underlying model. May be overridden, e.g. for AutoML. :param train_data: the data to train on. :param train_config: the train config of the underlying model (optional). """ - return self.model.train(train_data, train_config=train_config, **kwargs) + return call_with_accepted_kwargs(self.model._train, train_data=train_data, train_config=train_config, **kwargs) - def train_pre_process(self, train_data: TimeSeries) -> TimeSeries: + def train_pre_process(self, train_data: TimeSeries, **kwargs) -> TimeSeries: # Push the layered model transform to the owned model, but make sure we only resample once. has_resample = False transforms = [] @@ -314,11 +338,14 @@ def train_pre_process(self, train_data: TimeSeries) -> TimeSeries: transforms.append(t) self.transform = Identity() self.model.transform = TransformSequence(transforms) - return super().train_pre_process(train_data) - def train(self, train_data: TimeSeries, train_config=None, *args, **kwargs): - train_data = self.train_pre_process(train_data) - return self.train_model(train_data, train_config=train_config, *args, **kwargs) + # Return the result of calling the underlying model's train_pre_process() + train_data = super().train_pre_process(train_data) + return call_with_accepted_kwargs(self.model.train_pre_process, train_data=train_data, **kwargs) + + def train_post_process(self, train_result, **kwargs): + # All post_processing is handled by the underlying model + return call_with_accepted_kwargs(self.model.train_post_process, train_result=train_result, **kwargs) class LayeredDetector(LayeredModel, DetectorBase): @@ -326,14 +353,12 @@ class LayeredDetector(LayeredModel, DetectorBase): Base class for a layered anomaly detector. Only to be used as a subclass. """ - def _train(self, train_data: pd.DataFrame, train_config=None): - raise NotImplementedError("Layered model _train() should not be called.") - def _get_anomaly_score(self, time_series: pd.DataFrame, time_series_prev: pd.DataFrame = None) -> pd.DataFrame: raise NotImplementedError("Layered model _get_anomaly_score() should not be called.") - def get_anomaly_score(self, time_series: TimeSeries, time_series_prev: TimeSeries = None) -> TimeSeries: - return self.model.get_anomaly_score(time_series, time_series_prev) + def get_anomaly_score(self, time_series: TimeSeries, time_series_prev: TimeSeries = None, **kwargs) -> TimeSeries: + kwargs.update(time_series=time_series, time_series_prev=time_series_prev) + return call_with_accepted_kwargs(self.model.get_anomaly_score, **kwargs) class LayeredForecaster(LayeredModel, ForecasterBase): @@ -341,20 +366,19 @@ class LayeredForecaster(LayeredModel, ForecasterBase): Base class for a layered forecaster. Only to be used as a subclass. """ - def _train(self, train_data: pd.DataFrame, train_config=None): - raise NotImplementedError("Layered model _train() should not be called.") + def _train_with_exog(self, train_data: pd.DataFrame, train_config=None, exog_data: pd.DataFrame = None, **kwargs): + kwargs.update(train_data=train_data, train_config=train_config, exog_data=exog_data) + return call_with_accepted_kwargs(self.model._train_with_exog, **kwargs) def _forecast(self, time_stamps: List[int], time_series_prev: TimeSeries = None, return_prev=False): raise NotImplementedError("Layered model _forecast() should not be called.") - def forecast(self, time_stamps, time_series_prev: TimeSeries = None, *args, **kwargs): - return self.model.forecast(time_stamps, time_series_prev, *args, **kwargs) + def forecast(self, time_stamps, time_series_prev: TimeSeries = None, **kwargs): + kwargs.update(time_stamps=time_stamps, time_series_prev=time_series_prev) + return call_with_accepted_kwargs(self.model.forecast, **kwargs) class LayeredForecastingDetector(LayeredForecaster, LayeredDetector, ForecastingDetectorBase): """ Base class for a layered forecasting detector. Only to be used as a subclass. """ - - def _train(self, train_data: pd.DataFrame, train_config=None): - raise NotImplementedError("Layered model _train() should not be called.") diff --git a/merlion/models/utils/autosarima_utils.py b/merlion/models/utils/autosarima_utils.py index ca15bd1b2..a5b3ef06c 100644 --- a/merlion/models/utils/autosarima_utils.py +++ b/merlion/models/utils/autosarima_utils.py @@ -88,7 +88,7 @@ def _root_test(model_fit, ic): return ic -def _fit_sarima_model(y, X, order, seasonal_order, trend, method, maxiter, information_criterion, **kwargs): +def _fit_sarima_model(y, order, seasonal_order, trend, method, maxiter, information_criterion, exog=None, **kwargs): """ Train a sarima model with the given time-series and hyperparamteres tuple. Return the trained model, training time and information criterion @@ -96,11 +96,17 @@ def _fit_sarima_model(y, X, order, seasonal_order, trend, method, maxiter, infor start = time.time() ic = np.inf model_fit = None - model_spec = sm.tsa.SARIMAX( - endog=y, exog=X, order=order, seasonal_order=seasonal_order, trend=trend, validate_specification=False, **kwargs - ) with warnings.catch_warnings(): warnings.simplefilter("ignore") + model_spec = sm.tsa.SARIMAX( + endog=y, + exog=exog, + order=order, + seasonal_order=seasonal_order, + trend=trend, + validate_specification=False, + **kwargs, + ) try: model_fit = model_spec.fit(method=method, maxiter=maxiter, disp=0) except (LinAlgError, ValueError) as v: @@ -125,7 +131,6 @@ def _refit_sarima_model(model_fitted, approx_ic, method, inititer, maxiter, info Return the trained model """ start = time.time() - fit_time = np.nan with warnings.catch_warnings(): warnings.simplefilter("ignore") best_fit = model_fitted @@ -163,7 +168,7 @@ def _refit_sarima_model(model_fitted, approx_ic, method, inititer, maxiter, info return best_fit -def detect_maxiter_sarima_model(y, X, d, D, m, method, information_criterion, **kwargs): +def detect_maxiter_sarima_model(y, d, D, m, method, information_criterion, exog=None, **kwargs): """ run a zero model with SARIMA(2; d; 2)(1; D; 1) / ARIMA(2; d; 2) determine the optimal maxiter """ @@ -180,7 +185,7 @@ def detect_maxiter_sarima_model(y, X, d, D, m, method, information_criterion, ** maxiter = 10 ic = np.inf model_spec = sm.tsa.SARIMAX( - endog=y, exog=X, order=order, seasonal_order=seasonal_order, trend="c", validate_specification=False + endog=y, exog=exog, order=order, seasonal_order=seasonal_order, trend="c", validate_specification=False ) with warnings.catch_warnings(): warnings.simplefilter("ignore") @@ -332,7 +337,6 @@ class _StepwiseFitWrapper: def __init__( self, y, - X, p, d, q, @@ -351,12 +355,13 @@ def __init__( relative_improve, max_k, max_dur, + exog=None, **kwargs, ): self._fit_arima = functools.partial( _fit_sarima_model, y=y, - X=X, + exog=exog, method=method, maxiter=maxiter, information_criterion=information_criterion, diff --git a/merlion/models/anomaly/utils.py b/merlion/models/utils/torch_utils.py similarity index 100% rename from merlion/models/anomaly/utils.py rename to merlion/models/utils/torch_utils.py diff --git a/merlion/plot.py b/merlion/plot.py index 8b358e807..fc15850c4 100644 --- a/merlion/plot.py +++ b/merlion/plot.py @@ -11,6 +11,7 @@ from typing import Dict from copy import copy +from matplotlib.colors import to_rgb from matplotlib.dates import AutoDateLocator, AutoDateFormatter import matplotlib.pyplot as plt import numpy as np @@ -74,6 +75,7 @@ def __init__( yhat_prev: UnivariateTimeSeries = None, yhat_prev_lb: UnivariateTimeSeries = None, yhat_prev_ub: UnivariateTimeSeries = None, + yhat_color: str = None, ): """ :param y: the true value of the time series @@ -85,6 +87,7 @@ def __init__( :param yhat_prev: model's forecast of ``y_prev`` :param yhat_prev_lb: lower bound on ``yhat_prev`` (if model supports uncertainty estimation) :param yhat_prev_ub: upper bound on ``yhat_prev`` (if model supports uncertainty estimation) + :param yhat_color: the color in which to plot the forecast """ assert not (anom is not None and y is None), "If `anom` is given, `y` must also be given" @@ -119,6 +122,8 @@ def __init__( else: self.yhat_prev_iqr = None + self.yhat_color = yhat_color if isinstance(yhat_color, str) else "#0072B2" + @property def t0(self): """ @@ -224,14 +229,14 @@ def plot(self, title=None, metric_name=None, figsize=(1000, 600), ax=None, label if yhat is not None: metric_name = yhat.name if metric_name is None else metric_name yhat_label = full_label_alias.get("yhat") - ln = ax.plot(yhat.index, yhat.np_values, ls="-", c="#0072B2", zorder=0, label=yhat_label) + ln = ax.plot(yhat.index, yhat.np_values, ls="-", c=self.yhat_color, zorder=0, label=yhat_label) lines.extend(ln) # Get & plot the uncertainty of the prediction (if applicable) iqr = self.get_yhat_iqr() if iqr is not None: lb, ub = iqr.univariates["lb"], iqr.univariates["ub"] - ax.fill_between(lb.index, lb.values, ub.values, color="#0072B2", alpha=0.2, zorder=2) + ax.fill_between(lb.index, lb.values, ub.values, color=self.yhat_color, alpha=0.2, zorder=2) # Plot anomaly scores if desired if self.anom is not None and self.y is not None: @@ -258,7 +263,7 @@ def plot(self, title=None, metric_name=None, figsize=(1000, 600), ax=None, label ax.set_xlabel("Time") ax.set_ylabel(metric_name) ax.set_title(title if title else metric_name) - ax.legend(lines, [l.get_label() for l in lines], loc="upper right") + ax.legend(lines, [l.get_label() for l in lines]) fig.tight_layout() return fig, ax @@ -279,8 +284,7 @@ def plot_plotly(self, title=None, metric_name=None, figsize=(1000, 600), label_a full_label_alias = copy(self._default_label_alias) full_label_alias.update(label_alias) - prediction_color = "#0072B2" - error_color = "rgba(0, 114, 178, 0.2)" # '#0072B2' with 0.2 opacity + error_color = "rgba" + str(tuple(int(x * 255) for x in to_rgb(self.yhat_color)) + (0.2,)) actual_color = "black" anom_color = "red" line_width = 2 @@ -312,7 +316,7 @@ def plot_plotly(self, title=None, metric_name=None, figsize=(1000, 600), label_a x=yhat.index, y=yhat.np_values, mode="lines", - line=dict(color=prediction_color, width=line_width), + line=dict(color=self.yhat_color, width=line_width), fillcolor=error_color, fill=fill_mode, ) @@ -406,6 +410,7 @@ def __init__( yhat_prev: TimeSeries = None, yhat_prev_lb: TimeSeries = None, yhat_prev_ub: TimeSeries = None, + yhat_color: str = None, ): assert y is not None, "`y` must be given" @@ -435,6 +440,7 @@ def __init__( self.yhat_prev = yhat_prev self.yhat_prev_lb = yhat_prev_lb self.yhat_prev_ub = yhat_prev_ub + self.yhat_color = yhat_color if isinstance(yhat_color, str) else "#0072B2" @property def t0(self): @@ -512,9 +518,8 @@ def plot_plotly(self, title=None, figsize=None): :param figsize: figure size in pixels :return: plotly figure. """ - prediction_color = "#0072B2" - error_color = "rgba(0, 114, 178, 0.2)" # '#0072B2' with 0.2 opacity anom_color = "red" + error_color = "rgba" + str(tuple(int(x * 255) for x in to_rgb(self.yhat_color)) + (0.2,)) traces = [] y = self.get_y() @@ -543,7 +548,7 @@ def plot_plotly(self, title=None, figsize=None): x=v.index, y=v.np_values, mode="lines", - line=dict(color=prediction_color), + line=dict(color=self.yhat_color), fillcolor=error_color, fill=fill_mode, ) diff --git a/merlion/transform/anomalize.py b/merlion/transform/anomalize.py index 28dcd3cc7..725f57910 100644 --- a/merlion/transform/anomalize.py +++ b/merlion/transform/anomalize.py @@ -1,5 +1,5 @@ # -# Copyright (c) 2021 salesforce.com, inc. +# Copyright (c) 2022 salesforce.com, inc. # All rights reserved. # SPDX-License-Identifier: BSD-3-Clause # For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/BSD-3-Clause @@ -16,9 +16,7 @@ from merlion.transform.base import Identity, TransformBase from merlion.transform.bound import LowerUpperClip -from merlion.transform.moving_average import DifferenceTransform from merlion.utils.time_series import UnivariateTimeSeries, TimeSeries -from merlion.utils.resample import get_gcd_timedelta class Anomalize(TransformBase): diff --git a/merlion/transform/base.py b/merlion/transform/base.py index 6d166a931..f0796d3d7 100644 --- a/merlion/transform/base.py +++ b/merlion/transform/base.py @@ -67,6 +67,13 @@ def requires_inversion_state(self): """ return True + @property + def identity_inversion(self): + """ + Indicates whether the inverse applied by this transform is just the identity. + """ + return not self.requires_inversion_state + def to_dict(self): state = {"name": type(self).__name__} for k in inspect.signature(self.__init__).parameters: @@ -172,6 +179,10 @@ def proper_inversion(self): """ return True + @property + def identity_inversion(self): + return False + @abstractmethod def _invert(self, time_series: TimeSeries) -> TimeSeries: raise NotImplementedError @@ -192,6 +203,10 @@ def requires_inversion_state(self): """ return False + @property + def identity_inversion(self): + return True + def train(self, time_series: TimeSeries): pass diff --git a/merlion/transform/factory.py b/merlion/transform/factory.py index 51e23d9e4..9fdb22f33 100644 --- a/merlion/transform/factory.py +++ b/merlion/transform/factory.py @@ -19,6 +19,7 @@ ExponentialMovingAverage="merlion.transform.moving_average:ExponentialMovingAverage", DifferenceTransform="merlion.transform.moving_average:DifferenceTransform", LagTransform="merlion.transform.moving_average:LagTransform", + LowerUpperClip="merlion.transform.bound:LowerUpperClip", Rescale="merlion.transform.normalize:Rescale", AbsVal="merlion.transform.normalize:AbsVal", MeanVarNormalize="merlion.transform.normalize:MeanVarNormalize", diff --git a/merlion/transform/moving_average.py b/merlion/transform/moving_average.py index 120f3e32a..2511320cb 100644 --- a/merlion/transform/moving_average.py +++ b/merlion/transform/moving_average.py @@ -50,12 +50,12 @@ def train(self, time_series: TimeSeries): def __call__(self, time_series: TimeSeries) -> TimeSeries: new_vars = OrderedDict() - conv_remainders = [] + conv_remainders = {} for name, var in time_series.items(): t, x = var.index, var.np_values ma = scipy.signal.correlate(x, self.weights, mode="full") y0, y1 = ma[: self.n_steps - 1], ma[self.n_steps - 1 :] - conv_remainders.append(y0) + conv_remainders[name] = y0 if not self.pad: t = t[self.n_steps - 1 :] new_vars[name] = UnivariateTimeSeries(t, y1[: len(t)]) @@ -67,7 +67,8 @@ def __call__(self, time_series: TimeSeries) -> TimeSeries: def _invert(self, time_series: TimeSeries) -> TimeSeries: new_vars = OrderedDict() - for (name, var), y0 in zip(time_series.items(), self.inversion_state): + for name, var in time_series.items(): + y0 = self.inversion_state[name] t, y1 = var.index, var.np_values y = np.concatenate((y0, y1)) x = scipy.signal.deconvolve(y, self.weights[-1::-1])[0] @@ -105,7 +106,7 @@ def __call__(self, time_series: TimeSeries) -> TimeSeries: for name, var in time_series.items(): x = var.np_values new_x = [] - for i, _ in enumerate(x): + for i in range(len(x)): window = x[max(0, i - self.n_steps + 1) : i + 1] new_x.append(np.percentile(window, self.q)) new_vars[name] = UnivariateTimeSeries(var.index, new_x) @@ -229,10 +230,10 @@ def train(self, time_series: TimeSeries): pass def __call__(self, time_series: TimeSeries) -> TimeSeries: - x0 = [] + x0 = {} new_vars = OrderedDict() for name, var in time_series.items(): - x0.append(var[0]) + x0[name] = var[0] if len(var) <= 1: logger.warning(f"Cannot apply a difference transform to a time series of length {len(var)} < 2") new_vars[name] = UnivariateTimeSeries([], []) @@ -246,7 +247,8 @@ def __call__(self, time_series: TimeSeries) -> TimeSeries: def _invert(self, time_series: TimeSeries) -> TimeSeries: new_vars = OrderedDict() - for (t0, x0), (name, var) in zip(self.inversion_state, time_series.items()): + for name, var in time_series.items(): + t0, x0 = self.inversion_state[name] var = UnivariateTimeSeries([t0], [x0]).concat(var).cumsum() new_vars[name] = UnivariateTimeSeries.from_pd(var) @@ -274,17 +276,17 @@ def train(self, time_series: TimeSeries): pass def __call__(self, time_series: TimeSeries) -> TimeSeries: - all_tk, all_xk = [], [] + all_tk, all_xk = {}, {} new_vars = OrderedDict() for name, var in time_series.items(): # Apply any x-padding or t-truncating necessary t, x = var.index, var.np_values - all_xk.append(x[: self.k]) + all_xk[name] = x[: self.k] if self.pad: - all_tk.append(t[:0]) + all_tk[name] = t[:0] x = np.concatenate((np.full(self.k, x[0]), x)) else: - all_tk.append(t[: self.k]) + all_tk[name] = t[: self.k] t = t[self.k :] if len(var) <= self.k and not self.pad: @@ -301,7 +303,8 @@ def __call__(self, time_series: TimeSeries) -> TimeSeries: def _invert(self, time_series: TimeSeries) -> TimeSeries: all_tk, all_xk = self.inversion_state new_vars = OrderedDict() - for (name, var), tk, xk in zip(time_series.items(), all_tk, all_xk): + for name, var in time_series.items(): + tk, xk = all_tk[name], all_xk[name] t = tk.union(var.index) if len(t) == len(xk) + len(var): # no padding y = np.concatenate((xk, var.np_values)) diff --git a/merlion/transform/normalize.py b/merlion/transform/normalize.py index 498f42bcc..10b7d33fa 100644 --- a/merlion/transform/normalize.py +++ b/merlion/transform/normalize.py @@ -9,7 +9,7 @@ """ from collections import OrderedDict import logging -from typing import Iterable +from typing import Iterable, Mapping import numpy as np import pandas as pd @@ -31,11 +31,14 @@ class AbsVal(TransformBase): @property def requires_inversion_state(self): """ - ``False`` because the "pseudo-inverse" is just the identity (i.e. we - lose sign information). + ``False`` because the "pseudo-inverse" is just the identity (i.e. we lose sign information). """ return False + @property + def identity_inversion(self): + return True + def train(self, time_series: TimeSeries): pass @@ -77,20 +80,16 @@ def __call__(self, time_series: TimeSeries) -> TimeSeries: if not self.is_trained: raise RuntimeError(f"Cannot use {type(self).__name__} without training it first!") - d = time_series.dim - bias = self.bias if isinstance(self.bias, Iterable) else [self.bias] * d - scale = self.scale if isinstance(self.scale, Iterable) else [self.scale] * d - assert len(bias) == d and len(scale) == d, ( - f"Expected {len(bias)}-dimensional time series to match scale and " - f"bias, but got {d}-dimensional time series instead." - ) + bias = self.bias if isinstance(self.bias, Mapping) else {name: self.bias for name in time_series.names} + scale = self.scale if isinstance(self.scale, Mapping) else {name: self.scale for name in time_series.names} + assert set(time_series.names).issubset(bias.keys()) and set(time_series.names).issubset(scale.keys()) new_vars = OrderedDict() - for i, (name, var) in enumerate(time_series.items()): + for name, var in time_series.items(): if self.normalize_bias: - var = var - bias[i] + var = var - bias[name] if self.normalize_scale: - var = var / scale[i] + var = var / scale[name] new_vars[name] = UnivariateTimeSeries.from_pd(var) ret = TimeSeries(new_vars, check_aligned=False) @@ -100,20 +99,16 @@ def __call__(self, time_series: TimeSeries) -> TimeSeries: def _invert(self, time_series: TimeSeries) -> TimeSeries: if not self.is_trained: raise RuntimeError(f"Cannot use {type(self).__name__} without training it first!") - d = time_series.dim - bias = self.bias if isinstance(self.bias, Iterable) else [self.bias] * d - scale = self.scale if isinstance(self.scale, Iterable) else [self.scale] * d - assert len(bias) == d and len(scale) == d, ( - f"Expected {len(bias)}-dimensional time series to match scale and " - f"bias, but got {d}-dimensional time series instead." - ) + bias = self.bias if isinstance(self.bias, Mapping) else {name: self.bias for name in time_series.names} + scale = self.scale if isinstance(self.scale, Mapping) else {name: self.scale for name in time_series.names} + assert set(time_series.names).issubset(bias.keys()) and set(time_series.names).issubset(scale.keys()) new_vars = OrderedDict() - for i, (name, var) in enumerate(time_series.items()): + for name, var in time_series.items(): if self.normalize_scale: - var = var * scale[i] + var = var * scale[name] if self.normalize_bias: - var = var + bias[i] + var = var + bias[name] new_vars[name] = UnivariateTimeSeries.from_pd(var) ret = TimeSeries(new_vars, check_aligned=False) @@ -131,11 +126,11 @@ def __init__(self, bias=None, scale=None, normalize_bias=True, normalize_scale=T super().__init__(bias, scale, normalize_bias, normalize_scale) def train(self, time_series: TimeSeries): - bias, scale = [], [] - for var in time_series.univariates: + bias, scale = {}, {} + for name, var in time_series.items(): scaler = StandardScaler().fit(var.np_values.reshape(-1, 1)) - bias.append(float(scaler.mean_)) - scale.append(float(scaler.scale_)) + bias[name] = float(scaler.mean_) + scale[name] = float(scaler.scale_) self.bias = bias self.scale = scale @@ -150,11 +145,11 @@ def __init__(self, bias=None, scale=None, normalize_bias=True, normalize_scale=T super().__init__(bias, scale, normalize_bias, normalize_scale) def train(self, time_series: TimeSeries): - bias, scale = [], [] - for var in time_series.univariates: + bias, scale = {}, {} + for name, var in time_series.items(): minval, maxval = var.min(), var.max() - bias.append(minval) - scale.append(np.maximum(1e-8, maxval - minval)) + bias[name] = minval + scale[name] = np.maximum(1e-8, maxval - minval) self.bias = bias self.scale = scale @@ -170,8 +165,8 @@ class BoxCoxTransform(InvertibleTransformBase): def __init__(self, lmbda=None, offset=0.0): super().__init__() if lmbda is not None: - if isinstance(lmbda, list): - assert all(isinstance(x, (int, float)) for x in lmbda) + if isinstance(lmbda, dict): + assert all(isinstance(x, (int, float)) for x in lmbda.values()) else: assert isinstance(lmbda, (int, float)) self.lmbda = lmbda @@ -186,24 +181,25 @@ def requires_inversion_state(self): def train(self, time_series: TimeSeries): if self.lmbda is None: - self.lmbda = [scipy.stats.boxcox(var.np_values + self.offset)[1] for var in time_series.univariates] + self.lmbda = {name: scipy.stats.boxcox(var.np_values + self.offset)[1] for name, var in time_series.items()} logger.info(f"Chose Box-Cox lambda = {self.lmbda}") - elif not isinstance(self.lmbda, list): - self.lmbda = [self.lmbda] * time_series.dim + elif not isinstance(self.lmbda, Mapping): + self.lmbda = {name: self.lmbda for name in time_series.names} assert len(self.lmbda) == time_series.dim def __call__(self, time_series: TimeSeries) -> TimeSeries: - new_vars = [] - for lmbda, var in zip(self.lmbda, time_series.univariates): - y = scipy.special.boxcox(var + self.offset, lmbda) + new_vars = OrderedDict() + for name, var in time_series.items(): + y = scipy.special.boxcox(var + self.offset, self.lmbda[name]) var = pd.Series(y, index=var.index, name=var.name) - new_vars.append(UnivariateTimeSeries.from_pd(var)) + new_vars[name] = UnivariateTimeSeries.from_pd(var) return TimeSeries(new_vars) def _invert(self, time_series: TimeSeries) -> TimeSeries: new_vars = [] - for lmbda, var in zip(self.lmbda, time_series.univariates): + for name, var in time_series.items(): + lmbda = self.lmbda[name] if lmbda > 0: var = (lmbda * var + 1) ** (1 / lmbda) nanvals = var.isna() diff --git a/merlion/transform/resample.py b/merlion/transform/resample.py index e14e7a3d4..27f449688 100644 --- a/merlion/transform/resample.py +++ b/merlion/transform/resample.py @@ -33,10 +33,8 @@ class TemporalResample(TransformBase): """ - Defines a policy to temporally resample a time series at a specified - granularity. Note that while this transform does support inversion, the - recovered time series may differ from the input due to information loss - when downsampling. + Defines a policy to temporally resample a time series at a specified granularity. Note that while this transform + does support inversion, the recovered time series may differ from the input due to information loss when resampling. """ def __init__( diff --git a/merlion/transform/sequence.py b/merlion/transform/sequence.py index 05ade2d4d..93938ee01 100644 --- a/merlion/transform/sequence.py +++ b/merlion/transform/sequence.py @@ -33,11 +33,11 @@ def __init__(self, transforms: List[TransformBase]): ), f"Expected all transforms to be instances of TransformBase, or dict, but got {transforms}" if isinstance(t, dict): t = TransformFactory.create(**t) - self.transforms.extend(self.extract_nontrivial_transforms(t)) + self.transforms.extend(self._extract_nontrivial_transforms(t)) - def extract_nontrivial_transforms(self, transform: TransformBase) -> List[TransformBase]: + def _extract_nontrivial_transforms(self, transform: TransformBase) -> List[TransformBase]: if isinstance(transform, type(self)): - transforms = sum([self.extract_nontrivial_transforms(t) for t in transform.transforms], []) + transforms = sum([self._extract_nontrivial_transforms(t) for t in transform.transforms], []) else: transforms = [transform] return [t for t in transforms if not isinstance(t, Identity)] @@ -45,11 +45,14 @@ def extract_nontrivial_transforms(self, transform: TransformBase) -> List[Transf @property def proper_inversion(self): """ - A transform sequence is invertible if and only if all the transforms - comprising it are invertible. + A transform sequence is invertible if and only if all the transforms comprising it are invertible. """ return all(f.proper_inversion for f in self.transforms) + @property + def identity_inversion(self): + return all(f.identity_inversion for f in self.transforms) + @property def requires_inversion_state(self): """ diff --git a/merlion/utils/conj_priors.py b/merlion/utils/conj_priors.py index 53ab3b7a2..797570d45 100644 --- a/merlion/utils/conj_priors.py +++ b/merlion/utils/conj_priors.py @@ -1,5 +1,5 @@ # -# Copyright (c) 2021 salesforce.com, inc. +# Copyright (c) 2022 salesforce.com, inc. # All rights reserved. # SPDX-License-Identifier: BSD-3-Clause # For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/BSD-3-Clause @@ -22,29 +22,23 @@ import numpy as np import pandas as pd -import scipy from scipy.special import gammaln, multigammaln from scipy.linalg import pinv, pinvh -from scipy.stats import bernoulli, beta, invgamma, invwishart, norm, multivariate_normal as mvnorm, t as student_t +from scipy.stats import ( + bernoulli, + beta, + norm, + t as student_t, + invgamma, + multivariate_normal as mvnorm, + invwishart, + multivariate_t as mvt, +) from merlion.utils import TimeSeries, UnivariateTimeSeries, to_timestamp, to_pd_datetime -logger = logging.getLogger(__name__) - -try: - from scipy.stats import multivariate_t as mvt -except ImportError: - logger.warning("Scipy version <1.6.0 installed. No support for multivariate t density.") - mvt = None - sp_pinv = pinv - - # Redefine pinv to implement an optimization from more recent scipy - # Specifically, if the matrix is tall enough, it's easier to compute pinv with the transpose - def pinv(a): - return sp_pinv(a.T).T if a.shape[0] / a.shape[1] >= 1.1 else sp_pinv(a) - - _epsilon = 1e-8 +logger = logging.getLogger(__name__) def _log_pdet(a): @@ -55,41 +49,6 @@ def _log_pdet(a): return np.sum(np.log(eigval[eigval > 0])) -def _mvt_pdf(x, mu, Sigma, nu, log=True): - """ - (log) PDF of multivariate t distribution. Use as a fallback when scipy >= 1.6.0 isn't available. - """ - # Compute the spectrum of Sigma - eigval, eigvec = np.linalg.eigh(Sigma) - - # Determine a lower bound for eigenvalues s.t. lmbda < eps implies that Sigma is singular - t = eigval.dtype.char.lower() - factor = {"f": 1e3, "d": 1e6} - eps = factor[t] * np.finfo(t).eps * np.max(eigval) - - # Compute the log pseudo-determinant of Sigma - positive_eigval = eigval[eigval > eps] - log_pdet = np.sum(np.log(positive_eigval)) - dim, rank = len(eigval), len(positive_eigval) - - # Compute the square root of the pseudo-inverse of Sigma - inv_eigval = np.array([0 if lmbda < eps else 1 / lmbda for lmbda in eigval]) - pinv_sqrt = np.multiply(eigvec, np.sqrt(inv_eigval)) - - # compute (x - \mu)^T \Sigma^{-1} (x - \mu) - # To do this in batch with D = (x - mu) having shape [n, d], - # we just need the diagonal of D @ Sigma @ D.T, which can be computed as - # below, using the fact that - delta = x - mu # [n, d] - quad_form = np.square(delta @ pinv_sqrt).sum(axis=-1) - - # Multivariate-t log PDF - a = gammaln(0.5 * (nu + dim)) - gammaln(0.5 * nu) - b = -0.5 * (dim * np.log(nu * np.pi) + log_pdet) - c = -0.5 * (nu + dim) * np.log1p(quad_form / nu) - return a + b + c if log else np.exp(a + b + c) - - class ConjPrior(ABC): """ Abstract base class for a Bayesian conjugate prior. @@ -469,16 +428,8 @@ def mu_posterior(self, mu, return_rv=False, log=True): """ dof = self.nu - self.dim + 1 shape = self.Lambda / (self.nu * dof) - if mvt is not None: - rv = mvt(shape=shape, loc=self.mu_0, df=dof, allow_singular=True) - return self._process_return(x=mu, rv=rv, return_rv=return_rv, log=log) - else: - if mu is None or return_rv: - raise ValueError( - f"The scipy version you have installed ({scipy.__version__}) does not support a multivariate-t " - f"random variable Please specify a non-``None`` value of ``mu`` and set ``return_rv = False``." - ) - return _mvt_pdf(x=mu, mu=self.mu_0, Sigma=shape, nu=dof, log=log) + rv = mvt(shape=shape, loc=self.mu_0, df=dof, allow_singular=True) + return self._process_return(x=mu, rv=rv, return_rv=return_rv, log=log) def Sigma_posterior(self, sigma2, return_rv=False, log=True): r""" @@ -494,16 +445,8 @@ def posterior(self, x, return_rv=False, log=True, return_updated=False): t, x_np = self.process_time_series(x) dof = self.nu - self.dim + 1 shape = self.Lambda * (self.nu + 1) / (self.nu * dof) - if mvt is not None: - rv = mvt(shape=shape, loc=self.mu_0, df=dof, allow_singular=True) - ret = self._process_return(x=x_np, rv=rv, return_rv=return_rv, log=log) - else: - if x is None or return_rv: - raise ValueError( - f"The scipy version you have installed ({scipy.__version__}) does not support a multivariate-t " - f"random variable Please specify a non-``None`` value of ``x`` and set ``return_rv = False``." - ) - ret = _mvt_pdf(x=x_np, mu=self.mu_0, Sigma=shape, nu=dof, log=log) + rv = mvt(shape=shape, loc=self.mu_0, df=dof, allow_singular=True) + ret = self._process_return(x=x_np, rv=rv, return_rv=return_rv, log=log) if return_updated: updated = copy.deepcopy(self) diff --git a/merlion/utils/misc.py b/merlion/utils/misc.py index 89ccd08c7..f7b02bb11 100644 --- a/merlion/utils/misc.py +++ b/merlion/utils/misc.py @@ -14,7 +14,7 @@ import importlib import inspect import re -from typing import Union +from typing import Callable, Union class AutodocABCMeta(ABCMeta): @@ -147,10 +147,8 @@ def dynamic_import(import_path: str, alias: dict = None): """ Dynamically import a member from the specified module. - :param import_path: syntax 'module_name:member_name', - e.g. 'merlion.transform.normalize:BoxCoxTransform' - :param alias: dict which maps shortcuts for the registered classes, to their - full import paths. + :param import_path: syntax 'module_name:member_name', e.g. 'merlion.transform.normalize:BoxCoxTransform' + :param alias: dict which maps shortcuts for the registered classes, to their full import paths. :return: imported class """ alias = dict() if alias is None else alias @@ -168,6 +166,17 @@ def dynamic_import(import_path: str, alias: dict = None): return getattr(m, objname) +def call_with_accepted_kwargs(fn: Callable, **kwargs): + """ + Given a function and a list of keyword arguments, call the function with only the keyword arguments that are + accepted by the function. + """ + params = inspect.signature(fn).parameters + if not any(v.kind.name == "VAR_KEYWORD" for v in params.values()): + kwargs = {k: v for k, v in kwargs.items() if k in params} + return fn(**kwargs) + + def initializer(func): """ Decorator for the __init__ method. diff --git a/merlion/utils/time_series.py b/merlion/utils/time_series.py index 63df93b96..05d047196 100644 --- a/merlion/utils/time_series.py +++ b/merlion/utils/time_series.py @@ -10,7 +10,7 @@ from bisect import bisect_left, bisect_right import itertools import logging -from typing import Any, Dict, Iterable, Mapping, Sequence, Tuple, Union +from typing import Any, Callable, Dict, Iterable, Mapping, Sequence, Tuple, Union import warnings import numpy as np @@ -34,7 +34,7 @@ class UnivariateTimeSeries(pd.Series): """ - Please read the `tutorial ` before reading this API doc. + Please read the `tutorial ` before reading this API doc. This class is a time-indexed ``pd.Series`` which represents a univariate time series. For the most part, it supports all the same features as ``pd.Series``, with the following key differences to iteration and indexing: @@ -331,7 +331,7 @@ def empty(cls, name=None): class TimeSeries: """ - Please read the `tutorial ` before reading this API doc. + Please read the `tutorial ` before reading this API doc. This class represents a general multivariate time series as a wrapper around a number of (optionally named) `UnivariateTimeSeries`. A `TimeSeries` object is initialized as ``time_series = TimeSeries(univariates)``, where @@ -429,19 +429,17 @@ def __init__( ): # Type/length checking of univariates if isinstance(univariates, Mapping): - if not isinstance(univariates, ValIterOrderedDict): - univariates = ValIterOrderedDict(univariates.items()) + univariates = ValIterOrderedDict((str(k), v) for k, v in univariates.items()) assert all(isinstance(var, UnivariateTimeSeries) for var in univariates.values()) elif isinstance(univariates, Iterable): univariates = list(univariates) assert all(isinstance(var, UnivariateTimeSeries) for var in univariates) - - names = [var.name for var in univariates] + names = [str(var.name) for var in univariates] if len(set(names)) == len(names): - names = [i if name is None else name for i, name in enumerate(names)] + names = [str(i) if name is None else name for i, name in enumerate(names)] univariates = ValIterOrderedDict(zip(names, univariates)) else: - univariates = ValIterOrderedDict(enumerate(univariates)) + univariates = ValIterOrderedDict((str(i), v) for i, v in enumerate(univariates)) else: raise TypeError( "Expected univariates to be either a `Sequence[UnivariateTimeSeries]` or a " @@ -505,11 +503,23 @@ def dim(self) -> int: """ return len(self.univariates) + def rename(self, mapper: Union[Iterable[str], Mapping[str, str], Callable[[str], str]]): + """ + :param mapper: Dict-like or function transformations to apply to the univariate names. Can also be an iterable + of new univariate names. + :return: the time series with renamed univariates. + """ + if isinstance(mapper, Callable): + mapper = [mapper(old) for old in self.names] + elif isinstance(mapper, Mapping): + mapper = [mapper.get(old, old) for old in self.names] + univariates = ValIterOrderedDict((new_name, var) for new_name, var in zip(mapper, self.univariates)) + return self.__class__(univariates) + @property def is_aligned(self) -> bool: """ - :return: Whether all individual variable time series are sampled at the - same time stamps, i.e. they are aligned. + :return: Whether all individual variable time series are sampled at the same time stamps, i.e. they are aligned. """ return self._is_aligned @@ -676,7 +686,7 @@ def __repr__(self): def bisect(self, t: float, t_in_left: bool = False): """ - Splits the time series at the point where the given timestap ``t`` occurs. + Splits the time series at the point where the given timestamp ``t`` occurs. :param t: a Unix timestamp or datetime object. Everything before time ``t`` is in the left split, and everything after time ``t`` is in @@ -844,28 +854,20 @@ def align( missing_value_policy: MissingValuePolicy = MissingValuePolicy.Interpolate, ): """ - Aligns all the univariate time series comprising this multivariate time - series so that they all have the same time stamps. - - :param reference: A specific set of timestamps we want the resampled - time series to contain. Required if ``alignment_policy`` is - `AlignPolicy.FixedReference`. Overrides other alignment policies - if specified. - :param granularity: The granularity (in seconds) of the resampled time - time series. Defaults to the GCD time difference between adjacent - elements of ``reference`` (when available) or ``time_series`` - (otherwise). Ignored if ``reference`` is given or ``alignment_policy`` - is `AlignPolicy.FixedReference`. Overrides other alignment policies - if specified. - :param origin: The first timestamp of the resampled time series. Only - used if the alignment policy is AlignPolicy.FixedGranularity. - :param remove_non_overlapping: If ``True``, we will only keep the portions - of the univariates that overlap with each other. For example, if we - have 3 univariates which span timestamps [0, 3600], [60, 3660], and - [30, 3540], we will only keep timestamps in the range [60, 3540]. If - ``False``, we will keep all timestamps produced by the resampling. - :param alignment_policy: The policy we want to use to align the time - time series. + Aligns all the univariates comprising this multivariate time series so that they all have the same time stamps. + + :param reference: A specific set of timestamps we want the resampled time series to contain. Required if + ``alignment_policy`` is `AlignPolicy.FixedReference`. Overrides other alignment policies if specified. + :param granularity: The granularity (in seconds) of the resampled time time series. Defaults to the GCD time + difference between adjacent elements of ``time_series`` (otherwise). Ignored if ``reference`` is given or + ``alignment_policy`` is `AlignPolicy.FixedReference`. Overrides other alignment policies if specified. + :param origin: The first timestamp of the resampled time series. Only used if the alignment policy is + `AlignPolicy.FixedGranularity`. + :param remove_non_overlapping: If ``True``, we will only keep the portions of the univariates that overlap with + each other. For example, if we have 3 univariates which span timestamps [0, 3600], [60, 3660], and + [30, 3540], we will only keep timestamps in the range [60, 3540]. If ``False``, we will keep all timestamps + produced by the resampling. + :param alignment_policy: The policy we want to use to align the time series. - `AlignPolicy.FixedReference` aligns each single-variable time series to ``reference``, a user-specified sequence of timestamps. @@ -876,10 +878,8 @@ def align( all timestamps present in any single-variable time series. - `AlignPolicy.InnerJoin` returns a time series with the intersection of all timestamps present in all single-variable time series. - :param aggregation_policy: The policy used to aggregate windows of adjacent - observations when downsampling. - :param missing_value_policy: The policy used to impute missing values - created when upsampling. + :param aggregation_policy: The policy used to aggregate windows of adjacent observations when downsampling. + :param missing_value_policy: The policy used to impute missing values created when upsampling. :rtype: TimeSeries :return: The resampled multivariate time series. diff --git a/setup.py b/setup.py index e0d9631a8..97111b4fd 100644 --- a/setup.py +++ b/setup.py @@ -24,7 +24,7 @@ def read_file(fname): setup( name="salesforce-merlion", - version="1.3.0", + version="1.3.1", author=", ".join(read_file("AUTHORS.md").split("\n")), author_email="abhatnagar@salesforce.com", description="Merlion: A Machine Learning Framework for Time Series Intelligence", @@ -43,20 +43,17 @@ def read_file(fname): "GitPython", "py4j", "matplotlib", - "numpy>=1.21; python_version >= '3.7'", # 1.21 remediates a security risk - "numpy>=1.19; python_version < '3.7'", # however, numpy 1.20+ requires python 3.7+ + "numpy>=1.21", # 1.21 remediates a security risk "packaging", "pandas>=1.1.0", # >=1.1.0 for origin kwarg to df.resample() - "prophet>=1.1; python_version >= '3.7'", # 1.1 removes dependency on pystan - "prophet>=1.0; python_version < '3.7'", # however, prophet 1.1 requires python 3.7+ + "prophet>=1.1", # 1.1 removes dependency on pystan "scikit-learn>=0.22", # >=0.22 for changes to isolation forest algorithm - "scipy>=1.6.0; python_version >= '3.7'", # 1.6.0 adds multivariate_t density to scipy.stats - "scipy>=1.5.0; python_version < '3.7'", # however, scipy 1.6.0 requires python 3.7+ + "scipy>=1.6.0", # 1.6.0 adds multivariate_t density to scipy.stats "statsmodels>=0.12.2", "lightgbm", # if running at MacOS, need OpenMP: "brew install libomp" "tqdm", ], extras_require=extra_require, - python_requires=">=3.6.0", + python_requires=">=3.7.0", zip_safe=False, ) diff --git a/tests/anomaly/forecast_based/test_sarima.py b/tests/anomaly/forecast_based/test_sarima.py index cc65fae5c..26f7fd22a 100644 --- a/tests/anomaly/forecast_based/test_sarima.py +++ b/tests/anomaly/forecast_based/test_sarima.py @@ -36,7 +36,7 @@ def __init__(self, *args, **kwargs): self.model = SarimaDetector( SarimaDetectorConfig( order=(2, 0, 2), - seasonal_order=(2, 0, 2, 24), # daily seasonality + seasonal_order=(2, 0, 0, 24), # daily seasonality transform=TemporalResample("1h"), max_forecast_steps=self.test_len, ) diff --git a/tests/anomaly/test_anom_ensemble.py b/tests/anomaly/test_anom_ensemble.py index f06a68a20..e91db3008 100644 --- a/tests/anomaly/test_anom_ensemble.py +++ b/tests/anomaly/test_anom_ensemble.py @@ -116,7 +116,6 @@ def __init__(self, *args, **kwargs): # build an ensemble config = DetectorEnsembleConfig(combiner=Mean(abs_score=True)) self.ensemble = DetectorEnsemble(models=[model0, model1, model2], config=config) - self.ensemble.train(self.vals_train) def test_alarm(self): print("-" * 80) diff --git a/tests/anomaly/test_dbl.py b/tests/anomaly/test_dbl.py index b2f9dda53..130219e18 100644 --- a/tests/anomaly/test_dbl.py +++ b/tests/anomaly/test_dbl.py @@ -1,5 +1,5 @@ # -# Copyright (c) 2021 salesforce.com, inc. +# Copyright (c) 2022 salesforce.com, inc. # All rights reserved. # SPDX-License-Identifier: BSD-3-Clause # For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/BSD-3-Clause @@ -153,8 +153,8 @@ def test_common_trend_sets(self): group_keys += [df.index.day] keys += [lambda t: (t.day,)] group = df.groupby(group_keys) - mu = group[0].mean() - sd = group[0].std() + mu = pd.DataFrame(group.mean()) + sd = pd.DataFrame(group.std()) # determine key key = ( @@ -164,7 +164,7 @@ def test_common_trend_sets(self): ) expected_scores = np.asarray( - [(x - mu[key(t)]) / sd[key(t)] for t, x in self.vals_test.to_pd().iterrows()] + [(x - mu.loc[key(t)]) / sd.loc[key(t)] for t, x in self.vals_test.to_pd().iterrows()] ).flatten() score_diffs = scores - expected_scores self.assertAlmostEqual(np.abs(score_diffs).max(), 0, delta=1e-3) diff --git a/tests/evaluate/test_eval_forecast.py b/tests/evaluate/test_eval_forecast.py index a7e480bf7..d81d6c155 100644 --- a/tests/evaluate/test_eval_forecast.py +++ b/tests/evaluate/test_eval_forecast.py @@ -14,6 +14,7 @@ from merlion.models.ensemble.combine import MetricWeightedMean from merlion.models.ensemble.forecast import ForecasterEnsemble, ForecasterEnsembleConfig from merlion.models.forecast.arima import ArimaConfig, Arima +from merlion.models.forecast.ets import ETSConfig, ETS from merlion.transform.base import Identity from merlion.utils.data_io import csv_to_time_series from merlion.utils.time_series import UnivariateTimeSeries @@ -58,7 +59,7 @@ def test_single_model(self): # Calculate evaluation metric smape = evaluator.evaluate(ground_truth=self.test_data, predict=pred, metric=ForecastMetric.sMAPE) - self.assertAlmostEqual(smape, 9.823, delta=0.001) + self.assertAlmostEqual(smape, 9.9, delta=0.1) def test_ensemble(self): print("-" * 80) @@ -71,10 +72,10 @@ def test_ensemble(self): # Construct ensemble to forecast up to 120hr in the future n = 120 - kwargs = dict(max_forecast_steps=n, transform=Identity()) - model0 = Arima(ArimaConfig(order=(4, 1, 2), **kwargs)) - model1 = Arima(ArimaConfig(order=(20, 0, 0), **kwargs)) - model2 = Arima(ArimaConfig(order=(6, 2, 1), **kwargs)) + kwargs = dict(max_forecast_steps=n, transform=Identity(), refit=False) + model0 = ETS(ETSConfig(error="add", trend="add", damped_trend=True, **kwargs)) + model1 = ETS(ETSConfig(error="mul", trend="mul", damped_trend=True, **kwargs)) + model2 = ETS(ETSConfig(error="mul", trend="add", damped_trend=False, **kwargs)) ensemble = ForecasterEnsemble( config=ForecasterEnsembleConfig(combiner=MetricWeightedMean(metric=ForecastMetric.sMAPE)), models=[model0, model1, model2], @@ -92,7 +93,7 @@ def test_ensemble(self): # Compute ensemble's sMAPE smape = evaluator.evaluate(ground_truth=test, predict=pred, metric=ForecastMetric.sMAPE) - logger.info(f"Ensemble sMAPE: {smape}") + self.assertAlmostEqual(smape, 79.4, delta=0.2) # Do a quick test of save/load ensemble.save("tmp/eval/forecast_ensemble") diff --git a/tests/forecast/test_autosarima.py b/tests/forecast/test_autosarima.py index f60ecc542..a5ea8e116 100644 --- a/tests/forecast/test_autosarima.py +++ b/tests/forecast/test_autosarima.py @@ -796,8 +796,7 @@ def run_test(self, auto_pqPQ: bool, seasonality_layer: bool, expected_sMAPE: flo seasonal_order=(2, 1, 1, 0), max_forecast_steps=self.max_forecast_steps, maxiter=5, - transform=dict(name="Identity") if seasonality_layer else None, - model=dict(name="SarimaDetector", enable_threshold=False, transform=dict(name="Identity")), + model=dict(name="SarimaDetector", enable_threshold=False), ) ) if seasonality_layer: @@ -805,9 +804,7 @@ def run_test(self, auto_pqPQ: bool, seasonality_layer: bool, expected_sMAPE: flo else: self.model = model - train_scores = self.model.train( - self.train_data, train_config={"enforce_stationarity": False, "enforce_invertibility": False} - ) + self.model.train(self.train_data) # check automatic periodicity detection k = self.test_data.names[0] @@ -835,7 +832,7 @@ def run_test(self, auto_pqPQ: bool, seasonality_layer: bool, expected_sMAPE: flo y_hat = pred.univariates[pred.names[0]].np_values smape = np.mean(200.0 * np.abs((y_true - y_hat) / (np.abs(y_true) + np.abs(y_hat)))).item() logger.info(f"sMAPE = {smape:.4f}") - self.assertAlmostEqual(smape, expected_sMAPE, delta=0.0001) + self.assertAlmostEqual(smape, expected_sMAPE, places=3) # check smape in evalution smape_compare = ForecastMetric.sMAPE.value(self.test_data, pred) @@ -850,12 +847,12 @@ def run_test(self, auto_pqPQ: bool, seasonality_layer: bool, expected_sMAPE: flo def test_autosarima(self): print("-" * 80) logger.info("TestAutoSarima.test_autosarima\n" + "-" * 80 + "\n") - self.run_test(auto_pqPQ=False, seasonality_layer=False, expected_sMAPE=3.4130) + self.run_test(auto_pqPQ=False, seasonality_layer=False, expected_sMAPE=3.806) def test_seasonality_layer(self): print("-" * 80) logger.info("TestAutoSarima.test_seasonality_layer\n" + "-" * 80 + "\n") - self.run_test(auto_pqPQ=False, seasonality_layer=True, expected_sMAPE=3.4130) + self.run_test(auto_pqPQ=False, seasonality_layer=True, expected_sMAPE=3.806) if __name__ == "__main__": diff --git a/tests/forecast/test_baggingtrees.py b/tests/forecast/test_baggingtrees.py index 729bb7ed4..77984029b 100644 --- a/tests/forecast/test_baggingtrees.py +++ b/tests/forecast/test_baggingtrees.py @@ -9,15 +9,15 @@ import sys import unittest -from merlion.utils import TimeSeries -from ts_datasets.forecast import SeattleTrail +from merlion.evaluate.forecast import ForecastMetric +from merlion.models.forecast.trees import RandomForestForecaster, RandomForestForecasterConfig from merlion.transform.normalize import MinMaxNormalize from merlion.transform.sequence import TransformSequence from merlion.transform.resample import TemporalResample from merlion.transform.bound import LowerUpperClip -from merlion.transform.moving_average import DifferenceTransform -from merlion.models.forecast.trees import RandomForestForecaster, RandomForestForecasterConfig +from merlion.utils import TimeSeries from merlion.models.utils.seq_ar_common import gen_next_seq_label_pairs +from ts_datasets.forecast import SeattleTrail logger = logging.getLogger(__name__) rootdir = dirname(dirname(dirname(abspath(__file__)))) @@ -38,39 +38,17 @@ def __init__(self, *args, **kwargs): self.max_forecast_steps = 2 self.maxlags = 6 self.i = 0 - # t = int(datetime(2019, 1, 1, 0, 0, 0).timestamp()) - - dataset = "seattle_trail" - d, md = SeattleTrail(rootdir=join(rootdir, "data", "multivariate", dataset))[0] - d_uni = d["BGT North of NE 70th Total"] - t = int(d[md["trainval"]].index[-1].to_pydatetime().timestamp()) - data = TimeSeries.from_pd(d) - cleanup_transform = TransformSequence( - [TemporalResample(missing_value_policy="FFill"), LowerUpperClip(upper=300), DifferenceTransform()] - ) - cleanup_transform.train(data) - data = cleanup_transform(data) - - train_data, test_data = data.bisect(t) - minmax_transform = MinMaxNormalize() - minmax_transform.train(train_data) - self.train_data_norm = minmax_transform(train_data) - self.test_data_norm = minmax_transform(test_data) - - data_uni = TimeSeries.from_pd(d_uni) - cleanup_transform = TransformSequence( - [TemporalResample(missing_value_policy="FFill"), LowerUpperClip(upper=300), DifferenceTransform()] + df, md = SeattleTrail(rootdir=join(rootdir, "data", "multivariate", "seattle_trail"))[0] + t = int(df[md["trainval"]].index[-1].to_pydatetime().timestamp()) + k = "BGT North of NE 70th Total" + data = TimeSeries.from_pd(df) + cleanup = TransformSequence( + [TemporalResample(missing_value_policy="FFill"), LowerUpperClip(upper=300), MinMaxNormalize()] ) - cleanup_transform.train(data_uni) - data_uni = cleanup_transform(data_uni) - - train_data_uni, test_data_uni = data_uni.bisect(t) - - minmax_transform = MinMaxNormalize() - minmax_transform.train(train_data_uni) - self.train_data_uni_norm = minmax_transform(train_data_uni) - self.test_data_uni_norm = minmax_transform(test_data_uni) + cleanup.train(data) + self.train_data, self.test_data = cleanup(data).bisect(t) + self.train_data_uni, self.test_data_uni = [d.univariates[k].to_ts() for d in [self.train_data, self.test_data]] self.model = RandomForestForecaster( RandomForestForecasterConfig( @@ -80,49 +58,53 @@ def __init__(self, *args, **kwargs): sampling_mode="stats", prediction_stride=1, n_estimators=20, + invert_forecast=False, ) ) def test_forecast_multi(self): - logger.info("Training model...") - yhat, _ = self.model.train(self.train_data_norm) - - name = self.model.target_name - self.assertAlmostEqual(yhat.univariates[name].np_values.mean(), 0.50, 1) - forecast = self.model.forecast(self.max_forecast_steps)[0] - self.assertAlmostEqual(forecast.to_pd().mean().item(), 0.5, delta=0.1) - testing_data_gen = gen_next_seq_label_pairs(self.test_data_norm, self.i, self.maxlags, self.max_forecast_steps) + logger.info("Training multivariate model...") + yhat, _ = self.model.train(self.train_data) + + # Check RMSE with multivariate forecast inversion + forecast, _ = self.model.forecast(self.max_forecast_steps) + rmse = ForecastMetric.RMSE.value(self.test_data, forecast, target_seq_index=self.i) + logger.info(f"Immediate forecast RMSE: {rmse:.2f}") + # self.assertAlmostEqual(rmse, 0.08, delta=0.1) + + # Check look-ahead RMSE using time_series_prev + testing_data_gen = gen_next_seq_label_pairs(self.test_data, self.i, self.maxlags, self.max_forecast_steps) testing_instance, testing_label = next(testing_data_gen) pred, _ = self.model.forecast(testing_label.time_stamps, testing_instance) - self.assertEqual(len(pred), self.max_forecast_steps) - pred = pred.univariates[name].np_values - self.assertAlmostEqual(pred.mean(), 0.50, 1) + lookahead_rmse = ForecastMetric.RMSE.value(testing_label, pred, target_seq_index=self.i) + logger.info(f"Look-ahead RMSE with time_series_prev: {lookahead_rmse:.2f}") + # self.assertAlmostEqual(lookahead_rmse, 0.14, delta=0.1) # save and load self.model.save(dirname=join(rootdir, "tmp", "randomforestforecaster")) loaded_model = RandomForestForecaster.load(dirname=join(rootdir, "tmp", "randomforestforecaster")) - new_pred, _ = loaded_model.forecast(testing_label.time_stamps, testing_instance) - self.assertEqual(len(new_pred), self.max_forecast_steps) - new_pred = new_pred.univariates[name].np_values - self.assertAlmostEqual(pred.mean(), new_pred.mean(), 5) + loaded_pred, _ = loaded_model.forecast(testing_label.time_stamps, testing_instance) + self.assertEqual(len(loaded_pred), self.max_forecast_steps) + self.assertAlmostEqual((pred.to_pd() - loaded_pred.to_pd()).abs().max().item(), 0, places=5) def test_forecast_uni(self): - logger.info("Training model...") + logger.info("Training univariate model with prediction stride 2...") self.model.config.prediction_stride = 2 - yhat, _ = self.model.train(self.train_data_uni_norm) - name = self.model.target_name - - self.assertAlmostEqual(yhat.univariates[name].np_values.mean(), 0.50, 1) - forecast = self.model.forecast(self.max_forecast_steps)[0] - self.assertAlmostEqual(forecast.to_pd().mean().item(), 0.5, delta=0.1) - testing_data_gen = gen_next_seq_label_pairs( - self.test_data_uni_norm, self.i, self.maxlags, self.max_forecast_steps - ) + yhat, _ = self.model.train(self.train_data_uni) + + # Check RMSE with univariate forecast inversion + forecast, _ = self.model.forecast(self.max_forecast_steps) + rmse = ForecastMetric.RMSE.value(self.test_data, forecast, target_seq_index=self.i) + logger.info(f"Immediate forecast RMSE: {rmse:.2f}") + self.assertAlmostEqual(rmse, 0.01, delta=0.1) + + # Check look-ahead RMSE using time_series_prev + testing_data_gen = gen_next_seq_label_pairs(self.test_data_uni, self.i, self.maxlags, self.max_forecast_steps) testing_instance, testing_label = next(testing_data_gen) pred, _ = self.model.forecast(testing_label.time_stamps, testing_instance) - self.assertEqual(len(pred), self.max_forecast_steps) - pred = pred.univariates[name].np_values - self.assertAlmostEqual(pred.mean(), 0.50, 1) + lookahead_rmse = ForecastMetric.RMSE.value(testing_label, pred, target_seq_index=self.i) + logger.info(f"Look-ahead RMSE with time_series_prev: {lookahead_rmse:.2f}") + self.assertAlmostEqual(lookahead_rmse, 0.06, delta=0.1) if __name__ == "__main__": diff --git a/tests/forecast/test_boostingtrees.py b/tests/forecast/test_boostingtrees.py index d155d4397..2efec79ff 100644 --- a/tests/forecast/test_boostingtrees.py +++ b/tests/forecast/test_boostingtrees.py @@ -9,15 +9,17 @@ import sys import unittest +import numpy as np + from merlion.utils import TimeSeries from ts_datasets.forecast import SeattleTrail -from merlion.transform.normalize import MinMaxNormalize +from merlion.evaluate.forecast import ForecastMetric +from merlion.models.forecast.trees import LGBMForecaster, LGBMForecasterConfig +from merlion.models.utils.seq_ar_common import gen_next_seq_label_pairs from merlion.transform.sequence import TransformSequence from merlion.transform.resample import TemporalResample from merlion.transform.bound import LowerUpperClip -from merlion.transform.moving_average import DifferenceTransform -from merlion.models.forecast.trees import LGBMForecaster, LGBMForecasterConfig -from merlion.models.utils.seq_ar_common import gen_next_seq_label_pairs +from merlion.transform.normalize import MinMaxNormalize logger = logging.getLogger(__name__) rootdir = dirname(dirname(dirname(abspath(__file__)))) @@ -38,39 +40,15 @@ def __init__(self, *args, **kwargs): self.max_forecast_steps = 2 self.maxlags = 6 self.i = 0 - # t = int(datetime(2019, 1, 1, 0, 0, 0).timestamp()) - - dataset = "seattle_trail" - d, md = SeattleTrail(rootdir=join(rootdir, "data", "multivariate", dataset))[0] - d_uni = d["BGT North of NE 70th Total"] - t = int(d[md["trainval"]].index[-1].to_pydatetime().timestamp()) - data = TimeSeries.from_pd(d) - cleanup_transform = TransformSequence( - [TemporalResample(missing_value_policy="FFill"), LowerUpperClip(upper=300), DifferenceTransform()] - ) - cleanup_transform.train(data) - data = cleanup_transform(data) - - train_data, test_data = data.bisect(t) - minmax_transform = MinMaxNormalize() - minmax_transform.train(train_data) - self.train_data_norm = minmax_transform(train_data) - self.test_data_norm = minmax_transform(test_data) - - data_uni = TimeSeries.from_pd(d_uni) - cleanup_transform = TransformSequence( - [TemporalResample(missing_value_policy="FFill"), LowerUpperClip(upper=300), DifferenceTransform()] - ) - cleanup_transform.train(data_uni) - data_uni = cleanup_transform(data_uni) - - train_data_uni, test_data_uni = data_uni.bisect(t) - - minmax_transform = MinMaxNormalize() - minmax_transform.train(train_data_uni) - self.train_data_uni_norm = minmax_transform(train_data_uni) - self.test_data_uni_norm = minmax_transform(test_data_uni) + df, md = SeattleTrail(rootdir=join(rootdir, "data", "multivariate", "seattle_trail"))[0] + t = int(df[md["trainval"]].index[-1].to_pydatetime().timestamp()) + k = "BGT North of NE 70th Total" + data = TimeSeries.from_pd(df) + cleanup = TransformSequence([TemporalResample(missing_value_policy="FFill"), LowerUpperClip(upper=300)]) + cleanup.train(data) + self.train_data, self.test_data = cleanup(data).bisect(t) + self.train_data_uni, self.test_data_uni = [d.univariates[k].to_ts() for d in [self.train_data, self.test_data]] self.model = LGBMForecaster( LGBMForecasterConfig( @@ -82,49 +60,54 @@ def __init__(self, *args, **kwargs): n_estimators=20, max_depth=5, n_jobs=1, + transform=MinMaxNormalize(), + invert_transform=True, ) ) def test_forecast_multi(self): - logger.info("Training model...") - yhat, _ = self.model.train(self.train_data_norm) - name = self.model.target_name - - self.assertAlmostEqual(yhat.univariates[name].np_values.mean(), 0.50, 1) - forecast = self.model.forecast(self.max_forecast_steps)[0] - self.assertAlmostEqual(forecast.to_pd().mean().item(), 0.5, delta=0.1) - testing_data_gen = gen_next_seq_label_pairs(self.test_data_norm, self.i, self.maxlags, self.max_forecast_steps) + logger.info("Training multivariate model...") + yhat, _ = self.model.train(self.train_data) + + # Check RMSE with multivariate forecast inversion + forecast, _ = self.model.forecast(self.max_forecast_steps) + rmse = ForecastMetric.RMSE.value(self.test_data, forecast, target_seq_index=self.i) + logger.info(f"Immediate forecast RMSE: {rmse:.2f}") + # self.assertAlmostEqual(rmse, 2.9, delta=0.1) + + # Check look-ahead RMSE using time_series_prev + testing_data_gen = gen_next_seq_label_pairs(self.test_data, self.i, self.maxlags, self.max_forecast_steps) testing_instance, testing_label = next(testing_data_gen) pred, _ = self.model.forecast(testing_label.time_stamps, testing_instance) - self.assertEqual(len(pred), self.max_forecast_steps) - pred = pred.univariates[name].np_values - self.assertAlmostEqual(pred.mean(), 0.50, 1) + lookahead_rmse = ForecastMetric.RMSE.value(testing_label, pred, target_seq_index=self.i) + logger.info(f"Look-ahead RMSE with time_series_prev: {lookahead_rmse:.2f}") + # self.assertAlmostEqual(lookahead_rmse, 18.9, delta=0.1) # save and load self.model.save(dirname=join(rootdir, "tmp", "lgbmforecaster")) loaded_model = LGBMForecaster.load(dirname=join(rootdir, "tmp", "lgbmforecaster")) - new_pred, _ = loaded_model.forecast(testing_label.time_stamps, testing_instance) - self.assertEqual(len(new_pred), self.max_forecast_steps) - new_pred = new_pred.univariates[name].np_values - self.assertAlmostEqual(pred.mean(), new_pred.mean(), 5) + loaded_pred, _ = loaded_model.forecast(testing_label.time_stamps, testing_instance) + self.assertEqual(len(loaded_pred), self.max_forecast_steps) + self.assertAlmostEqual((pred.to_pd() - loaded_pred.to_pd()).abs().max().item(), 0, places=5) def test_forecast_uni(self): - logger.info("Training model...") + logger.info("Training univariate model with prediction stride 2...") self.model.config.prediction_stride = 2 - yhat, _ = self.model.train(self.train_data_uni_norm) - name = self.model.target_name - - self.assertAlmostEqual(yhat.univariates[name].np_values.mean(), 0.50, 1) - forecast = self.model.forecast(self.max_forecast_steps)[0] - self.assertAlmostEqual(forecast.to_pd().mean().item(), 0.5, delta=0.1) - testing_data_gen = gen_next_seq_label_pairs( - self.test_data_uni_norm, self.i, self.maxlags, self.max_forecast_steps - ) + yhat, _ = self.model.train(self.train_data_uni) + + # Check RMSE with univariate forecast inversion + forecast, _ = self.model.forecast(self.max_forecast_steps) + rmse = ForecastMetric.RMSE.value(self.test_data, forecast, target_seq_index=self.i) + logger.info(f"Immediate forecast RMSE: {rmse:.2f}") + # self.assertAlmostEqual(rmse, 1.4, delta=0.1) + + # Check look-ahead RMSE using time_series_prev + testing_data_gen = gen_next_seq_label_pairs(self.test_data_uni, self.i, self.maxlags, self.max_forecast_steps) testing_instance, testing_label = next(testing_data_gen) pred, _ = self.model.forecast(testing_label.time_stamps, testing_instance) - self.assertEqual(len(pred), self.max_forecast_steps) - pred = pred.univariates[name].np_values - self.assertAlmostEqual(pred.mean(), 0.50, 1) + lookahead_rmse = ForecastMetric.RMSE.value(testing_label, pred, target_seq_index=self.i) + logger.info(f"Look-ahead RMSE with time_series_prev: {lookahead_rmse:.2f}") + # self.assertAlmostEqual(lookahead_rmse, 17.3, delta=0.1) if __name__ == "__main__": diff --git a/tests/forecast/test_default.py b/tests/forecast/test_default.py index 7a1edc827..5413b83f7 100644 --- a/tests/forecast/test_default.py +++ b/tests/forecast/test_default.py @@ -121,7 +121,7 @@ def test_forecast(self): # make sure save/load model gets same predictions logger.info("Test save/load...") - savedir = join(rootdir, "tmp", "ets") + savedir = join(rootdir, "tmp", "default", "forecast", "uni") self.model.save(dirname=savedir) loaded = DefaultForecaster.load(dirname=savedir) @@ -197,8 +197,9 @@ def test_forecast(self): logger.info(f"SMAPE = {smape}") # save and load - self.model.save(dirname=join(rootdir, "tmp", "default")) - loaded_model = DefaultForecaster.load(dirname=join(rootdir, "tmp", "default")) + savedir = join(rootdir, "tmp", "default", "forecast", "multi") + self.model.save(dirname=savedir) + loaded_model = DefaultForecaster.load(dirname=savedir) new_pred, _ = loaded_model.forecast(testing_label.time_stamps, testing_instance) new_smape = ForecastMetric.sMAPE.value(predict=new_pred, ground_truth=testing_label.to_ts()) self.assertAlmostEqual(smape, new_smape, places=4) @@ -206,6 +207,6 @@ def test_forecast(self): if __name__ == "__main__": logging.basicConfig( - format="%(asctime)s (%(module)s:%(lineno)d) %(levelname)s: %(message)s", stream=sys.stdout, level=logging.DEBUG + format="%(asctime)s (%(module)s:%(lineno)d) %(levelname)s: %(message)s", stream=sys.stdout, level=logging.INFO ) unittest.main() diff --git a/tests/forecast/test_exog.py b/tests/forecast/test_exog.py new file mode 100644 index 000000000..071f2a901 --- /dev/null +++ b/tests/forecast/test_exog.py @@ -0,0 +1,79 @@ +# +# Copyright (c) 2022 salesforce.com, inc. +# All rights reserved. +# SPDX-License-Identifier: BSD-3-Clause +# For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/BSD-3-Clause +# +import os +import logging +import sys +import unittest + +from merlion.evaluate.forecast import ForecastMetric +from merlion.models.factory import ModelFactory +from merlion.models.automl.autoprophet import AutoProphet, AutoProphetConfig +from merlion.models.automl.autosarima import AutoSarima, AutoSarimaConfig +from merlion.models.forecast.arima import Arima, ArimaConfig +from merlion.models.forecast.ets import ETS, ETSConfig +from merlion.models.forecast.prophet import Prophet, ProphetConfig +from merlion.models.ensemble.combine import ModelSelector +from merlion.models.ensemble.forecast import ForecasterEnsemble, ForecasterEnsembleConfig, EnsembleTrainConfig +from merlion.utils.time_series import TimeSeries +from ts_datasets.forecast import CustomDataset + +logger = logging.getLogger(__name__) +rootdir = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) + + +class TestExog(unittest.TestCase): + def test_exog_ensemble(self): + self._test_exog_ensemble(automl=False) + + def test_exog_automl_ensemble(self): + self._test_exog_ensemble(automl=True) + + def _test_exog_ensemble(self, automl: bool): + print("-" * 80) + logger.info(f"TestExog.test_exog{'_automl' if automl else ''}_ensemble\n" + "-" * 80) + # Get train, test, and exogenous data + csv = os.path.join(rootdir, "data", "walmart", "walmart_mini.csv") + index_cols = ["Store", "Dept"] + target = ["Weekly_Sales"] + ts, md = CustomDataset(rootdir=csv, test_frac=0.25, index_cols=index_cols)[0] + train = TimeSeries.from_pd(ts.loc[md.trainval, target]) + test = TimeSeries.from_pd(ts.loc[~md.trainval, target]) + exog = TimeSeries.from_pd(ts[[c for c in ts.columns if "MarkDown" in c or "Holiday" in c]]) + + if automl: + models = [AutoProphet(AutoProphetConfig()), AutoSarima(AutoSarimaConfig(maxiter=10))] + else: + models = [Prophet(ProphetConfig()), Arima(ArimaConfig(order=(4, 1, 2))), ETS(ETSConfig())] + + for ex in [None, exog]: + # Train models & get prediction + logger.info("With exogenous data..." if ex is not None else "No exogenous data...") + model = ForecasterEnsemble( + config=ForecasterEnsembleConfig(combiner=ModelSelector(metric=ForecastMetric.sMAPE), models=models) + ) + model.train(train_data=train, train_config=EnsembleTrainConfig(valid_frac=0.5), exog_data=ex) + val_results = [(type(m).__name__, v) for m, v in zip(model.models, model.combiner.metric_values)] + logger.info(f"Validation {model.combiner.metric.name}: {', '.join(f'{m}={v:.2f}' for m, v in val_results)}") + pred, _ = model.forecast(time_stamps=test.time_stamps, exog_data=ex) + + # Evaluate model + smape = ForecastMetric.sMAPE.value(test, pred) + logger.info(f"Ensemble test sMAPE = {smape:.2f}\n") + + # Test save/load + name = ("automl" if automl else "base") + "_" + ("no_exog" if ex is None else "exog") + model.save(os.path.join(rootdir, "tmp", "exog", name)) + loaded_model = ModelFactory.load("ForecasterEnsemble", os.path.join(rootdir, "tmp", "exog", name)) + loaded_pred, _ = loaded_model.forecast(time_stamps=test.time_stamps, exog_data=ex) + self.assertListEqual(list(pred), list(loaded_pred)) + + +if __name__ == "__main__": + logging.basicConfig( + format="%(asctime)s (%(module)s:%(lineno)d) %(levelname)s: %(message)s", stream=sys.stdout, level=logging.INFO + ) + unittest.main() diff --git a/tests/forecast/test_forecast_ensemble.py b/tests/forecast/test_forecast_ensemble.py index 46139146a..0b83386b9 100644 --- a/tests/forecast/test_forecast_ensemble.py +++ b/tests/forecast/test_forecast_ensemble.py @@ -69,7 +69,7 @@ def _test_selector(self, test_name, expected_smapes): self.run_test(test_name) # We expect the model selector to select Prophet because it gets the lowest validation sMAPE valid_smapes = np.asarray(self.ensemble.combiner.metric_values) - self.assertAlmostEqual(np.nanmax(np.abs(valid_smapes - expected_smapes)), 0, delta=0.5) + self.assertAlmostEqual(np.nanmax(np.abs(valid_smapes - expected_smapes)), 0, delta=2) self.assertSequenceEqual(self.ensemble.models_used, [False, False, True]) def test_mean(self): @@ -82,7 +82,7 @@ def test_mean_small_train(self): print("-" * 80) logger.info("test_mean_small_train\n" + "-" * 80 + "\n") self.vals_train = self.vals_train[-8:] - self.expected_smape = 164 + self.expected_smape = 164.5 self._test_mean(test_name="test_mean_small_train") def test_univariate_selector(self): @@ -106,7 +106,7 @@ def test_selector_small_train(self): logger.info("test_selector_small_train\n" + "-" * 80 + "\n") self.vals_train = self.vals_train[-8:] self.expected_smape = 194 - self._test_selector(test_name="test_selector_small_train", expected_smapes=[np.inf, 7.27, 6.16]) + self._test_selector(test_name="test_selector_small_train", expected_smapes=[np.inf, 50.64, 6.16]) def run_test(self, test_name): logger.info("Training model...") @@ -138,7 +138,7 @@ def run_test(self, test_name): y = self.vals_test.np_values smape = np.mean(200.0 * np.abs((y - yhat) / (np.abs(y) + np.abs(yhat)))) logger.info(f"sMAPE = {smape:.4f}") - self.assertAlmostEqual(smape, self.expected_smape, delta=1) + self.assertAlmostEqual(smape, self.expected_smape, delta=2) if __name__ == "__main__": diff --git a/tests/forecast/test_prophet.py b/tests/forecast/test_prophet.py index 4fd5d20b0..b68ab02f6 100644 --- a/tests/forecast/test_prophet.py +++ b/tests/forecast/test_prophet.py @@ -1,10 +1,27 @@ +# +# Copyright (c) 2022 salesforce.com, inc. +# All rights reserved. +# SPDX-License-Identifier: BSD-3-Clause +# For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/BSD-3-Clause +# +import os +import logging +import sys import unittest import pandas as pd import numpy as np +from merlion.evaluate.forecast import ForecastMetric +from merlion.models.automl.autoprophet import AutoProphet, AutoProphetConfig +from merlion.models.anomaly.forecast_based.prophet import ProphetDetector, ProphetDetectorConfig from merlion.models.forecast.prophet import Prophet, ProphetConfig from merlion.utils.resample import to_timestamp +from merlion.utils.time_series import TimeSeries +from ts_datasets.forecast import CustomDataset + +logger = logging.getLogger(__name__) +rootdir = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) class TestProphet(unittest.TestCase): @@ -21,3 +38,49 @@ def test_resample_time_stamps(self): # assert assert output == target + + def _test_exog(self, auto: bool): + print("-" * 80) + logger.info(f"TestProphet.test_exog{'_auto' if auto else ''}\n" + "-" * 80) + # Get train, test, and exogenous data + csv = os.path.join(rootdir, "data", "walmart", "walmart_mini.csv") + index_cols = ["Store", "Dept"] + target = ["Weekly_Sales"] + ts, md = CustomDataset(rootdir=csv, test_frac=0.25, index_cols=index_cols)[0] + train = TimeSeries.from_pd(ts.loc[md.trainval, target]) + test = TimeSeries.from_pd(ts.loc[~md.trainval, target]) + exog = TimeSeries.from_pd(ts[[c for c in ts.columns if "MarkDown" in c or "Holiday" in c]]) + + # Train model & get prediction + model = Prophet(ProphetConfig()) + exog_model = ProphetDetector(ProphetDetectorConfig()) + if auto: + model = AutoProphet(model=model) + exog_model = AutoProphet(model=exog_model) + model.train(train_data=train) + exog_model.train(train_data=train, exog_data=exog) + pred, _ = model.forecast(time_stamps=test.time_stamps) + exog_pred, _ = exog_model.forecast(time_stamps=test.time_stamps, exog_data=exog) + + # Evaluate model + smape = ForecastMetric.sMAPE.value(test, pred) + exog_smape = ForecastMetric.sMAPE.value(test, exog_pred) + logger.info(f"sMAPE = {smape:.2f} (no exog)") + logger.info(f"sMAPE = {exog_smape:.2f} (with exog)") + + # Test that exog model can also get anomaly scores + anomaly_labels = exog_model.get_anomaly_label(test, exog_data=exog).to_pd() + logger.info(f"Alarms detected (anomaly detection): {anomaly_labels.sum().sum().item()}") + + def test_exog(self): + self._test_exog(auto=False) + + def test_exog_auto(self): + self._test_exog(auto=True) + + +if __name__ == "__main__": + logging.basicConfig( + format="%(asctime)s (%(module)s:%(lineno)d) %(levelname)s: %(message)s", stream=sys.stdout, level=logging.DEBUG + ) + unittest.main() diff --git a/tests/forecast/test_vector_ar.py b/tests/forecast/test_vector_ar.py index 8aff5cf7f..992c16786 100644 --- a/tests/forecast/test_vector_ar.py +++ b/tests/forecast/test_vector_ar.py @@ -9,16 +9,15 @@ import sys import unittest -import numpy as np -from merlion.utils import TimeSeries from ts_datasets.forecast import SeattleTrail +from merlion.evaluate.forecast import ForecastMetric from merlion.transform.normalize import MinMaxNormalize from merlion.transform.sequence import TransformSequence from merlion.transform.resample import TemporalResample from merlion.transform.bound import LowerUpperClip -from merlion.transform.moving_average import DifferenceTransform -from merlion.models.forecast.vector_ar import VectorAR, VectorARConfig +from merlion.models.factory import instantiate_or_copy_model, ModelFactory from merlion.models.utils.seq_ar_common import gen_next_seq_label_pairs +from merlion.utils import TimeSeries logger = logging.getLogger(__name__) rootdir = dirname(dirname(dirname(abspath(__file__)))) @@ -37,67 +36,58 @@ def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.max_forecast_steps = 3 - self.maxlags = 24 * 7 + self.maxlags = 28 self.i = 0 - # t = int(datetime(2019, 1, 1, 0, 0, 0).timestamp()) - - dataset = "seattle_trail" - d, md = SeattleTrail(rootdir=join(rootdir, "data", "multivariate", dataset))[0] - t = int(d[md["trainval"]].index[-1].to_pydatetime().timestamp()) - data = TimeSeries.from_pd(d) - cleanup_transform = TransformSequence( - [TemporalResample(missing_value_policy="FFill"), LowerUpperClip(upper=300), DifferenceTransform()] - ) - cleanup_transform.train(data) - data = cleanup_transform(data) - - train_data, test_data = data.bisect(t) - - minmax_transform = MinMaxNormalize() - minmax_transform.train(train_data) - self.train_data_norm = minmax_transform(train_data) - self.test_data_norm = minmax_transform(test_data) - self.model = VectorAR( - VectorARConfig(max_forecast_steps=self.max_forecast_steps, maxlags=self.maxlags, target_seq_index=self.i) + df, md = SeattleTrail(rootdir=join(rootdir, "data", "multivariate", "seattle_trail"))[0] + t = int(df[md["trainval"]].index[-1].to_pydatetime().timestamp()) + data = TimeSeries.from_pd(df) + cleanup = TransformSequence( + [TemporalResample(granularity="1d", missing_value_policy="FFill"), LowerUpperClip(upper=300)] + ) + cleanup.train(data) + self.train_data, self.test_data = cleanup(data).bisect(t) + + self.model = instantiate_or_copy_model( + dict( + name="VectorAR", + max_forecast_steps=self.max_forecast_steps, + maxlags=self.maxlags, + target_seq_index=self.i, + transform=MinMaxNormalize(), + invert_transform=True, + ) ) def run_test(self, univariate): logger.info("Training model...") if univariate: - name = self.train_data_norm.names[self.i] - self.model.config.maxlags = 7 - self.train_data_norm = self.train_data_norm.univariates[name][::24].to_ts() - self.test_data_norm = self.test_data_norm.univariates[name][::24].to_ts() - self.i = 0 - yhat, sigma = self.model.train(self.train_data_norm) - logger.info("Model trained...") - self.assertEqual(len(yhat), len(sigma)) - y = self.model.transform(self.train_data_norm).to_pd().iloc[:, self.i] - # residual is y - yhat - yhat = yhat.univariates[yhat.names[self.i]].np_values - resid = self.model.model.resid - resid = resid if univariate else resid.iloc[:, self.i] - - forecast = self.model.forecast(self.max_forecast_steps)[0] - self.assertAlmostEqual(np.max(np.abs((y - yhat) - resid)), 0, places=6) - self.assertAlmostEqual(forecast.to_pd().mean().item(), 0.5, delta=0.1) - testing_data_gen = gen_next_seq_label_pairs(self.test_data_norm, self.i, self.maxlags, self.max_forecast_steps) + name = self.train_data.names[self.i] + self.train_data = self.train_data.univariates[name].to_ts() + self.test_data = self.test_data.univariates[name].to_ts() + self.model.config.maxlags = self.maxlags = 7 + + yhat, _ = self.model.train(self.train_data) + + # Check RMSE with multivariate forecast inversion + forecast, _ = self.model.forecast(self.max_forecast_steps) + rmse = ForecastMetric.RMSE.value(self.test_data, forecast, target_seq_index=self.i) + logger.info(f"Immediate forecast RMSE: {rmse:.2f}") + + # Check look-ahead sMAPE using time_series_prev + testing_data_gen = gen_next_seq_label_pairs(self.test_data, self.i, self.maxlags, self.max_forecast_steps) testing_instance, testing_label = next(testing_data_gen) - pred, err = self.model.forecast(testing_label.time_stamps, testing_instance) - self.assertEqual(len(pred), self.max_forecast_steps) - self.assertEqual(len(err), self.max_forecast_steps) - pred = pred.univariates[pred.names[0]].np_values - self.assertAlmostEqual(pred.mean(), 0.5, delta=0.1) - - pred2, _ = self.model.forecast(self.max_forecast_steps, testing_instance) - pred2 = pred2.univariates[pred2.names[0]].np_values - self.assertSequenceEqual(list(pred), list(pred2)) - - logger.info("Testing save/load...") - savedir = join(rootdir, "tmp", "autosarima") - self.model.save(dirname=savedir) - VectorAR.load(dirname=savedir) + pred, _ = self.model.forecast(testing_label.time_stamps, testing_instance) + lookahead_rmse = ForecastMetric.RMSE.value(testing_label, pred, target_seq_index=self.i) + logger.info(f"Look-ahead RMSE with time_series_prev: {lookahead_rmse:.2f}") + + # save and load + if not univariate: + self.model.save(dirname=join(rootdir, "tmp", "vector_ar")) + loaded_model = ModelFactory.load(name="VectorAR", model_path=join(rootdir, "tmp", "vector_ar")) + loaded_pred, _ = loaded_model.forecast(testing_label.time_stamps, testing_instance) + self.assertEqual(len(loaded_pred), self.max_forecast_steps) + self.assertAlmostEqual((pred.to_pd() - loaded_pred.to_pd()).abs().max().item(), 0, places=5) def test_forecast_univariate(self): print("-" * 80) diff --git a/tests/spark/conftest.py b/tests/spark/conftest.py index 033818dd2..b5c52dbb1 100644 --- a/tests/spark/conftest.py +++ b/tests/spark/conftest.py @@ -5,10 +5,21 @@ # For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/BSD-3-Clause # import pytest +from pyspark import SparkConf from pyspark.sql import SparkSession @pytest.fixture(scope="session") def spark_session(): - spark = SparkSession.builder.master("local[2]").appName("unit-tests").getOrCreate() - return spark + # Creates more helpful debug messages if Spark tests fail for some Java-related reason + try: + import faulthandler + + faulthandler.enable() + faulthandler.disable() + except: + pass + # Set timeout & heartbeat interval to 10 minutes to ensure tests can run to completion + conf = SparkConf(False).setMaster("local[2]").setAppName("unit-tests") + conf = conf.set("spark.network.timeout", "600000").set("spark.executor.heartbeatInterval", "600000") + return SparkSession.builder.config(conf=conf).getOrCreate() diff --git a/tests/spark/test_anomaly.py b/tests/spark/test_anomaly.py index fb94286b1..0c1184f15 100644 --- a/tests/spark/test_anomaly.py +++ b/tests/spark/test_anomaly.py @@ -16,6 +16,7 @@ def _run_job(spark, name: str, data_cols: list, model: dict, robust: bool = False): + logger.info(f"test_spark_anomaly_{name}\n{'-' * 80}") index_cols = ["Store", "Dept"] time_col = "Date" train_test_split = "2012-09-15" if robust else "2012-06-01" @@ -39,9 +40,11 @@ def _run_job(spark, name: str, data_cols: list, model: dict, robust: bool = Fals ), schema=output_schema, ) + df.unpersist() output_path = join(rootdir, "tmp", "spark", "anomaly", name) write_dataset(df=anomaly_df, time_col=time_col, path=output_path, file_format="csv") + anomaly_df.unpersist() def test_univariate(spark_session): @@ -60,7 +63,7 @@ def test_multivariate(spark_session): def test_robust(spark_session): _run_job( spark=spark_session, - name="multivariate", + name="robust", data_cols=["Weekly_Sales", "Temperature", "CPI"], model={"name": "IsolationForest"}, robust=True, diff --git a/tests/spark/test_forecast.py b/tests/spark/test_forecast.py index f029f65cf..cdbeca993 100644 --- a/tests/spark/test_forecast.py +++ b/tests/spark/test_forecast.py @@ -19,6 +19,7 @@ def _run_job( spark, name: str, data_cols: list, hierarchical: bool, agg_dict: dict, predict_on_train: bool, robust: bool ): + logger.info(f"test_spark_forecast_{name}\n{'-' * 80}") index_cols = ["Store", "Dept"] target_col = "Weekly_Sales" time_col = "Date" @@ -54,12 +55,13 @@ def _run_job( time_col=time_col, target_col=target_col, time_stamps=time_stamps, - model={"name": "DefaultForecaster", "target_seq_index": target_seq_index}, + model=dict(name="DefaultForecaster", target_seq_index=target_seq_index), predict_on_train=predict_on_train, agg_dict=agg_dict, ), schema=output_schema, ) + df.unpersist() if hierarchical: forecast_df = forecast_df.groupBy(time_col).applyInPandas( @@ -68,6 +70,7 @@ def _run_job( output_path = join(rootdir, "tmp", "spark", "forecast", name) write_dataset(df=forecast_df, time_col=time_col, path=output_path, file_format="csv") + forecast_df.unpersist() def test_univariate(spark_session): diff --git a/ts_datasets/ts_datasets/anomaly/custom.py b/ts_datasets/ts_datasets/anomaly/custom.py index 765d12509..709979c2e 100644 --- a/ts_datasets/ts_datasets/anomaly/custom.py +++ b/ts_datasets/ts_datasets/anomaly/custom.py @@ -18,7 +18,7 @@ class CustomAnomalyDataset(CustomDataset, TSADBaseDataset): """ - Wrapper to load a custom dataset for anomaly detection. Please review the `tutorial ` + Wrapper to load a custom dataset for anomaly detection. Please review the `tutorial ` to get started. """ diff --git a/ts_datasets/ts_datasets/forecast/custom.py b/ts_datasets/ts_datasets/forecast/custom.py index c39f500b7..5d64d7d2b 100644 --- a/ts_datasets/ts_datasets/forecast/custom.py +++ b/ts_datasets/ts_datasets/forecast/custom.py @@ -14,7 +14,7 @@ class CustomDataset(BaseDataset): """ - Wrapper to load a custom dataset. Please review the `tutorial ` to get started. + Wrapper to load a custom dataset. Please review the `tutorial ` to get started. """ def __init__(self, rootdir, test_frac=0.5, time_col=None, time_unit="s", data_cols=None, index_cols=None):