From 42390aa22e5c62b99f21d2146c01af4fa69f41d4 Mon Sep 17 00:00:00 2001 From: Miha Kralj Date: Sat, 28 Feb 2026 17:12:08 -0800 Subject: [PATCH] Remove pandas_ta.tar.gz from the repository --- $null | 2 - .DS_Store | Bin 6148 -> 0 bytes .gitignore | 16 +- .../.github/workflows/test.yml | 68 - temp_pandas_ta/pandas_ta-0.4.71b0/.gitignore | 147 - .../pandas_ta-0.4.71b0/CODE_OF_CONDUCT.md | 73 - temp_pandas_ta/pandas_ta-0.4.71b0/LICENSE | 21 - temp_pandas_ta/pandas_ta-0.4.71b0/PKG-INFO | 52 - temp_pandas_ta/pandas_ta-0.4.71b0/README.md | 24 - temp_pandas_ta/pandas_ta-0.4.71b0/__init__.py | 0 .../pandas_ta-0.4.71b0/data/ADX_D.csv | 31 - .../pandas_ta-0.4.71b0/data/ALT_D.csv | 248 - .../pandas_ta-0.4.71b0/data/TEST_D.csv | 7193 ----------------- .../pandas_ta-0.4.71b0/data/sample.csv | 101 - .../pandas_ta-0.4.71b0/images/SPY_ADX.png | Bin 75060 -> 0 bytes .../pandas_ta-0.4.71b0/images/SPY_ATR.png | Bin 45264 -> 0 bytes .../pandas_ta-0.4.71b0/images/SPY_CLR.png | Bin 63571 -> 0 bytes .../pandas_ta-0.4.71b0/images/SPY_Chart.png | Bin 268591 -> 0 bytes .../pandas_ta-0.4.71b0/images/SPY_EBSW.png | Bin 50282 -> 0 bytes .../pandas_ta-0.4.71b0/images/SPY_MACD.png | Bin 66181 -> 0 bytes .../pandas_ta-0.4.71b0/images/SPY_OBV.png | Bin 64745 -> 0 bytes .../pandas_ta-0.4.71b0/images/SPY_STDEV.png | Bin 46628 -> 0 bytes .../pandas_ta-0.4.71b0/images/SPY_VOL.png | Bin 83006 -> 0 bytes .../pandas_ta-0.4.71b0/images/SPY_ZCDL.png | Bin 56532 -> 0 bytes .../pandas_ta-0.4.71b0/images/pta-logo.svg | 1 - .../pandas_ta-0.4.71b0/images/pta-logo.webp | Bin 10670 -> 0 bytes .../pandas_ta-0.4.71b0/pyproject.toml | 72 - .../pandas_ta-0.4.71b0/requirements.dev.txt | 383 - .../pandas_ta-0.4.71b0/requirements.txt | 383 - .../src/pandas_ta/__init__.py | 65 - .../src/pandas_ta/__main__.py | 7 - .../src/pandas_ta/_typing.py | 71 - .../src/pandas_ta/candle/__init__.py | 16 - .../src/pandas_ta/candle/cdl_doji.py | 90 - .../src/pandas_ta/candle/cdl_inside.py | 84 - .../src/pandas_ta/candle/cdl_pattern.py | 126 - .../src/pandas_ta/candle/cdl_z.py | 93 - .../src/pandas_ta/candle/ha.py | 86 - .../pandas_ta-0.4.71b0/src/pandas_ta/core.py | 1834 ----- .../src/pandas_ta/custom.py | 177 - .../src/pandas_ta/cycle/__init__.py | 8 - .../src/pandas_ta/cycle/ebsw.py | 142 - .../src/pandas_ta/cycle/reflex.py | 115 - .../pandas_ta-0.4.71b0/src/pandas_ta/ma.py | 75 - .../pandas_ta-0.4.71b0/src/pandas_ta/maps.py | 90 - .../src/pandas_ta/momentum/__init__.py | 93 - .../src/pandas_ta/momentum/ao.py | 66 - .../src/pandas_ta/momentum/apo.py | 75 - .../src/pandas_ta/momentum/bias.py | 59 - .../src/pandas_ta/momentum/bop.py | 73 - .../src/pandas_ta/momentum/brar.py | 93 - .../src/pandas_ta/momentum/cci.py | 75 - .../src/pandas_ta/momentum/cfo.py | 69 - .../src/pandas_ta/momentum/cg.py | 57 - .../src/pandas_ta/momentum/cmo.py | 90 - .../src/pandas_ta/momentum/coppock.py | 70 - .../src/pandas_ta/momentum/crsi.py | 106 - .../src/pandas_ta/momentum/cti.py | 56 - .../src/pandas_ta/momentum/dm.py | 94 - .../src/pandas_ta/momentum/er.py | 93 - .../src/pandas_ta/momentum/eri.py | 75 - .../src/pandas_ta/momentum/exhc.py | 110 - .../src/pandas_ta/momentum/fisher.py | 95 - .../src/pandas_ta/momentum/inertia.py | 118 - .../src/pandas_ta/momentum/kdj.py | 94 - .../src/pandas_ta/momentum/kst.py | 97 - .../src/pandas_ta/momentum/macd.py | 141 - .../src/pandas_ta/momentum/mom.py | 76 - .../src/pandas_ta/momentum/pgo.py | 68 - .../src/pandas_ta/momentum/ppo.py | 107 - .../src/pandas_ta/momentum/psl.py | 79 - .../src/pandas_ta/momentum/qqe.py | 174 - .../src/pandas_ta/momentum/roc.py | 84 - .../src/pandas_ta/momentum/rsi.py | 115 - .../src/pandas_ta/momentum/rsx.py | 148 - .../src/pandas_ta/momentum/rvgi.py | 87 - .../src/pandas_ta/momentum/slope.py | 71 - .../src/pandas_ta/momentum/smc.py | 118 - .../src/pandas_ta/momentum/smi.py | 92 - .../src/pandas_ta/momentum/squeeze.py | 205 - .../src/pandas_ta/momentum/squeeze_pro.py | 222 - .../src/pandas_ta/momentum/stc.py | 175 - .../src/pandas_ta/momentum/stoch.py | 121 - .../src/pandas_ta/momentum/stochf.py | 100 - .../src/pandas_ta/momentum/stochrsi.py | 104 - .../src/pandas_ta/momentum/tmo.py | 129 - .../src/pandas_ta/momentum/trix.py | 93 - .../src/pandas_ta/momentum/tsi.py | 106 - .../src/pandas_ta/momentum/uo.py | 105 - .../src/pandas_ta/momentum/willr.py | 75 - .../src/pandas_ta/overlap/__init__.py | 77 - .../src/pandas_ta/overlap/alligator.py | 86 - .../src/pandas_ta/overlap/alma.py | 81 - .../src/pandas_ta/overlap/dema.py | 75 - .../src/pandas_ta/overlap/ema.py | 80 - .../src/pandas_ta/overlap/fwma.py | 66 - .../src/pandas_ta/overlap/hilo.py | 100 - .../src/pandas_ta/overlap/hl2.py | 52 - .../src/pandas_ta/overlap/hlc3.py | 60 - .../src/pandas_ta/overlap/hma.py | 72 - .../src/pandas_ta/overlap/hwma.py | 73 - .../src/pandas_ta/overlap/ichimoku.py | 131 - .../src/pandas_ta/overlap/jma.py | 117 - .../src/pandas_ta/overlap/kama.py | 94 - .../src/pandas_ta/overlap/linreg.py | 164 - .../src/pandas_ta/overlap/mama.py | 167 - .../src/pandas_ta/overlap/mcgd.py | 72 - .../src/pandas_ta/overlap/midpoint.py | 64 - .../src/pandas_ta/overlap/midprice.py | 67 - .../src/pandas_ta/overlap/ohlc4.py | 53 - .../src/pandas_ta/overlap/pivots.py | 264 - .../src/pandas_ta/overlap/pwma.py | 66 - .../src/pandas_ta/overlap/rma.py | 56 - .../src/pandas_ta/overlap/sinwma.py | 63 - .../src/pandas_ta/overlap/sma.py | 85 - .../src/pandas_ta/overlap/smma.py | 82 - .../src/pandas_ta/overlap/ssf.py | 115 - .../src/pandas_ta/overlap/ssf3.py | 94 - .../src/pandas_ta/overlap/supertrend.py | 108 - .../src/pandas_ta/overlap/swma.py | 68 - .../src/pandas_ta/overlap/t3.py | 84 - .../src/pandas_ta/overlap/tema.py | 73 - .../src/pandas_ta/overlap/trima.py | 77 - .../src/pandas_ta/overlap/vidya.py | 113 - .../src/pandas_ta/overlap/wcp.py | 65 - .../src/pandas_ta/overlap/wma.py | 94 - .../src/pandas_ta/overlap/zlma.py | 99 - .../src/pandas_ta/performance/__init__.py | 10 - .../src/pandas_ta/performance/drawdown.py | 68 - .../src/pandas_ta/performance/log_return.py | 64 - .../pandas_ta/performance/percent_return.py | 64 - .../pandas_ta-0.4.71b0/src/pandas_ta/py.typed | 0 .../src/pandas_ta/statistics/__init__.py | 24 - .../src/pandas_ta/statistics/entropy.py | 60 - .../src/pandas_ta/statistics/kurtosis.py | 58 - .../src/pandas_ta/statistics/mad.py | 61 - .../src/pandas_ta/statistics/median.py | 58 - .../src/pandas_ta/statistics/quantile.py | 57 - .../src/pandas_ta/statistics/skew.py | 58 - .../src/pandas_ta/statistics/stdev.py | 70 - .../src/pandas_ta/statistics/tos_stdevall.py | 96 - .../src/pandas_ta/statistics/variance.py | 70 - .../src/pandas_ta/statistics/zscore.py | 57 - .../src/pandas_ta/trend/__init__.py | 46 - .../src/pandas_ta/trend/adx.py | 168 - .../src/pandas_ta/trend/alphatrend.py | 161 - .../src/pandas_ta/trend/amat.py | 87 - .../src/pandas_ta/trend/aroon.py | 100 - .../src/pandas_ta/trend/chop.py | 92 - .../src/pandas_ta/trend/cksp.py | 101 - .../src/pandas_ta/trend/decay.py | 95 - .../src/pandas_ta/trend/decreasing.py | 85 - .../src/pandas_ta/trend/dpo.py | 69 - .../src/pandas_ta/trend/ht_trendline.py | 148 - .../src/pandas_ta/trend/increasing.py | 85 - .../src/pandas_ta/trend/long_run.py | 66 - .../src/pandas_ta/trend/psar.py | 154 - .../src/pandas_ta/trend/qstick.py | 67 - .../src/pandas_ta/trend/rwi.py | 94 - .../src/pandas_ta/trend/short_run.py | 66 - .../src/pandas_ta/trend/trendflex.py | 111 - .../src/pandas_ta/trend/ttm_trend.py | 76 - .../src/pandas_ta/trend/vhf.py | 68 - .../src/pandas_ta/trend/vortex.py | 83 - .../src/pandas_ta/trend/zigzag.py | 335 - .../src/pandas_ta/utils/__init__.py | 28 - .../src/pandas_ta/utils/_candles.py | 54 - .../src/pandas_ta/utils/_core.py | 454 -- .../src/pandas_ta/utils/_math.py | 811 -- .../src/pandas_ta/utils/_numba.py | 140 - .../src/pandas_ta/utils/_signals.py | 623 -- .../src/pandas_ta/utils/_study.py | 144 - .../src/pandas_ta/utils/_time.py | 152 - .../src/pandas_ta/utils/_validate.py | 202 - .../src/pandas_ta/volatility/__init__.py | 36 - .../src/pandas_ta/volatility/aberration.py | 85 - .../src/pandas_ta/volatility/accbands.py | 93 - .../src/pandas_ta/volatility/atr.py | 107 - .../src/pandas_ta/volatility/atrts.py | 140 - .../src/pandas_ta/volatility/bbands.py | 124 - .../pandas_ta/volatility/chandelier_exit.py | 127 - .../src/pandas_ta/volatility/donchian.py | 77 - .../src/pandas_ta/volatility/hwc.py | 142 - .../src/pandas_ta/volatility/kc.py | 95 - .../src/pandas_ta/volatility/massi.py | 77 - .../src/pandas_ta/volatility/natr.py | 97 - .../src/pandas_ta/volatility/pdist.py | 67 - .../src/pandas_ta/volatility/rvi.py | 117 - .../src/pandas_ta/volatility/thermo.py | 111 - .../src/pandas_ta/volatility/true_range.py | 94 - .../src/pandas_ta/volatility/ui.py | 73 - .../src/pandas_ta/volume/__init__.py | 44 - .../src/pandas_ta/volume/ad.py | 72 - .../src/pandas_ta/volume/adosc.py | 95 - .../src/pandas_ta/volume/aobv.py | 113 - .../src/pandas_ta/volume/cmf.py | 79 - .../src/pandas_ta/volume/efi.py | 71 - .../src/pandas_ta/volume/eom.py | 82 - .../src/pandas_ta/volume/kvo.py | 100 - .../src/pandas_ta/volume/mfi.py | 97 - .../src/pandas_ta/volume/nvi.py | 68 - .../src/pandas_ta/volume/obv.py | 65 - .../src/pandas_ta/volume/pvi.py | 111 - .../src/pandas_ta/volume/pvo.py | 81 - .../src/pandas_ta/volume/pvol.py | 51 - .../src/pandas_ta/volume/pvr.py | 58 - .../src/pandas_ta/volume/pvt.py | 59 - .../src/pandas_ta/volume/tsv.py | 104 - .../src/pandas_ta/volume/vhm.py | 76 - .../src/pandas_ta/volume/vp.py | 128 - .../src/pandas_ta/volume/vwap.py | 120 - .../src/pandas_ta/volume/vwma.py | 58 - .../pandas_ta-0.4.71b0/tests/__init__.py | 0 .../pandas_ta-0.4.71b0/tests/config.py | 96 - .../pandas_ta-0.4.71b0/tests/conftest.py | 155 - .../tests/test_indicator_candle.py | 87 - .../tests/test_indicator_cycles.py | 30 - .../tests/test_indicator_momentum.py | 845 -- .../tests/test_indicator_overlap.py | 779 -- .../tests/test_indicator_performance.py | 43 - .../tests/test_indicator_statistics.py | 161 - .../tests/test_indicator_trend.py | 436 - .../tests/test_indicator_volatility.py | 332 - .../tests/test_indicator_volume.py | 324 - .../pandas_ta-0.4.71b0/tests/test_numba.py | 35 - .../pandas_ta-0.4.71b0/tests/test_studies.py | 125 - .../pandas_ta-0.4.71b0/tests/test_utils.py | 439 - temp_pandas_ta/pandas_ta-0.4.71b0/uv.lock | 2591 ------ temp_pandas_ta/pandas_ta.tar.gz | Bin 1310317 -> 0 bytes 229 files changed, 15 insertions(+), 35501 deletions(-) delete mode 100644 $null delete mode 100644 .DS_Store delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/.github/workflows/test.yml delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/.gitignore delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/CODE_OF_CONDUCT.md delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/LICENSE delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/PKG-INFO delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/README.md delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/__init__.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/data/ADX_D.csv delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/data/ALT_D.csv delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/data/TEST_D.csv delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/data/sample.csv delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/images/SPY_ADX.png delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/images/SPY_ATR.png delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/images/SPY_CLR.png delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/images/SPY_Chart.png delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/images/SPY_EBSW.png delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/images/SPY_MACD.png delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/images/SPY_OBV.png delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/images/SPY_STDEV.png delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/images/SPY_VOL.png delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/images/SPY_ZCDL.png delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/images/pta-logo.svg delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/images/pta-logo.webp delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/pyproject.toml delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/requirements.dev.txt delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/requirements.txt delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/__init__.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/__main__.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/_typing.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/__init__.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/cdl_doji.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/cdl_inside.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/cdl_pattern.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/cdl_z.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/ha.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/core.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/custom.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/cycle/__init__.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/cycle/ebsw.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/cycle/reflex.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/ma.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/maps.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/__init__.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/ao.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/apo.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/bias.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/bop.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/brar.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cci.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cfo.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cg.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cmo.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/coppock.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/crsi.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cti.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/dm.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/er.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/eri.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/exhc.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/fisher.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/inertia.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/kdj.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/kst.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/macd.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/mom.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/pgo.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/ppo.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/psl.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/qqe.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/roc.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/rsi.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/rsx.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/rvgi.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/slope.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/smc.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/smi.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/squeeze.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/squeeze_pro.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/stc.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/stoch.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/stochf.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/stochrsi.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/tmo.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/trix.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/tsi.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/uo.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/willr.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/__init__.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/alligator.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/alma.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/dema.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ema.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/fwma.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hilo.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hl2.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hlc3.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hma.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hwma.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ichimoku.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/jma.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/kama.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/linreg.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/mama.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/mcgd.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/midpoint.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/midprice.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ohlc4.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/pivots.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/pwma.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/rma.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/sinwma.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/sma.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/smma.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ssf.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ssf3.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/supertrend.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/swma.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/t3.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/tema.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/trima.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/vidya.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/wcp.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/wma.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/zlma.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/performance/__init__.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/performance/drawdown.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/performance/log_return.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/performance/percent_return.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/py.typed delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/__init__.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/entropy.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/kurtosis.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/mad.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/median.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/quantile.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/skew.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/stdev.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/tos_stdevall.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/variance.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/zscore.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/__init__.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/adx.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/alphatrend.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/amat.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/aroon.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/chop.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/cksp.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/decay.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/decreasing.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/dpo.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/ht_trendline.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/increasing.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/long_run.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/psar.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/qstick.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/rwi.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/short_run.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/trendflex.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/ttm_trend.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/vhf.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/vortex.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/zigzag.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/__init__.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_candles.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_core.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_math.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_numba.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_signals.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_study.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_time.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_validate.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/__init__.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/aberration.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/accbands.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/atr.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/atrts.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/bbands.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/chandelier_exit.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/donchian.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/hwc.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/kc.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/massi.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/natr.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/pdist.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/rvi.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/thermo.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/true_range.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/ui.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/__init__.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/ad.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/adosc.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/aobv.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/cmf.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/efi.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/eom.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/kvo.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/mfi.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/nvi.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/obv.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvi.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvo.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvol.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvr.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvt.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/tsv.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/vhm.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/vp.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/vwap.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/vwma.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/tests/__init__.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/tests/config.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/tests/conftest.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_candle.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_cycles.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_momentum.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_overlap.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_performance.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_statistics.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_trend.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_volatility.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_volume.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_numba.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_studies.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_utils.py delete mode 100644 temp_pandas_ta/pandas_ta-0.4.71b0/uv.lock delete mode 100644 temp_pandas_ta/pandas_ta.tar.gz diff --git a/$null b/$null deleted file mode 100644 index 93d5ece6..00000000 --- a/$null +++ /dev/null @@ -1,2 +0,0 @@ -The filename, directory name, or volume label syntax is incorrect. -Error occurred while processing: https://files.pythonhosted.org/packages/95/6d/60b88a0334a8c6a5be114ed2c46c8f3e164127d0eccd9ff99b50773f2b20/pandas_ta-0.4.71b0.tar.gz. diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index 90c7b22c90821be20ca3d7dadb1b9b842af1c415..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeH~JqiLr422W55Nx)zoW=uqgF*BJUO-k61i?b==jgutu;6MfA}^4ET z-rJ!i>uPEXjdsx-J~ZE~HpRd++C>XCFs&{OBtQZq0@K)ccK+|+pXUEj3%4Xd0)Iw8 zXWRXDgOAFy_3iU4f5@z@8yxE82rriaZ0smr!rkz^*aBKpTPQLxUIZKi0||VUz!L$j B5n})V diff --git a/.gitignore b/.gitignore index 92d7fcdc..dce309ec 100644 --- a/.gitignore +++ b/.gitignore @@ -49,6 +49,9 @@ BenchmarkDotNet.Artifacts/ # Temporary files and agent workspace temp/ +temp_pandas_ta/ +temp_decompile/ +Invoke-WebRequest/ .temp/ *.tmp *.temp @@ -78,4 +81,15 @@ plans/ # SonarLint IDE plugin .sonarlint/ -.obsidian/ \ No newline at end of file +.obsidian/ + +# macOS +.DS_Store +**/.DS_Store + +# Python cache +__pycache__/ +.pytest_cache/ + +# PowerShell accidents +$null diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/.github/workflows/test.yml b/temp_pandas_ta/pandas_ta-0.4.71b0/.github/workflows/test.yml deleted file mode 100644 index 3af85728..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/.github/workflows/test.yml +++ /dev/null @@ -1,68 +0,0 @@ -on: - push: - branches: - - main - - development - pull_request: - branches: - - main - - development - workflow_dispatch: - -jobs: - test: - if: github.actor != 'dependabot[bot]' && github.ref != 'refs/heads/master' - runs-on: ${{ matrix.os }} - strategy: - # If failure occurs on one OS, it is still relevant to see which others may work - fail-fast: false - matrix: - python-version: ["3.12"] - os: [ubuntu-latest] - - steps: - - name: Github Actor Info - run: | - echo "Workflow triggered by github actor ${{ github.actor }}" - - - name: Set up Python - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python-version }} - - - name: Checkout - uses: actions/checkout@v3 - - - name: Activate Cache for pip - uses: actions/cache@v3 - id: cache-python-env - with: - path: ${{ env.pythonLocation }} - key: "v3-${{ env.pythonLocation }}-${{ hashFiles('setup.py') }}" - - - name: Update pip and friends - run: | - python -m pip install --upgrade pip setuptools wheel - if: steps.cache-python-env.outputs.cache-hit != 'true' - - - name: Install TA-lib - # Inspiration for this step is taken from here: https://github.com/mrjbq7/ta-lib/blob/master/.github/workflows/tests.yml - shell: bash - run: | - wget https://raw.githubusercontent.com/mrjbq7/ta-lib/master/tools/build_talib_from_source.bash - chmod +x build_talib_from_source.bash - ./build_talib_from_source.bash $DEPS_PATH - python -m pip install TA-lib - env: - DEPS_PATH: ${{ github.workspace }}/dependencies - TA_INCLUDE_PATH: ${{ github.workspace }}/dependencies/include - TA_LIBRARY_PATH: ${{ github.workspace }}/dependencies/lib - - - name: Install pandas-ta - run: | - python -m pip install ".[test]" - - - name: Run tests - shell: bash - run: | - make tests diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/.gitignore b/temp_pandas_ta/pandas_ta-0.4.71b0/.gitignore deleted file mode 100644 index 61b4b0e1..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/.gitignore +++ /dev/null @@ -1,147 +0,0 @@ -# Byte-compiled / optimized / DLL files -__pycache__/ -*.py[cod] -*$py.class - -# C extensions -*.so - - -.DS_Store - -# Distribution / packaging -.pypirc -.Python -build/ -develop-eggs/ -dist/ -downloads/ -eggs/ -.eggs/ -lib/ -lib64/ -parts/ -sdist/ -var/ -wheels/ -*.egg-info/ -.installed.cfg -*.egg -MANIFEST - -# PyInstaller -# Usually these files are written by a python script from a template -# before PyInstaller builds the exe, so as to inject date/other infos into it. -*.manifest -*.spec - -# Installer logs -pip-log.txt -pip-delete-this-directory.txt - -# Unit test / coverage reports -htmlcov/ -.tox/ -.coverage -.coverage.* -.cache -nosetests.xml -coverage.xml -*.cover -.hypothesis/ - -# Translations -*.mo -*.pot - -# Django stuff: -*.log -local_settings.py - -# Flask stuff: -instance/ -.webassets-cache - -# Scrapy stuff: -.scrapy - -# Sphinx documentation -docs/_build/ - -# PyBuilder -target/ - -# Jupyter Notebook -.ipynb_checkpoints - -# pyenv -.python-version - -# celery beat schedule file -celerybeat-schedule - -# SageMath parsed files -*.sage.py - -# pycharm -.idea/* - -# pytest -.pytest_cache/ - -# pytest debug logs generated via --debug -pytestdebug.log - -# dotenv -.env - -# virtualenv -.venv -venv/ -ENV/ -env/** -.env*/ - -# Spyder project settings -.spyderproject -.spyproject - -# Rope project settings -.ropeproject - -# mypy -.mypy_cache/ - -# vscode settings -.vscode/** - -# zed settings -.zed -.zed/** - -# misc -dev.sh -Dockerfile -flake.nix -flake.lock -Makefile -scripts/ -setup.py* -ta-lib/ -venv.sh -website.tar.gz - -# Data & NB Exclusions -csv/ -# data/ -jnb/ -notes/ - -# mkdocs documentation -all_tests.sh -mkdocs.yml -docs/ -site/ -examples/ - -*.bak diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/CODE_OF_CONDUCT.md b/temp_pandas_ta/pandas_ta-0.4.71b0/CODE_OF_CONDUCT.md deleted file mode 100644 index d01d7560..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/CODE_OF_CONDUCT.md +++ /dev/null @@ -1,73 +0,0 @@ -# Contributor Covenant Code of Conduct - -## Our Pledge - -In the interest of fostering an open and welcoming environment, we as -contributors and maintainers pledge to making participation in our project and -our community a harassment-free experience for everyone, regardless of age, body -size, disability, ethnicity, sex characteristics, gender identity and expression, -level of experience, education, socio-economic status, nationality, personal -appearance, race, religion, or sexual identity and orientation. - -## Our Standards - -Examples of behavior that contributes to creating a positive environment -include: - -* Using welcoming and inclusive language -* Being respectful of differing viewpoints and experiences -* Gracefully accepting constructive criticism -* Focusing on what is best for the community -* Showing empathy towards other community members - -Examples of unacceptable behavior by participants include: - -* The use of sexualized language or imagery and unwelcome sexual attention or - advances -* Trolling, insulting/derogatory comments, and personal or political attacks -* Public or private harassment -* Publishing others' private information, such as a physical or electronic - address, without explicit permission -* Other conduct which could reasonably be considered inappropriate in a - professional setting - -## Our Responsibilities - -Project maintainers are responsible for clarifying the standards of acceptable -behavior and are expected to take appropriate and fair corrective action in -response to any instances of unacceptable behavior. - -Project maintainers have the right and responsibility to remove, edit, or -reject comments, commits, code, wiki edits, issues, and other contributions -that are not aligned to this Code of Conduct, or to ban temporarily or -permanently any contributor for other behaviors that they deem inappropriate, -threatening, offensive, or harmful. - -## Scope - -This Code of Conduct applies both within project spaces and in public spaces -when an individual is representing the project or its community. Examples of -representing a project or community include using an official project e-mail -address, posting via an official social media account, or acting as an appointed -representative at an online or offline event. Representation of a project may be -further defined and clarified by project maintainers. - -## Guidelines - -Not everyone is familiar with open-source communities or intuitively understands what is acceptable behavior. To assist, the following guidelines and examples provide a quick overview to help you avoid common pitfalls: - -1. Do **not** feel entitled to free software, support, or advice, especially if you are **not** a contributor, member, or business customer. Do **not** expect others to give you status reports as if they work for you or owe you something, even if you've made a donation. Please refrain from using GitHub Issues or other development tools for general discussions, technical support, or personal opinions. - -2. Slow down and **read** the documentation and use the troubleshooting checklists provided to identify the root cause of a problem **before** submitting _invalid_ bug reports, inciting public disputes, or insulting community members in public spaces. Such actions are disruptive and prevent maintainers and contributors from working on features and improvements that benefit users. - -3. Ignorant, reckless, or harsh communication is unacceptable, whether public or private. - -Many issues that new users become upset about in old issue comments have been resolved. If not, rest assured that we are working diligently to improve the software. - -## Enforcement - -We will enforce our community standards as necessary appropriate to the circumstances to protect everyone's well-being if there are instances of abusive, harassing, or otherwise unacceptable behavior. - -Initial warnings may be issued in the form of a snarky comment, especially if you seem to be exhibiting behaviour from Guideline #3 above. For serious cases, we will refer you to this Code of Conduct to prevent any misunderstandings. We also reserve the right to remove rants, personal attacks, spam, and unsolicited advertising from our community forums. - -In addition, we may use technical measures to temporarily or permanently restrict your access to our infrastructure. diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/LICENSE b/temp_pandas_ta/pandas_ta-0.4.71b0/LICENSE deleted file mode 100644 index 564dae29..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2019+ Kevin Johnson - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/PKG-INFO b/temp_pandas_ta/pandas_ta-0.4.71b0/PKG-INFO deleted file mode 100644 index cbba7fc7..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/PKG-INFO +++ /dev/null @@ -1,52 +0,0 @@ -Metadata-Version: 2.4 -Name: pandas-ta -Version: 0.4.71b0 -Summary: A Comprehensive Python 3 Technical Analysis Library with Pandas Dataframe Extension for Quantitative Researchers, Traders, and Investors. -Project-URL: Homepage, https://www.pandas-ta.dev -Project-URL: Documentation, https://www.pandas-ta.dev/api -Project-URL: Repository, https://github.com/twopirllc/pandas-ta -Author-email: Pandas TA Support -License-File: LICENSE -Keywords: ai,dataframe extension,finance,indicators,library,machine learning,pandas,ta,technical analysis,trading -Classifier: Development Status :: 4 - Beta -Classifier: Intended Audience :: Developers -Classifier: Intended Audience :: Financial and Insurance Industry -Classifier: Intended Audience :: Science/Research -Classifier: Natural Language :: English -Classifier: Operating System :: OS Independent -Classifier: Programming Language :: Python :: 3.12 -Classifier: Topic :: Office/Business :: Financial -Classifier: Topic :: Office/Business :: Financial :: Investment -Classifier: Topic :: Scientific/Engineering -Classifier: Topic :: Scientific/Engineering :: Information Analysis -Requires-Python: >=3.12 -Requires-Dist: numba==0.61.2 -Requires-Dist: numpy>=2.2.6 -Requires-Dist: pandas>=2.3.2 -Requires-Dist: tqdm>=4.67.1 -Description-Content-Type: text/markdown - -

- Pandas TA -

- -# Pandas TA -A popular and comprehensive Technical Analysis Library in Python 3 that leverages [_numba_](http://numba.pydata.org/) and [_numpy_](https://numpy.org/) for accuracy and performance, and [_pandas_](https://pandas.pydata.org/) for simplicity and bulk processing. The library contains more than 150 indicators and utilities as well as 60 Candlestick Patterns when [TA Lib](https://ta-lib.org) is installed. - -
- -![Price Chart](https://www.pandas-ta.dev/assets/images/SPY_Chart.png) -![Volume Chart](https://www.pandas-ta.dev/assets/images/SPY_VOL.png) - -
- -## Details - -* [Getting Started](https://www.pandas-ta.dev/getting-started/installation/) -* [Documentation](https://www.pandas-ta.dev/api/) -* [Support](https://www.pandas-ta.dev/support/) -* [License](https://www.pandas-ta.dev/legal/license/) - -
- -Copyright © 2025 - Pandas TA diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/README.md b/temp_pandas_ta/pandas_ta-0.4.71b0/README.md deleted file mode 100644 index 2b171752..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/README.md +++ /dev/null @@ -1,24 +0,0 @@ -

- Pandas TA -

- -# Pandas TA -A popular and comprehensive Technical Analysis Library in Python 3 that leverages [_numba_](http://numba.pydata.org/) and [_numpy_](https://numpy.org/) for accuracy and performance, and [_pandas_](https://pandas.pydata.org/) for simplicity and bulk processing. The library contains more than 150 indicators and utilities as well as 60 Candlestick Patterns when [TA Lib](https://ta-lib.org) is installed. - -
- -![Price Chart](https://www.pandas-ta.dev/assets/images/SPY_Chart.png) -![Volume Chart](https://www.pandas-ta.dev/assets/images/SPY_VOL.png) - -
- -## Details - -* [Getting Started](https://www.pandas-ta.dev/getting-started/installation/) -* [Documentation](https://www.pandas-ta.dev/api/) -* [Support](https://www.pandas-ta.dev/support/) -* [License](https://www.pandas-ta.dev/legal/license/) - -
- -Copyright © 2025 - Pandas TA diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/__init__.py b/temp_pandas_ta/pandas_ta-0.4.71b0/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/data/ADX_D.csv b/temp_pandas_ta/pandas_ta-0.4.71b0/data/ADX_D.csv deleted file mode 100644 index 6878f664..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/data/ADX_D.csv +++ /dev/null @@ -1,31 +0,0 @@ -,date,high,low,close -0,2020-6-19,11382,11150,11286 -1,2020-6-20,11351,11155,11325 -2,2020-6-21,11355,11225,11238 -3,2020-6-22,11675,11232,11593 -4,2020-6-23,11649,11488,11509 -5,2020-6-24,11553,11110,11233 -6,2020-6-25,11232,10842,11147 -7,2020-6-26,11185,10901,11045 -8,2020-6-27,11051,10791,10913 -9,2020-6-28,11163,10756,10970 -10,2020-6-29,11033,10814,10972 -11,2020-6-30,11004,10882,10903 -12,2020-7-1,11111,10887,11051 -13,2020-7-2,11077,10772,10888 -14,2020-7-3,10920,10821,10837 -15,2020-7-4,10960,10814,10884 -16,2020-7-5,10900,10700,10831 -17,2020-7-6,11102,10796,11065 -18,2020-7-7,11097,10952,10988 -19,2020-7-8,11208,10968,11138 -20,2020-7-9,11149,10906,10961 -21,2020-7-10,11062,10880,11043 -22,2020-7-11,11044,10910,10957 -23,2020-7-12,11061,10915,11036 -24,2020-7-13,11063,10908,11000 -25,2020-7-14,11040,10925,11010 -26,2020-7-15,11017,10955,10975 -27,2020-7-16,11003,10835,10934 -28,2020-7-17,10980,10875,10937 -29,2020-7-18,10990,10894,10905 \ No newline at end of file diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/data/ALT_D.csv b/temp_pandas_ta/pandas_ta-0.4.71b0/data/ALT_D.csv deleted file mode 100644 index 40efdc38..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/data/ALT_D.csv +++ /dev/null @@ -1,248 +0,0 @@ -Date,Open,High,Low,Close,VWAP,Volume -2020-10-26,343.7,344.9,336.7,339.8,341.19,8695206 -2020-10-27,338.3,339.75,331.05,334.05,333.74,9910942 -2020-10-28,335.75,339.85,334.4,335.65,337.29,8984606 -2020-10-29,333.65,340.0,331.15,337.45,335.96,7239961 -2020-10-30,339.25,345.0,338.45,340.7,341.18,11496123 -2020-11-02,341.75,341.75,333.7,334.8,336.22,4831133 -2020-11-03,335.5,339.45,332.65,335.65,336.36,4757798 -2020-11-04,338.0,351.55,337.5,342.95,345.59,15381900 -2020-11-05,347.95,349.0,344.05,345.4,346.41,5602436 -2020-11-06,346.15,349.0,343.4,345.75,344.92,5457793 -2020-11-09,350.0,352.8,347.0,351.95,350.46,7107285 -2020-11-10,350.75,350.75,341.15,342.3,343.63,9049620 -2020-11-11,344.5,347.75,341.5,346.75,344.53,7637879 -2020-11-12,348.0,350.7,344.3,345.55,346.81,5114424 -2020-11-13,344.5,346.25,342.7,344.15,344.04,4727888 -2020-11-14,347.15,347.55,343.1,345.45,345.82,749242 -2020-11-17,347.0,350.5,343.7,348.7,347.99,6653834 -2020-11-18,349.75,352.35,341.8,345.3,345.38,7407808 -2020-11-19,347.7,349.5,341.6,342.6,345.72,11056851 -2020-11-20,343.8,348.5,342.05,346.3,345.96,6181393 -2020-11-23,348.0,357.4,346.0,355.85,352.34,10333347 -2020-11-24,359.0,361.4,355.0,355.5,357.97,10092441 -2020-11-25,357.9,358.8,349.55,350.0,352.95,6812338 -2020-11-26,351.0,356.4,347.2,354.85,352.19,7366370 -2020-11-27,354.85,357.5,347.85,350.5,351.8,12402084 -2020-12-01,352.7,353.9,346.25,352.85,350.99,10693567 -2020-12-02,354.45,360.3,354.2,358.9,357.61,9434077 -2020-12-03,364.0,364.0,358.0,360.3,360.33,10697045 -2020-12-04,361.1,362.4,359.0,360.8,360.69,7427393 -2020-12-07,362.0,362.75,357.5,358.45,359.01,8392383 -2020-12-08,360.3,365.0,358.4,363.7,361.67,11813301 -2020-12-09,367.75,367.75,357.5,359.5,362.22,18137688 -2020-12-10,356.2,358.0,352.75,355.9,355.84,6897397 -2020-12-11,357.4,360.0,352.65,353.5,355.85,5863616 -2020-12-14,353.5,354.55,347.1,349.35,349.28,11501839 -2020-12-15,349.3,353.9,347.5,352.7,351.95,7231781 -2020-12-16,353.9,358.95,353.2,358.4,356.44,6666272 -2020-12-17,358.4,359.25,355.5,356.9,357.27,4165371 -2020-12-18,358.95,365.8,357.5,363.55,362.94,17398081 -2020-12-21,362.5,367.45,348.35,353.95,360.92,9665063 -2020-12-22,354.0,365.7,349.45,364.2,357.14,8186039 -2020-12-23,374.0,387.6,371.7,385.55,379.89,44874433 -2020-12-24,386.45,386.7,378.65,382.2,382.71,12240172 -2020-12-28,383.45,386.4,382.0,382.9,384.06,4725879 -2020-12-29,384.0,390.5,383.1,385.0,387.04,11459126 -2020-12-30,385.0,386.6,382.8,384.4,384.43,7188435 -2020-12-31,381.2,387.6,381.2,386.25,385.2,6394605 -2021-01-01,385.05,390.75,385.05,388.1,388.0,5042336 -2021-01-04,390.0,397.95,387.8,396.4,393.91,9755721 -2021-01-05,394.1,409.8,393.5,406.3,403.28,25156747 -2021-01-06,405.0,417.4,403.3,406.4,410.04,22486300 -2021-01-07,412.25,413.0,403.85,406.75,406.88,12344755 -2021-01-08,407.5,432.65,407.25,430.2,423.56,40993230 -2021-01-11,436.0,451.0,435.0,446.8,444.84,47334018 -2021-01-12,447.95,460.75,442.4,457.7,451.3,22134465 -2021-01-13,461.0,467.45,452.8,459.0,460.7,29190193 -2021-01-14,452.0,466.0,430.0,454.35,450.54,71551807 -2021-01-15,454.75,459.4,436.6,438.55,447.14,25307779 -2021-01-18,441.0,445.0,429.1,431.55,438.58,21510587 -2021-01-19,433.0,439.55,427.7,430.25,432.24,15677790 -2021-01-20,434.0,447.85,433.0,444.95,443.71,24419679 -2021-01-21,451.6,453.45,442.3,445.8,448.46,15911377 -2021-01-22,447.45,452.0,440.45,444.75,445.22,11398812 -2021-01-25,445.15,451.0,435.15,437.25,441.91,7380169 -2021-01-27,438.0,454.75,437.25,446.45,449.19,29590210 -2021-01-28,443.25,448.6,427.3,431.9,434.54,14812435 -2021-01-29,437.4,437.7,415.55,417.9,425.79,15632421 -2021-02-01,416.1,423.8,408.2,421.5,415.3,15081852 -2021-02-02,428.0,435.55,423.65,428.35,427.93,13310498 -2021-02-03,430.2,439.95,430.2,433.5,436.37,9897666 -2021-02-04,433.5,436.9,428.25,429.9,430.85,7193299 -2021-02-05,432.0,433.4,420.55,425.55,424.89,8679026 -2021-02-08,430.35,437.7,426.3,435.3,431.95,12516340 -2021-02-09,440.25,451.75,435.2,439.35,445.17,29474830 -2021-02-10,442.0,444.15,435.0,439.0,438.83,10607735 -2021-02-11,439.0,440.5,433.4,437.0,436.02,9237026 -2021-02-12,440.0,449.2,439.6,442.0,444.59,19280834 -2021-02-15,444.6,444.9,436.8,439.7,440.59,7844877 -2021-02-16,446.0,447.8,433.8,437.55,440.41,12453798 -2021-02-17,435.9,439.0,428.5,430.2,432.63,7390192 -2021-02-18,430.3,436.65,429.35,432.95,432.81,8385736 -2021-02-19,433.15,435.75,426.1,429.95,431.28,8478666 -2021-02-22,430.7,432.85,416.0,418.7,422.91,10666087 -2021-02-23,419.7,426.0,414.3,415.5,419.17,8992353 -2021-02-24,417.7,425.8,414.75,423.1,419.2,5060297 -2021-02-25,423.1,429.0,420.45,421.3,424.69,9110392 -2021-02-26,417.95,419.85,408.0,410.3,413.09,11731941 -2021-03-01,411.0,418.7,409.2,414.4,414.87,6421696 -2021-03-02,419.7,433.1,418.25,430.4,426.86,14875234 -2021-03-03,433.0,436.65,428.25,435.5,433.26,8782452 -2021-03-04,428.9,444.3,427.5,438.8,439.03,12963797 -2021-03-05,440.0,440.0,417.0,420.85,426.19,43931172 -2021-03-08,425.1,425.15,415.55,416.9,418.53,12354838 -2021-03-09,419.8,422.8,410.05,419.2,416.27,11905629 -2021-03-10,426.1,430.7,423.0,426.7,427.09,17291368 -2021-03-12,431.5,432.8,422.1,425.2,427.39,8960126 -2021-03-15,424.8,428.6,417.8,426.35,424.52,7517124 -2021-03-16,427.25,434.95,425.65,429.3,430.57,10673647 -2021-03-17,429.0,435.5,417.7,419.65,427.84,12134812 -2021-03-18,423.25,424.15,404.3,410.15,414.52,10082931 -2021-03-19,408.95,413.65,399.45,410.5,408.79,16875402 -2021-03-22,411.05,416.25,410.2,414.45,413.97,6622984 -2021-03-23,417.7,423.4,412.7,415.5,416.98,11575194 -2021-03-24,411.35,415.45,409.2,411.0,411.84,5140347 -2021-03-25,410.7,411.7,397.75,399.65,402.63,12737129 -2021-03-26,404.8,407.7,400.65,403.9,403.72,9033369 -2021-03-30,405.0,420.45,405.0,418.1,413.6,13171390 -2021-03-31,419.8,419.8,413.35,414.15,415.37,7445134 -2021-04-01,418.85,422.85,414.35,416.4,417.72,7596943 -2021-04-05,416.45,427.9,416.2,425.45,423.14,21216395 -2021-04-06,427.95,428.9,422.35,427.15,425.99,8320520 -2021-04-07,425.0,439.0,423.4,438.0,431.67,13867650 -2021-04-08,441.95,445.95,440.0,442.1,442.94,12916614 -2021-04-09,442.9,451.35,440.0,450.1,446.5,11699385 -2021-04-12,450.0,450.1,429.4,432.6,435.75,15086267 -2021-04-13,432.0,437.55,412.6,418.95,420.89,20420320 -2021-04-15,418.9,434.45,415.0,430.7,428.6,26758891 -2021-04-16,441.7,473.65,436.0,469.2,464.06,109361636 -2021-04-19,463.0,477.95,461.1,472.75,470.56,43809855 -2021-04-20,476.0,477.55,467.8,470.1,471.11,17730691 -2021-04-22,471.6,494.5,471.6,486.65,486.53,42620929 -2021-04-23,483.55,487.35,474.35,475.7,481.46,13596003 -2021-04-26,479.4,483.85,477.0,480.3,479.77,9314644 -2021-04-27,481.4,487.0,481.0,485.05,484.07,7209467 -2021-04-28,485.85,493.2,481.25,489.3,487.55,9615534 -2021-04-29,492.7,492.8,485.7,489.85,489.45,7641133 -2021-04-30,491.5,511.8,489.3,492.75,501.42,29115571 -2021-05-03,487.95,496.0,483.25,487.35,488.82,8599731 -2021-05-04,487.3,488.3,477.8,481.95,482.16,8102429 -2021-05-05,484.8,496.0,483.3,490.6,490.81,11856591 -2021-05-06,493.7,514.8,487.25,512.3,506.32,24413544 -2021-05-07,514.0,516.55,507.5,515.25,512.83,14666581 -2021-05-10,517.6,528.5,513.25,525.95,521.17,12544472 -2021-05-11,517.95,523.3,514.05,518.4,517.71,7649499 -2021-05-12,519.95,522.55,504.85,507.6,512.01,7871107 -2021-05-14,507.5,508.4,492.75,498.45,497.83,6799879 -2021-05-17,498.45,503.7,495.0,499.8,500.11,5752650 -2021-05-18,502.0,514.8,500.9,508.05,509.98,9380746 -2021-05-19,508.3,517.8,505.15,511.65,512.88,7490396 -2021-05-20,516.0,517.0,503.6,508.25,510.08,6292304 -2021-05-21,510.0,515.9,509.15,512.7,512.84,5197503 -2021-05-24,511.9,518.5,509.65,514.9,515.62,7436812 -2021-05-25,517.4,524.85,515.7,517.55,520.01,7954564 -2021-05-26,514.9,530.45,514.75,527.25,525.5,8823190 -2021-05-27,527.25,545.0,525.05,540.9,539.19,29411126 -2021-05-28,539.0,540.3,532.65,538.7,536.6,5878626 -2021-05-31,538.7,540.55,531.05,539.05,537.4,5386205 -2021-06-01,541.9,547.0,539.65,542.8,543.11,5965044 -2021-06-02,541.95,545.0,533.0,543.0,539.1,4713568 -2021-06-03,545.7,549.9,538.3,539.05,541.49,5637991 -2021-06-04,543.5,545.5,540.45,541.2,542.62,4771716 -2021-06-07,544.7,551.2,542.7,548.25,548.14,4348433 -2021-06-08,550.0,555.5,549.15,550.6,552.19,5429734 -2021-06-09,553.0,553.25,542.2,544.2,547.74,6206899 -2021-06-10,545.55,555.5,545.55,554.25,552.94,5720744 -2021-06-11,555.0,558.95,551.5,554.3,555.3,5612359 -2021-06-14,553.9,562.8,553.0,561.6,559.27,5952159 -2021-06-15,561.5,564.0,557.0,557.9,560.54,3837245 -2021-06-16,559.9,562.55,553.5,555.25,557.94,5497269 -2021-06-17,552.5,561.5,549.55,558.7,555.66,4399348 -2021-06-18,560.0,561.95,546.05,549.8,551.95,10007116 -2021-06-21,544.75,544.75,535.2,542.15,540.03,5390821 -2021-06-22,545.25,559.95,542.3,556.55,553.47,5752921 -2021-06-23,560.0,560.85,538.4,540.15,545.31,11242702 -2021-06-24,541.9,550.55,539.2,549.05,546.31,8668680 -2021-06-25,549.85,551.0,540.5,547.5,546.25,5039822 -2021-06-28,549.75,550.8,544.25,547.4,547.78,3259830 -2021-06-29,547.8,553.75,541.0,542.6,546.44,7927880 -2021-06-30,544.85,548.0,542.0,545.65,545.7,4293322 -2021-07-01,545.0,545.9,538.0,539.35,540.69,4329374 -2021-07-02,540.1,542.3,533.6,538.6,537.3,4157307 -2021-07-05,542.9,542.9,535.55,536.35,537.49,3439169 -2021-07-06,536.55,538.3,531.85,532.6,533.81,4193441 -2021-07-07,534.05,536.4,525.1,532.15,531.49,5377687 -2021-07-08,533.9,536.95,528.0,531.0,532.33,4565510 -2021-07-09,527.4,530.95,523.25,525.8,526.28,5724608 -2021-07-12,530.75,532.15,523.2,525.85,528.04,3865556 -2021-07-13,528.0,529.5,522.6,524.85,525.64,4172358 -2021-07-14,526.25,563.3,525.6,561.7,551.0,29348083 -2021-07-15,561.0,579.65,559.0,575.9,572.71,31066201 -2021-07-16,580.0,589.25,568.3,577.75,577.56,36907827 -2021-07-19,572.55,584.0,570.0,573.8,577.28,10857851 -2021-07-20,575.7,578.15,561.55,568.1,567.43,10523527 -2021-07-22,577.1,585.0,571.0,584.2,579.61,12043385 -2021-07-23,586.5,601.8,583.7,599.15,594.86,14057455 -2021-07-26,600.1,600.5,588.25,590.45,594.0,6099903 -2021-07-27,588.9,594.65,584.15,591.45,588.79,3983137 -2021-07-28,590.95,593.35,583.0,591.95,587.86,4573930 -2021-07-29,593.6,598.0,587.9,590.45,593.23,5834470 -2021-07-30,588.85,593.0,585.0,587.15,589.07,3178206 -2021-08-02,588.2,595.4,582.25,592.25,588.64,4623898 -2021-08-03,604.0,604.0,594.15,599.4,597.75,5165607 -2021-08-04,603.5,604.0,594.3,596.8,597.91,4509356 -2021-08-05,597.5,614.5,597.5,600.9,606.72,11294364 -2021-08-06,603.75,606.4,596.3,598.0,601.42,5270200 -2021-08-09,600.0,606.0,595.5,596.8,599.75,4646751 -2021-08-10,598.4,608.95,593.1,603.85,603.0,7027782 -2021-08-11,601.9,606.5,598.45,601.25,601.72,4282513 -2021-08-12,602.0,608.9,600.65,605.85,605.08,3952508 -2021-08-13,606.0,620.45,606.0,615.5,614.1,8364684 -2021-08-16,616.1,620.9,610.5,614.05,615.39,3572426 -2021-08-17,613.75,637.05,611.2,634.9,626.66,11822772 -2021-08-18,635.75,639.2,624.6,629.4,631.97,6923577 -2021-08-20,622.5,631.95,618.0,620.05,623.36,6170693 -2021-08-23,626.0,636.95,623.5,628.85,630.46,7036375 -2021-08-24,636.0,636.0,624.1,633.55,630.64,4483718 -2021-08-25,635.0,642.8,629.55,631.65,636.31,6407718 -2021-08-26,632.2,638.5,626.0,628.95,631.86,4208351 -2021-08-27,629.5,636.0,625.3,634.95,632.11,4371554 -2021-08-30,635.95,639.5,630.55,632.45,633.87,4371855 -2021-08-31,634.6,642.55,628.9,640.95,637.51,7795908 -2021-09-01,643.8,647.35,635.25,642.05,641.38,4725222 -2021-09-02,645.0,657.0,640.75,651.45,648.56,4538778 -2021-09-03,653.0,656.7,649.5,655.1,653.68,3774970 -2021-09-06,656.65,688.7,656.65,686.45,675.53,12338416 -2021-09-07,690.0,690.0,672.75,674.25,679.16,6406109 -2021-09-08,675.4,675.4,660.0,662.2,664.96,6716231 -2021-09-09,660.9,664.55,654.0,662.35,660.1,5805730 -2021-09-13,662.35,671.85,657.85,670.75,667.33,5588789 -2021-09-14,671.0,675.7,670.0,673.45,673.41,3661338 -2021-09-15,674.0,680.55,670.0,674.05,675.03,4145416 -2021-09-16,679.75,680.75,665.0,667.85,670.77,4657846 -2021-09-17,671.4,674.4,662.75,665.25,668.16,5407781 -2021-09-20,657.75,670.5,653.4,662.5,664.4,4546430 -2021-09-21,660.5,669.0,657.1,667.6,663.15,3683551 -2021-09-22,669.0,674.5,663.0,668.15,668.59,4791652 -2021-09-23,672.9,677.0,671.4,674.3,674.63,3231293 -2021-09-24,680.5,699.15,675.0,676.5,687.0,12126588 -2021-09-27,678.05,678.35,651.0,653.9,658.22,8399082 -2021-09-28,653.9,653.9,635.25,639.6,642.5,8112462 -2021-09-29,629.95,646.5,627.35,640.75,636.66,8839566 -2021-09-30,638.75,646.75,632.55,634.1,638.65,6013959 -2021-10-01,634.8,639.75,630.2,636.25,635.17,4208854 -2021-10-04,639.9,643.6,635.95,641.05,638.84,5247122 -2021-10-05,636.45,649.5,634.05,646.85,641.56,5456074 -2021-10-06,650.4,650.45,634.4,635.75,640.73,4836599 -2021-10-07,639.0,648.55,636.9,642.95,643.86,3724343 -2021-10-08,646.15,667.55,645.0,661.15,659.07,11045983 -2021-10-11,648.95,666.3,635.0,652.8,651.74,10211466 -2021-10-12,652.0,662.4,642.55,659.1,653.44,9340216 -2021-10-13,665.0,674.7,656.0,672.6,664.89,9462941 -2021-10-14,697.0,739.85,695.0,708.25,717.07,59188803 -2021-10-18,719.0,720.8,702.4,709.75,711.39,10599446 -2021-10-19,717.1,729.95,708.0,711.55,721.38,10932574 -2021-10-20,713.6,722.75,695.75,701.95,705.96,8054391 -2021-10-21,708.95,709.0,681.7,696.3,694.67,7958456 -2021-10-22,701.75,705.5,678.25,682.4,689.25,5379151 diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/data/TEST_D.csv b/temp_pandas_ta/pandas_ta-0.4.71b0/data/TEST_D.csv deleted file mode 100644 index 47c918da..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/data/TEST_D.csv +++ /dev/null @@ -1,7193 +0,0 @@ -date,open,high,low,close,volume,dividends,stock splits -1993-01-29,25.818120120768864,25.818120120768864,25.68967176195907,25.79977035522461,1003200,0.0,0 -1993-02-01,25.818124633724405,25.983272552490234,25.818124633724405,25.983272552490234,480500,0.0,0 -1993-02-02,25.9649157641722,26.05666458312687,25.909866472799397,26.038314819335938,201300,0.0,0 -1993-02-03,26.075019233895148,26.331915975115788,26.056669466665102,26.313566207885742,529400,0.0,0 -1993-02-04,26.40530479616589,26.478703836599987,26.111708634429508,26.423654556274414,531500,0.0,0 -1993-02-05,26.405315399169922,26.460364701600437,26.25851725935522,26.405315399169922,492100,0.0,0 -1993-02-08,26.405315399169922,26.497064236554113,26.368615864216245,26.405315399169922,596100,0.0,0 -1993-02-09,26.31354862530804,26.31354862530804,26.166750585557367,26.221799850463867,122100,0.0,0 -1993-02-10,26.221812968650617,26.27686226109705,26.148413912055375,26.258512496948242,379600,0.0,0 -1993-02-11,26.295215963488328,26.497063399355998,26.295215963488328,26.386964797973633,19500,0.0,0 -1993-02-12,26.350267545276367,26.350267545276367,26.18511962890625,26.18511962890625,42500,0.0,0 -1993-02-16,26.1117211073787,26.1117211073787,25.487828965670424,25.52452850341797,374800,0.0,0 -1993-02-17,25.524527670496656,25.561227207046617,25.414429060846782,25.50617790222168,210900,0.0,0 -1993-02-18,25.79977721289133,25.79977721289133,25.139185477710612,25.487831115722656,378100,0.0,0 -1993-02-19,25.487823851652433,25.579572677612305,25.451124321268484,25.579572677612305,34900,0.0,0 -1993-02-22,25.652968291472845,25.70801757965197,25.57956924056734,25.67131805419922,513600,0.0,0 -1993-02-23,25.74472009197666,25.763069856831954,25.524522913713138,25.652971267700195,373700,0.0,0 -1993-02-24,25.671326483710335,25.983272552490234,25.671326483710335,25.983272552490234,26300,0.0,0 -1993-02-25,25.9649157641722,26.05666458312687,25.909866472799397,26.038314819335938,44500,0.0,0 -1993-02-26,26.09337723884341,26.09337723884341,25.94657905465864,26.075027465820312,66200,0.0,0 -1993-03-01,26.166767238813467,26.166767238813467,25.96491980569499,26.001619338989258,66500,0.0,0 -1993-03-02,26.019969460032414,26.386964797973633,25.983269926238293,26.386964797973633,182400,0.0,0 -1993-03-03,26.4236636175013,26.515412449506513,26.386964084699216,26.49706268310547,280100,0.0,0 -1993-03-04,26.533747808514864,26.533747808514864,26.350250244140625,26.350250244140625,89500,0.0,0 -1993-03-05,26.38694636382204,26.497044888288613,26.258498085277708,26.27684783935547,40000,0.0,0 -1993-03-08,26.331906846312226,26.864049911499023,26.331906846312226,26.864049911499023,50800,0.0,0 -1993-03-09,26.809005971311134,26.82735573583633,26.717257148685153,26.772306442260742,169300,0.0,0 -1993-03-10,26.772301333384377,26.827350616455078,26.662202767242974,26.827350616455078,194400,0.0,0 -1993-03-11,26.845704660821188,26.919103716626577,26.717256313161755,26.753955841064453,70900,0.0,0 -1993-03-12,26.533759468062755,26.552109232563488,26.313562294053934,26.478710174560547,643600,0.0,0 -1993-03-15,26.46037002826559,26.607168197631836,26.46037002826559,26.607168197631836,310800,0.0,0 -1993-03-16,26.607168197631836,26.680567282314957,26.607168197631836,26.607168197631836,30800,0.0,0 -1993-03-17,26.570455398930186,26.570455398930186,26.405307540787664,26.442007064819336,21800,0.0,0 -1993-03-18,26.552118884119494,26.71726682465652,26.552118884119494,26.607168197631836,59300,0.0,0 -1993-03-19,26.714374457524105,26.714374457524105,26.566883087158203,26.566883087158203,66900,0.213,0 -1993-03-22,26.308793997648124,26.474721920548497,26.290357561770303,26.41941261291504,183400,0.0,0 -1993-03-23,26.493148801054463,26.511585230282755,26.43783951336959,26.474712371826172,55200,0.0,0 -1993-03-24,26.43783951336959,26.585330947195917,26.30878450877155,26.474712371826172,37200,0.0,0 -1993-03-25,26.493158308774955,26.695959103066205,26.456285437085636,26.640649795532227,110100,0.0,0 -1993-03-26,26.622196141762625,26.64063256568351,26.474704750395517,26.493141174316406,101500,0.0,0 -1993-03-29,26.51159665325162,26.732833899314915,26.51159665325162,26.603778839111328,87100,0.0,0 -1993-03-30,26.640651692335737,26.67752456665039,26.603778818021087,26.67752456665039,56000,0.0,0 -1993-03-31,26.75125309507547,26.824998796233498,26.65907096862793,26.65907096862793,111600,0.0,0 -1993-04-01,26.695938036228366,26.695938036228366,26.51157382327099,26.566883087158203,129500,0.0,0 -1993-04-02,26.345665026691094,26.345665026691094,26.013809204101562,26.013809204101562,59400,0.0,0 -1993-04-05,26.21660231467867,26.21660231467867,26.06911088112211,26.14285659790039,172200,0.0,0 -1993-04-06,26.198167791461,26.198167791461,25.995367055566508,26.06911277770996,129700,0.0,0 -1993-04-07,26.10598374219576,26.161293029785156,26.050674454606362,26.161293029785156,28000,0.0,0 -1993-04-08,26.271919272025034,26.271919272025034,26.013809187949,26.124427795410156,180800,0.0,0 -1993-04-12,26.382522630791076,26.511577598237295,26.3456497829493,26.493141174316406,348500,0.0,0 -1993-04-13,26.474702872170344,26.64063067568673,26.45626644955741,26.54844856262207,146100,0.0,0 -1993-04-14,26.566898345947266,26.58533477783203,26.493152618408203,26.51158905029297,119600,0.0,0 -1993-04-15,26.493152618408203,26.566898345947266,26.400970458984375,26.51158905029297,148600,0.0,0 -1993-04-16,26.530025482177734,26.566898345947266,26.474716186523438,26.51158905029297,47900,0.0,0 -1993-04-19,26.51158905029297,26.58533477783203,26.38253402709961,26.400970458984375,157000,0.0,0 -1993-04-20,26.36410907946135,26.400981959292764,26.105998920641447,26.271926879882812,279500,0.0,0 -1993-04-21,26.32721899332625,26.32721899332625,26.17972757039445,26.25347328186035,67900,0.0,0 -1993-04-22,26.142858488970088,26.36409565530834,25.921621322631836,25.921621322631836,97700,0.0,0 -1993-04-23,25.866310111454556,25.940055828094483,25.774127965654646,25.81100082397461,106000,0.0,0 -1993-04-26,25.82944107055664,25.92162322998047,25.53445816040039,25.608203887939453,62600,0.0,0 -1993-04-27,25.571338561185744,25.88475799560547,25.571338561185744,25.88475799560547,156800,0.0,0 -1993-04-28,25.84787941115146,25.903188710890014,25.792570111412903,25.829442977905273,85900,0.0,0 -1993-04-29,25.884763689183476,25.940073013305664,25.73727215819098,25.940073013305664,85000,0.0,0 -1993-04-30,26.032232264240555,26.124414389822142,25.9769229888916,25.9769229888916,88500,0.0,0 -1993-05-03,26.0138015935384,26.14285659790039,25.903183018370978,26.14285659790039,80500,0.0,0 -1993-05-04,26.198165898916173,26.327220903344333,26.161293040508127,26.23503875732422,149100,0.0,0 -1993-05-05,26.235034964012783,26.40096280285756,26.235034964012783,26.308780670166016,109000,0.0,0 -1993-05-06,26.27191352441844,26.29034995496189,26.198167802244633,26.216604232788086,54700,0.0,0 -1993-05-07,26.23503874657102,26.23503874657102,26.124420171392227,26.161293029785156,68000,0.0,0 -1993-05-10,26.198167802244633,26.364095677135698,26.198167802244633,26.216604232788086,113900,0.0,0 -1993-05-11,26.216600442133032,26.327219009399414,26.14285473062211,26.327219009399414,42600,0.0,0 -1993-05-12,26.216623258122556,26.308805477736207,26.216623258122556,26.290369033813477,31000,0.0,0 -1993-05-13,26.179723665171096,26.179723665171096,25.958486563775285,25.9769229888916,129100,0.0,0 -1993-05-14,25.976930616931483,26.05067633905194,25.94005775587125,25.958494186401367,63500,0.0,0 -1993-05-17,26.03223419729396,26.050670623779297,25.921615638381944,26.050670623779297,34000,0.0,0 -1993-05-18,26.06912232525963,26.08755876254765,25.940067264243496,26.032249450683594,105200,0.0,0 -1993-05-19,26.032226869581805,26.566883087158203,25.866299077920164,26.566883087158203,50200,0.0,0 -1993-05-20,26.56690405215359,26.640649795532227,26.511594744619615,26.640649795532227,98200,0.0,0 -1993-05-21,26.659080505371094,26.695953369140625,26.38253402709961,26.400970458984375,221400,0.0,0 -1993-05-24,26.456279754638672,26.603771209716797,26.456279754638672,26.51158905029297,30500,0.0,0 -1993-05-25,26.622192351045417,26.622192351045417,26.566883087158203,26.566883087158203,191800,0.0,0 -1993-05-26,26.64063840634697,26.917184825790017,26.622201978384098,26.89874839782715,102400,0.0,0 -1993-05-27,26.935638482829727,26.935638482829727,26.769710525029957,26.806583404541016,53800,0.0,0 -1993-05-28,26.788143189594344,26.788143189594344,26.548469506549107,26.67752456665039,79100,0.0,0 -1993-06-01,26.76970099227874,27.027811056942586,26.73282812589819,26.93562889099121,28300,0.0,0 -1993-06-02,26.86187554190141,26.990930537641496,26.75125697412419,26.89874839782715,20300,0.0,0 -1993-06-03,26.843456284052078,26.843456284052078,26.751274085274428,26.806583404541016,21600,0.0,0 -1993-06-04,26.732837684899877,26.732837684899877,26.60378260642105,26.714401245117188,32000,0.0,0 -1993-06-07,26.769695260848366,26.769695260848366,26.622203826904297,26.622203826904297,121400,0.0,0 -1993-06-08,26.54845231733982,26.54845231733982,26.382524490356445,26.382524490356445,104500,0.0,0 -1993-06-09,26.474712371826172,26.585330947195917,26.43783951336959,26.474712371826172,43300,0.0,0 -1993-06-10,26.45626832647463,26.511577598237295,26.400959054711965,26.493141174316406,17900,0.0,0 -1993-06-11,26.585342401939386,26.64065171345521,26.49316021607968,26.603778839111328,647400,0.0,0 -1993-06-14,26.640628772341152,26.65906519363689,26.566883087158203,26.566883087158203,64200,0.0,0 -1993-06-15,26.603771209716797,26.622207641601562,26.51158905029297,26.51158905029297,142400,0.0,0 -1993-06-16,26.51157382327099,26.566883087158203,26.437828138088037,26.566883087158203,330900,0.0,0 -1993-06-17,26.622198118048917,26.65907096862793,26.566888842180393,26.65907096862793,37400,0.0,0 -1993-06-18,26.643773123119654,26.643773123119654,26.43953514099121,26.43953514099121,58500,0.318,0 -1993-06-21,26.51380444040813,26.51380444040813,26.45810317057534,26.495237350463867,29300,0.0,0 -1993-06-22,26.532370571328812,26.532370571328812,26.476669303509368,26.513803482055664,137500,0.0,0 -1993-06-23,26.513798722445753,26.513798722445753,26.27242660522461,26.27242660522461,227600,0.0,0 -1993-06-24,26.346707204395756,26.625213623046875,26.346707204395756,26.625213623046875,243700,0.0,0 -1993-06-25,26.60665512084961,26.680923523140883,26.58808802027679,26.60665512084961,44800,0.0,0 -1993-06-28,26.73662647697496,26.903730392456055,26.699492273534716,26.903730392456055,439900,0.0,0 -1993-06-29,26.866583863839033,26.866583863839033,26.736614211422395,26.77374839782715,207500,0.0,0 -1993-06-30,26.8108825842319,26.866583863839033,26.736614211422395,26.77374839782715,437600,0.0,0 -1993-07-01,26.81088261610941,26.81088261610941,26.662345870313793,26.699480056762695,605700,0.0,0 -1993-07-02,26.606640831740584,26.62520792234194,26.458104106929753,26.550939559936523,285400,0.0,0 -1993-07-06,26.513798722445753,26.588067066206108,26.235292433344434,26.27242660522461,246400,0.0,0 -1993-07-07,26.25386521848177,26.383834848276237,26.25386521848177,26.34670066833496,343700,0.0,0 -1993-07-08,26.365282783109553,26.699490593036295,26.32814858200658,26.643789291381836,248200,0.0,0 -1993-07-09,26.64378352427002,26.71805191040039,26.588082234672243,26.71805191040039,378200,0.0,0 -1993-07-12,26.680912963538244,26.71804714998715,26.643778777089338,26.699480056762695,373700,0.0,0 -1993-07-13,26.71803665293864,26.79230499665772,26.532365793640942,26.6809024810791,389600,0.0,0 -1993-07-14,26.699480025017643,26.848016770636654,26.680912931815264,26.77374839782715,617300,0.0,0 -1993-07-15,26.75517943841833,26.75517943841833,26.606642703159935,26.662343978881836,443800,0.0,0 -1993-07-16,26.68091683947174,26.699483935393435,26.550947168019896,26.58808135986328,216400,0.0,0 -1993-07-19,26.588068964096486,26.588068964096486,26.495233527769333,26.569501876831055,188200,0.0,0 -1993-07-20,26.55095378862441,26.643789291381836,26.420984084764008,26.643789291381836,68500,0.0,0 -1993-07-21,26.606646528470133,26.625213623046875,26.53237815016317,26.625213623046875,142700,0.0,0 -1993-07-22,26.588071855266442,26.625206033835248,26.43953514099121,26.43953514099121,632400,0.0,0 -1993-07-23,26.495233527769333,26.569501876831055,26.476666440503905,26.569501876831055,286200,0.0,0 -1993-07-26,26.64378352427002,26.77375319999817,26.64378352427002,26.71805191040039,121300,0.0,0 -1993-07-27,26.7366142432116,26.755181336436053,26.606644590640435,26.699480056762695,92800,0.0,0 -1993-07-28,26.643789291381836,26.699490593036295,26.606655090278867,26.643789291381836,30800,0.0,0 -1993-07-29,26.699490471177025,26.866594375377716,26.662356270243535,26.792325973510742,331000,0.0,0 -1993-07-30,26.792326095793722,26.792326095793722,26.606655090278867,26.643789291381836,75300,0.0,0 -1993-08-02,26.680917717335205,26.81088739306335,26.680917717335205,26.71805191040039,41300,0.0,0 -1993-08-03,26.773742683728535,26.84801104068756,26.64377305905024,26.736608505249023,81600,0.0,0 -1993-08-04,26.736608505249023,26.79230977296829,26.662340148289996,26.736608505249023,434000,0.0,0 -1993-08-05,26.73660373886841,26.73660373886841,26.64376830921956,26.6809024810791,36800,0.0,0 -1993-08-06,26.755186103465576,26.77375319999817,26.680917717335205,26.71805191040039,402300,0.0,0 -1993-08-09,26.792322108724154,26.940858891031706,26.736620815358823,26.86659049987793,828200,0.0,0 -1993-08-10,26.84801483154297,26.86658192340434,26.810880647820223,26.84801483154297,604900,0.0,0 -1993-08-11,26.829447739681598,26.922283198988453,26.829447739681598,26.84801483154297,542200,0.0,0 -1993-08-12,26.92228514344616,26.92228514344616,26.680912931815264,26.77374839782715,303700,0.0,0 -1993-08-13,26.792311663112482,26.829445844211737,26.792311663112482,26.81087875366211,103500,0.0,0 -1993-08-16,26.829459089221377,27.033697186094344,26.829459089221377,26.959428787231445,241800,0.0,0 -1993-08-17,26.940862565312223,27.052265167236328,26.940862565312223,27.052265167236328,369300,0.0,0 -1993-08-18,27.145089127993014,27.25649168255386,27.126522035566207,27.200790405273438,414300,0.0,0 -1993-08-19,27.219357497700248,27.219357497700248,27.163656220419824,27.200790405273438,28500,0.0,0 -1993-08-20,27.145086267635246,27.2193546295166,27.12651917716491,27.2193546295166,80700,0.0,0 -1993-08-23,27.1079606677438,27.18222905313488,27.1079606677438,27.16366195678711,15600,0.0,0 -1993-08-24,27.16366178139873,27.460735321044922,27.16366178139873,27.460735321044922,273400,0.0,0 -1993-08-25,27.46072292070131,27.590692535606593,27.42358874501409,27.479290008544922,242300,0.0,0 -1993-08-26,27.49786376953125,27.646400508326828,27.386461215434565,27.49786376953125,120000,0.0,0 -1993-08-27,27.42358874501409,27.479290008544922,27.42358874501409,27.479290008544922,25700,0.0,0 -1993-08-30,27.497855180044677,27.627824785892287,27.497855180044677,27.59069061279297,183500,0.0,0 -1993-08-31,27.572142530607696,27.66497802734375,27.535008331913275,27.66497802734375,66500,0.0,0 -1993-09-01,27.572146365719455,27.68354897729812,27.572146365719455,27.62784767150879,136500,0.0,0 -1993-09-02,27.646396663971874,27.683530843507096,27.5164270355986,27.53499412536621,472400,0.0,0 -1993-09-03,27.516429888270295,27.590698255040255,27.479295704885313,27.553564071655273,630500,0.0,0 -1993-09-07,27.553571817509354,27.59070601133349,27.330766654564535,27.367900848388672,196400,0.0,0 -1993-09-08,27.367907605258846,27.367907605258846,27.08940108281727,27.27507209777832,269900,0.0,0 -1993-09-09,27.16365901413171,27.349329957495563,27.16365901413171,27.33076286315918,239200,0.0,0 -1993-09-10,27.405028279622396,27.59069920292607,27.36789409496166,27.572132110595703,106500,0.0,0 -1993-09-13,27.664958958991605,27.664958958991605,27.59069061279297,27.59069061279297,66900,0.0,0 -1993-09-14,27.516424184232147,27.516424184232147,27.386454569326865,27.479290008544922,184500,0.0,0 -1993-09-15,27.367893154730375,27.572131163347766,27.275057696267925,27.553564071655273,101000,0.0,0 -1993-09-16,27.516433751954118,27.53500084625368,27.423598280456297,27.44216537475586,54300,0.0,0 -1993-09-17,27.42632927055411,27.445012056160753,27.35159812812753,27.38896369934082,200900,0.286,0 -1993-09-20,27.42632334629148,27.48237169100461,27.164764404296875,27.164764404296875,57800,0.0,0 -1993-09-21,27.202129566727052,27.239495129318712,26.791108378218816,27.07135009765625,318200,0.0,0 -1993-09-22,27.164752811377053,27.33289777375834,27.127387264181213,27.2955322265625,439700,0.0,0 -1993-09-23,27.3702723903669,27.463686289310132,27.332906830789607,27.445003509521484,88500,0.0,0 -1993-09-24,27.407644881160593,27.426327665673995,27.332913743106985,27.37027931213379,53500,0.0,0 -1993-09-27,27.57578888557635,27.66920280456543,27.57578888557635,27.66920280456543,274600,0.0,0 -1993-09-28,27.68789606520223,27.68789606520223,27.594482110866192,27.6131649017334,158300,0.0,0 -1993-09-29,27.613141582356935,27.687872682715142,27.482362156730076,27.51972770690918,221000,0.0,0 -1993-09-30,27.51973432813372,27.575782666887555,27.407637650626047,27.463685989379883,99300,0.0,0 -1993-10-01,27.42633161499602,27.631842274236455,27.38896604058867,27.5944766998291,22700,0.0,0 -1993-10-04,27.6318359375,27.6318359375,27.55710480582319,27.6318359375,1038500,0.0,0 -1993-10-05,27.68789063584748,27.68789063584748,27.501062763810722,27.5944766998291,436500,0.0,0 -1993-10-06,27.613142605396465,27.725239260086845,27.575777053833004,27.575777053833008,209200,0.0,0 -1993-10-07,27.61314379391463,27.61314379391463,27.482364357813548,27.501047134399414,59400,0.0,0 -1993-10-08,27.575791016039076,27.594473801280294,27.332914807903233,27.53842544555664,54400,0.0,0 -1993-10-11,27.5944766998291,27.65052506144013,27.5944766998291,27.5944766998291,467100,0.0,0 -1993-10-12,27.6318359375,27.6505187204192,27.613153154580797,27.6318359375,26200,0.0,0 -1993-10-13,27.6505187204192,27.6505187204192,27.594470371661593,27.6318359375,139100,0.0,0 -1993-10-14,27.743921254441958,27.986797332763672,27.669190153419894,27.986797332763672,108100,0.0,0 -1993-10-15,28.11759917701225,28.1923303376156,28.042868016408892,28.136281967163086,1502500,0.0,0 -1993-10-18,28.11758130907854,28.11758130907854,28.02416741768625,28.061532974243164,722400,0.0,0 -1993-10-19,28.024184152154135,28.080232520458445,27.85603904724121,27.85603904724121,880100,0.0,0 -1993-10-20,27.949427528662405,27.949427528662405,27.837330894189158,27.89337921142578,230400,0.0,0 -1993-10-21,27.912087415545518,27.912087415545518,27.81867346837167,27.85603904724121,56200,0.0,0 -1993-10-22,27.89338953604274,28.005486212008083,27.725244522094727,27.725244522094727,390700,0.0,0 -1993-10-25,27.743929912967065,27.837343818397933,27.669198788622374,27.799978256225586,114500,0.0,0 -1993-10-26,27.781286239624023,27.79996901449936,27.687872365247344,27.781286239624023,186200,0.0,0 -1993-10-27,27.743929912967065,27.81866103731176,27.743929912967065,27.799978256225586,118400,0.0,0 -1993-10-28,27.837346212477428,28.08022238748562,27.837346212477428,28.005491256713867,129600,0.0,0 -1993-10-29,27.98680847402093,28.024174039406805,27.96812569132799,28.005491256713867,80700,0.0,0 -1993-11-01,27.968114986153182,28.09889441494615,27.968114986153182,28.080211639404297,36400,0.0,0 -1993-11-02,28.042850195964707,28.09889853080008,27.89338796973705,28.061532974243164,262100,0.0,0 -1993-11-03,28.04285593476556,28.04285593476556,27.575786382221164,27.706565856933594,479100,0.0,0 -1993-11-04,27.706559176662786,27.706559176662786,27.388951957510212,27.407634735107422,130400,0.0,0 -1993-11-05,27.332914807903233,27.53842544555664,27.22081809645592,27.53842544555664,363200,0.0,0 -1993-11-08,27.557094278051277,27.650508156959926,27.48236317492436,27.575777053833008,367600,0.0,0 -1993-11-09,27.762621784662183,27.78130457186586,27.575793912625425,27.5944766998291,246900,0.0,0 -1993-11-10,27.59446766427768,27.799978256225586,27.51973653993299,27.799978256225586,46500,0.0,0 -1993-11-11,27.799975639404956,27.874706756715184,27.706561742767168,27.725244522094727,88900,0.0,0 -1993-11-12,27.781307889502134,27.949452994415058,27.762625100067364,27.85603904724121,108200,0.0,0 -1993-11-15,27.912078163607806,27.912078163607806,27.762615897671488,27.83734703063965,243300,0.0,0 -1993-11-16,27.89340467586785,27.986818623208332,27.78130793905927,27.968135833740234,492600,0.0,0 -1993-11-17,27.98679808852975,27.98679808852975,27.74392200364932,27.818653106689453,39600,0.0,0 -1993-11-18,27.781294470122365,27.837342811353277,27.66919778766054,27.743928909301758,240800,0.0,0 -1993-11-19,27.65051209813992,27.725243211918677,27.631829319695232,27.687877655029297,106000,0.0,0 -1993-11-22,27.613141582356935,27.631824357446487,27.42631383146142,27.51972770690918,165300,0.0,0 -1993-11-23,27.66920280456543,27.687885588363248,27.5197405341829,27.66920280456543,89700,0.0,0 -1993-11-24,27.743920689873352,27.79996901449936,27.70655514012268,27.781286239624023,77200,0.0,0 -1993-11-26,27.856026599484103,27.856026599484103,27.781295475139412,27.799978256225586,1019800,0.0,0 -1993-11-29,27.87470543947619,27.930753774810256,27.687877655029297,27.687877655029297,517500,0.0,0 -1993-11-30,27.669200292730043,27.837345331646027,27.650517510628266,27.706565856933594,230000,0.0,0 -1993-12-01,27.856025591763583,27.874708372173885,27.743928909301758,27.743928909301758,379200,0.0,0 -1993-12-02,27.79997033092942,27.837335882449484,27.74392200364932,27.818653106689453,352000,0.0,0 -1993-12-03,27.799983751175795,27.930763244628906,27.799983751175795,27.930763244628906,306000,0.0,0 -1993-12-06,27.968106353759765,28.06152020263672,27.968106353759765,28.024154663085938,99500,0.0,0 -1993-12-07,28.024174039406805,28.042856822099743,27.96812569132799,28.005491256713867,88800,0.0,0 -1993-12-08,28.005491256713867,28.005491256713867,27.96812569132799,28.005491256713867,146700,0.0,0 -1993-12-09,28.005487034758094,28.04285259451094,27.87470757562313,27.912073135375977,416500,0.0,0 -1993-12-10,27.930770204980288,27.930770204980288,27.799990678936904,27.85603904724121,412900,0.0,0 -1993-12-13,27.856009735107424,28.024154663085938,27.81864419555664,28.024154663085938,273200,0.0,0 -1993-12-14,28.04284641580985,28.04284641580985,27.818653106689453,27.818653106689453,41900,0.0,0 -1993-12-15,27.856017339125366,27.874700114000703,27.781286239624023,27.781286239624023,82600,0.0,0 -1993-12-16,27.89339286456479,27.89339286456479,27.83734451989386,27.874710083007812,78200,0.0,0 -1993-12-17,27.93383783302051,28.04670182426504,27.91502716781309,28.027891159057617,104700,0.317,0 -1993-12-20,28.009085419989784,28.084328094052886,27.990274751474008,28.06551742553711,68800,0.0,0 -1993-12-21,28.027905718784808,28.027905718784808,27.933852343889555,27.971473693847656,205700,0.0,0 -1993-12-22,28.046723780507794,28.178398540040696,27.99029174070798,28.159587860107422,410300,0.0,0 -1993-12-23,28.140777587890625,28.197209628508052,28.10315622747901,28.140777587890625,533800,0.0,0 -1993-12-27,28.140766752527114,28.29125213623047,28.140766752527114,28.29125213623047,447100,0.0,0 -1993-12-28,28.27243645964827,28.366489807817423,28.25362579001444,28.347679138183594,880600,0.0,0 -1993-12-29,28.36648487078391,28.385295537143847,28.291242205344165,28.3100528717041,266700,0.0,0 -1993-12-30,28.29126180148745,28.29126180148745,28.140776366373156,28.197208404541016,219900,0.0,0 -1993-12-31,28.253630274178434,28.29125161941702,28.027902202746915,28.04671287536621,312900,0.0,0 -1994-01-03,28.04671639376386,28.084337743721957,27.933852343889555,27.971473693847656,960900,0.0,0 -1994-01-04,28.009100242660736,28.08434295654297,27.97147888571962,28.08434295654297,164300,0.0,0 -1994-01-05,28.121966907684815,28.159588268096435,28.00910282644996,28.140777587890625,710900,0.0,0 -1994-01-06,28.178398948302245,28.197209628508052,28.10315622747901,28.140777587890625,201000,0.0,0 -1994-01-07,28.197188873544484,28.328863538064038,28.121946208104738,28.3100528717041,775500,0.0,0 -1994-01-10,28.347672846312594,28.648643493652344,28.272430184477656,28.648643493652344,593700,0.0,0 -1994-01-11,28.6298397390466,28.6298397390466,28.498165049050982,28.59221839904785,295200,0.0,0 -1994-01-12,28.611040640349433,28.611040640349433,28.404123186671693,28.49817657470703,158400,0.0,0 -1994-01-13,28.42293930053711,28.47937134415168,28.3853179381274,28.42293930053711,244300,0.0,0 -1994-01-14,28.516976911611437,28.59221959475553,28.516976911611437,28.53578758239746,137200,0.0,0 -1994-01-17,28.53578758239746,28.573408923969506,28.47935557003939,28.53578758239746,17700,0.0,0 -1994-01-18,28.573421478271484,28.611042836373223,28.516989441118874,28.573421478271484,166400,0.0,0 -1994-01-19,28.535797929921163,28.573419285135298,28.44174454188583,28.49817657470703,200800,0.0,0 -1994-01-20,28.535800120169743,28.592232157322353,28.516989441118874,28.573421478271484,281100,0.0,0 -1994-01-21,28.611034492704043,28.611034492704043,28.498170451312706,28.51698112487793,85600,0.0,0 -1994-01-24,28.498174781041428,28.629849516003336,28.40412139892578,28.40412139892578,373800,0.0,0 -1994-01-25,28.42293207534891,28.44174275177204,28.34768936965639,28.40412139892578,310400,0.0,0 -1994-01-26,28.404106470206298,28.498159802889102,28.36648513713318,28.47934913635254,145100,0.0,0 -1994-01-27,28.53578512331578,28.780323822460872,28.498163784985767,28.74270248413086,344500,0.0,0 -1994-01-28,28.855566819093866,28.91199882721465,28.81794548034668,28.81794548034668,356500,0.0,0 -1994-01-31,28.93082225253191,29.08130767387148,28.89320089719702,29.02487564086914,313800,0.0,0 -1994-02-01,28.987246052993623,28.987246052993623,28.83676067439275,28.87438201904297,303600,0.0,0 -1994-02-02,28.96843519488585,29.062488555908203,28.949624522681376,29.062488555908203,307600,0.0,0 -1994-02-03,29.006047872635104,29.006047872635104,28.836751873378482,28.930805206298828,466100,0.0,0 -1994-02-04,28.930805668224913,28.968427001993735,28.272432327270508,28.272432327270508,1403200,0.0,0 -1994-02-07,28.197203958271352,28.4793641046183,28.197203958271352,28.40412139892578,516400,0.0,0 -1994-02-08,28.460560662946822,28.460560662946822,28.310075213307975,28.42293930053711,188200,0.0,0 -1994-02-09,28.441734228467343,28.554598253183485,28.404112886895298,28.53578758239746,144600,0.0,0 -1994-02-10,28.516980211785498,28.535790884748415,28.29125213623047,28.29125213623047,883900,0.0,0 -1994-02-11,28.310076029115834,28.460561483091197,28.178401256887387,28.385318756103516,519400,0.0,0 -1994-02-14,28.328885894512833,28.51699270656139,28.29126453210312,28.42293930053711,2742100,0.0,0 -1994-02-15,28.479368083017132,28.592232157322353,28.441746724915394,28.573421478271484,374700,0.0,0 -1994-02-16,28.611033688420836,28.611033688420836,28.498169650202215,28.554601669311523,287600,0.0,0 -1994-02-17,28.68628966405425,28.70510034580117,28.310076029115834,28.385318756103516,342400,0.0,0 -1994-02-18,28.40413314819336,28.42294383239746,28.140783569335937,28.216026306152344,313300,0.0,0 -1994-02-22,28.291259121029288,28.49817657470703,28.291259121029288,28.49817657470703,154500,0.0,0 -1994-02-23,28.535803387766247,28.5546140689711,28.328885894512833,28.42293930053711,391700,0.0,0 -1994-02-24,28.32887296465561,28.32887296465561,28.027902202746915,28.04671287536621,770800,0.0,0 -1994-02-25,28.084329526160204,28.178382873535156,28.027897517735234,28.178382873535156,531300,0.0,0 -1994-02-28,28.253625551435118,28.328868229335075,28.178382873535156,28.178382873535156,333000,0.0,0 -1994-03-01,28.178381436631764,28.23481344217909,27.915032077410906,28.06551742553711,423600,0.0,0 -1994-03-02,27.708127106049933,28.103151321411133,27.632884398362084,28.103151321411133,581500,0.0,0 -1994-03-03,28.06551248947246,28.06551248947246,27.952648498227934,28.027891159057617,223200,0.0,0 -1994-03-04,28.027908613723284,28.17839402909898,27.933855229113476,28.103151321411133,595800,0.0,0 -1994-03-07,28.197207185463327,28.291260578343458,28.197207185463327,28.253639221191406,539800,0.0,0 -1994-03-08,28.27245234933129,28.27245234933129,28.10315622747901,28.140777587890625,880300,0.0,0 -1994-03-09,28.17837899284845,28.29124299415492,28.046704324657572,28.272432327270508,2500100,0.0,0 -1994-03-10,28.253630274178434,28.253630274178434,27.952659512269744,28.04671287536621,207400,0.0,0 -1994-03-11,28.084344328205294,28.23482976331959,27.933858893091,28.197208404541016,576600,0.0,0 -1994-03-14,28.310071664361615,28.310071664361615,28.197207591281106,28.23482894897461,345900,0.0,0 -1994-03-15,28.29126904296875,28.347701095581055,28.197215621948242,28.216026306152344,748600,0.0,0 -1994-03-16,28.253625710805256,28.44173240661621,28.15957236289978,28.44173240661621,455500,0.0,0 -1994-03-17,28.347679058710735,28.4793537457784,28.347679058710735,28.44173240661621,133000,0.0,0 -1994-03-18,28.303104931088345,28.47337762118179,28.284185743300185,28.43553924560547,365500,0.271,0 -1994-03-21,28.340951717241833,28.416628490852624,28.284194137033737,28.35987091064453,324800,0.0,0 -1994-03-22,28.359862494452827,28.49229680896995,28.303104931088345,28.43553924560547,435700,0.0,0 -1994-03-23,28.416610717773438,28.49228744405246,28.39769153620368,28.416610717773438,698500,0.0,0 -1994-03-24,28.30309139364813,28.35984892986534,27.943626997605808,28.076061248779297,1200500,0.0,0 -1994-03-25,28.09499078867387,28.17066753153898,27.811203002929688,27.811203002929688,100900,0.0,0 -1994-03-28,27.84903335571289,27.886871716250543,27.603084012218144,27.84903335571289,1117200,0.0,0 -1994-03-29,27.849046734910992,27.867965924268947,27.300390243530273,27.300390243530273,338400,0.0,0 -1994-03-30,27.319292166328566,27.394968875930584,26.92198944091797,26.92198944091797,1123900,0.0,0 -1994-03-31,26.92199250176476,27.054426758625162,26.354417115220176,26.997669219970703,788800,0.0,0 -1994-04-04,26.240908013883434,26.65713005880444,26.240908013883434,26.581453323364258,2627300,0.0,0 -1994-04-05,26.84632391510648,27.130111694335938,26.84632391510648,27.130111694335938,1179000,0.0,0 -1994-04-06,27.167950064899863,27.186869250181825,26.940919841516298,27.130111694335938,516500,0.0,0 -1994-04-07,27.111191157249014,27.319302184973882,26.959837682540016,27.262544631958008,666100,0.0,0 -1994-04-08,27.20578538054353,27.20578538054353,26.92199763318042,27.054431915283203,242400,0.0,0 -1994-04-11,27.13012273464362,27.281476278491006,27.06390555921039,27.16796112060547,203300,0.0,0 -1994-04-12,27.19632884282281,27.243626806027716,27.073354138490046,27.130111694335938,1409200,0.0,0 -1994-04-13,27.120644940103183,27.18686207110448,26.78955928509669,26.988210678100586,364100,0.0,0 -1994-04-14,26.940911681316244,27.13956306660685,26.884154142661785,26.997669219970703,419900,0.0,0 -1994-04-15,26.98820963019496,27.11118429727962,26.95037127109199,26.997669219970703,387300,0.0,0 -1994-04-18,27.026041143911854,27.10171784294976,26.732793935139973,26.817930221557617,369100,0.0,0 -1994-04-19,26.789554898274453,26.959827492966877,26.628741892176055,26.855772018432617,472200,0.0,0 -1994-04-20,26.8841443741103,26.95036147848003,26.68549306100111,26.8273868560791,508000,0.0,0 -1994-04-21,26.940921154300952,27.2247089473589,26.84632522328164,27.186870574951172,200300,0.0,0 -1994-04-22,27.25308897735266,27.272008164424758,27.082816293703807,27.158493041992188,301800,0.0,0 -1994-04-25,27.14903054012179,27.461197093370576,27.14903054012179,27.442277908325195,394600,0.0,0 -1994-04-26,27.404435062342632,27.45173301723104,27.357137107454225,27.413894653320312,399000,0.0,0 -1994-04-28,27.357138163354772,27.39497652872594,27.130107971127764,27.21524429321289,287000,0.0,0 -1994-04-29,27.16795591802458,27.338228622246184,27.13011753930867,27.300390243530273,481900,0.0,0 -1994-05-02,27.300380888064044,27.67876454555627,27.20578497369099,27.470653533935547,275000,0.0,0 -1994-05-03,27.480116278415956,27.489575870938648,27.281464835439454,27.442277908325195,183400,0.0,0 -1994-05-04,27.499015846963744,27.499015846963744,27.29090495992102,27.394960403442383,401900,0.0,0 -1994-05-05,27.423350994352816,27.470648943635933,27.357133865356445,27.357133865356445,659800,0.0,0 -1994-05-06,27.224711844375012,27.224711844375012,26.997681585770078,27.09227752685547,216300,0.0,0 -1994-05-09,27.016585024531018,27.092261733283205,26.808474075462502,26.855772018432617,499300,0.0,0 -1994-05-10,26.988215629473636,27.14902869140881,26.969296445716555,27.063892364501953,583400,0.0,0 -1994-05-11,27.03550073129159,27.073339080810545,26.74225352251971,26.817930221557617,210600,0.0,0 -1994-05-12,26.988222517185605,27.016601300063826,26.88416697996547,26.95038414001465,305200,0.0,0 -1994-05-13,27.026060894356565,27.026060894356565,26.817949819916297,26.95038414001465,321300,0.0,0 -1994-05-16,27.007140651502105,27.09227699681332,26.950383087961296,26.959842681884766,450400,0.0,0 -1994-05-17,26.97875027109149,27.357133865356445,26.940911911664994,27.357133865356445,470200,0.0,0 -1994-05-18,27.37605391979381,27.65984162456016,27.253079247728394,27.5557861328125,824800,0.0,0 -1994-05-19,27.499034853571303,27.76390343833222,27.499034853571303,27.6882266998291,531000,0.0,0 -1994-05-20,27.640907825265895,27.659826995577507,27.54631197370783,27.584150314331055,370400,0.0,0 -1994-05-23,27.55579777412585,27.565257368281056,27.451742238418543,27.53687858581543,262700,0.0,0 -1994-05-24,27.612556062085638,27.75444997812924,27.612556062085638,27.650394439697266,549600,0.0,0 -1994-05-25,27.546332430571105,27.744983866368493,27.451736508762824,27.726064682006836,738200,0.0,0 -1994-05-26,27.71660299135319,27.81119890599945,27.688224216959316,27.74498176574707,369600,0.0,0 -1994-05-27,27.697690178977698,27.773366928100586,27.65039221077589,27.773366928100586,162000,0.0,0 -1994-05-31,27.68823668933988,27.792292242323395,27.640938710711012,27.73553466796875,160000,0.0,0 -1994-06-01,27.669303890804688,27.858495712280273,27.58416757114067,27.858495712280273,200500,0.0,0 -1994-06-02,27.87741613679804,27.87741613679804,27.782820221844535,27.83011817932129,55100,0.0,0 -1994-06-03,27.849021506817127,28.08551115955844,27.763885231830255,27.990915298461914,550400,0.0,0 -1994-06-06,28.04769298045356,28.132829316650554,27.962556644256573,27.981475830078125,99300,0.0,0 -1994-06-07,27.934172534748924,27.981470490276774,27.867955397009933,27.943632125854492,120600,0.0,0 -1994-06-08,28.009851581326117,28.009851581326117,27.716604232788086,27.716604232788086,131900,0.0,0 -1994-06-09,27.839571671184842,27.867950439453125,27.782814134648277,27.867950439453125,80500,0.0,0 -1994-06-10,27.89633922195564,27.97201596450418,27.89633922195564,27.915258407592773,83100,0.0,0 -1994-06-13,27.877408235165877,27.962544534492814,27.86794864635177,27.95308494567871,109700,0.0,0 -1994-06-14,28.038227652606746,28.180121517245446,28.038227652606746,28.17066192626953,161000,0.0,0 -1994-06-15,28.18011883602541,28.18957842610128,28.038224984887314,28.057144165039062,142800,0.0,0 -1994-06-16,28.05714359899549,28.13282031807572,28.028764829340403,28.113901138305664,44000,0.0,0 -1994-06-17,28.128389643063663,28.156956050961153,27.918902651815387,27.95699119567871,403800,0.305,0 -1994-06-20,27.75702164288609,27.804632314657763,27.690366702405747,27.71893310546875,137400,0.0,0 -1994-06-21,27.699893680448263,27.699893680448263,27.366618919769095,27.480884552001953,139200,0.0,0 -1994-06-22,27.55705257411821,27.680840301645347,27.528486175458102,27.58561897277832,279900,0.0,0 -1994-06-23,27.63321768310335,27.6713061981731,27.385642335149978,27.423730850219727,922500,0.0,0 -1994-06-24,27.29043320324404,27.29043320324404,26.814326552803635,26.852415084838867,353800,0.0,0 -1994-06-27,26.957159181304327,27.319000244140625,26.823849316048847,27.319000244140625,371200,0.0,0 -1994-06-28,27.32851617014763,27.32851617014763,26.966675189497593,27.185684204101562,5382300,0.0,0 -1994-06-29,27.22378405445781,27.433271025146187,27.19521764936394,27.271394729614258,311800,0.0,0 -1994-06-30,27.31898836978958,27.32851049888327,27.00475810969789,27.099979400634766,271900,0.0,0 -1994-07-01,27.233292979578817,27.233292979578817,27.042850371330015,27.157115936279297,406900,0.0,0 -1994-07-05,27.21425807222407,27.338045810131316,27.12855886905751,27.299957275390625,112000,0.0,0 -1994-07-06,27.19520688231825,27.309472457454042,27.09998556970509,27.26186180114746,174800,0.0,0 -1994-07-07,27.261880662337592,27.37614631652832,27.23331424878991,27.37614631652832,66700,0.0,0 -1994-07-08,27.204733316319306,27.414220237201008,27.195211183551955,27.366609573364258,148400,0.0,0 -1994-07-11,27.385660349989738,27.433271025146187,27.1380848391762,27.271394729614258,124000,0.0,0 -1994-07-12,27.28090283262181,27.31899135315601,27.128548750485002,27.30946922302246,257300,0.0,0 -1994-07-13,27.319009080482534,27.44279685254467,27.319009080482534,27.357097625732422,532700,0.0,0 -1994-07-14,27.490396923270108,27.709405973923108,27.471352657995933,27.652273178100586,494200,0.0,0 -1994-07-15,27.633224454475968,27.718923634383025,27.623702323375184,27.66179084777832,49100,0.0,0 -1994-07-18,27.66179714006247,27.776062739264106,27.66179714006247,27.709407806396484,72300,0.0,0 -1994-07-19,27.757016637108542,27.76653876974563,27.652273178100586,27.652273178100586,609500,0.0,0 -1994-07-20,27.671312493793035,27.671312493793035,27.461825613248145,27.528480529785156,185300,0.0,0 -1994-07-21,27.528486175458102,27.604663238551726,27.471353378137884,27.58561897277832,86300,0.0,0 -1994-07-22,27.652276384181437,27.671320651663656,27.576099314252563,27.63323211669922,151600,0.0,0 -1994-07-25,27.64275737179614,27.699890180694098,27.61419096734716,27.671323776245117,120900,0.0,0 -1994-07-26,27.661795959446376,27.680840225167163,27.614185295144402,27.642751693725586,489600,0.0,0 -1994-07-27,27.642751693725586,27.642751693725586,27.52848609940085,27.642751693725586,83200,0.0,0 -1994-07-28,27.64274971425308,27.776059564752405,27.64274971425308,27.69988250732422,828200,0.0,0 -1994-07-29,27.89033114171661,28.06172955774628,27.88080900749274,27.976030349731445,459100,0.0,0 -1994-08-01,27.995063657683087,28.128373484624436,27.966497266195656,28.109329223632812,486300,0.0,0 -1994-08-02,28.204555583742216,28.26168837695709,28.052201468502556,28.147422790527344,505500,0.0,0 -1994-08-03,28.13790572911128,28.175994264785206,28.090295059518876,28.156949996948242,144100,0.0,0 -1994-08-04,28.13790340812839,28.166469807527506,27.985549277999777,27.995071411132812,231700,0.0,0 -1994-08-05,27.852230657896488,27.937929829151557,27.823664267478133,27.89984130859375,138400,0.0,0 -1994-08-08,27.928427946579713,27.995082905879425,27.899861535451265,27.966516494750977,328600,0.0,0 -1994-08-09,27.861754565884027,28.014108657836914,27.861754565884027,28.014108657836914,105900,0.0,0 -1994-08-10,28.033153437050245,28.14741900812518,27.9950649133586,28.118852615356445,840300,0.0,0 -1994-08-11,28.052197180825136,28.175984880536856,27.87127669663108,28.014108657836914,876200,0.0,0 -1994-08-12,28.06172349296171,28.24264400411416,28.06172349296171,28.233121871948242,184100,0.0,0 -1994-08-15,28.26169273695643,28.3283476726568,28.223604202270508,28.223604202270508,325900,0.0,0 -1994-08-16,28.24264629242608,28.452133217049603,28.128380697176883,28.423566818237305,1089500,0.0,0 -1994-08-17,28.461645182610518,28.480689441682188,28.385468146323838,28.404512405395508,133700,0.0,0 -1994-08-18,28.309295654296875,28.375950571747286,28.28072926110384,28.309295654296875,620000,0.0,0 -1994-08-19,28.318807624398318,28.347374007341557,28.22358634792085,28.290241241455078,103200,0.0,0 -1994-08-22,28.299771031279448,28.299771031279448,28.20454972902077,28.261682510375977,79700,0.0,0 -1994-08-23,28.385478286487572,28.556876679361366,28.34738975473784,28.423566818237305,268600,0.0,0 -1994-08-24,28.452127774661847,28.728269577026367,28.44260564354583,28.728269577026367,254700,0.0,0 -1994-08-25,28.699708366203875,28.766363296052393,28.575920639342346,28.652097702026367,147400,0.0,0 -1994-08-26,28.71874769518291,29.118677205526968,28.71874769518291,29.06154441833496,339500,0.0,0 -1994-08-29,29.13772659301758,29.242470054626466,29.03298313140869,29.042505264282227,350300,0.0,0 -1994-08-30,29.032993172570098,29.166303078905287,28.994904627902905,29.11869239807129,36000,0.0,0 -1994-08-31,29.07107166290283,29.185337257385253,29.004416732788087,29.042505264282227,356200,0.0,0 -1994-09-01,28.947280883789062,28.966325147528398,28.84253743322272,28.947280883789062,294600,0.0,0 -1994-09-02,29.080589600667963,29.080589600667963,28.775881392671444,28.8234920501709,99600,0.0,0 -1994-09-06,28.804447140687365,28.86157992840443,28.718747959111766,28.8330135345459,229800,0.0,0 -1994-09-07,28.899672314352237,28.899672314352237,28.775884591094716,28.80445098876953,27900,0.0,0 -1994-09-08,28.861581696962055,28.985369411267733,28.85205956509239,28.947280883789062,284800,0.0,0 -1994-09-09,28.661622392370344,28.718755194481382,28.528312520777924,28.642578125,488400,0.0,0 -1994-09-12,28.642578247111015,28.68066678201409,28.50926837495026,28.5568790435791,129400,0.0,0 -1994-09-13,28.61401172394448,28.718755194481382,28.556878921833444,28.642578125,389200,0.0,0 -1994-09-14,28.547364344196197,28.709240659690305,28.547364344196197,28.671152114868164,423500,0.0,0 -1994-09-15,28.74732923022877,29.03299331665039,28.74732923022877,29.03299331665039,779800,0.0,0 -1994-09-16,28.81678065575409,28.9030010765991,28.720980188148527,28.82636070251465,571300,0.288,0 -1994-09-19,28.8934284580023,29.017969097907482,28.826368113437972,28.8551082611084,167300,0.0,0 -1994-09-20,28.70181234395242,28.730552476473065,28.309030532836914,28.309030532836914,355600,0.0,0 -1994-09-21,28.395250930398856,28.395250930398856,28.040789295977547,28.309030532836914,397500,0.0,0 -1994-09-22,28.37611367679839,28.37611367679839,28.213252794791106,28.241992950439453,266400,0.0,0 -1994-09-23,28.251569292835836,28.30904959658525,28.098288482837408,28.146188735961914,176600,0.0,0 -1994-09-26,28.251551038081306,28.309031304689814,28.1940707714728,28.289871215820312,223000,0.0,0 -1994-09-27,28.28987580547895,28.36651617339085,28.203655391578067,28.270715713500977,479500,0.0,0 -1994-09-28,28.424001829689914,28.529382355516198,28.404841734085135,28.49106216430664,324000,0.0,0 -1994-09-29,28.4910421535831,28.4910421535831,28.261121167811076,28.347341537475586,195900,0.0,0 -1994-09-30,28.33777066535756,28.471891283787244,28.309030532836914,28.309030532836914,5200,0.0,0 -1994-10-03,28.328213417384486,28.35695357303283,28.194092691025546,28.241992950439453,72600,0.0,0 -1994-10-04,28.38567830511361,28.38567830511361,27.801295457792676,27.82045555114746,84200,0.0,0 -1994-10-05,27.772552075279354,27.830032348632812,27.59053120966007,27.830032348632812,461900,0.0,0 -1994-10-06,27.849177747800205,27.86833782881004,27.695897099721495,27.743797302246094,345200,0.0,0 -1994-10-07,27.743817992618546,27.944998993255627,27.71507784967039,27.868358612060547,188700,0.0,0 -1994-10-10,27.992899563847757,28.213240662399603,27.98331951608463,28.165340423583984,213600,0.0,0 -1994-10-11,28.289873532890955,28.66349529644759,28.289873532890955,28.586854934692383,461400,0.0,0 -1994-10-12,28.625185012817383,28.663505206944315,28.558124673095257,28.625185012817383,162400,0.0,0 -1994-10-13,28.950916189762495,29.01797655155215,28.69225479428811,28.72099494934082,1564500,0.0,0 -1994-10-14,28.81679702905752,28.855117237872758,28.62519598498134,28.845537185668945,72800,0.0,0 -1994-10-17,28.816787938071965,28.855108134798122,28.759307642982723,28.788047790527344,282300,0.0,0 -1994-10-18,28.759315156077765,28.759315156077765,28.625194432498454,28.72099494934082,132100,0.0,0 -1994-10-19,28.61560703052151,28.96048880256663,28.606026981298033,28.8551082611084,136700,0.0,0 -1994-10-20,28.85510460705681,28.85510460705681,28.577283214757788,28.663503646850586,290300,0.0,0 -1994-10-21,28.586841204342427,28.625161366814737,28.423980513835115,28.548521041870117,87800,0.0,0 -1994-10-24,28.558111681349185,28.673072211431773,28.299450488663364,28.309030532836914,149600,0.0,0 -1994-10-25,28.21323558557187,28.395256460317494,28.203655539532626,28.33777618408203,91800,0.0,0 -1994-10-26,28.44316291809082,28.471903062501152,28.30904224417594,28.44316291809082,201000,0.0,0 -1994-10-27,28.548542159354763,28.615602493286133,28.481481825423394,28.615602493286133,210300,0.0,0 -1994-10-28,28.67308024296995,29.247883054389327,28.67308024296995,29.21914291381836,192100,0.0,0 -1994-10-31,29.152083998489005,29.18082414045268,29.104183761882876,29.1137638092041,36300,0.0,0 -1994-11-01,28.98922882333968,28.98922882333968,28.778467741345803,28.788047790527344,435200,0.0,0 -1994-11-02,28.701825401071247,28.96048671142803,28.625185012817383,28.625185012817383,115600,0.0,0 -1994-11-03,28.720977366684913,28.826357870698768,28.682657183407148,28.778457641601562,87000,0.0,0 -1994-11-04,28.912579097393994,28.912579097393994,28.404836654663086,28.404836654663086,124400,0.0,0 -1994-11-07,28.471902068701862,28.567702546725755,28.395261686282744,28.49106216430664,115000,0.0,0 -1994-11-08,28.586864172318478,28.80720528356624,28.538963930742877,28.71140480041504,308300,0.0,0 -1994-11-09,29.0179691911935,29.0179691911935,28.51022658071702,28.759307861328125,318500,0.0,0 -1994-11-10,28.778459891262006,28.835940170671986,28.538958727053767,28.55811882019043,172100,0.0,0 -1994-11-11,28.51981533962468,28.548555496164443,28.376114556925867,28.452754974365234,302200,0.0,0 -1994-11-14,28.577294174077274,28.730575001025056,28.577294174077274,28.72099494934082,181400,0.0,0 -1994-11-15,28.692245352539512,28.874266274642434,28.404843896587533,28.625185012817383,316900,0.0,0 -1994-11-16,28.673094690919637,28.72099494934082,28.577294174077274,28.72099494934082,106900,0.0,0 -1994-11-17,28.740139917049575,28.740139917049575,28.414418331323013,28.52937889099121,104700,0.0,0 -1994-11-18,28.53896240331859,28.586862642330537,28.366521542875574,28.49106216430664,269300,0.0,0 -1994-11-21,28.47189267821934,28.558113080003988,28.20365142822266,28.203651428222656,283100,0.0,0 -1994-11-22,28.0982572555542,28.2036376953125,27.59051513671875,27.59051513671875,483600,0.0,0 -1994-11-23,27.609676735177224,27.753377342751012,27.351015641544404,27.743797302246094,601600,0.0,0 -1994-11-25,27.762976750639297,27.916257505646275,27.762976750639297,27.87793731689453,77300,0.0,0 -1994-11-28,27.868360783031775,28.01206150896697,27.80130044426202,28.00248146057129,79900,0.0,0 -1994-11-29,27.992883682250977,28.050363936218638,27.89708325897154,27.992883682250977,105500,0.0,0 -1994-11-30,28.136599300821157,28.174919490539676,27.954578399658203,27.954578399658203,218800,0.0,0 -1994-12-01,27.98331933897975,27.98331933897975,27.619277526285046,27.6767578125,439000,0.0,0 -1994-12-02,27.619254879500147,27.935396194458008,27.619254879500147,27.935396194458008,318500,0.0,0 -1994-12-05,27.992889608165587,28.088690051725358,27.897089164605813,27.964149475097656,139200,0.0,0 -1994-12-06,27.858770117780924,27.992890744207656,27.81086989405709,27.98331069946289,249900,0.0,0 -1994-12-07,27.81086560282214,27.897085992221175,27.753385343222785,27.78212547302246,531900,0.0,0 -1994-12-08,27.897108518977685,27.935428722987268,27.437266070862666,27.513906478881836,261500,0.0,0 -1994-12-09,27.51387462688741,27.638415145741707,27.398914147944986,27.61925506591797,235900,0.0,0 -1994-12-12,27.56179316959079,27.801294326782227,27.56179316959079,27.801294326782227,151100,0.0,0 -1994-12-13,27.78213093708849,27.91625156919857,27.78213093708849,27.90667152404785,70900,0.0,0 -1994-12-14,27.86835789875906,28.174919415692816,27.86835789875906,28.050378799438477,203300,0.0,0 -1994-12-15,28.0887021593062,28.222822838102346,28.0887021593062,28.1366024017334,130100,0.0,0 -1994-12-16,28.225746625108144,28.331967361637805,28.19677733332733,28.274028778076172,266100,0.363,0 -1994-12-19,28.274040201351067,28.331978808321047,28.187132290896095,28.312665939331055,1120200,0.0,0 -1994-12-20,28.341632895872603,28.360945763263317,28.22575569152832,28.22575569152832,675600,0.0,0 -1994-12-21,28.245062285689944,28.59269382151382,28.245062285689944,28.52509880065918,544500,0.0,0 -1994-12-22,28.52509260323335,28.554061891591406,28.409215449801124,28.43818473815918,222000,0.0,0 -1994-12-23,28.41889806033151,28.53477532051635,28.41889806033151,28.467180252075195,125800,0.0,0 -1994-12-27,28.56371784210205,28.67959499359131,28.544404983520508,28.62165641784668,95200,0.0,0 -1994-12-28,28.650622347485378,28.650622347485378,28.40921164351263,28.476806640625,358200,0.0,0 -1994-12-29,28.58303404872355,28.58303404872355,28.467156883661158,28.496126174926758,220100,0.0,0 -1994-12-30,28.554047873644837,28.583017147781103,28.15813446044922,28.15813446044922,2209500,0.0,0 -1995-01-03,28.245056627553478,28.331964494099797,28.23540019793722,28.293338775634766,324300,0.0,0 -1995-01-04,28.418869496039722,28.428525924682617,28.2740230663963,28.428525924682617,351800,0.0,0 -1995-01-05,28.447838781968407,28.496120925182883,28.399556638753932,28.428525924682617,89800,0.0,0 -1995-01-06,28.48645256542132,28.583016811405802,28.37057547023995,28.457483291625977,448400,0.0,0 -1995-01-09,28.44785116680598,28.48647689819336,28.428538301112287,28.48647689819336,36800,0.0,0 -1995-01-10,28.554056160497616,28.66993329067211,28.515430450439453,28.515430450439453,229800,0.0,0 -1995-01-11,28.61199568540312,28.61199568540312,28.312646422410374,28.534744262695312,222400,0.0,0 -1995-01-12,28.50578117112507,28.56371975074118,28.447842591508962,28.54440689086914,40300,0.0,0 -1995-01-13,28.69890737836475,28.88237953186035,28.66028166183936,28.88237953186035,170600,0.0,0 -1995-01-16,28.872725948537852,29.06585455020031,28.872725948537852,29.056198120117188,105100,0.0,0 -1995-01-17,28.99825240290442,29.085160252263773,28.95962669207804,29.065847396850586,89500,0.0,0 -1995-01-18,29.046531197713147,29.09481333068807,28.969279784953272,29.036874771118164,84500,0.0,0 -1995-01-19,28.940327187605128,28.969296484089217,28.85341929815286,28.872732162475586,139100,0.0,0 -1995-01-20,28.834091648794573,28.843748076004484,28.70855809506573,28.766496658325195,78700,0.0,0 -1995-01-23,28.573379937903468,28.853416442871094,28.554067075491908,28.853416442871094,53700,0.0,0 -1995-01-24,28.84376000401808,28.892042160034176,28.82444714161164,28.89204216003418,32400,0.0,0 -1995-01-25,28.74720514043172,29.075523909250894,28.74720514043172,28.969303131103516,15700,0.0,0 -1995-01-26,28.949972633516794,29.036880489988324,28.89203406253577,28.998254776000977,9800,0.0,0 -1995-01-27,29.191391005128573,29.191391005128573,28.998262384519055,29.114139556884766,91200,0.0,0 -1995-01-30,29.0562138979948,29.07552676864817,28.949993109401266,28.988618850708008,26600,0.0,0 -1995-01-31,29.04655167972638,29.15277244717219,28.99826951270556,29.104490280151367,127500,0.0,0 -1995-02-01,29.14311362974595,29.249334388502483,29.046549303603655,29.094831466674805,380200,0.0,0 -1995-02-02,29.085155072994098,29.268627166748047,29.085155072994098,29.268627166748047,131700,0.0,0 -1995-02-03,29.452100820795778,29.732137189255802,29.40381868830267,29.683855056762695,405100,0.0,0 -1995-02-06,29.674197242373513,29.89629504145408,29.645227964232568,29.80938720703125,405400,0.0,0 -1995-02-07,29.857682706005402,29.857682706005402,29.75146197192841,29.848026275634766,702900,0.0,0 -1995-02-08,29.809400554152223,29.954247009711757,29.790087693410953,29.848026275634766,521500,0.0,0 -1995-02-09,29.799744123781586,29.848026275634766,29.741805541557774,29.848026275634766,390700,0.0,0 -1995-02-10,29.809404354680915,29.886655807495117,29.722496470264936,29.886655807495117,148300,0.0,0 -1995-02-13,29.867339607357057,29.954247482063234,29.867339607357057,29.89630889892578,79700,0.0,0 -1995-02-14,29.992863644015404,29.992863644015404,29.8190479500063,29.934925079345703,170200,0.0,0 -1995-02-15,29.934950245088366,30.13773539190993,29.90598093839957,30.099109649658203,431500,0.0,0 -1995-02-16,30.060474395751957,30.08944369327436,29.97356650318473,30.060474395751953,99300,0.0,0 -1995-02-17,30.03149557252039,30.05080843140947,29.934931278074988,29.94458770751953,49100,0.0,0 -1995-02-21,29.944581506790655,29.992863644015404,29.925268651900755,29.934925079345703,168000,0.0,0 -1995-02-22,29.963901510614257,30.15703010559082,29.9445886511166,30.15703010559082,386400,0.0,0 -1995-02-23,30.272915384653583,30.37913614038921,30.195663925936763,30.205320358276367,402800,0.0,0 -1995-02-24,30.24393272886471,30.29221486923646,30.166681304269908,30.28255844116211,307600,0.0,0 -1995-02-27,30.195651995794677,30.282559852514265,29.992866996782304,30.041149139404297,280900,0.0,0 -1995-02-28,30.012177038998374,30.292213439941406,30.012177038998374,30.292213439941406,493500,0.0,0 -1995-03-01,30.263269054228044,30.301894796479772,30.07014034296941,30.099109649658203,242600,0.0,0 -1995-03-02,30.089449380460895,30.137731552124023,30.002541471467268,30.137731552124023,488600,0.0,0 -1995-03-03,30.041148672647616,30.14736938476562,29.9638972456527,30.147369384765625,290000,0.0,0 -1995-03-06,29.944577764152108,30.166675567626953,29.90595205919996,30.166675567626953,85700,0.0,0 -1995-03-07,30.060458636130058,30.128053628244707,29.7997350951164,29.934925079345703,180900,0.0,0 -1995-03-08,29.983218664368145,30.050813682291036,29.876997921917887,30.012187957763672,155900,0.0,0 -1995-03-09,30.002525329589844,30.031494617001744,29.925273896491447,30.002525329589844,63500,0.0,0 -1995-03-10,30.03149368329688,30.5239715539876,29.992867967948587,30.446720123291016,192100,0.0,0 -1995-03-13,30.4274134651063,30.523977773151703,30.388787741888137,30.417757034301758,261300,0.0,0 -1995-03-14,30.504658705347385,30.678474424466174,30.504658705347385,30.639848709106445,223300,0.0,0 -1995-03-15,30.59156751617634,30.639849661877374,30.466033937353647,30.581911087036133,278500,0.0,0 -1995-03-16,30.552935646378014,30.78468989906862,30.552935646378014,30.765377044677734,20400,0.0,0 -1995-03-17,30.718299478480375,30.834803774858937,30.698882095750616,30.795969009399414,89900,0.268,0 -1995-03-20,30.834803774858937,30.834803774858937,30.737716861210135,30.795969009399414,91700,0.0,0 -1995-03-21,30.79600190453222,30.990175939239233,30.66978878197266,30.718332290649414,104400,0.0,0 -1995-03-22,30.77657024454611,30.77657024454611,30.65035718045176,30.74744415283203,74900,0.0,0 -1995-03-23,30.708604972119513,30.854235409862728,30.66977018872132,30.766857147216797,220500,0.0,0 -1995-03-24,30.863953778516752,31.203758239746097,30.863953778516752,31.203758239746094,134000,0.0,0 -1995-03-27,31.252282696166272,31.329952239990234,31.17461315234231,31.329952239990234,132100,0.0,0 -1995-03-28,31.252282696166272,31.329952239990234,31.213447924254293,31.329952239990234,121900,0.0,0 -1995-03-29,31.300834073978997,31.621221023247394,31.14549494706099,31.32025146484375,246100,0.0,0 -1995-03-30,31.38821025516676,31.38821025516676,31.135784190634023,31.26199722290039,298400,0.0,0 -1995-03-31,31.019289312906864,31.17462847691516,30.78628056689442,31.135793685913086,541300,0.0,0 -1995-04-03,31.12606743297903,31.21344566345215,31.10665004842945,31.21344566345215,193300,0.0,0 -1995-04-04,31.22316730626581,31.417341232299805,31.22316730626581,31.417341232299805,66900,0.0,0 -1995-04-05,31.349380358187908,31.446467321204903,31.329962965584507,31.417341232299805,107200,0.0,0 -1995-04-06,31.495011115896293,31.562971990683984,31.43675893750684,31.533845901489258,352500,0.0,0 -1995-04-07,31.601822960358373,31.601822960358373,31.35910542610063,31.504735946655273,361400,0.0,0 -1995-04-10,31.456177358589184,31.562973022460938,31.436759965157954,31.562973022460938,285400,0.0,0 -1995-04-11,31.640655421622007,31.65036412227301,31.436772707950922,31.45619010925293,250300,0.0,0 -1995-04-12,31.504720842167252,31.562973022460938,31.44646866187357,31.562973022460938,150900,0.0,0 -1995-04-13,31.621218062570314,31.74743109137394,31.601800673523602,31.737722396850586,243400,0.0,0 -1995-04-17,31.85423036780724,31.883356454702522,31.456173846905045,31.553260803222656,178900,0.0,0 -1995-04-18,31.582393937141816,31.582393937141816,31.36880258558414,31.44647216796875,329500,0.0,0 -1995-04-19,31.446467321204903,31.5144281953168,31.252293395170913,31.417341232299805,223000,0.0,0 -1995-04-20,31.50472376751922,31.553267255604766,31.339675908028365,31.46588897705078,207900,0.0,0 -1995-04-21,31.475596804175233,31.630935961752904,31.475596804175233,31.621227264404297,145000,0.0,0 -1995-04-24,31.601823372616572,31.990171432495117,31.601823372616572,31.990171432495117,169000,0.0,0 -1995-04-25,31.941605775151686,31.990149248974106,31.883353606564782,31.90277099609375,293200,0.0,0 -1995-04-26,31.84453507838332,31.95133077529253,31.766865480631164,31.931913375854492,204400,0.0,0 -1995-04-27,31.88335422635042,32.02898465064861,31.863936836443994,32.00956726074219,502200,0.0,0 -1995-04-28,31.999853308600848,32.10664893554096,31.795970748078815,32.05810546875,130800,0.0,0 -1995-05-01,32.029006833477006,32.09696774521824,31.970754623413086,31.970754623413086,518700,0.0,0 -1995-05-02,31.9998691258286,32.08724740924257,31.93190823872884,32.03870391845703,228400,0.0,0 -1995-05-03,32.14550510709755,32.48530960083008,32.14550510709755,32.48530960083008,724700,0.0,0 -1995-05-04,32.52414881327506,32.737740238317464,32.38822699733899,32.46589660644531,311400,0.0,0 -1995-05-05,32.60181577990869,32.60181577990869,32.35909827112438,32.427059173583984,314900,0.0,0 -1995-05-08,32.39792603006261,32.76685656321885,32.368799935339744,32.66006088256836,183100,0.0,0 -1995-05-09,32.795991211482296,32.83482601457464,32.58239979447442,32.630943298339844,180600,0.0,0 -1995-05-10,32.71829367605042,32.7280023685359,32.51441113385545,32.66975021362305,330300,0.0,0 -1995-05-11,32.71832156902103,32.75715637207031,32.6115258606355,32.75715637207031,351700,0.0,0 -1995-05-12,32.630923683609446,32.854223667162856,32.621214988672335,32.776554107666016,94600,0.0,0 -1995-05-15,32.863958179950714,32.93191909790039,32.79599726200104,32.93191909790039,147200,0.0,0 -1995-05-16,32.92219074318953,33.02898640764694,32.863938562576394,32.951316833496094,221600,0.0,0 -1995-05-17,32.951316817700246,32.961025514464446,32.79597766947302,32.825103759765625,189200,0.0,0 -1995-05-18,32.76685062719851,32.78626802016277,32.3493766784668,32.3493766784668,577800,0.0,0 -1995-05-19,32.300832613399805,32.42704566539085,32.252289131864785,32.36879348754883,363900,0.0,0 -1995-05-22,32.475597361222604,32.77656702286622,32.45617996369721,32.728023529052734,216000,0.0,0 -1995-05-23,32.78628181444064,33.02899932861328,32.68919480877158,33.02899932861328,136800,0.0,0 -1995-05-24,33.08722153607537,33.19401714549345,32.80566947488224,33.009552001953125,370800,0.0,0 -1995-05-25,32.91249842703991,33.06783765265425,32.75715920142556,33.03871154785156,379900,0.0,0 -1995-05-26,32.912487036833156,32.922195735074105,32.53384780543596,32.66006088256836,518600,0.0,0 -1995-05-30,32.73773076298192,32.8251090479365,32.54355679641619,32.650352478027344,61500,0.0,0 -1995-05-31,32.59210628995109,33.3299674987793,32.59210628995109,33.3299674987793,564500,0.0,0 -1995-06-01,33.184320612488506,33.49499886281023,33.08723365926297,33.24257278442383,810100,0.0,0 -1995-06-02,33.106657773438926,33.504714362503734,32.99015340590776,33.271705627441406,112900,0.0,0 -1995-06-05,33.271703308530306,33.58238160029365,33.242577218677496,33.4755859375,257200,0.0,0 -1995-06-06,33.44646923767834,33.56297362979798,33.41734313964844,33.41734313964844,165800,0.0,0 -1995-06-07,33.34936843297192,33.368785823617024,33.203738003133616,33.24257278442383,41900,0.0,0 -1995-06-08,33.23286642012049,33.3299533801559,33.1649055480957,33.1649055480957,141100,0.0,0 -1995-06-09,33.096942869035885,33.13577765092973,32.776555918411596,32.97072982788086,304900,0.0,0 -1995-06-12,33.077535186365445,33.291126549470825,33.0581177897195,33.15520477294922,378500,0.0,0 -1995-06-13,33.3105407252925,33.53384076512979,33.28141463313981,33.51442337036133,120000,0.0,0 -1995-06-14,33.46588838643079,33.52414058553685,33.35909268806969,33.48530578613281,389400,0.0,0 -1995-06-15,33.53384486852562,33.69889274425374,33.475592677092166,33.63093185424805,274500,0.0,0 -1995-06-16,33.564741615070105,33.73075866699219,33.564741615070105,33.73075866699219,325100,0.316,0 -1995-06-19,33.828423859088154,34.13116090863542,33.808892436536716,34.111629486083984,134600,0.0,0 -1995-06-20,34.013976963187744,34.131165514309835,33.994445538000726,34.02374267578125,287800,0.0,0 -1995-06-21,34.13117717696907,34.16047432476046,34.00422286987305,34.00422286987305,158200,0.0,0 -1995-06-22,34.150689338069924,34.472957781923604,34.150689338069924,34.453426361083984,297000,0.0,0 -1995-06-23,34.37530890272206,34.39484032823497,34.27765177515751,34.385074615478516,315400,0.0,0 -1995-06-26,34.287428907157015,34.346023203210265,33.97492599487305,33.97492599487305,132900,0.0,0 -1995-06-27,33.96514945315875,34.18976084977251,33.88702374998875,33.90655517578125,127700,0.0,0 -1995-06-28,33.90655360180874,34.219056399982094,33.79913076493665,34.08233642578125,212600,0.0,0 -1995-06-29,34.0823369513423,34.17022836468387,33.78936557353706,34.02374267578125,89200,0.0,0 -1995-06-30,34.092114313247215,34.20930290441277,33.935862858359805,34.00422286987305,714100,0.0,0 -1995-07-03,34.04327313992087,34.13116455078125,34.04327313992087,34.13116455078125,9500,0.0,0 -1995-07-05,34.22882053979854,34.41436906768903,34.15069484384465,34.25811767578125,409300,0.0,0 -1995-07-06,34.26787952151461,34.69757080078125,34.19951954526765,34.69757080078125,202500,0.0,0 -1995-07-07,34.629228409681375,34.86360559011915,34.60969697797823,34.85383987426758,481700,0.0,0 -1995-07-10,34.88313684006827,34.97102828227449,34.81477682946343,34.87337112426758,400400,0.0,0 -1995-07-11,34.84407552655789,34.87337267526295,34.65852691809247,34.70735549926758,420500,0.0,0 -1995-07-12,34.77570776438435,35.19563346892479,34.70734776597079,35.13703918457031,203400,0.0,0 -1995-07-13,35.088203691572865,35.16632938863175,35.01984370664634,35.05890655517578,215600,0.0,0 -1995-07-14,34.873358284892035,35.058906816791485,34.84406114827633,35.02960968017578,543700,0.0,0 -1995-07-17,35.07844410201734,35.26399266491777,35.049146960506754,35.22492980957031,171500,0.0,0 -1995-07-18,35.166319092914826,35.166319092914826,34.89287923326428,34.922176361083984,221200,0.0,0 -1995-07-19,34.78545589948529,34.824518735981066,33.877244950958584,34.54131317138672,486600,0.0,0 -1995-07-20,34.58039013714858,34.736641546974724,34.39484158798003,34.66828155517578,318900,0.0,0 -1995-07-21,34.638984768389314,34.76593904016519,34.49249907018637,34.62921905517578,94000,0.0,0 -1995-07-24,34.678049133446024,34.922191974430575,34.678049133446024,34.88312911987305,108400,0.0,0 -1995-07-25,34.92218201582416,35.1956219197512,34.814759196424255,35.146793365478516,107400,0.0,0 -1995-07-26,35.127269832920845,35.29328695473337,35.107738406825256,35.11750411987305,167800,0.0,0 -1995-07-27,35.283507206659586,35.43975855327086,35.283507206659586,35.41046142578125,187700,0.0,0 -1995-07-28,35.43976818744322,35.43976818744322,35.15656254472185,35.18585968017578,415600,0.0,0 -1995-07-31,35.21516525446871,35.24446239694331,35.01985097130471,35.09797668457031,342500,0.0,0 -1995-08-01,35.146809618342814,35.146809618342814,34.84407244185806,35.03938674926758,141000,0.0,0 -1995-08-02,35.24445596407246,35.49836448584189,34.90265603092129,34.96125030517578,240400,0.0,0 -1995-08-03,34.717115160805385,34.97102373863406,34.65852087361415,34.95149230957031,1193600,0.0,0 -1995-08-04,35.019848134974815,35.049145275076576,34.95148814140403,34.99055099487305,240500,0.0,0 -1995-08-07,35.06869125366211,35.17611414527734,35.04915981882298,35.06869125366211,193100,0.0,0 -1995-08-08,35.08822268850125,35.19564558011647,34.96126836204689,35.06869125366211,951900,0.0,0 -1995-08-09,35.18586081289647,35.18586081289647,35.0296094187787,35.05890655517578,107100,0.0,0 -1995-08-10,35.0979662756225,35.176091965718484,34.83429207154854,34.980777740478516,280800,0.0,0 -1995-08-11,34.95149767177953,34.99056053589998,34.63899475881586,34.78548049926758,257200,0.0,0 -1995-08-14,34.87336525893171,35.09797668457031,34.795239545666114,35.09797668457031,254800,0.0,0 -1995-08-15,35.08820395340719,35.08820395340719,34.785466875044925,35.02960968017578,44400,0.0,0 -1995-08-16,35.000319276480404,35.12727355957031,34.96125642014504,35.12727355957031,374900,0.0,0 -1995-08-17,35.14681699301864,35.14681699301864,34.94173692720775,35.06869125366211,353800,0.0,0 -1995-08-18,35.244439330120905,35.25420503788764,35.07842229808654,35.10771942138672,85400,0.0,0 -1995-08-21,35.254221236522895,35.40070692033116,35.0003127179219,35.01007843017578,266700,0.0,0 -1995-08-22,35.05890638100809,35.13703207767886,34.883123563498856,35.07843780517578,220200,0.0,0 -1995-08-23,35.10774374208027,35.127275171144014,34.95149230957031,34.95149230957031,176500,0.0,0 -1995-08-24,34.961253854771286,35.05891098844383,34.84406529436423,34.99055099487305,167400,0.0,0 -1995-08-25,35.049139714724085,35.244453951083656,35.049139714724085,35.18585968017578,195000,0.0,0 -1995-08-28,35.283517934220086,35.283517934220086,35.000312282381614,35.05890655517578,293000,0.0,0 -1995-08-29,35.09796481120583,35.15655907633305,34.853822039842406,35.146793365478516,1133100,0.0,0 -1995-08-30,35.17610124038599,35.26399266491777,35.13703838503853,35.22492980957031,437400,0.0,0 -1995-08-31,35.215152398106795,35.312809504036096,35.185855266328005,35.254215240478516,491900,0.0,0 -1995-09-01,35.24444437000677,35.469055680760476,35.21514724251715,35.41046142578125,629900,0.0,0 -1995-09-05,35.517915499536066,35.76205844358017,35.45932119296548,35.74252700805664,272200,0.0,0 -1995-09-06,35.771789217892476,35.84991488367002,35.762023509670286,35.81085205078125,214500,0.0,0 -1995-09-07,35.84993761779502,35.869469046625206,35.78157761688939,35.830406188964844,258800,0.0,0 -1995-09-08,35.967124938964844,35.967124938964844,35.73274780116002,35.967124938964844,107300,0.0,0 -1995-09-11,36.025703091367035,36.13312589809109,36.025703091367035,36.06476593017578,260700,0.0,0 -1995-09-12,36.07454160088799,36.23079299926758,35.98665018929947,36.23079299926758,139500,0.0,0 -1995-09-13,36.19172108585981,36.4456295446381,36.181955375906796,36.39680099487305,239800,0.0,0 -1995-09-14,36.52375993878243,36.75813700790831,36.426102826646655,36.72883987426758,457600,0.0,0 -1995-09-15,36.69907236558231,36.80706856569505,36.571440492721806,36.71870803833008,431200,0.312,0 -1995-09-18,36.5910899653207,36.610725645473806,36.40455100386615,36.58127212524414,307500,0.0,0 -1995-09-19,36.64999175071716,36.777623653411865,36.52235984802246,36.75798797607422,549600,0.0,0 -1995-09-20,36.816878372022025,36.9346923828125,36.78742486932441,36.9346923828125,290800,0.0,0 -1995-09-21,36.885635003810975,36.91508853189493,36.4831034533302,36.63037109375,508500,0.0,0 -1995-09-22,36.335818076057066,36.67944240263421,36.30636456235045,36.64017105102539,449900,0.0,0 -1995-09-25,36.679450526009695,36.679450526009695,36.45364020424893,36.58127212524414,130000,0.0,0 -1995-09-26,36.68925951759287,36.77762005697161,36.48308492570916,36.57144546508789,466600,0.0,0 -1995-09-27,36.41436789921059,36.561635496538216,36.18855758330823,36.54199981689453,654400,0.0,0 -1995-09-28,36.57145614624023,36.81690216064453,36.54200262451172,36.81690216064453,456200,0.0,0 -1995-09-29,36.78743647993996,37.01324673855716,36.69907594395932,36.748165130615234,606600,0.0,0 -1995-10-02,36.74818068134541,36.8365412547176,36.47328111974304,36.561641693115234,293100,0.0,0 -1995-10-03,36.56163882390624,36.65981723105959,36.414371213176224,36.60091018676758,839700,0.0,0 -1995-10-04,36.620548742030024,36.620548742030024,36.512552485686236,36.561641693115234,248800,0.0,0 -1995-10-05,36.60089184864458,36.66961669921875,36.50271349068147,36.66961669921875,268800,0.0,0 -1995-10-06,36.689244513718315,36.807058518043874,36.689244513718315,36.69906234741211,75300,0.0,0 -1995-10-09,36.561625214899074,36.58126088902093,36.32599712543678,36.39472198486328,358200,0.0,0 -1995-10-10,36.02163803471245,36.37508010864258,35.98236669316466,36.37508010864258,360800,0.0,0 -1995-10-11,36.50273013275286,36.50273013275286,36.36528036893937,36.49291229248047,228100,0.0,0 -1995-10-12,36.52235131085238,36.738343711077846,36.52235131085238,36.71870803833008,199800,0.0,0 -1995-10-13,36.885625608440144,36.98380401037903,36.8365364074707,36.8365364074707,488100,0.0,0 -1995-10-16,36.72853398233668,36.79725885212453,36.65980911254883,36.65980911254883,443600,0.0,0 -1995-10-17,36.69907975862812,36.94452571742044,36.630354890166274,36.90525436401367,146000,0.0,0 -1995-10-18,37.08197712986792,37.13106632384444,36.89543819275712,37.01325225830078,228100,0.0,0 -1995-10-19,36.9936151554869,37.189971923828125,36.944525963401595,37.189971923828125,500600,0.0,0 -1995-10-20,37.160510013777895,37.18996352237534,36.96415328979492,36.96415328979492,748400,0.0,0 -1995-10-23,36.787434120777284,36.95433734470395,36.787434120777284,36.88561248779297,533000,0.0,0 -1995-10-24,36.934698817388266,36.973970161160075,36.836520457958734,36.92488098144531,172200,0.0,0 -1995-10-25,36.95433560696108,37.00342478816055,36.62052917480469,36.62052917480469,302700,0.0,0 -1995-10-26,36.67944526672363,36.7088987827301,35.992196559906006,36.2867317199707,606800,0.0,0 -1995-10-27,36.247470765569666,36.561641693115234,36.08056746031109,36.561641693115234,905800,0.0,0 -1995-10-30,36.64997750285341,36.816880695338945,36.64997750285341,36.797245025634766,488700,0.0,0 -1995-10-31,36.89543483648269,36.97397753970033,36.64017105102539,36.64017105102539,508200,0.0,0 -1995-11-01,36.620521687371244,36.9346923828125,36.591068184673624,36.9346923828125,415700,0.0,0 -1995-11-02,36.87579872868896,37.17033386230469,36.87579872868896,37.17033386230469,326000,0.0,0 -1995-11-03,37.21943664550781,37.22925448688093,37.111440390403466,37.21943664550781,615000,0.0,0 -1995-11-06,37.209614773412554,37.209614773412554,37.08198284938766,37.091800689697266,311200,0.0,0 -1995-11-07,37.072171250767965,37.072171250767965,36.83654304366563,36.9543571472168,358200,0.0,0 -1995-11-08,37.003433469598576,37.30778646444006,37.003433469598576,37.288150787353516,357200,0.0,0 -1995-11-09,37.43542361384549,37.43542361384549,37.24888465537104,37.42560577392578,503700,0.0,0 -1995-11-10,37.21942497013122,37.455053089171884,37.20960713183786,37.40596389770508,795600,0.0,0 -1995-11-13,37.337238075228285,37.48450564586421,37.26851320893152,37.36669158935547,818500,0.0,0 -1995-11-14,37.297952094553516,37.37649476808771,37.12123107910156,37.12123107910156,341800,0.0,0 -1995-11-15,37.16051723483221,37.504141568575704,37.1408815586183,37.49432373046875,584700,0.0,0 -1995-11-16,37.49432208240032,37.73976802428563,37.48450424472491,37.700496673583984,577700,0.0,0 -1995-11-17,37.75940656810535,37.82813143705406,37.710317375999125,37.81831359863281,267000,0.0,0 -1995-11-20,37.87721582345027,37.88703366062587,37.61213421970917,37.621952056884766,448800,0.0,0 -1995-11-21,37.661241207967116,37.92632293701172,37.651423366150645,37.92632293701172,119200,0.0,0 -1995-11-22,37.89683981642603,37.93611115302336,37.80847930908203,37.80847930908203,351600,0.0,0 -1995-11-24,37.847774019515505,37.906681060791016,37.81832049887775,37.906681060791016,62400,0.0,0 -1995-11-27,37.98522497519874,38.10303906144903,37.916500091552734,37.916500091552734,273000,0.0,0 -1995-11-28,37.88703824433491,38.31902313232422,37.79867769906437,38.31902313232422,479000,0.0,0 -1995-11-29,38.387745138870834,38.387745138870834,38.23065973676804,38.35829162597656,549200,0.0,0 -1995-11-30,38.358299980535456,38.45647837823327,38.2306680635283,38.26993942260742,286200,0.0,0 -1995-12-01,38.31902313232422,38.377930162504576,38.23066258705368,38.31902313232422,465200,0.0,0 -1995-12-04,38.407364806897185,38.790260314941406,38.35827563919921,38.790260314941406,631700,0.0,0 -1995-12-05,38.75101230190662,39.08481884314422,38.72155878356212,39.04554748535156,567700,0.0,0 -1995-12-06,39.143717526073615,39.29098508636735,38.957178616368225,39.1338996887207,272800,0.0,0 -1995-12-07,39.08480831978451,39.13389750380835,38.8982694204939,38.9277229309082,289700,0.0,0 -1995-12-08,39.09463023803772,39.10444807586747,38.80991294097517,39.05535888671875,296900,0.0,0 -1995-12-11,39.13389518078934,39.300798396562904,39.055352491013544,39.22225570678711,186500,0.0,0 -1995-12-12,39.04552795980972,39.18297764334941,39.04552795980972,39.104434967041016,299400,0.0,0 -1995-12-13,39.153527326450615,39.39897320989125,39.153527326450615,39.349884033203125,390700,0.0,0 -1995-12-14,39.38917426842485,39.45789914875361,38.967007146405344,39.065185546875,395000,0.0,0 -1995-12-15,39.118993352228514,39.118993352228514,38.94117974608202,39.0794792175293,416700,0.382,0 -1995-12-18,38.733728508113586,38.733728508113586,38.31883011552476,38.32870864868164,862300,0.0,0 -1995-12-19,38.34847128181487,38.7831268038138,38.29907860886044,38.733734130859375,1022600,0.0,0 -1995-12-20,38.85226397203656,38.89177809761198,38.35833740234375,38.35833740234375,1349800,0.0,0 -1995-12-21,38.58555143269825,38.674458233234425,38.40773783162591,38.55591583251953,857600,0.0,0 -1995-12-22,38.76337506292059,38.80288920671562,38.65471116748427,38.6942253112793,332800,0.0,0 -1995-12-26,38.85227281582065,38.90166548403298,38.773244546680914,38.88190841674805,432200,0.0,0 -1995-12-27,38.98069067927381,38.98069067927381,38.792998554867786,38.86214828491211,151800,0.0,0 -1995-12-28,38.783148193359374,38.980718994140624,38.723876953125,38.822662353515625,256200,0.0,0 -1995-12-29,38.86216507248836,38.901679221011484,38.72386555265744,38.87204360961914,339200,0.0,0 -1996-01-02,38.82262013382368,39.28691101074219,38.78310601663913,39.28691101074219,514400,0.0,0 -1996-01-03,39.41535643612968,39.514141790606196,39.198028656281345,39.395599365234375,610300,0.0,0 -1996-01-04,39.44499880730351,39.59317686443087,38.704108521666704,39.02022171020508,1129700,0.0,0 -1996-01-05,38.76337516471131,39.03997417200283,38.674468340939036,38.94118881225586,302400,0.0,0 -1996-01-08,39.079492190584915,39.13876341230977,39.030099505814206,39.08937072753906,179900,0.0,0 -1996-01-09,39.20790828509636,39.23754389226574,38.32871860573793,38.417625427246094,415500,0.0,0 -1996-01-10,38.36822326087653,38.44725152711933,37.70636153109314,37.91381072998047,787700,0.0,0 -1996-01-11,37.97309423771216,38.141029357910156,37.795280581031925,38.141029357910156,513200,0.0,0 -1996-01-12,38.23981316909097,38.249691705171855,37.72612929288515,38.081756591796875,390400,0.0,0 -1996-01-15,38.0916228605488,38.22004378824256,37.8446595380608,38.002716064453125,154200,0.0,0 -1996-01-16,38.19041912703864,38.496653734627415,37.864427447992526,38.467018127441406,454600,0.0,0 -1996-01-17,38.378104382357236,38.64482479891416,38.22004783921239,38.34846878051758,407600,0.0,0 -1996-01-18,38.49663999897831,38.50651853118231,38.17064843624639,38.47688293457031,425600,0.0,0 -1996-01-19,38.47689223149637,38.83251947676822,38.43737809313283,38.733734130859375,169800,0.0,0 -1996-01-22,38.70409624604532,38.832517188158285,38.634946507984495,38.74361038208008,288200,0.0,0 -1996-01-23,38.72384804255239,38.83251190185547,38.64481978124106,38.83251190185547,362200,0.0,0 -1996-01-24,38.891786364031475,39.227656502811534,38.87202929704441,39.14862823486328,1506500,0.0,0 -1996-01-25,39.178261444640476,39.19801851042194,38.96093372104439,39.01032638549805,298400,0.0,0 -1996-01-26,38.98068951590708,39.36595228608457,38.93129685306381,39.346195220947266,726300,0.0,0 -1996-01-29,39.316580243693735,39.5042724609375,39.28694463044472,39.5042724609375,254800,0.0,0 -1996-01-30,39.58327279349813,39.91914283966208,39.53388013965049,39.84011459350586,272100,0.0,0 -1996-01-31,39.830262114167944,40.26491775231858,39.81050503970655,40.25503921508789,498000,0.0,0 -1996-02-01,40.215490935309305,40.40318298339844,40.18585534876891,40.40318298339844,373900,0.0,0 -1996-02-02,40.3834303292308,40.47233709854662,40.146345611055274,40.235252380371094,496200,0.0,0 -1996-02-05,40.16613397723689,40.62054670791886,40.10686275149577,40.561275482177734,295300,0.0,0 -1996-02-06,40.58101223530326,40.986032075042175,40.52174103924391,40.94651794433594,301600,0.0,0 -1996-02-07,40.93664565421489,41.18360900878906,40.897131517483025,41.18360900878906,585100,0.0,0 -1996-02-08,41.12434936961576,41.66766890248361,41.04532107392589,41.62815475463867,1526600,0.0,0 -1996-02-09,41.608392338330574,41.96401962327357,41.42070016016621,41.61827087402344,804600,0.0,0 -1996-02-12,41.69729853923245,42.122075567706034,41.65778439704886,41.934383392333984,626500,0.0,0 -1996-02-13,41.75657123479222,42.1615912065515,41.72693562710251,41.84547805786133,1045900,0.0,0 -1996-02-14,41.81583152801885,41.954130994447446,41.460204328631015,41.47996139526367,431400,0.0,0 -1996-02-15,41.39106437853135,41.66766337676497,41.17373659420493,41.22312927246094,889500,0.0,0 -1996-02-16,41.14411314596226,41.24289853166685,40.92678529741216,41.055206298828125,606100,0.0,0 -1996-02-20,40.73909147501281,40.857633933233025,40.38346410035218,40.650184631347656,492300,0.0,0 -1996-02-21,40.72921454053743,41.18362731494071,40.72921454053743,41.15399169921875,434000,0.0,0 -1996-02-22,41.381177036883926,41.93437491562957,41.351541436236836,41.80595397949219,721400,0.0,0 -1996-02-23,42.04303562833235,42.11218535798421,41.30214566777668,41.687408447265625,1430400,0.0,0 -1996-02-26,41.56886947338398,41.65777627596488,41.074942792378934,41.09469985961914,1408400,0.0,0 -1996-02-27,41.19349585230275,41.203374388478366,40.77859733292704,40.96628952026367,601000,0.0,0 -1996-02-28,41.292278822078266,41.5589992833692,40.778594970703125,40.778594970703125,865900,0.0,0 -1996-02-29,40.541513767727665,41.06507620186255,40.38345718383789,40.38345718383789,914300,0.0,0 -1996-03-01,40.86750190159857,41.02555847167969,40.21551855001397,41.02555847167969,1452600,0.0,0 -1996-03-04,41.114456275390154,41.50959761393307,40.976156806900136,41.26263427734375,652600,0.0,0 -1996-03-05,41.16386276947253,41.647911071777344,41.14410569590907,41.647911071777344,402000,0.0,0 -1996-03-06,41.58861744030151,41.70715981780356,41.28238296508789,41.28238296508789,624700,0.0,0 -1996-03-07,41.361431931995206,41.50960997808547,41.242889495122995,41.48985290527344,534200,0.0,0 -1996-03-08,40.581021658078896,41.01567719677302,39.198026762233944,40.146366119384766,2289900,0.0,0 -1996-03-11,39.9883165556681,40.66993558786699,39.869774115285686,40.61066436767578,1511400,0.0,0 -1996-03-12,40.343929256168934,40.49210725294722,39.770974335292884,40.29453659057617,1385300,0.0,0 -1996-03-13,40.561273196331626,40.73908686353425,40.33406684379494,40.57115173339844,1019300,0.0,0 -1996-03-14,40.630419966264206,40.976168738162876,40.610662893584276,40.74896240234375,725600,0.0,0 -1996-03-15,40.68188323379725,40.850564213059336,40.48343502290068,40.72157287597656,869200,0.285,0 -1996-03-18,41.09862473807266,41.50544357299805,41.00932304260123,41.50544357299805,917600,0.0,0 -1996-03-19,41.872560823711986,41.872560823711986,41.27721635702414,41.41613006591797,858300,0.0,0 -1996-03-20,41.614583971403746,41.614583971403746,41.04900664990399,41.36652374267578,744300,0.0,0 -1996-03-21,41.41615110316165,41.43599592879805,41.12840113143389,41.26731491088867,650800,0.0,0 -1996-03-22,41.2871364758169,41.48558462037742,41.23752443967677,41.37643814086914,344500,0.0,0 -1996-03-25,41.75350039994012,41.793190039103564,41.18792304186108,41.29706954956055,802400,0.0,0 -1996-03-26,41.22760129624836,41.60465276418035,41.18791166804499,41.495506286621094,969400,0.0,0 -1996-03-27,41.55504759122046,41.58481481728867,41.078771974129104,41.11846160888672,809600,0.0,0 -1996-03-28,40.969623212630935,41.297062681271484,40.95970080449031,41.277217864990234,1001300,0.0,0 -1996-03-29,41.39628674419606,41.39628674419606,40.880321521114034,41.07876968383789,457700,0.0,0 -1996-04-01,41.27721864833303,41.564968489871895,41.14822734005699,41.55504608154297,773400,0.0,0 -1996-04-02,41.604681763226246,41.63444900512695,41.465767967689594,41.63444900512695,638800,0.0,0 -1996-04-03,41.4856127956234,41.66421624702767,41.38638865595437,41.63444900512695,288000,0.0,0 -1996-04-04,41.63443489538693,41.733659001429324,41.59474525296998,41.60466766357422,934900,0.0,0 -1996-04-08,40.56281541742419,40.890254974365234,40.38421202272907,40.890254974365234,2217200,0.0,0 -1996-04-09,41.049004349145186,41.049004349145186,40.65210800542611,40.73148727416992,1180900,0.0,0 -1996-04-10,40.662027665546965,40.84063100814819,39.84839021591913,40.00714874267578,939500,0.0,0 -1996-04-11,40.10636324393474,40.30481135498835,39.451484477457825,39.95752716064453,1276000,0.0,0 -1996-04-12,40.23537707363875,40.523126995990296,40.1163081402519,40.463592529296875,411300,0.0,0 -1996-04-15,40.67195016400823,40.85055350700705,40.54295886073131,40.800941467285156,484200,0.0,0 -1996-04-16,40.8803009270003,41.05890418347748,40.790999298761704,40.91999053955078,429700,0.0,0 -1996-04-17,40.88031232849625,40.99938119935595,40.54295052772711,40.820777893066406,525300,0.0,0 -1996-04-18,40.92001877201414,41.00932046186577,40.70172575237682,40.88032913208008,818600,0.0,0 -1996-04-19,41.078765850667516,41.18791232998088,40.91008492809231,40.97954177856445,885100,0.0,0 -1996-04-22,41.35660400830571,41.45582810621431,41.019242075416464,41.29706954956055,828900,0.0,0 -1996-04-23,41.227596346917984,41.455811681690335,41.13829469418098,41.42604446411133,225400,0.0,0 -1996-04-24,41.63442455805265,41.63442455805265,41.18791619172463,41.277217864990234,699000,0.0,0 -1996-04-25,41.36651613062494,41.634421128352656,41.11845594754371,41.46574020385742,475500,0.0,0 -1996-04-26,41.57489089820082,41.793183881437194,41.42605477326693,41.55504608154297,563300,0.0,0 -1996-04-29,41.3764427316223,41.634425348174375,41.3764427316223,41.55504608154297,219900,0.0,0 -1996-04-30,41.55503958972125,41.63441884395185,41.356591454144734,41.525272369384766,184400,0.0,0 -1996-05-01,41.515346558024675,41.78325151908267,41.45581212223401,41.61457061767578,561900,0.0,0 -1996-05-02,41.2871548709564,41.51537033888045,40.70173258367295,40.90018081665039,1299600,0.0,0 -1996-05-03,41.13830564738015,41.26729695790016,40.483426686278584,40.840633392333984,1329300,0.0,0 -1996-05-06,40.99938962617273,40.99938962617273,40.443734781287525,40.800941467285156,647500,0.0,0 -1996-05-07,40.800963282323146,40.800963282323146,40.49336847158579,40.63228225708008,582100,0.0,0 -1996-05-08,40.43383340702158,41.13832473754883,40.056781708992915,41.13832473754883,1694700,0.0,0 -1996-05-09,40.99941210754822,41.31692933587386,40.95972245400751,41.108558654785156,593400,0.0,0 -1996-05-10,41.515357971191406,41.65427169289234,41.31690979733294,41.515357971191406,925100,0.0,0 -1996-05-13,41.61458095068198,42.319071949131775,41.57489131696651,42.14046859741211,867500,0.0,0 -1996-05-14,42.30915869300605,42.507606904511704,42.26946905070491,42.398460388183594,632300,0.0,0 -1996-05-15,42.40838089632787,42.7457428407535,42.31907920515638,42.348846435546875,466100,0.0,0 -1996-05-16,42.11069382031387,42.507590086292325,42.09084900701495,42.438133239746094,514400,0.0,0 -1996-05-17,42.5472900390625,42.73581581115723,42.5472900390625,42.666358947753906,427700,0.0,0 -1996-05-20,42.96402015430488,43.02355459331778,42.537356674712484,42.954097747802734,788500,0.0,0 -1996-05-21,43.02357983065236,43.1029591292329,42.86482123349128,42.894588470458984,352700,0.0,0 -1996-05-22,42.9441811048471,43.301387786865234,42.79534498733954,43.301387786865234,1218100,0.0,0 -1996-05-23,43.36093678761889,43.460160899261034,42.88466105173657,43.122798919677734,967900,0.0,0 -1996-05-24,43.162493472959426,43.390708955690016,43.142648648374156,43.29148483276367,659100,0.0,0 -1996-05-28,43.42046242263699,43.42046242263699,42.74573860071301,42.85488510131836,456400,0.0,0 -1996-05-29,42.94417100741869,42.98386062942185,42.42820592137761,42.56711959838867,649600,0.0,0 -1996-05-30,42.507588275067214,43.00370858640087,42.38851940034714,42.78541564941406,895800,0.0,0 -1996-05-31,42.775509289714776,42.954112668795005,42.46791458129883,42.46791458129883,923500,0.0,0 -1996-06-03,42.47784002451617,42.616753773720376,42.358771096626846,42.58698654174805,503100,0.0,0 -1996-06-04,42.7854270952711,42.9243408196064,42.70604782422236,42.88465118408203,627100,0.0,0 -1996-06-05,42.904492981936954,43.3113117174271,42.815191308292775,43.26169967651367,428000,0.0,0 -1996-06-06,43.49982276112667,43.49982276112667,42.864788852205116,42.94416809082031,523300,0.0,0 -1996-06-07,42.03130684674557,42.954090495647215,42.03130684674557,42.94416809082031,1422800,0.0,0 -1996-06-10,42.88467717071236,43.013668564330885,42.73584094730637,42.8052978515625,548800,0.0,0 -1996-06-11,42.96403888428018,43.202176744146854,42.76559066772461,42.76559066772461,688700,0.0,0 -1996-06-12,42.90451133511666,43.01365787181562,42.616761374728505,42.68621826171875,1120600,0.0,0 -1996-06-13,42.78544238599053,42.844976860553594,42.43815795103931,42.68621826171875,1502000,0.0,0 -1996-06-14,42.70604705098185,42.70604705098185,42.36868515513302,42.507598876953125,1468200,0.0,0 -1996-06-17,42.527463934795236,42.68622254957749,42.368705320012985,42.47785186767578,1101000,0.0,0 -1996-06-18,42.44807517275853,42.567144107324474,42.12063560270219,42.130558013916016,718000,0.0,0 -1996-06-19,42.32901039436582,42.54730346250366,42.18017421154456,42.319087982177734,552100,0.0,0 -1996-06-20,42.358752039887435,42.49766572659589,42.0313126355032,42.2892951965332,1234400,0.0,0 -1996-06-21,42.49345725891855,42.65305709838867,42.37375737931597,42.65305709838867,573300,0.351,0 -1996-06-24,42.752787647906246,42.912387415140614,42.67298776428907,42.73283767700195,416500,0.0,0 -1996-06-25,42.85252376448526,42.88244871124817,42.6330741548906,42.68294906616211,454400,0.0,0 -1996-06-26,42.63308785292681,42.722862722060256,42.383713216445024,42.3936882019043,838200,0.0,0 -1996-06-27,42.39369018055569,42.802664603473985,42.234090405758295,42.69293975830078,1090500,0.0,0 -1996-06-28,42.87248858628367,43.091938271927745,42.75278875775054,42.84256362915039,1060800,0.0,0 -1996-07-01,42.95229355978504,43.2216182058868,42.89244363842909,43.21164321899414,471300,0.0,0 -1996-07-02,43.171762885375635,43.18173787680017,42.982238048309526,43.05206298828125,389400,0.0,0 -1996-07-03,43.03208991715657,43.091939833592114,42.812640223559576,42.96226501464844,308300,0.0,0 -1996-07-05,42.21414529956293,42.413645041054245,41.735345919983764,41.865020751953125,842900,0.0,0 -1996-07-08,41.89493042430239,42.12435504329262,41.57573095440294,41.695430755615234,942000,0.0,0 -1996-07-09,41.88497072610225,42.014645558071614,41.735345919983764,41.865020751953125,716300,0.0,0 -1996-07-10,41.85504572234224,42.03459548950195,41.44607125270067,42.03459548950195,1132300,0.0,0 -1996-07-11,41.855045938526466,41.93484583545407,40.77774733000386,41.18672180175781,1587400,0.0,0 -1996-07-12,41.25652514122578,41.436074815438076,40.90740077470187,41.21662521362305,1312000,0.0,0 -1996-07-15,41.316381187153574,41.316381187153574,39.99968338012695,39.99968338012695,1951300,0.0,0 -1996-07-16,40.1193876826348,40.53833703188161,38.54334013070633,40.09943771362305,4141000,0.0,0 -1996-07-17,40.69793161037749,40.85753134218289,40.21913241496128,40.57823181152344,1340500,0.0,0 -1996-07-18,40.6979188077318,41.20664279282845,40.428594345033574,41.136817932128906,1432500,0.0,0 -1996-07-19,41.037088967208234,41.09693887819589,40.61813959029458,40.837589263916016,1216000,0.0,0 -1996-07-22,40.558287676863785,40.69793746227354,40.22911318268363,40.53833770751953,519800,0.0,0 -1996-07-23,40.59818329625686,40.81763293569609,39.94980936155006,40.01963424682617,1479800,0.0,0 -1996-07-24,39.54083858129397,40.33883734176408,39.34133889117644,40.09943771362305,2463400,0.0,0 -1996-07-25,40.49844563124918,40.578245524118636,40.29894589907554,40.45854568481445,1989800,0.0,0 -1996-07-26,40.57824771763239,40.73784751199869,40.46852285900555,40.67799758911133,642300,0.0,0 -1996-07-29,40.618123541391434,40.6779734287314,40.179224367565,40.22909927368164,1297900,0.0,0 -1996-07-30,40.49844134767304,40.65804111653086,40.17924180995739,40.618141174316406,1868200,0.0,0 -1996-07-31,40.64807947643323,41.02712905191899,40.5483295881475,40.91740417480469,767100,0.0,0 -1996-08-01,40.957281307522344,41.7453049858697,40.897431407901024,41.595680236816406,1168600,0.0,0 -1996-08-02,42.134346803477115,42.513396324909905,41.97474700497909,42.493446350097656,1098500,0.0,0 -1996-08-05,42.503429311056486,42.513404300333896,42.11440472923738,42.24407958984375,710200,0.0,0 -1996-08-06,42.234087541727476,42.46351220244068,42.00466288101426,42.37373733520508,640000,0.0,0 -1996-08-07,42.53334585325515,42.61314575166651,42.214146259609706,42.48347091674805,917800,0.0,0 -1996-08-08,42.4934198445906,42.4934198445906,42.25402029617037,42.41361999511719,925100,0.0,0 -1996-08-09,42.56326138405037,42.62311129459743,42.17423696549449,42.27398681640625,648800,0.0,0 -1996-08-12,42.29394301063536,42.68296748644073,42.13434322568956,42.58321762084961,764200,0.0,0 -1996-08-13,42.503429311056486,42.53335427888872,42.134354707792205,42.24407958984375,805200,0.0,0 -1996-08-14,42.254038405474496,42.43358814374138,42.134338579963234,42.3936882019043,533800,0.0,0 -1996-08-15,42.28396740526256,42.53334206559084,42.2640174324363,42.31389236450195,632600,0.0,0 -1996-08-16,42.43358544112924,42.692935046552215,42.43358544112924,42.6729850769043,475100,0.0,0 -1996-08-19,42.682964772375946,42.72286471607529,42.533339983503396,42.69293975830078,436400,0.0,0 -1996-08-20,42.70290576416615,42.71288074799333,42.5632559905856,42.66300582885742,645700,0.0,0 -1996-08-21,42.55327807587114,42.65302790727262,42.37372837934848,42.51337814331055,266400,0.0,0 -1996-08-22,42.613153433699985,42.992203019486645,42.59320345550069,42.91240310668945,584800,0.0,0 -1996-08-23,42.83257379997666,42.90239867575678,42.543299314601875,42.68294906616211,757100,0.0,0 -1996-08-26,42.58321269345765,42.63308762048208,42.403662956169704,42.473487854003906,784700,0.0,0 -1996-08-27,42.59317959476198,42.67297946285521,42.45352982559883,42.633079528808594,389400,0.0,0 -1996-08-28,42.732841522095214,42.772741467493994,42.553291767800694,42.56326675415039,227600,0.0,0 -1996-08-29,42.51339597261869,42.51339597261869,41.894946758563705,42.14432144165039,680200,0.0,0 -1996-08-30,42.13434589698936,42.14432088418088,41.57574661426412,41.705421447753906,1500900,0.0,0 -1996-09-03,41.156794002300884,42.034592807972835,41.09694408373234,41.9747428894043,1782000,0.0,0 -1996-09-04,41.97472562001981,42.61312448876536,41.80515092050928,42.014625549316406,930200,0.0,0 -1996-09-05,41.8151450034547,41.98471978042482,41.50592041015625,41.50592041015625,616600,0.0,0 -1996-09-06,41.65554108099915,42.24406524857074,41.585716179761846,42.09444046020508,804900,0.0,0 -1996-09-09,42.25403593898657,42.60316040968169,42.184211044847544,42.59318542480469,719200,0.0,0 -1996-09-10,42.533338430560185,42.71288817065167,42.373738661589975,42.573238372802734,669900,0.0,0 -1996-09-11,42.49344536887077,42.85254490719926,42.393695497112866,42.812644958496094,713500,0.0,0 -1996-09-12,42.93233534121392,43.2415598755024,42.872485431351635,43.11188507080078,713300,0.0,0 -1996-09-13,43.610640999612315,43.81014072971118,43.49094116155299,43.770240783691406,2008800,0.0,0 -1996-09-16,43.830059775647854,44.14925911857473,43.77020989884906,43.9298095703125,1220200,0.0,0 -1996-09-17,43.96973554969756,44.039560447349075,43.560761149167256,43.83008575439453,604700,0.0,0 -1996-09-18,43.7702423659683,43.889942208354725,43.55079265492653,43.720367431640625,225500,0.0,0 -1996-09-19,43.65054627852006,43.91987094705755,43.5906963521784,43.88994598388672,410000,0.0,0 -1996-09-20,44.01553719509931,44.13585301431143,43.87516873935185,44.045616149902344,948400,0.352,0 -1996-09-23,43.935335551889,44.11580931727786,43.73480914590137,44.03559875488281,466800,0.0,0 -1996-09-24,43.99549095659423,44.43664902452726,43.83506984098222,44.025569915771484,1269800,0.0,0 -1996-09-25,44.236130219130935,44.236130219130935,43.955393218646876,44.05565643310547,1353300,0.0,0 -1996-09-26,44.11580931727786,44.396546285660534,43.88520395039209,44.03559875488281,773200,0.0,0 -1996-09-27,44.09576675651071,44.09576675651071,43.875187659502245,44.075714111328125,407600,0.0,0 -1996-09-30,44.13586195787662,44.31633572326549,44.00551979398467,44.03559875488281,578200,0.0,0 -1996-10-01,44.08574117007463,44.30632027076638,43.91529368317645,44.276241302490234,561400,0.0,0 -1996-10-02,44.436654060422114,44.6572331193863,44.37649613525006,44.577022552490234,609000,0.0,0 -1996-10-03,44.597072747310825,44.617125387934614,44.406572661384814,44.53691482543945,342200,0.0,0 -1996-10-04,44.71737202831185,45.13847732543945,44.597056229132534,45.13847732543945,754100,0.0,0 -1996-10-07,45.1184410939916,45.31896749885378,45.07833581301916,45.18862533569336,235100,0.0,0 -1996-10-08,45.208682246557665,45.359077064410485,44.9279452532324,45.008155822753906,386200,0.0,0 -1996-10-09,45.07833582754353,45.15854638951425,44.60709877596557,44.657230377197266,528800,0.0,0 -1996-10-10,44.65723059603816,44.82767804106121,44.51686211190154,44.566993713378906,1562200,0.0,0 -1996-10-11,44.73744613647461,45.118446350097656,44.73744613647461,45.118446350097656,331300,0.0,0 -1996-10-14,45.11846524580182,45.3590970604461,45.108438920191645,45.17862319946289,201600,0.0,0 -1996-10-15,45.63981506347656,45.63981506347656,44.8878409576416,45.118446350097656,776900,0.0,0 -1996-10-16,45.23876799254858,45.33903121948242,44.87782037558676,45.33903121948242,590100,0.0,0 -1996-10-17,45.4793994164856,45.579662642712414,45.268846641409276,45.459346771240234,792500,0.0,0 -1996-10-18,45.47939118757327,45.76012817021262,45.37912797948779,45.69997024536133,695800,0.0,0 -1996-10-21,45.74008332405023,45.96066241943144,45.519504228669014,45.63982009887695,879200,0.0,0 -1996-10-22,45.59969903051326,45.6097253495613,45.29890945907188,45.31896209716797,848900,0.0,0 -1996-10-23,45.2186985625716,45.48940917480873,45.038224821080185,45.469356536865234,735900,0.0,0 -1996-10-24,45.46936898469077,45.5495795584234,45.05828979431098,45.07834243774414,379300,0.0,0 -1996-10-25,45.06831474304199,45.27886749267578,44.99813049316406,45.118446350097656,568300,0.0,0 -1996-10-28,45.158537029633315,45.38914234750223,44.79758957557763,44.81764221191406,975400,0.0,0 -1996-10-29,44.95804403603897,45.28891278117485,44.72743854700487,45.17862319946289,815900,0.0,0 -1996-10-30,45.31896916934999,45.31896916934999,44.9780742685186,45.02820587158203,495400,0.0,0 -1996-10-31,45.088372834200996,45.4793994164856,45.03824122108759,45.459346771240234,726300,0.0,0 -1996-11-01,45.549566203062916,45.65985570960786,45.0883555393295,45.29890823364258,821300,0.0,0 -1996-11-04,45.35907684970343,45.599708557128906,45.25881363827614,45.599708557128906,1608400,0.0,0 -1996-11-05,45.7501077956386,46.07095010321266,45.740081473526914,45.86039733886719,764000,0.0,0 -1996-11-06,45.94061190434558,46.762770388884285,45.90050661241686,46.74271774291992,1665000,0.0,0 -1996-11-07,46.60234260191735,47.03347442891444,46.54218467256892,46.85300064086914,1446300,0.0,0 -1996-11-08,46.863016182525435,47.12370048307008,46.68254243599453,47.11367416381836,1355700,0.0,0 -1996-11-11,47.0033758786774,47.17382327414189,46.98332324391687,47.063533782958984,655900,0.0,0 -1996-11-12,47.19387493133544,47.22395388285319,46.85298014746772,46.92316436767578,719900,0.0,0 -1996-11-13,46.9732955100054,47.203900802797314,46.85297970507049,47.13371658325195,481900,0.0,0 -1996-11-14,46.96327861486001,47.444541931152344,46.94322597668116,47.444541931152344,558800,0.0,0 -1996-11-15,47.56488435808844,47.805516150793785,47.304199915991,47.50472640991211,2250900,0.0,0 -1996-11-18,47.59491235491947,47.64504392470557,47.314175564117335,47.51470184326172,1518200,0.0,0 -1996-11-19,47.57491474003755,47.86567818101986,47.50473046117975,47.85565185546875,1029300,0.0,0 -1996-11-20,47.84561133289955,48.136374687604935,47.68519017168279,47.935848236083984,730000,0.0,0 -1996-11-21,47.99598085765415,48.02605980951815,47.725270290878164,47.865638732910156,653000,0.0,0 -1996-11-22,47.93584744317248,48.28676872752952,47.93584744317248,48.236637115478516,965100,0.0,0 -1996-11-25,48.286765876857714,48.86829254231821,48.17647633685658,48.84823989868164,2058800,0.0,0 -1996-11-26,48.94849330550167,49.20917762052483,48.42712467545536,48.687808990478516,2861800,0.0,0 -1996-11-27,48.80812887479429,48.8883394399131,48.53741821751832,48.59757614135742,872000,0.0,0 -1996-11-29,48.76802696235868,48.90839546101679,48.67779007036419,48.778053283691406,1073400,0.0,0 -1996-12-02,48.7178927661213,48.848234936518416,48.37699785892885,48.79810333251953,1350600,0.0,0 -1996-12-03,48.80813433733273,49.13900295547817,47.96592330932617,47.96592330932617,1777800,0.0,0 -1996-12-04,48.04612465692058,48.166440494959616,47.544808665091274,48.096256256103516,2365100,0.0,0 -1996-12-05,48.02608123989807,48.216581353375744,47.82555480465841,47.96592330932617,1697700,0.0,0 -1996-12-06,47.00337582420561,47.965902291595484,46.622375764197116,47.68516540527344,3401800,0.0,0 -1996-12-09,47.92581317141201,48.39705024652841,47.85562892618191,48.38702392578125,1864600,0.0,0 -1996-12-10,48.48727490379243,48.55745913132067,48.1062748114963,48.15640640258789,1331600,0.0,0 -1996-12-11,47.24403003965964,47.885714658194914,47.043503596367366,47.715267181396484,1847900,0.0,0 -1996-12-12,47.98595398796929,48.04611189100477,46.80284856160482,46.92316436767578,2540200,0.0,0 -1996-12-13,46.883074052295214,47.21394262452056,46.46196859673567,47.043495178222656,1678300,0.0,0 -1996-12-16,47.16380863486176,47.284124473216,46.241387207479264,46.44191360473633,1831100,0.0,0 -1996-12-17,46.30155431404694,47.023449487414496,46.12108052070505,46.812896728515625,2023200,0.0,0 -1996-12-18,47.08359758123357,47.33425557517114,47.013413342931045,47.183860778808594,1666800,0.0,0 -1996-12-19,47.60495890058033,48.20653799367949,47.41445885443226,48.15640640258789,2269300,0.0,0 -1996-12-20,48.44345710133212,48.82632968241586,48.201642839595024,48.2620964050293,1543200,0.367,0 -1996-12-23,48.42328703039208,48.49381616256286,47.92958310519666,48.141170501708984,1263700,0.0,0 -1996-12-24,48.26208918698483,48.49382781982422,48.23186240878839,48.49382781982422,633000,0.0,0 -1996-12-26,48.644952298193864,48.89684206775784,48.60464993506363,48.866615295410156,1384300,0.0,0 -1996-12-27,48.86661326080021,49.02782270660903,48.685252634265275,48.927066802978516,410400,0.0,0 -1996-12-30,49.08827522002071,49.08827522002071,48.46358863060337,48.50389099121094,694100,0.0,0 -1996-12-31,48.54421079153738,48.60466435416694,47.61725616455078,47.61725616455078,1378100,0.0,0 -1997-01-02,47.95983372080824,47.95983372080824,46.9119718075805,47.7381706237793,2031900,0.0,0 -1997-01-03,47.959820623949476,48.44344906721619,47.7683843651564,48.42329788208008,2123200,0.0,0 -1997-01-06,48.42330079835368,48.64496384820049,47.91952113961092,48.000125885009766,1374100,0.0,0 -1997-01-07,48.00010754883116,48.66509644434393,47.79859576231214,48.58449172973633,939000,0.0,0 -1997-01-08,48.8464675839476,48.86661876694428,48.16132736206055,48.16132736206055,1802200,0.0,0 -1997-01-09,48.40314446920181,48.92707525862698,48.322539732367176,48.564353942871094,1415700,0.0,0 -1997-01-10,47.87921623643396,49.1688920946544,47.87921623643396,49.088287353515625,2369500,0.0,0 -1997-01-13,49.33007007061761,49.33007007061761,48.77591282921974,49.01772689819336,1364600,0.0,0 -1997-01-14,49.45098271991391,49.90438415071996,49.33007567169896,49.63234329223633,2111200,0.0,0 -1997-01-15,49.47115698237219,49.783500336028716,49.24949395719659,49.51145935058594,1583900,0.0,0 -1997-01-16,49.672695047032946,49.84398020236754,49.33012473636375,49.71299743652344,1308400,0.0,0 -1997-01-17,49.78351628290464,50.136162117735985,49.72306271121927,50.015254974365234,1604000,0.0,0 -1997-01-20,50.136148593219474,50.357811629604285,49.95478792708644,50.0756950378418,1889900,0.0,0 -1997-01-21,49.89433344614482,50.65000287434774,49.72304837575216,50.47871780395508,2785800,0.0,0 -1997-01-22,50.49887194729872,50.8414421081543,50.216755344241186,50.8414421081543,1201600,0.0,0 -1997-01-23,50.982507923408335,51.385531701458994,49.59207588913356,50.13615798950195,2601100,0.0,0 -1997-01-24,50.21675277610555,50.23690396100768,49.491310119628906,49.491310119628906,2176000,0.0,0 -1997-01-27,49.57191710279347,49.80365573965612,49.24949812976717,49.35025405883789,2108500,0.0,0 -1997-01-28,50.055543296888516,50.19660159120342,49.00768168197781,49.491310119628906,4376000,0.0,0 -1997-01-29,49.57191753387451,49.97494125366211,49.39055685997009,49.97494125366211,1122700,0.0,0 -1997-01-30,50.216776677757316,50.63995176212044,49.91450876035508,50.61980056762695,2126300,0.0,0 -1997-01-31,50.90189633724841,51.20416413022494,50.53917498567657,50.559326171875,3208100,0.0,0 -1997-02-03,50.76084244741541,50.871673981143395,50.529103785984184,50.71046447753906,755000,0.0,0 -1997-02-04,50.78098242881739,51.07317458961812,50.579470593782396,51.022796630859375,654100,0.0,0 -1997-02-05,51.09330752582515,51.24444134812596,49.73310312511792,50.06559753417969,2255400,0.0,0 -1997-02-06,50.15631042199819,50.42835147892747,49.914496149172166,50.39812469482422,2483100,0.0,0 -1997-02-07,50.821305534167166,51.1034222183378,50.15631620719353,51.08327102661133,2321000,0.0,0 -1997-02-10,51.1034273658792,51.28478810968555,50.56942073133827,50.599647521972656,1670000,0.0,0 -1997-02-11,50.80113325344296,51.18400573730469,50.37795840285895,51.18400573730469,1664300,0.0,0 -1997-02-12,51.18401166074764,52.00013468132256,51.11348251082142,51.909454345703125,2675400,0.0,0 -1997-02-13,52.11096488495576,52.594593329363704,52.030360144221106,52.47368621826172,1104800,0.0,0 -1997-02-14,52.35276412963867,52.534124744406476,52.17140351487087,52.35276412963867,1112900,0.0,0 -1997-02-18,52.45353428789677,52.83640680094712,52.070661774846435,52.796104431152344,833100,0.0,0 -1997-02-19,52.65503833781745,52.87670133885687,52.33261942721467,52.443450927734375,648100,0.0,0 -1997-02-20,52.25202281778307,52.46361026073977,51.6877896365652,51.80869674682617,1193900,0.0,0 -1997-02-21,51.849016242969086,52.08075494751403,51.677731113522825,51.82886505126953,1844400,0.0,0 -1997-02-24,51.56687451453305,52.47367770060338,51.56687451453305,52.443450927734375,787300,0.0,0 -1997-02-25,52.49384024157408,52.574444986666705,52.15127007493041,52.4837646484375,1653900,0.0,0 -1997-02-26,52.4333792572199,52.51398399089741,51.34521535257352,51.96990203857422,1597800,0.0,0 -1997-02-27,52.11095529521363,52.11095529521363,51.18400094734827,51.19407653808594,1813100,0.0,0 -1997-02-28,51.103391771583844,51.506415365996965,50.982484693259906,51.042938232421875,2961200,0.0,0 -1997-03-03,50.78101178337546,51.425850028243715,50.74070939307119,51.38554763793945,1210400,0.0,0 -1997-03-04,51.52658757501597,51.667645890630006,51.00265668844951,51.10341262817383,1478700,0.0,0 -1997-03-05,51.40566890283166,51.96990203857422,51.23438384376695,51.96990203857422,1254800,0.0,0 -1997-03-06,51.990059660675,52.171420333909914,51.506431198715234,51.667640686035156,1528500,0.0,0 -1997-03-07,51.86914196685331,52.332619148375315,51.748234876021485,52.131107330322266,1859300,0.0,0 -1997-03-10,52.1915729408877,52.675201416015625,51.93968311009191,52.675201416015625,1074900,0.0,0 -1997-03-11,52.71551598182091,52.74574276850773,52.393096923828125,52.393096923828125,624600,0.0,0 -1997-03-12,52.43337934832264,52.453530531777034,51.77846588605497,51.92959976196289,1055600,0.0,0 -1997-03-13,51.748240938889595,51.88929922805323,50.98249594057269,51.12355422973633,2514100,0.0,0 -1997-03-14,51.35532084521125,51.60721078461292,51.10343090580959,51.38554763793945,1642700,0.0,0 -1997-03-17,51.10341726936397,51.60719701373862,50.57948633521434,51.52659225463867,3013500,0.0,0 -1997-03-18,51.58703470918166,51.65756385819812,50.76083610641742,50.9724235534668,1352500,0.0,0 -1997-03-19,50.8414383857603,51.264613259363536,50.33765877432788,50.8011360168457,1510000,0.0,0 -1997-03-20,50.780987351705015,50.94219683536122,50.216754158908294,50.5391731262207,1808200,0.0,0 -1997-03-21,50.93499348249093,50.97545018899013,50.71248159674534,50.77316665649414,2810600,0.299,0 -1997-03-24,50.813634846205794,51.511513191028286,50.550666194533555,51.481170654296875,2145600,0.0,0 -1997-03-25,51.359787308223666,51.76435436067127,50.833850140041775,50.97544860839844,2125800,0.0,0 -1997-03-26,51.177742987082254,51.56208176840817,50.93500270413957,51.19797134399414,1335300,0.0,0 -1997-03-27,51.380017670718104,51.380017670718104,49.29649726911024,49.8426628112793,2898500,0.0,0 -1997-03-31,49.782003271441354,49.92360181792656,48.70989999091052,48.79081344604492,4270700,0.0,0 -1997-04-01,48.70986769388436,49.3167182050208,48.57838341647147,49.10432052612305,3210900,0.0,0 -1997-04-02,48.952612620872145,49.154896144098885,48.183935232610516,48.22439193725586,2672700,0.0,0 -1997-04-03,48.18395556854515,48.62897950746539,48.022128681665066,48.48738098144531,2284200,0.0,0 -1997-04-04,48.22440740823451,49.10434101656429,48.00189546130054,49.0942268371582,3706700,0.0,0 -1997-04-07,49.31672329651167,49.59992023094611,49.286380767822266,49.286380767822266,2596200,0.0,0 -1997-04-08,49.27628184647315,49.7010773796324,49.094226617976325,49.6403923034668,1822700,0.0,0 -1997-04-09,49.84266761648136,49.873010149527104,49.094218468019584,49.235816955566406,2453200,0.0,0 -1997-04-10,49.25605939884775,49.54937063551441,48.993090703905246,49.053775787353516,1996500,0.0,0 -1997-04-11,48.588504943977625,48.750331771434674,47.49617385864258,47.49617385864258,4221600,0.0,0 -1997-04-14,47.7288250523371,48.194077426231466,47.45574213722519,48.133392333984375,3988500,0.0,0 -1997-04-15,48.70987359669583,48.962728006977684,48.22439312895468,48.952613830566406,2760400,0.0,0 -1997-04-16,48.79079543842989,49.58981551298129,48.70988201315886,49.51901626586914,2273300,0.0,0 -1997-04-17,49.51903320512779,49.842687016926014,49.195379393329574,49.316749572753906,1386000,0.0,0 -1997-04-18,49.721301802031846,49.83255776619425,49.357191373864,49.55947494506836,1702100,0.0,0 -1997-04-21,49.6808407735707,49.78198255038986,48.8514782036536,49.235816955566406,2809400,0.0,0 -1997-04-22,49.26614941774301,50.318023681640625,49.19535018844221,50.318023681640625,3215000,0.0,0 -1997-04-23,50.26744575194087,50.51018593263435,49.96402052607402,50.368587493896484,2047700,0.0,0 -1997-04-24,50.52030492141677,50.67201754880841,49.761741784458565,50.11573791503906,2689900,0.0,0 -1997-04-25,49.88313535205098,49.97416297130655,49.46845397544228,49.53925323486328,1606200,0.0,0 -1997-04-28,49.519014166474484,50.36860509580126,49.43810074463384,50.024723052978516,1666500,0.0,0 -1997-04-29,50.87431820548314,51.64299577677871,50.68214881265925,51.6025390625,3197400,0.0,0 -1997-04-30,51.29910649817947,52.22961079585938,51.27887814388208,51.845272064208984,3372200,0.0,0 -1997-05-01,51.92619399279356,52.128477568924424,51.33957162201404,51.78459548950195,2149500,0.0,0 -1997-05-02,51.96663130894132,52.86679288669448,51.82503285850824,52.71508026123047,1448300,0.0,0 -1997-05-05,52.8567014376799,54.09063132198854,52.62407531194958,53.969261169433594,3636200,0.0,0 -1997-05-06,53.70630194885071,54.02995574590592,53.40287651411143,53.92881393432617,1721100,0.0,0 -1997-05-07,53.72653085907544,53.72653085907544,52.69488437044108,52.75556945800781,2327200,0.0,0 -1997-05-08,52.63420159019592,53.86813175814441,52.55328813655996,53.11968231201172,2923700,0.0,0 -1997-05-09,53.70627269802584,53.8074144545193,52.8566819434808,53.483760833740234,2558200,0.0,0 -1997-05-12,53.686087281931016,54.53567871593294,53.645630546978545,54.37385177612305,2357900,0.0,0 -1997-05-13,54.33336900177401,54.434510790682744,53.73663244721246,54.15131378173828,1195100,0.0,0 -1997-05-14,54.52553950060134,54.697480545214624,54.00971636676148,54.25245666503906,2772000,0.0,0 -1997-05-15,54.252436319986984,54.758145085087534,54.060266989248774,54.616546630859375,884100,0.0,0 -1997-05-16,54.454705972130746,54.576076044876956,53.72648553565352,53.86808395385742,1934200,0.0,0 -1997-05-19,53.92881500404098,54.313153895667675,53.76698810230342,54.02995681762695,1375800,0.0,0 -1997-05-20,53.908561046062644,54.818836936146255,53.56467904314217,54.67723846435547,1756400,0.0,0 -1997-05-21,54.81886165337426,55.01103109459458,54.15132569966159,54.55589294433594,1208000,0.0,0 -1997-05-22,54.61659218583788,54.67727728826659,54.09065463145574,54.37385177612305,907600,0.0,0 -1997-05-23,54.616548036940195,55.1627135173096,54.474949579066646,54.8795166015625,644400,0.0,0 -1997-05-27,54.61654747110106,55.3649964549643,54.54574824289778,55.102027893066406,1531000,0.0,0 -1997-05-28,55.10202549093466,55.31442316628518,54.7075726652837,55.09191131591797,716700,0.0,0 -1997-05-29,55.081815746022066,55.182957530351885,54.69747696556873,54.76827621459961,1282700,0.0,0 -1997-05-30,53.86811436504399,55.385241130863854,53.8074292944112,55.12227249145508,2143300,0.0,0 -1997-06-02,55.24362692180877,55.34476867743273,54.839059899312915,54.8795166015625,1479100,0.0,0 -1997-06-03,54.63678274352169,55.3043184082889,54.596326036566104,54.69746780395508,1562100,0.0,0 -1997-06-04,54.71769701503286,54.85929549159672,54.42438588500773,54.636783599853516,1063100,0.0,0 -1997-06-05,54.75813309357466,55.223385055581396,54.64687718961653,54.839046478271484,1180800,0.0,0 -1997-06-06,54.758151035060415,55.95162385037943,54.758151035060415,55.91116714477539,1511100,0.0,0 -1997-06-09,55.951618614773516,56.234815527501944,55.890933562045994,56.194358825683594,1823400,0.0,0 -1997-06-10,56.21461648220608,56.578726988388055,55.99210450620598,56.366329193115234,1217500,0.0,0 -1997-06-11,56.31571329446663,56.57868178326982,56.20445739535759,56.49776840209961,1673800,0.0,0 -1997-06-12,56.88211101375214,57.61033149614726,56.679827546420164,57.59010314941406,4273300,0.0,0 -1997-06-13,57.650808057316674,58.25765866844632,57.54966628879506,58.07560348510742,2132900,0.0,0 -1997-06-16,58.09584426879883,58.25767113305732,57.91378904650803,58.09584426879883,800400,0.0,0 -1997-06-17,57.8935605771372,58.409383705969134,57.569906849242656,58.014930725097656,2048100,0.0,0 -1997-06-18,57.69124055492702,58.01489407837683,57.59009882884896,57.8126106262207,1971900,0.0,0 -1997-06-19,58.00478820140228,58.58129612249729,57.8530755905878,58.40935516357422,2029900,0.0,0 -1997-06-20,58.44389719874078,58.70788978511452,58.159597490338285,58.210365295410156,1396900,0.35,0 -1997-06-23,58.09868244038849,58.42359642817116,56.75841224078498,56.79902648925781,3991500,0.0,0 -1997-06-24,57.347327313496315,58.403297929750494,57.184870295611056,58.240840911865234,4895100,0.0,0 -1997-06-25,58.149431343828695,58.646955725852024,57.144229020965234,57.83467102050781,4708900,0.0,0 -1997-06-26,57.73314862194075,58.240826678764,56.98178509784233,57.550384521484375,2569900,0.0,0 -1997-06-27,57.81436835827015,58.30173921903533,57.631604285483206,57.77375411987305,2617900,0.0,0 -1997-06-30,57.77375949500557,58.13928767458733,57.103624499105685,57.38792419433594,2384900,0.0,0 -1997-07-01,57.50976741826797,58.2002095412274,57.43869249384568,58.05805969238281,1749000,0.0,0 -1997-07-02,58.20021958689154,59.01250457763671,57.97684121443662,59.01250457763672,1961800,0.0,0 -1997-07-03,59.70294058929879,59.88570469314358,59.43894799485631,59.82478332519531,2539100,0.0,0 -1997-07-07,60.027837965223526,60.10906643337674,59.073403464423286,59.215553283691406,1158600,0.0,0 -1997-07-08,59.29679172787099,59.9060053415135,59.25617748696149,59.834930419921875,3396500,0.0,0 -1997-07-09,59.98724220710498,60.027856453690696,58.50482220672629,59.174957275390625,5390300,0.0,0 -1997-07-10,59.215594032008696,59.68265804529271,58.79929784625555,59.43897247314453,2072200,0.0,0 -1997-07-11,59.52018605311143,59.9060214454721,59.378036171715394,59.64202880859375,2258900,0.0,0 -1997-07-14,59.7130941506235,59.98724030639069,59.27649101366094,59.82478332519531,3186400,0.0,0 -1997-07-15,59.98725227373994,60.28170561089946,59.43895985282221,60.12940216064453,2983100,0.0,0 -1997-07-16,60.5152214050293,61.14474216461182,60.36291799545288,60.921363830566406,2621300,0.0,0 -1997-07-17,60.840119456126665,60.9619621519667,60.29182732484649,60.61674118041992,1794800,0.0,0 -1997-07-18,60.4441197219214,60.57611595178617,59.17492520399092,59.32722854614258,3961900,0.0,0 -1997-07-21,59.31710285131936,59.52017406957105,58.931267536641144,59.33740997314453,3810300,0.0,0 -1997-07-22,59.581107613801514,60.95183861718652,59.540493361849364,60.911224365234375,4243400,0.0,0 -1997-07-23,61.04319190406227,61.398566441095234,60.77919939083778,60.86042785644531,3204300,0.0,0 -1997-07-24,61.0432016454397,61.25642640168625,60.23091685973857,61.144737243652344,4152700,0.0,0 -1997-07-25,61.44934319102832,61.61180014592859,60.840129610152296,61.104122161865234,2364800,0.0,0 -1997-07-28,61.246278804047066,61.44935002024086,60.75890788518197,61.063514709472656,2794700,0.0,0 -1997-07-29,60.84012917078288,61.3884213896117,60.70813289587965,61.266578674316406,2737100,0.0,0 -1997-07-30,61.40871709579333,62.13977325169563,61.34779574946813,61.997623443603516,4839800,0.0,0 -1997-07-31,61.99765844126217,62.403800979364114,61.753972918401004,61.936737060546875,2138700,0.0,0 -1997-08-01,62.058559475485,62.2007093172155,60.961974982135466,61.693031311035156,7077700,0.0,0 -1997-08-04,61.59150285902418,62.089027362831004,61.34781738777186,61.85549545288086,2339500,0.0,0 -1997-08-05,61.79457111183427,62.180406422752725,61.67272838207055,61.8961067199707,1466700,0.0,0 -1997-08-06,62.01797313547429,62.72872266387691,61.774287582879104,62.40380859375,2478200,0.0,0 -1997-08-07,62.70840788294058,62.789636390560965,61.8148942991163,61.936737060546875,3641900,0.0,0 -1997-08-08,61.286867662605985,61.571167247521984,60.04813375690056,60.67765426635742,7113100,0.0,0 -1997-08-11,60.92134900267338,61.26656998035519,60.190292814641296,61.124420166015625,6355900,0.0,0 -1997-08-12,61.22595830192282,61.43918303232753,60.08875973976439,60.149681091308594,6132500,0.0,0 -1997-08-13,60.880762484531424,60.98229811242424,59.43895656845346,59.966941833496094,6982300,0.0,0 -1997-08-14,60.49490676910771,60.63705660038792,59.6013935439178,60.19029998779297,3462700,0.0,0 -1997-08-15,59.86540342729929,59.86540342729929,58.24083345640921,58.342369079589844,4907100,0.0,0 -1997-08-18,58.728208142476376,59.64202880859375,58.05807298732364,59.64202880859375,5638900,0.0,0 -1997-08-19,59.92629711750741,60.373053653117424,59.47954058189739,60.33243942260742,3802800,0.0,0 -1997-08-20,60.3933928208895,61.28690636632297,60.18016799754742,61.24629211425781,3564600,0.0,0 -1997-08-21,61.165070342245116,61.24629885531582,59.845107004846064,60.170021057128906,5392600,0.0,0 -1997-08-22,59.13432523223856,60.2613702358063,58.85002559169895,60.149681091308594,8087800,0.0,0 -1997-08-25,60.29185500705658,60.697997512998356,59.682641248143916,59.926326751708984,3888000,0.0,0 -1997-08-26,59.784174985221405,60.14970322901692,58.9414293120262,59.042964935302734,4290000,0.0,0 -1997-08-27,59.134334309895834,59.763855039156404,58.74849902422,59.3983268737793,5484300,0.0,0 -1997-08-28,59.25618802034033,59.743558997889394,58.48451730588765,58.49467086791992,4287900,0.0,0 -1997-08-29,58.56574582723826,59.205420235545475,58.30175321428607,58.72820281982422,2652300,0.0,0 -1997-09-02,58.9312787729865,60.66753802008862,58.870357395895205,60.63707733154297,7294000,0.0,0 -1997-09-03,60.626913256275934,61.08382350523463,60.27153861819694,60.31215286254883,2812500,0.0,0 -1997-09-04,60.47460826466657,60.90105781925287,60.271537048196905,60.6979866027832,2473700,0.0,0 -1997-09-05,61.06349484053779,61.36810156571507,60.169981780017785,60.52535629272461,3663300,0.0,0 -1997-09-08,60.901064486461394,61.08382860129239,60.63707187614995,60.78937530517578,803500,0.0,0 -1997-09-09,60.576161575954224,61.2666039137291,60.37309030013809,60.819847106933594,1885200,0.0,0 -1997-09-10,60.51521415723455,60.75889958337107,59.5607795715332,59.5607795715332,3623700,0.0,0 -1997-09-11,59.642026631941604,59.723255132632026,58.64697749848395,59.25619125366211,7055900,0.0,0 -1997-09-12,59.78415613801644,60.41367680387191,59.09371411740076,60.21060562133789,6708000,0.0,0 -1997-09-15,60.21059013057399,60.63703950418008,59.905983435141074,60.10905456542969,2060500,0.0,0 -1997-09-16,60.63704438483,61.91639260862246,60.45428035285965,61.611785888671875,6979000,0.0,0 -1997-09-17,61.977313952612576,62.05854241126607,61.40871474203815,61.611785888671875,2220000,0.0,0 -1997-09-18,61.73365503754974,62.6271684657248,61.71334791418212,61.87580490112305,5045400,0.0,0 -1997-09-19,61.73588565900427,62.19447180206389,61.57283280813862,61.980464935302734,1566400,0.348,0 -1997-09-22,62.286186861945104,62.7447729890373,62.10275241110822,62.32695007324219,3259000,0.0,0 -1997-09-23,62.32697620467037,62.418693468542514,61.797054235631315,62.04163360595703,1872800,0.0,0 -1997-09-24,62.20469788345685,62.6836659045123,61.49134125635299,61.5321044921875,2793100,0.0,0 -1997-09-25,61.470937747968044,61.79704351851429,61.06330553478523,61.104068756103516,6327800,0.0,0 -1997-09-26,61.59325058382156,61.83783000374408,61.43019763720655,61.61363220214844,3995800,0.0,0 -1997-09-29,61.634003805458,62.326978715969105,61.409806040292644,62.204689025878906,2065000,0.0,0 -1997-09-30,61.960130299953434,62.40852597975573,61.55249786376953,61.55249786376953,4137600,0.0,0 -1997-10-01,62.12319165398093,62.490060896032,61.81746728560504,62.36777114868164,3567500,0.0,0 -1997-10-02,62.306601072155814,62.73461501475159,62.16392975795723,62.7142333984375,2577500,0.0,0 -1997-10-03,63.57023729279626,63.7536717703965,62.18428790648329,63.03012466430664,6499900,0.0,0 -1997-10-06,63.46835677615324,63.66198214204067,63.20339574914939,63.447975158691406,2272100,0.0,0 -1997-10-07,63.61101050470985,64.24284047127378,63.3970035805511,64.03902435302734,1832800,0.0,0 -1997-10-08,64.15111236388866,64.16130316807673,63.09126872832958,63.59061813354492,4439400,0.0,0 -1997-10-09,63.12185284408123,63.661965566189124,62.754983825290964,63.366432189941406,3607600,0.0,0 -1997-10-10,62.81612584021783,63.25433048186763,62.77536261773878,63.1829948425293,2858100,0.0,0 -1997-10-13,63.48871613409379,63.621196601147275,63.081083927775374,63.244136810302734,1760300,0.0,0 -1997-10-14,63.570239060932835,63.59062067012197,62.73459308417802,63.2645149230957,2235700,0.0,0 -1997-10-15,62.81613248850324,63.30529121002306,62.795750875106584,63.121856689453125,2601700,0.0,0 -1997-10-16,63.46834008524737,63.590629757858636,61.96010078970842,62.12315368652344,9488100,0.0,0 -1997-10-17,61.97027020933299,62.204658667615284,60.65565668244531,61.491302490234375,8151300,0.0,0 -1997-10-20,61.85823053472183,62.44929764691521,61.40983479443719,62.36777114868164,3636400,0.0,0 -1997-10-21,62.754981445566855,63.590627512234036,62.6326917772741,63.58043670654297,5225400,0.0,0 -1997-10-22,63.48872252763107,63.5192949461837,62.95880060605212,63.16261672973633,4485200,0.0,0 -1997-10-23,61.91932678222656,62.449248604589265,61.491313002625915,61.91932678222656,8054100,0.0,0 -1997-10-24,62.7142465545776,62.7142465545776,61.09390771769463,61.30791473388672,6778700,0.0,0 -1997-10-27,60.665863005662054,61.26712050899383,56.64049497488152,56.86469268798828,10840700,0.0,0 -1997-10-28,55.03037005753809,60.57417030037156,55.03037005753809,60.146156311035156,19548000,0.0,0 -1997-10-29,60.3295768818157,61.14484143427267,59.534693943170154,59.983089447021484,10134400,0.0,0 -1997-10-30,59.106655664291544,60.370315199183295,58.535970713050105,58.658260345458984,9772900,0.0,0 -1997-10-31,59.88119372946019,60.329589325800605,58.98440253677938,60.044246673583984,7072700,0.0,0 -1997-11-03,60.77799259855392,61.55249418096339,60.57417639265669,61.30791473388672,5548500,0.0,0 -1997-11-04,61.22638825152782,61.59325742214284,60.83913746032309,61.30791473388672,3455700,0.0,0 -1997-11-05,61.430184664514535,62.14354115531016,61.205986910264485,61.51171112060547,4774900,0.0,0 -1997-11-06,61.32826725972307,61.532083368927864,60.98177987407492,61.277313232421875,3679800,0.0,0 -1997-11-07,60.248029758886915,60.81871474983713,59.6365815542974,60.614898681640625,10606800,0.0,0 -1997-11-10,61.063315245714826,61.20598654301789,60.003471322892004,60.248050689697266,4347900,0.0,0 -1997-11-11,60.451859490630355,60.69643882774686,60.02384565067646,60.26842498779297,3212400,0.0,0 -1997-11-12,59.758892217393736,60.472248707028385,58.943627657811284,59.02515411376953,6775300,0.0,0 -1997-11-13,59.65698586393166,60.105381384603504,58.76019482258796,59.88118362426758,8589600,0.0,0 -1997-11-14,60.20725646572997,60.91042178328843,59.74867038906141,60.696414947509766,5827900,0.0,0 -1997-11-17,61.55244484538887,62.16389297299207,61.32824719860103,61.817405700683594,5149900,0.0,0 -1997-11-18,61.837819522789324,62.02125405664071,61.236561884054225,61.4301872253418,3433600,0.0,0 -1997-11-19,61.10405959906693,62.00085033367632,60.492611370924166,61.73588943481445,4387900,0.0,0 -1997-11-20,62.16393292434816,62.95881600108573,62.14355130699592,62.6734733581543,4822700,0.0,0 -1997-11-21,63.0199330697072,63.142222719907146,62.388103210340795,63.10145950317383,5436500,0.0,0 -1997-11-24,62.61231753700658,62.83651528860394,61.71552653061717,61.960105895996094,4337200,0.0,0 -1997-11-25,62.36773303174597,62.49002270435724,61.73590305658776,62.12315368652344,4525000,0.0,0 -1997-11-26,62.53078112042258,62.602116757293985,62.163912130798195,62.306583404541016,2681100,0.0,0 -1997-11-28,62.44929764691521,62.77540363984949,62.34738952412325,62.36777114868164,1564700,0.0,0 -1997-12-01,62.75501181343324,63.977909088134766,62.63272208596309,63.977909088134766,4850900,0.0,0 -1997-12-02,63.71290778380173,63.90653306337503,63.42756526653583,63.59061813354492,1974900,0.0,0 -1997-12-03,63.67214743448698,64.26321410401327,63.18298881143074,63.77405548095703,3302500,0.0,0 -1997-12-04,64.24284307146714,64.38551436001417,63.50910501608236,63.712921142578125,2872500,0.0,0 -1997-12-05,63.50907986629484,64.56892330437164,63.34602702966764,64.52816009521484,3458800,0.0,0 -1997-12-08,64.54854261116171,64.56892421602788,64.07976569923979,64.3447265625,2289200,0.0,0 -1997-12-09,64.05940852095323,64.30398787260815,63.67215788083292,63.95750045776367,1703000,0.0,0 -1997-12-10,63.63136315537357,63.814797578307065,62.91800706618777,63.40716552734375,3558400,0.0,0 -1997-12-11,62.8161086088072,62.99954305964408,62.16389722805385,62.32695007324219,5072800,0.0,0 -1997-12-12,62.8976600288411,62.93842325633873,61.8989609551492,62.44926452636719,4478400,0.0,0 -1997-12-15,62.775357247939596,63.33585150908191,62.530777933986585,63.08108139038086,4674700,0.0,0 -1997-12-16,63.40718936736413,63.79443996137889,63.1829916550398,63.46833419799805,2885800,0.0,0 -1997-12-17,63.81485884969969,63.83524047181713,63.070929642413184,63.14226531982422,2236300,0.0,0 -1997-12-18,63.22375554677871,63.22375554677871,62.10276697325426,62.53078079223633,4658300,0.0,0 -1997-12-19,61.89971380488455,62.77961056310274,60.48778644867396,62.06341552734375,8556000,0.38,0 -1997-12-22,62.49311929838663,62.80005996291702,61.920163391263245,62.462425231933594,5136800,0.0,0 -1997-12-23,62.4931023605988,62.615878593134354,61.244877329820625,61.347190856933594,4436500,0.0,0 -1997-12-24,61.83830573400074,61.83830573400074,61.06072280286506,61.16303634643555,2019200,0.0,0 -1997-12-26,61.633701175739276,61.633701175739276,61.16305870328177,61.40861129760742,941800,0.0,0 -1997-12-29,61.94066637824563,62.67732445211971,61.83835275687423,62.615936279296875,2080000,0.0,0 -1997-12-30,62.820564807612,63.6799992447194,62.7591766335329,63.598148345947266,3616000,0.0,0 -1997-12-31,63.43441365690901,63.92551879489798,63.31163737241177,63.55718994140625,4359500,0.0,0 -1998-01-02,63.72085420020798,63.9459439228163,63.209286648825454,63.88455581665039,2360900,0.0,0 -1998-01-05,64.06876509347332,64.45755670534685,63.373032735383866,64.02783966064453,4191800,0.0,0 -1998-01-06,63.67998087115782,63.700443589946744,62.98424843233411,63.00471115112305,3154900,0.0,0 -1998-01-07,62.92285863581621,63.332113000927215,62.34990252466081,63.16841125488281,4424200,0.0,0 -1998-01-08,63.066116213331036,63.066116213331036,62.452234485102636,62.615936279296875,3831000,0.0,0 -1998-01-09,62.370352577824164,62.534054290626855,60.18084216908821,60.44685745239258,10258800,0.0,0 -1998-01-12,59.669272108280914,61.67461801589804,59.526033114879695,61.551841735839844,12097900,0.0,0 -1998-01-13,61.961109424028244,62.45221465063877,61.69509409294754,62.41128921508789,5224900,0.0,0 -1998-01-14,62.656847540454514,62.84101201722267,62.02250323158643,62.69777297973633,3770400,0.0,0 -1998-01-15,62.53405422243963,62.69775593506381,62.083874512723106,62.17595672607422,2875400,0.0,0 -1998-01-16,63.0251794477162,63.31165753611491,62.63638775631795,63.066104888916016,4374800,0.0,0 -1998-01-20,63.3116350332287,64.1813003496192,63.18885875326768,64.08921813964844,5091700,0.0,0 -1998-01-21,63.65953683760918,63.96647770953594,62.963804194575204,63.475372314453125,4699400,0.0,0 -1998-01-22,62.96378115239735,63.43442365044908,62.77961669663799,62.91262435913086,4543400,0.0,0 -1998-01-23,63.18888563721499,63.37305013550998,62.2066749796417,62.820556640625,6350300,0.0,0 -1998-01-26,63.107016955080994,63.34233819210545,62.472672750928105,62.77961349487305,4362900,0.0,0 -1998-01-27,62.73868607320721,63.843672716375245,62.636372495136094,63.41395568847656,7044200,0.0,0 -1998-01-28,63.78228461738588,64.24269571905133,63.63904560797886,63.98691177368164,4268600,0.0,0 -1998-01-29,64.06874733359456,65.19419642441146,63.88458293691543,64.33476257324219,8007700,0.0,0 -1998-01-30,64.68262730020668,64.80540356208623,64.17105954237525,64.37568664550781,3649100,0.0,0 -1998-02-02,65.41932609515163,65.80811783609873,65.31701247911292,65.43978881835938,5756300,0.0,0 -1998-02-03,65.4807206194716,66.01275147450481,65.29655609272935,65.93090057373047,2759600,0.0,0 -1998-02-04,65.66482703029331,66.23778282862557,65.43973725237707,65.84899139404297,3374000,0.0,0 -1998-02-05,66.3401207900166,66.52428522157432,65.50114949069807,65.80809020996094,5076200,0.0,0 -1998-02-06,66.13544662118984,66.5447006225586,65.93081962050547,66.5447006225586,5701200,0.0,0 -1998-02-09,66.6061573564105,66.62662007756455,65.95135027948112,66.3196792602539,2322200,0.0,0 -1998-02-10,66.4219490927997,67.09721844586883,66.2582474314496,66.9539794921875,3660400,0.0,0 -1998-02-11,66.8516832166726,67.0153849202947,66.59589930476308,66.89260864257812,4073200,0.0,0 -1998-02-12,66.60612883089956,67.40417461412693,66.05363559635754,67.17908477783203,5024700,0.0,0 -1998-02-13,66.9130747458514,67.12793324274176,66.70844760595584,66.79029846191406,2101300,0.0,0 -1998-02-17,67.32232579952333,67.50649021660409,66.89260882633488,67.1176986694336,3055500,0.0,0 -1998-02-18,66.99494003802988,67.762291977989,66.97447731963098,67.73159790039062,3007400,0.0,0 -1998-02-19,67.60879529114465,67.71110884334068,67.28139192411732,67.37347412109375,3387800,0.0,0 -1998-02-20,67.54745145975411,67.91578048922263,67.03588336327006,67.8748550415039,3707000,0.0,0 -1998-02-23,68.26358433628941,68.26358433628941,67.67016588732287,68.14080810546875,3227800,0.0,0 -1998-02-24,68.0385120844437,68.1612883468517,67.40416806200226,67.60879516601562,3386800,0.0,0 -1998-02-25,67.93620138353653,68.67285898890017,67.85435053849612,68.44776916503906,3481800,0.0,0 -1998-02-26,68.38640618522726,68.89797415489532,68.22270443493348,68.83658599853516,3187600,0.0,0 -1998-02-27,68.73427240460154,69.10260134276255,68.44779434158743,68.83658599853516,3442900,0.0,0 -1998-03-02,68.91842635912947,69.24582980976668,68.50917204583298,68.6933364868164,4252300,0.0,0 -1998-03-03,68.44778622496185,69.16398129756982,68.44778622496185,69.0821304321289,3349200,0.0,0 -1998-03-04,68.81608422540381,69.02071129714156,68.38636737475456,68.63191986083984,4404100,0.0,0 -1998-03-05,67.7724916846717,68.38637294993141,67.5474018874098,67.9975814819336,7268000,0.0,0 -1998-03-06,68.46823201137306,69.36859130859375,68.38638116617118,69.36859130859375,6896300,0.0,0 -1998-03-09,69.10256890702911,69.5527485090293,68.91840452439267,69.12303161621094,3362800,0.0,0 -1998-03-10,69.55276506485478,69.96201934590718,69.3686006383812,69.7778549194336,5481900,0.0,0 -1998-03-11,70.04386698761253,70.26895683186136,69.92109070893136,70.10525512695312,3439600,0.0,0 -1998-03-12,70.12573880040368,70.45314230807992,69.73694713503815,70.39175415039062,3191300,0.0,0 -1998-03-13,70.61685300436874,70.71916661347387,69.98250862791686,70.12574768066406,2879400,0.0,0 -1998-03-16,70.6168429306418,70.964709151975,70.41221574162225,70.88285827636719,3223600,0.0,0 -1998-03-17,70.92378451402804,71.08748626708984,70.4940674122408,71.08748626708984,4581900,0.0,0 -1998-03-18,70.88282751811415,71.35346984863281,70.7395885479563,71.35346984863281,1944100,0.0,0 -1998-03-19,71.35347140899239,71.61948664510277,71.1488443042921,71.53763580322266,2554800,0.0,0 -1998-03-20,71.94841039872414,72.35884057783836,71.49693720169849,72.15362548828125,3123300,0.313,0 -1998-03-23,72.05102070598537,72.44092939109323,71.84580560856017,71.98945617675781,4453100,0.0,0 -1998-03-24,72.27675837834316,72.76927461942216,72.19467233816333,72.6051025390625,3333600,0.0,0 -1998-03-25,73.15915506782261,73.24124107631386,71.702128417103,72.33829498291016,4597600,0.0,0 -1998-03-26,72.1536059459434,72.72820804107606,71.98943391876264,72.29725646972656,3333500,0.0,0 -1998-03-27,72.7282305274885,72.74875203723103,71.57902598190742,71.98945617675781,2611300,0.0,0 -1998-03-30,71.98946831937661,72.29729101743551,71.55851654209414,71.94842529296875,3108700,0.0,0 -1998-03-31,72.33830691061621,73.01551659233262,72.07152733903096,72.19465637207031,5926500,0.0,0 -1998-04-01,72.44092847973877,72.94370546210523,71.84580470469275,72.77953338623047,2929000,0.0,0 -1998-04-02,72.85137288241206,73.7132764489082,72.72824380148404,73.56962585449219,3920900,0.0,0 -1998-04-03,73.77481568035006,74.08263827706918,73.44647157718299,73.9389877319336,3787600,0.0,0 -1998-04-06,74.36996297724232,74.45204902909359,73.34388732910156,73.34388732910156,4550500,0.0,0 -1998-04-07,73.38491573709837,73.50804479034854,72.33831878447197,72.85135650634766,5583700,0.0,0 -1998-04-08,73.03603396537284,73.07707697406369,72.0715232611378,72.44091033935547,4854800,0.0,0 -1998-04-09,72.6050804828646,73.07707507051465,72.58455897905372,73.01551055908203,4481200,0.0,0 -1998-04-13,73.13866215547822,73.13866215547822,72.23571570911429,72.81031799316406,4350200,0.0,0 -1998-04-14,72.9744532133628,73.4259262084961,72.8308027149113,73.4259262084961,3279100,0.0,0 -1998-04-15,73.52857225688139,73.63117980957031,72.995012982899,73.63117980957031,3867200,0.0,0 -1998-04-16,73.09761599881193,73.22074505439667,72.56405675794468,72.76927185058594,7177900,0.0,0 -1998-04-17,72.70774210020257,73.83642564959888,72.52304842848316,73.73381805419922,5688800,0.0,0 -1998-04-20,73.54909238411749,73.91847956685021,73.4670063435102,73.71326446533203,3688300,0.0,0 -1998-04-21,73.8364199846859,74.30841488731174,73.4875541870929,74.0621566772461,4573200,0.0,0 -1998-04-22,74.12369104971968,74.49307821441928,74.08264803141974,74.26734161376953,2386100,0.0,0 -1998-04-23,73.95951770033155,74.20577580588204,73.38491545404706,73.54908752441406,5062000,0.0,0 -1998-04-24,73.38491712850967,73.85691184158453,72.46144921162406,72.76927185058594,11039700,0.0,0 -1998-04-27,71.82529994419643,72.03051508689413,70.67609514508929,71.39434814453125,14510200,0.0,0 -1998-04-28,72.09206404216549,72.11258555199815,71.00442402103404,71.2917251586914,6511400,0.0,0 -1998-04-29,71.59955474565614,72.21520010030494,71.20964602104523,71.78424835205078,7703100,0.0,0 -1998-04-30,72.60508826526403,73.4977737767222,72.50248073521136,73.11812591552734,8684500,0.0,0 -1998-05-01,73.38490705783917,73.9389877319336,73.09760596756799,73.9389877319336,4008800,0.0,0 -1998-05-04,74.02107493719527,74.41098356591905,73.6516878152464,73.7542953491211,4537200,0.0,0 -1998-05-05,73.54908697289157,73.65169451610151,72.97448473091585,73.24126434326172,5146400,0.0,0 -1998-05-06,73.63116833194984,73.63116833194984,72.35883487693845,72.37935638427734,5526100,0.0,0 -1998-05-07,72.56405966715937,72.6051026873331,71.80476379394531,71.80476379394531,6940400,0.0,0 -1998-05-08,72.23573562398938,73.13868231928925,72.23573562398938,72.9745101928711,7951000,0.0,0 -1998-05-11,73.2617541844904,73.69270567969329,72.4819371931709,72.72819519042969,6336300,0.0,0 -1998-05-12,72.76927464930856,73.52857052128385,72.46145199850775,73.50804901123047,6045200,0.0,0 -1998-05-13,73.59014908300074,73.91849330646086,73.28232637350688,73.69275665283203,4441500,0.0,0 -1998-05-14,73.24129344941254,74.00058957091106,73.11816434862898,73.32337951660156,4187500,0.0,0 -1998-05-15,73.54910023219814,73.69275081858915,72.76928276321836,72.91293334960938,6716100,0.0,0 -1998-05-18,72.70772692833152,73.28232934266775,72.12286375659642,72.62564086914062,4847200,0.0,0 -1998-05-19,72.89238934941149,73.3438624816432,72.74873880733776,73.11812591552734,5918700,0.0,0 -1998-05-20,73.61066469855862,73.87744435874296,72.81032571800557,73.81587982177734,5716600,0.0,0 -1998-05-21,73.7953606142835,74.0621402828001,73.09762917354779,73.34388732910156,6301500,0.0,0 -1998-05-22,73.38491610409169,73.59013119386823,72.85135687067267,73.05657196044922,4862200,0.0,0 -1998-05-26,73.61064745145902,73.61064745145902,71.70214725268966,71.8868408203125,6899300,0.0,0 -1998-05-27,71.27120333576963,72.17414976444049,70.64529728862279,71.98945617675781,10202600,0.0,0 -1998-05-28,72.15362273442489,72.4819668651845,71.62006352194051,72.31779479980469,4907600,0.0,0 -1998-05-29,72.64616857185922,72.76929767113356,71.59957122802734,71.59957122802734,4772600,0.0,0 -1998-06-01,71.55847704094249,72.3793371159748,71.29169751655698,71.92786407470703,6092200,0.0,0 -1998-06-02,72.23571429366804,72.46145090083576,71.68163353062002,71.98945617675781,6701100,0.0,0 -1998-06-03,72.15363243695344,72.35884754627355,70.84025573730469,70.84025573730469,6445100,0.0,0 -1998-06-04,71.08650702258426,72.27675454201552,70.96337796885,72.15362548828125,6566300,0.0,0 -1998-06-05,72.48196906702859,73.54908752441406,72.1536249262946,73.54908752441406,8463200,0.0,0 -1998-06-08,73.50804588701472,73.85691154309491,73.32335230438403,73.46700286865234,4159900,0.0,0 -1998-06-09,73.36441242937191,73.82614649361271,73.15919728970933,73.69275665283203,2725300,0.0,0 -1998-06-10,73.3028196668411,74.24680894586538,73.05656159405217,73.22073364257812,6186900,0.0,0 -1998-06-11,73.1797081501407,73.46700930384287,71.82528842554471,71.84580993652344,8056600,0.0,0 -1998-06-12,72.15362310490504,72.52301025390625,71.08650467445706,72.52301025390625,9779000,0.0,0 -1998-06-15,71.45589913742656,72.17415200066893,70.5939957015357,70.61451721191406,10234200,0.0,0 -1998-06-16,71.18911074118131,71.72266994535275,70.75815907627361,71.7021484375,7471500,0.0,0 -1998-06-17,72.33833749320348,73.40545623069187,72.1946868939262,73.20024108886719,12057700,0.0,0 -1998-06-18,73.01555307614437,73.17972520222902,72.72825185549625,72.87190246582031,3844600,0.0,0 -1998-06-19,73.16552999952448,73.27875746575897,72.21853664556328,72.50675201416016,3549100,0.352,0 -1998-06-22,72.6302726683087,73.16552977980984,72.50675179642383,72.85672760009766,5438300,0.0,0 -1998-06-23,73.18610224634601,73.82429329265732,73.12434182250942,73.72135925292969,5004600,0.0,0 -1998-06-24,73.88605374388538,74.89480733359015,73.52578460470512,74.70952606201172,8291900,0.0,0 -1998-06-25,75.03890059384528,75.38887626190986,74.31836245371234,74.58599090576172,5854800,0.0,0 -1998-06-26,74.6477794259246,74.99775522577035,74.5242585553908,74.89482116699219,4833100,0.0,0 -1998-06-29,75.26537148092453,75.55358679841166,74.96686275924144,75.16243743896484,5953400,0.0,0 -1998-06-30,75.03896915248528,75.22425055780005,74.48312493654095,74.64781951904297,4284800,0.0,0 -1998-07-01,75.14182010679754,75.71825050761682,74.85360490638791,75.51238250732422,3489500,0.0,0 -1998-07-02,75.57419266266076,75.67712673057504,75.26539045891793,75.65653991699219,3503900,0.0,0 -1998-07-06,75.61536531818325,76.41825103759766,75.47125762495502,76.41825103759766,3144400,0.0,0 -1998-07-07,76.4079231128358,76.50056373091684,75.94472002243063,76.27410888671875,4920700,0.0,0 -1998-07-08,76.33588031633873,77.03583175397506,76.25353308838152,76.82996368408203,6875000,0.0,0 -1998-07-09,76.60353062652597,76.8917460064699,76.17120755661007,76.31531524658203,6942500,0.0,0 -1998-07-10,76.43882020254829,77.03583765093877,75.80062913702741,76.72703552246094,7849700,0.0,0 -1998-07-13,76.78884667899987,76.97412807849344,76.45945752434464,76.74767303466797,6555100,0.0,0 -1998-07-14,77.03582834097055,77.83871377798226,77.03582834097055,77.61225891113281,6983600,0.0,0 -1998-07-15,77.77697233250254,77.92108001019643,77.42699654381738,77.46817016601562,4977500,0.0,0 -1998-07-16,77.52992895291959,78.12694646211625,77.1181927396805,78.00342559814453,6315600,0.0,0 -1998-07-17,78.14751211115103,78.39455377219788,77.94164406027866,78.10633850097656,3539500,0.0,0 -1998-07-20,78.22985933149998,78.54895481035216,77.69460239923183,78.10633850097656,2338400,0.0,0 -1998-07-21,78.3946188079441,78.3946188079441,76.6035652795063,76.74767303466797,5518600,0.0,0 -1998-07-22,76.6447389238382,77.06676877824022,76.10948154752346,76.74767303466797,10417300,0.0,0 -1998-07-23,76.62410034948056,76.80938162383448,75.03891611334139,75.22419738769531,15110900,0.0,0 -1998-07-24,75.7388680739391,75.82121530750685,74.35955191167926,75.16243743896484,11540500,0.0,0 -1998-07-27,74.85363374470951,75.75945329497553,74.33896354569474,75.69769287109375,9600000,0.0,0 -1998-07-28,75.3889058515409,75.53301353612876,73.7007872606544,74.42132568359375,13693000,0.0,0 -1998-07-29,74.91540890274959,75.18303745887373,73.94782873830079,74.13311004638672,7462400,0.0,0 -1998-07-30,74.85363974095043,75.49183083885183,74.70953207368238,75.24478912353516,6821600,0.0,0 -1998-07-31,75.32714913069353,75.43008319619051,73.33022826005201,73.63903045654297,7680500,0.0,0 -1998-08-03,73.63902525818796,74.06105489693351,73.14494177868097,73.3302230834961,10486500,0.0,0 -1998-08-04,73.92726407764114,73.92726407764114,70.48926544189453,70.48926544189453,15091600,0.0,0 -1998-08-05,71.10686463246391,71.72446913129828,69.56285338537798,71.45684051513672,21718400,0.0,0 -1998-08-06,71.23038304515495,72.13620294515114,70.85982035879287,71.76564025878906,13084400,0.0,0 -1998-08-07,72.25973050618909,72.85674822262199,71.45684461167588,71.88916778564453,12083800,0.0,0 -1998-08-10,71.6421115013861,72.23912909723097,71.27154885568926,71.4774169921875,6273000,0.0,0 -1998-08-11,70.34517617476614,70.77749946995786,69.50111640796327,70.40693664550781,14287100,0.0,0 -1998-08-12,70.98330223430087,71.7244271996242,70.81860779756235,71.60090637207031,11158400,0.0,0 -1998-08-13,71.68329884592396,72.23914292083492,70.7363052368164,70.7363052368164,9073900,0.0,0 -1998-08-14,71.37448267268348,71.62152443561172,69.68636395934053,69.9128189086914,8628500,0.0,0 -1998-08-17,69.8304750295109,71.76563559931455,69.50108599635281,71.39507293701172,11290000,0.0,0 -1998-08-18,71.80679628884131,72.85672364283526,71.66268861280292,72.71261596679688,7603900,0.0,0 -1998-08-19,73.18610638270079,73.18610638270079,72.21852635457508,72.52732849121094,6258600,0.0,0 -1998-08-20,72.25973391791604,72.7332307498568,71.90975799865548,72.09503936767578,7402800,0.0,0 -1998-08-21,71.2715510630237,71.62152690590972,69.50108503430619,71.51859283447266,16685400,0.0,0 -1998-08-24,71.97148132324219,72.42439110273628,71.35387707847752,71.97148132324219,7201700,0.0,0 -1998-08-25,72.71259232089945,73.28902283759966,71.57002468958294,72.13616180419922,9688300,0.0,0 -1998-08-26,71.33330733849999,72.21854030114227,70.98333151606002,71.72445678710938,9339700,0.0,0 -1998-08-27,70.48923369258283,70.85979625288262,68.16292428625636,68.34820556640625,24887800,0.0,0 -1998-08-28,69.15108530812569,69.64516868037785,67.29827266218008,68.10115814208984,23735900,0.0,0 -1998-08-31,68.34823315342267,68.52322109974921,62.583924333254494,63.24270248413086,22563100,0.0,0 -1998-09-01,63.283849093111364,66.24834950606127,61.67807803609682,65.91896057128906,24748500,0.0,0 -1998-09-02,65.7542595540851,67.03064154918631,65.07489494378929,65.4454574584961,13843200,0.0,0 -1998-09-03,64.31318195272868,65.46604308888514,63.73675138465045,64.9307861328125,17311300,0.0,0 -1998-09-04,65.50726481776712,65.75430667125966,63.078019925090665,64.39557647705078,17783800,0.0,0 -1998-09-08,66.45423783607853,67.85414123535156,65.75428613644202,67.85414123535156,14746500,0.0,0 -1998-09-09,67.68942642211914,67.93646812438965,66.166002591451,66.2071762084961,12109700,0.0,0 -1998-09-10,64.84842143082982,65.44543864400254,63.77790780720977,64.88959503173828,19889300,0.0,0 -1998-09-11,64.68376373497343,66.98948669433594,63.901464873761135,66.98948669433594,20379800,0.0,0 -1998-09-14,67.77177903097561,68.81141294381409,67.25710877709518,68.14234161376953,10686800,0.0,0 -1998-09-15,67.77177082783467,68.71876398034998,67.38062148223052,68.55406951904297,8337900,0.0,0 -1998-09-16,69.00698977879115,69.33637875148227,67.95706242833819,69.17168426513672,11024900,0.0,0 -1998-09-17,67.36001454147639,67.87468457923217,67.05121251882292,67.19532012939453,12945200,0.0,0 -1998-09-18,67.68059512472021,67.70125464704155,66.83355470954514,67.49465942382812,7019200,0.359,0 -1998-09-21,65.86255544571928,68.36235758151979,65.40804596648282,67.45333862304688,8834600,0.0,0 -1998-09-22,68.42439071636733,68.52768840766619,67.5360305711971,68.01119995117188,7270100,0.0,0 -1998-09-23,68.67228233480007,70.73823547363281,68.61030374063509,70.73823547363281,13688500,0.0,0 -1998-09-24,70.28368251594954,70.61423481467241,68.25904968627198,69.00279235839844,11129500,0.0,0 -1998-09-25,68.17643076395817,69.69490581279179,67.84587837237534,68.92017364501953,10247400,0.0,0 -1998-09-28,69.6226008704781,70.28370568586543,68.92017700412906,69.53996276855469,8847800,0.0,0 -1998-09-29,69.66392055418322,70.03579201621623,68.3417109113992,69.37468719482422,10618100,0.0,0 -1998-09-30,68.4243436246305,68.96149124970307,67.01949598982527,67.26741027832031,7908400,0.0,0 -1998-10-01,66.13113029812952,67.13311712082846,64.8502399268443,65.32540893554688,13335600,0.0,0 -1998-10-02,65.3667506147829,66.688960488154,64.27179556339748,66.58566284179688,14351800,0.0,0 -1998-10-05,65.84190114258662,66.0898154236381,63.69331070680721,65.2427749633789,12807200,0.0,0 -1998-10-06,66.60631641321439,66.9575283794131,64.47838508859867,65.1808090209961,12621000,0.0,0 -1998-10-07,65.20148111586404,66.13116002911306,63.30080422655496,64.20982360839844,14348500,0.0,0 -1998-10-08,62.51571636761481,63.96188297228534,60.96625214832495,63.858585357666016,20625000,0.0,0 -1998-10-09,64.12714887111481,65.30474148891557,62.18515402772409,65.13946533203125,12708500,0.0,0 -1998-10-12,66.52365553039951,67.06080305952696,65.90386991986784,66.08980560302734,9508500,0.0,0 -1998-10-13,65.82124503792603,66.3790521992644,65.2840974010817,65.86256408691406,6256800,0.0,0 -1998-10-14,65.40807289422261,67.30874968078878,65.34609430335632,66.48236846923828,8176900,0.0,0 -1998-10-15,66.193097055222,70.90346725765353,66.0691399446317,70.05642700195312,20541100,0.0,0 -1998-10-16,70.15974075389359,70.57293121769743,69.41599791904666,70.07710266113281,16573900,0.0,0 -1998-10-19,69.87049514734647,70.61423785145779,69.74653802999458,70.32500457763672,7915900,0.0,0 -1998-10-20,71.1101070386227,71.92615852846163,70.13910906337131,70.73823547363281,14611600,0.0,0 -1998-10-21,70.65560219016751,71.15143097746693,69.99449714043494,70.49032592773438,9178400,0.0,0 -1998-10-22,70.59359949846127,71.70921388913055,70.18040898339858,71.54393768310547,8277500,0.0,0 -1998-10-23,71.37868426563656,71.39934379798552,70.59362203637632,70.63494110107422,6237200,0.0,0 -1998-10-26,71.21336863846729,71.70919714073686,70.59358301063033,71.1513900756836,5838600,0.0,0 -1998-10-27,71.68857391749586,72.03978595109743,70.26306625170128,70.73823547363281,10089700,0.0,0 -1998-10-28,70.44900444392366,71.08944993886843,70.0977923983088,70.6142807006836,5650600,0.0,0 -1998-10-29,70.800204885309,72.3496695384745,70.49031195467589,72.32901000976562,9625600,0.0,0 -1998-10-30,72.8041881127791,73.3206763939424,72.39099748784845,72.72154998779297,9872800,0.0,0 -1998-11-02,73.25866632727937,73.96109008789062,72.84547587986098,73.96109008789062,6501400,0.0,0 -1998-11-03,73.77516211239757,73.91977878413847,73.21735494996835,73.4239501953125,6866000,0.0,0 -1998-11-04,74.35363921396981,74.76682976253313,73.44462000713051,74.20902252197266,8233600,0.0,0 -1998-11-05,73.73385044926636,75.32463399776552,73.46527660341584,75.2213363647461,6841500,0.0,0 -1998-11-06,75.01474306956831,75.73782651970185,74.91144543383496,75.44859313964844,5224800,0.0,0 -1998-11-09,75.32465917605164,75.53125451114778,74.37432063460942,74.91146850585938,6188700,0.0,0 -1998-11-10,74.70486450195312,75.3246504353211,74.20903575525875,74.70486450195312,14015200,0.0,0 -1998-11-11,75.24199889338095,75.36595605794996,73.97143795654874,74.20902252197266,10922400,0.0,0 -1998-11-12,74.25034572129266,74.78749346440718,73.8371551496661,74.12638854980469,5457400,0.0,0 -1998-11-13,74.18833688330064,74.84944152832031,74.12635832283004,74.84944152832031,5524600,0.0,0 -1998-11-16,75.51055469251659,75.60352254371121,74.63252498678965,75.40725708007812,6023700,0.0,0 -1998-11-17,75.13868328773812,76.44023320446276,74.70483331549657,75.40725708007812,9058900,0.0,0 -1998-11-18,75.57256010051387,76.02706975666786,75.03541232505914,75.8617935180664,4567700,0.0,0 -1998-11-19,76.21297248238879,76.62616289975061,75.77912254415887,76.52286529541016,5249300,0.0,0 -1998-11-20,76.92573529884363,77.18397934107152,76.58485316310282,77.1013412475586,5562000,0.0,0 -1998-11-23,77.6591492478136,79.08465637686365,77.45255401171939,78.91938018798828,7151300,0.0,0 -1998-11-24,78.67146010243101,79.10531006623118,78.30991846593088,78.42354583740234,5323700,0.0,0 -1998-11-25,78.63014105825957,78.79541723494535,78.15497205028795,78.42354583740234,4393500,0.0,0 -1998-11-27,78.98132412802724,79.14660024443431,78.68176116703943,79.00198364257812,4557900,0.0,0 -1998-11-30,78.68181168173307,78.91939625160045,76.77080535888672,76.77080535888672,8705400,0.0,0 -1998-12-01,76.77082411211686,78.03105561664837,76.17169765914285,77.76248168945312,8950600,0.0,0 -1998-12-02,77.49386009787548,77.94836954126478,76.68813881186718,77.5351791381836,7495500,0.0,0 -1998-12-03,77.51453394077231,78.21695775580064,76.08902678674426,76.25430297851562,12145300,0.0,0 -1998-12-04,77.10138211758864,78.34095417735695,77.01874398027076,78.25831604003906,10339500,0.0,0 -1998-12-07,78.0516604384935,78.98133876557984,78.01034140173411,78.630126953125,4290000,0.0,0 -1998-12-08,78.36156875396914,79.16729013055885,77.67980451223939,78.2789306640625,10102600,0.0,0 -1998-12-09,78.46486488157379,78.65080058034529,77.927717307345,78.42354583740234,5327900,0.0,0 -1998-12-10,78.56817498657732,78.56817498657732,77.16332726133744,77.2769546508789,5966600,0.0,0 -1998-12-11,76.97739047250981,77.57651670001995,76.39892377008623,77.43190002441406,8198200,0.0,0 -1998-12-14,76.79145170358511,76.95672789772789,75.20066833496094,75.20066833496094,9521400,0.0,0 -1998-12-15,75.8204375248129,77.18396582907384,75.71713992600525,77.14264678955078,9631500,0.0,0 -1998-12-16,77.4319063137031,77.4319063137031,76.5228871360609,77.03937530517578,7260000,0.0,0 -1998-12-17,77.49388348308925,78.4029026441812,77.36992632475852,78.26861572265625,6914700,0.0,0 -1998-12-18,78.47681207294706,79.01574422136139,78.1866178391855,78.60118103027344,4802400,0.392,0 -1998-12-21,79.09865905206132,80.48744578070075,78.93283377102975,79.69977569580078,8580700,0.0,0 -1998-12-22,79.86557065310842,80.40450261183689,79.0571727150157,80.0521240234375,5461100,0.0,0 -1998-12-23,80.38381715368686,81.73114776611328,80.13507919446968,81.73114776611328,7791000,0.0,0 -1998-12-24,81.68967605256573,81.751860530657,81.25438470592684,81.37875366210938,1507100,0.0,0 -1998-12-28,81.75185909407618,81.7933154120752,80.92273273409569,81.17147064208984,4203600,0.0,0 -1998-12-29,81.39949064988356,82.57063178095522,81.00565557925769,82.45662689208984,3935800,0.0,0 -1998-12-30,82.20788290388259,82.74681506613699,81.60676626136807,81.79331970214844,6810700,0.0,0 -1998-12-31,81.79331970214844,82.20788290388259,81.23365937980734,81.79331970214844,6790500,0.0,0 -1999-01-04,81.83476785587604,83.05772917895018,80.73617548091114,81.60675811767578,9450400,0.0,0 -1999-01-05,81.54458381350109,82.82972977090756,81.54458381350109,82.53953552246094,8031000,0.0,0 -1999-01-06,83.45156991312233,84.73671579852063,83.41011359423852,84.52943420410156,7737700,0.0,0 -1999-01-07,83.82468154478568,84.38434188150902,83.43084649301738,84.11487579345703,5504900,0.0,0 -1999-01-08,85.02690380566742,85.23418538491087,83.55520459303884,84.73670959472656,6224400,0.0,0 -1999-01-11,84.69528687397738,84.69528687397738,83.0577617484159,83.9283447265625,7578300,0.0,0 -1999-01-12,83.72103516484651,83.72103516484651,82.08351058499434,82.4151611328125,7768800,0.0,0 -1999-01-13,79.86560258024733,82.99555482255651,79.84487441970222,81.83477783203125,10810600,0.0,0 -1999-01-14,82.00057837851854,82.1871317671451,80.19722895512848,80.40451049804688,11400700,0.0,0 -1999-01-15,81.17143760949523,82.76750520294037,80.96415610385301,82.49803924560547,7817700,0.0,0 -1999-01-19,83.10954348182773,83.32718912506485,81.91767448314832,83.03699493408203,6535100,0.0,0 -1999-01-20,83.63814052111327,84.86110217929064,82.93338295538395,83.70032501220703,6534400,0.0,0 -1999-01-21,83.29608183506336,83.4722711334578,81.31654324722,81.48236846923828,6937500,0.0,0 -1999-01-22,81.00566599066315,82.14571502584391,80.77765618362699,81.29586029052734,7522300,0.0,0 -1999-01-25,81.77256037766497,82.24930787796568,80.86052168143753,82.12493896484375,5700300,0.0,0 -1999-01-26,82.33222509789834,83.61737060546875,82.00057464433178,83.61737060546875,6047000,0.0,0 -1999-01-27,83.82467058926619,83.9904958525486,82.35297137763466,82.6431655883789,7399400,0.0,0 -1999-01-28,83.07843401494377,84.21848238590731,83.03697771054509,84.03192901611328,5961700,0.0,0 -1999-01-29,84.46724843803788,85.0994572913778,83.18210257223215,84.67453002929688,6456800,0.0,0 -1999-02-01,85.35855270870447,85.35855270870447,84.17704772949219,84.17704772949219,9426800,0.0,0 -1999-02-02,84.29106048738991,84.38433720500784,82.75717668656196,83.65885162353516,9194500,0.0,0 -1999-02-03,83.36864885559906,84.86107618468984,83.34792069825058,84.50869750976562,10290700,0.0,0 -1999-02-04,84.48795187900741,84.57086449125374,82.76751517489612,83.2442626953125,7761100,0.0,0 -1999-02-05,83.34788415750269,83.34788415750269,81.73108859314426,82.2907485961914,7516100,0.0,0 -1999-02-08,82.97483093238704,82.97483093238704,81.81405388212133,82.45662689208984,8528400,0.0,0 -1999-02-09,82.49807120902155,82.58098384340246,80.60144469755785,80.61180877685547,8985700,0.0,0 -1999-02-10,81.0056435609875,81.58603200001197,80.4770755183045,81.13001251220703,6936700,0.0,0 -1999-02-11,81.62749351249947,83.63812501852091,81.25438663509343,82.99555206298828,9181800,0.0,0 -1999-02-12,82.78826511641485,83.24428460378618,81.33729402023332,82.00059509277344,10676600,0.0,0 -1999-02-16,82.74679445905093,83.32718279694006,81.50310516357422,81.50310516357422,6915500,0.0,0 -1999-02-17,81.71043665588752,83.1510443036765,81.08859162806493,81.42024230957031,7858100,0.0,0 -1999-02-18,81.71040358113412,82.49807363087615,81.06783064581825,82.06278228759766,9048900,0.0,0 -1999-02-19,82.24933585890342,83.41011277626698,81.83477267413073,82.4151611328125,5312200,0.0,0 -1999-02-22,82.53953443094541,84.71599126551328,82.43589362929931,84.61235046386719,10695800,0.0,0 -1999-02-23,84.63309971865486,85.23421651802812,83.96979842279472,84.57091522216797,7770700,0.0,0 -1999-02-24,84.79892902793047,85.4622303549639,82.91266587917914,83.0784912109375,7271000,0.0,0 -1999-02-25,82.60167082010649,83.09914637837062,81.37871007270718,82.2907485961914,11633000,0.0,0 -1999-02-26,82.74682237454357,82.80900686029598,81.46167633566039,81.95915222167969,9621300,0.0,0 -1999-03-01,82.02133900665244,82.45663041912141,81.17148434421303,82.18716430664062,7607200,0.0,0 -1999-03-02,82.58097510883826,83.11990717531161,81.13000416064081,81.46165466308594,9651500,0.0,0 -1999-03-03,81.64823469829632,81.95915714573843,80.77765184545844,81.89697265625,7881400,0.0,0 -1999-03-04,82.29081464451393,83.23394614736667,81.76224643961844,82.93338775634766,8256400,0.0,0 -1999-03-05,84.57084411822974,84.98540707959361,83.94899967618393,84.60193634033203,10703100,0.0,0 -1999-03-08,85.08910640653409,85.43112108514744,84.40507704930738,85.15129089355469,4802200,0.0,0 -1999-03-09,84.98547183065196,86.18770533459777,84.73673386431834,84.94401550292969,7893400,0.0,0 -1999-03-10,85.21346836985167,85.73167238572282,84.75744883588506,85.69021606445312,3950000,0.0,0 -1999-03-11,86.02185491169467,87.01680648657694,85.48292280863346,86.6436996459961,6583700,0.0,0 -1999-03-12,86.89243169959617,86.91315985601305,85.71092678383353,85.81456756591797,5286500,0.0,0 -1999-03-15,86.18767457668145,87.05825714816308,85.89748038618757,87.03752899169922,5394400,0.0,0 -1999-03-16,86.97533759459793,87.32771622641589,86.54004634352869,86.70587158203125,4547500,0.0,0 -1999-03-17,86.68511165696748,86.85093683469482,85.98035465162629,86.33273315429688,4524100,0.0,0 -1999-03-18,86.08402577960874,87.80446260592888,86.06329762507477,87.72154998779297,3506300,0.0,0 -1999-03-19,87.97587211884648,88.18365641766285,86.23048400878906,86.23048400878906,5526700,0.32,0 -1999-03-22,86.4798575250388,86.83309096519393,86.05389955308702,86.39674377441406,4603800,0.0,0 -1999-03-23,85.9811325337758,86.12658152549558,83.58122417039951,83.90328979492188,9713800,0.0,0 -1999-03-24,84.33964583850852,84.55781934954679,83.52928708322351,84.3812026977539,6280900,0.0,0 -1999-03-25,85.15002694737497,86.1058349609375,84.94224259660051,86.1058349609375,6639600,0.0,0 -1999-03-26,85.52404741390156,85.85650240870778,84.92147273581527,85.48249053955078,6159700,0.0,0 -1999-03-29,85.877242383941,87.39406761840209,85.877242383941,87.20706176757812,5863900,0.0,0 -1999-03-30,86.39673607375094,87.24865194172203,86.14739484410086,86.74996948242188,5401400,0.0,0 -1999-03-31,87.20713845710792,87.50842592616392,85.31629985820469,85.35785675048828,7413600,0.0,0 -1999-04-01,86.23050828865975,86.23050828865975,85.19158650204939,86.00194549560547,7683600,0.0,0 -1999-04-05,87.06163688625456,88.162893868348,86.60451134651765,88.03822326660156,5791100,0.0,0 -1999-04-06,87.89279491026576,88.42264509234892,87.20710643933461,87.83045959472656,5381300,0.0,0 -1999-04-07,88.22528010280836,88.68240590644984,87.3525853867655,88.53695678710938,6248600,0.0,0 -1999-04-08,88.55768616854247,89.7212784785937,87.9551115794088,89.65894317626953,5909100,0.0,0 -1999-04-09,89.38882755636617,90.09529434783907,88.8278098101965,89.67972564697266,4365800,0.0,0 -1999-04-12,88.74466120087187,90.69783332751247,88.57843378583864,90.635498046875,8213200,0.0,0 -1999-04-13,90.59399614039246,90.73944521676465,89.43040352941495,90.05375671386719,10071400,0.0,0 -1999-04-14,90.46935222977568,90.46935222977568,88.22528010280836,88.53695678710938,11551700,0.0,0 -1999-04-15,88.72392104006207,88.80703478342512,87.10320304448247,88.20446014404297,11150000,0.0,0 -1999-04-16,88.37066420366827,88.37066420366827,87.22785053538665,87.45641326904297,6476200,0.0,0 -1999-04-19,88.22523533883702,89.45116300840635,85.35781129814943,86.1058349609375,12487200,0.0,0 -1999-04-20,86.313638238025,87.22788958190394,85.77339880755109,87.18633270263672,9049600,0.0,0 -1999-04-21,87.14475657168751,90.17840808801235,86.70840943577778,89.67972564697266,5772200,0.0,0 -1999-04-22,89.84598104719014,90.67711870720115,89.35768767193366,90.53166961669922,6897400,0.0,0 -1999-04-23,90.34459640285247,90.92639233184968,89.76280047385526,90.30303955078125,4593100,0.0,0 -1999-04-26,90.76021260174481,90.96799697125431,90.0745241823635,90.82254791259766,3606500,0.0,0 -1999-04-27,91.17578212550428,91.42512337106173,90.32386620318303,91.25889587402344,5147200,0.0,0 -1999-04-28,90.71865096228716,91.25889029463242,89.76284291275321,90.0121841430664,5544300,0.0,0 -1999-04-29,90.13683587957411,90.46929078369425,88.9732437151536,89.32647705078125,9824300,0.0,0 -1999-04-30,89.82517851316013,90.17841192392203,87.43565838153546,88.59925079345703,10991900,0.0,0 -1999-05-03,88.7239157818584,90.32385524677714,88.4953530011557,90.21996307373047,10709700,0.0,0 -1999-05-04,89.8459527987186,90.30307836799977,88.51613296080973,88.93170166015625,10509300,0.0,0 -1999-05-05,89.05638731636822,89.80441110157336,87.66423193834753,89.63818359375,10032300,0.0,0 -1999-05-06,89.38881932383724,89.84594485268997,88.01744273727907,89.08753204345703,13507200,0.0,0 -1999-05-07,89.43038530702944,89.84595401198776,88.7239185086003,89.7628402709961,8680700,0.0,0 -1999-05-10,89.65894524491193,90.24074141336095,88.7862509922384,89.31610107421875,5580100,0.0,0 -1999-05-11,89.97062185841845,91.00954358888518,89.5758316008411,90.21996307373047,7000600,0.0,0 -1999-05-12,90.26148954736685,91.23807564513993,87.4356233921086,90.92639923095703,13865800,0.0,0 -1999-05-13,91.25890034229681,91.7575828578285,90.96800220823667,91.32123565673828,4485700,0.0,0 -1999-05-14,89.47194502861024,90.3446393368317,88.76547820766906,88.95248413085938,8370100,0.0,0 -1999-05-17,88.84857580702861,89.41998269072677,88.0174385216495,89.22258758544922,6268100,0.0,0 -1999-05-18,89.45117152966576,89.75245886698984,88.18368686919895,89.05638122558594,8218600,0.0,0 -1999-05-19,89.40960240932921,89.76283579091383,88.59924347510568,89.70050048828125,5052400,0.0,0 -1999-05-20,89.8459283406016,90.15760478026604,89.13946174402889,89.16024017333984,4670400,0.0,0 -1999-05-21,89.18103615238037,89.55504795357861,88.16289291578516,88.66157531738281,6418200,0.0,0 -1999-05-24,88.99405695076098,88.99405695076098,86.69803937124684,87.18633270263672,7952000,0.0,0 -1999-05-25,87.35254523550817,87.99667675365774,85.39937224499015,85.77338409423828,15406400,0.0,0 -1999-05-26,85.98118604834592,87.10322182568055,85.17082687582648,86.72920989990234,12575900,0.0,0 -1999-05-27,86.33440646374173,86.62530458419718,85.10847867039378,85.48249053955078,14515400,0.0,0 -1999-05-28,85.77337169658662,86.9369639482845,85.50325206672818,86.5733413696289,8748000,0.0,0 -1999-06-01,86.52137482924269,86.54215325739573,85.35778285267266,86.27203369140625,6705300,0.0,0 -1999-06-02,86.27205746809489,86.56295554240927,85.11885438777715,86.35517120361328,6981900,0.0,0 -1999-06-03,86.89538124013272,87.02005180145285,86.29280686041874,86.83304595947266,6076600,0.0,0 -1999-06-04,87.41486843466171,88.671963642719,87.06163507041421,88.57846069335938,9787200,0.0,0 -1999-06-07,88.72394647450999,89.22262907764541,88.37071296395573,88.80706024169922,5299100,0.0,0 -1999-06-08,88.6823343518551,88.96284314139353,87.49796390713726,87.93431091308594,4895700,0.0,0 -1999-06-09,88.03825566626543,88.49538137423282,87.64346528211176,87.85124969482422,7409700,0.0,0 -1999-06-10,87.3940887669727,87.41486719987022,86.16816122601897,87.04085540771484,7040700,0.0,0 -1999-06-11,87.24864341137096,87.91355329209587,85.83570991483055,86.31361389160156,12824800,0.0,0 -1999-06-14,86.89542627816249,86.93698315347486,86.13701330371175,86.39674377441406,6823500,0.0,0 -1999-06-15,86.74997570294828,87.53955632012482,86.49024523677178,86.9785385131836,5700900,0.0,0 -1999-06-16,88.01748532752616,89.01485060035931,88.01748532752616,88.64083862304688,7865800,0.0,0 -1999-06-17,88.34991868971892,90.13686436406414,88.18369118512867,89.47195434570312,8162800,0.0,0 -1999-06-18,89.40858808102969,89.8254113354867,88.95008250112697,89.5753173828125,2875100,0.405,0 -1999-06-21,89.6794932568195,90.20052215094464,89.13762320692935,89.78369903564453,4646400,0.0,0 -1999-06-22,89.36691231390982,90.15887655549764,89.03345368587284,89.15850067138672,5862400,0.0,0 -1999-06-23,88.69998403365045,89.1168072668913,88.11643150711329,88.7208251953125,9629200,0.0,0 -1999-06-24,88.61662067481046,88.65830299874028,87.13689817530162,88.05390930175781,9176900,0.0,0 -1999-06-25,88.42904848276841,88.7104041637765,87.53287853585371,87.83507537841797,4087000,0.0,0 -1999-06-28,88.49157822864244,89.11681311956549,88.36653125045784,88.90840148925781,5028900,0.0,0 -1999-06-29,88.69997691266548,90.15885811188694,88.55408879274333,89.74203491210938,6956200,0.0,0 -1999-06-30,89.78371710672866,91.70110382302835,89.26268810773418,91.36764526367188,16856100,0.0,0 -1999-07-01,91.36763123125141,92.36800675568118,90.74239652848281,92.05538940429688,9939500,0.0,0 -1999-07-02,92.11793213301084,93.03494322211773,91.97204400519837,92.97241973876953,3772800,0.0,0 -1999-07-06,92.86821921310083,93.86859500354716,92.43055480478056,92.95158386230469,11221100,0.0,0 -1999-07-07,92.74313303584002,93.18079725915523,92.37841284974402,93.07659149169922,3230700,0.0,0 -1999-07-08,92.74313363709936,93.78519131841509,92.53472210083622,93.1495361328125,7101500,0.0,0 -1999-07-09,93.36839994926045,93.7643820026167,93.07662369941902,93.70185852050781,2976800,0.0,0 -1999-07-12,93.99363363502918,93.99363363502918,93.03494025427278,93.2850341796875,4436300,0.0,0 -1999-07-13,92.95158386230469,93.31630420257157,92.47223712938248,92.95158386230469,6477600,0.0,0 -1999-07-14,93.36840466485506,93.51429279714391,92.53475819463314,93.47261047363281,4382500,0.0,0 -1999-07-15,93.88941662459723,94.28539862589965,93.57679925514796,94.06656646728516,3348600,0.0,0 -1999-07-16,94.20203049627365,94.80642405476745,93.8685719812426,94.5771713256836,2281500,0.0,0 -1999-07-19,94.82730190206019,94.86898423256659,93.74356130889379,93.95197296142578,4287000,0.0,0 -1999-07-20,93.4517743198454,93.639344785697,91.72195780143613,92.02415466308594,7060100,0.0,0 -1999-07-21,92.0970640633331,92.63893409402932,91.57603518766363,91.91991424560547,4793700,0.0,0 -1999-07-22,91.65940850798526,92.03454933407525,90.34641561667034,90.71113586425781,7804100,0.0,0 -1999-07-23,91.13839020562216,91.36764295939801,90.11717339334785,90.53399658203125,4603000,0.0,0 -1999-07-26,89.95043769086226,90.78408400866451,89.7837084273018,89.86707305908203,4333400,0.0,0 -1999-07-27,90.70073525183993,91.5031199731625,90.28391201998404,90.61737060546875,5908500,0.0,0 -1999-07-28,90.8674515938879,91.57605098705125,90.42978726281643,90.90913391113281,3955500,0.0,0 -1999-07-29,89.99210939671211,90.20052095159102,88.9083693113418,89.63780975341797,7760600,0.0,0 -1999-07-30,89.9087887241342,90.2630885406178,88.40822479549774,88.53327178955078,5994300,0.0,0 -1999-08-02,88.53324946756932,89.86708373450068,88.3665201842029,88.74166107177734,6065500,0.0,0 -1999-08-03,89.17931659405048,89.26268122746394,87.61622971754808,88.3248291015625,5445400,0.0,0 -1999-08-04,88.5124084709934,89.28353140799052,86.99100375745856,87.11605072021484,6497900,0.0,0 -1999-08-05,87.28280789414646,87.99140757619062,85.92813203141496,87.90804290771484,10322000,0.0,0 -1999-08-06,87.51204459939227,88.03307368131291,86.36578061916684,86.94933319091797,7537700,0.0,0 -1999-08-09,87.09519251086463,87.89757703148399,86.5324812886121,86.76173400878906,5565900,0.0,0 -1999-08-10,86.61588314594734,86.80345363399198,84.69849593482435,85.8030776977539,9793300,0.0,0 -1999-08-11,86.49081593369992,87.05352726628061,85.78221647785756,86.8451156616211,8003400,0.0,0 -1999-08-12,87.15771951903271,87.90800117916785,86.6366905883833,86.79299926757812,7036800,0.0,0 -1999-08-13,87.78300481445771,88.8667456146362,87.44954610671049,88.8042221069336,5857700,0.0,0 -1999-08-16,88.7833415949456,89.34605291491357,88.19978911497883,89.20016479492188,3927000,0.0,0 -1999-08-17,89.6586521010545,89.92958712599957,88.78332355892425,89.78369903564453,4808000,0.0,0 -1999-08-18,89.50233922730492,89.61696557862642,88.86668400634024,89.13761901855469,4355500,0.0,0 -1999-08-19,88.28317139880491,88.85630341331557,87.8246657871964,88.40821838378906,6448100,0.0,0 -1999-08-20,88.74168609298653,89.4502857470874,88.4915920974215,89.30439758300781,3663700,0.0,0 -1999-08-23,89.90878496460492,91.06546961122883,89.80457914058475,91.01336669921875,5637800,0.0,0 -1999-08-24,90.74241571341534,92.01372654449442,90.28391016778025,91.34680938720703,9279500,0.0,0 -1999-08-25,91.49271135407734,92.55561073427278,90.80495293159795,92.28467559814453,6005300,0.0,0 -1999-08-26,92.2221577671596,92.31594301234654,91.034211328125,91.18009948730469,4322300,0.0,0 -1999-08-27,91.28429559357241,91.40934257383758,90.07550811767578,90.07550811767578,6247400,0.0,0 -1999-08-30,90.26308199438718,90.36728781520729,88.03307742883663,88.40821838378906,4652000,0.0,0 -1999-08-31,88.65832071805305,89.20019103743937,87.28280375345702,88.07476806640625,11453700,0.0,0 -1999-09-01,88.65831272933124,89.18976241776518,88.24148944428502,89.15850067138672,6863900,0.0,0 -1999-09-02,88.11645390867552,88.48117433048296,87.13691906153556,88.10603332519531,10896300,0.0,0 -1999-09-03,89.95043770665822,91.03417791999145,89.82539075896592,90.67987823486328,9160800,0.0,0 -1999-09-07,90.74240229165541,91.11754313714226,90.17969102342511,90.34642028808594,4560800,0.0,0 -1999-09-08,89.9296393856496,90.74244493282,89.38776902086933,89.90879821777344,6159600,0.0,0 -1999-09-09,89.86707305908203,90.20053158620293,89.15847368895012,89.86707305908203,6177800,0.0,0 -1999-09-10,90.86746454458228,90.94040861015706,89.99213575768492,90.61737060546875,2934500,0.0,0 -1999-09-13,90.11717459619135,90.34642735302717,89.70035140194439,90.00254821777344,2320500,0.0,0 -1999-09-14,89.40856170654297,89.7420202117422,88.95005626189403,89.40856170654297,3736000,0.0,0 -1999-09-15,90.32557307414565,90.32557307414565,87.94968121202,87.99136352539062,6984500,0.0,0 -1999-09-16,88.36655075291044,88.57496242921448,86.9076690187822,88.33528900146484,15377600,0.0,0 -1999-09-17,88.69902849286515,89.57682283704526,88.38553051280084,89.45142364501953,8542300,0.372,0 -1999-09-20,89.57677940257977,89.61857911298695,89.01248331208289,89.32598114013672,2803900,0.0,0 -1999-09-21,88.4482159587211,88.59451499267928,87.0479252051213,87.44502258300781,9335200,0.0,0 -1999-09-22,87.77941454967139,88.17651190120561,86.7762212405323,87.35096740722656,13009100,0.0,0 -1999-09-23,88.15559883900752,88.15559883900752,85.35501793705707,85.522216796875,12204100,0.0,0 -1999-09-24,85.43865203857422,85.85664935774533,84.47725820448068,85.43865203857422,13792900,0.0,0 -1999-09-27,86.10742135586744,86.77621686154409,85.79392346258152,86.00292205810547,6970300,0.0,0 -1999-09-28,85.56404091106124,86.14923708729712,83.97565128984955,85.83573913574219,11063400,0.0,0 -1999-09-29,85.89840749380564,86.35820432223964,84.76981527855857,84.81161499023438,7580300,0.0,0 -1999-09-30,85.22960511364982,86.56719577752271,84.91610730180463,86.1073989868164,7498900,0.0,0 -1999-10-01,85.56401395693338,85.98201109399704,84.68621996909967,85.9193115234375,11127100,0.0,0 -1999-10-04,86.40002948330647,87.52862203098391,86.1074314153901,87.44502258300781,6341600,0.0,0 -1999-10-05,87.4241268961053,88.26012141579075,86.06563580161647,87.3614273071289,11976000,0.0,0 -1999-10-06,87.44499849396759,88.82438900558371,87.40319878149437,88.69898986816406,10308200,0.0,0 -1999-10-07,88.85574081113553,88.94979016633961,87.94659704416284,88.19739532470703,6535600,0.0,0 -1999-10-08,88.11379811120412,89.53498840332031,87.76895046679357,89.53498840332031,9674300,0.0,0 -1999-10-11,89.34686454289533,89.7021620159314,89.15876588069976,89.38866424560547,4282000,0.0,0 -1999-10-12,89.03337781657461,89.15877694025994,87.73758687182635,88.00928497314453,8686100,0.0,0 -1999-10-13,87.40322060587347,87.82121783497855,85.73123168945312,85.73123168945312,10469300,0.0,0 -1999-10-14,85.92979097959326,86.40003792037908,84.76984852565494,85.71034240722656,10562200,0.0,0 -1999-10-15,84.26824896185248,84.7698456818635,83.26505552183043,83.51585388183594,14238700,0.0,0 -1999-10-18,83.55762163055608,84.22641700128591,82.55442857446137,84.12191772460938,9758800,0.0,0 -1999-10-19,85.06241085022454,85.77300592858022,84.22641664039432,84.93701171875,14392900,0.0,0 -1999-10-20,85.43861255311128,86.58810464959394,85.02061542711759,85.77301025390625,9759400,0.0,0 -1999-10-21,85.08332806409791,86.27462005615234,84.6862307334131,86.27462005615234,9105400,0.0,0 -1999-10-22,86.77620509173073,87.75849835746082,86.65080595142476,87.006103515625,8309600,0.0,0 -1999-10-25,86.48360790877109,87.25690261457692,86.10741048432502,86.56720733642578,8114300,0.0,0 -1999-10-26,87.06881225138247,87.4032099940666,85.48042297363281,85.48042297363281,6256300,0.0,0 -1999-10-27,85.8566310710339,87.1524224844721,85.77303162500563,87.02702331542969,5433300,0.0,0 -1999-10-28,88.57357624371109,90.19331483712487,88.40637742116515,89.99476623535156,10509700,0.0,0 -1999-10-29,90.85165967384394,92.08475098296674,90.76806026305596,91.62495422363281,10988600,0.0,0 -1999-11-01,91.29060830186181,91.62500613446936,90.66361236572266,90.66361236572266,4006500,0.0,0 -1999-11-02,90.93528747027176,91.79218169832994,90.01569366455078,90.01569366455078,6516900,0.0,0 -1999-11-03,90.95619342423893,91.20699175169547,90.37099732684034,90.62179565429688,7222300,0.0,0 -1999-11-04,91.45780723049647,91.86535458904187,90.79946149746158,91.31150817871094,7907500,0.0,0 -1999-11-05,92.71184019640373,93.03578824037223,91.47874764194299,92.21024322509766,7431500,0.0,0 -1999-11-08,91.62499712515569,92.54459107440451,91.45779822529227,92.29379272460938,4649200,0.0,0 -1999-11-09,92.62817159572701,92.75357074499921,91.14428166267273,91.42642974853516,4533700,0.0,0 -1999-11-10,91.1233738638902,92.55501402666003,91.00842465374079,92.10566711425781,6405600,0.0,0 -1999-11-11,92.41917524096769,92.628173828125,91.93847849050584,92.628173828125,4794100,0.0,0 -1999-11-12,93.12973659836116,93.62088309972145,91.70854672208455,93.4641342163086,11802900,0.0,0 -1999-11-15,93.52682961476162,93.79852766727377,93.23423171205623,93.68357849121094,2187500,0.0,0 -1999-11-16,94.00753418913985,95.63772264328679,93.6940364094962,94.46733093261719,7544800,0.0,0 -1999-11-17,95.13614439732821,95.595941228774,94.50914871808395,94.71814727783203,9459000,0.0,0 -1999-11-18,95.26158658628606,95.63778416385367,94.71819008535508,95.3869857788086,4491000,0.0,0 -1999-11-19,95.24064515766344,95.61684257105776,94.96894702576753,95.3033447265625,4832100,0.0,0 -1999-11-22,95.26159372432213,95.63779133007856,94.63459771472807,95.2824935913086,4155400,0.0,0 -1999-11-23,95.53323407478105,95.53323407478105,93.88214558388022,94.44644165039062,5918000,0.0,0 -1999-11-24,94.1329494562806,95.26154165668895,93.63135292276579,94.94804382324219,4459700,0.0,0 -1999-11-26,95.28247655412554,95.55417477636806,94.46738188739799,94.59278106689453,1693900,0.0,0 -1999-11-29,94.2165620994145,94.91670735902639,93.92396408047222,94.25836181640625,7348600,0.0,0 -1999-11-30,94.13298171952565,95.17797485584364,92.96258940684947,93.15068817138672,7682000,0.0,0 -1999-12-01,93.17155075158145,93.96574521738677,92.96255220794848,93.90304565429688,6980200,0.0,0 -1999-12-02,94.04933389309234,94.55093034052217,93.8821350772824,94.46733093261719,6698300,0.0,0 -1999-12-03,95.65868327629559,97.20527330523286,95.65868327629559,96.20207977294922,10045400,0.0,0 -1999-12-06,95.99308236836603,96.11848156153177,95.13618788173355,95.49148559570312,3138900,0.0,0 -1999-12-07,95.82583964449688,95.8467395004717,94.55094843003357,94.71814727783203,10714200,0.0,0 -1999-12-08,94.53007303331525,95.01076984511411,93.96577677598614,94.11207580566406,4611400,0.0,0 -1999-12-09,94.84355178074284,95.11524992379036,93.2133629224577,94.57185363769531,6474700,0.0,0 -1999-12-10,95.15702828226635,95.51232577420541,94.21653492125121,94.88533020019531,5127300,0.0,0 -1999-12-13,94.5927847775851,95.44967920442579,94.48828545723867,95.05258178710938,4210800,0.0,0 -1999-12-14,94.71818417130737,95.29293043448277,94.04938851961235,94.13298797607422,5739000,0.0,0 -1999-12-15,93.88215715388105,95.10479878199816,93.65225872808125,94.63455200195312,6879100,0.0,0 -1999-12-16,95.09438151524795,95.40787947628722,94.40468600096153,95.05258178710938,5854900,0.0,0 -1999-12-17,95.87252891831267,96.08204056367612,95.24399398222234,95.66301727294922,4775400,0.348,0 -1999-12-20,95.57918700229351,95.99821018073408,94.59448253295817,94.97160339355469,4608700,0.0,0 -1999-12-21,94.92972653391878,96.5848685326342,94.76211721759317,96.4172592163086,7981300,0.0,0 -1999-12-22,96.29153450319765,96.66865539550781,95.85156012883577,96.66865539550781,5377500,0.0,0 -1999-12-23,97.22384510986328,98.20854949951172,97.21336953125,98.20854949951172,5721700,0.0,0 -1999-12-27,98.21907639009426,98.4076369036418,97.25532265418464,98.07241821289062,2691000,0.0,0 -1999-12-28,97.79997944271223,98.21900249088152,97.53809003760642,98.00949096679688,4084500,0.0,0 -1999-12-29,98.09330934643897,98.42852783203125,97.42287237525443,98.42852783203125,3001000,0.0,0 -1999-12-30,98.63802104578033,98.93133716613737,98.00948650215811,98.31327819824219,3641300,0.0,0 -1999-12-31,98.44948493957519,98.88945922851562,98.05141296386718,98.4704360961914,3172700,0.0,0 -2000-01-03,99.39227190005406,99.39227190005406,96.45911041902379,97.50666809082031,8164300,0.0,0 -2000-01-04,96.22866296512282,96.58483262991862,93.62024394941244,93.69357299804688,8089800,0.0,0 -2000-01-05,93.81927322660174,94.8877821445465,92.0174738747733,93.86117553710938,12177900,0.0,0 -2000-01-06,93.60974548949088,94.86681458738019,92.35267639160156,92.35267639160156,6227200,0.0,0 -2000-01-07,94.07070760252545,97.7162094116211,93.90309832394634,97.7162094116211,8066500,0.0,0 -2000-01-10,98.05142211914062,98.49139644916241,97.23432693481446,98.05142211914062,5741700,0.0,0 -2000-01-11,97.75809184407692,97.94665224411908,96.20770633261921,96.87814331054688,7503700,0.0,0 -2000-01-12,96.94101261290571,96.94101261290571,95.78869886885776,95.9144058227539,6907700,0.0,0 -2000-01-13,96.85720919905037,97.71620672817888,96.06106514766299,97.21337890625,5158300,0.0,0 -2000-01-14,98.24000128994034,98.86853616703529,97.86288036368336,98.53331756591797,7437300,0.0,0 -2000-01-18,97.44383504959937,98.30283252047307,97.33907926046844,97.75810241699219,6488500,0.0,0 -2000-01-19,97.4228598633591,98.5542221069336,97.21334833677123,98.5542221069336,6157900,0.0,0 -2000-01-20,98.53328553794374,98.53328553794374,96.41721880621243,97.0457534790039,5800100,0.0,0 -2000-01-21,97.54855123509168,97.54855123509168,96.5847983663601,96.83621215820312,6244800,0.0,0 -2000-01-24,97.65334882717094,97.7790557769592,93.46311716756267,94.0916519165039,7896900,0.0,0 -2000-01-25,94.20688614788584,95.16016387939453,93.19075493957439,95.16016387939453,9942500,0.0,0 -2000-01-26,94.53162124979195,94.89826650064997,93.92403769122724,94.40591430664062,5158100,0.0,0 -2000-01-27,95.09733321449973,95.34874718201989,92.60414470325817,94.02882385253906,10922700,0.0,0 -2000-01-28,93.4840429704345,93.90306602274484,90.86514889349495,91.09561157226562,11916200,0.0,0 -2000-01-31,91.05371729931488,93.64118487558395,90.50898728325824,93.56785583496094,10768700,0.0,0 -2000-02-01,93.69360945674109,94.99258168087302,92.8765140254323,94.48975372314453,8419900,0.0,0 -2000-02-02,94.72019021807913,95.36967614967843,94.11260660464751,94.57353210449219,6205900,0.0,0 -2000-02-03,94.4478063695767,96.04009414333176,93.86117403187745,95.9981918334961,7997500,0.0,0 -2000-02-04,95.99822313524824,96.54295334072978,95.28588363577236,95.60015106201172,4925400,0.0,0 -2000-02-07,95.57919053972762,95.72584865760972,94.82494879061973,95.45348358154297,5845800,0.0,0 -2000-02-08,96.52197868310822,96.92005065944402,96.29151595996643,96.75244140625,4936400,0.0,0 -2000-02-09,96.85719461827065,96.85719461827065,94.7097011187308,94.72017669677734,8511500,0.0,0 -2000-02-10,94.95067765865367,95.57921259461123,94.44784970988763,94.90877532958984,6690600,0.0,0 -2000-02-11,95.09736090063136,95.16021441081023,92.54131815335728,92.98129272460938,9849800,0.0,0 -2000-02-14,93.71456910717872,93.71456910717872,92.72986426746546,93.52600860595703,8528800,0.0,0 -2000-02-15,93.35836446223193,94.67828747864141,92.38413556916781,94.5840072631836,11078300,0.0,0 -2000-02-16,94.1126318869831,94.48975285180181,93.05459806901945,93.19078063964844,8845400,0.0,0 -2000-02-17,94.15450751870365,94.15450751870365,92.66697524593376,92.70887756347656,7584200,0.0,0 -2000-02-18,93.10696114414559,93.10696114414559,90.25760319734005,90.7185287475586,9409200,0.0,0 -2000-02-22,90.63472575924965,91.40991874424553,89.52431418614742,90.48806762695312,16415400,0.0,0 -2000-02-23,90.92799925640465,92.16411721864608,90.17375778791833,91.55653381347656,12119000,0.0,0 -2000-02-24,91.64036667675462,91.87082941874006,89.23098346508868,89.71286010742188,17375000,0.0,0 -2000-02-25,90.63472429233266,91.66133120179275,89.25194763877418,89.38813018798828,10559900,0.0,0 -2000-02-28,89.41955766774187,91.64038079632216,88.9795832743439,91.26325988769531,13397800,0.0,0 -2000-02-29,91.2213451217228,92.14319610595703,91.01183353439686,92.14319610595703,8242500,0.0,0 -2000-03-01,92.26890663164195,93.1907576515766,91.99654155757034,92.81363677978516,6868000,0.0,0 -2000-03-02,92.98120533680502,93.27452144196845,92.08030587094593,92.87644958496094,7600200,0.0,0 -2000-03-03,94.15452243206879,95.01352007775522,93.6726457040008,94.61544799804688,12770300,0.0,0 -2000-03-06,94.40591232763846,94.76208199243426,93.02313598196066,93.69357299804688,11967100,0.0,0 -2000-03-07,93.86118627793296,93.96594206618958,90.65565915728034,91.88130187988281,20062000,0.0,0 -2000-03-08,91.493694857593,92.41554568739242,90.52994171734815,91.76605987548828,11808500,0.0,0 -2000-03-09,92.01750304959153,94.44783782958984,91.26326122131618,94.44783782958984,5500900,0.0,0 -2000-03-10,93.98688674845087,95.20205380850663,93.54691246808585,93.94498443603516,7924600,0.0,0 -2000-03-13,91.64036769243346,94.17545788237045,90.96993061740879,92.91838836669922,10540500,0.0,0 -2000-03-14,93.37932899384354,93.9240592056093,91.28421279474452,91.59848022460938,8263900,0.0,0 -2000-03-15,91.76607240242888,94.15450442386195,91.22134229227747,93.73548126220703,10300800,0.0,0 -2000-03-16,94.95064820821739,98.44949159982646,94.44782041541129,98.11427307128906,25601400,0.0,0 -2000-03-17,98.00653686263824,99.47684495959166,97.75448404601765,98.7626953125,10272900,0.371,0 -2000-03-20,98.72067986823086,99.03574586781032,97.31338507010928,98.25858306884766,12502300,0.0,0 -2000-03-21,97.81750915297216,100.65310368499948,97.12436382292104,100.2750244140625,13612600,0.0,0 -2000-03-22,100.52708039530958,101.38826098373576,99.93895706662828,100.8841552734375,8260000,0.0,0 -2000-03-23,100.25402817350327,103.15263615337828,100.25402817350327,102.60652160644531,11654500,0.0,0 -2000-03-24,102.75353274192081,104.68593769127827,101.97636988185313,103.21562957763672,11462900,0.0,0 -2000-03-27,103.08965418575134,103.36271154198907,102.039433584837,102.12345123291016,8798600,0.0,0 -2000-03-28,101.661335286593,102.82707993709009,101.22024271613465,101.53530883789062,6334400,0.0,0 -2000-03-29,101.87145240249208,102.49108288617734,100.59018258877002,101.6404037475586,6747500,0.0,0 -2000-03-30,100.92614882229856,102.11289750251913,98.88872188457474,99.9389419555664,9491900,0.0,0 -2000-03-31,100.56908310202887,102.37546178765427,99.77091577582229,101.07318878173828,9249100,0.0,0 -2000-04-03,100.90516494246553,101.66132354736328,99.93896228065175,101.66132354736328,8508200,0.0,0 -2000-04-04,101.99738031620785,102.83755643083889,95.03442076620314,100.9051513671875,19585500,0.0,0 -2000-04-05,99.3928394485429,101.36725341899155,99.22480421701535,100.2750244140625,8387200,0.0,0 -2000-04-06,100.98918021781064,101.95538285716574,100.14900400967578,101.14671325683594,6378500,0.0,0 -2000-04-07,101.8713253271565,102.24940447270058,101.15717583001766,101.78730773925781,6023600,0.0,0 -2000-04-10,101.9974259905423,102.91111792435379,101.03122302605199,101.38829803466797,9624200,0.0,0 -2000-04-11,100.82116569869365,101.91339499376282,99.72893640362446,101.09422302246094,9006400,0.0,0 -2000-04-12,101.07322547813176,101.59833575181283,98.237630000254,98.32164764404297,10779200,0.0,0 -2000-04-13,99.11979076808619,99.58188769474394,96.64127088874011,96.95633697509766,12225800,0.0,0 -2000-04-14,95.86411283997928,95.9901392810485,89.73082604127772,91.41117858886719,29604000,0.0,0 -2000-04-17,90.86507411367305,94.6038589477539,90.52900356678937,94.6038589477539,23918200,0.0,0 -2000-04-18,94.47779017734548,97.10334014892578,93.95268018302943,97.10334014892578,11069200,0.0,0 -2000-04-19,97.12438932860263,97.54447751774018,95.80111153281933,96.2001953125,6553700,0.0,0 -2000-04-20,96.4942724367993,96.74632539048707,95.69610475012138,96.66230773925781,8537600,0.0,0 -2000-04-24,95.10797754700029,96.32623344314119,94.43583636292254,95.6120834350586,12893100,0.0,0 -2000-04-25,97.20838102683868,99.58187866210938,97.08235460372697,99.58187866210938,14102000,0.0,0 -2000-04-26,99.45586975911458,99.98097994791667,98.13259208333332,98.45816040039062,7711100,0.0,0 -2000-04-27,96.11617561235819,99.0357884642196,96.11617561235819,98.13259887695312,15595300,0.0,0 -2000-04-28,98.80471373867583,99.38233483302396,97.5024407259637,97.52344512939453,8743400,0.0,0 -2000-05-01,98.51067780941737,99.80244895766452,98.02757640438185,98.84674835205078,7328300,0.0,0 -2000-05-02,97.79648515315854,98.88871393923334,96.8722915649414,96.8722915649414,9411900,0.0,0 -2000-05-03,96.78831750249778,96.78831750249778,93.95272226316679,94.6038589477539,12630700,0.0,0 -2000-05-04,95.44404251683699,95.68559324063621,94.60386608623104,95.3180160522461,5963600,0.0,0 -2000-05-05,94.81389551974577,96.78830982609405,94.72987788968841,96.4732437133789,7862400,0.0,0 -2000-05-08,95.94813042695394,96.3682185636744,95.33900262870927,95.74858856201172,5064100,0.0,0 -2000-05-09,96.15820362102875,96.38925216620815,94.27830863979631,94.9819564819336,5620300,0.0,0 -2000-05-10,94.43580468639529,94.75087076074936,92.58741705018471,92.83946990966797,10293900,0.0,0 -2000-05-11,94.18375163003424,95.10794544620764,93.51161067281721,94.9609146118164,7091100,0.0,0 -2000-05-12,95.31800177843357,96.43123538228042,95.19197533271506,95.99014282226562,5960800,0.0,0 -2000-05-15,95.94814084734705,97.8700442815704,95.44403502853437,97.64949798583984,4441300,0.0,0 -2000-05-16,98.51063267139358,99.28779544513378,97.67045669978255,98.59465026855469,8192200,0.0,0 -2000-05-17,97.92256571561322,98.2586362972198,97.10339367294722,97.56549072265625,5907200,0.0,0 -2000-05-18,97.88055024151191,98.34264725981947,96.36823272705078,96.36823272705078,4325600,0.0,0 -2000-05-19,95.82210636392328,96.27370112210485,94.37280225627079,94.85590362548828,6518400,0.0,0 -2000-05-22,94.9398908568301,95.0869216612544,92.08329237087237,94.1417236328125,10839400,0.0,0 -2000-05-23,94.39379865190257,94.64585151879685,92.46139333904654,92.75545501708984,7979200,0.0,0 -2000-05-24,92.75545921937666,94.56183818062358,91.74724770612256,94.26777648925781,11081500,0.0,0 -2000-05-25,94.56183737904219,95.31799600757296,92.56641877597488,92.65043640136719,8278900,0.0,0 -2000-05-26,93.30156956202742,93.88969291811405,92.30386029723762,92.75545501708984,4814000,0.0,0 -2000-05-30,94.09978284333882,96.07419792978388,93.74270777451365,95.78013610839844,5362700,0.0,0 -2000-05-31,95.82210756130762,96.7883103118162,95.50704144701135,95.99014282226562,6056500,0.0,0 -2000-06-01,96.57825735440818,97.75450407294817,96.11616042926748,97.67048645019531,8961600,0.0,0 -2000-06-02,100.10698793000435,100.21200994839504,99.13028315897094,99.37183380126953,8962200,0.0,0 -2000-06-05,99.11980429319577,99.62391010015418,98.7207205293537,98.88875579833984,6998100,0.0,0 -2000-06-06,98.5527073083108,99.32987060123652,98.06960580189751,98.44768524169922,4858900,0.0,0 -2000-06-07,98.55268121576496,99.47687515725978,98.13259306054005,99.13030242919922,4919500,0.0,0 -2000-06-08,99.14081351956366,99.30884879671547,98.1746106759408,98.74172973632812,5723100,0.0,0 -2000-06-09,99.1407897207585,99.45585578978634,97.88052544464716,98.53166198730469,3085300,0.0,0 -2000-06-12,98.78372190572559,98.78372190572559,97.37642669677734,97.37642669677734,3678900,0.0,0 -2000-06-13,97.33440450054091,99.30881840279616,97.20837808124801,99.20379638671875,6558700,0.0,0 -2000-06-14,99.64489104908532,100.06497912264807,98.93074132402863,99.37183380126953,6420500,0.0,0 -2000-06-15,99.56087425825743,99.98096233529648,98.69969370032734,99.58187866210938,5881200,0.0,0 -2000-06-16,99.92160347097084,99.92160347097084,98.2794026553923,98.76364135742188,5567900,0.348,0 -2000-06-19,98.6794239317987,100.49005556357481,98.53204693851458,100.02687072753906,5106900,0.0,0 -2000-06-20,99.83737614530524,100.30056093551964,99.03732968948036,99.6689453125,6480000,0.0,0 -2000-06-21,98.9952533783191,100.00583869566478,98.96367258715206,99.62686920166016,3115000,0.0,0 -2000-06-22,99.41632408502277,99.50053952262125,97.68990761425363,98.1109848022461,7490500,0.0,0 -2000-06-23,98.237306867327,98.44784545898438,96.93196759905135,97.26882934570312,4863300,0.0,0 -2000-06-26,97.94257180040393,98.53207997117163,97.60570998853667,98.52155303955078,5201300,0.0,0 -2000-06-27,98.35312391923755,98.84788971440014,97.7004541468954,97.79519653320312,4159500,0.0,0 -2000-06-28,98.11097826042518,99.02682108324245,97.90043968046719,98.0688705444336,5347700,0.0,0 -2000-06-29,97.52148659734638,98.19521016623997,96.68985906699336,97.14251708984375,6345700,0.0,0 -2000-06-30,96.97405588039662,98.0899101925245,96.9424750979779,97.8793716430664,7420200,0.0,0 -2000-07-03,97.98466701495428,99.33211409036404,97.81623613052805,99.22684478759766,1436600,0.0,0 -2000-07-05,98.61626419819113,98.80574890736784,97.26881737737895,97.43724822998047,2748200,0.0,0 -2000-07-06,97.64780531371233,98.67944448153723,97.16356652065166,98.19520568847656,5963200,0.0,0 -2000-07-07,98.82682248091592,100.23743115288468,98.53206843005678,99.77424621582031,3034800,0.0,0 -2000-07-10,99.62685830183398,100.32163563149597,99.39526585861331,99.60580444335938,2816100,0.0,0 -2000-07-11,99.35317550623776,100.46903020041675,99.14263688469457,99.81636047363281,5431600,0.0,0 -2000-07-12,100.57427105100237,101.14272516830968,100.17424778326759,100.46900177001953,5883000,0.0,0 -2000-07-13,101.04799051760334,101.31116374012028,100.5111171436688,100.91114044189453,5356000,0.0,0 -2000-07-14,101.35331054561394,101.90071105957031,100.83749083053966,101.90071105957031,5341900,0.0,0 -2000-07-17,101.72174235527089,102.39546599293386,101.52173065033969,101.73226928710938,4208300,0.0,0 -2000-07-18,101.47961597711267,101.47961597711267,100.61640762544013,100.900634765625,4262100,0.0,0 -2000-07-19,100.70064238314373,100.99539651096393,99.87954159850175,100.09008026123047,8506800,0.0,0 -2000-07-20,100.38479079883624,101.4795913696289,100.25846765605246,101.4795913696289,4538900,0.0,0 -2000-07-21,100.89008870167193,100.89008870167193,99.50053405761719,99.50053405761719,5656900,0.0,0 -2000-07-24,99.79529134616823,100.29005703111231,98.7425983994787,98.93208312988281,5628500,0.0,0 -2000-07-25,99.54268658216797,99.60584818532925,98.89001668283481,99.24793243408203,4757100,0.0,0 -2000-07-26,99.0163117354,99.1426349058045,98.1215226117014,98.27942657470703,12062500,0.0,0 -2000-07-27,98.32155075138843,98.78473578704808,97.47939614109816,97.94258117675781,7652600,0.0,0 -2000-07-28,98.17418217454502,98.30050537699994,95.34243705284734,95.73193359375,6229500,0.0,0 -2000-07-31,96.30036053957639,97.10040726028123,95.71085242958335,96.34246826171875,5265500,0.0,0 -2000-08-01,96.76355304602019,97.5004382411052,96.42669124255276,96.9319839477539,3946600,0.0,0 -2000-08-02,96.93196759905135,97.96360669817244,96.76353672572544,97.41620635986328,7439800,0.0,0 -2000-08-03,96.25824945355261,98.23731232508234,96.08981857086923,98.08993530273438,4607100,0.0,0 -2000-08-04,98.57419476073385,98.84789500248728,97.96363268297621,98.61630249023438,3686600,0.0,0 -2000-08-07,98.84789469272276,100.00585725035849,98.6163021811956,99.79531860351562,4159800,0.0,0 -2000-08-08,99.37419363809965,100.25845553064207,99.37419363809965,100.17424011230469,3658700,0.0,0 -2000-08-09,100.47956602105452,100.53220068109698,99.29002270409495,99.3321304321289,5383800,0.0,0 -2000-08-10,99.39528556068103,99.61635111848386,98.5531310547655,98.84788513183594,4193400,0.0,0 -2000-08-11,98.7847039532252,99.71107372601759,98.06887276515835,99.31105041503906,5089400,0.0,0 -2000-08-14,99.56370970542545,100.7637797949178,99.07947089738468,100.57429504394531,2966700,0.0,0 -2000-08-15,100.61638967920443,100.93219755641474,100.09004321718724,100.49006652832031,5564600,0.0,0 -2000-08-16,100.59530296036934,101.01637999243451,99.6057719350162,100.13211822509766,5191600,0.0,0 -2000-08-17,100.17422953973549,101.35324527202326,99.94263716375039,101.184814453125,5652200,0.0,0 -2000-08-18,101.31117687504077,101.31117687504077,100.53218403539478,100.84799194335938,4626400,0.0,0 -2000-08-21,101.07957024906958,101.5427551158639,100.65849309743837,101.39537811279297,2380600,0.0,0 -2000-08-22,101.43750547450315,101.94279815432633,101.12169754961366,101.22696685791016,3075300,0.0,0 -2000-08-23,100.93222140732428,101.92175298974902,100.5743057285749,101.62699890136719,5483200,0.0,0 -2000-08-24,101.83752549497217,102.0691179656037,101.39539441467562,101.94279479980469,4529000,0.0,0 -2000-08-25,101.83754946180612,102.1533574506271,101.69017240035632,101.90071105957031,2822200,0.0,0 -2000-08-28,101.90070388811226,103.01655870341597,101.90070388811226,102.24809265136719,5518700,0.0,0 -2000-08-29,102.02706077681702,102.32181497633734,101.66914496311378,102.26918029785156,3561900,0.0,0 -2000-08-30,101.9428156977804,102.0691388894753,101.29014587402344,101.29014587402344,3964800,0.0,0 -2000-08-31,101.77436493389423,103.14286591045673,101.66909562800481,102.6375732421875,4863100,0.0,0 -2000-09-01,103.2481593022581,103.47975182924114,102.4060046586834,102.74286651611328,3191200,0.0,0 -2000-09-05,102.32171506040527,102.54278049417775,101.60588413199915,101.92169189453125,3470800,0.0,0 -2000-09-06,101.85855632101298,102.37437579804168,100.74270194213459,100.76375579833984,4322200,0.0,0 -2000-09-07,101.22697549570611,101.78490287728603,100.9427483390522,101.62699890136719,4265500,0.0,0 -2000-09-08,101.2480054480561,101.39538245744193,100.60586276430362,100.93219757080078,3518200,0.0,0 -2000-09-11,100.89013567323448,101.85861360331978,100.17430415969316,100.78486633300781,3937500,0.0,0 -2000-09-12,100.89008982494623,101.22695156058879,100.00582776888452,100.04793548583984,4769100,0.0,0 -2000-09-13,99.71109163474655,100.61640771166677,99.47949914995301,100.31112670898438,7691600,0.0,0 -2000-09-14,100.97431019630365,101.01641791531796,99.81634792341026,100.81640625,3397100,0.0,0 -2000-09-15,100.0882287188752,100.13044222740278,98.61075592041016,98.61075592041016,4085700,0.375,0 -2000-09-18,98.86401916358868,99.26504742236497,97.3971000064859,97.7031478881836,5109300,0.0,0 -2000-09-19,98.01977821305996,98.82183496846399,97.73483699732432,98.58966064453125,6588200,0.0,0 -2000-09-20,98.3996953553885,98.63186966875385,96.69004813878908,97.8614730834961,6508100,0.0,0 -2000-09-21,97.57655181584002,98.31528841838261,96.33125297155394,96.37346649169922,5972300,0.0,0 -2000-09-22,96.33122348928995,98.14640429999963,96.19402959080608,98.12529754638672,7791300,0.0,0 -2000-09-25,98.56850576152834,98.65293274719133,97.06992676601047,97.42874145507812,9726300,0.0,0 -2000-09-26,97.51317389000397,97.93530884190875,96.1834487915039,96.1834487915039,5302400,0.0,0 -2000-09-27,96.96441308974802,97.23880084990621,95.99350255380367,96.69002532958984,7186200,0.0,0 -2000-09-28,96.71118679046631,98.8324164439892,96.51067254461091,97.93537902832031,7036400,0.0,0 -2000-09-29,98.25193601032254,98.58964406105619,97.00663757324219,97.00663757324219,9333600,0.0,0 -2000-10-02,97.44991359341904,97.8720488049998,96.67951683228415,97.1544189453125,5517800,0.0,0 -2000-10-03,97.61874236558613,98.44190581472296,96.0990559979489,96.2468032836914,9347200,0.0,0 -2000-10-04,96.50008301736999,97.42878022926068,95.74023984400488,97.04885864257812,6148900,0.0,0 -2000-10-05,96.85888211862526,97.82979268246417,96.79556186446185,97.38655090332031,4566900,0.0,0 -2000-10-06,97.17552550133742,97.69264113443533,94.3894331107691,95.27591705322266,10014900,0.0,0 -2000-10-09,95.44474942684174,95.44474942684174,94.13613057136536,94.55826568603516,4508000,0.0,0 -2000-10-10,94.62156535775024,95.40251514990656,92.99634552001953,92.99634552001953,6104700,0.0,0 -2000-10-11,92.95416778753048,93.62958408389764,91.26562704661258,92.2154312133789,10346000,0.0,0 -2000-10-12,92.72194671272672,92.93301419898378,89.68257491062505,89.91474914550781,12336900,0.0,0 -2000-10-13,89.78815633174995,92.9752770666099,89.74594281208293,92.91195678710938,11778800,0.0,0 -2000-10-16,92.80640702267029,93.36573606203821,92.32095163001134,93.33407592773438,5659000,0.0,0 -2000-10-17,93.50291839557146,93.58734540992411,90.78014718269816,91.01232147216797,7831700,0.0,0 -2000-10-18,89.57707029658766,91.94102691138923,87.909636612933,90.67462158203125,10897300,0.0,0 -2000-10-19,92.42645415301385,94.18886769989136,92.15206641517662,94.09388732910156,8767300,0.0,0 -2000-10-20,93.46071826695385,95.36032636181062,93.46071826695385,94.49494934082031,7373500,0.0,0 -2000-10-23,94.5160173819493,95.25475356068272,93.84060144710732,94.91704559326172,5290000,0.0,0 -2000-10-24,95.21257943554107,95.86688889297885,93.882853763974,94.28388214111328,5750700,0.0,0 -2000-10-25,93.71399975216536,94.26277542638977,91.94103218928656,92.06767272949219,9137600,0.0,0 -2000-10-26,92.61647092298553,92.97528587414567,90.52690150152345,92.32097625732422,9345800,0.0,0 -2000-10-27,93.12299578185036,94.07279968261719,92.2787256478354,94.07279968261719,9762900,0.0,0 -2000-10-30,93.50289347968634,95.29696705661034,93.31293274801203,94.91704559326172,10154100,0.0,0 -2000-10-31,95.24422250610712,97.04884987990704,94.60046654235393,96.55284118652344,7752400,0.0,0 -2000-11-01,96.07795308676432,96.75336927718095,95.38143014039719,96.22570037841797,6753600,0.0,0 -2000-11-02,96.69005065202896,97.19661280344758,96.25736214769222,96.38400268554688,11395100,0.0,0 -2000-11-03,96.90112387343449,97.0910846913088,96.16238735947888,96.43677520751953,5187100,0.0,0 -2000-11-06,96.69003231228498,97.46042877144203,96.6056053030623,97.11216735839844,4042500,0.0,0 -2000-11-07,96.67947516980378,97.25991083559782,96.28900026736052,97.09105682373047,5231300,0.0,0 -2000-11-08,97.30214327162983,97.30214327162983,94.93818664550781,94.93818664550781,6123300,0.0,0 -2000-11-09,94.55828471951016,95.38144835880946,92.7008898410912,94.57939147949219,10635300,0.0,0 -2000-11-10,93.88286119410454,94.19946256953429,92.21542728350781,92.27874755859375,8569500,0.0,0 -2000-11-13,91.60330969817961,92.52145347050008,89.84089579039205,91.56109619140625,17285300,0.0,0 -2000-11-14,92.84858930678594,94.30495499493512,92.53198807023178,93.96724700927734,7668900,0.0,0 -2000-11-15,93.92503310467062,94.63210919658219,93.03854964615464,94.26274108886719,8837700,0.0,0 -2000-11-16,93.59794211539493,94.47387279479258,92.74311819935626,92.78533172607422,6684100,0.0,0 -2000-11-17,92.74306363890415,93.88282818976916,91.68772609180692,92.28926849365234,6551100,0.0,0 -2000-11-20,91.68773765475457,92.10987272682986,90.71682698898138,90.97010803222656,5458500,0.0,0 -2000-11-21,91.09671741179152,91.98320076009904,90.17857394390158,91.4344253540039,7684300,0.0,0 -2000-11-22,90.73795010342417,91.09676497938561,89.23937032734995,89.24992370605469,5736900,0.0,0 -2000-11-24,90.25249714414878,91.16008773750669,90.25249714414878,91.0756607055664,3411600,0.0,0 -2000-11-27,92.17319536373421,92.32094264276927,91.39224546026313,91.87770080566406,5992000,0.0,0 -2000-11-28,91.26561138194094,92.25762889696205,90.26304048910048,90.2947006225586,5336100,0.0,0 -2000-11-29,90.75904953396014,91.79328056353317,90.00975970641232,90.12584686279297,6914100,0.0,0 -2000-11-30,89.49264169499689,90.16805785873272,87.63524724472337,89.34489440917969,11201600,0.0,0 -2000-12-01,89.95698269307825,90.54797178632231,88.4795099599681,89.30267333984375,7587200,0.0,0 -2000-12-04,89.07049786550031,90.42133006061691,88.81721682891596,90.06251525878906,6996600,0.0,0 -2000-12-05,91.09675656659061,93.37628615630142,90.78015523468635,93.01747131347656,8883400,0.0,0 -2000-12-06,93.05968930747947,93.43961092406705,91.20229473749576,91.52944946289062,12888000,0.0,0 -2000-12-07,91.0967227274886,91.7721386513254,90.2735595703125,90.2735595703125,6529100,0.0,0 -2000-12-08,92.5741869724239,94.19940639715637,90.42129890329775,90.484619140625,10276300,0.0,0 -2000-12-11,92.78529976379559,94.26277268997069,92.34205788594306,93.62957000732422,6405600,0.0,0 -2000-12-12,93.33404937599049,93.75618437995246,92.78527387083994,93.228515625,5022900,0.0,0 -2000-12-13,94.05169050780802,94.15722427184281,91.87769496869127,91.95156860351562,6070500,0.0,0 -2000-12-14,91.77218425709047,92.19431941926659,90.52688552867089,90.78016662597656,7678400,0.0,0 -2000-12-15,90.19058500602576,90.19058500602576,88.45452210215389,88.72975158691406,9065300,0.411,0 -2000-12-18,89.47075041035974,90.4234678188941,89.26962117966916,89.91535186767578,7235400,0.0,0 -2000-12-19,89.74593857099426,91.43965762871531,88.08397674560547,88.08397674560547,9616600,0.0,0 -2000-12-20,87.14187047977259,87.35358542262918,85.4269794426342,85.5328369140625,9994300,0.0,0 -2000-12-21,85.36345193238385,87.30064336388511,85.04587956656397,86.12562561035156,14331500,0.0,0 -2000-12-22,87.3959395743213,88.82501562113978,87.29008208937178,88.70857238769531,10182900,0.0,0 -2000-12-26,88.64506113712171,89.66129302978516,88.26397417737292,89.66129302978516,4665300,0.0,0 -2000-12-27,89.25902923998898,90.60341926767856,88.9202852960042,90.3176040649414,4854100,0.0,0 -2000-12-28,89.97882317928376,90.69865376471805,89.83062276463554,90.5927963256836,8358700,0.0,0 -2000-12-29,90.82570708894116,90.97390754339864,88.8779296875,88.8779296875,8774600,0.0,0 -2001-01-02,89.42840602824782,89.53426351644413,86.42205336347244,87.26891326904297,8737500,0.0,0 -2001-01-03,86.93016113705104,92.13834906684028,86.48555972841051,91.46086120605469,19431600,0.0,0 -2001-01-04,91.41852629297698,91.77844175082335,90.10589344671375,90.47639465332031,9219000,0.0,0 -2001-01-05,90.42345154775647,90.52930901854523,87.52295684814453,87.52295684814453,12911400,0.0,0 -2001-01-08,87.98872452404885,88.200439453125,86.50672002051577,88.200439453125,6625300,0.0,0 -2001-01-09,88.78265465416202,89.08964129836981,87.6817370335548,87.9675521850586,5702400,0.0,0 -2001-01-10,87.39592737867342,89.51307678222656,87.26889841446024,89.51307678222656,8746100,0.0,0 -2001-01-11,88.8144102168669,90.43402937815185,88.8144102168669,89.5977554321289,7245100,0.0,0 -2001-01-12,89.89414036273956,90.59279948472977,88.94142337820747,89.4283676147461,7244000,0.0,0 -2001-01-16,89.42837737627912,90.23289402881193,89.10021926800916,90.00000762939453,8542200,0.0,0 -2001-01-17,91.35502699903464,91.49264175581186,89.86243617552782,90.41289520263672,7851400,0.0,0 -2001-01-18,90.40227835620055,91.93721165381754,90.0635344560368,91.31265258789062,8107000,0.0,0 -2001-01-19,92.26537954288858,92.26537954288858,90.69868883931498,90.79396057128906,7782500,0.0,0 -2001-01-22,90.95273749674253,91.99014069444746,90.48696463246684,91.3973388671875,7050900,0.0,0 -2001-01-23,91.10093296360515,92.58293745057989,90.88921803689446,92.1171646118164,8463100,0.0,0 -2001-01-24,92.30769380312464,93.02752444287378,92.03246444086761,92.39237976074219,6199900,0.0,0 -2001-01-25,92.3077005587472,92.98518826927013,91.90544223062422,92.15950012207031,10818300,0.0,0 -2001-01-26,91.56670557213356,92.22302184328643,91.09034698823228,92.05364990234375,7136800,0.0,0 -2001-01-29,91.7995896659353,92.74806837613515,91.7115129508301,92.54483032226562,6705900,0.0,0 -2001-01-30,92.34163220667143,93.43915964569229,91.99610665168467,93.35786437988281,7069100,0.0,0 -2001-01-31,93.0867762883932,93.96751208627377,92.54479457059463,92.82933807373047,9706900,0.0,0 -2001-02-01,92.88355619283011,93.45941446325163,92.30768758476798,93.44586181640625,8239100,0.0,0 -2001-02-02,93.08681756905284,93.48654321900538,91.2914790729901,91.32535552978516,8276600,0.0,0 -2001-02-05,91.32537207829299,92.09770788001174,91.29149561535938,91.99607849121094,4352900,0.0,0 -2001-02-06,91.66411859445782,92.61259755723928,91.6099183197781,91.72509002685547,7106700,0.0,0 -2001-02-07,91.27117830386575,91.73186515210054,90.5665850402003,91.2508544921875,5748700,0.0,0 -2001-02-08,91.32536453255697,91.73185104123911,90.17363725149124,90.18717956542969,5943300,0.0,0 -2001-02-09,90.34299757704147,90.34299757704147,88.92704029190833,89.31998443603516,9913000,0.0,0 -2001-02-12,89.22512617609415,90.44460607838727,89.22512617609415,90.34298706054688,5804400,0.0,0 -2001-02-13,90.58012981959197,90.89854995839823,89.42840246148067,89.60454559326172,6587600,0.0,0 -2001-02-14,89.86873225959413,89.86873225959413,88.5205384578529,89.4690170288086,8400100,0.0,0 -2001-02-15,89.99748349207084,90.45818060553886,89.42162502229105,90.33622741699219,5929800,0.0,0 -2001-02-16,88.75089528374679,88.94736218275872,87.59916817583739,88.34439849853516,6434900,0.0,0 -2001-02-20,88.77800471129548,88.84575763241844,86.78619908459939,86.982666015625,5760000,0.0,0 -2001-02-21,86.65067386532805,87.28750875914349,85.0247024265932,85.10600280761719,10910800,0.0,0 -2001-02-22,85.60060057926934,85.72932494248516,83.34456448816695,85.23475646972656,21281600,0.0,0 -2001-02-23,84.7401672714314,85.05181100977713,82.51800832404723,84.65886688232422,20173000,0.0,0 -2001-02-26,85.22797841461295,86.46100616455078,84.34724209230491,86.46100616455078,11503700,0.0,0 -2001-02-27,85.90547138510256,86.6100542820455,85.03151133724391,85.66157531738281,11415000,0.0,0 -2001-02-28,85.87156944989694,85.93254086433016,83.51390988421016,83.97460174560547,14825800,0.0,0 -2001-03-01,84.04234765081603,84.41496276855469,82.48412394006675,84.41496276855469,14672000,0.0,0 -2001-03-02,82.99225086579833,85.12633835039743,82.85675538089295,83.7442626953125,12564300,0.0,0 -2001-03-05,84.11010374618715,84.53691916055307,83.8797552273713,84.50981903076172,5293200,0.0,0 -2001-03-06,85.60055242409808,86.54903604465278,85.0179127072782,85.41763305664062,6917000,0.0,0 -2001-03-07,85.97319689500111,86.0680447669215,85.20086127003708,86.02739715576172,6371700,0.0,0 -2001-03-08,85.76994166115372,86.20353337501572,85.45829793986672,86.12223815917969,6055000,0.0,0 -2001-03-09,85.43115835094196,85.43115835094196,83.40547251383153,83.57484436035156,10020300,0.0,0 -2001-03-12,82.88386694001902,82.9922674847073,79.77419996999416,79.99777221679688,13972900,0.0,0 -2001-03-13,80.89204886133524,81.59663683285581,79.62514474396336,81.31208801269531,12888000,0.0,0 -2001-03-14,79.29998248660607,80.81755435107165,78.41924590780098,79.70647430419922,19883400,0.0,0 -2001-03-15,80.24842417211673,80.52619663844656,79.50996498492636,79.72676086425781,10370300,0.0,0 -2001-03-16,79.5678161022104,79.75123325240038,77.99181240201762,78.12767791748047,58514600,0.316,0 -2001-03-19,78.63718125243128,79.94825399789259,77.99862612977672,79.71728515625,10067800,0.0,0 -2001-03-20,80.09084892953169,80.47126181575538,77.51625701401198,77.577392578125,15083900,0.0,0 -2001-03-21,77.56380626927312,78.29746411277014,76.01497649927052,76.25952911376953,19004600,0.0,0 -2001-03-22,76.09650679381654,76.4905088880847,73.3928486881565,75.4851303100586,28624800,0.0,0 -2001-03-23,76.9320755817863,77.88990788469133,75.74327971186906,77.76763153076172,12861700,0.0,0 -2001-03-26,78.59638371683188,78.9835912873984,77.96462345088248,78.7594223022461,9943800,0.0,0 -2001-03-27,78.54208411596235,80.60039940173874,78.3111152562158,80.36943054199219,12880700,0.0,0 -2001-03-28,79.41156130674126,79.44552379173899,78.0529375211092,78.14804077148438,10953300,0.0,0 -2001-03-29,77.91705478961067,79.1398179991735,76.17801838733223,78.4469223022461,12060300,0.0,0 -2001-03-30,78.49450561390886,79.2689208984375,77.78122592317699,79.2689208984375,9183600,0.0,0 -2001-04-02,79.00395126693762,79.73760394997807,77.30567204952914,77.577392578125,10561000,0.0,0 -2001-04-03,77.42799080044392,77.54347260666891,74.76508358907051,74.9892578125,12836000,0.0,0 -2001-04-04,75.1115283916328,76.15087493289629,74.24880442332093,75.3017349243164,14884300,0.0,0 -2001-04-05,76.96605021394389,78.45373994147701,76.42259855115115,78.15484619140625,21522800,0.0,0 -2001-04-06,77.43477861083504,77.7132990371887,76.12370615578736,76.96605682373047,14937800,0.0,0 -2001-04-09,77.44155508055351,78.11407239719156,76.61279374957611,77.82196807861328,9034300,0.0,0 -2001-04-10,78.42654484140188,79.98896404661772,78.23633836759912,79.2417221069336,17873600,0.0,0 -2001-04-11,80.688706665875,80.83136161368823,78.89532277516426,79.2961196899414,12722300,0.0,0 -2001-04-12,79.00396408159854,80.79734681145457,78.77299537554406,80.7362060546875,9233200,0.0,0 -2001-04-16,80.35581954304799,80.76340571888214,79.41837082035548,79.88709259033203,7350000,0.0,0 -2001-04-17,79.69004863500903,81.2864351713585,79.49304763301832,81.01470947265625,10924700,0.0,0 -2001-04-18,82.23751631982233,85.59331955448273,81.98617417459195,84.23469543457031,32481600,0.0,0 -2001-04-19,84.4045223941398,85.48462606824917,83.94938456351785,85.35556030273438,13809900,0.0,0 -2001-04-20,84.84605899273771,85.18571494932775,84.00371367156124,84.57433319091797,7626700,0.0,0 -2001-04-23,83.99690993961553,84.15994332982969,82.81490879077137,83.03907775878906,8451800,0.0,0 -2001-04-24,83.22931676068781,83.99694275570572,82.26469481618146,82.59076690673828,10044700,0.0,0 -2001-04-25,82.48204921309501,84.01050097992207,82.16277179256409,83.67084503173828,8249000,0.0,0 -2001-04-26,84.0512815711258,85.06345506656159,83.8950375204394,84.04448699951172,10590400,0.0,0 -2001-04-27,84.85963902333295,85.48460471067823,84.37053363924069,85.44384765625,7938700,0.0,0 -2001-04-30,85.89900403656365,86.45603969331039,84.68982945358216,86.04166412353516,10766900,0.0,0 -2001-05-01,84.96155475873857,86.37452501458436,84.6422772777529,86.30659484863281,10578000,0.0,0 -2001-05-02,86.55114161070497,86.74134813531992,85.5933092339437,86.15034484863281,9572900,0.0,0 -2001-05-03,85.68160631626917,85.6951954563228,84.38412330901988,85.056640625,9926200,0.0,0 -2001-05-04,83.99692070286746,86.51037275646331,83.85426582030821,86.50357818603516,12145300,0.0,0 -2001-05-07,86.17750763924606,86.53074754516311,85.7495430100649,85.75633239746094,7185200,0.0,0 -2001-05-08,86.17750080295147,86.34053419407711,85.29439333410635,85.71556854248047,6952600,0.0,0 -2001-05-09,85.0838344456017,85.966942185598,84.95476349734724,85.35556030273438,9507400,0.0,0 -2001-05-10,86.44924605330363,86.61227948116,85.43706744779469,85.60689544677734,6872400,0.0,0 -2001-05-11,85.59329847160338,85.92615984782618,84.50640047994023,85.01588439941406,7734400,0.0,0 -2001-05-14,84.84606636497165,85.21289545189111,84.54716743872488,85.18572235107422,7914000,0.0,0 -2001-05-15,85.28760760179605,85.93295180709394,84.8120861817581,85.5797119140625,9782200,0.0,0 -2001-05-16,84.80529483621692,87.76709512533408,84.65585057219668,87.5972671508789,14909000,0.0,0 -2001-05-17,87.63123114508622,88.36488920783249,87.3323322640996,87.73312377929688,11824600,0.0,0 -2001-05-18,87.69239022708969,88.13394927978516,87.01987793011368,88.13394927978516,6683100,0.0,0 -2001-05-21,88.20188137765321,89.56050558999715,87.73315436591773,89.43143463134766,11531500,0.0,0 -2001-05-22,89.55367360962975,89.7302909416641,89.03740038604657,89.31591033935547,8342700,0.0,0 -2001-05-23,89.0238347727809,89.0238347727809,87.80107116699219,87.80107116699219,12330800,0.0,0 -2001-05-24,87.95051933082826,88.31055383646176,87.32555357830448,88.05921173095703,7902800,0.0,0 -2001-05-25,88.07279991941193,88.10676759376712,86.88400905807266,87.0198745727539,7425000,0.0,0 -2001-05-29,87.1013728558726,87.18968672003678,86.20468135303429,86.32695770263672,9003900,0.0,0 -2001-05-30,85.99408266935691,86.33373858671638,84.91397933986804,85.1177749633789,10041800,0.0,0 -2001-05-31,85.20612427671428,86.10961069168184,85.09064245358802,85.55936431884766,9874200,0.0,0 -2001-06-01,85.7291859981265,86.34056793217134,84.99553286001276,86.08922576904297,8848300,0.0,0 -2001-06-04,86.1367543067335,86.56471895441122,85.64764889067969,86.50357818603516,5623500,0.0,0 -2001-06-05,86.60547445540723,87.78747573447369,86.45602500510508,87.49537658691406,9115400,0.0,0 -2001-06-06,87.51578941978384,87.51578941978384,86.51719968564267,86.76854705810547,12064900,0.0,0 -2001-06-07,86.30657094357107,87.18967840455781,86.2726032786339,87.08098602294922,7355300,0.0,0 -2001-06-08,86.74813746600724,86.86362444108039,85.68841243943284,86.27262115478516,8170600,0.0,0 -2001-06-11,86.07558968115332,86.2657961385136,85.19248753158956,85.66120910644531,7012200,0.0,0 -2001-06-12,84.81891420045906,86.09601915765332,84.2618784530643,85.51181030273438,9364400,0.0,0 -2001-06-13,85.70877587671404,85.98729622619769,84.67622413299847,84.77812194824219,7629400,0.0,0 -2001-06-14,84.35698408752462,84.43850341236761,82.70625533432256,82.87608337402344,12603000,0.0,0 -2001-06-15,82.36920910662299,83.38426114443642,82.02177323422498,83.00957489013672,16821100,0.346,0 -2001-06-18,82.87332019915998,83.4115034955753,82.36920117621183,82.60763549804688,11368300,0.0,0 -2001-06-19,83.37063567353424,83.71807155559549,82.35558360748915,82.96870422363281,7732300,0.0,0 -2001-06-20,82.5599601473972,83.69763635415372,82.4986454861011,83.40470123291016,8787200,0.0,0 -2001-06-21,83.26164181318957,84.68543926645658,83.21395494148875,84.35163116455078,12259100,0.0,0 -2001-06-22,84.12679916350379,84.19492250705039,83.22074881912594,83.69080352783203,12212000,0.0,0 -2001-06-25,83.98375948457064,84.0927610193557,82.77114599622266,82.9210205078125,8406800,0.0,0 -2001-06-26,82.36238909202109,83.37744105441331,82.1375773561454,82.8051986694336,8005800,0.0,0 -2001-06-27,82.83928380966863,83.27527962991844,82.36922890196563,82.75753784179688,10105100,0.0,0 -2001-06-28,83.11180919705855,84.4334248753535,83.06412230132017,83.21399688720703,10269300,0.0,0 -2001-06-29,83.65675972193675,84.48106428348329,83.28888736267585,83.5205078125,9824200,0.0,0 -2001-07-02,83.65678491081968,84.6922737469281,83.53416075414417,84.56283569335938,8522200,0.0,0 -2001-07-03,84.46061246509292,84.5423583984375,83.82705549428262,84.5423583984375,3303100,0.0,0 -2001-07-05,83.84072790018084,84.23585080437881,82.88017623029933,82.893798828125,5517900,0.0,0 -2001-07-06,82.64171195901484,82.76433609282283,81.10210418701172,81.10210418701172,11665900,0.0,0 -2001-07-09,81.40184599658355,82.11715429219987,81.20428460829447,81.54490661621094,8339300,0.0,0 -2001-07-10,81.94686687414325,82.18530130881497,80.52987766597865,80.5639419555664,8630700,0.0,0 -2001-07-11,80.4549357518259,80.99311927192615,79.76687768214323,80.64568328857422,15328600,0.0,0 -2001-07-12,81.4086629478484,82.75071454101217,81.27922491678807,82.55996704101562,12002800,0.0,0 -2001-07-13,82.32150324963169,83.3297464211773,82.17163397049691,83.2752456665039,10433800,0.0,0 -2001-07-16,82.95506515434103,83.30250098916217,81.94682712041858,82.23294830322266,6915300,0.0,0 -2001-07-17,81.88556731906907,83.07774491013902,81.63351024048835,83.0028076171875,7469800,0.0,0 -2001-07-18,82.13079205925408,82.86653697967726,81.79016998840783,82.4373550415039,7709300,0.0,0 -2001-07-19,83.23438396475753,83.77938119029909,82.26701882702606,83.1594467163086,10082900,0.0,0 -2001-07-20,82.5327451612658,83.07092876355371,82.37605669073382,82.66217803955078,6705800,0.0,0 -2001-07-23,82.97550767471465,83.03000323569557,81.0339584350586,81.0339584350586,8065200,0.0,0 -2001-07-24,81.06799383586389,81.20424048600917,79.53519563308494,80.25050354003906,12269000,0.0,0 -2001-07-25,80.33228609828357,81.39503020464572,80.01891450200978,81.13615417480469,12088500,0.0,0 -2001-07-26,81.10891126630078,82.32833868441956,80.7682892566859,81.98771667480469,12898200,0.0,0 -2001-07-27,82.3147371084175,82.66898180197563,81.68799369809426,82.30110931396484,8478800,0.0,0 -2001-07-30,82.55995664124224,82.66895297144774,81.95364993656474,82.32833099365234,8547700,0.0,0 -2001-07-31,82.43050338223921,83.5749932238752,82.29425669530933,82.66893768310547,11918100,0.0,0 -2001-08-01,83.09134041793875,83.58864568065522,82.8052191546652,83.18671417236328,11940800,0.0,0 -2001-08-02,83.94967864462818,83.96330123420593,83.03680921858198,83.52730560302734,11070100,0.0,0 -2001-08-03,83.35701355732691,83.35701355732691,82.36239797322257,83.07089233398438,10816300,0.0,0 -2001-08-06,82.66898526006491,82.77798683032283,81.81742998297837,81.95368194580078,8550100,0.0,0 -2001-08-07,81.93321983197325,82.56677700811508,81.68797675497994,82.27384185791016,8865100,0.0,0 -2001-08-08,81.83107553733015,82.53957030532442,80.67977088965421,80.74789428710938,15183800,0.0,0 -2001-08-09,80.86362775314899,81.0475664687461,80.29138552124047,80.98625183105469,14118500,0.0,0 -2001-08-10,80.93175599740985,81.64024489227609,79.93713559264606,81.26556396484375,11173300,0.0,0 -2001-08-13,81.47678111820717,81.6470921177007,80.93859773611011,81.2860336303711,7431600,0.0,0 -2001-08-14,81.84464484101397,81.9877054417541,80.9317804751068,81.25196075439453,13178100,0.0,0 -2001-08-15,81.22471291673953,81.4835837290268,80.4412813880689,80.55027770996094,8520600,0.0,0 -2001-08-16,80.25051084353495,80.89769028683887,79.70551379840124,80.8295669555664,10734700,0.0,0 -2001-08-17,80.14836083729831,80.29823535487476,79.0311210485204,79.53524017333984,11604600,0.0,0 -2001-08-20,79.56927766659949,80.31864480472697,79.39896671713971,80.27095794677734,10417400,0.0,0 -2001-08-21,80.25055316145095,80.75467231567292,78.88806502762313,78.90168762207031,14480800,0.0,0 -2001-08-22,79.53522841405146,79.99847449194252,78.87442097378995,79.71916198730469,11752300,0.0,0 -2001-08-23,79.67830798008066,80.05980300650846,79.35812242683737,79.43305969238281,8744100,0.0,0 -2001-08-24,79.84859993748806,81.15658702792678,79.52841446069263,81.08164978027344,11687700,0.0,0 -2001-08-27,81.04761556722035,81.2042988076711,80.56393285509978,80.59799194335938,7425100,0.0,0 -2001-08-28,80.57752319235735,80.72058377972718,79.4194107055664,79.4194107055664,12046600,0.0,0 -2001-08-29,79.79409756684572,79.82816184144798,78.45886012259848,78.71092224121094,16180000,0.0,0 -2001-08-30,78.24091140700715,78.84721845378925,76.32661647486242,77.1986083984375,17692600,0.0,0 -2001-08-31,77.25308212181265,78.18638321414478,77.069143303885,77.7640151977539,15985400,0.0,0 -2001-09-04,77.55962058436931,79.1401062980105,77.23262640774216,77.26668548583984,24473400,0.0,0 -2001-09-05,77.45744323730469,77.79125655033407,76.2652661985754,77.45744323730469,21477100,0.0,0 -2001-09-06,76.74215282223084,77.18496254933255,75.46141052246094,75.46141052246094,21653000,0.0,0 -2001-09-07,74.95047167169511,75.7884041800829,74.00354281279404,74.06485748291016,33133900,0.0,0 -2001-09-10,73.36997399084635,75.17527156316547,73.36997399084635,74.97090148925781,23408700,0.0,0 -2001-09-17,68.80564187491451,72.4843604007919,68.12439789595496,71.05374908447266,32388700,0.0,0 -2001-09-18,71.07417029306856,71.73497764219886,70.41336294393827,70.8834228515625,22029200,0.0,0 -2001-09-19,70.91751875240361,71.19001746641233,67.14342533670666,69.45284271240234,42771800,0.0,0 -2001-09-20,68.39688639769733,69.35743756308693,67.14339495936028,67.2455825805664,36210900,0.0,0 -2001-09-21,64.46869481800229,67.68939377325744,64.14047357836164,66.52009582519531,49782100,0.369,0 -2001-09-24,68.1885594246049,69.17323342024682,67.73724877094179,68.85868072509766,25549600,0.0,0 -2001-09-25,68.89286005643427,69.74761018120392,68.31163101498706,69.57666015625,25466200,0.0,0 -2001-09-26,69.98691446213157,70.02110654184229,68.67401998611062,69.3304672241211,18587500,0.0,0 -2001-09-27,69.2347845533365,69.94593753429263,68.3800341267521,69.93225860595703,20536800,0.0,0 -2001-09-28,70.41771419890388,74.95814500157658,70.08948795981638,71.41606140136719,21687200,0.0,0 -2001-10-01,71.04687051474706,71.33406546265142,70.31520421395244,71.29987335205078,20457400,0.0,0 -2001-10-02,71.11524981388989,72.1956558227539,70.87592068964372,72.1956558227539,19833100,0.0,0 -2001-10-03,71.52550928563835,73.7683734019655,71.35455921315022,73.40596008300781,32045800,0.0,0 -2001-10-04,74.04870486529383,74.5136890880343,72.9956522074116,73.46747589111328,32674100,0.0,0 -2001-10-05,73.33754150079571,73.59054934958702,72.1545653424215,73.32386779785156,29796100,0.0,0 -2001-10-08,72.66746343276841,73.37178220009176,72.39394745681768,72.84525299072266,12970300,0.0,0 -2001-10-09,72.89991536069702,72.99564693932464,72.20927592890084,72.4554443359375,15976300,0.0,0 -2001-10-10,72.34607001502832,74.22652074095126,72.15460155885128,74.06924438476562,19987400,0.0,0 -2001-10-11,74.50004043667789,75.42317501326218,74.50004043667789,75.21803283691406,23006300,0.0,0 -2001-10-12,74.63680010061226,75.14281083685538,73.37177065151349,74.87612915039062,31360500,0.0,0 -2001-10-15,74.28120693833952,74.84192284150316,73.89144106927434,74.7393569946289,16873000,0.0,0 -2001-10-16,75.08125553550559,75.63513196528352,74.50002125780969,75.21117401123047,15877100,0.0,0 -2001-10-17,75.94971063053919,76.0044159149113,73.61111450195312,73.61111450195312,28542300,0.0,0 -2001-10-18,73.7273021206087,73.95979679032851,72.99563646495528,73.45378112792969,16510000,0.0,0 -2001-10-19,73.16663102492087,73.78889179292912,72.48967019862287,73.40596008300781,21912500,0.0,0 -2001-10-22,73.37176842785867,74.92399268964871,73.31022369293402,74.8556137084961,17540600,0.0,0 -2001-10-23,75.19065078174708,75.40946658298503,74.11024548070584,74.47266387939453,22062500,0.0,0 -2001-10-24,74.52055204734809,74.84193377614397,74.00086240700587,74.27438354492188,16065200,0.0,0 -2001-10-25,73.47435182106517,75.62832415166285,72.98885415697211,75.6078109741211,27467900,0.0,0 -2001-10-26,75.18382069216483,76.44201561884918,74.99235749433872,75.43682861328125,18623300,0.0,0 -2001-10-29,75.32742234012271,75.5941039646672,73.47431945800781,73.47431945800781,18727500,0.0,0 -2001-10-30,73.40592729635412,73.64525624754513,72.18192469800026,72.59220886230469,26178600,0.0,0 -2001-10-31,73.09821774098161,73.75466508528719,72.34603881835938,72.34603881835938,28124200,0.0,0 -2001-11-01,72.89308189918073,74.54104246985663,72.27766083094117,74.19914245605469,29806800,0.0,0 -2001-11-02,74.15128562844505,74.79405418456345,73.76151977426338,74.70516204833984,17575900,0.0,0 -2001-11-05,75.30011020752004,75.96339228620117,75.18386016182791,75.68303680419922,15929500,0.0,0 -2001-11-06,75.45733859355465,76.9138361184368,75.11543854988926,76.859130859375,23245800,0.0,0 -2001-11-07,76.42835772590233,77.3514923104111,76.3394655644456,76.75658416748047,19716000,0.0,0 -2001-11-08,77.1805166989574,78.00791416748181,76.51722978843455,76.99588775634766,22563500,0.0,0 -2001-11-09,76.75657783146511,77.24207538146594,76.20270130006645,77.07796478271484,15895800,0.0,0 -2001-11-12,75.90183428271159,77.03010583571594,75.21803397385834,76.60614776611328,26068800,0.0,0 -2001-11-13,77.57031165528923,78.32933044433594,77.39252210747205,78.32933044433594,15296200,0.0,0 -2001-11-14,78.75326006845253,78.91053639452001,77.75491250027326,78.40452575683594,17571300,0.0,0 -2001-11-15,78.20621854467677,78.76009495078651,77.90534483420694,78.5481185913086,19470200,0.0,0 -2001-11-16,78.69173122328058,78.70540493232222,77.54294663545964,78.19939422607422,18134900,0.0,0 -2001-11-19,78.5823145977499,79.21824896706558,78.26092768185104,79.16354370117188,13625400,0.0,0 -2001-11-20,78.89003294397035,79.18406724607354,78.39085648989501,78.5002670288086,16209700,0.0,0 -2001-11-21,78.29510770766198,78.41135246703035,77.61814710177386,77.98056030273438,11470200,0.0,0 -2001-11-23,77.98059569110973,79.14989371082127,77.95324304996653,79.1020278930664,6717100,0.0,0 -2001-11-26,79.14987260431386,79.55331221538128,78.68488826284036,79.27295684814453,13726000,0.0,0 -2001-11-27,79.06096922029917,79.93623251114876,78.01475068794416,78.93104553222656,19261400,0.0,0 -2001-11-28,78.45925178345414,78.75328614670038,77.44039070861689,77.5019302368164,20195500,0.0,0 -2001-11-29,77.72072110449726,78.58230546578336,77.26941053879251,78.5481185913086,16354700,0.0,0 -2001-11-30,78.22675582081548,78.57549543660973,77.96690836642742,77.9874267578125,13680300,0.0,0 -2001-12-03,77.71387834440345,78.00791258070637,77.27624672064756,77.52241516113281,15220400,0.0,0 -2001-12-04,77.89852651765621,78.8421742413758,77.50876056737529,78.83533477783203,17239900,0.0,0 -2001-12-05,79.05415687375313,80.68843925140173,79.01996477032817,80.27816009521484,25204000,0.0,0 -2001-12-06,80.23710632324219,80.64739058287132,79.95675097727542,80.23710632324219,17972900,0.0,0 -2001-12-07,79.93623009070622,80.06614855786421,79.11566686764557,79.7037353515625,18857800,0.0,0 -2001-12-10,79.21822233418209,79.5874749293512,78.19252241992774,78.2130355834961,13862700,0.0,0 -2001-12-11,78.56864391147649,79.1293598659985,77.88484371245055,78.05579376220703,20833300,0.0,0 -2001-12-12,78.32929751340133,78.4865686027882,77.34462377575011,78.14466857910156,16171500,0.0,0 -2001-12-13,77.5771298000195,77.74807984824959,76.61297424083219,76.62664794921875,19026700,0.0,0 -2001-12-14,76.81127748600186,77.60448300277493,76.58562216860808,77.35831451416016,16721900,0.0,0 -2001-12-17,77.26259663503355,78.19940495080745,77.2010571104337,78.15837860107422,13925900,0.0,0 -2001-12-18,78.38401779879653,78.73959683678534,78.18571510779927,78.62335205078125,13663700,0.0,0 -2001-12-19,78.01476729061544,79.26612298851826,77.95322777284079,79.17723083496094,20143400,0.0,0 -2001-12-20,78.97888817131101,79.18403022737883,78.32928035539494,78.39765930175781,14867900,0.0,0 -2001-12-21,78.92807763015605,78.95552434318328,78.35857011342254,78.87318420410156,14037700,0.393,0 -2001-12-24,78.79085079971232,78.93494211965417,78.63989649265172,78.72223663330078,5728800,0.0,0 -2001-12-26,78.66732036439204,79.73771570740357,78.66732036439204,79.15448760986328,10304800,0.0,0 -2001-12-27,79.11333957221778,79.64853737498565,79.07902987309673,79.63481140136719,9407300,0.0,0 -2001-12-28,79.79265087004299,80.10828029698338,79.53877263677663,79.59366607666016,10593800,0.0,0 -2001-12-31,79.69657311605947,79.86124816596332,78.37916224697776,78.42719268798828,14619500,0.0,0 -2002-01-02,78.98295846379344,79.42209533236635,78.09095875485974,79.2711410522461,18651900,0.0,0 -2002-01-03,79.35351104525357,80.24550585499165,79.27803387678537,80.17002868652344,15743000,0.0,0 -2002-01-04,80.3964742553178,80.95226125079829,79.97106312400143,80.70524597167969,20140700,0.0,0 -2002-01-07,80.7601151043466,80.95909987856587,79.9779019835818,80.1357192993164,13106500,0.0,0 -2002-01-08,80.13570344951526,80.3209622109805,79.57305894349582,79.950439453125,12683700,0.0,0 -2002-01-09,80.0602285050172,80.81499477998264,79.14078195429825,79.29859924316406,16610300,0.0,0 -2002-01-10,79.3809149717877,79.83377250354538,79.11331614963008,79.64851379394531,12823400,0.0,0 -2002-01-11,79.73774397043135,79.78577441349024,78.70165271595997,78.8663330078125,13708400,0.0,0 -2002-01-14,78.6673524855355,78.7977178466173,78.1939057820766,78.37230682373047,12301100,0.0,0 -2002-01-15,78.59874668589606,79.17511209506252,78.1527466517021,79.01043701171875,20219900,0.0,0 -2002-01-16,78.42721276040801,78.49582694585173,77.32250709950569,77.41170501708984,17067000,0.0,0 -2002-01-17,78.05669051388315,78.38604070067056,77.80967525632919,77.99493408203125,17283400,0.0,0 -2002-01-18,77.53519106222005,78.11841932853487,77.30875960185097,77.63811492919922,17028000,0.0,0 -2002-01-22,78.049816356805,78.17332396790951,76.86277069258237,77.1029281616211,11689300,0.0,0 -2002-01-23,77.2813205435483,77.91258454725285,76.86276728198452,77.6930160522461,12438900,0.0,0 -2002-01-24,77.97432632644507,78.39287953751817,77.75475785792517,77.93315887451172,12142800,0.0,0 -2002-01-25,77.61754435016525,78.34486405947902,77.56265091382143,77.91259002685547,12810700,0.0,0 -2002-01-28,78.1527290011106,78.35171374788546,77.48029760735677,78.12528228759766,10589200,0.0,0 -2002-01-29,78.11841658004356,78.31053833301827,75.5110417062186,75.66885375976562,27720800,0.0,0 -2002-01-30,75.7443269181641,77.80278313712301,74.37888575870032,76.75983428955078,34711800,0.0,0 -2002-01-31,76.95195561251832,77.74103153913202,76.58829585340783,77.65869140625,19909200,0.0,0 -2002-02-01,77.59694734406516,77.74104390826668,76.96568859630652,77.2950439453125,15838500,0.0,0 -2002-02-04,77.00688639956329,77.00688639956329,75.09252056930139,75.37384033203125,24243400,0.0,0 -2002-02-05,75.06502091891267,75.81292399719501,74.46806686534035,74.9072036743164,33614000,0.0,0 -2002-02-06,75.23659509145303,75.29834628105053,74.14561029422798,74.58474731445312,29486000,0.0,0 -2002-02-07,74.59845074402863,75.3806636520682,74.1044204368616,74.1181411743164,23445400,0.0,0 -2002-02-08,74.53670874992574,75.99135324284968,74.31028251113162,75.53849029541016,19277800,0.0,0 -2002-02-11,75.51106196363011,76.6020415970967,75.35324463282016,76.46481323242188,18792400,0.0,0 -2002-02-12,76.13545723851219,76.6500714544461,75.49733540135706,76.22465515136719,13942500,0.0,0 -2002-02-13,76.4922309992826,77.21955047962943,76.40302788457431,77.03428649902344,16781100,0.0,0 -2002-02-14,77.19899996032551,77.51462940330566,76.56773583943837,76.89022827148438,20453800,0.0,0 -2002-02-15,76.95197084671925,77.01372203241203,75.96390999622761,76.08741760253906,18366800,0.0,0 -2002-02-19,75.57968213044357,75.67574304030747,74.52300688701379,74.62593078613281,15988100,0.0,0 -2002-02-20,74.824884086363,75.88155364990234,73.98091475089483,75.88155364990234,29242800,0.0,0 -2002-02-21,75.42869047627643,75.9089947880814,74.28281787888143,74.31026458740234,26288600,0.0,0 -2002-02-22,74.34458417044361,75.43556880765524,74.01523407104325,75.22972106933594,26572900,0.0,0 -2002-02-25,75.29835976076694,76.71869495996245,75.27091303772366,76.4716796875,17458700,0.0,0 -2002-02-26,76.57458636068623,76.87649501130497,75.86785041485233,76.31385040283203,22346500,0.0,0 -2002-02-27,76.82159220486585,77.4391301717308,75.92273458555013,76.60888671875,28597900,0.0,0 -2002-02-28,76.73241477807176,77.36367365260193,76.18349083113361,76.26583099365234,23755400,0.0,0 -2002-03-01,76.65692079045408,78.1184230188383,76.51282946384653,78.0429458618164,26273600,0.0,0 -2002-03-04,78.15270855597001,79.5867636261194,77.9811705675833,79.42208862304688,27184600,0.0,0 -2002-03-05,79.13394656331609,79.86812932000261,78.88693131481159,79.16825103759766,22718900,0.0,0 -2002-03-06,78.97611656945999,80.38273066268063,78.95553284120543,80.10826873779297,20143200,0.0,0 -2002-03-07,80.52678998529235,80.62285083557914,79.29857741671269,79.93669891357422,19330800,0.0,0 -2002-03-08,80.5405252094951,80.89732720468314,79.92299255653637,80.2729263305664,19930100,0.0,0 -2002-03-11,80.20431346442018,80.89732850725485,79.88868414662537,80.44446563720703,15621800,0.0,0 -2002-03-12,79.6622485168497,80.45132438724899,79.55246691575277,80.39643096923828,17153600,0.0,0 -2002-03-13,80.02591332552964,80.10825345776794,79.34662424806926,79.62108612060547,17175300,0.0,0 -2002-03-14,79.62110125594386,79.88870019293076,79.3397763435123,79.51131439208984,11168100,0.0,0 -2002-03-15,79.8010310495772,80.47538362919792,79.75286300817574,80.26895141601562,21220100,0.331,0 -2002-03-18,80.57859043833938,80.89512398498945,79.89047266303345,80.28269958496094,17548900,0.0,0 -2002-03-19,80.71621402785992,81.0189822673613,80.38591519849632,80.81942749023438,17912000,0.0,0 -2002-03-20,80.16568980975968,80.2207404704682,79.26425755281745,79.29866027832031,17114500,0.0,0 -2002-03-21,79.33995149277632,79.7528209513412,78.52797261596675,79.33306884765625,25846800,0.0,0 -2002-03-22,79.47755937368666,79.78033270841767,78.9270633559792,79.16102600097656,15235400,0.0,0 -2002-03-25,79.19548211212249,79.38127687457168,77.96375576071519,78.17707061767578,17499600,0.0,0 -2002-03-26,78.11509929411757,79.1472755838121,78.08069656774647,78.63118743896484,19947600,0.0,0 -2002-03-27,78.46603950757012,79.1403969831984,78.28025008821947,78.8376235961914,19020300,0.0,0 -2002-03-28,79.11290169416395,79.6633927660368,78.78948549885362,78.8032455444336,17532900,0.0,0 -2002-04-01,78.60366616071875,79.20232503967527,78.10133806408625,78.8376235961914,17711000,0.0,0 -2002-04-02,78.4316925254858,79.09916258044767,78.28718312449254,78.40416717529297,15669500,0.0,0 -2002-04-03,78.45229430804389,78.58991573730637,77.1792777126424,77.85363006591797,25658500,0.0,0 -2002-04-04,77.48204437806028,78.03254058408935,77.22744421395657,77.53021240234375,23549000,0.0,0 -2002-04-05,77.88802697484594,78.19079512616302,77.19302678106033,77.5439682006836,19404900,0.0,0 -2002-04-08,76.60124441427966,77.7779247787872,76.53931635558358,77.70911407470703,16470100,0.0,0 -2002-04-09,77.88118586444917,77.88118586444917,77.02103847031535,77.16554260253906,15122700,0.0,0 -2002-04-10,77.13799852027779,78.12888975762276,77.13111587281796,78.03943634033203,17199300,0.0,0 -2002-04-11,77.68160309472961,77.7917044415352,76.03700228874945,76.09893035888672,25453700,0.0,0 -2002-04-12,76.394803521188,76.82832091170447,75.7204513024823,76.67005157470703,14950600,0.0,0 -2002-04-15,76.80772335752363,76.97287018670494,75.83059193088688,76.08519744873047,17394900,0.0,0 -2002-04-16,76.8627362866034,77.97748872434791,76.84209359792825,77.89491271972656,15040900,0.0,0 -2002-04-17,78.02566529500234,78.21833741030373,77.48205168401832,77.72977447509766,12920100,0.0,0 -2002-04-18,77.6884765264363,78.07382069470631,76.48427075067198,77.39258575439453,25204800,0.0,0 -2002-04-19,77.89494881283763,77.92247416046546,77.45455375063894,77.67475128173828,10499200,0.0,0 -2002-04-22,77.33065818874732,77.36506617058022,76.27095639732926,76.38105773925781,13922900,0.0,0 -2002-04-23,76.44297753322999,76.71134821265484,75.80991063542048,76.05075073242188,16967000,0.0,0 -2002-04-24,76.07831103635127,76.93845838526053,75.28009702652332,75.28697967529297,18902700,0.0,0 -2002-04-25,75.14931216068555,75.51401359868626,74.81213605290074,75.3282241821289,25451500,0.0,0 -2002-04-26,75.54840968347222,75.69979635087311,73.82811619013306,73.89692687988281,19769800,0.0,0 -2002-04-29,74.26853509566372,74.49561517073107,73.37398008777946,73.5322494506836,17724400,0.0,0 -2002-04-30,73.64236860677667,74.75712139270394,73.38088571868519,74.22039031982422,19473500,0.0,0 -2002-05-01,74.29605572886177,75.1768453886222,73.49095942266706,75.12867736816406,24575600,0.0,0 -2002-05-02,75.07365634040205,75.63103536851816,74.16534098893872,74.8396987915039,15666800,0.0,0 -2002-05-03,74.72955696000788,74.83965827630082,73.7661914421235,74.02767944335938,18185500,0.0,0 -2002-05-06,74.06895037370369,74.30979039374776,72.46563570468089,72.57573699951172,23630400,0.0,0 -2002-05-07,73.00930007496287,73.16068683622744,72.18356078614825,72.32118225097656,21910000,0.0,0 -2002-05-08,73.66299358123614,75.25254360907772,73.48408152942618,75.01170349121094,27917400,0.0,0 -2002-05-09,74.76399852488494,75.0736494287238,74.02771270360577,74.14469146728516,18085600,0.0,0 -2002-05-10,74.29610648949237,74.3511571933193,72.66526482560727,72.74784088134766,18958900,0.0,0 -2002-05-13,73.09184651616044,74.28228692980876,72.7959557616263,74.22724151611328,14677700,0.0,0 -2002-05-14,75.43145269733607,75.94754089388344,75.00481789821882,75.84432220458984,34201200,0.0,0 -2002-05-15,75.34887666391367,76.31912499297253,75.20437259893225,75.54843139648438,29535300,0.0,0 -2002-05-16,75.48649843449031,76.0232345711044,75.23189828306533,75.94065856933594,28092000,0.0,0 -2002-05-17,76.147101464402,76.55308835684927,75.7617520114909,76.31224822998047,27823700,0.0,0 -2002-05-20,76.13333586773062,76.16774384996933,75.34199952552947,75.48650360107422,13833800,0.0,0 -2002-05-21,75.76862628738984,76.02323167904984,74.53689520328406,74.79837799072266,16877200,0.0,0 -2002-05-22,74.4681011502056,75.0874081536107,74.31671441049306,74.96354675292969,15844200,0.0,0 -2002-05-23,75.18373298402739,75.9406613195956,74.64700207789575,75.76174926757812,13879800,0.0,0 -2002-05-24,75.67916852364574,75.83054997084149,74.7364456142824,74.79149627685547,11877000,0.0,0 -2002-05-28,75.03923588784016,75.09428131287501,73.93824338840201,74.3855209350586,24236900,0.0,0 -2002-05-29,74.05524235525561,74.33048528583353,73.7180608404296,73.83504486083984,14773300,0.0,0 -2002-05-30,73.31895777632408,73.97955027115086,72.8716801314111,73.62860870361328,18217900,0.0,0 -2002-05-31,73.90382963694512,74.70204330513238,73.52536286544218,73.77996826171875,19826300,0.0,0 -2002-06-03,73.69051559902711,74.04145706564971,71.65368801319721,71.81884002685547,26056300,0.0,0 -2002-06-04,71.6674633840862,72.3899838582408,71.25459379172335,71.99775695800781,25856200,0.0,0 -2002-06-05,72.21793614087453,72.71338162624917,71.80506665303577,72.6720962524414,19695900,0.0,0 -2002-06-06,72.62393578116881,72.66522115926756,70.97933505457053,71.1926498413086,22998500,0.0,0 -2002-06-07,70.0366225422545,71.50919408176163,69.99533715794438,71.1100845336914,24011600,0.0,0 -2002-06-10,71.041263750477,71.88076811205438,70.88987702954718,71.38532257080078,18759900,0.0,0 -2002-06-11,71.65368296993799,71.93581370263936,70.00220494896038,70.16046905517578,19990700,0.0,0 -2002-06-12,69.98846328835859,70.74539184519924,69.34851350168226,70.58712768554688,31266000,0.0,0 -2002-06-13,70.27742285850718,70.87608684121439,69.73380952361829,69.8783187866211,21043900,0.0,0 -2002-06-14,69.02508779950399,69.88523496179438,67.77959638848245,69.77513885498047,39267500,0.0,0 -2002-06-17,70.13296537783208,71.79820920481609,70.08479734151179,71.6468276977539,17647200,0.0,0 -2002-06-18,71.38532530097628,72.27299772135173,71.30963193761643,72.2317123413086,21628500,0.0,0 -2002-06-19,71.22014896966334,71.86009834431505,70.35311959918577,70.54579162597656,21540700,0.0,0 -2002-06-20,70.36691962800504,70.9105332576518,69.4723644906275,69.64439392089844,25691000,0.0,0 -2002-06-21,69.3771552623971,69.69479662316424,68.14111296193396,68.55542755126953,31190700,0.353,0 -2002-06-24,68.09277728247399,69.52907279563189,67.15366139066275,68.91450500488281,37169700,0.0,0 -2002-06-25,69.25978246583466,69.66719040974925,67.35392860995873,67.36773681640625,33355000,0.0,0 -2002-06-26,65.73806688451836,67.77512155312041,65.73116541834273,67.47819519042969,37913600,0.0,0 -2002-06-27,68.01682990102658,68.7004493558732,66.68411413994973,68.65901947021484,31616400,0.0,0 -2002-06-28,68.5278114998591,69.39787589667166,68.27922167219836,68.33446502685547,28184200,0.0,0 -2002-07-01,68.4863871093401,68.91451523981617,66.90508151648899,67.00175476074219,20270200,0.0,0 -2002-07-02,66.88435563199383,67.1191319672587,65.44115340466244,65.57926177978516,34213900,0.0,0 -2002-07-03,65.33757307957062,66.18001038790828,64.71609861580072,65.95214080810547,30565800,0.0,0 -2002-07-05,66.82913357301001,68.7280808724916,66.74627378983395,68.57616424560547,19013500,0.0,0 -2002-07-08,68.34830648965053,68.84548108027855,67.3677549819685,67.71992492675781,19118600,0.0,0 -2002-07-09,67.48510592658593,67.9063219249525,65.60687442966078,66.0142822265625,28620400,0.0,0 -2002-07-10,66.29049457142756,66.33883117965408,63.556012302551586,63.61125564575195,50522500,0.0,0 -2002-07-11,63.362681199032096,64.46061525221378,62.36832185404003,64.12916564941406,59476500,0.0,0 -2002-07-12,64.44682800478441,64.83352108989888,63.19697168045682,63.42484664916992,39018600,0.0,0 -2002-07-15,63.279851457231146,63.80465310070731,60.69037694233474,63.76321792602539,77317200,0.0,0 -2002-07-16,62.92074439777459,63.79080354963516,62.05758671420913,62.5340461730957,53282400,0.0,0 -2002-07-17,63.846034596538836,64.4260791875789,61.97470973154771,62.658329010009766,48880600,0.0,0 -2002-07-18,62.63071041032797,62.90692188302854,60.593660677215624,60.62818908691406,32656700,0.0,0 -2002-07-19,59.91004938332599,60.455565666137964,58.211355711070425,58.494468688964844,77572600,0.0,0 -2002-07-22,58.07324252414458,59.323098316762085,56.24334735061406,56.7612419128418,78134000,0.0,0 -2002-07-23,57.00291787450485,57.479377185817995,55.06944315485352,55.20754623413086,74484100,0.0,0 -2002-07-24,53.950782346985605,58.777561794356316,53.6400478242046,58.50135040283203,107022800,0.0,0 -2002-07-25,58.190620600215404,59.28165288645098,56.34691754288118,58.004180908203125,87176600,0.0,0 -2002-07-26,58.453041550147525,59.33691420793483,57.86609535723844,59.109039306640625,41206800,0.0,0 -2002-07-29,60.42104090543757,62.38213273290023,60.282937776400956,61.98853302001953,53492900,0.0,0 -2002-07-30,61.67783099760166,63.11412748045898,61.26351612285806,62.796485900878906,47532200,0.0,0 -2002-07-31,62.48569638889801,63.2176575327916,61.62944562232122,62.9483528137207,44669900,0.0,0 -2002-08-01,62.75503209108542,63.07958031489123,60.994193079214625,61.304927825927734,66571900,0.0,0 -2002-08-02,61.11155451087617,61.39467271592313,59.122841413210345,59.930755615234375,51772900,0.0,0 -2002-08-05,59.72359527452007,60.027428415685584,57.693452314656156,57.84536361694336,47191300,0.0,0 -2002-08-06,58.85353397673449,60.69723715360475,58.770668959192605,59.79264450073242,64730000,0.0,0 -2002-08-07,60.67655100317299,61.11158069799522,59.22644148383652,60.83536911010742,43289400,0.0,0 -2002-08-08,61.05632571678936,62.906936154953534,60.62820284185456,62.8033561706543,48339800,0.0,0 -2002-08-09,62.21640015955575,63.48697091496663,61.69850558785862,63.03812789916992,41879200,0.0,0 -2002-08-12,62.1404352054088,63.02430767008327,61.83660733836161,62.575469970703125,25841700,0.0,0 -2002-08-13,62.25092863992701,63.29362452054368,61.21513949539676,61.43610763549805,49690500,0.0,0 -2002-08-14,61.4706339562372,63.96343371436882,60.78010782419622,63.680320739746094,57423600,0.0,0 -2002-08-15,64.10843637143635,64.90254238777592,63.66650011801699,64.5641860961914,45551500,0.0,0 -2002-08-16,64.09463049449528,64.96469482987007,63.52839931998378,64.37084197998047,36517300,0.0,0 -2002-08-19,64.53653798513618,66.1178426343835,64.28794828588285,65.87615966796875,33669900,0.0,0 -2002-08-20,65.47569080517307,65.87619724557379,64.64706151385126,65.17876434326172,30508300,0.0,0 -2002-08-21,65.64141702455987,66.13859671738739,64.612534490862,66.11788177490234,39628900,0.0,0 -2002-08-22,65.93832789581288,67.08460361294689,65.64830823303032,66.76005554199219,38399800,0.0,0 -2002-08-23,66.29739746836772,66.39407067922424,65.01301878893688,65.3237533569336,33716400,0.0,0 -2002-08-26,65.53783504475471,66.0419161503161,64.56419070955049,65.7795181274414,33830100,0.0,0 -2002-08-27,66.08334884643679,66.46314032705276,64.56419346056553,65.01994323730469,35335700,0.0,0 -2002-08-28,64.41229055090814,64.55730043750218,63.39031460682712,63.597469329833984,38970600,0.0,0 -2002-08-29,63.02432800881756,64.25346914922854,62.7066865685868,63.62508773803711,42965700,0.0,0 -2002-08-30,63.3074437932788,64.48824299230213,63.11409729542192,63.376495361328125,30366700,0.0,0 -2002-09-03,62.651409008859,62.83784865935946,60.86985115610422,60.959617614746094,76586400,0.0,0 -2002-09-04,61.187507285490234,62.31996946708501,60.80771589056114,61.82969665527344,51099500,0.0,0 -2002-09-05,61.10467455446675,61.75377100207837,60.42105495071917,61.304927825927734,67250900,0.0,0 -2002-09-06,61.974711174435086,62.54094230813821,61.69159297343576,62.147342681884766,38622200,0.0,0 -2002-09-09,61.52587925523271,63.07956310141685,61.3187245700527,62.60310363769531,33998400,0.0,0 -2002-09-10,62.93452759522162,63.37646373213725,62.534021324799845,63.32122039794922,41416600,0.0,0 -2002-09-11,63.85296990775372,64.44682296678377,62.906946948997046,62.92766189575195,27711200,0.0,0 -2002-09-12,62.66524124069568,62.727386058598654,61.44991387484419,61.767555236816406,43601700,0.0,0 -2002-09-13,61.24275913899988,62.07829505566339,60.93892598083284,61.919471740722656,41131000,0.0,0 -2002-09-16,61.6708742779624,62.071380615234375,61.08392824205426,62.071380615234375,28167600,0.0,0 -2002-09-17,62.76195034944109,62.96911039747218,60.59369765812426,60.64894104003906,47609700,0.0,0 -2002-09-18,60.082679656808715,61.11156210871383,59.57859326712717,60.04124450683594,54719400,0.0,0 -2002-09-19,59.378324108264934,59.937653702131676,58.48754501342774,58.487545013427734,48510500,0.0,0 -2002-09-20,58.90231811295457,59.09653122558997,58.2988709832532,58.506954193115234,46325600,0.378,0 -2002-09-23,58.021451278910966,58.30583339968537,57.355575139144285,58.02838897705078,46893800,0.0,0 -2002-09-24,57.182165618155906,58.021447107688964,56.772926127938184,57.09199142456055,69507000,0.0,0 -2002-09-25,57.82720829889133,58.79827386206834,56.904690721962744,58.506954193115234,59294400,0.0,0 -2002-09-26,58.9717153665287,59.630659165179864,58.57635120410347,59.46419143676758,53638000,0.0,0 -2002-09-27,58.957858359345494,59.394838227978354,57.39720916748047,57.39720916748047,64648300,0.0,0 -2002-09-30,56.876979349330846,57.43187882560195,56.11399653839327,56.731319427490234,73096400,0.0,0 -2002-10-01,57.175243828956525,59.49193804586444,56.50936755178692,59.45726013183594,67198100,0.0,0 -2002-10-02,58.74279142298954,59.325430793048874,57.29312010897117,57.67461395263672,56749100,0.0,0 -2002-10-03,57.66769861477411,58.68038550194407,56.84228722861039,57.09199142456055,55547000,0.0,0 -2002-10-04,57.43186745266893,57.51509865328824,55.19840517623333,56.04462432861328,68483700,0.0,0 -2002-10-07,55.53134455586728,56.32207277008829,54.483979732064924,54.88627624511719,53188000,0.0,0 -2002-10-08,55.35794808842792,56.398380674228704,54.241216689648645,55.74637985229492,79531000,0.0,0 -2002-10-09,54.858524503644034,55.2816340621177,53.949881988845995,54.17184066772461,79956400,0.0,0 -2002-10-10,54.06088444835932,56.231918763734406,53.457431581032495,55.92672348022461,76749000,0.0,0 -2002-10-11,56.94635282820233,58.77058168057855,56.75213955690328,58.37521743774414,82308300,0.0,0 -2002-10-14,57.70930065139041,58.85377706515079,57.5983239747841,58.70117950439453,40631900,0.0,0 -2002-10-15,60.33812374630806,61.53809108963021,60.241017174237044,61.52421569824219,82320300,0.0,0 -2002-10-16,60.62945479412546,60.89996674211519,59.595955001126946,60.03293991088867,62977800,0.0,0 -2002-10-17,61.64214838091222,61.94040585583395,60.93465144416187,61.22597122192383,68534100,0.0,0 -2002-10-18,60.795936314224676,61.808623248773316,60.29652789895948,61.48262023925781,47448700,0.0,0 -2002-10-21,61.121936488423124,62.772753969493586,60.74044249670529,62.54385757446289,45859100,0.0,0 -2002-10-22,61.76701979638815,62.43289605043693,61.39939581866827,62.093017578125,40966800,0.0,0 -2002-10-23,61.57278763973309,62.61322004879316,60.81674262926764,62.564666748046875,54905800,0.0,0 -2002-10-24,62.946142020452925,63.05018628878635,61.10804425293347,61.288387298583984,54987400,0.0,0 -2002-10-25,61.18436123376279,62.696456546606605,60.99708572857365,62.564666748046875,43672100,0.0,0 -2002-10-28,63.223596061243896,63.32070264063809,61.62826461363357,62.155418395996094,39416100,0.0,0 -2002-10-29,61.787815280976645,62.07219739384821,60.345081038951776,61.43406677246094,59508200,0.0,0 -2002-10-30,61.510343510542,62.39817802042788,61.19821600975469,62.03055953979492,41688600,0.0,0 -2002-10-31,62.190151835620206,62.63406949780251,61.17052663619911,61.399417877197266,41620600,0.0,0 -2002-11-01,61.28150533337956,62.994752595339726,61.073421899389125,62.613258361816406,51878900,0.0,0 -2002-11-04,63.6744740597562,64.46520237295006,63.05021347252063,63.20974349975586,49080600,0.0,0 -2002-11-05,63.008581503208575,63.86173837120642,63.008581503208575,63.70914077758789,37270800,0.0,0 -2002-11-06,64.14611196293781,64.5553460651684,62.973890056698494,64.53453826904297,65013100,0.0,0 -2002-11-07,63.82709638504232,63.965823965133254,62.578579915720404,62.9531364440918,51572000,0.0,0 -2002-11-08,62.7935746117489,63.51494184875353,62.09301518001811,62.183189392089844,37905400,0.0,0 -2002-11-11,62.08605912316675,62.12073702144241,60.89996704713765,61.219032287597656,33505100,0.0,0 -2002-11-12,61.4964836842525,62.37738064582985,61.29533281764401,61.704566955566406,37724500,0.0,0 -2002-11-13,61.26064090418736,62.24558200714188,60.65718839028137,61.76698684692383,63891500,0.0,0 -2002-11-14,62.47450769533751,63.119576102345725,62.252548958082734,62.93230056762695,31896800,0.0,0 -2002-11-15,62.425954598759375,63.50107037805906,62.39127139610568,63.39702606201172,39152100,0.0,0 -2002-11-18,63.917219571637055,63.917219571637055,62.668698807841835,62.758872985839844,28934800,0.0,0 -2002-11-19,62.43982884291977,63.188941617812205,62.259490994527,62.675662994384766,32806600,0.0,0 -2002-11-20,62.41203941636572,64.10447158686607,62.391226334657304,64.06979370117188,36688400,0.0,0 -2002-11-21,64.2293532916132,65.33221428764621,64.11143890033847,65.26284790039062,55128200,0.0,0 -2002-11-22,64.83973947937933,65.38769580184251,64.69407430899979,64.7981185913086,32513800,0.0,0 -2002-11-25,64.80505374842876,65.38076083498662,64.3472610409745,64.83973693847656,33846400,0.0,0 -2002-11-26,64.55538932508685,64.81896373915473,63.54963969770001,63.605125427246094,42284700,0.0,0 -2002-11-27,64.173877641144,65.6512952555435,64.11145422798474,65.3946533203125,37764000,0.0,0 -2002-11-29,65.75536957584934,65.8594086452581,65.04093445044097,65.18659973144531,19385700,0.0,0 -2002-12-02,66.22009808521909,66.62240014503847,64.65944846977284,65.29064178466797,49911900,0.0,0 -2002-12-03,64.68021554373873,64.78425984428283,64.05595503238708,64.41664123535156,34407700,0.0,0 -2002-12-04,63.65366506675127,64.60392876034868,63.417836214101456,64.12532806396484,64040800,0.0,0 -2002-12-05,64.31951852235875,64.36807181152962,63.18891218723286,63.417808532714844,36724900,0.0,0 -2002-12-06,62.5091663558066,63.931087138981546,62.41205977712779,63.833980560302734,49824100,0.0,0 -2002-12-09,63.1681371688275,63.43864924770776,62.06528104599481,62.07915115356445,36789600,0.0,0 -2002-12-10,62.43981324208486,63.18892582980854,62.2594754387502,62.911476135253906,33319900,0.0,0 -2002-12-11,62.717271934041094,63.54962113711357,62.536934104835225,62.966976165771484,39201000,0.0,0 -2002-12-12,63.258287098404075,63.459437995192374,62.564665506132485,62.96002960205078,34465600,0.0,0 -2002-12-13,62.36352048405518,62.75888458366822,61.91959779229306,61.9681510925293,36862200,0.0,0 -2002-12-16,62.30109801821239,63.66753355110069,62.1901213031093,63.57042694091797,37098400,0.0,0 -2002-12-17,63.376208202660564,63.6328448106935,62.93922320297136,63.01552200317383,32353900,0.0,0 -2002-12-18,62.6479124047418,62.70340341139667,61.96122839610723,62.2872314453125,35612600,0.0,0 -2002-12-19,61.97510347569874,62.91149179751749,61.45488715336453,61.843318939208984,39264200,0.0,0 -2002-12-20,62.175084096692856,62.746648577962304,62.105382148814684,62.725738525390625,31176900,0.436,0 -2002-12-23,62.44691993073127,63.060309781182724,62.251752366648454,62.74664306640625,22599300,0.0,0 -2002-12-24,62.44692593764259,62.63512704819542,62.20993824929344,62.279640197753906,10937000,0.0,0 -2002-12-26,62.52360711075862,63.157907148381895,61.92416071046877,62.30752944946289,17485600,0.0,0 -2002-12-27,62.00779531456861,62.237816517402045,60.90648651123047,60.90648651123047,22205700,0.0,0 -2002-12-30,61.1922871384948,61.66626792781748,60.79498010317423,61.41533660888672,29968000,0.0,0 -2002-12-31,61.33166756052057,61.638362459001264,60.71828308147599,61.498958587646484,34036600,0.0,0 -2003-01-02,61.93113065702954,63.638857795056836,61.715053002169235,63.478538513183594,44516300,0.0,0 -2003-01-03,63.367020187151155,63.694619925228125,63.08123524284234,63.673709869384766,32222600,0.0,0 -2003-01-06,63.597051095944614,65.16536946854616,63.54825918151381,64.79594421386719,40984500,0.0,0 -2003-01-07,64.75409870156489,65.08170370625143,64.26617443065722,64.63560485839844,38640400,0.0,0 -2003-01-08,64.26621890571738,64.40562821584743,63.46463797363567,63.70162582397461,38702200,0.0,0 -2003-01-09,64.00131727466815,64.94927883910017,63.71553763778783,64.69137573242188,34804900,0.0,0 -2003-01-10,64.09192712753595,65.2699099107321,63.98737684801324,64.86563110351562,37768900,0.0,0 -2003-01-13,65.20020582564649,65.42325527788591,64.4334736659434,64.84471893310547,31649900,0.0,0 -2003-01-14,64.60770377523139,65.40231744370023,64.4125362521571,65.05380249023438,30733000,0.0,0 -2003-01-15,65.20021562688828,65.22112568525428,64.06405813967528,64.40560150146484,33511800,0.0,0 -2003-01-16,64.47531639561255,64.77503970076303,63.7434322985483,64.14073944091797,44812100,0.0,0 -2003-01-17,63.4227802204316,64.33589345349047,62.83727736984611,63.19276428222656,35618300,0.0,0 -2003-01-21,63.33913263918914,63.37398095648535,62.00083068856403,62.20994186401367,36826200,0.0,0 -2003-01-22,61.875366548747586,62.59331209899469,61.33865565167941,61.457149505615234,42286500,0.0,0 -2003-01-23,61.86145042824288,62.30057768302874,61.303823959186445,61.83356857299805,55919800,0.0,0 -2003-01-24,61.749885437144464,61.812620902755604,60.06307410552961,60.209449768066406,68633900,0.0,0 -2003-01-27,59.75637796006253,60.50219976896715,58.89902881027826,59.38694763183594,57884400,0.0,0 -2003-01-28,59.68671300904594,60.2234294110108,59.33819779870203,59.82612228393555,46929100,0.0,0 -2003-01-29,59.5403116312003,60.76708613259378,59.087240989182234,60.27916717529297,53712200,0.0,0 -2003-01-30,60.49527696084919,60.55800715244643,58.82937451255027,58.850284576416016,49845900,0.0,0 -2003-01-31,58.655105898613115,60.090986739483235,58.655105898613115,59.98643112182617,55317000,0.0,0 -2003-02-03,60.04217251505262,60.509181406736204,59.88882504186276,60.10490798950195,39696000,0.0,0 -2003-02-04,59.46364020076457,59.770335167497734,58.75964358046235,59.51243209838867,43633400,0.0,0 -2003-02-05,59.77035668161884,60.3210113346786,58.88513041525688,59.143028259277344,55270600,0.0,0 -2003-02-06,58.80843459328501,59.170887924765275,58.306572043606224,58.864192962646484,53638000,0.0,0 -2003-02-07,59.18484204081884,59.24060042010567,57.8326016321346,58.146263122558594,43165000,0.0,0 -2003-02-10,58.1741416271233,58.64115059905833,57.609548849647176,58.55751037597656,45455900,0.0,0 -2003-02-11,58.80843883779369,59.1639204045415,57.73501171082106,58.153228759765625,46861000,0.0,0 -2003-02-12,57.96503669298051,58.28566996181169,57.21920923893054,57.22618103027344,35873600,0.0,0 -2003-02-13,57.26102868189969,57.6165155523573,56.459442934675614,57.40043258666992,57934100,0.0,0 -2003-02-14,57.41437747050557,58.6899386500554,57.03100874681249,58.65509033203125,59580900,0.0,0 -2003-02-18,58.919955398389746,59.80518663191355,58.82237160668256,59.68668746948242,39492700,0.0,0 -2003-02-19,59.47061923804746,59.575174836530564,58.74570715792823,59.3730354309082,31432000,0.0,0 -2003-02-20,59.393905671928394,59.54028128451343,58.58535390937555,58.780521392822266,29280100,0.0,0 -2003-02-21,58.81540911761075,59.76337065946524,58.17414257986173,59.3730354309082,60955800,0.0,0 -2003-02-24,59.19874409395154,59.247535969680534,58.264721349819276,58.411102294921875,30628600,0.0,0 -2003-02-25,57.81865440213824,58.89208157500975,57.30982532150603,58.878143310546875,56770600,0.0,0 -2003-02-26,58.56445738229262,58.919944165980944,57.90925280829697,58.020774841308594,37787200,0.0,0 -2003-02-27,58.34143762666526,59.07332161454423,57.96504592092582,58.78753662109375,51126000,0.0,0 -2003-02-28,58.87814088089745,59.40788531324147,58.66206322416902,59.17786407470703,43666800,0.0,0 -2003-03-03,59.428791485500376,59.79124482000272,58.35536442705249,58.61326217651367,42923100,0.0,0 -2003-03-04,58.51568291916405,58.5575083471744,57.609546853688386,57.67924880981445,31440500,0.0,0 -2003-03-05,57.58165729959585,58.22989550883805,57.40739977364813,58.16716003417969,43974700,0.0,0 -2003-03-06,57.76289434791676,58.21595972169541,57.48408120549411,57.67924880981445,41217700,0.0,0 -2003-03-07,56.88463239642417,58.54356228066201,56.759166753554545,58.07655334472656,63538000,0.0,0 -2003-03-10,57.574685164430484,57.755914479346735,56.52914001501134,56.68248748779297,41014100,0.0,0 -2003-03-11,56.79401626286615,57.156469583757385,56.09698614599106,56.12486267089844,48102700,0.0,0 -2003-03-12,56.02728951205217,56.52915214230561,55.330259262904335,56.50127029418945,62459800,0.0,0 -2003-03-13,57.28193116824331,58.4877955250783,56.82886056071858,58.45294189453125,72117800,0.0,0 -2003-03-14,58.68992042445558,59.08722728839479,58.097446022850306,58.64112854003906,63951800,0.0,0 -2003-03-17,58.174126472241774,60.60675982165377,58.00684075173913,60.48826599121094,88217500,0.0,0 -2003-03-18,60.74619669300459,60.88560063727547,60.139778367795124,60.843780517578125,50792300,0.0,0 -2003-03-19,60.83678743768284,61.45017734085142,60.41857043328827,61.310768127441406,49630800,0.0,0 -2003-03-20,60.87166119147982,61.74991559563773,60.18856911477083,61.4432258605957,67321600,0.0,0 -2003-03-21,62.14584563437148,62.90166940279262,61.536982407654556,62.754703521728516,71165300,0.354,0 -2003-03-24,61.599961867599134,61.683944654413324,60.431229449406125,60.6691780090332,65398900,0.0,0 -2003-03-25,60.704182315336865,61.76794319553053,60.494233303791944,61.250057220458984,61040100,0.0,0 -2003-03-26,61.27804392583687,61.48099834949735,60.74616889075452,60.94212341308594,45740800,0.0,0 -2003-03-27,60.466223721001484,61.34802429638031,60.1792865367225,60.99110412597656,53120200,0.0,0 -2003-03-28,60.515251935818235,61.08212143545648,60.36128606199968,60.68321228027344,32583000,0.0,0 -2003-03-31,59.73138847368106,60.599189240306856,59.06654210251831,59.30448532104492,61119500,0.0,0 -2003-04-01,59.66141586052148,60.45923378036378,59.423472600627676,60.214290618896484,53574000,0.0,0 -2003-04-02,61.26402842584804,62.124829116132915,61.23603416950468,61.66993713378906,50431200,0.0,0 -2003-04-03,62.19485154697264,62.278829022714596,61.34104494785363,61.376033782958984,48755500,0.0,0 -2003-04-04,61.88691800481719,61.99888974883561,61.32004870345116,61.739952087402344,36250100,0.0,0 -2003-04-07,63.22362164719743,63.5805419859995,61.565002202114265,61.62099075317383,69776200,0.0,0 -2003-04-08,61.795938901483346,62.040882090326974,61.38303009226604,61.718955993652344,39712700,0.0,0 -2003-04-09,61.83792441828568,62.355805039079975,60.72517493351219,60.907135009765625,55647300,0.0,0 -2003-04-10,60.9491277105626,61.32704235229255,59.98334940793792,61.243064880371094,41812400,0.0,0 -2003-04-11,61.697944566363695,62.07585375930932,60.78814972866305,60.99110412597656,47730100,0.0,0 -2003-04-14,61.21505904655219,62.285814326176485,60.88613310536353,62.25082015991211,36711700,0.0,0 -2003-04-15,62.1738360576501,62.831687927246094,61.87990428843657,62.831687927246094,49709800,0.0,0 -2003-04-16,62.92267865364152,63.02765048507379,61.60697474650954,61.76094055175781,51788000,0.0,0 -2003-04-17,61.7959539393693,62.789726741287524,61.718971012804694,62.67774963378906,37403100,0.0,0 -2003-04-21,62.88767709826489,63.097631415194485,62.32780247935935,62.7407112121582,32052700,0.0,0 -2003-04-22,62.35581243243125,64.07742011057148,62.20884650934919,63.92345428466797,59763600,0.0,0 -2003-04-23,64.11939015199509,64.6302707398601,63.85344733808673,64.51129913330078,44227100,0.0,0 -2003-04-24,64.05640294426576,64.44131737203632,63.65749405519421,63.93743133544922,49692400,0.0,0 -2003-04-25,63.895454816377494,64.01442644791791,62.999654280589446,63.14662551879883,43917200,0.0,0 -2003-04-28,63.29362659523386,64.51834843901554,63.19564927488041,64.23841094970703,46432900,0.0,0 -2003-04-29,64.48331278421914,64.94521014545691,63.96543223261078,64.46231842041016,52017100,0.0,0 -2003-04-30,64.32231903076172,64.78421081276393,63.9723989107102,64.32231903076172,48709100,0.0,0 -2003-05-01,64.32934785649427,64.89622238370968,63.33557546762003,64.31535339355469,50240400,0.0,0 -2003-05-02,64.07739407232772,65.41409198189515,64.02840545120719,65.23213195800781,50201500,0.0,0 -2003-05-05,65.41408689825414,65.63103572644788,64.73524081594091,65.10615539550781,35437800,0.0,0 -2003-05-06,65.11315986149313,66.05094355564962,65.08516560115662,65.7220230102539,44401000,0.0,0 -2003-05-07,65.37913341008586,65.88301969553241,65.06420715136284,65.35813903808594,41413100,0.0,0 -2003-05-08,64.7492831481623,65.31615795546337,64.58132281309963,64.7002944946289,40570700,0.0,0 -2003-05-09,64.96620409944657,65.64505033490823,64.81223831333855,65.59606170654297,33608100,0.0,0 -2003-05-12,65.43509321362602,66.56883685778566,65.28112743411992,66.40087127685547,35662300,0.0,0 -2003-05-13,66.15594221451687,66.61083974906344,65.96698756998633,66.28191375732422,39253600,0.0,0 -2003-05-14,66.54784074996438,66.65281790887572,65.72203395957412,66.14193725585938,32195100,0.0,0 -2003-05-15,66.40787046482217,66.7158020205294,65.95997293253517,66.56183624267578,43879200,0.0,0 -2003-05-16,66.40788484580402,66.79979393658522,65.96698711867518,66.39389038085938,38905000,0.0,0 -2003-05-19,65.89000150513155,66.07895614060371,64.61629167307865,64.84024047851562,41606000,0.0,0 -2003-05-20,64.95918019338778,65.10614602417378,64.09837422523202,64.70723724365234,55404600,0.0,0 -2003-05-21,64.46232586821061,65.00120084588808,64.32235986707276,64.84024047851562,49333800,0.0,0 -2003-05-22,65.05017440764718,65.82000325361274,64.8612198159571,65.48407745361328,38421800,0.0,0 -2003-05-23,65.45610733028633,65.77103888505322,65.18316985310521,65.61707305908203,26155900,0.0,0 -2003-05-27,65.29512922394083,67.0727196250256,65.13416353882089,66.7647933959961,43719200,0.0,0 -2003-05-28,67.07971449135626,67.51361754703349,66.78578274687791,66.95374298095703,37727100,0.0,0 -2003-05-29,67.10073472459011,67.75858679246781,66.54086528200968,66.77880859375,50844200,0.0,0 -2003-05-30,67.11472641359514,67.94753324332403,66.87677779127188,67.84955596923828,52529500,0.0,0 -2003-06-02,68.25547290132907,68.8993251608971,67.65360938149236,68.12950134277344,50305500,0.0,0 -2003-06-03,67.98950533908399,68.47239165116207,67.77955105427839,68.40940856933594,38254500,0.0,0 -2003-06-04,68.34642607429117,69.52915289339643,68.283437652565,69.39618682861328,49360700,0.0,0 -2003-06-05,68.99028366857016,69.7391128540039,68.77332946426111,69.7391128540039,46262400,0.0,0 -2003-06-06,70.26398902747928,70.96382954500525,69.37518858018004,69.46617126464844,60356800,0.0,0 -2003-06-09,69.12326080833903,69.35420951149284,68.42342013649882,68.75934600830078,37808500,0.0,0 -2003-06-10,68.90629286181547,69.46616738027323,68.71733828196749,69.45916748046875,29965900,0.0,0 -2003-06-11,69.39619008990543,70.25699095886192,69.08125864519293,70.19400787353516,37610200,0.0,0 -2003-06-12,70.5089422251382,70.61391938565312,69.71812424939812,70.41096496582031,36442000,0.0,0 -2003-06-13,70.41097471755998,70.50895199044747,69.24923656852141,69.67613983154297,48628300,0.0,0 -2003-06-16,69.95611052058636,71.17383244914082,69.8441387293702,71.14584350585938,36326300,0.0,0 -2003-06-17,71.43277555908362,71.50975850151626,70.84491164163094,71.14584350585938,36801800,0.0,0 -2003-06-18,70.88683971803579,71.48170303179809,70.68388534710816,71.08279418945312,35521000,0.0,0 -2003-06-19,71.1318137051722,71.19480214940774,69.87209821407374,69.9980697631836,43551700,0.0,0 -2003-06-20,70.51079211607639,70.5880531004005,69.82949363175355,69.84354400634766,41545000,0.36,0 -2003-06-23,69.85053669319932,69.99803877588347,68.77591387617252,69.1270980834961,34237500,0.0,0 -2003-06-24,68.98664219134122,69.59769942114889,68.84616526136185,69.19734954833984,36213600,0.0,0 -2003-06-25,69.2044059389963,69.84356420164536,68.50203704833984,68.50203704833984,47743400,0.0,0 -2003-06-26,68.67761620632804,69.52046192996923,68.10167403989833,69.39403533935547,33477300,0.0,0 -2003-06-27,69.35889427140769,69.66793814799156,68.53712435446978,68.59331512451172,54208800,0.0,0 -2003-06-30,68.98668903973062,69.30275296918889,68.4599122515331,68.5722885131836,33349000,0.0,0 -2003-07-01,68.30534528411577,69.42913395484996,67.72940325544906,69.20437622070312,51322800,0.0,0 -2003-07-02,69.37292607874805,70.08934486378814,69.23245453903019,70.0752944946289,34662100,0.0,0 -2003-07-03,69.58364292361478,70.1314894635021,68.76187311378376,69.35186004638672,30792800,0.0,0 -2003-07-07,69.99105446234039,70.86901549333149,69.99105446234039,70.7285385131836,31391100,0.0,0 -2003-07-08,70.58803035133758,71.14290207872891,70.35624747306409,71.04457092285156,30952500,0.0,0 -2003-07-09,70.88305176119921,71.22019111328397,70.25794401299774,70.64424896240234,36528500,0.0,0 -2003-07-10,70.12447542284772,70.26495235196818,69.27461009659501,69.74520111083984,49777700,0.0,0 -2003-07-11,69.80843648917573,70.55294572252099,69.80843648917573,70.40544891357422,39976300,0.0,0 -2003-07-14,71.07968140747523,71.57134251283712,70.55290509657405,70.74957275390625,42114900,0.0,0 -2003-07-15,71.20618870463669,71.26237952761093,70.20180051824224,70.59513092041016,42573600,0.0,0 -2003-07-16,70.80577164181699,70.84791739859625,69.69603340803596,70.1806640625,39894200,0.0,0 -2003-07-17,69.63986751240108,70.15259373497376,68.9445239016148,69.1833267211914,52253500,0.0,0 -2003-07-18,69.54854331831568,70.09639538196485,69.15521857803722,69.89270782470703,35698100,0.0,0 -2003-07-21,69.85056340831814,69.8786587986869,68.72677458680643,69.02879333496094,34786000,0.0,0 -2003-07-22,69.31676618365232,69.82247248654814,68.77593930358128,69.65390014648438,49968300,0.0,0 -2003-07-23,69.681963254181,69.85053015750323,69.02876047533148,69.70303344726562,37275400,0.0,0 -2003-07-24,70.2298609706175,70.47568900044645,69.09202684436653,69.17630767822266,40896200,0.0,0 -2003-07-25,69.29567347739449,70.44053211564001,68.86020311161812,70.39839172363281,43241100,0.0,0 -2003-07-28,70.49675172989798,70.92519708614267,70.00509040112384,70.13854217529297,34382800,0.0,0 -2003-07-29,70.33521161973373,70.41949780534628,69.30975380870026,69.81546020507812,53472100,0.0,0 -2003-07-30,69.95590435332704,70.06126070431097,69.48531872539833,69.64686584472656,28363300,0.0,0 -2003-07-31,70.22278785674966,70.87599061674479,69.6538658666603,69.80838775634766,54937200,0.0,0 -2003-08-01,69.66794903748179,69.90675180951607,69.00069559589359,69.19033813476562,49321000,0.0,0 -2003-08-04,69.04986118770346,69.53449727743462,68.12975995869857,69.19033813476562,55214100,0.0,0 -2003-08-05,69.12009901491578,69.36592696213732,67.66619081567556,67.72238159179688,61415600,0.0,0 -2003-08-06,67.91200465261053,68.87424596425879,67.72236217722944,68.11569213867188,50096900,0.0,0 -2003-08-07,68.2491555786359,68.88128839039044,67.96118723912097,68.83212280273438,43427400,0.0,0 -2003-08-08,69.0568887253297,69.21843588028815,68.66356397746254,69.02879333496094,27357300,0.0,0 -2003-08-11,69.01474243704484,69.5625891059239,68.71974354263915,69.28866577148438,34631400,0.0,0 -2003-08-12,69.33080681971316,69.94888928495955,69.12711927398884,69.9207992553711,43285600,0.0,0 -2003-08-13,70.1104151724419,70.13148536756913,69.20435927145053,69.56256866455078,36152000,0.0,0 -2003-08-14,69.60474623866088,70.06128702534271,69.14820545197905,69.75224304199219,35525100,0.0,0 -2003-08-15,69.78736856259124,70.08938737896594,69.6188015409504,69.96998596191406,12567000,0.0,0 -2003-08-18,70.18770780915432,70.65829357490026,70.05425603491514,70.57401275634766,22873800,0.0,0 -2003-08-19,70.7214799988292,70.89707210897932,70.23684406004817,70.84088134765625,37437700,0.0,0 -2003-08-20,70.44054130091398,70.86196135187609,70.3492353201103,70.55291748046875,21295300,0.0,0 -2003-08-21,70.97436244819593,71.30447125067444,70.5178217010771,70.77769470214844,46494200,0.0,0 -2003-08-22,71.46598631587713,71.51515189064297,70.04720447360194,70.0752944946289,52040300,0.0,0 -2003-08-25,70.03317640617392,70.81983121157943,69.7311576768229,70.18769836425781,23473000,0.0,0 -2003-08-26,69.88573284178827,70.51084097821364,69.41514678109078,70.31417846679688,45065800,0.0,0 -2003-08-27,70.27197159616723,70.48970411958467,69.93483235343226,70.3351821899414,18919500,0.0,0 -2003-08-28,70.51780728011501,70.93922736102535,69.99805602561382,70.77066040039062,27402400,0.0,0 -2003-08-29,70.66530850610246,71.27637114515835,70.57400251304017,71.24827575683594,28706600,0.0,0 -2003-09-02,71.38874864008422,72.25968425935282,70.9743537117374,72.20349884033203,49419100,0.0,0 -2003-09-03,72.36503409861828,72.83561976217439,72.18944195323344,72.59681701660156,44912400,0.0,0 -2003-09-04,72.4142200424437,72.73028920817964,72.17541722973738,72.6319580078125,28381000,0.0,0 -2003-09-05,72.30182457244157,72.73026984223672,71.92254488973865,72.22456359863281,31637300,0.0,0 -2003-09-08,72.37207107218015,72.96205820461456,72.29481008693547,72.82158660888672,32632800,0.0,0 -2003-09-09,72.60385723994227,72.6670678532219,72.11922110353926,72.34397888183594,35053200,0.0,0 -2003-09-10,72.01382937781175,72.20347184186889,71.32551136401857,71.61347961425781,45904900,0.0,0 -2003-09-11,71.71185243017051,72.17541840399916,71.52923504423964,71.82423400878906,38396300,0.0,0 -2003-09-12,71.57841291011924,72.09113917575318,71.1850827056524,71.95768737792969,42524800,0.0,0 -2003-09-15,72.00685280700098,72.08411380990407,71.60650277316181,71.704833984375,21312800,0.0,0 -2003-09-16,71.80313868045414,72.79347554195682,71.76099292389355,72.75133514404297,37892600,0.0,0 -2003-09-17,72.68109624090881,72.89882876564486,72.37907756531698,72.61085510253906,31885800,0.0,0 -2003-09-18,72.62491795983216,73.5379939705096,72.46337081591255,73.46775817871094,30243600,0.0,0 -2003-09-19,73.51710826135384,73.74978094881101,72.90370529524397,73.09407043457031,34331600,0.4,0 -2003-09-22,72.51593675117668,72.5934943342704,71.93778364579946,72.3044204711914,36677400,0.0,0 -2003-09-23,72.33260682722555,72.82615549375137,72.17044490963242,72.57938385009766,32489200,0.0,0 -2003-09-24,72.70632905350482,72.7768345012419,71.26094316840084,71.28914642333984,41694700,0.0,0 -2003-09-25,71.50062221622728,71.83199814564912,70.64748909520323,70.70389556884766,52673100,0.0,0 -2003-09-26,70.81674586969247,70.97186106442422,70.4007546311646,70.47126007080078,42914700,0.0,0 -2003-09-29,70.71798922971622,71.20448019880646,70.35840473839305,71.16217803955078,36771600,0.0,0 -2003-09-30,70.844949121391,71.0423665040604,69.97771661412727,70.47126007080078,70764500,0.0,0 -2003-10-01,70.67571530038495,72.04354314508642,70.64751205439718,71.97303771972656,65797600,0.0,0 -2003-10-02,71.86727816105719,72.31146718996463,71.65575650202359,72.2339096069336,44591500,0.0,0 -2003-10-03,73.09406951307531,73.5241594889948,72.67808384609421,72.89665222167969,48806900,0.0,0 -2003-10-06,72.96011226951019,73.31969146615205,72.76268959506514,73.22803497314453,20226500,0.0,0 -2003-10-07,72.80500587372774,73.54532081960284,72.5582342251027,73.51007080078125,42602900,0.0,0 -2003-10-08,73.55943973089542,73.60174191356502,72.91078116027012,73.32676696777344,30920800,0.0,0 -2003-10-09,73.94724616981308,74.18697116720031,73.20693083792892,73.52420806884766,40066500,0.0,0 -2003-10-10,73.51710085483263,73.74977351884907,73.26328248770784,73.72862243652344,22682800,0.0,0 -2003-10-13,73.82733205274744,74.23627091385785,73.68632124922809,73.96129608154297,23825600,0.0,0 -2003-10-14,73.89083760846525,74.33502676295502,73.58060718863196,74.22221374511719,38484400,0.0,0 -2003-10-15,74.63815035844344,74.65930143899152,73.77797055470914,74.02474212646484,39021700,0.0,0 -2003-10-16,73.80619259952634,74.54651288269599,73.78504151358747,74.32089233398438,32772200,0.0,0 -2003-10-17,74.3631987170098,74.47600630814473,73.31265348188123,73.51007080078125,32790300,0.0,0 -2003-10-20,73.64402175684783,74.06001281738281,73.2844425547928,74.06001281738281,27657000,0.0,0 -2003-10-21,73.90492510683953,74.22925441409141,73.55239254949356,73.9331283569336,26729100,0.0,0 -2003-10-22,73.34792946602036,73.46074247630985,72.7556772996618,73.00244903564453,33914500,0.0,0 -2003-10-23,72.54412478150097,73.29149182994949,72.50886938595532,72.86845397949219,45830500,0.0,0 -2003-10-24,72.50181813501804,73.0306167602539,72.04352491730339,73.0306167602539,51723600,0.0,0 -2003-10-27,73.14341448518667,73.45364469155831,72.81203319732914,73.06585693359375,32460200,0.0,0 -2003-10-28,73.31264579442382,74.1375703815636,73.19983283589978,74.06001281738281,34956200,0.0,0 -2003-10-29,73.86964275024094,74.33498813819554,73.2350886818926,74.15872192382812,30955400,0.0,0 -2003-10-30,74.58881000105467,74.71572188730758,73.8907973162725,74.31383514404297,39123100,0.0,0 -2003-10-31,74.3138296826958,74.55354912843546,74.18691780576967,74.24332427978516,25761600,0.0,0 -2003-11-03,74.5606290338382,75.16698540714597,74.53242578633325,74.72984313964844,37589300,0.0,0 -2003-11-04,74.72982701423506,74.92724432495098,74.44075320332051,74.56766510009766,31421600,0.0,0 -2003-11-05,74.37729756551812,74.71573109698147,73.96131184104662,74.62406921386719,33558800,0.0,0 -2003-11-06,74.45483642988668,75.04709361632973,74.10230405533304,75.01889038085938,28392300,0.0,0 -2003-11-07,75.18810703048945,75.2445135033927,74.43368793786478,74.4618911743164,31723200,0.0,0 -2003-11-10,74.55355652266138,74.62406193256476,74.0388621890706,74.15872192382812,25530800,0.0,0 -2003-11-11,74.09528094158101,74.26450042072473,73.89081681791602,74.13758850097656,26558600,0.0,0 -2003-11-12,74.19400343424009,75.06828265906258,74.1446490920135,74.96957397460938,28000000,0.0,0 -2003-11-13,74.74391293160785,75.11759637482406,74.58174567815823,74.99068450927734,29714800,0.0,0 -2003-11-14,75.01888743743604,75.40666980669982,74.23626516629635,74.35612487792969,49158500,0.0,0 -2003-11-17,73.96834583497616,74.130507715839,73.35493756321759,73.9824447631836,44382100,0.0,0 -2003-11-18,74.20100458058346,74.34906751620841,73.11520434011722,73.21391296386719,41155000,0.0,0 -2003-11-19,73.34789986539981,74.03886582652243,73.27034229693038,73.83439636230469,29827000,0.0,0 -2003-11-20,73.32674599041422,74.20102491719581,73.15047977409111,73.171630859375,53578700,0.0,0 -2003-11-21,73.49597408736997,73.55943273455831,73.05883723010852,73.47482299804688,30016000,0.0,0 -2003-11-24,73.81323045174709,74.58174844777362,73.80617829806124,74.44778442382812,28906400,0.0,0 -2003-11-25,74.54653009969543,75.03302132630233,74.34910736716081,74.72984313964844,37580000,0.0,0 -2003-11-26,75.03300697623285,75.05415806301156,74.3067909743325,74.99775695800781,33053600,0.0,0 -2003-11-28,74.93430132241414,75.20222944360084,74.87789483593077,75.05416107177734,10507500,0.0,0 -2003-12-01,75.33616877447648,75.92137381818647,75.3009187638925,75.8649673461914,38699000,0.0,0 -2003-12-02,75.7098716016309,75.98484649891381,75.49130319076977,75.67462158203125,35352000,0.0,0 -2003-12-03,75.90022879005252,76.20340687718695,75.49128990429581,75.55474853515625,39078600,0.0,0 -2003-12-04,75.56178928323949,75.94957705418399,75.39962740027524,75.8649673461914,36089500,0.0,0 -2003-12-05,75.52657511733693,76.00601959840337,75.17404256888277,75.3362045288086,28824400,0.0,0 -2003-12-08,75.258674166532,75.89323405917833,75.21637196676282,75.84387969970703,32482900,0.0,0 -2003-12-09,76.07652216764646,76.09767325908211,75.11763324161981,75.2586441040039,43596100,0.0,0 -2003-12-10,75.27978477926202,75.42785315726312,74.70868387264206,75.2515869140625,36915400,0.0,0 -2003-12-11,75.21631756800845,76.21750835274638,75.20926541340667,76.09764862060547,45304000,0.0,0 -2003-12-12,76.12586016445142,76.2880220834577,75.7169212204225,76.24571990966797,34142200,0.0,0 -2003-12-15,76.97191880781263,77.01422635141755,75.78036301741605,75.8649673461914,38693400,0.0,0 -2003-12-16,75.92138552581966,76.49953850488137,75.80857256443294,76.25981903076172,32894200,0.0,0 -2003-12-17,76.18930435814565,76.4995346069336,76.00599137405986,76.4995346069336,23198800,0.0,0 -2003-12-18,76.53480126469732,77.36677810771822,76.42198829245515,77.35972595214844,29353100,0.0,0 -2003-12-19,77.4277230235399,77.47731055173068,76.91767678807169,77.14436340332031,41465100,0.516,0 -2003-12-22,77.06643254379344,77.6827392578125,77.0593470676411,77.6827392578125,27611300,0.0,0 -2003-12-23,77.55524646685845,77.8881882616531,77.48440249747111,77.73234558105469,24741200,0.0,0 -2003-12-24,77.58357497829087,77.83859812658832,77.51982189353444,77.6544189453125,8055800,0.0,0 -2003-12-26,77.718160305662,77.9802688920476,77.6614873024486,77.71107482910156,8308400,0.0,0 -2003-12-29,77.99443465686892,78.82325706378212,77.76774804802166,78.7453384399414,22483700,0.0,0 -2003-12-30,78.69577823669735,78.82328984499344,78.52576456051501,78.75953674316406,19559500,0.0,0 -2003-12-31,78.7878888538756,79.00040464001489,78.51869462493877,78.83039093017578,31501800,0.0,0 -2004-01-02,79.1562077566734,79.47498936146897,78.44073132437855,78.79492950439453,38072300,0.0,0 -2004-01-05,79.12080984343011,79.70877485341526,79.04996586700892,79.65210723876953,27959800,0.0,0 -2004-01-06,79.45372924051644,79.85751490332879,79.34038324166085,79.7300033569336,20472800,0.0,0 -2004-01-07,79.61665664840386,80.09128085395298,79.26245851208935,79.99919128417969,30170400,0.0,0 -2004-01-08,80.22587308221289,80.3392190732864,79.88584051362666,80.31796264648438,36438400,0.0,0 -2004-01-09,79.92834951927122,80.40297370570808,79.53164394742204,79.61665344238281,54084300,0.0,0 -2004-01-12,79.7300189469264,80.22589427729379,79.59542189812565,80.20464324951172,31564100,0.0,0 -2004-01-13,80.11254026350667,80.21172072432074,79.17037722980756,79.73709106445312,54239700,0.0,0 -2004-01-14,79.87877284064848,80.51633062780658,79.81501435961509,80.40298461914062,30112800,0.0,0 -2004-01-15,80.45258626794437,80.79969902229813,79.75127528129278,80.60134887695312,38408700,0.0,0 -2004-01-16,80.7855155819117,80.97678020695902,80.49507050151826,80.92011260986328,31922700,0.0,0 -2004-01-20,81.13262154662556,81.217631042188,80.62966085830865,80.89884948730469,29863000,0.0,0 -2004-01-21,80.84926980707114,81.67809760644255,80.55883012717534,81.53641510009766,30725000,0.0,0 -2004-01-22,81.56475046591063,81.73476406652277,81.16805026293734,81.32389831542969,29888500,0.0,0 -2004-01-23,81.46559915149238,81.72770780747503,80.72178064955895,81.06181335449219,44245300,0.0,0 -2004-01-26,81.03343472893796,82.12436544260822,81.02634925417875,82.08186340332031,30460600,0.0,0 -2004-01-27,81.99689856264949,82.52819596154355,81.2176634585322,81.2389144897461,35322800,0.0,0 -2004-01-28,81.45139319368015,81.66390879978395,80.0062643727123,80.31087493896484,52621300,0.0,0 -2004-01-29,80.44548443161709,80.65092001313137,79.73708811107201,80.3888168334961,60117100,0.0,0 -2004-01-30,80.4171479302391,80.55883043712912,80.1125372962193,80.3888168334961,30984400,0.0,0 -2004-02-02,80.54466135888957,81.23889214722216,80.13379559093266,80.73593139648438,38832400,0.0,0 -2004-02-03,80.57301236981297,80.85637203657845,80.36049667321593,80.60134887695312,25093500,0.0,0 -2004-02-04,80.18339299506042,80.56592771273424,79.90003334441658,79.94253540039062,39332600,0.0,0 -2004-02-05,80.16922220066752,80.43133082384969,79.89294802701086,80.17630767822266,37226800,0.0,0 -2004-02-06,80.34632601425396,81.25307262754559,80.1904779267252,81.07597351074219,37216000,0.0,0 -2004-02-09,81.23181301390645,81.3734955351582,80.96262433048143,81.09722137451172,24851300,0.0,0 -2004-02-10,80.95554347313475,81.56476483769475,80.94137792251898,81.35932922363281,27908100,0.0,0 -2004-02-11,81.35934238360917,82.45027371510321,80.87763251521748,82.22358703613281,42965700,0.0,0 -2004-02-12,82.15271961940275,82.36523526621741,81.8764454952993,81.92603302001953,27814700,0.0,0 -2004-02-13,82.04647348393979,82.3156621789724,81.28848952762364,81.55767822265625,44739900,0.0,0 -2004-02-17,82.06771645927257,82.47858764135107,82.01104345388893,82.29440307617188,23984300,0.0,0 -2004-02-18,82.3156653131789,82.59902497405457,81.71352941171557,81.93313598632812,28618000,0.0,0 -2004-02-19,82.4077674915003,82.4502695527126,81.5081008951723,81.62853240966797,51146200,0.0,0 -2004-02-20,81.80564226197633,81.8623098828095,80.98389960656789,81.38059997558594,46728800,0.0,0 -2004-02-23,81.62144891175262,81.64978542146055,80.87763039467005,81.17515563964844,36357000,0.0,0 -2004-02-24,80.94845301204526,81.45849927698701,80.07004300277643,81.03346252441406,43953000,0.0,0 -2004-02-25,81.08308229757857,81.50811921916441,80.9839071960298,81.37352752685547,31213600,0.0,0 -2004-02-26,81.18932356025533,81.67103339800053,80.99805347803965,81.423095703125,29683000,0.0,0 -2004-02-27,81.60020600450532,81.98982089134594,81.20350023373602,81.47977447509766,39312000,0.0,0 -2004-03-01,81.77020644496586,82.4148444356309,81.64269486153464,82.28733825683594,33130800,0.0,0 -2004-03-02,82.13145700077136,82.8611042206377,81.62849634828714,81.80559539794922,38556400,0.0,0 -2004-03-03,81.64264969281943,82.08185721601062,81.40887768509027,81.954345703125,31346200,0.0,0 -2004-03-04,81.97563597616451,82.24482467465685,81.83395344698232,82.16690063476562,21060000,0.0,0 -2004-03-05,81.76310876487123,82.84695435997045,81.66393370418474,82.44316864013672,55905600,0.0,0 -2004-03-08,82.41481785916295,82.61317335080899,81.40181640115908,81.4372329711914,39281600,0.0,0 -2004-03-09,81.53641058760898,81.61433461062737,80.9271893556297,81.11137390136719,39746100,0.0,0 -2004-03-10,81.26724986288403,81.30266644619962,79.73711078124578,79.75128173828125,67671800,0.0,0 -2004-03-11,79.62374931475863,80.24005066863407,78.70283191532467,78.71700286865234,89134800,0.0,0 -2004-03-12,79.14914577555078,79.84337134046562,79.04288521633092,79.75128173828125,54012200,0.0,0 -2004-03-15,79.53168101772101,79.58835404077723,78.56118116990864,78.77369689941406,57677200,0.0,0 -2004-03-16,79.18458016930263,79.38293037532041,78.51868555941059,79.19166564941406,59832600,0.0,0 -2004-03-17,79.4678891018571,80.23295832548499,79.41121610648445,80.07711029052734,41607300,0.0,0 -2004-03-18,79.83625721893783,80.2400428753971,79.2907944707729,80.0983657836914,60014300,0.0,0 -2004-03-19,79.91004044390952,80.02377844790016,78.93613268373622,78.95034790039062,48636200,0.395,0 -2004-03-22,78.58065777930399,78.60198330662622,77.55698907917453,77.9479751586914,62752100,0.0,0 -2004-03-23,78.37450006590163,78.48113312349693,77.7418174607075,77.81290435791016,54080200,0.0,0 -2004-03-24,77.89821761821482,78.29630861069592,77.37927292565938,77.87689208984375,51584300,0.0,0 -2004-03-25,78.2536457273354,79.12091990723904,78.04748994493353,78.90765380859375,49873600,0.0,0 -2004-03-26,78.8792166006311,79.46924809622296,78.7654786606177,78.9289779663086,37409500,0.0,0 -2004-03-29,79.35551226221318,80.144589295386,79.3199715254039,80.03795623779297,44113600,0.0,0 -2004-03-30,79.83180963963481,80.37918473991957,79.77493794975038,80.30809783935547,39059900,0.0,0 -2004-03-31,80.32229260933343,80.61375587813139,79.88865557558816,80.4004898071289,48517600,0.0,0 -2004-04-01,80.37918707349642,80.94789314168574,80.36497186240406,80.8839111328125,45103800,0.0,0 -2004-04-02,81.61610277305057,81.63742829788485,80.96920501755486,81.49525451660156,50987700,0.0,0 -2004-04-05,81.36730431031523,82.02131244919579,81.35308910015812,81.943115234375,30251800,0.0,0 -2004-04-06,81.63030761354578,81.8791143944497,81.48102354500342,81.68006896972656,28420900,0.0,0 -2004-04-07,81.71567112847647,81.73700208880244,81.11853440539242,81.48818969726562,45890500,0.0,0 -2004-04-08,82.04263745538282,82.04263745538282,80.85546410893083,81.3033218383789,46929700,0.0,0 -2004-04-12,81.45261270945856,81.80805262658109,81.44550239251295,81.62322235107422,23085200,0.0,0 -2004-04-13,81.93599667207395,81.96443251122702,80.34362222099257,80.47869110107422,56210300,0.0,0 -2004-04-14,80.05217356724847,80.78437888300573,80.00952251540471,80.60665893554688,62322300,0.0,0 -2004-04-15,80.64930152673743,80.88389313443265,79.87444524042405,80.30097198486328,61602500,0.0,0 -2004-04-16,80.59954208948497,81.07583563201162,80.3151945354524,80.91944122314453,47059200,0.0,0 -2004-04-19,80.72039576588895,81.03317916004117,80.52134488505143,80.91944122314453,28277600,0.0,0 -2004-04-20,81.09717141521047,81.26778105392897,79.46214565477841,79.5616683959961,53299400,0.0,0 -2004-04-21,79.76072656607519,80.29388651751576,79.52614030936479,80.09484100341797,50177300,0.0,0 -2004-04-22,79.95978524546135,81.51660876636265,79.931349394468,81.2180404663086,62071500,0.0,0 -2004-04-23,81.33886229349294,81.44549534411807,80.89100998916602,81.29621124267578,29395700,0.0,0 -2004-04-26,81.39570774394255,81.70849647867901,80.75591506997274,81.18244171142578,35515200,0.0,0 -2004-04-27,81.20379393370132,81.83647645943238,81.01185336942044,81.25355529785156,43485500,0.0,0 -2004-04-28,80.96209528749189,81.04740281102866,79.97397285674842,80.20145416259766,50165800,0.0,0 -2004-04-29,80.13040163372843,80.55692858715535,79.02143047010148,79.49771881103516,69687600,0.0,0 -2004-04-30,79.73938293070015,79.88866703237804,78.83656800429131,78.87921905517578,48681400,0.0,0 -2004-05-03,79.17067339838378,79.82468141458558,79.1564527673115,79.72515869140625,33758000,0.0,0 -2004-05-04,79.79623982701985,80.51422978415525,79.37682344149304,79.66117095947266,51185100,0.0,0 -2004-05-05,79.9099973659748,80.30097798442988,79.7322774238819,80.17301940917969,34405000,0.0,0 -2004-05-06,79.63273591876727,80.03793710187696,78.90764106294301,79.48345184326172,54997000,0.0,0 -2004-05-07,79.0640526618986,79.78204278248036,78.16834259033203,78.16834259033203,60950000,0.0,0 -2004-05-10,77.7986883888943,78.0190593951474,77.0309368899975,77.36505126953125,75279400,0.0,0 -2004-05-11,77.81292526194441,78.23234728820609,77.72051281311309,78.01908111572266,48300600,0.0,0 -2004-05-12,77.89108283038276,78.58063695685712,76.81765304307997,78.51665496826172,90830500,0.0,0 -2004-05-13,78.02618266009094,78.77260333267704,77.9337647980683,78.18968200683594,57393700,0.0,0 -2004-05-14,78.1612300963329,78.72282577663032,77.67783162617705,78.22521209716797,54123100,0.0,0 -2004-05-17,77.40768461337413,77.84132163352962,77.06646541876145,77.55696868896484,55020400,0.0,0 -2004-05-18,77.83423178152914,78.15413096211095,77.72049382794961,77.9479751586914,30193100,0.0,0 -2004-05-19,78.55221809972842,79.03561658190083,77.59253145200479,77.6778335571289,54804100,0.0,0 -2004-05-20,77.80578968715952,78.10436331643491,77.51433179786359,77.92664337158203,38082900,0.0,0 -2004-05-21,78.17547283209278,78.58778452512605,77.82003283952972,78.06172943115234,47480400,0.0,0 -2004-05-24,78.57354028117757,78.73704501500929,77.96929356008015,78.38871002197266,40961500,0.0,0 -2004-05-25,78.1256734690293,79.60430442091054,77.91240740773789,79.51188659667969,48668000,0.0,0 -2004-05-26,79.37684785541848,79.82470021520538,79.27021479158837,79.78915405273438,35977000,0.0,0 -2004-05-27,80.00239267786591,80.35072217128781,79.66116807562942,80.23698425292969,45306900,0.0,0 -2004-05-28,80.13749174233696,80.24411938611391,79.87446423265992,80.22990417480469,23367200,0.0,0 -2004-06-01,79.94552532556318,80.22987827219086,79.52610893256289,80.12324523925781,41044700,0.0,0 -2004-06-02,80.3507499515285,80.6706491436477,79.94554864704385,80.42183685302734,39774200,0.0,0 -2004-06-03,80.1943293185207,80.46446704899165,79.66827991096432,79.6824951171875,38688300,0.0,0 -2004-06-04,80.31517028808594,80.7416969139472,80.12322978112117,80.31517028808594,32739500,0.0,0 -2004-06-07,80.63511814131165,81.61613058303485,80.62800782275006,81.53793334960938,31643800,0.0,0 -2004-06-08,81.3033275089686,81.69430815843066,81.16114828986932,81.65165710449219,32846500,0.0,0 -2004-06-09,81.40284075159236,81.53790421449771,80.84124510474416,80.89100646972656,36737600,0.0,0 -2004-06-10,81.06872965373171,81.28910064697266,80.99053244511417,81.28910064697266,21711000,0.0,0 -2004-06-14,80.91238979699999,80.93371533671542,80.23705572927702,80.4858627319336,34633000,0.0,0 -2004-06-15,80.96920229805914,81.36018289524746,80.69195963736094,81.05450439453125,37445000,0.0,0 -2004-06-16,81.040283203125,81.18245696913647,80.82701713052627,81.040283203125,26633400,0.0,0 -2004-06-17,80.93365643141338,81.09005084028047,80.56400135702188,80.91944122314453,28402400,0.0,0 -2004-06-18,80.8152845733518,81.49308886895561,80.75107445705676,81.07213592529297,31799800,0.414,0 -2004-06-21,81.1577713506792,81.43602613126814,80.71541494501857,80.7653579711914,25284000,0.0,0 -2004-06-22,80.7153737942784,81.25047970619762,80.38717615484008,81.1719970703125,37334000,0.0,0 -2004-06-23,81.05788537183439,81.93545646729325,80.92232339636449,81.87124633789062,35580000,0.0,0 -2004-06-24,81.73569221154739,81.99967991455505,81.52165298293606,81.6144027709961,35272100,0.0,0 -2004-06-25,81.62864013588005,82.00678084248688,81.10780122832172,81.22195434570312,32837900,0.0,0 -2004-06-28,81.70712041052873,81.77133596421334,80.91516849987184,80.9437026977539,40824500,0.0,0 -2004-06-29,81.00079037805237,81.4574137988257,80.92230771729002,81.27904510498047,28418100,0.0,0 -2004-06-30,81.38606617751606,81.89976887895207,81.08640808280519,81.71426391601562,52230600,0.0,0 -2004-07-01,81.51449953091452,81.62152184435777,80.32299786825263,80.57984924316406,57734700,0.0,0 -2004-07-02,80.73680294822388,80.82955270337904,80.33725339847663,80.53702545166016,34615100,0.0,0 -2004-07-06,80.17315874793704,80.23023259034922,79.6451835194271,79.8306884765625,38698200,0.0,0 -2004-07-07,79.77362715694787,80.31586960733664,79.73082040465296,80.06615447998047,29839800,0.0,0 -2004-07-08,79.7736104710096,80.13748411955083,79.33839043577292,79.50962829589844,45291100,0.0,0 -2004-07-09,79.70938594640329,79.86635123478582,79.4668017434359,79.71652221679688,27412900,0.0,0 -2004-07-12,79.5666847167375,79.93769455572343,79.19568032113075,79.75218963623047,35691300,0.0,0 -2004-07-13,79.85211003609587,79.92345643789713,79.62379828430286,79.8093032836914,26752000,0.0,0 -2004-07-14,79.38119666418362,80.18742111575001,79.28131064163132,79.56669616699219,54089400,0.0,0 -2004-07-15,79.72367932947508,79.84497419264055,78.98166482189518,79.05301666259766,38403500,0.0,0 -2004-07-16,79.60239654441334,79.67374294768122,78.79617184506122,78.98880767822266,40871200,0.0,0 -2004-07-19,79.01733130085816,79.16716035034486,78.47508894792016,78.65345764160156,39592800,0.0,0 -2004-07-20,78.86036345178499,79.83782582144566,78.66059139220596,79.6523208618164,46679800,0.0,0 -2004-07-21,79.78073789936815,79.95197029713296,78.08980096087882,78.18255615234375,56241100,0.0,0 -2004-07-22,78.02560195679453,78.76048010530283,77.60464900829972,78.3966064453125,72477100,0.0,0 -2004-07-23,78.2110997795047,78.27530989067233,77.54756808053894,77.74020385742188,49610500,0.0,0 -2004-07-26,77.90430843442164,78.07554084750576,77.2051007956427,77.59037780761719,49679100,0.0,0 -2004-07-27,77.8044028653524,78.56068415629353,77.74732359420015,78.31809997558594,51295100,0.0,0 -2004-07-28,78.16115055577288,78.74619955456261,77.47621009747206,78.55355834960938,65862300,0.0,0 -2004-07-29,78.86753552247848,79.10298360387551,78.48225832838772,78.8889389038086,52200500,0.0,0 -2004-07-30,78.71051569289821,79.12433225699745,78.55355041386892,79.0815200805664,41581700,0.0,0 -2004-08-02,78.61780290668536,79.45256725380693,78.51791685369892,79.24565887451172,38263100,0.0,0 -2004-08-03,79.14575223852792,79.23850199407109,78.59637908997499,78.63204956054688,40948800,0.0,0 -2004-08-04,78.40373303584745,79.0173217030526,78.22536436383153,78.62490844726562,40763200,0.0,0 -2004-08-05,78.6891268693603,78.75333698080527,77.24790489862087,77.34066009521484,50772000,0.0,0 -2004-08-06,76.79128113176677,77.02672909264379,76.07067559339288,76.23477172851562,74729000,0.0,0 -2004-08-09,76.35607923629637,76.68428247115928,76.24906235903819,76.34181213378906,37476300,0.0,0 -2004-08-10,76.56295268385405,77.34777904832612,76.5272822221646,77.32637023925781,55870600,0.0,0 -2004-08-11,76.82694052308587,77.29070007385747,76.41312397357405,77.1694107055664,52933200,0.0,0 -2004-08-12,76.82693700879535,77.01957273530596,76.07778658078814,76.32750701904297,50015900,0.0,0 -2004-08-13,76.41315564850818,76.59152436171357,76.0492819494225,76.47737121582031,41634700,0.0,0 -2004-08-16,76.44170694689483,77.5119193892464,76.41316729522627,77.26934051513672,45731900,0.0,0 -2004-08-17,77.59037786692475,77.9685186076572,77.43341255340255,77.70453643798828,40701600,0.0,0 -2004-08-18,77.42626806726409,78.60350235040077,77.40486469830556,78.50361633300781,43165400,0.0,0 -2004-08-19,78.34669126292034,78.4965203659389,77.89720395386465,78.27534484863281,39881600,0.0,0 -2004-08-20,78.20397435755437,78.93171626864806,78.13262796523237,78.82469940185547,44870900,0.0,0 -2004-08-23,78.87462894279182,79.03158880172673,78.51789159875997,78.62490844726562,33745100,0.0,0 -2004-08-24,78.93886486232994,79.00308043580961,78.37521902126024,78.7319564819336,30453100,0.0,0 -2004-08-25,78.71766332546487,79.38832582806256,78.41086899309002,79.26703643798828,38551400,0.0,0 -2004-08-26,79.16715041752948,79.41686546867648,79.08866776668616,79.26703643798828,26629500,0.0,0 -2004-08-27,79.33838547311888,79.64517981576148,79.23136862145986,79.51675415039062,24902900,0.0,0 -2004-08-30,79.35264313191965,79.43825659718887,78.8032646606733,78.86034393310547,26726500,0.0,0 -2004-08-31,78.95314649464788,79.30988399637309,78.55359679121568,79.27420806884766,44125300,0.0,0 -2004-09-01,79.16004641788797,79.65234589326025,78.82471775157487,79.42403411865234,52778300,0.0,0 -2004-09-02,79.36693893960502,80.40861154311521,79.36693893960502,80.322998046875,42736600,0.0,0 -2004-09-03,80.1446028770782,80.49420390585313,79.91629122351796,79.9947738647461,30480500,0.0,0 -2004-09-07,80.29446200348825,80.71540956124164,80.13749666216283,80.52277374267578,37338800,0.0,0 -2004-09-08,80.3515376934154,80.66546291859783,80.13035679357253,80.322998046875,32963100,0.0,0 -2004-09-09,80.31585043293722,80.53702585816676,79.93057342411852,80.25164031982422,34314800,0.0,0 -2004-09-10,80.2801892291784,80.81529537669174,79.96626399080316,80.66546630859375,27900600,0.0,0 -2004-09-13,80.84381680605556,81.15061114589483,80.62977766131326,80.92943572998047,44398100,0.0,0 -2004-09-14,80.8366546305847,81.11490922121122,80.75817200826667,81.093505859375,28048900,0.0,0 -2004-09-15,80.83665665547426,80.87946338021895,80.39430054072633,80.47991943359375,38295000,0.0,0 -2004-09-16,80.51562584539296,80.88663577012125,80.47995537330246,80.7225341796875,23911700,0.0,0 -2004-09-17,80.92241215180265,81.2161570497699,80.73614049878948,81.06570434570312,33683000,0.469,0 -2004-09-20,80.721839028063,80.95110115883801,80.4424259769947,80.57855224609375,37149400,0.0,0 -2004-09-21,80.77913559486078,81.29497662577558,80.62868287185046,80.9295883178711,40920800,0.0,0 -2004-09-22,80.60000022570149,80.61432670957407,79.86206332042326,79.91938018798828,49042100,0.0,0 -2004-09-23,79.95522259074397,80.02686596320281,79.48953247070312,79.48953247070312,44068700,0.0,0 -2004-09-24,79.64714983072884,80.04836254862333,79.61849138901931,79.85491943359375,34981100,0.0,0 -2004-09-27,79.5969763852332,79.66861973620077,79.22442768057955,79.34622192382812,39355100,0.0,0 -2004-09-28,79.46090156767822,79.89076738788089,79.10267913983591,79.72598266601562,41662900,0.0,0 -2004-09-29,79.67580858792209,80.13433272501236,79.5253558678805,80.12716674804688,33325700,0.0,0 -2004-09-30,79.91940201740287,80.22747343216567,79.71163241525691,80.06985473632812,43536700,0.0,0 -2004-10-01,80.42808485408482,81.42394256591797,80.39226043208934,81.42394256591797,62824300,0.0,0 -2004-10-04,81.74632809158636,81.98992209889424,81.53139799035552,81.56005096435547,33082400,0.0,0 -2004-10-05,81.56721818543471,81.7893197326122,81.34512210429584,81.60304260253906,36910600,0.0,0 -2004-10-06,81.50987533170132,82.1618423461914,81.44539796070526,82.1618423461914,42297800,0.0,0 -2004-10-07,81.94693336118581,81.96126531451384,81.21616225657732,81.2806396484375,39388800,0.0,0 -2004-10-08,81.06567879004838,81.50987078601423,80.49252112720889,80.6071548461914,51872600,0.0,0 -2004-10-11,80.80064132094871,80.97258653745989,80.70033948914721,80.936767578125,20229100,0.0,0 -2004-10-12,80.38507011282803,80.83643364271894,80.19879847976732,80.62149810791016,41754700,0.0,0 -2004-10-13,80.95821671898965,81.0083676080502,79.75458991549947,79.9122085571289,54212600,0.0,0 -2004-10-14,80.0125285340803,80.1916396737549,79.22444061271969,79.26742553710938,64082200,0.0,0 -2004-10-15,79.53968873955826,80.05552980169547,79.21729080874216,79.71163940429688,63482200,0.0,0 -2004-10-18,79.44652804065484,80.17013849677181,79.31040184016733,80.01251983642578,43535100,0.0,0 -2004-10-19,80.25612910878655,80.40658729881436,79.23161301740087,79.33908081054688,55851900,0.0,0 -2004-10-20,79.08119380800348,79.3964313438856,78.62983544475154,79.1814956665039,57118500,0.0,0 -2004-10-21,79.37490585603204,79.75462065757425,78.95936663447907,79.69730377197266,53218300,0.0,0 -2004-10-22,79.66149480620321,79.70447974277445,78.70862196124904,78.8017578125,48752400,0.0,0 -2004-10-25,78.62979356328002,78.89488002871593,78.34321463476196,78.70860290527344,43990900,0.0,0 -2004-10-26,78.90201933543315,79.95519347174168,78.72290823649733,79.9122085571289,54337400,0.0,0 -2004-10-27,79.79760172099242,81.02988737150294,79.61133005087434,80.87226867675781,73896000,0.0,0 -2004-10-28,80.80057700792628,81.3594026163216,80.59280753141394,81.11581420898438,54413300,0.0,0 -2004-10-29,81.0442358127669,81.41678469483271,80.886617085956,81.10154724121094,48820200,0.0,0 -2004-11-01,81.359442605657,81.56004620818969,81.10152212638975,81.32362365722656,36720900,0.0,0 -2004-11-02,81.43824950957897,82.08305068846693,81.11585165315401,81.35227966308594,56210000,0.0,0 -2004-11-03,82.41262711933902,82.64905516541411,81.84663519057088,82.3768081665039,76960200,0.0,0 -2004-11-04,82.23353001305786,83.58761019415427,82.16188662910288,83.50164031982422,55350300,0.0,0 -2004-11-05,83.85984847701275,84.28254819685489,83.45863575606755,84.02462768554688,63287200,0.0,0 -2004-11-08,83.80969619604203,83.9888073556227,83.62341905958726,83.90283203125,33863800,0.0,0 -2004-11-09,83.8813445840229,84.18225003826774,83.6520825046879,83.73805236816406,44658100,0.0,0 -2004-11-10,83.86699050315494,84.21805223986063,83.65206043512946,83.8025131225586,45265400,0.0,0 -2004-11-11,83.95298010244119,84.62643978885612,83.89566322146149,84.4401626586914,37863200,0.0,0 -2004-11-12,84.5189686006026,85.25690564887971,84.31119901494544,85.10645294189453,55583700,0.0,0 -2004-11-15,85.1502787623764,85.34428964357481,84.95626788117801,85.3155517578125,35297900,0.351,0 -2004-11-16,85.04972621853561,85.08565681873976,84.59703026005873,84.7048110961914,40028700,0.0,0 -2004-11-17,85.0568574889083,85.61015218533957,84.84128499395592,85.20775604248047,54494000,0.0,0 -2004-11-18,85.1718629157227,85.36587934293554,84.95629580822238,85.32276153564453,31854300,0.0,0 -2004-11-19,85.29401847209509,85.30839290199123,84.17305415869971,84.37425231933594,54276500,0.0,0 -2004-11-22,84.19459055143732,84.87723327300488,84.09399149474103,84.7766342163086,37560200,0.0,0 -2004-11-23,84.74070233276602,84.97783102658698,84.33830611215153,84.90597534179688,41968800,0.0,0 -2004-11-24,84.98502465206757,85.21496616492111,84.82694431629922,85.10718536376953,29724800,0.0,0 -2004-11-26,85.15749212302266,85.49521994791823,85.00659350637034,85.04251861572266,15487700,0.0,0 -2004-11-29,85.35866352760362,85.5167493094786,84.41734153110409,84.65446472167969,61460800,0.0,0 -2004-11-30,84.79099510111196,84.96344982730824,84.53231027069911,84.71195220947266,53685200,0.0,0 -2004-12-01,84.90597549314948,85.86885373197553,84.8628576964087,85.67484283447266,49898300,0.0,0 -2004-12-02,85.58143108147763,86.13473140406646,85.5167626055125,85.7467041015625,60163500,0.0,0 -2004-12-03,85.73232129747264,86.3287338790966,85.5742355064651,85.689208984375,49067900,0.0,0 -2004-12-06,85.6604995727539,85.9694840643291,85.3946274113671,85.6604995727539,33030500,0.0,0 -2004-12-07,85.86165506366042,85.95507237560452,84.81973406576006,84.86284637451172,52047200,0.0,0 -2004-12-08,84.94191762328192,85.3802445160654,84.79820622463488,85.35868835449219,43895100,0.0,0 -2004-12-09,84.89163195170487,85.84014159152461,84.59702189168537,85.6604995727539,60922800,0.0,0 -2004-12-10,85.45208864730965,85.91197163940966,85.40178911636865,85.7467041015625,47828600,0.0,0 -2004-12-13,86.05566134199866,86.51554418896137,85.7610459807253,86.49398803710938,38541000,0.0,0 -2004-12-14,86.35748007977877,86.91796209737184,86.35748007977877,86.79580688476562,41500700,0.0,0 -2004-12-15,86.73110835550756,87.02572370715343,86.45086742611727,86.8604507446289,46699200,0.0,0 -2004-12-16,86.74551981240505,87.11917271703877,86.25689340958365,86.81018829345703,51641800,0.0,0 -2004-12-17,86.2455845833256,86.61378676577195,86.0289992763414,86.23114776611328,70761900,0.568,0 -2004-12-20,86.45496375862018,86.84482396389399,86.03622440760752,86.25281524658203,47187400,0.0,0 -2004-12-21,86.34666436688047,86.9819945276402,86.24559011551116,86.9170150756836,33094200,0.0,0 -2004-12-22,86.90982815304037,87.41520511712748,86.85207534960004,87.12641906738281,31500700,0.0,0 -2004-12-23,87.2635610902062,87.55956268724897,87.11194971004277,87.19136047363281,25646100,0.0,0 -2004-12-27,87.50179867448155,87.61731524693703,86.91701117379243,87.0108642578125,29944100,0.0,0 -2004-12-28,87.09752832178245,87.59568405360051,87.06864916983727,87.48738861083984,23422900,0.0,0 -2004-12-29,87.4151763133301,87.64620397537377,87.32131771091196,87.61732482910156,22650600,0.0,0 -2004-12-30,87.64618862450203,87.76892084356238,87.38628186170777,87.45125579833984,21076900,0.0,0 -2004-12-31,87.57398603161329,87.83389277216669,87.21300505952607,87.26354217529297,28648800,0.0,0 -2005-01-03,87.76171143533617,87.90610716074609,86.56325720916936,86.85204315185547,55748000,0.0,0 -2005-01-04,86.96756017996128,87.02531847408078,85.50919905631552,85.79076385498047,69167600,0.0,0 -2005-01-05,85.7257903091464,86.09399257438368,85.19153982203166,85.19876098632812,65667300,0.0,0 -2005-01-06,85.509187633332,86.02178003186476,85.37923424299036,85.63191986083984,47814700,0.0,0 -2005-01-07,85.8918247909627,86.07953646366374,85.28537381305672,85.50918579101562,55847700,0.0,0 -2005-01-10,85.43699266331294,86.2455922019626,85.43699266331294,85.91349029541016,56563300,0.0,0 -2005-01-11,85.6535816969342,85.72577680412202,85.18430523801288,85.32147979736328,63099700,0.0,0 -2005-01-12,85.48033322769673,85.79799287857941,84.84500290966146,85.60306549072266,72720500,0.0,0 -2005-01-13,85.65362030761743,85.71859978907126,84.8305835967762,84.91722106933594,55537500,0.0,0 -2005-01-14,85.16986453877921,85.5741615271148,85.01825316815335,85.36479187011719,42032500,0.0,0 -2005-01-18,85.2276303594549,86.36111066606928,85.15542974104083,86.25281524658203,57391700,0.0,0 -2005-01-19,86.22394591700358,86.28891987121257,85.34315115016285,85.35037231445312,54378900,0.0,0 -2005-01-20,85.11212359512363,85.33593011525102,84.67894737533679,84.83055877685547,72049300,0.0,0 -2005-01-21,85.03994399779306,85.19155542698347,84.21690737753914,84.31076049804688,63160400,0.0,0 -2005-01-24,84.53456917851271,84.71505976656981,84.01476091174223,84.14471435546875,58441900,0.0,0 -2005-01-25,84.40459806176355,84.80889510537054,84.26742348991084,84.3829345703125,68245000,0.0,0 -2005-01-26,84.70057879232576,84.90272726427666,84.49843032037485,84.63560485839844,57195100,0.0,0 -2005-01-27,84.60673705353875,85.01103405160609,84.4551256792635,84.7800064086914,55878800,0.0,0 -2005-01-28,84.82332237044619,84.86664384033446,84.18799772946416,84.7800064086914,60738900,0.0,0 -2005-01-31,85.15542047784602,85.3720112932598,84.98215113039494,85.30703735351562,52532700,0.0,0 -2005-02-01,85.37205866350412,85.9712888115939,85.26376319570751,85.84855651855469,49841200,0.0,0 -2005-02-02,85.95681755443341,86.339456638175,85.84130646695222,86.10842895507812,52468900,0.0,0 -2005-02-03,85.95680814740096,86.0290087658264,85.60304825127845,85.88461303710938,48837100,0.0,0 -2005-02-04,85.91352043783573,86.94592682812842,85.899083614283,86.8015365600586,50024600,0.0,0 -2005-02-07,86.81595806025169,87.01088543855407,86.60658835281005,86.68600463867188,45412000,0.0,0 -2005-02-08,86.75818445358402,87.10472868603576,86.68598934502891,86.78706359863281,39263500,0.0,0 -2005-02-09,86.93870777756014,86.98924492342775,86.09401312171478,86.1373291015625,55279400,0.0,0 -2005-02-10,86.39000873964716,86.64991009197294,86.10122272712013,86.44776153564453,45858600,0.0,0 -2005-02-11,86.4188612462475,87.386293325367,86.24559188436554,87.19136047363281,53133000,0.0,0 -2005-02-14,87.13364023336376,87.25637251436113,86.98202879657836,87.12641906738281,32432100,0.0,0 -2005-02-15,87.21301252255593,87.66784660337939,87.12637509891351,87.45125579833984,43852700,0.0,0 -2005-02-16,87.30690751389699,87.68954667944547,87.11919575995665,87.5090560913086,55523000,0.0,0 -2005-02-17,87.52349891667906,87.59569405071397,86.79431539421441,86.8015365600586,58124000,0.0,0 -2005-02-18,86.80871966117832,86.9819945276402,86.56325519589103,86.9170150756836,47723300,0.0,0 -2005-02-22,86.56327079641703,86.97478903919449,85.61028089166216,85.62471771240234,80697600,0.0,0 -2005-02-23,85.86296252108768,86.32501787689273,85.63915600728238,86.2383804321289,68292600,0.0,0 -2005-02-24,86.08677646422818,86.86649700998989,85.89907024657558,86.8087387084961,68563600,0.0,0 -2005-02-25,86.8303907776835,87.84113895241065,86.76541682403158,87.6678695678711,60899900,0.0,0 -2005-02-28,87.46573261878115,87.57402806401176,86.66435403546389,87.0903091430664,69381300,0.0,0 -2005-03-01,87.22749132632707,87.73286277050417,87.19861217121186,87.52349853515625,47294400,0.0,0 -2005-03-02,87.18418472985522,88.02887945236647,87.10476842177609,87.48018646240234,64226500,0.0,0 -2005-03-03,87.83393102552905,88.00720042531596,87.14084241011159,87.51626586914062,61230800,0.0,0 -2005-03-04,88.11548032532973,88.67860990642257,87.9277686289208,88.60641479492188,56168500,0.0,0 -2005-03-07,88.55588902029392,88.98184408845573,88.36817729981745,88.64974212646484,43442400,0.0,0 -2005-03-08,88.56312968160363,88.80137860469084,88.15883248470617,88.31766510009766,44362000,0.0,0 -2005-03-09,88.05773955767073,88.28876726533122,87.32855611768748,87.33577728271484,73263600,0.0,0 -2005-03-10,87.50182915981303,87.71842005455987,86.92426262071353,87.53070831298828,65149000,0.0,0 -2005-03-11,87.58121887272006,87.87722597182558,86.75096688049128,86.9170150756836,57976500,0.0,0 -2005-03-14,87.07587222021685,87.47295368289187,86.83762334261185,87.45851135253906,36336400,0.0,0 -2005-03-15,87.66066023050934,87.68953938318461,86.69323340249609,86.7365493774414,62438500,0.0,0 -2005-03-16,86.41889420920745,86.75100174934717,85.84132761325377,86.00016021728516,74874200,0.0,0 -2005-03-17,86.13732344749585,86.44776746834378,85.8990800658359,86.17342376708984,62584200,0.0,0 -2005-03-18,86.33066840893288,86.6350821648709,85.63486316831663,85.91753387451172,60232000,0.467,0 -2005-03-21,86.04078299024602,86.09151863676446,85.35222699752853,85.5986557006836,61244300,0.0,0 -2005-03-22,85.79432798658289,86.20021303430512,84.72887420654297,84.72887420654297,92472400,0.0,0 -2005-03-23,84.76513422644521,85.32323185118456,84.62017682067349,84.80137634277344,70817300,0.0,0 -2005-03-24,85.13478245619991,85.51892455673783,84.84486211605622,84.90284729003906,51932500,0.0,0 -2005-03-28,85.10576733420785,85.48266533552768,85.02603912353516,85.02603912353516,46765500,0.0,0 -2005-03-29,84.90284350235518,85.45369157107673,84.25777367744284,84.4607162475586,71160300,0.0,0 -2005-03-30,84.64191312102461,85.6711249972384,84.63466359238363,85.65663146972656,62002100,0.0,0 -2005-03-31,85.66387546398046,85.85956848648293,85.43194033038466,85.4971694946289,64575400,0.0,0 -2005-04-01,85.9827771619284,86.24370486128501,84.73612935694271,85.11302185058594,95255300,0.0,0 -2005-04-04,85.06227972259161,85.42467866294697,84.61290304583413,85.25797271728516,71581200,0.0,0 -2005-04-05,85.36670195035829,85.80157961585176,85.28697373321137,85.66387176513672,46853900,0.0,0 -2005-04-06,85.85231588251385,86.21471486138435,85.65662286702239,85.9610366821289,53268200,0.0,0 -2005-04-07,85.82332578864988,86.43940292494081,85.75809109928507,86.4249038696289,46734600,0.0,0 -2005-04-08,86.3742043190464,86.4031969120127,85.52619171142578,85.52619171142578,63772900,0.0,0 -2005-04-11,85.73634779153709,85.83056953170723,85.40294140735504,85.59138488769531,44945000,0.0,0 -2005-04-12,85.44643135012254,86.29444363903713,84.85209724210938,86.03351593017578,86144800,0.0,0 -2005-04-13,85.93204794368518,86.10600344275754,84.8955865965675,85.01880645751953,65949000,0.0,0 -2005-04-14,85.09131388313112,85.16379260066671,83.9098892211914,83.9098892211914,96119800,0.0,0 -2005-04-15,83.88808240160478,84.2214886726877,82.69941464217261,82.73565673828125,128677300,0.0,0 -2005-04-18,82.71392818775199,83.3227556947452,82.59795788369512,82.98934936523438,100035200,0.0,0 -2005-04-19,83.42424989655674,83.73591326223998,83.2285568668347,83.64894104003906,64930100,0.0,0 -2005-04-20,83.62719419480014,83.80839370118234,82.30081801070763,82.48201751708984,107735900,0.0,0 -2005-04-21,83.19953944659008,84.2287509870464,82.90236969672642,84.08379364013672,86952200,0.0,0 -2005-04-22,83.8881374557076,84.43898560541791,82.82268327618057,83.76492309570312,88845800,0.0,0 -2005-04-25,83.97513218043954,84.43900265392482,83.8736608599754,84.31578826904297,52284100,0.0,0 -2005-04-26,84.04757501545367,84.63465962312645,83.46049040778091,83.4967269897461,72626000,0.0,0 -2005-04-27,83.250300142015,84.12730507339782,82.94588630396873,83.82289123535156,84131900,0.0,0 -2005-04-28,83.54747589694796,83.84464577701496,82.77194213867188,82.77194213867188,72481500,0.0,0 -2005-04-29,83.40251519512958,83.9823558734761,82.60523840973102,83.89537811279297,103993800,0.0,0 -2005-05-02,84.1272933284774,84.3737274937557,83.72865226542544,84.3664779663086,56026400,0.0,0 -2005-05-03,84.1272868544119,84.69262829685636,83.85186566007887,84.51142883300781,86000300,0.0,0 -2005-05-04,84.5476953341061,85.34497209914187,84.27951805951034,85.16377258300781,81055700,0.0,0 -2005-05-05,85.28700310142418,85.52618783522716,84.61294055237941,85.13479614257812,96906700,0.0,0 -2005-05-06,85.4754178987897,85.51890400394053,84.84484172525661,84.86658477783203,67415400,0.0,0 -2005-05-09,84.95357133322123,85.5841475721869,84.83760653086271,85.39569854736328,43750500,0.0,0 -2005-05-10,85.06227675144265,85.16374800881633,84.35922194694729,84.51142883300781,74613500,0.0,0 -2005-05-11,84.75066372733764,85.09131980621636,83.96788025201276,84.97534942626953,91647400,0.0,0 -2005-05-12,85.03331198627502,85.2290050381403,84.04033660888672,84.04033660888672,95086800,0.0,0 -2005-05-13,84.2940185500995,84.52595371350215,83.20682143481758,83.8736343383789,85267000,0.0,0 -2005-05-16,83.85914309343394,84.68541253565114,83.83015603385702,84.65642547607422,49207000,0.0,0 -2005-05-17,84.37373603725693,85.30872057114567,84.1925365411162,85.22174835205078,61071800,0.0,0 -2005-05-18,85.59141571944193,86.30896990995508,85.53343606678914,86.0987777709961,77944900,0.0,0 -2005-05-19,86.26546779732857,86.54814414492485,86.03353262552884,86.46116638183594,61768100,0.0,0 -2005-05-20,86.49741024062884,86.53365236073861,86.06253244816719,86.33795928955078,46345500,0.0,0 -2005-05-23,86.40315722616951,87.00474081192064,86.38866370122922,86.81629180908203,51047900,0.0,0 -2005-05-24,86.56987906077089,86.85254985200939,86.39592355095478,86.61336517333984,50654100,0.0,0 -2005-05-25,86.50462695771985,86.88152495672072,86.12773448848802,86.5481185913086,47608800,0.0,0 -2005-05-26,86.82357485020158,87.12798875937322,86.70036048645657,87.01202392578125,43256200,0.0,0 -2005-05-27,87.01923090943257,87.15694427490234,86.83078744378533,87.15694427490234,24596100,0.0,0 -2005-05-31,87.03373935936247,87.09896852072016,86.54087653106053,86.59886169433594,43377200,0.0,0 -2005-06-01,86.62787589369654,87.64259444993121,86.57714024237337,87.33818054199219,69611000,0.0,0 -2005-06-02,87.14246166249569,87.58458333323732,87.04823438810402,87.52660369873047,39704500,0.0,0 -2005-06-03,87.37441589945469,87.62084460687159,86.78008166005831,87.0844955444336,60999400,0.0,0 -2005-06-06,86.93951841691582,87.12071791801799,86.64960363896829,87.00475311279297,36046400,0.0,0 -2005-06-07,87.25844111609291,87.88176791232694,86.98301983417787,87.06999206542969,66501300,0.0,0 -2005-06-08,87.28741495152721,87.4033797448743,86.73656697626282,86.9105224609375,46881200,0.0,0 -2005-06-09,86.78729974276611,87.39613285947311,86.56986368876082,87.32365417480469,56653300,0.0,0 -2005-06-10,87.38164763960172,87.44688233697019,86.68584220303508,87.12071990966797,36465300,0.0,0 -2005-06-13,86.93227079116055,87.75854003932977,86.83804351546618,87.3961410522461,49383200,0.0,0 -2005-06-14,87.30188271124536,87.84548099843808,87.25114709229807,87.59905242919922,33857100,0.0,0 -2005-06-15,87.8165340185432,87.87451365967102,87.1424716137212,87.76579284667969,53195600,0.0,0 -2005-06-16,87.74404431955743,88.16442848770393,87.64257304169722,87.990478515625,46564500,0.0,0 -2005-06-17,88.4474958560733,88.70947670396208,88.21462460818199,88.3165054321289,51529400,0.488,0 -2005-06-20,88.11272511492596,88.66579074142906,88.01084431256554,88.34559631347656,41019400,0.0,0 -2005-06-21,88.41839148221165,88.52755110063214,88.07636060213554,88.39656066894531,39879800,0.0,0 -2005-06-22,88.54936457622424,88.73857417430055,88.10545295309579,88.46931457519531,46310100,0.0,0 -2005-06-23,88.28738989483985,88.49115152903079,87.20308374027339,87.22491455078125,62185600,0.0,0 -2005-06-24,87.23947263107534,87.33408021929586,86.48263968575382,86.58452606201172,58572500,0.0,0 -2005-06-27,86.57725388949083,86.89745396254081,86.41715385296584,86.70824432373047,48183800,0.0,0 -2005-06-28,86.89019669405594,87.50148183717869,86.86836587495732,87.43598937988281,41174200,0.0,0 -2005-06-29,87.59606577623623,87.61789658943333,87.15215406759903,87.20309448242188,42316500,0.0,0 -2005-06-30,87.48686651759145,87.55963771263856,86.56265512902571,86.73003387451172,62288800,0.0,0 -2005-07-01,86.92654490333042,87.18125249689255,86.75189286804654,86.9847640991211,49737500,0.0,0 -2005-07-05,86.78101232740228,87.7998261611606,86.73735070164179,87.68338775634766,51549000,0.0,0 -2005-07-06,87.61060481111149,87.7998144175806,86.89743910933157,86.94837951660156,52363600,0.0,0 -2005-07-07,86.08238751491683,87.2904052734375,86.06055670483634,87.2904052734375,103268800,0.0,0 -2005-07-08,87.30496630545579,88.28739166259766,87.12303547812996,88.28739166259766,64491200,0.0,0 -2005-07-11,88.29468233259396,88.85502691324747,88.28012475527939,88.73859405517578,49688300,0.0,0 -2005-07-12,88.77497763369269,89.24072017403657,88.52027554945603,88.97146606445312,51871100,0.0,0 -2005-07-13,88.9787459063976,89.1606767732278,88.77498422388209,89.09518432617188,41182300,0.0,0 -2005-07-14,89.49539077418446,89.83014273951953,89.13880245173226,89.44445037841797,63638800,0.0,0 -2005-07-15,89.35713371124356,89.53906451392496,89.04421250854807,89.39351654052734,56075900,0.0,0 -2005-07-18,89.1461011299174,89.24070315685462,88.81862787721411,89.03694152832031,56598400,0.0,0 -2005-07-19,89.29892081008633,89.59001122529189,89.08060716274805,89.5245132446289,59165700,0.0,0 -2005-07-20,89.21162313582371,90.04123305174815,89.00058820208334,89.83019256591797,69477000,0.0,0 -2005-07-21,89.9102174310577,89.95387905311559,89.12427492148618,89.30620574951172,101110900,0.0,0 -2005-07-22,89.42260843617811,89.91746034361111,89.24067766950549,89.90290832519531,52607100,0.0,0 -2005-07-25,89.80836208633595,90.2013279005011,89.40083314054012,89.64826202392578,57301600,0.0,0 -2005-07-26,89.67734080230808,89.89565445156184,89.47357362341482,89.75738525390625,42758800,0.0,0 -2005-07-27,89.87384418125085,90.15765587660346,89.54637085648683,90.08488464355469,43181600,0.0,0 -2005-07-28,90.20856947178353,90.70342148229768,89.97569826401731,90.65248107910156,47880700,0.0,0 -2005-07-29,90.53604831965976,90.69614276404884,89.8738175255223,90.04846954345703,62358100,0.0,0 -2005-08-01,90.11399214625389,90.26681339772013,89.83745369419101,89.98300170898438,40418200,0.0,0 -2005-08-02,90.14311635576537,90.67435142759619,90.04850874279744,90.52153015136719,45147400,0.0,0 -2005-08-03,90.4196192490503,90.77620210840554,90.32501721961388,90.76165008544922,36837200,0.0,0 -2005-08-04,90.40506835652091,90.46328200116224,89.92476831163468,90.03392791748047,50855600,0.0,0 -2005-08-05,89.83740167831535,90.22309953013185,89.26977862949771,89.42259979248047,53595500,0.0,0 -2005-08-08,89.619148915457,89.80835857746646,89.05879871891467,89.25528717041016,47616000,0.0,0 -2005-08-09,89.55361222654511,89.93930462133892,89.41534859857899,89.79376220703125,47170000,0.0,0 -2005-08-10,90.10669729745084,90.60154935537092,89.37897400945589,89.75011444091797,72863700,0.0,0 -2005-08-11,89.70647743626216,90.2595488757194,89.51727331525807,90.10672760009766,58570200,0.0,0 -2005-08-12,89.92475978862963,90.01208857544694,89.32802695893047,89.55361938476562,54776900,0.0,0 -2005-08-15,89.67009459087981,90.14311599756995,89.38628285728372,90.10672760009766,36208500,0.0,0 -2005-08-16,89.83016834918226,89.88838199516384,88.84773742603969,88.93506622314453,71942100,0.0,0 -2005-08-17,88.92047640118827,89.41532827025326,88.8040380545443,88.92774963378906,62275100,0.0,0 -2005-08-18,88.81862090271743,89.18975574608093,88.66579414122947,88.92050170898438,53388600,0.0,0 -2005-08-19,89.24075388691355,89.37902316434335,88.92783247889794,89.12432098388672,39842100,0.0,0 -2005-08-22,89.20437103375754,89.67739254151478,88.69496112075315,89.12432098388672,69912000,0.0,0 -2005-08-23,89.14612646882543,89.2261764959442,88.16370087938282,88.95691680908203,55168600,0.0,0 -2005-08-24,88.73858311737989,89.31348520448633,88.12001385580105,88.16368103027344,79104600,0.0,0 -2005-08-25,88.30924226934563,88.54211355844066,88.20736142737215,88.48389434814453,35631100,0.0,0 -2005-08-26,88.40381387001506,88.4110871042728,87.82163310833658,87.87985229492188,61956800,0.0,0 -2005-08-29,87.62517088785077,88.62214832002448,87.60333452368377,88.55665588378906,56179200,0.0,0 -2005-08-30,88.23647723730335,88.27286563431963,87.61063456283446,88.09093475341797,74160200,0.0,0 -2005-08-31,88.19281050791244,89.26256491415195,87.86533160995305,89.204345703125,102945200,0.0,0 -2005-09-01,89.16066290457476,89.6191321710107,88.15640667463303,89.13883209228516,74578700,0.0,0 -2005-09-02,89.40081777815905,89.42264859162913,88.8113636061116,88.9787368774414,47653400,0.0,0 -2005-09-06,89.26253611252761,90.09214016966646,89.25525732547544,90.01936340332031,57251300,0.0,0 -2005-09-07,89.96845108629135,90.33231282326881,89.8447394282205,90.1722183227539,41749700,0.0,0 -2005-09-08,89.99027110231467,90.23769437349759,89.73556349104126,89.87383270263672,39068700,0.0,0 -2005-09-09,90.11397194316676,90.77619721771967,90.09214113386437,90.67431640625,43093900,0.0,0 -2005-09-12,90.56518762163293,90.7252876804401,90.43419716916247,90.49241638183594,33017600,0.0,0 -2005-09-13,90.33229783422324,90.54333827290247,89.88838614460288,89.99027252197266,58427500,0.0,0 -2005-09-14,90.04848851943099,90.17947894850762,89.5245268031245,89.66279602050781,57694600,0.0,0 -2005-09-15,89.9393121856405,89.98297935527519,89.437186927587,89.6191177368164,73156900,0.0,0 -2005-09-16,90.11025431413329,90.43181184394642,89.79600098164732,90.25641632080078,75424100,0.522,0 -2005-09-19,90.23447214760061,90.2929391673195,89.62788936339146,89.95675659179688,53355300,0.0,0 -2005-09-20,90.03716380320965,90.33680315223307,89.06517590744288,89.19672393798828,84480300,0.0,0 -2005-09-21,89.0067070196252,89.06517404880813,88.26857610942828,88.36358642578125,94469100,0.0,0 -2005-09-22,88.39278334196909,88.91167107420328,88.02006870711355,88.67780303955078,84597200,0.0,0 -2005-09-23,88.6047403461364,89.07977513201462,88.35626387163755,88.75090789794922,59368100,0.0,0 -2005-09-26,89.17479083954196,89.3355723784731,88.48782277645799,88.85323333740234,70415400,0.0,0 -2005-09-27,88.80938476854168,89.1528716053107,88.44397418912322,88.83131408691406,66150800,0.0,0 -2005-09-28,89.1090061129692,89.24786388931935,88.57550432150958,88.91899108886719,58620500,0.0,0 -2005-09-29,88.8313052382831,89.7886790767625,88.48781843572935,89.64251708984375,66607700,0.0,0 -2005-09-30,89.61327592961878,89.92021942138673,88.97014986032755,89.92021942138672,47824200,0.0,0 -2005-10-03,89.8617593650452,90.13946936830052,89.4890390528881,89.59866333007812,50994800,0.0,0 -2005-10-04,89.73753028664525,89.91292580263328,88.54629381132044,88.59014129638672,60776300,0.0,0 -2005-10-05,88.61207109208124,88.65591858014277,87.38429124484863,87.42813873291016,106052100,0.0,0 -2005-10-06,87.53774626923116,87.8885428337315,86.3611239085819,87.1138687133789,140941800,0.0,0 -2005-10-07,87.47926150156918,87.73505328299946,87.06269380206537,87.41349029541016,75661400,0.0,0 -2005-10-10,87.46464957997573,87.48657331587428,86.45611869859411,86.67536163330078,52677000,0.0,0 -2005-10-11,86.96038251693518,87.25271200951667,86.47073382290095,86.5511245727539,75629800,0.0,0 -2005-10-12,86.52191320932471,87.06271928478915,85.80571162371125,85.8714828491211,100510400,0.0,0 -2005-10-13,85.84224386980208,86.29535494920678,85.41836630284821,85.82032012939453,99052900,0.0,0 -2005-10-14,86.3245989415899,86.82886175934888,85.91533529331508,86.72654724121094,88651000,0.0,0 -2005-10-17,86.82154296187802,87.16502417173817,86.5657511338251,87.048095703125,68109300,0.0,0 -2005-10-18,86.92383755785433,86.93845152218867,86.09070219777503,86.10531616210938,74996900,0.0,0 -2005-10-19,85.87149400081682,87.5523850498456,85.5937839423725,87.53776550292969,116563800,0.0,0 -2005-10-20,87.32577538893632,87.55963782072419,85.72528163652446,85.99568176269531,131966700,0.0,0 -2005-10-21,86.4488126929558,86.8069134049104,85.87877323188316,86.33187866210938,96579500,0.0,0 -2005-10-24,86.55845067412434,87.76430099798013,86.53652693379567,87.66929626464844,71308400,0.0,0 -2005-10-25,87.49390411376953,87.87392863735822,86.92386454052523,87.49390411376953,76594500,0.0,0 -2005-10-26,87.34045082240667,88.09319583221573,87.10658824095411,87.2381362915039,80855800,0.0,0 -2005-10-27,87.11384599954033,87.23808978573804,86.1857059423551,86.30994415283203,66623100,0.0,0 -2005-10-28,86.55114127091538,87.66198686617295,86.30996897482761,87.5523681640625,72322000,0.0,0 -2005-10-31,87.91045973344326,88.64859051282643,87.79352569580078,87.79352569580078,77698900,0.0,0 -2005-11-01,88.1223868888632,88.35624935762587,87.85929091454005,88.05661010742188,66365100,0.0,0 -2005-11-02,87.82278676342996,88.97748565673828,87.79355324484605,88.97748565673828,74012300,0.0,0 -2005-11-03,89.26981082267746,89.64253119641245,88.97748122711518,89.35750579833984,84897600,0.0,0 -2005-11-04,89.45252416358863,89.49637165536117,88.83132720200808,89.24058532714844,59156000,0.0,0 -2005-11-07,89.43056155713853,89.61326679443093,89.05053154116641,89.3282470703125,46765400,0.0,0 -2005-11-08,89.10899855527309,89.4670992591642,89.00668406844706,89.3282470703125,42152800,0.0,0 -2005-11-09,89.21860724163746,89.85441778798649,89.05782576876562,89.44515991210938,57666800,0.0,0 -2005-11-10,89.40862914937654,90.27099806256685,88.97744748064197,90.13945007324219,79048100,0.0,0 -2005-11-11,90.14677183781409,90.50487257695204,89.4744178365733,90.4464111328125,34867000,0.0,0 -2005-11-14,90.46836757344144,90.6364533466496,90.16872817013068,90.3952865600586,45092200,0.0,0 -2005-11-15,90.29296462134812,90.6876031763964,89.78869619163032,90.06640625,69592500,0.0,0 -2005-11-16,90.16138952039536,90.29293752450847,89.87636977410388,90.24908447265625,51133000,0.0,0 -2005-11-17,90.38794343888479,91.09684071618285,89.99329942134602,91.08953094482422,55717500,0.0,0 -2005-11-18,91.39647458778421,91.55725610361507,90.86297836786021,91.4476318359375,72437200,0.0,0 -2005-11-21,91.46222650381034,92.017651886789,91.33798830290154,91.90802764892578,50021200,0.0,0 -2005-11-22,91.76187707886737,92.46346452469459,91.65956259150016,92.30268859863281,66438800,0.0,0 -2005-11-23,92.26614220860013,93.11389716187284,92.23690870237819,92.836181640625,50854700,0.0,0 -2005-11-25,92.79969065334613,92.97508620324757,92.67544679543045,92.90930938720703,15270000,0.0,0 -2005-11-28,92.99696844447934,93.01158241056376,92.112675739752,92.25153350830078,54498500,0.0,0 -2005-11-29,92.55847924300257,92.79965150720966,92.1492156982422,92.14921569824219,51738900,0.0,0 -2005-11-30,92.20038322501075,92.4634736644455,91.56456692576182,91.65226745605469,56007200,0.0,0 -2005-12-01,92.09807601484367,92.83620691466564,92.0688480763858,92.58773040771484,65468200,0.0,0 -2005-12-02,92.64619148017955,92.87274982021863,92.4488722299238,92.70465850830078,46699400,0.0,0 -2005-12-05,92.59500389769815,92.61693320785331,92.21497949082153,92.50730895996094,59273400,0.0,0 -2005-12-06,92.85082293464419,93.35508570187784,92.5438738352625,92.68273162841797,57935200,0.0,0 -2005-12-07,92.64617707357039,92.7192636352182,91.84958484825,92.14191436767578,66816500,0.0,0 -2005-12-08,92.2442394797524,92.68273102149732,91.70343343079107,92.08345794677734,62608600,0.0,0 -2005-12-09,92.2003772504428,92.65348268828996,91.95189521857556,92.32461547851562,50744500,0.0,0 -2005-12-12,92.60235332951851,92.71197762436319,92.05423743101835,92.41233825683594,48389900,0.0,0 -2005-12-13,92.3903718819146,93.32582169160054,92.29536717727237,93.04080200195312,88630900,0.0,0 -2005-12-14,92.95315963730887,93.61089432342192,92.91661634331422,93.40626525878906,64375000,0.0,0 -2005-12-15,93.42815003797955,93.54508406941264,92.94581109762183,93.13582611083984,55900300,0.0,0 -2005-12-16,93.51201604190832,93.57079301064431,92.83609771728516,92.83609771728516,46238300,0.672,0 -2005-12-19,93.10790495876333,93.21076181602197,92.34382144392887,92.35851287841797,48733000,0.0,0 -2005-12-20,92.4687104847472,93.00503468034204,92.18952841068946,92.44667053222656,46603200,0.0,0 -2005-12-21,92.73319887778808,93.12993482937648,92.42462833942301,92.5936050415039,51806900,0.0,0 -2005-12-22,92.79934922300909,93.07853698730469,92.63037246541082,93.07853698730469,32247900,0.0,0 -2005-12-23,93.14462765137918,93.20340459440463,92.88013701304244,93.12993621826172,27977300,0.0,0 -2005-12-27,93.27689944973352,93.34302493072812,92.11607971920071,92.18220520019531,44499500,0.0,0 -2005-12-28,92.3805756726354,92.56424947819075,92.2042503887806,92.38792419433594,30764300,0.0,0 -2005-12-29,92.36587373271475,92.54219899652175,91.88097225064664,91.97648620605469,32788900,0.0,0 -2005-12-30,91.68997576196764,91.88099250433218,91.3667080359964,91.47691345214844,44645600,0.0,0 -2006-01-03,91.97648324751587,93.30627961207749,91.38872491335972,93.08586883544922,73256700,0.0,0 -2006-01-04,93.20343519336745,93.66629115977481,93.08588126872326,93.52670288085938,51899600,0.0,0 -2006-01-05,93.41647250384779,93.73973449963913,93.21810171036309,93.58544921875,47307500,0.0,0 -2006-01-06,94.05569476339781,94.46712233472677,93.57079317837702,94.36426544189453,62885900,0.0,0 -2006-01-09,94.34954929721486,94.81975374219844,94.32016642402262,94.60669708251953,43527400,0.0,0 -2006-01-10,94.32750374744894,94.76097116732531,94.23198979675979,94.70219421386719,44960800,0.0,0 -2006-01-11,94.79035371822569,95.09892427842549,94.57728588653968,95.00341033935547,49598900,0.0,0 -2006-01-12,94.83445215030434,94.98138893949888,94.36424769854676,94.62873840332031,40509200,0.0,0 -2006-01-13,94.45975978723918,94.702199318806,94.18791496152183,94.54056549072266,44856700,0.0,0 -2006-01-17,94.18793329119941,94.34956715073791,93.90140257848304,94.283447265625,52066600,0.0,0 -2006-01-18,93.73239667969688,94.70218832505795,93.42382610114758,93.90872192382812,75067600,0.0,0 -2006-01-19,94.13648280279274,94.60668719865257,93.90137499958429,94.26872253417969,81530400,0.0,0 -2006-01-20,94.2466969931859,94.26873695178789,92.54955291748047,92.54955291748047,114957800,0.0,0 -2006-01-23,92.72586454851582,93.17402899174755,92.6670875973723,92.8801498413086,67017400,0.0,0 -2006-01-24,93.03444884476055,93.4164934782174,92.88016352923046,92.97567749023438,53008800,0.0,0 -2006-01-25,93.33565486458377,93.43851171769548,92.45401748826878,93.05647277832031,87747700,0.0,0 -2006-01-26,93.48994572982144,93.79851630759214,93.12994672242229,93.57076263427734,71294000,0.0,0 -2006-01-27,93.79118190985223,94.52587703141981,93.63689100167757,94.43770599365234,65771200,0.0,0 -2006-01-30,94.36426544189453,94.63609911354533,94.29814555590819,94.36426544189453,33709600,0.0,0 -2006-01-31,94.27610818820769,94.43773084376829,93.66630412629833,93.67365264892578,72937000,0.0,0 -2006-02-01,93.90874621141339,94.35690515505448,93.83527780779745,94.32752227783203,63561000,0.0,0 -2006-02-02,94.11445617455519,94.14383904883844,93.15935020724883,93.23281860351562,83626900,0.0,0 -2006-02-03,92.9977407592934,94.3275375778597,92.67447300461308,92.76998138427734,86040400,0.0,0 -2006-02-06,92.8948570855875,93.15934778950718,92.69648625500815,93.01240539550781,45511900,0.0,0 -2006-02-07,92.85075810702291,93.05647742880521,92.13076009925919,92.18953704833984,71208100,0.0,0 -2006-02-08,92.46138121891477,94.11445087079635,92.27770743595892,93.027099609375,59422200,0.0,0 -2006-02-09,93.2475084894755,93.74710142317001,92.84342951409036,92.87281799316406,62023300,0.0,0 -2006-02-10,92.88753136381649,93.40181585584746,92.16752746969257,93.04181671142578,64508700,0.0,0 -2006-02-13,93.0124062621651,93.1520001364454,92.53485328645607,92.87281799316406,52308700,0.0,0 -2006-02-14,92.90953489282685,94.06300589143537,92.72586113123137,93.85729217529297,90964400,0.0,0 -2006-02-15,93.80588818875177,94.27609829781242,93.48262049042252,94.18792724609375,85471300,0.0,0 -2006-02-16,94.29075606797099,94.92994835781516,94.17320217437248,94.8932113647461,61017900,0.0,0 -2006-02-17,94.81242403504163,94.89324096077686,94.46711637149652,94.63609313964844,40342600,0.0,0 -2006-02-21,94.85650079857055,95.06955748083837,94.25404533395216,94.40099334716797,46456300,0.0,0 -2006-02-22,94.60668962638813,95.25321368068788,94.51851859264383,94.97403717041016,42326700,0.0,0 -2006-02-23,94.97403599736528,95.24586958920574,94.2466838333847,94.83444213867188,43423200,0.0,0 -2006-02-24,94.85648589285148,95.12831949557788,94.59933812069137,95.07689666748047,36777400,0.0,0 -2006-02-27,95.06954107945462,95.53974549317107,94.98138125518201,95.11363220214844,35858600,0.0,0 -2006-02-28,94.92261616760652,95.44425468439255,94.13649814494238,94.2099609375,74394800,0.0,0 -2006-03-01,94.48180862821704,95.13568691764968,94.40833462288603,95.04751586914062,48641600,0.0,0 -2006-03-02,94.7021888428408,95.08423341337217,94.48913220787648,95.04015350341797,60642300,0.0,0 -2006-03-03,94.53323009807862,95.56181010505978,94.51853305511284,94.59934997558594,73402500,0.0,0 -2006-03-06,94.87852581825541,94.9079086899361,93.93076845610659,94.1658706665039,57478400,0.0,0 -2006-03-07,93.9380963764468,94.08503312374296,93.60013737344354,94.01891326904297,61780800,0.0,0 -2006-03-08,93.82057399132577,94.36425247045311,93.43853495693311,94.21731567382812,66692400,0.0,0 -2006-03-09,94.24667585490208,94.5405493773891,93.58544921875001,93.58544921875,56313600,0.0,0 -2006-03-10,93.82788154052369,94.65808472895759,93.62951639117296,94.47441101074219,60490800,0.0,0 -2006-03-13,94.65809975003187,94.89320752772225,94.43034609699173,94.6507568359375,45479100,0.0,0 -2006-03-14,94.5626397223362,95.67936853893315,94.48916570599334,95.64263153076172,69877300,0.0,0 -2006-03-15,95.6205915094448,96.1422301198135,95.40019188167302,96.06875610351562,53398900,0.0,0 -2006-03-16,96.2524233169667,96.59038807391873,96.1275264662949,96.26712036132812,65526400,0.0,0 -2006-03-17,96.39175123677757,96.55402782176648,96.17047521646391,96.34749603271484,47286800,0.519,0 -2006-03-20,96.36225276775961,96.5540290728959,96.0450829644413,96.1926040649414,45538500,0.0,0 -2006-03-21,96.16310114401671,96.62043122554184,95.48449502078202,95.58776092529297,87102700,0.0,0 -2006-03-22,95.52874457242477,96.26636134815078,95.48448936670343,96.17047882080078,51605700,0.0,0 -2006-03-23,96.08195148433704,96.17784526116706,95.63938819810078,95.9713134765625,46704200,0.0,0 -2006-03-24,95.88281312317106,96.31063222331748,95.69840892078757,96.04508972167969,43209200,0.0,0 -2006-03-27,95.91230223017553,96.09670641215389,95.69839833134138,95.9049301147461,32523000,0.0,0 -2006-03-28,95.83854384060432,96.28111841535939,95.18944872080625,95.3148422241211,82079900,0.0,0 -2006-03-29,95.45497375729408,96.25897320775822,95.36645210544903,95.91229248046875,61505700,0.0,0 -2006-03-30,95.9713122763663,96.61303522370962,95.55824871232288,95.7426528930664,70571700,0.0,0 -2006-03-31,95.90491947138466,96.06719603392749,95.42546189836744,95.7647705078125,62925600,0.0,0 -2006-04-03,95.94183834618612,96.53192287905321,95.51401918125877,95.6910400390625,61624700,0.0,0 -2006-04-04,95.69105258650067,96.42866960444519,95.4181378915068,96.30327606201172,54809300,0.0,0 -2006-04-05,96.34011256171985,96.8343143740673,96.170463881096,96.6351547241211,50607200,0.0,0 -2006-04-06,96.51715426753606,96.78269674231609,96.03032452124965,96.53189849853516,57906200,0.0,0 -2006-04-07,96.67206117955595,96.92284820374076,95.41074268694783,95.5508804321289,80180900,0.0,0 -2006-04-10,95.69842529296875,95.94921234988178,95.34436106011849,95.69842529296875,41496500,0.0,0 -2006-04-11,95.77955289990092,95.93444613621043,94.59936143260387,94.88703155517578,72799400,0.0,0 -2006-04-12,94.98291809861095,95.24846059572948,94.8648967098607,95.06405639648438,43033700,0.0,0 -2006-04-13,94.85011513499981,95.33694478834313,94.6435833890607,94.93863677978516,51051800,0.0,0 -2006-04-17,95.02715739989715,95.3812102517472,94.4296896951698,94.90176391601562,64167700,0.0,0 -2006-04-18,95.10094714584922,96.5835644059311,95.10094714584922,96.40653228759766,92531800,0.0,0 -2006-04-19,96.44339838292954,96.67944116576001,96.06721785982526,96.5909194946289,87269000,0.0,0 -2006-04-20,96.62779244091278,97.26214328424186,96.33275024849199,96.72368621826172,86005500,0.0,0 -2006-04-21,97.1367378706463,97.21049278213238,96.3474826573012,96.73841857910156,72342600,0.0,0 -2006-04-24,96.5466611387459,96.67943801354373,96.17048062790694,96.56141662597656,52546400,0.0,0 -2006-04-25,96.6572954463379,96.71630613785722,95.83116827534465,96.16309356689453,84359800,0.0,0 -2006-04-26,96.25896971691903,96.73104390747086,96.11144864270966,96.1852035522461,67262400,0.0,0 -2006-04-27,95.8164449280355,97.0925304567885,95.58778545616137,96.64995574951172,124478600,0.0,0 -2006-04-28,96.4728944085573,97.18101147479032,96.41389497024856,96.97447967529297,55854400,0.0,0 -2006-05-01,96.97445874472773,97.21787358198459,96.12620412667155,96.1852035522461,64990300,0.0,0 -2006-05-02,96.6351704509444,96.96710700658788,96.43602202372496,96.90809631347656,49063500,0.0,0 -2006-05-03,96.73846062451643,96.86386541330737,96.22213099915437,96.54668426513672,60821300,0.0,0 -2006-05-04,96.68680926562558,97.08511737618187,96.60567096929056,96.89334106445312,42921400,0.0,0 -2006-05-05,97.40230448062802,97.95551710215169,97.2547833659163,97.74898529052734,62588200,0.0,0 -2006-05-08,97.74159657332685,97.9333841415886,97.6309585571289,97.6309585571289,30016700,0.0,0 -2006-05-09,97.67521753512115,97.93338792307034,97.59407923506335,97.82273864746094,29864000,0.0,0 -2006-05-10,97.66785987402149,97.91864692763052,97.28429592105755,97.77112579345703,64378200,0.0,0 -2006-05-11,97.74159992307904,97.77111089850253,96.27374966723224,96.5909194946289,80626900,0.0,0 -2006-05-12,96.15570928078654,96.42125173144468,95.29269912993183,95.32958221435547,91726500,0.0,0 -2006-05-15,94.99766467245023,95.69840965096562,94.86489904818797,95.52137756347656,84029300,0.0,0 -2006-05-16,95.7131202675769,95.89015229288945,95.15990785050253,95.38119506835938,62137600,0.0,0 -2006-05-17,94.90914312930741,95.22632417531385,93.50767021929174,93.56668090820312,144789500,0.0,0 -2006-05-18,93.93547939486652,94.23052718082899,93.02083632319447,93.09459686279297,87906300,0.0,0 -2006-05-19,93.5814270653817,94.0387457899337,92.79217746946908,93.7510757446289,124309400,0.0,0 -2006-05-22,93.14622711608376,93.80270546643801,92.57088704521763,93.03558349609375,110852800,0.0,0 -2006-05-23,93.81009532404109,94.14202059931104,92.32748413085938,92.32748413085938,92006500,0.0,0 -2006-05-24,92.70365580144221,93.59617122453768,92.02504987062768,93.0650863647461,168405000,0.0,0 -2006-05-25,93.61831640168128,94.21578979492188,93.25688577050948,94.21578979492188,78977900,0.0,0 -2006-05-26,94.42231037166346,94.69523620605467,94.05350764666801,94.69523620605469,62989700,0.0,0 -2006-05-30,94.39281115313155,94.414938753991,92.97658842243821,93.01346588134766,72419900,0.0,0 -2006-05-31,93.39704169763912,94.05352020263672,93.0872383631746,94.05352020263672,86926200,0.0,0 -2006-06-01,93.95761063670146,95.10829648381004,93.87647235172686,94.9533920288086,73721700,0.0,0 -2006-06-02,95.33695390982221,95.46971950699871,94.6509758141361,95.15254974365234,91702600,0.0,0 -2006-06-05,95.04192574644381,95.04929786232722,93.50767587971818,93.7658462524414,86105100,0.0,0 -2006-06-06,93.83221055742774,93.95760403355112,92.76266869802767,93.53716278076172,130498600,0.0,0 -2006-06-07,93.61095623491134,94.15679112294498,92.78482334492723,92.83645629882812,108599400,0.0,0 -2006-06-08,92.62992417572667,93.30853031833414,91.3686000538465,92.75531768798828,204957200,0.0,0 -2006-06-09,93.20524528621307,93.64781417416565,92.41599565396754,92.46025085449219,94972200,0.0,0 -2006-06-12,92.85120287756236,92.88808596943211,91.33171403569969,91.45710754394531,95815900,0.0,0 -2006-06-13,91.27271112687642,92.08408856910809,90.39495086669922,90.39495086669922,185688800,0.0,0 -2006-06-14,90.6088276526623,91.19154548833829,90.24001932331561,91.09565734863281,163566400,0.0,0 -2006-06-15,91.42760359517396,93.20526285219083,91.36122078187614,93.02823638916016,134057000,0.0,0 -2006-06-16,92.82451040936716,93.02454477780579,92.20958094138453,92.35034942626953,94253500,0.555,0 -2006-06-19,92.9059874199107,92.96525894318897,91.53536594565117,91.624267578125,95804400,0.0,0 -2006-06-20,91.87615894016517,92.46885715248928,91.66130393049816,91.9354248046875,65494700,0.0,0 -2006-06-21,91.86877026624639,93.12825921053172,91.83913450077041,92.61705780029297,75008200,0.0,0 -2006-06-22,92.57256177159536,92.65405867872134,91.89836676552989,92.20953369140625,74566100,0.0,0 -2006-06-23,92.1132281238418,92.83187963519981,91.89096278854511,92.1947250366211,54107000,0.0,0 -2006-06-26,92.2688338265023,92.6540874277286,92.05397879127169,92.60222625732422,37899600,0.0,0 -2006-06-27,92.61701878259319,92.82446340108845,91.69832739719716,91.80205535888672,69780200,0.0,0 -2006-06-28,92.00951104270356,92.4392153816461,91.60943680787355,92.42440032958984,62368100,0.0,0 -2006-06-29,92.75778219444467,94.3506686011244,92.73555679265597,94.29139709472656,110634800,0.0,0 -2006-06-30,94.49145009183438,94.5803573637345,94.06174008964788,94.29882049560547,54227800,0.0,0 -2006-07-03,94.40997833069116,94.83968279494233,94.32107103509907,94.6841049194336,23914000,0.0,0 -2006-07-05,94.30621280187947,94.42475015595393,93.73573447479353,94.14321899414062,69653400,0.0,0 -2006-07-06,94.23957432439656,94.72114561825407,94.15067268103128,94.41738891601562,50100300,0.0,0 -2006-07-07,94.23214684248039,94.50626771318227,93.56535641621124,93.80243682861328,81626500,0.0,0 -2006-07-10,94.04695227208825,94.40998051236758,93.65428826592671,93.98027038574219,60964100,0.0,0 -2006-07-11,93.80243015709634,94.39513397216797,93.30604396212829,94.39513397216797,73640800,0.0,0 -2006-07-12,94.20249855114183,94.38771777532715,93.14304436270412,93.38753509521484,82561300,0.0,0 -2006-07-13,92.94302095613168,93.1134251597466,91.8687515258789,91.8687515258789,102405700,0.0,0 -2006-07-14,91.9650886392287,92.0614062968129,91.00195163049942,91.51315307617188,103242500,0.0,0 -2006-07-17,91.5131035388733,91.94281345678579,91.23898272938283,91.37974548339844,81159000,0.0,0 -2006-07-18,91.65388987408315,91.90579098478501,90.67593249344627,91.84651947021484,122771000,0.0,0 -2006-07-19,92.00210846892722,93.54313402542566,91.66130571839366,93.12083435058594,133565300,0.0,0 -2006-07-20,93.43941276913128,93.57277086021604,92.35773298697403,92.48368072509766,112259800,0.0,0 -2006-07-21,92.72073588028542,92.7503716316107,91.73536834537558,91.83168029785156,101560000,0.0,0 -2006-07-24,92.19473089273382,93.5875775453973,92.19473089273382,93.5060806274414,92884000,0.0,0 -2006-07-25,93.3356809851454,94.31363833657947,93.14305139476582,93.8394775390625,95480700,0.0,0 -2006-07-26,93.7876242786778,94.42477900224536,93.48386762345702,93.96543884277344,84525800,0.0,0 -2006-07-27,94.3729121222988,94.60258784057716,93.49867701862634,93.87652587890625,87257100,0.0,0 -2006-07-28,94.12103278428452,94.93599650987719,93.98767467264615,94.81745910644531,82137000,0.0,0 -2006-07-31,94.5803828103891,94.80264257127382,94.42479362959224,94.72114562988281,49593100,0.0,0 -2006-08-01,94.34328090096048,94.37291666127477,93.79503346625448,94.25437927246094,65225600,0.0,0 -2006-08-02,94.52106397849809,95.17303918335708,94.49883857877634,94.8915023803711,64770900,0.0,0 -2006-08-03,94.34327645434999,95.23974261738556,94.20251366504574,95.14342498779297,63693800,0.0,0 -2006-08-04,95.63240599064021,95.89170616170547,94.4470039028573,94.98043060302734,96294200,0.0,0 -2006-08-07,94.7581558227539,94.89151388970076,94.38771737595069,94.7581558227539,45377300,0.0,0 -2006-08-08,94.8989248668036,95.17305702289416,94.05432560441416,94.39513397216797,90901300,0.0,0 -2006-08-09,94.9655977311119,95.27677598434194,93.80242685074093,94.07655334472656,78910600,0.0,0 -2006-08-10,93.78022308522382,94.46182864908566,93.55795769801324,94.36551666259766,69322300,0.0,0 -2006-08-11,94.21733041514692,94.23955582162455,93.63944723695583,94.09879302978516,47482200,0.0,0 -2006-08-14,94.55815097940615,94.95082062675861,94.03212886807208,94.17289733886719,57839000,0.0,0 -2006-08-15,95.01748196241093,95.47682211729706,94.75817612458113,95.29901885986328,68143000,0.0,0 -2006-08-16,95.81021789998785,96.23251190630636,95.60276194201835,96.09174346923828,71737600,0.0,0 -2006-08-17,96.00285786458979,96.58814581096186,95.9361816374501,96.33625030517578,70992800,0.0,0 -2006-08-18,96.45478729606138,96.82522583007814,96.01025653328654,96.82522583007812,58288400,0.0,0 -2006-08-21,96.44737416606519,96.52146639703254,96.1658485591412,96.41033935546875,42133600,0.0,0 -2006-08-22,96.3066172493572,96.69928120368756,96.07693585475451,96.40292358398438,60839900,0.0,0 -2006-08-23,96.44738991142036,96.64002522142891,95.71392870758494,96.13622283935547,66592100,0.0,0 -2006-08-24,96.30662484040336,96.38812177913455,95.86949872999708,96.05471801757812,57983000,0.0,0 -2006-08-25,96.04727769057924,96.4992130368435,95.98060148495433,96.17322540283203,41756000,0.0,0 -2006-08-28,96.05473078606275,96.92156711547157,96.04732608333495,96.63261413574219,52681500,0.0,0 -2006-08-29,96.67706766319884,96.92896319220328,96.17326530030132,96.74374389648438,61817800,0.0,0 -2006-08-30,96.95860218390476,97.08454995994006,96.72152734221763,96.80302429199219,50052200,0.0,0 -2006-08-31,96.94378957007102,97.04751192954328,96.74374955362833,96.78820037841797,37510300,0.0,0 -2006-09-01,97.15859845841855,97.4845861107312,96.93633312230679,97.36604309082031,48794500,0.0,0 -2006-09-05,97.43272650257622,97.68463326472937,97.20305645007414,97.55126953125,52348300,0.0,0 -2006-09-06,97.13638712086997,97.17343323306706,96.5585039462313,96.69185638427734,53795600,0.0,0 -2006-09-07,96.35849492627615,96.73634956517992,95.83247840077972,96.24736785888672,86269400,0.0,0 -2006-09-08,96.37333404340121,96.65487107441214,96.18811469245023,96.5215072631836,45096300,0.0,0 -2006-09-11,96.21028274388036,96.82521197896727,95.92874588073845,96.61776733398438,68496600,0.0,0 -2006-09-12,96.72892151328408,97.67724338656032,96.58815304219193,97.56611633300781,69875600,0.0,0 -2006-09-13,97.52904548689175,98.12915403370607,97.44014386658905,97.95875549316406,62898400,0.0,0 -2006-09-14,97.76611975491143,97.97356438051928,97.61053063326342,97.96614837646484,57805400,0.0,0 -2006-09-15,98.45656946612158,98.51610167065634,97.98776045203967,98.19612884521484,76703100,0.579,0 -2006-09-18,98.0695728578069,98.51605851894584,97.96539438415476,98.33002471923828,64154100,0.0,0 -2006-09-19,98.31515278387747,98.32260140386781,97.53381979794021,98.08447265625,92089100,0.0,0 -2006-09-20,98.41192131089021,98.79887495582595,98.27053374709021,98.60539245605469,75204100,0.0,0 -2006-09-21,98.67979176330434,98.78397026080764,97.79426885722401,98.1291275024414,88932500,0.0,0 -2006-09-22,97.9803067426533,97.98774400899448,97.48173738727101,97.83148193359375,65966800,0.0,0 -2006-09-25,98.0249520446634,98.8583914051391,97.51894542812903,98.58305358886719,92299100,0.0,0 -2006-09-26,98.59793613971833,99.4164895853616,98.52351806116727,99.40160369873047,73962700,0.0,0 -2006-09-27,99.33467987890826,99.69186183992615,99.17096911456468,99.52071380615234,82432200,0.0,0 -2006-09-28,99.52066851209237,99.70670235466832,99.17836124572655,99.48345947265625,58597500,0.0,0 -2006-09-29,99.56531438785913,99.66949288506785,99.3271856201794,99.40160369873047,47966600,0.0,0 -2006-10-02,99.37184459895845,99.58765024151676,98.93280740148609,99.02954864501953,51687400,0.0,0 -2006-10-03,98.88816282801604,99.61741241429598,98.70956622634073,99.23790740966797,73108100,0.0,0 -2006-10-04,99.14115208477246,100.45827486788514,99.02953632120555,100.39874267578125,80890500,0.0,0 -2006-10-05,100.39873776338683,100.7633681642055,100.27223611933236,100.59220886230469,60505900,0.0,0 -2006-10-06,100.4210671949423,100.53269431463276,100.01179046528681,100.46571350097656,64983600,0.0,0 -2006-10-09,100.34666044241547,100.68151909218608,100.1903870167333,100.5252456665039,41176800,0.0,0 -2006-10-10,100.5327085352188,100.79314914212692,100.33922604222869,100.65921020507812,56403700,0.0,0 -2006-10-11,100.33924895614452,100.77828626731794,99.93742069862846,100.54016876220703,104071800,0.0,0 -2006-10-12,100.79315563504153,101.4926448525288,100.75594658748446,101.4107894897461,59158600,0.0,0 -2006-10-13,101.32145153160657,101.73072816242399,101.23214758649965,101.67119598388672,53944000,0.0,0 -2006-10-16,101.58937432180096,101.98376520002444,101.51495623531865,101.8274917602539,42273000,0.0,0 -2006-10-17,101.55212309814353,101.72327100043834,100.95681271736898,101.50747680664062,90500600,0.0,0 -2006-10-18,101.97629997063818,102.22186599050968,101.2768223028089,101.64144134521484,86848600,0.0,0 -2006-10-19,101.49264023428482,101.85727071638084,101.37357582936286,101.80517578125,64063200,0.0,0 -2006-10-20,101.8274917602539,101.90934711354213,101.44798677024805,101.8274917602539,48094500,0.0,0 -2006-10-23,101.61912922148463,102.54186121253584,101.49262756502365,102.29629516601562,66219900,0.0,0 -2006-10-24,102.1548708815095,102.63855417958324,102.1102245899459,102.60135650634766,53234900,0.0,0 -2006-10-25,102.49721829060663,102.99578766651754,102.32605896626579,102.95114135742188,78105400,0.0,0 -2006-10-26,103.18179505120249,103.43479830756961,102.6757771838656,103.27108764648438,66843700,0.0,0 -2006-10-27,103.144595447363,103.24877393624968,102.41534602515637,102.62370300292969,80238000,0.0,0 -2006-10-30,102.43765489114175,102.83948290521168,102.24417247118775,102.54927062988281,49717800,0.0,0 -2006-10-31,102.74276927616953,102.8841454493686,102.13257286241009,102.5344009399414,71274100,0.0,0 -2006-11-01,102.85440906614569,102.92137853561543,101.73820582322378,101.8423843383789,83005600,0.0,0 -2006-11-02,101.5819400240975,101.9540077997614,101.47032423324131,101.7828598022461,60693100,0.0,0 -2006-11-03,102.14750577448058,102.23679842068384,100.91967511614023,101.60427856445312,71346400,0.0,0 -2006-11-06,101.91680077413386,102.89905370755325,101.90935215235386,102.75022888183594,63303300,0.0,0 -2006-11-07,102.8395093069232,103.41993400659184,102.69068449886035,103.14460754394531,63318900,0.0,0 -2006-11-08,102.69068531744453,103.47202975925916,101.84237141465854,103.36785125732422,87517800,0.0,0 -2006-11-09,103.44223382070734,103.53897503369302,102.61624326452853,102.82460021972656,95916300,0.0,0 -2006-11-10,102.79488274665565,102.94370758330746,102.4823471833047,102.86930084228516,48991500,0.0,0 -2006-11-13,102.82464578824644,103.46460282127771,102.74280177742178,103.12230682373047,59398200,0.0,0 -2006-11-14,103.41251852067512,103.98550607473297,102.77999875993268,103.89620208740234,96704000,0.0,0 -2006-11-15,103.85897376888042,104.51380514010782,103.82920199701313,104.19383239746094,76509600,0.0,0 -2006-11-16,104.50638489689482,104.68497013877099,103.79945848705447,104.46173858642578,76728800,0.0,0 -2006-11-17,104.12685518266775,104.49892286162465,103.97803038200588,104.49148559570312,56353800,0.0,0 -2006-11-20,104.40223105327688,104.72965254687979,104.13434177256617,104.55105590820312,69174200,0.0,0 -2006-11-21,104.54360424456453,104.67754318917302,104.3947680555235,104.65522003173828,51367900,0.0,0 -2006-11-22,104.73706949711504,105.04216777102212,104.5510356258946,104.86357116699219,45505300,0.0,0 -2006-11-24,104.35754437749078,104.80401876961916,104.32777260525303,104.43939971923828,30998000,0.0,0 -2006-11-27,104.38731961979597,104.43941455130825,102.97346681202673,103.00322723388672,84545100,0.0,0 -2006-11-28,102.8692823245664,103.55388553361358,102.77254108858409,103.44970703125,106652900,0.0,0 -2006-11-29,103.78456637342855,104.57334809001762,103.49435401818153,104.52870178222656,90034900,0.0,0 -2006-11-30,104.50637953675474,104.96030259425147,104.00036154997878,104.57334899902344,83994300,0.0,0 -2006-12-01,104.57334678308412,104.67008801849249,103.41249737660408,104.34266662597656,126080000,0.0,0 -2006-12-04,104.36496695962809,105.33234503837404,104.35008107560358,105.13886260986328,87813200,0.0,0 -2006-12-05,105.33983871116726,105.63749977803789,105.11659574966647,105.59284210205078,73374400,0.0,0 -2006-12-06,105.57051714938792,105.71935335760121,105.29519060248865,105.50354766845703,53253200,0.0,0 -2006-12-07,105.68953887203745,105.89045858826034,105.00493573837099,105.04214477539062,62857400,0.0,0 -2006-12-08,105.01986240713282,105.59283865224789,104.7594104014563,105.23565673828125,79625500,0.0,0 -2006-12-11,105.23561985993435,105.73418918200258,105.17608766936742,105.54071807861328,39779400,0.0,0 -2006-12-12,105.43653915264171,105.5704780649164,104.8412286040109,105.4588623046875,77451600,0.0,0 -2006-12-13,105.83838482913224,105.92024018510182,105.33981542626529,105.57049560546875,55520200,0.0,0 -2006-12-14,105.56306472447893,106.5899753697465,105.54817883487317,106.50067138671875,64755200,0.0,0 -2006-12-15,106.73485504359971,106.92192538764822,106.43554706026917,106.51036834716797,70857400,0.793,0 -2006-12-18,106.66004262075312,106.91446701461854,106.06890524501401,106.21855926513672,48954600,0.0,0 -2006-12-19,105.91926881938294,106.67502916815904,105.64988697126651,106.42061614990234,65023600,0.0,0 -2006-12-20,106.46549198657448,106.74984261317724,106.26345278252148,106.36073303222656,41469600,0.0,0 -2006-12-21,106.45801612538533,106.57773249221646,105.74715095776116,105.97162628173828,48698400,0.0,0 -2006-12-22,105.98661844280497,105.99409714929402,105.26078428782945,105.32064819335938,62069100,0.0,0 -2006-12-26,105.36549345113995,105.96412080553505,105.3430459244135,105.9416732788086,32696900,0.0,0 -2006-12-27,106.15868881544657,106.70494251106028,106.12876258041868,106.63758850097656,39727100,0.0,0 -2006-12-28,106.56276283041845,106.77975942460368,106.24848599511465,106.4131088256836,37288800,0.0,0 -2006-12-29,106.30087198073136,106.66004391696472,105.82945096463945,105.97162628173828,45461200,0.0,0 -2007-01-03,106.44303723416657,106.89948937954804,105.18592986726807,105.7845458984375,94807600,0.0,0 -2007-01-04,105.67978753344646,106.29338381200536,105.21585668137342,106.009033203125,69620600,0.0,0 -2007-01-05,105.75463147695052,105.80700524748706,105.04376629713062,105.16348266601562,76645300,0.0,0 -2007-01-08,105.37302653055258,105.8145099599799,104.94650051312932,105.64988708496094,71655000,0.0,0 -2007-01-09,105.73964645790917,105.9566544654077,105.05870762011074,105.56006622314453,75680100,0.0,0 -2007-01-10,105.1933918443427,105.93419447924104,104.98387398317557,105.91173553466797,72428000,0.0,0 -2007-01-11,105.94172005436823,106.71992796617049,105.8818561507108,106.37572479248047,54476800,0.0,0 -2007-01-12,106.36821758372533,107.18385314941406,106.33829134563938,107.18385314941406,55370600,0.0,0 -2007-01-16,107.05663850821189,107.33349900644883,106.80221412342908,106.97432708740234,44871300,0.0,0 -2007-01-17,106.89203482674964,107.34848707526258,106.8022332674892,107.01924133300781,50241400,0.0,0 -2007-01-18,107.13146281585743,107.1988054117197,106.48794025814409,106.66004180908203,68177300,0.0,0 -2007-01-19,106.66005377834857,107.079101063546,106.60020129833427,106.86958312988281,56973000,0.0,0 -2007-01-22,107.05669106551525,107.07913860785898,106.20363878495333,106.54037475585938,60253600,0.0,0 -2007-01-23,106.45052820117384,107.06412454703707,106.30087417614166,106.85460662841797,54064400,0.0,0 -2007-01-24,106.98180574360224,107.73756593951656,106.93691068097537,107.71511840820312,55834700,0.0,0 -2007-01-25,107.64777064299619,107.69266570346636,106.2634453831987,106.45051574707031,73583800,0.0,0 -2007-01-26,106.68250957467419,106.74236205291785,105.9417067053633,106.35326385498047,67255600,0.0,0 -2007-01-29,106.39816259283447,106.85461482581519,106.06143815621255,106.29340362548828,66114600,0.0,0 -2007-01-30,106.51789549282257,106.89951501689595,106.30088742429078,106.84712982177734,70407600,0.0,0 -2007-01-31,106.72740376092818,107.84982611359462,106.55529077931915,107.56547546386719,91868600,0.0,0 -2007-02-01,107.8647774783401,108.2464083642937,107.68519721941603,108.20899200439453,69312400,0.0,0 -2007-02-02,108.29876343740602,108.46338625824629,108.03687179906413,108.35862731933594,49607000,0.0,0 -2007-02-05,108.27633124604667,108.45592291727523,108.00694944813864,108.38858032226562,45705300,0.0,0 -2007-02-06,108.47839723038419,108.52329230480774,107.99949740674556,108.41853332519531,57081300,0.0,0 -2007-02-07,108.59063547210071,108.77022718858633,108.17908967586398,108.65798950195312,55669700,0.0,0 -2007-02-08,108.33619354868868,108.59060651579827,107.9545740980243,108.51578521728516,70641000,0.0,0 -2007-02-09,108.54569016674006,108.74772932705649,107.2960616897222,107.7076187133789,79084400,0.0,0 -2007-02-12,107.7076655471811,107.7824868635554,107.1464542939489,107.34100341796875,65657000,0.0,0 -2007-02-13,107.58041371706534,108.42596388494356,107.57292359607244,108.24638366699219,64081800,0.0,0 -2007-02-14,108.35116158371721,109.17426436856299,108.3361927569762,108.95726776123047,66039400,0.0,0 -2007-02-15,109.00213079231634,109.2116486336443,108.82253917780693,109.09941101074219,38715200,0.0,0 -2007-02-16,108.83008434033698,109.06952852958595,108.67294017093,109.04708099365234,39841800,0.0,0 -2007-02-20,108.91985790804281,109.39875763153094,108.50082207722447,109.2790298461914,56911800,0.0,0 -2007-02-21,108.95724752618149,109.3014619700826,108.76269848615658,109.2341079711914,63971600,0.0,0 -2007-02-22,109.28655976016206,109.56342037392837,108.62806811890793,109.15186309814453,79067400,0.0,0 -2007-02-23,109.05454933499398,109.09195427549753,108.52326444898348,108.72530364990234,71966200,0.0,0 -2007-02-26,109.12191275028775,109.21170289321982,108.31376721028403,108.62804412841797,69192800,0.0,0 -2007-02-27,107.6627143103242,107.9021583828344,104.01109800714745,104.38523864746094,274466500,0.0,0 -2007-02-28,105.05126281852972,106.24102792928137,104.60977937509944,105.45532989501953,177536300,0.0,0 -2007-03-01,104.26554893972545,105.6947694474094,103.30027075943156,105.14103698730469,212828600,0.0,0 -2007-03-02,104.79684587806841,105.25329813480214,103.75673485605178,103.76421356201172,162574000,0.0,0 -2007-03-05,103.21045958251867,104.4451308815409,102.76149754294912,102.7764663696289,143750400,0.0,0 -2007-03-06,103.8464566772397,104.84915067402893,103.05328048820152,104.53487396240234,143333300,0.0,0 -2007-03-07,104.45262331528554,105.10363605592849,104.31044798781328,104.43017578125,115144900,0.0,0 -2007-03-08,105.16345258139346,105.62739476788008,104.81177086244644,105.31311798095703,117891600,0.0,0 -2007-03-09,105.73963629986743,105.82194770551666,104.81925343151134,105.34304809570312,107765100,0.0,0 -2007-03-12,105.07365728992467,105.76207470604523,104.87910826510789,105.50018310546875,80366900,0.0,0 -2007-03-13,104.89410625040114,105.3356010595372,103.2927841282581,103.4499282836914,190605200,0.0,0 -2007-03-14,103.58462102254055,104.28052887883905,102.32751335910937,104.22066497802734,231853800,0.0,0 -2007-03-15,103.98863711773132,104.75188712288188,103.86143068651701,104.36277770996094,132435900,0.0,0 -2007-03-16,104.65654547739408,104.8969507725425,103.76255691368844,104.07057189941406,121531600,0.551,0 -2007-03-19,104.61900367320366,105.42284615918983,104.53636576775796,105.32518005371094,96161200,0.0,0 -2007-03-20,105.23502158316413,105.96373444768494,105.14487531972867,105.90363311767578,82147400,0.0,0 -2007-03-21,106.00133351308203,107.917011009924,105.79098452156087,107.64656066894531,152368700,0.0,0 -2007-03-22,107.78928096358938,107.93952857920036,107.27091694604692,107.56390380859375,118942200,0.0,0 -2007-03-23,107.6390112788053,108.03717253696084,107.54134519026135,107.72164916992188,74416800,0.0,0 -2007-03-26,107.80430322901344,107.91698606872845,106.74503868306182,107.57892608642578,113787500,0.0,0 -2007-03-27,107.51879939589539,107.54885578816996,106.97039060001144,107.32347869873047,99864600,0.0,0 -2007-03-28,106.782599681172,107.0305133829511,106.12149647642774,106.54220581054688,152907900,0.0,0 -2007-03-29,107.08309056004181,107.1356835233664,106.06891068989904,106.6548843383789,139432700,0.0,0 -2007-03-30,106.85771792171306,107.30846068018745,105.59561297904149,106.67741394042969,128194100,0.0,0 -2007-04-02,106.79764556884766,107.02302274080776,106.28678988152748,106.79764556884766,79416400,0.0,0 -2007-04-03,107.40616657956397,108.16492462194661,107.36109343332583,107.94706726074219,82417800,0.0,0 -2007-04-04,107.94706567460635,108.14238645982174,107.54890427113953,108.06726837158203,63995200,0.0,0 -2007-04-05,107.93203458254294,108.51050001598877,107.88696143817363,108.3602523803711,46822800,0.0,0 -2007-04-09,108.6682311278457,108.78092542611309,108.29260639326876,108.5104751586914,50967400,0.0,0 -2007-04-10,108.42784227909424,108.81849523082667,108.38276914296313,108.63819122314453,56620000,0.0,0 -2007-04-11,108.79591743954514,108.82596236452915,107.83430789275589,108.19491577148438,106365700,0.0,0 -2007-04-12,107.98457985519889,108.8710485379381,107.6840732535591,108.67572784423828,115534400,0.0,0 -2007-04-13,108.85601976957867,109.17155456542969,108.45035018844186,109.17155456542969,84287000,0.0,0 -2007-04-16,109.55468400576112,110.3284698480113,109.54717563968791,110.20826721191406,83064600,0.0,0 -2007-04-17,110.41112022379365,110.73415194881717,110.17071492439004,110.50126647949219,108424100,0.0,0 -2007-04-18,110.13317698657265,110.95954452642349,110.1106404195049,110.63651275634766,88345300,0.0,0 -2007-04-19,110.09557084913956,110.73412578136745,109.95283166924365,110.60641479492188,102947700,0.0,0 -2007-04-20,111.35015493616525,111.65065002441406,110.46367493847141,111.65065002441406,124114100,0.0,0 -2007-04-23,111.46284300445558,111.73329318194214,111.16234790198311,111.2299575805664,77270800,0.0,0 -2007-04-24,111.35769282228935,111.48540384180905,110.67406459581991,111.27505493164062,114471000,0.0,0 -2007-04-25,111.73330830950837,112.43197613892184,111.19992771093237,112.29674530029297,108418800,0.0,0 -2007-04-26,112.30429304368595,112.53717855699026,112.01130619418088,112.42448425292969,88741600,0.0,0 -2007-04-27,112.00374568270746,112.49206456329607,111.81593337397807,112.33429718017578,108191100,0.0,0 -2007-04-30,112.41696229424215,112.49209182119996,111.34268113031519,111.40277099609375,100874100,0.0,0 -2007-05-01,111.50045056251926,112.28926483827306,110.93701343171766,111.68826293945312,134342700,0.0,0 -2007-05-02,111.86105863422678,112.64987299120018,111.74837578172728,112.34185791015625,87129800,0.0,0 -2007-05-03,112.66491513089589,112.98794699013091,112.48461108143147,112.95039367675781,86569700,0.0,0 -2007-05-04,113.25086714095765,113.52882580005819,112.85270580537544,113.37857818603516,96409000,0.0,0 -2007-05-07,113.34850340725858,113.58889723377537,113.29591045145965,113.40108489990234,63461400,0.0,0 -2007-05-08,113.12313584058282,113.37855788500312,112.78507590377286,113.25084686279297,80584000,0.0,0 -2007-05-09,113.16819267921821,114.805922093592,112.9653521610698,113.55884552001953,102070100,0.0,0 -2007-05-10,113.23584250037517,113.4537112912421,112.13902456668426,112.37191009521484,153617800,0.0,0 -2007-05-11,112.49958599939859,113.38605469727982,112.477049436785,113.3334732055664,113408900,0.0,0 -2007-05-14,113.33348496669412,113.66403653686957,112.52964260620776,113.0855712890625,108027500,0.0,0 -2007-05-15,113.21325518961757,113.93445948478501,112.8301222140572,113.1156005859375,180673300,0.0,0 -2007-05-16,113.288410122604,113.91194849088085,112.97288675488969,113.88941192626953,114166500,0.0,0 -2007-05-17,113.72412567417653,114.15985165514198,113.52128514819239,113.66402435302734,101132800,0.0,0 -2007-05-18,114.19745320523985,114.65571594238283,114.04720557045653,114.65571594238281,99182000,0.0,0 -2007-05-21,114.625614556556,115.1139219949386,114.56551323960592,114.5955581665039,174664600,0.0,0 -2007-05-22,114.71578868718372,115.06136847786676,114.47539482409904,114.50543975830078,82148800,0.0,0 -2007-05-23,114.90364869340334,115.31683835473342,114.46041408541365,114.52051544189453,133786600,0.0,0 -2007-05-24,114.58808708876725,115.09894271750389,113.24335550677543,113.48374938964844,187593000,0.0,0 -2007-05-25,113.81427678028591,114.20492965284565,113.57387148543211,113.95701599121094,83309200,0.0,0 -2007-05-29,114.14480117812886,114.56549888089856,113.77668495662905,114.37017822265625,82020000,0.0,0 -2007-05-30,113.78422717907422,115.34681567885688,113.6940694656274,115.30174255371094,129013600,0.0,0 -2007-05-31,115.4445253322766,115.60980116229692,115.03133575722579,115.18159484863281,114866700,0.0,0 -2007-06-01,115.60228534042265,115.9929268560514,115.32431520976705,115.75253295898438,107771700,0.0,0 -2007-06-04,115.34683067460901,115.98539726560713,115.30175754360329,115.76753997802734,78008800,0.0,0 -2007-06-05,115.4970774714148,115.61726865362232,114.83597438507506,115.30926513671875,126917900,0.0,0 -2007-06-06,114.83597971927486,114.9035894117487,114.00209245596365,114.0697021484375,164096800,0.0,0 -2007-06-07,113.85932761019927,114.56550369659756,111.98120459877964,112.01126098632812,232414600,0.0,0 -2007-06-08,112.37193185393083,113.58144433324979,112.00381537303872,113.46875,175886000,0.0,0 -2007-06-11,113.386054309818,114.15233182552652,113.2132701759859,113.66402435302734,102015600,0.0,0 -2007-06-12,113.19076196054206,113.84434536409387,112.34936618004707,112.42448425292969,233898000,0.0,0 -2007-06-13,113.0630708923403,114.24253833021164,112.47709708981816,114.10730743408203,193208200,0.0,0 -2007-06-14,114.23497387671006,115.03129635046699,114.2124373133513,114.83597564697266,146396500,0.0,0 -2007-06-15,115.54221854034229,115.93455527489928,115.38377109535541,115.48941040039062,154030800,0.656,0 -2007-06-18,115.72329493367576,115.73083566405437,115.18006301971347,115.35359191894531,88537500,0.0,0 -2007-06-19,115.0970574469009,115.7232833827832,114.95370299605787,115.64028930664062,110851700,0.0,0 -2007-06-20,115.8741383619005,115.8741383619005,113.89738570467335,114.03318786621094,177119700,0.0,0 -2007-06-21,113.98789745668084,114.76501814646141,113.36167186454114,114.66693115234375,205262000,0.0,0 -2007-06-22,114.31991202957664,114.50853384320861,113.05991969602258,113.58805847167969,204964700,0.0,0 -2007-06-25,113.35422642137844,114.1162547881668,112.43375058571806,113.04488372802734,232014400,0.0,0 -2007-06-26,113.33153736484242,113.52015918146468,111.87537095398635,111.8829116821289,198445700,0.0,0 -2007-06-27,111.7622362275699,113.60318755588472,111.70941657693136,113.47491455078125,213638000,0.0,0 -2007-06-28,113.4598388671875,114.23696010497102,112.9241476533671,113.4598388671875,157705000,0.0,0 -2007-06-29,113.85209213710363,114.41795742906251,112.53173978919956,113.49748229980469,199701800,0.0,0 -2007-07-02,113.82947093119115,114.62168472933499,113.75402912485752,114.52359771728516,103357000,0.0,0 -2007-07-03,114.81786265261344,115.05930409543345,114.67451974757091,114.93858337402344,54048400,0.0,0 -2007-07-05,114.98384393890325,115.10456465314509,114.40289708766613,114.81785583496094,89279000,0.0,0 -2007-07-06,114.96879274277619,115.56483271830602,114.62926420554007,115.42147827148438,81109000,0.0,0 -2007-07-09,115.55723026806145,115.7081253637022,115.14980084601778,115.511962890625,72348100,0.0,0 -2007-07-10,114.90086959765314,115.14231106755503,113.75405715330798,113.86722564697266,180362600,0.0,0 -2007-07-11,113.73896919047905,114.7198050581501,113.56544032169957,114.6745376586914,175607600,0.0,0 -2007-07-12,114.96123053004152,116.75691405543115,114.93859683119736,116.48529815673828,133882500,0.0,0 -2007-07-13,116.62108856645482,117.29258169400944,116.48527488795666,116.83234405517578,111794300,0.0,0 -2007-07-16,116.93800437543008,117.34542249929927,116.6286617834279,116.8172836303711,98378700,0.0,0 -2007-07-17,116.89272969892559,117.30770007975593,116.70410784514492,116.75692749023438,126201300,0.0,0 -2007-07-18,116.36460367028927,116.79466707046632,115.66293582271484,116.54568481445312,237887400,0.0,0 -2007-07-19,117.09642757200467,117.34540976445672,116.75691058686557,116.99835205078125,145212700,0.0,0 -2007-07-20,116.8625030574686,116.9379563702965,115.30826151871095,115.81376647949219,245502500,0.0,0 -2007-07-23,116.32680894287532,116.73423840076057,115.66286816113751,116.16837310791016,121183900,0.0,0 -2007-07-24,115.52709156198483,116.40229959201504,113.74650107548592,114.1539306640625,256732400,0.0,0 -2007-07-25,114.69718288179408,114.97633954821126,113.36173690077601,114.3878402709961,265214500,0.0,0 -2007-07-26,113.31647377700355,113.77671158939606,110.44941911845503,111.67923736572266,467592500,0.0,0 -2007-07-27,111.82253422268376,112.32048694162089,109.43835230754341,109.4836196899414,422987600,0.0,0 -2007-07-30,110.10228889653158,111.52072822445093,109.61941764847201,111.19630432128906,283017500,0.0,0 -2007-07-31,111.91310580264006,112.7656801601307,109.43083606735887,109.94389343261719,316976700,0.0,0 -2007-08-01,109.53642154648095,110.91713419360782,108.60840572261347,110.47953033447266,467670000,0.0,0 -2007-08-02,110.72853433646782,111.48302151608753,109.59680356703825,111.36231231689453,294758400,0.0,0 -2007-08-03,111.12087439017944,111.34722285370032,108.04256521895435,108.4952621459961,359398200,0.0,0 -2007-08-06,108.80461643344478,110.78136943608972,107.53707180813488,110.31359100341797,324980000,0.0,0 -2007-08-07,110.10984212399289,112.41857065928147,109.57415125196978,111.49055480957031,232568700,0.0,0 -2007-08-08,111.97351266788787,113.61829018607492,111.16620537244489,113.04488372802734,274930600,0.0,0 -2007-08-09,111.23408037867416,112.38090453806126,109.6194776794666,109.69493103027344,357622100,0.0,0 -2007-08-10,108.94039757866263,110.53236590302429,107.98219568827317,109.18183898925781,411018400,0.0,0 -2007-08-13,110.53237494238424,110.82662449026084,109.4157371084629,109.57417297363281,181917200,0.0,0 -2007-08-14,109.92877266347023,110.20038849108144,107.68040423703076,107.89920043945312,264134500,0.0,0 -2007-08-15,107.68045543041362,108.99326780676432,106.09602709732019,106.41291046142578,323834000,0.0,0 -2007-08-16,105.46976370154785,107.84640535846793,103.36474941762111,107.21263885498047,546743700,0.0,0 -2007-08-17,109.7778787637545,110.01176793491851,106.67693616085326,109.18183898925781,388218100,0.0,0 -2007-08-20,109.52892093064212,109.75526942516157,108.11048111004536,109.12904357910156,187320400,0.0,0 -2007-08-21,109.09889912449606,110.13254333460829,108.75182980254277,109.34786987304688,157066400,0.0,0 -2007-08-22,110.16265181196299,110.75870303815921,109.64960613567355,110.64552307128906,173156700,0.0,0 -2007-08-23,111.16615896743902,111.40004819463245,109.8608991273372,110.5474853515625,203915300,0.0,0 -2007-08-24,110.5172875694141,111.91309356689453,110.36639242409336,111.91309356689453,128901900,0.0,0 -2007-08-27,111.55093256682066,111.91308318450534,110.70589910880898,110.87188720703125,113024300,0.0,0 -2007-08-28,110.27582565998829,110.3437267288074,108.23871300750658,108.43487548828125,219790700,0.0,0 -2007-08-29,108.92530998490524,110.71345242171242,108.61597899209312,110.56254577636719,207654200,0.0,0 -2007-08-30,109.74017935016833,111.05299144295958,109.6345515849481,110.26831817626953,191817300,0.0,0 -2007-08-31,111.40003423722214,112.04135298390543,110.78136069885979,111.35476684570312,185477500,0.0,0 -2007-09-04,111.24914025549653,113.15799203487657,111.21141359131653,112.47895812988281,120062000,0.0,0 -2007-09-05,111.81500353349215,111.9357242515255,110.9096211733647,111.50566101074219,166261800,0.0,0 -2007-09-06,111.62643905194533,112.12440363513005,111.00021295719495,111.76225280761719,127878400,0.0,0 -2007-09-07,110.51730837165698,110.82665096095589,109.59683284561287,110.20797729492188,235447600,0.0,0 -2007-09-10,110.54751115094057,110.69840634764589,108.89518169248825,109.9967269897461,192305900,0.0,0 -2007-09-11,110.33618808177266,111.43773270522942,110.25319404746632,111.279296875,162081900,0.0,0 -2007-09-12,111.12845119632291,111.99611866942044,110.89456192935663,111.56605529785156,149554600,0.0,0 -2007-09-13,112.07907689402121,112.75811077524622,111.81500176656641,112.35069274902344,154079000,0.0,0 -2007-09-14,111.63393893112483,112.48650169779856,111.46795081459116,112.34314727783203,121911000,0.0,0 -2007-09-17,111.89799885900838,112.15452175332183,111.38495307038146,111.73956298828125,109870800,0.0,0 -2007-09-18,112.2903515740039,115.05931871501505,111.76221274143121,115.02914428710938,263759500,0.0,0 -2007-09-19,115.74589469574609,116.48528899581959,115.21775590997932,115.70816802978516,193779900,0.0,0 -2007-09-20,115.693080506406,115.76098160079444,114.76506434540947,114.89332580566406,175186800,0.0,0 -2007-09-21,115.76438085829751,116.07517944111984,115.0290551703294,115.20340728759766,141457500,0.719,0 -2007-09-24,115.54454307034928,115.84777673801273,114.74099409360906,114.99115753173828,139450200,0.0,0 -2007-09-25,114.32404517593407,114.96840654289441,114.06630525602222,114.76372528076172,142289900,0.0,0 -2007-09-26,115.41564511119195,115.8098429999713,114.7637073427864,115.37016296386719,135547000,0.0,0 -2007-09-27,115.91599036486386,116.06002489916428,115.37018137550476,116.05243682861328,102713300,0.0,0 -2007-09-28,115.8704679348237,116.12820776599409,115.2109422210708,115.66578674316406,133372100,0.0,0 -2007-10-01,115.6809623111744,117.31080079715552,115.60515102789155,116.96967315673828,148162300,0.0,0 -2007-10-02,117.20466076622695,117.23497833634285,116.5982052593188,116.81046295166016,112978800,0.0,0 -2007-10-03,116.59822630297761,117.05307090704329,115.99177068661628,116.57548522949219,119055900,0.0,0 -2007-10-04,116.82566952173356,116.93937490951865,116.43147156544381,116.7574462890625,76864400,0.0,0 -2007-10-05,117.52304849723957,118.33418520398483,117.21982652429706,118.14466857910156,134579700,0.0,0 -2007-10-08,117.79596096403621,117.87177224605026,117.32596340364638,117.5154800415039,71280400,0.0,0 -2007-10-09,117.95517028975848,118.6374256185207,117.52306676561143,118.62226104736328,94054300,0.0,0 -2007-10-10,118.28869002710235,118.59192356345208,117.81111600401361,118.4251480102539,101711100,0.0,0 -2007-10-11,118.96338389813776,119.41065197534446,117.1516052186187,117.85661315917969,233529100,0.0,0 -2007-10-12,117.84903831307496,118.52371712202638,117.70500380883057,118.50855255126953,124546700,0.0,0 -2007-10-15,118.46303695166793,118.5312601500398,116.69674089059892,117.50786590576172,161151900,0.0,0 -2007-10-16,117.05307090704329,117.1364586988827,116.34048642535714,116.57548522949219,166525700,0.0,0 -2007-10-17,117.48517868750255,117.56856649056849,115.58243535759117,116.93179321289062,216687300,0.0,0 -2007-10-18,116.32534587913844,116.88631946438919,116.04486487010364,116.50728607177734,148367500,0.0,0 -2007-10-19,116.05240992320266,118.62225516598757,113.45224710678468,113.45982360839844,297169900,0.0,0 -2007-10-22,112.84580021879383,114.28612220442128,112.69418920459815,114.11934661865234,261989800,0.0,0 -2007-10-23,114.81680917146731,115.18825452167385,113.89954320154864,115.04421997070312,180085100,0.0,0 -2007-10-24,114.6272167074508,115.02899094349132,112.83059161054139,114.8318862915039,326694200,0.0,0 -2007-10-25,114.9608238578626,115.4459861398521,113.6190539704864,115.1048583984375,237374500,0.0,0 -2007-10-26,116.02964724278323,116.45416259765626,115.15028739787428,116.45416259765625,176484000,0.0,0 -2007-10-29,116.68920534325915,117.07582677572704,116.40114785364844,116.84082794189453,106841000,0.0,0 -2007-10-30,116.32530092584234,116.55272318695955,115.88562097226286,116.02965545654297,132981600,0.0,0 -2007-10-31,116.7270745633565,117.70498681032724,115.86287922987219,117.23497772216797,220954400,0.0,0 -2007-11-01,116.20401757756865,116.29499343020268,114.1572401845573,114.49079132080078,333040800,0.0,0 -2007-11-02,114.86983041807635,115.22612264373058,113.11112192949949,114.61966705322266,331228200,0.0,0 -2007-11-05,113.43711464288313,114.58937940909611,112.9292112787347,113.7479248046875,226841000,0.0,0 -2007-11-06,114.36192441457985,115.30950763703686,113.63417541017452,115.27919006347656,177800500,0.0,0 -2007-11-07,114.04351752682979,114.5665852232074,111.8527059694166,112.1256103515625,306639700,0.0,0 -2007-11-08,112.18627979311151,112.49707830665673,109.97272671913854,111.55708312988281,374509900,0.0,0 -2007-11-09,110.4427339609118,111.84515034687095,109.83627831719842,110.02579498291016,277745100,0.0,0 -2007-11-12,110.07888473922989,111.14017362870979,108.93419647216797,108.93419647216797,243087800,0.0,0 -2007-11-13,110.20012831721898,112.4288457773436,110.08642296401969,112.2544937133789,191117400,0.0,0 -2007-11-14,113.11871604790196,113.25516250424722,111.26903141402107,111.94371032714844,230558800,0.0,0 -2007-11-15,111.1098138979034,111.80723369888497,109.55577523931825,110.32899475097656,263111100,0.0,0 -2007-11-16,110.91273735268148,111.03403080116162,109.59370869379453,110.51853942871094,308770600,0.0,0 -2007-11-19,110.13192460842059,110.19257132992584,108.54756804832647,108.97966003417969,267746000,0.0,0 -2007-11-20,109.17676141495862,110.32143788433885,107.72885134737305,109.64675903320312,414767500,0.0,0 -2007-11-21,108.46416265218872,109.09335927263207,107.39528604756164,107.40286254882812,259012400,0.0,0 -2007-11-23,108.45659074430735,109.4193269689127,108.17609824508285,109.26013946533203,77688400,0.0,0 -2007-11-26,109.48758716289593,109.8287264915692,106.62968353020555,106.84951782226562,214232000,0.0,0 -2007-11-27,107.44835617544996,108.57786792369656,106.84947712770992,108.07755279541016,293897900,0.0,0 -2007-11-28,109.305622303084,111.7920797665277,109.26771666055055,111.53433990478516,258596900,0.0,0 -2007-11-29,111.14773486871717,111.98161285820834,110.75354851657568,111.57225036621094,199409900,0.0,0 -2007-11-30,112.98223314256556,113.61142976501135,111.68594582404347,112.69417572021484,222908000,0.0,0 -2007-12-03,112.33784649554077,112.53493956874028,111.6555798873756,111.95122528076172,146430400,0.0,0 -2007-12-04,111.17799897059872,111.84508940473795,110.91267115630237,110.95057678222656,136533900,0.0,0 -2007-12-05,112.14079710303547,113.10354501413806,112.06499737623349,112.80789947509766,171130000,0.0,0 -2007-12-06,112.67139979575524,114.6272122712358,112.62591766772587,114.42253112792969,154457400,0.0,0 -2007-12-07,114.78642051648565,114.84706722057084,114.1269064062203,114.39981079101562,148980100,0.0,0 -2007-12-10,114.68029530061409,115.41562070602,114.36190876948623,115.28675079345703,123914300,0.0,0 -2007-12-11,115.33222816639471,115.90077799860066,112.06496364806608,112.1256103515625,250346400,0.0,0 -2007-12-12,114.51358734099759,115.05181994496402,111.58744856055478,113.23245239257812,322435600,0.0,0 -2007-12-13,112.43642893952823,113.24755408037024,111.66319786998092,112.99739074707031,237551300,0.0,0 -2007-12-14,112.1407702276388,113.02771819937551,111.51158522053575,111.56464385986328,159152900,0.0,0 -2007-12-17,111.14013465419535,111.33722778821624,109.81351822397136,109.97271728515625,177269400,0.0,0 -2007-12-18,110.75355997795003,111.04161748552782,109.13129754911567,110.58678436279297,245569300,0.0,0 -2007-12-19,110.63226651834835,111.35242763806427,109.87419974660928,110.58678436279297,198917200,0.0,0 -2007-12-20,111.31449726207613,111.32966183295339,110.05610392436648,111.2841796875,214813800,0.0,0 -2007-12-21,112.30920136529878,113.10939820374118,112.09581709219023,112.88839721679688,146084400,0.775,0 -2007-12-24,113.41422890748734,113.91719942332251,113.15510949370436,113.72667694091797,45601400,0.0,0 -2007-12-26,113.28466262790316,114.06961431986929,113.17035379065351,113.97055053710938,67093100,0.0,0 -2007-12-27,113.56665266787964,113.57426938143406,112.27110202083705,112.53782653808594,122981700,0.0,0 -2007-12-28,113.20082814589023,113.25418002037547,111.95100118037165,112.25584411621094,116398100,0.0,0 -2007-12-31,112.10342277760724,112.49208441895247,111.31084281318726,111.42516326904297,108126800,0.0,0 -2008-01-02,111.66904035383217,112.01960685026161,109.64950662129158,110.44969177246094,204935600,0.0,0 -2008-01-03,110.43443860382182,110.876452094837,109.79428594589683,110.39633178710938,125133300,0.0,0 -2008-01-04,109.23794400087846,109.31415762871917,107.38607145573198,107.69090270996094,232330900,0.0,0 -2008-01-07,108.07197171337678,108.39204809032738,106.76880443783288,107.59947967529297,234991000,0.0,0 -2008-01-08,108.27773148172592,108.90263913610023,105.50372478531094,105.86190795898438,326365700,0.0,0 -2008-01-09,105.99909694327462,107.29464763753332,104.93979229208671,106.97457122802734,301824900,0.0,0 -2008-01-10,106.4487092618636,108.8264376039407,106.21246325873537,107.67567443847656,335701200,0.0,0 -2008-01-11,107.28702806958044,108.14056513889004,105.93050881504038,106.8069076538086,267076600,0.0,0 -2008-01-14,107.5766132357397,108.1100738408237,106.99741746858932,107.66806030273438,170365500,0.0,0 -2008-01-15,106.53254027079059,107.82810238256272,105.09219084837264,105.29795837402344,239940100,0.0,0 -2008-01-16,104.68070363044501,106.02197811022555,103.85764487174802,104.39110565185547,378802600,0.0,0 -2008-01-17,105.02358765854012,105.07693952329653,101.30458591945184,101.68563079833984,397892600,0.0,0 -2008-01-18,102.68399320078827,102.89737743395878,99.90998654100305,100.64158630371094,348561500,0.0,0 -2008-01-22,96.9454843886638,100.92358996886344,96.02335603241605,99.62042236328125,435923700,0.0,0 -2008-01-23,96.85399971511406,102.26484249536671,96.66347724578922,102.01335144042969,511913000,0.0,0 -2008-01-24,102.48586886022855,103.23272549777556,101.59422487808436,102.87454223632812,259949300,0.0,0 -2008-01-25,104.03289608025047,104.22341856993351,101.05313317932061,101.38844299316406,269603900,0.0,0 -2008-01-28,101.5561017560111,103.27843247181806,100.6415961488813,103.06504821777344,217934600,0.0,0 -2008-01-29,103.72043675436495,103.98716123377062,102.79068617554468,103.57563781738281,168968300,0.0,0 -2008-01-30,103.32417470409635,105.579954834622,102.57732967980073,102.8135757446289,334939200,0.0,0 -2008-01-31,101.6627879947622,105.57992961508732,101.51037234049672,104.68828582763672,343680800,0.0,0 -2008-02-01,105.12270088866806,106.39538984684923,104.8026244706139,106.37252807617188,206843600,0.0,0 -2008-02-04,106.09054693475132,106.15913223931614,104.89406013290605,105.03124237060547,124694300,0.0,0 -2008-02-05,103.59849699113694,103.83474298616756,101.86854976024898,102.2191162109375,286882500,0.0,0 -2008-02-06,102.562069106375,103.07266798859806,100.90833527418597,101.39607238769531,250792900,0.0,0 -2008-02-07,100.44344505643208,102.7220862770076,100.39009318495336,102.06668853759766,297368100,0.0,0 -2008-02-08,101.42653408342096,102.28769932434587,100.6720725835937,101.41130065917969,221643500,0.0,0 -2008-02-11,101.43415070684435,102.29530421972413,100.62632580121682,101.92950439453125,188576300,0.0,0 -2008-02-12,102.81357363559542,103.88049507698892,102.10482382707778,102.87454223632812,256654400,0.0,0 -2008-02-13,103.65185563380929,104.45205245118649,102.98884106185955,103.92620849609375,181967800,0.0,0 -2008-02-14,104.36822275548191,104.40632958104311,102.72210557123044,103.01170349121094,215207200,0.0,0 -2008-02-15,102.50107829980912,103.04978388716412,102.05144810778884,102.98881530761719,154110300,0.0,0 -2008-02-19,104.19290189599587,104.3224557460637,102.58489220734792,103.27839660644531,145190000,0.0,0 -2008-02-20,102.11243915316146,104.06338761362319,101.9371500876857,103.58326721191406,220085700,0.0,0 -2008-02-21,104.1471999484808,104.413924414375,102.17339006087784,102.72208404541016,201051200,0.0,0 -2008-02-22,102.85927572823765,103.52991856786683,101.2512655585407,103.35462951660156,205491000,0.0,0 -2008-02-25,103.29366650602644,104.90167676254949,102.71448233143526,104.6578140258789,190107000,0.0,0 -2008-02-26,104.21579901695726,105.89239455477025,104.02527653246557,105.44276428222656,212420700,0.0,0 -2008-02-27,104.83306988753093,106.03717315386625,104.71876107020086,105.33605194091797,168395800,0.0,0 -2008-02-28,104.58923982427176,105.13794557574185,104.06339584339865,104.30725860595703,170831100,0.0,0 -2008-02-29,103.33941424054268,103.40037121069744,101.19031474259472,101.98289489746094,252715200,0.0,0 -2008-03-03,101.46463798385109,101.97523676688793,100.77876179853422,101.7389907836914,189483500,0.0,0 -2008-03-04,100.77113084866109,101.66277451791159,99.82614694034473,101.35032653808594,282513100,0.0,0 -2008-03-05,101.67802651528298,102.70685246546205,100.85496808085338,101.99048614501953,270681400,0.0,0 -2008-03-06,101.34272805099357,101.52563384288655,99.4908548759322,99.8795166015625,247911700,0.0,0 -2008-03-07,98.89639338678253,100.39771117425865,97.98950469369555,98.85066986083984,326434600,0.0,0 -2008-03-10,98.94973540170213,99.0183206918482,97.23503337664624,97.54749298095703,235683600,0.0,0 -2008-03-11,99.62041333183718,101.14459344813999,98.27151067290919,101.05314636230469,341440600,0.0,0 -2008-03-12,101.15983462856857,101.9447864280972,99.95573098740549,100.10814666748047,229161100,0.0,0 -2008-03-13,98.77448129018144,101.0836129646321,98.00477460822125,100.32913970947266,351504200,0.0,0 -2008-03-14,101.1826664073715,101.2131448829239,97.37983410385173,98.77445983886719,484687800,0.0,0 -2008-03-17,96.45772019597342,98.50773811120818,96.07667523891985,97.77613830566406,405311100,0.0,0 -2008-03-18,99.54416084905473,101.88378199676364,99.05642386721436,101.83805847167969,334416600,0.0,0 -2008-03-19,102.22672884779497,102.61539047297316,99.10215590813877,99.3155517578125,345971600,0.0,0 -2008-03-20,99.6004509511651,101.79081883910935,98.99541284672017,101.1551513671875,245320700,0.642,0 -2008-03-24,102.09716316910671,104.01182007854501,102.04355885243437,103.17703247070312,208977300,0.0,0 -2008-03-25,103.28427337967337,103.81272066180524,102.4494856054184,103.27661895751953,192947200,0.0,0 -2008-03-26,102.97792651789615,103.46041217883901,101.9440069701872,102.01293182373047,196934300,0.0,0 -2008-03-27,102.77877735035679,102.96258861492996,101.36959271370982,101.69125366210938,225153200,0.0,0 -2008-03-28,101.85210574473571,102.13547126277649,100.37398435124393,100.71862030029297,180896100,0.0,0 -2008-03-31,100.5500996681855,101.6529437264548,100.39692947923393,101.07089233398438,166692100,0.0,0 -2008-04-01,102.32690852366385,104.80064159629215,102.25031758466599,104.62449645996094,254547300,0.0,0 -2008-04-02,104.96150760396601,105.43633883897533,104.14202873204748,104.69345092773438,210910800,0.0,0 -2008-04-03,104.12667513482778,105.26014841161805,103.93520950156629,104.95379638671875,175884800,0.0,0 -2008-04-04,105.01509627076884,105.65842986058182,104.24923352273548,104.83895111083984,204446800,0.0,0 -2008-04-07,105.58951977758556,106.12563318439356,104.72410260213073,104.89259338378906,154245500,0.0,0 -2008-04-08,104.30287249595715,104.86194915303304,104.11906118893708,104.78536987304688,148937300,0.0,0 -2008-04-09,104.62450976083767,104.77002555175103,103.30722490833712,104.02713775634766,195610600,0.0,0 -2008-04-10,103.71313847538885,104.6704669707895,103.3148865491833,104.17266082763672,192967800,0.0,0 -2008-04-11,103.00088017106569,103.48336573224258,101.8673949451885,102.15077209472656,222973300,0.0,0 -2008-04-14,102.00526124912254,102.2733061991693,101.51510955797674,101.8061294555664,160522000,0.0,0 -2008-04-15,102.30393909279218,102.38818445577554,101.34661073440716,102.04354858398438,172389200,0.0,0 -2008-04-16,103.03915887162157,104.85426135299511,103.02385003218195,104.80831146240234,189268900,0.0,0 -2008-04-17,104.17264915944352,105.11465702128626,103.89693811620448,104.96148681640625,179665700,0.0,0 -2008-04-18,106.40896549738069,106.88379663221654,105.88817278415074,106.0566635131836,218530600,0.0,0 -2008-04-21,105.86517838125641,106.43957530117272,105.5741585550708,106.11026000976562,118587400,0.0,0 -2008-04-22,105.83460080445494,105.92650061704383,104.84663107456055,105.64313507080078,162166000,0.0,0 -2008-04-23,105.75798247733196,106.28642963529263,105.01509468804491,105.47461700439453,193309000,0.0,0 -2008-04-24,105.75034702845237,107.02168220377598,104.95384309537299,105.93415832519531,229381300,0.0,0 -2008-04-25,106.76125445321897,107.13653137882638,105.6201265227325,106.91443634033203,190788100,0.0,0 -2008-04-28,107.128904687155,107.41227021661076,106.7459732425325,106.93743896484375,105610200,0.0,0 -2008-04-29,106.75362809020936,107.01401866891759,106.15625596910682,106.5162124633789,125514100,0.0,0 -2008-04-30,106.67702900728318,107.67265302872343,105.88819122314455,105.88819122314453,208395900,0.0,0 -2008-05-01,105.9801106613809,108.07856750488281,105.89586527587343,108.07856750488281,187279500,0.0,0 -2008-05-02,109.01289523424202,109.03587018062943,107.64966054661464,108.37722778320312,181585500,0.0,0 -2008-05-05,108.02498188906452,108.45386331278779,107.53483002107473,107.85649108886719,118504500,0.0,0 -2008-05-06,107.23613921294246,108.90571492305584,106.98340302371449,108.79084014892578,179339800,0.0,0 -2008-05-07,108.66825548976516,108.78313021761902,106.55447869429442,106.85316467285156,199267300,0.0,0 -2008-05-08,107.02165537110055,107.46585712891985,106.4395922537539,106.57745361328125,178321200,0.0,0 -2008-05-09,106.1485921763095,106.75361866591228,106.03370574092263,106.37834167480469,152588200,0.0,0 -2008-05-12,106.64636025319203,107.64963832546917,106.24810845445546,107.57305908203125,147865900,0.0,0 -2008-05-13,107.83346055700402,107.90238538897746,107.01398193419863,107.58837890625,159132200,0.0,0 -2008-05-14,108.04021638375909,108.90563296526042,107.57303984363783,107.81045532226562,181910800,0.0,0 -2008-05-15,108.01729969322763,109.23503060169288,107.85647502635337,109.15843963623047,166927000,0.0,0 -2008-05-16,109.41117347639616,109.41882789832368,108.45384485914019,109.25800323486328,204236800,0.0,0 -2008-05-19,109.37286748810592,110.51400729726753,108.98228165679573,109.55667877197266,165664400,0.0,0 -2008-05-20,108.95933613321111,109.0129404683119,107.98668681671376,108.66830444335938,178552100,0.0,0 -2008-05-21,108.60698020242702,108.84439575343626,106.4549080321348,106.83018493652344,252724800,0.0,0 -2008-05-22,106.7842419653087,107.35098463036383,106.4549265787641,106.84551239013672,170820400,0.0,0 -2008-05-23,106.49322229482374,106.96039905981789,105.32145317192898,105.4133529663086,181376400,0.0,0 -2008-05-27,105.53589185329761,106.45492483841596,105.329105633651,106.19453430175781,168322900,0.0,0 -2008-05-28,106.58514172192476,107.22080935112905,105.68908350325579,106.68470764160156,181288100,0.0,0 -2008-05-29,106.55449018267515,107.93303381010024,106.51619470721592,107.22078704833984,173927200,0.0,0 -2008-05-30,107.5807227114596,107.78750889010348,107.1748164594666,107.48882293701172,117362000,0.0,0 -2008-06-02,107.09060017855761,107.11357512840712,105.68906980704057,106.37834167480469,181069900,0.0,0 -2008-06-03,106.68468707731117,106.92975708893854,105.09934552100147,105.75798797607422,271965700,0.0,0 -2008-06-04,105.45927931677151,106.57744387199627,105.27547976905066,105.70436096191406,246637700,0.0,0 -2008-06-05,106.1332727456196,107.90241401916954,105.93415261615084,107.81816864013672,237867100,0.0,0 -2008-06-06,106.87618405655108,107.06764980667526,104.32585886255983,104.37946319580078,384276300,0.0,0 -2008-06-09,104.8159676236324,105.30611927499417,103.70546906668717,104.63215637207031,228263900,0.0,0 -2008-06-10,103.90458009277354,104.99976971447484,103.6595101315424,104.11136627197266,260234900,0.0,0 -2008-06-11,104.13438218952507,104.35647729447055,102.57201528815266,102.57968139648438,283890100,0.0,0 -2008-06-12,103.08516233821062,104.05779991403233,102.25802891301437,102.97027587890625,252791800,0.0,0 -2008-06-13,103.52166694150812,104.55558633272148,102.94726987664251,104.27220916748047,244726900,0.0,0 -2008-06-16,103.81271494857333,104.86959776853189,103.74379009455996,104.33349609375,185832500,0.0,0 -2008-06-17,104.97681230862626,105.0150960970541,103.67483629021278,103.82801818847656,191707700,0.0,0 -2008-06-18,103.15409739980443,103.78976514180984,102.40355487327999,102.8171157836914,265893000,0.0,0 -2008-06-19,102.74050226027877,103.5753016938055,102.24269605506603,102.9472885131836,304204900,0.0,0 -2008-06-20,102.24607754773191,102.43850091487742,100.99917788689797,101.2762680053711,289275700,0.669,0 -2008-06-23,101.66883486724556,101.77659151212632,101.07617919269815,101.17623138427734,165096400,0.0,0 -2008-06-24,100.86830237515706,101.93817551877666,100.20636571290837,100.97605895996094,267300600,0.0,0 -2008-06-25,101.38403087832837,102.67711034794806,101.0145812790929,101.45330047607422,287853900,0.0,0 -2008-06-26,100.49889926687455,101.15313178192547,98.5823579695299,98.69780731201172,297775000,0.0,0 -2008-06-27,98.73628964434906,99.1827133216972,97.78187126735666,98.15901947021484,303423400,0.0,0 -2008-06-30,98.43609562910879,99.22118624280216,97.98197930871943,98.50537109375,258842600,0.0,0 -2008-07-01,97.38161153880633,98.88251727162924,96.9274952274704,98.81324768066406,388622000,0.0,0 -2008-07-02,99.12881330593923,99.41360786602553,96.94288674763244,97.11991882324219,288064600,0.0,0 -2008-07-03,97.8357508003042,97.8357508003042,96.20399830707301,97.2199935913086,239352500,0.0,0 -2008-07-07,97.58944985529664,98.01277780153684,95.38042716344626,96.22708892822266,372427300,0.0,0 -2008-07-08,96.20399577600965,98.05126148210019,95.59593716300549,97.93580627441406,375973700,0.0,0 -2008-07-09,98.13591742719628,98.32064221575776,95.74217026565908,96.050048828125,336729400,0.0,0 -2008-07-10,95.77296098668124,96.81974460058152,95.11872269606741,96.44259643554688,436475700,0.0,0 -2008-07-11,95.41891921472784,96.9044281393919,94.2797700708849,95.31885528564453,481124600,0.0,0 -2008-07-14,96.41179372633353,96.59651849195619,94.21047020565759,94.45677185058594,322720800,0.0,0 -2008-07-15,93.74866934251982,95.04944734623247,92.37860999888363,93.12521362304688,502502500,0.0,0 -2008-07-16,93.47927670529779,95.88072262870382,93.20988514473035,95.41120910644531,371642900,0.0,0 -2008-07-17,96.31943611769785,97.18149488010165,95.51125566092584,96.36561584472656,375490600,0.0,0 -2008-07-18,97.11221828777356,97.30464164454838,96.32713357594194,96.96598052978516,267030100,0.0,0 -2008-07-21,97.37393290197737,97.5971447367196,96.35793764828956,97.0198745727539,222863000,0.0,0 -2008-07-22,96.32711945502744,98.36680791229492,96.09620911182962,98.1205062866211,296904200,0.0,0 -2008-07-23,98.43612093277247,99.40593070868502,98.17442790913476,98.6516342163086,311698400,0.0,0 -2008-07-24,98.78246873063524,98.8363529172714,96.33484884577891,96.60424041748047,248634500,0.0,0 -2008-07-25,96.8966945693773,97.35850940114213,96.34251442234184,96.58112335205078,219131000,0.0,0 -2008-07-28,96.60423840489221,97.02756633094795,94.99557584345239,95.16490936279297,205201300,0.0,0 -2008-07-29,95.4266227740838,97.2738828645725,95.16492387547672,97.19691467285156,261505600,0.0,0 -2008-07-30,97.83577014231992,98.9826180239973,97.19692293933943,98.9287338256836,354710000,0.0,0 -2008-07-31,98.05893371372078,98.95947939386168,97.46626654725146,97.62020874023438,277402100,0.0,0 -2008-08-01,97.84342766852991,97.96657555962456,96.56573379869195,97.10452270507812,248690900,0.0,0 -2008-08-04,97.0121599368991,97.08912810489667,96.02695329302254,96.2039794921875,188239600,0.0,0 -2008-08-05,96.99677332893863,98.95179554463124,96.1885986686277,98.79785919189453,251577600,0.0,0 -2008-08-06,98.53614499107834,99.52135152986872,98.120509881471,99.23655700683594,209555400,0.0,0 -2008-08-07,98.49000334459197,98.85945889764021,97.39703971994852,97.75879669189453,246312500,0.0,0 -2008-08-08,97.42783878582561,100.00630586777139,97.27389650849474,99.57527923583984,260811700,0.0,0 -2008-08-11,99.65221194102396,101.22238141187638,99.46748128491603,100.60663604736328,249425800,0.0,0 -2008-08-12,100.27566955648314,100.59893942137494,99.0826422669073,99.55986022949219,213200800,0.0,0 -2008-08-13,99.12883258851038,99.79076954769754,98.26677952337072,98.95951080322266,256393200,0.0,0 -2008-08-14,98.39762373625686,100.27567793699747,98.32835413326033,99.70610046386719,239555300,0.0,0 -2008-08-15,100.00627122328778,100.44500215747114,99.52137230264243,100.19100189208984,181000800,0.0,0 -2008-08-18,100.39112302690717,100.42961005291825,98.25908037207115,98.82095336914062,172275100,0.0,0 -2008-08-19,98.07434613141443,98.28216666865211,97.38931937382968,97.74337768554688,194673700,0.0,0 -2008-08-20,98.05125086811125,98.48227733303223,97.24307037408926,98.19749450683594,225498200,0.0,0 -2008-08-21,97.55865598368383,98.8594399426009,97.44320077847478,98.36683654785156,180609800,0.0,0 -2008-08-22,99.03645989428763,99.79075622558594,98.36683031662622,99.79075622558594,167715300,0.0,0 -2008-08-25,99.13652357436638,99.79075599222097,97.55864957550907,97.76646423339844,171936900,0.0,0 -2008-08-26,97.76646556408159,98.42070973543156,97.42780441801183,98.05125427246094,159117200,0.0,0 -2008-08-27,98.17439076960525,99.15959733437748,97.98196742891398,99.00566101074219,171032800,0.0,0 -2008-08-28,99.50599683918233,100.32187025124072,99.37515032447422,100.2064208984375,167537100,0.0,0 -2008-08-29,99.85235147784508,100.16792868531013,98.9133243083006,99.12883758544922,189195800,0.0,0 -2008-09-02,100.0832600952322,100.60665786206552,98.15132747200481,98.5130844116211,252364900,0.0,0 -2008-09-03,98.42838287353516,98.90559486160149,97.69717654448769,98.42838287353516,251947000,0.0,0 -2008-09-04,97.72800437565536,97.92812637032277,95.41122482842245,95.46510314941406,340042500,0.0,0 -2008-09-05,94.8955224143565,96.1732107066793,93.90261698905897,95.76527404785156,289503400,0.0,0 -2008-09-08,98.55155235176152,98.7055004502137,95.76526558972321,97.74337768554688,364075300,0.0,0 -2008-09-09,97.82804540707437,98.02816736690484,94.51836678803947,94.84163665771484,377326800,0.0,0 -2008-09-10,95.35732505930983,96.13471712073212,94.32593861165441,95.22647857666016,298916600,0.0,0 -2008-09-11,93.99497971730734,96.78126664790041,93.59473577738288,96.60424041748047,375369400,0.0,0 -2008-09-12,95.6652293214952,97.14303979519404,95.31117092919008,97.05067443847656,297851200,0.0,0 -2008-09-15,93.61780842819776,96.71197926070765,92.27854352353403,92.43247985839844,483607000,0.0,0 -2008-09-16,90.20806942562734,94.14890197895107,90.05413308551027,93.97956848144531,581744300,0.0,0 -2008-09-17,92.08613002511748,93.78715195830338,89.2844461501883,89.75395965576172,624095600,0.0,0 -2008-09-18,90.86231320020197,93.74096502977389,87.5911160708673,92.4170913696289,776114700,0.0,0 -2008-09-19,98.08463273059765,99.09102834978941,95.4757555298486,96.08733367919922,501087800,0.691,0 -2008-09-22,96.34279836557066,96.57504532606339,93.1765331814807,93.91197204589844,249966500,0.0,0 -2008-09-23,93.55587581102505,94.46162843638743,91.56631374797848,91.77533721923828,327470400,0.0,0 -2008-09-24,92.3946524722656,92.89785034288012,91.18698230781976,92.06951141357422,311818400,0.0,0 -2008-09-25,92.43334853876367,94.37646327348958,91.69016655519624,93.50941467285156,328253000,0.0,0 -2008-09-26,91.99209226683732,94.05906789694048,91.74436491685813,93.55587005615234,285917400,0.0,0 -2008-09-29,92.2320816241134,92.3869090116352,85.90728775263977,86.22468566894531,459562300,0.0,0 -2008-09-30,87.87363234119971,90.42058261353155,85.56666630794702,89.79351806640625,328154400,0.0,0 -2008-10-01,89.23610107278394,90.33539650641677,88.21422521945048,89.8476791381836,332783000,0.0,0 -2008-10-02,88.98839129896956,89.11225792681705,85.97695330828694,86.58853149414062,365337800,0.0,0 -2008-10-03,87.37044470324508,89.37548750492415,84.90865098255482,85.41958618164062,461798000,0.0,0 -2008-10-06,82.95005253323102,83.31390344683638,77.910341739934,81.0688705444336,610637500,0.0,0 -2008-10-07,82.7100296595078,83.08936670801111,77.14390550622296,77.43807983398438,540012100,0.0,0 -2008-10-08,75.4949656266967,79.10250078257738,74.94532085308748,75.48722839355469,725414800,0.0,0 -2008-10-09,77.15164718913833,77.89482908704639,69.86690651173471,70.21527099609375,534485200,0.0,0 -2008-10-10,67.16515162438063,72.7235402514695,64.70335820110088,68.51216888427734,871026300,0.0,0 -2008-10-13,72.66934673830329,78.45997619628906,69.63467908899304,78.45997619628906,455584000,0.0,0 -2008-10-14,81.05336410309856,81.695908922388,75.17757848086639,77.29874420166016,546268300,0.0,0 -2008-10-15,75.44854232854988,75.71175599527027,69.4488890498806,69.68887329101562,484627500,0.0,0 -2008-10-16,70.67204095879544,73.3660753341554,66.9948343514157,72.59192657470703,708811200,0.0,0 -2008-10-17,71.2139315762275,76.32331140723171,70.9507238742492,72.15839385986328,476649000,0.0,0 -2008-10-20,73.81507572189888,76.71813328232714,72.83964672783497,76.4936294555664,321294200,0.0,0 -2008-10-21,75.06919777255926,76.36202463907685,73.71443759468757,74.20989227294922,356502000,0.0,0 -2008-10-22,72.15068084034242,74.20991991269536,67.76125764669052,70.16886138916016,516168000,0.0,0 -2008-10-23,69.8978877076806,71.57004584936662,66.42969888945316,70.98169708251953,634666400,0.0,0 -2008-10-24,65.07493147331137,69.61144288453737,65.02848444586132,67.38189697265625,545812600,0.0,0 -2008-10-27,66.55357581313415,69.2940633781544,64.79625466275378,64.98979187011719,397288600,0.0,0 -2008-10-28,67.61415077375686,72.95577847093517,65.43879461887893,72.58419036865234,639939500,0.0,0 -2008-10-29,72.59189767288674,75.22400358831882,71.2990711768441,72.0577392578125,531270100,0.0,0 -2008-10-30,74.14796122080422,74.7363158840236,71.91841510069489,74.55052185058594,414582100,0.0,0 -2008-10-31,73.60606277949147,76.30784019760053,73.14157472203193,74.96082305908203,411394000,0.0,0 -2008-11-03,74.92211129500677,75.62658945693467,74.27956644745878,75.17758178710938,205419400,0.0,0 -2008-11-04,76.68714129732992,78.08061082860189,74.86789367492979,77.73224639892578,346793400,0.0,0 -2008-11-05,76.7955694002709,77.96453590646895,73.54414634540987,74.46538543701172,387844100,0.0,0 -2008-11-06,73.12606767601254,73.88473581592812,69.71981304469242,70.3391342163086,477721900,0.0,0 -2008-11-07,70.9507302696364,72.7699785521838,70.06045807417696,72.6615982055664,380391000,0.0,0 -2008-11-10,73.70670939047054,73.95443677980201,70.38561020124479,71.70940399169922,301773000,0.0,0 -2008-11-11,70.26171918631627,71.33004198507517,68.62826538642597,69.49530792236328,418498200,0.0,0 -2008-11-12,68.30314794780013,68.86053009579427,65.89554482273577,66.43744659423828,454330600,0.0,0 -2008-11-13,66.67742211578106,71.01265934696818,63.54986081329804,70.57913208007812,753141900,0.0,0 -2008-11-14,69.21663828270509,71.26812761803176,66.9793431000817,67.0567626953125,540352300,0.0,0 -2008-11-17,66.87096087523571,68.55860523447008,65.92650444658946,66.16648864746094,415254900,0.0,0 -2008-11-18,65.91877250093755,67.52126030498835,64.18468081639972,67.41287994384766,523811800,0.0,0 -2008-11-19,66.50711925948421,67.2503013206925,62.644112900590116,63.09312057495117,558327600,0.0,0 -2008-11-20,62.03252737810875,63.87500489107037,58.09985684027623,58.40951156616211,814180400,0.0,0 -2008-11-21,59.9655582840159,62.62863173270451,57.55021218592953,61.560302734375,718536500,0.0,0 -2008-11-24,63.41824893430696,67.34318191685078,62.21057906468881,65.82585144042969,523305300,0.0,0 -2008-11-25,67.58319460044778,67.7457651444994,64.8891540980389,66.31359100341797,454112400,0.0,0 -2008-11-26,65.26072703407354,69.04631308166478,65.21427410344283,68.8759994506836,370134200,0.0,0 -2008-11-28,68.6127857862151,69.7740086438109,68.49666822548342,69.7430419921875,118308100,0.0,0 -2008-12-01,67.74578215633257,67.77674882577854,63.371839027417145,63.56537628173828,369927100,0.0,0 -2008-12-02,64.61818611624292,66.18196372648544,63.511153355792764,66.01165008544922,469508400,0.0,0 -2008-12-03,64.56401645856957,67.99349616338812,64.36273610010772,67.59867858886719,519863500,0.0,0 -2008-12-04,66.62323800515539,68.16379823480644,64.82721318264797,66.0348892211914,444173800,0.0,0 -2008-12-05,64.75752973552187,68.4502158540768,63.66597740544816,68.07088470458984,471905300,0.0,0 -2008-12-08,69.93659166987361,71.51585574801001,68.1870198367115,70.4475326538086,412859300,0.0,0 -2008-12-09,69.95981207676623,71.32230937910298,68.88374598037228,69.28630065917969,370790000,0.0,0 -2008-12-10,69.92109251046442,70.72620766182908,68.8992167234024,69.7585220336914,396187400,0.0,0 -2008-12-11,69.31728063274151,70.44753711283036,67.63737924217504,68.07864379882812,365061000,0.0,0 -2008-12-12,66.22841976593601,68.95342043146078,65.95746301178781,68.89148712158203,415060400,0.0,0 -2008-12-15,68.91471533186765,69.01535844384955,66.80129266825061,67.93154907226562,256694200,0.0,0 -2008-12-16,71.12876892089844,71.23714924885932,68.26442155687239,71.12876892089844,377699500,0.0,0 -2008-12-17,70.32363486440666,71.55453383992412,69.71980008279871,70.43975830078125,281819800,0.0,0 -2008-12-18,70.75721107009424,70.96622867559458,68.28767417411521,69.1237564086914,374673300,0.0,0 -2008-12-19,69.5365764042206,70.72283785244521,68.74833743769788,68.82638549804688,301451300,0.719,0 -2008-12-22,69.13076543061132,69.2010015515836,66.71922405528524,67.94450378417969,243759500,0.0,0 -2008-12-23,68.31129287162246,68.62346723200727,66.96114724773689,67.24210357666016,221625200,0.0,0 -2008-12-24,67.46842805488923,67.79621442837971,67.11723559914427,67.63232421875,62061600,0.0,0 -2008-12-26,68.08497497720526,68.13180500726858,67.50745620976318,68.02254486083984,74767700,0.0,0 -2008-12-29,68.08497673243846,68.15521880222857,66.80506702336453,67.82743835449219,127795900,0.0,0 -2008-12-30,68.29568825094125,69.49755569312562,67.80401168800218,69.43511962890625,168256300,0.0,0 -2008-12-31,69.5209703824348,70.99598821909545,69.35708017327595,70.42626953125,193987200,0.0,0 -2009-01-02,70.58239057064816,72.92369050426028,70.12193182083628,72.54907989501953,227566300,0.0,0 -2009-01-05,72.29150721614579,73.09535821403452,71.7139884587796,72.46320343017578,240349700,0.0,0 -2009-01-06,73.0797470737174,73.71189591073356,72.33053209356419,72.94707489013672,328260900,0.0,0 -2009-01-07,71.79984110125814,72.00275536285962,70.39505921975825,70.7618637084961,280899200,0.0,0 -2009-01-08,70.36384213625543,71.0896391101751,69.98142567921857,71.05062103271484,263834400,0.0,0 -2009-01-09,71.14428021757722,71.26914641029214,66.61776611270149,69.52877807617188,330953600,0.0,0 -2009-01-12,69.33366037635875,69.38829639888604,67.43721402511325,67.858642578125,277858500,0.0,0 -2009-01-13,67.68695810522215,68.58445131033888,67.27332360514085,67.9835205078125,356432300,0.0,0 -2009-01-14,66.75825152417588,66.92214176910254,64.9008227941081,65.84514617919922,435491600,0.0,0 -2009-01-15,65.65001764366819,66.53190467650238,63.77697749418743,65.86853790283203,532647300,0.0,0 -2009-01-16,67.00798532589974,67.10943948368585,64.81497025679242,66.38363647460938,399237200,0.0,0 -2009-01-20,65.73588965179495,66.38364466874249,62.473678707303925,62.87950134277344,419855200,0.0,0 -2009-01-21,63.948698670473185,65.74369146795758,62.80146090738924,65.59541320800781,364360700,0.0,0 -2009-01-22,64.3233119022422,65.58761600641466,63.34777026593944,64.58085632324219,427940300,0.0,0 -2009-01-23,63.137044558597644,65.54858019260992,62.87950018382957,64.86180114746094,386800600,0.0,0 -2009-01-26,65.23639093013935,66.61776066007123,64.62765414917868,65.30663299560547,317978800,0.0,0 -2009-01-27,65.65781164003961,66.45385645853098,65.0100569183703,65.96998596191406,273789700,0.0,0 -2009-01-28,67.42940705490761,68.63907453664339,67.17186275627255,68.20203399658203,330007000,0.0,0 -2009-01-29,67.20309227775809,68.2800877731379,65.92318251655944,65.9856185913086,294392500,0.0,0 -2009-01-30,66.32121251303973,66.64899301100833,64.15940932689145,64.64328002929688,383383600,0.0,0 -2009-02-02,63.659926806786494,64.91642455592607,63.45701253654052,64.44816589355469,288233300,0.0,0 -2009-02-03,64.8539703992705,65.83731748406684,64.16719161620732,65.35344696044922,278385800,0.0,0 -2009-02-04,65.79049096323627,66.62555386601905,64.80714391511775,65.0334701538086,322989300,0.0,0 -2009-02-05,64.54181626316898,66.56314112829584,60.66306868110894,66.00122833251953,417679400,0.0,0 -2009-02-06,66.22754471923778,68.16301522086157,66.08706654135935,67.88206481933594,366101700,0.0,0 -2009-02-09,67.86645548948209,68.47519229944433,67.3669788272448,67.97571563720703,240075200,0.0,0 -2009-02-10,67.32796686513014,67.9210977407144,64.34671239792479,64.86180114746094,536212800,0.0,0 -2009-02-11,65.12715074345195,65.59541544542539,64.30769942346447,65.24421691894531,324442500,0.0,0 -2009-02-12,64.12817387542168,65.41588942981076,63.254092784815455,65.29102325439453,469302200,0.0,0 -2009-02-13,65.20518110504857,65.74367583916482,64.57302631091785,64.58863830566406,293998400,0.0,0 -2009-02-17,62.559533090735236,64.74474265007613,61.786899874915136,61.825923919677734,478910100,0.0,0 -2009-02-18,62.270766095417756,62.38783226692777,61.092310289553865,61.677635192871094,362964800,0.0,0 -2009-02-19,62.30978296560086,62.55172130312297,60.88939479947393,61.01426696777344,316867500,0.0,0 -2009-02-20,59.882624984335465,61.13911660023672,59.133404086200855,60.421119689941406,477176600,0.0,0 -2009-02-23,61.08451069376263,61.08451069376263,58.212515962247934,58.25934600830078,379641400,0.0,0 -2009-02-24,58.75881734455884,60.83476659576026,58.2983586525053,60.46796798706055,426260900,0.0,0 -2009-02-25,60.2025889422565,61.201542027119245,59.02413368391213,59.99187469482422,461985800,0.0,0 -2009-02-26,60.73330798401133,62.17710813229404,58.946115341608376,59.016357421875,363353900,0.0,0 -2009-02-27,57.75984283223122,59.07097039315789,57.60375267365023,57.69740676879883,470510900,0.0,0 -2009-03-02,56.59699395760929,57.68960125998963,54.91906790685213,55.09856414794922,426452600,0.0,0 -2009-03-03,55.88680787849536,55.95704399080639,54.34935390833129,54.684940338134766,443761000,0.0,0 -2009-03-04,55.59023704849973,56.87014650425405,54.68493204337915,55.98045349121094,462753100,0.0,0 -2009-03-05,54.70835749247988,55.98046721836403,53.20212141609634,53.69379806518555,485549400,0.0,0 -2009-03-06,54.16205555703648,54.981506697530584,52.3670571372712,53.787445068359375,490470000,0.0,0 -2009-03-09,53.03043559494792,54.63032609808504,52.85874528590967,53.15530776977539,379905300,0.0,0 -2009-03-10,54.247903694635475,56.47994272367879,54.13864354251994,56.3238525390625,406227900,0.0,0 -2009-03-11,56.97162645585002,57.55695138519095,56.05852099509412,56.690670013427734,356648300,0.0,0 -2009-03-12,56.67504645464248,59.11779959470231,56.167763815128815,58.922691345214844,409702700,0.0,0 -2009-03-13,59.32073331703166,60.07775452625878,58.32177970436489,59.38316345214844,337474700,0.0,0 -2009-03-16,60.06211497913464,60.8503538715086,59.16461595762731,59.20363998413086,360644900,0.0,0 -2009-03-17,59.3675524622782,61.154745179994016,58.883681741466695,61.01426696777344,356814300,0.0,0 -2009-03-18,60.725510907742354,63.137052811198146,60.14799195442014,62.38003158569336,473273200,0.0,0 -2009-03-19,63.16043984021523,63.21506990937508,61.41227167286904,61.60737991333008,428520400,0.0,0 -2009-03-20,61.906866155071235,62.02477021974584,60.154040918928416,60.29552459716797,371078200,0.561,0 -2009-03-23,61.89116069837233,64.68153173363942,61.553172144778166,64.62651062011719,419933300,0.0,0 -2009-03-24,63.856178176951836,64.73652156475383,63.282387698469606,63.353126525878906,330271000,0.0,0 -2009-03-25,63.84833632258416,65.0037794018796,62.142670259447975,64.02125549316406,441775100,0.0,0 -2009-03-26,64.65008797992618,65.4754106507509,63.91908978477758,65.32606506347656,422025200,0.0,0 -2009-03-27,64.49286108077737,64.87014684097431,63.91120270546279,64.14701080322266,322332300,0.0,0 -2009-03-30,62.724316017106936,62.77933710496839,61.27803799827192,61.93043518066406,324108500,0.0,0 -2009-03-31,62.535664346792906,63.730416482353284,62.13479900897396,62.50422286987305,364238300,0.0,0 -2009-04-01,61.72607166319377,63.9976661137855,61.568870260525834,63.714698791503906,377018300,0.0,0 -2009-04-02,65.30245499508743,66.50506301417184,63.769714463493735,65.57756042480469,476230700,0.0,0 -2009-04-03,65.6246969593539,66.24565242714164,64.98016189100466,66.22993469238281,284646300,0.0,0 -2009-04-06,65.50682264446584,66.24568244672585,64.68150626658425,65.71118927001953,264866600,0.0,0 -2009-04-07,64.65005404582627,64.96446280286558,64.06840174325488,64.1784439086914,258947800,0.0,0 -2009-04-08,64.5007329840878,65.19243371111321,64.09200564281413,64.87016296386719,230402800,0.0,0 -2009-04-09,66.55221926231575,67.45614220264198,66.28497571304187,67.44828033447266,269653500,0.0,0 -2009-04-13,66.74874707518846,68.02210030086314,66.48150343348227,67.46402740478516,224847500,0.0,0 -2009-04-14,66.835175071488,67.40897141235435,66.08845963852711,66.3006820678711,276598800,0.0,0 -2009-04-15,65.89982053839336,67.14173181779283,65.71903955280818,67.00811004638672,250726100,0.0,0 -2009-04-16,67.5425854368375,68.5015291862817,66.63080088921951,67.99061584472656,335202900,0.0,0 -2009-04-17,68.25004367601986,68.89457913387884,67.70768854795979,68.44654846191406,262649000,0.0,0 -2009-04-20,67.23606086847687,68.42295114736967,65.50681560182105,65.57756042480469,293690100,0.0,0 -2009-04-21,65.09808401964246,66.91378573068583,65.04306293739411,66.8587646484375,114090900,0.0,0 -2009-04-22,66.25354559402525,67.86488102774061,66.08062044574814,66.4500503540039,340395200,0.0,0 -2009-04-23,66.58370234724768,67.14177539905121,65.7347999599189,67.10247802734375,324903700,0.0,0 -2009-04-24,67.62119834676301,68.62730148016533,67.35395482557388,68.11639404296875,287703000,0.0,0 -2009-04-27,67.34609526601331,68.391501775107,67.23605310682953,67.47185516357422,289581600,0.0,0 -2009-04-28,66.78804094422821,68.06138799214854,66.62297766012186,67.25965118408203,247926300,0.0,0 -2009-04-29,68.0063847684058,69.45266334711187,67.83346556593708,68.69022369384766,311505700,0.0,0 -2009-04-30,69.60195770821964,69.9713814568137,68.32074339983171,68.71375274658203,301419800,0.0,0 -2009-05-01,68.72950004215534,69.33473200503816,68.16356542931234,69.08320617675781,236110300,0.0,0 -2009-05-04,69.60199820996058,71.48058350083727,69.46837039670329,71.43341827392578,287120000,0.0,0 -2009-05-05,71.18975830078125,71.47272569092607,70.615961649418,71.18975830078125,243036300,0.0,0 -2009-05-06,72.06221436735322,72.4709415645415,71.22117436817389,72.42378234863281,291941000,0.0,0 -2009-05-07,73.10765193309834,73.2176941480665,70.9618167475173,71.41770935058594,317728000,0.0,0 -2009-05-08,72.33733135281038,73.27269593019231,71.87358299730633,73.08405303955078,299081700,0.0,0 -2009-05-11,72.07795297364908,72.40022370058513,71.55918345792416,71.71638488769531,247923600,0.0,0 -2009-05-12,72.02288908054071,72.18009641375595,70.62377679758127,71.50411987304688,282431300,0.0,0 -2009-05-13,70.53731762627072,70.74954603701728,69.56265610125723,69.70413970947266,269619100,0.0,0 -2009-05-14,69.73563979843624,70.8360681210541,69.56271457671534,70.30157470703125,260098700,0.0,0 -2009-05-15,70.24654353523806,70.74173351094832,69.28759907703792,69.72776794433594,271502700,0.0,0 -2009-05-18,70.3879843006082,71.79495264263817,69.6176832559224,71.70849609375,241447400,0.0,0 -2009-05-19,71.66922191020059,72.29017771996908,71.37839268379768,71.62206268310547,206102200,0.0,0 -2009-05-20,72.27447235863569,72.94259356224805,71.06400791181531,71.14260864257812,285722200,0.0,0 -2009-05-21,70.31728576957606,70.58453544960126,69.37406500950777,70.12078094482422,258988400,0.0,0 -2009-05-22,70.31727062414994,70.74172167381484,69.70417666247289,69.97142028808594,166811900,0.0,0 -2009-05-26,69.45261469796381,71.96787220753527,69.4211732294883,71.76351165771484,236318500,0.0,0 -2009-05-27,71.87359524902764,72.11725927417714,70.37229574695712,70.48233795166016,246015800,0.0,0 -2009-05-28,71.1032833320062,71.7949779448122,70.03429693240179,71.46485137939453,289095000,0.0,0 -2009-05-29,71.85786499514654,73.64998759144153,71.27621253773584,72.7303466796875,258641500,0.0,0 -2009-06-01,73.62639293550059,74.80542134974331,73.43775006833935,74.49101257324219,276246800,0.0,0 -2009-06-02,74.20017273808362,74.96261190089012,74.06655098705598,74.55387878417969,230874500,0.0,0 -2009-06-03,73.91722655287354,73.9879653834991,72.91112320498357,73.61067962646484,235310500,0.0,0 -2009-06-04,73.88577909250478,74.41241033402686,73.33556824268297,74.3023681640625,210102300,0.0,0 -2009-06-05,75.05695376893142,75.19843743095063,73.72858571664743,74.31809997558594,284257900,0.0,0 -2009-06-08,73.7600190697953,74.75040467532858,73.13120747652974,74.01155090332031,238565100,0.0,0 -2009-06-09,74.42812017122134,74.78182622335896,73.90148303120108,74.3888168334961,225125500,0.0,0 -2009-06-10,75.04908956093422,75.05694543244947,73.24910550394212,74.20018768310547,296100400,0.0,0 -2009-06-11,74.34170677870209,75.54431534732356,74.32598303447688,74.53034973144531,275414200,0.0,0 -2009-06-12,74.2002097960638,74.78186229450455,73.88580093314843,74.73470306396484,184361800,0.0,0 -2009-06-15,73.85434213452226,73.90150135400708,72.6281544531258,73.02116394042969,224190500,0.0,0 -2009-06-16,73.28055024165648,73.32770946024058,71.98361775895496,72.03077697753906,227319000,0.0,0 -2009-06-17,71.99934221437532,72.57313874700685,71.39411019765512,71.96004486083984,223445200,0.0,0 -2009-06-18,72.07007476142485,72.84036992413631,71.7242245269064,72.48666381835938,211725100,0.0,0 -2009-06-19,73.18068611340965,73.27553732136346,72.34279558190681,72.75383758544922,215655600,0.518,0 -2009-06-22,72.04243598967173,72.08196135372346,70.54846889551865,70.57218170166016,251913600,0.0,0 -2009-06-23,70.72237496100152,71.04646004832209,70.23228815958905,70.62751770019531,188309800,0.0,0 -2009-06-24,71.2677793589122,71.99500012035669,70.82511826134873,71.23616027832031,211577700,0.0,0 -2009-06-25,70.8804227462917,72.8565692889945,70.80137809072771,72.78543090820312,279411000,0.0,0 -2009-06-26,72.5404246382822,72.91194135809775,72.14519511179316,72.59575653076172,167579000,0.0,0 -2009-06-29,72.80918290186327,73.37040809846495,72.40604710150402,73.27555084228516,168481300,0.0,0 -2009-06-30,73.29137329182743,73.56012650785556,72.14520390684794,72.6827163696289,228888200,0.0,0 -2009-07-01,72.99098588071364,73.69449998442867,72.88822837513564,72.98308563232422,173041100,0.0,0 -2009-07-02,72.03454048490971,73.00680789720006,70.9516153043159,70.99113464355469,212309900,0.0,0 -2009-07-06,70.30342771647058,71.08598046376598,70.08210015406168,70.98322296142578,174499600,0.0,0 -2009-07-07,70.91206163357624,70.99901258821437,69.56037774427753,69.60780334472656,197088900,0.0,0 -2009-07-08,70.02676989824182,70.19277161894371,68.76994280381636,69.5604019165039,248050500,0.0,0 -2009-07-09,70.04256704648202,70.27180086241084,69.48924820163532,69.69476318359375,163777600,0.0,0 -2009-07-10,69.32325703231719,69.94772041234658,69.04659756793049,69.52877807617188,173520300,0.0,0 -2009-07-13,69.80541493360371,71.27566878902024,69.23628363076865,71.2203369140625,217413500,0.0,0 -2009-07-14,71.44169637919416,71.68674281855324,70.9279027521512,71.62350463867188,181487400,0.0,0 -2009-07-15,72.57205416167824,73.91583836344358,71.67883747440777,73.71822357177734,220877900,0.0,0 -2009-07-16,73.51269653823293,74.70629147170382,73.37041365854286,73.59964752197266,231174500,0.0,0 -2009-07-17,74.35055191494868,74.55607288910944,73.93951599734913,74.4058837890625,138561700,0.0,0 -2009-07-20,74.8406687985227,75.32284933822557,74.45334552310912,75.19637298583984,164179400,0.0,0 -2009-07-21,75.78131433112776,75.8050271386621,74.63514504426624,75.54417419433594,217718300,0.0,0 -2009-07-22,75.06198452215854,75.98682008760755,75.00665263441518,75.52835845947266,196068100,0.0,0 -2009-07-23,75.57579962049111,77.52823468090902,75.51256144127906,77.19624328613281,258795500,0.0,0 -2009-07-24,76.83261019247283,77.57564356107464,76.4294804561119,77.51240539550781,154003100,0.0,0 -2009-07-27,77.37012909719301,77.78117117749906,76.94328048951701,77.74164581298828,159259400,0.0,0 -2009-07-28,77.19620384749713,77.75742883215021,76.72192377643559,77.37800598144531,186685200,0.0,0 -2009-07-29,77.02233591823307,77.53612950388005,76.65872545929821,77.1883316040039,194399300,0.0,0 -2009-07-30,78.12105945659873,78.9115184064037,77.9392512446254,77.99458312988281,225575400,0.0,0 -2009-07-31,77.97876196651733,78.62693794245526,77.76533471292878,78.10523223876953,207358000,0.0,0 -2009-08-03,78.92734847868293,79.46486096613809,78.5004997947575,79.39372253417969,175776900,0.0,0 -2009-08-04,79.03797994857338,79.70986877534816,78.8719843111859,79.59920501708984,176714600,0.0,0 -2009-08-05,79.6545624801267,79.72570693655622,78.71392023281017,79.37000274658203,184726400,0.0,0 -2009-08-06,79.73362949106092,79.85219355810325,78.587459920271,78.95897674560547,193203800,0.0,0 -2009-08-07,79.78893080954835,80.65052819693796,79.35417596131839,79.99444580078125,220640900,0.0,0 -2009-08-10,79.63084592362485,80.01026893503379,79.25932919160806,79.82846069335938,130898700,0.0,0 -2009-08-11,79.4727435746965,79.5280754599801,78.61904646112946,78.83247375488281,157301000,0.0,0 -2009-08-12,78.6981175516295,80.2790359823539,78.65859820929651,79.67829132080078,219052400,0.0,0 -2009-08-13,80.04187067919601,80.31853009073569,79.25141177152672,80.28691101074219,176449500,0.0,0 -2009-08-14,80.24740376490719,80.31064193916708,78.80876846947801,79.67037200927734,199616100,0.0,0 -2009-08-17,78.13687055421454,78.21591524767565,77.55193258573402,77.71002197265625,237667500,0.0,0 -2009-08-18,77.88392872700415,78.60324935259145,77.741645857697,78.32658386230469,173461500,0.0,0 -2009-08-19,77.71003115224903,79.2830490823406,77.63098644945066,79.01428985595703,192812800,0.0,0 -2009-08-20,79.11704631617023,80.01026893503379,78.94315038461214,79.82846069335938,174131300,0.0,0 -2009-08-21,80.48453328172415,81.52003261800019,80.32644389766124,81.39356231689453,224605000,0.0,0 -2009-08-24,81.72556353809965,82.16821869165618,81.09319386382676,81.38566589355469,191279000,0.0,0 -2009-08-25,81.70974260155458,82.41325057399796,81.36984501694641,81.54374694824219,215310600,0.0,0 -2009-08-26,81.2908056968516,81.92317534828237,81.01414623587212,81.5516586303711,194620700,0.0,0 -2009-08-27,81.50424086150754,81.98642141021728,80.57940513262803,81.73347473144531,196230100,0.0,0 -2009-08-28,82.38953097493376,82.4843821800182,81.15641103233263,81.71763610839844,147024400,0.0,0 -2009-08-31,80.91927907482163,81.085274718721,80.4608114693532,80.99041748046875,176051600,0.0,0 -2009-09-01,80.58727480671905,81.60696741478552,79.03797623320851,79.20397186279297,321276800,0.0,0 -2009-09-02,78.87199114857412,79.39369693763771,78.70599549679653,78.90361022949219,171805000,0.0,0 -2009-09-03,79.36208526107424,79.65455123308766,78.72180936651193,79.55970001220703,143572300,0.0,0 -2009-09-04,79.71780056534584,80.6979681796349,79.48066644920989,80.67425537109375,142687900,0.0,0 -2009-09-08,81.4172757681423,81.4568011298337,80.9350953029799,81.3698501586914,132909100,0.0,0 -2009-09-09,81.51213562051541,82.27097554957756,81.25918897749469,81.99431610107422,154612500,0.0,0 -2009-09-10,82.04963882020516,82.88752335080146,81.59117119637122,82.83219146728516,162902400,0.0,0 -2009-09-11,82.99027765414678,83.23532401236041,82.42905256267635,82.81637573242188,152360100,0.0,0 -2009-09-14,82.11287678911569,83.36180342668067,81.53584511009315,83.21952056884766,149593800,0.0,0 -2009-09-15,83.35389448205932,83.87560028766727,82.80848190341484,83.56732177734375,196795900,0.0,0 -2009-09-16,83.86772342645571,84.84789118690469,83.57525736987053,84.83208465576172,206406300,0.0,0 -2009-09-17,84.71350480252106,85.41701295645767,84.23923052345617,84.70560455322266,229170900,0.0,0 -2009-09-18,85.10108374660985,85.10902768147567,84.4736462000415,84.75956726074219,153799100,0.508,0 -2009-09-21,84.10037203325408,84.98196108628821,83.91770392140606,84.54513549804688,151892000,0.0,0 -2009-09-22,85.04552633587763,85.27585207436445,84.66429606472192,85.03758239746094,143126700,0.0,0 -2009-09-23,85.23614173563847,85.80004019602211,84.17982208503467,84.33072662353516,225947400,0.0,0 -2009-09-24,84.51338121395527,84.69604934599305,83.03612404610494,83.4014663696289,228636800,0.0,0 -2009-09-25,83.2188062416357,83.67945770718879,82.67078963401394,82.95671081542969,204059000,0.0,0 -2009-09-28,83.27443696163311,84.62462223674152,83.25855513791626,84.44194793701172,118285800,0.0,0 -2009-09-29,84.59282307625355,84.99787306424861,84.01303673150097,84.1877670288086,133733900,0.0,0 -2009-09-30,84.47370828536611,84.55312951405558,83.09175951592503,83.86215209960938,254383000,0.0,0 -2009-10-01,81.80508338319817,83.97331787106577,81.76536975389271,81.78125762939453,281840600,0.0,0 -2009-10-02,81.02673812625589,81.88450158852015,81.00291237332335,81.4000244140625,224748800,0.0,0 -2009-10-05,81.72564638606268,82.85344295071963,81.4873767751868,82.61517333984375,149875000,0.0,0 -2009-10-06,83.21086138101364,84.2751248910302,83.16320987112239,83.79859161376953,202491100,0.0,0 -2009-10-07,83.60797911747333,84.1162881816848,83.44913670077898,84.02892303466797,159200300,0.0,0 -2009-10-08,84.62462019906047,85.11703549530198,84.06865943112567,84.67227172851562,183305800,0.0,0 -2009-10-09,84.69605545123798,85.1884765625,84.47367367823219,85.1884765625,135008300,0.0,0 -2009-10-12,85.58560360082042,85.84769298810673,85.20437330925411,85.52206420898438,118031000,0.0,0 -2009-10-13,85.2917403611952,85.54589187476006,84.7913812730847,85.34733581542969,157692700,0.0,0 -2009-10-14,86.34803822937882,86.90399263122401,85.31554455801087,86.8166275024414,191421600,0.0,0 -2009-10-15,86.39570204780205,87.13433074951172,86.35599447598072,87.13433074951172,173873600,0.0,0 -2009-10-16,86.41160835213304,86.78488869221586,85.95890073257026,86.48308563232422,192069400,0.0,0 -2009-10-19,86.62603358087702,87.46790929705297,86.35600026038655,87.1978759765625,159530400,0.0,0 -2009-10-20,87.32495263362976,87.35672233031626,86.3162905164962,86.73722839355469,180921100,0.0,0 -2009-10-21,86.6021894631082,87.61085132093002,85.89533055704405,85.95886993408203,225379300,0.0,0 -2009-10-22,85.92711212079361,87.11050439929187,85.37909552213934,86.83252716064453,238444000,0.0,0 -2009-10-23,87.11841491698435,87.17401034338627,85.48230968675455,85.83971405029297,240033200,0.0,0 -2009-10-26,85.93503558546186,86.81662472262306,84.67222231622725,84.91049194335938,242028200,0.0,0 -2009-10-27,85.00582434502303,85.2917455726851,84.31485309438172,84.52134704589844,253266300,0.0,0 -2009-10-28,84.306921293894,84.56901680023073,82.87731494974037,82.92497253417969,248821400,0.0,0 -2009-10-29,83.54445848398947,84.87081164926775,83.34590240321904,84.70402526855469,198110600,0.0,0 -2009-10-30,84.42604151256691,84.68019303414385,82.15455963746348,82.24986267089844,325608100,0.0,0 -2009-11-02,82.70255769329246,83.71916968459941,81.86862598018236,82.85346221923828,254222900,0.0,0 -2009-11-03,82.39281551975878,83.23469727898724,82.23397310602873,83.11556243896484,228362600,0.0,0 -2009-11-04,83.79860493351059,84.44986859648968,83.11557157240442,83.33000946044922,247996700,0.0,0 -2009-11-05,83.91772378807879,84.88667212870216,83.74299351141663,84.86284637451172,180015300,0.0,0 -2009-11-06,84.39426442599512,85.29967952105712,84.2274780726363,85.08523559570312,170954100,0.0,0 -2009-11-09,85.73649464802142,87.07079146363355,85.6729613211442,87.02313995361328,159495700,0.0,0 -2009-11-10,86.81662733393183,87.3090484170736,86.54659407054501,87.03900909423828,171899800,0.0,0 -2009-11-11,87.61087552514394,88.01593159135508,87.0628649102761,87.48380279541016,169466200,0.0,0 -2009-11-12,87.36465959170877,87.81736713085147,86.37187936907573,86.5942611694336,157144500,0.0,0 -2009-11-13,86.81664496025924,87.43613886387362,86.3718813493463,87.06285858154297,150963000,0.0,0 -2009-11-16,87.66645325373422,88.70689093658048,87.61880174715081,88.3256607055664,210922200,0.0,0 -2009-11-17,88.09534423118396,88.46863056376984,87.76177153121556,88.42891693115234,147134100,0.0,0 -2009-11-18,88.36537602552538,88.50039266972884,87.8173594515302,88.3733139038086,156486800,0.0,0 -2009-11-19,87.76971922008418,88.4050949529669,86.673685931283,87.2217025756836,208734600,0.0,0 -2009-11-20,86.76896571750436,87.17402162482185,86.5783536679511,86.91192626953125,134196000,0.0,0 -2009-11-23,87.93650134103358,88.74660733075503,87.84119225894005,88.01592254638672,148010200,0.0,0 -2009-11-24,88.15885335951484,88.31769571656379,87.37257339106176,88.15090942382812,138420100,0.0,0 -2009-11-25,88.29389938168444,88.555994811628,88.01592213452439,88.46068572998047,109564800,0.0,0 -2009-11-27,86.09389915152164,87.61880806666423,86.00653401018488,87.02313995361328,126001800,0.0,0 -2009-11-30,86.9516589761678,87.52349525034458,85.87151369252976,87.31700134277344,160874800,0.0,0 -2009-12-01,88.09536189477954,88.68309226622365,87.94446339136623,88.39717102050781,159613700,0.0,0 -2009-12-02,88.38124762599388,88.96103382445453,88.0953264951706,88.357421875,132315100,0.0,0 -2009-12-03,88.59569726582346,89.09605624758181,87.59497324285799,87.66645050048828,167324900,0.0,0 -2009-12-04,88.82600271897674,89.25488437456949,87.39640325978202,88.16680145263672,274907800,0.0,0 -2009-12-07,88.08740082236008,88.57981590298694,87.75382208388316,88.03179931640625,127973800,0.0,0 -2009-12-08,87.39641771680213,87.97619789677923,86.78486178732355,87.05490112304688,169863700,0.0,0 -2009-12-09,87.03109963012712,87.50763299485243,86.58632990485975,87.38055419921875,155063400,0.0,0 -2009-12-10,87.92062209705549,88.2542008874115,87.72206603445197,87.87297058105469,138014600,0.0,0 -2009-12-11,88.24625396728516,88.4448100231814,87.84914185549266,88.24625396728516,124854000,0.0,0 -2009-12-14,88.8498764038086,88.95312338347647,88.26214604722044,88.8498764038086,107141500,0.0,0 -2009-12-15,88.52423954720348,88.8895819972289,88.15889709717807,88.43687438964844,120408800,0.0,0 -2009-12-16,88.7942873284496,89.05637676636643,88.37334332080519,88.5718994140625,155358200,0.0,0 -2009-12-17,87.9365035561869,88.1032899094648,87.42820055778292,87.50762176513672,183390100,0.0,0 -2009-12-18,87.99470646968112,88.07456135142097,87.26008785742282,88.00269317626953,174591200,0.59,0 -2009-12-21,88.44184325368121,89.19242895447383,88.44184325368121,88.89698791503906,118039600,0.0,0 -2009-12-22,89.08866770695442,89.4080690076515,88.9768781655214,89.2164306640625,91707500,0.0,0 -2009-12-23,89.43198675708813,89.51982223144734,89.03273681620826,89.39205932617188,111783100,0.0,0 -2009-12-24,89.58374943157015,89.91113138239815,89.4320324270963,89.81531524658203,39677500,0.0,0 -2009-12-28,90.1506577443217,90.2225198253294,89.68752624869896,90.00692749023438,87508500,0.0,0 -2009-12-29,90.23844071576353,90.25440802711432,89.87113163401116,89.87911224365234,80572500,0.0,0 -2009-12-30,89.61566172508381,89.95103027812264,89.56774758031268,89.84722137451172,73138400,0.0,0 -2009-12-31,90.0468484649655,90.07080858394082,88.94492058290737,88.98484802246094,90637900,0.0,0 -2010-01-04,89.72743648900011,90.54190371132576,89.04072608355636,90.4939956665039,118944600,0.0,0 -2010-01-05,90.43813274377356,90.77350135969087,90.11074474342124,90.73357391357422,111579900,0.0,0 -2010-01-06,90.64573785015858,91.02103390989214,90.57387575807662,90.79745483398438,116074400,0.0,0 -2010-01-07,90.62975809895723,91.29251462028039,90.37423831980605,91.18072509765625,131091100,0.0,0 -2010-01-08,90.9411506981738,91.52405829013841,90.75749913763154,91.484130859375,126402800,0.0,0 -2010-01-11,91.8914046994265,91.93132605427881,91.22066136193295,91.61193084716797,106375700,0.0,0 -2010-01-12,91.00504800968545,91.19668630819064,90.40617299629407,90.75751495361328,163333500,0.0,0 -2010-01-13,90.9890711182675,91.77959049200558,90.52594575559628,91.5240707397461,161822000,0.0,0 -2010-01-14,91.42024929087752,91.93927542978973,91.36435454312209,91.77159118652344,115718800,0.0,0 -2010-01-15,91.61193027215987,91.69975968911294,90.39021985354404,90.74156188964844,212283100,0.0,0 -2010-01-19,90.72556101282123,91.93129147794473,90.70160089843381,91.87539672851562,139172700,0.0,0 -2010-01-20,91.25259958034046,91.38834314882016,90.21455300175856,90.9411849975586,216490200,0.0,0 -2010-01-21,90.9651303105956,91.24460412835074,89.08066957934327,89.19245910644531,344859600,0.0,0 -2010-01-22,88.79321433906463,89.22440515157903,87.10837853337925,87.2042007446289,345942400,0.0,0 -2010-01-25,88.00267859673902,88.16238224168825,87.36388229315556,87.65133666992188,186937500,0.0,0 -2010-01-26,87.30798112324477,88.21028996065215,87.0684347948197,87.28402709960938,211168800,0.0,0 -2010-01-27,87.17224397016501,87.89888189796254,86.50150689103336,87.69925689697266,271863600,0.0,0 -2010-01-28,87.98674893289432,88.03465700084614,86.16616924583991,86.69317626953125,316104000,0.0,0 -2010-01-29,87.06841852149788,87.67528007247869,85.615149135883,85.75089263916016,310677600,0.0,0 -2010-02-01,86.35777975917824,87.09239832720125,85.83875351948329,87.08441162109375,187865000,0.0,0 -2010-02-02,87.2441116340362,88.30611200318852,86.94067773535994,88.138427734375,216327900,0.0,0 -2010-02-03,87.73917824192769,88.21828311796067,87.44373713938846,87.69925689697266,172730700,0.0,0 -2010-02-04,87.02051515160323,87.0604364883188,84.97635142075909,84.99232482910156,356715700,0.0,0 -2010-02-05,85.088182517931,85.34370234772373,83.5071554748614,85.16803741455078,493585800,0.0,0 -2010-02-08,85.23186999819436,85.7029880649405,84.48926491392042,84.55314636230469,224166900,0.0,0 -2010-02-09,85.54331279297136,86.35778629961106,84.85660222544072,85.61518096923828,337820500,0.0,0 -2010-02-10,85.47942760855416,85.91859895419353,84.72883565758336,85.4474868774414,240511500,0.0,0 -2010-02-11,85.33570641139762,86.43763433728586,84.8406341647725,86.34181213378906,223591600,0.0,0 -2010-02-12,85.43149311037732,86.31782838833956,85.04821661248937,86.2699203491211,304622100,0.0,0 -2010-02-16,86.92471019598945,87.71522348755957,86.09426946772454,87.62738800048828,159317500,0.0,0 -2010-02-17,88.05057552185399,88.16237110523227,87.62737157732114,88.04259490966797,168845100,0.0,0 -2010-02-18,87.89888898896285,88.7452971119787,87.86694825517915,88.5616455078125,193708600,0.0,0 -2010-02-19,88.33007532934323,89.08864791944806,88.12246361619185,88.74529266357422,222684900,0.0,0 -2010-02-22,89.07269080448727,89.09664483335074,88.49776974347407,88.76127624511719,132346900,0.0,0 -2010-02-23,88.52170836151801,88.7931954308039,87.45171521933668,87.68328094482422,207497000,0.0,0 -2010-02-24,87.94679632558237,88.6335068661453,87.72321728299389,88.48977661132812,176350700,0.0,0 -2010-02-25,87.22816997634956,88.43390712006519,86.98862354458686,88.37002563476562,259634700,0.0,0 -2010-02-26,88.44984208672895,88.72932195965072,87.922835255993,88.42588806152344,173589300,0.0,0 -2010-03-01,88.79321021810627,89.43201274597791,88.76925618942374,89.34417724609375,147709700,0.0,0 -2010-03-02,89.72745496399659,90.0228960906575,89.43200774526362,89.59170532226562,160992400,0.0,0 -2010-03-03,89.82324249951535,90.20652509129424,89.4479466116675,89.6715316772461,150785000,0.0,0 -2010-03-04,89.79134484150755,90.07082478450718,89.45597622039564,89.94306182861328,135770400,0.0,0 -2010-03-05,90.52597493193413,91.30051505192708,90.31037645431081,91.22865295410156,176118800,0.0,0 -2010-03-08,91.23663303188702,91.4442386941223,91.08491604696104,91.24461364746094,114631200,0.0,0 -2010-03-09,90.9730820931691,91.81948992831528,90.92517405482346,91.39628601074219,154556700,0.0,0 -2010-03-10,91.43622623453848,92.05106848361551,91.35637746209704,91.80353546142578,186088800,0.0,0 -2010-03-11,91.58796115380936,92.21079636357128,91.30848733075284,92.18683624267578,160791100,0.0,0 -2010-03-12,92.58607991464231,92.60205332747068,91.93929681274967,92.19481658935547,162074800,0.0,0 -2010-03-15,92.0351212806375,92.28265435692667,91.50810830161547,92.2187728881836,146816800,0.0,0 -2010-03-16,92.47426436378295,93.04119851817104,92.21874465910001,92.953369140625,168673000,0.0,0 -2010-03-17,93.23288450088313,93.8078056161807,92.96139126662682,93.5043716430664,177468100,0.0,0 -2010-03-18,93.51236144663837,93.6401183142268,93.08117059589009,93.45646667480469,196509100,0.0,0 -2010-03-19,92.98339080810547,94.04175112714037,92.62258240017763,92.98339080810547,226641100,0.48,0 -2010-03-22,92.45419608377226,93.64886491516208,92.39807115403411,93.48048400878906,184477800,0.0,0 -2010-03-23,93.61680633714941,94.21814757959767,93.31212285932692,94.13796997070312,182941600,0.0,0 -2010-03-24,93.7851903867636,94.15401231772694,92.6707049970465,93.68095397949219,196072600,0.0,0 -2010-03-25,94.31436706339065,94.74733353241038,93.416367972529,93.52861785888672,223396300,0.0,0 -2010-03-26,93.70499246485002,94.1459723202198,93.10365129348864,93.47247314453125,205808500,0.0,0 -2010-03-29,93.94552643922779,94.23417069446756,93.5606715103473,94.0657958984375,134513500,0.0,0 -2010-03-30,94.17804918622545,94.47471304743986,93.73706930930345,94.12994384765625,145772500,0.0,0 -2010-03-31,93.76915038190683,94.2261695225338,93.49654526374617,93.80924224853516,161078700,0.0,0 -2010-04-01,94.4506607055664,94.8114629804041,93.8894052459578,94.4506607055664,161215200,0.0,0 -2010-04-05,94.81146893401954,95.28452110705211,94.5468773200389,95.22038269042969,105847600,0.0,0 -2010-04-06,94.94778186784583,95.61326771502904,94.84355157691694,95.44489288330078,110384200,0.0,0 -2010-04-07,95.25243933450874,95.7014387630204,94.45866462275762,94.89965057373047,184576300,0.0,0 -2010-04-08,94.57093497109376,95.38876252698145,94.29031026746947,95.22840118408203,158704000,0.0,0 -2010-04-09,95.42885255213136,95.89389129164394,95.25246424277557,95.85380554199219,133006500,0.0,0 -2010-04-12,95.97403888503511,96.25466963060926,95.8617890336687,96.00611114501953,110279000,0.0,0 -2010-04-13,95.90990280676016,96.24665236902108,95.41279194069051,96.07827758789062,125043600,0.0,0 -2010-04-14,96.4310817614828,97.16873168945312,96.27874613528559,97.16873168945312,161609000,0.0,0 -2010-04-15,97.00837004647178,97.47340875419981,96.97629777864644,97.24890899658203,144615300,0.0,0 -2010-04-16,96.90413664005942,97.24890586161817,95.2123627990571,95.70145416259766,366786700,0.0,0 -2010-04-19,95.42082130057648,96.15846502211257,94.98785491172036,96.06224822998047,217947800,0.0,0 -2010-04-20,96.66357878985049,97.00033446670994,96.11034911810081,96.92015075683594,157708000,0.0,0 -2010-04-21,96.9762952741566,97.20080114313593,96.20657921770577,96.74378204345703,192910100,0.0,0 -2010-04-22,96.06225418919313,97.15268676569958,95.50902442230094,97.03241729736328,115360300,0.0,0 -2010-04-23,96.96827302679615,97.70591674954754,96.7197145093351,97.66582489013672,177335500,0.0,0 -2010-04-26,97.69786818874432,97.91435437792461,97.20076353552174,97.2969741821289,143457300,0.0,0 -2010-04-27,96.73577480170879,97.28900465587331,94.8114813562472,94.99589538574219,355853300,0.0,0 -2010-04-28,95.45290564308688,95.95803010209059,94.82750559082939,95.71749114990234,300674100,0.0,0 -2010-04-29,96.29478340430394,97.10459138250432,96.27073073160213,96.90414428710938,193775000,0.0,0 -2010-04-30,96.92015356821653,97.02438994721305,95.2363996037112,95.26045227050781,270000900,0.0,0 -2010-05-03,95.71748834253981,96.75981561523818,95.57316619889171,96.49522399902344,182747900,0.0,0 -2010-05-04,95.42084256338372,95.43687564039897,93.74510156733804,94.2261734008789,360353400,0.0,0 -2010-05-05,93.45643507868076,94.45065689831351,92.9833829544216,93.66490173339844,328973200,0.0,0 -2010-05-06,93.21591503656177,93.80923670118335,84.18777652670302,90.5539779663086,647356600,0.0,0 -2010-05-07,90.31342817047542,91.21944669260245,87.72365554342718,89.20696258544922,637558800,0.0,0 -2010-05-10,92.85509614485493,93.5286014620868,92.13349160682222,93.13572692871094,396159600,0.0,0 -2010-05-11,92.26177113102197,94.09786690679799,92.13348819549267,92.87113189697266,317849800,0.0,0 -2010-05-12,93.2399423777963,94.30632205888325,93.07958108149113,94.17001342773438,235607100,0.0,0 -2010-05-13,93.91345830878234,94.35444430623957,92.91924256206678,92.99942016601562,234452500,0.0,0 -2010-05-14,92.30190702800975,92.47028190212812,90.49788265467653,91.31570434570312,345601400,0.0,0 -2010-05-17,91.56421659570395,91.82078859351867,89.61587088452514,91.36376953125,325739800,0.0,0 -2010-05-18,92.10942587085852,92.38203703876589,89.82433073279864,90.1209945678711,360556800,0.0,0 -2010-05-19,89.61584733842291,90.41763538557306,88.48532937286302,89.60783386230469,394742700,0.0,0 -2010-05-20,87.69959931839496,88.10851305145451,86.16818689404896,86.22431182861328,530418300,0.0,0 -2010-05-21,84.91738879983717,87.69958863684383,84.47640285542893,87.48310852050781,500909400,0.0,0 -2010-05-24,87.01005748157242,87.70761545550242,86.28043336100643,86.36061096191406,269823000,0.0,0 -2010-05-25,84.27597626749566,86.48891388694697,83.69066806440478,86.44882202148438,396505200,0.0,0 -2010-05-26,86.97798183668435,87.77175039815812,85.67106322768976,85.9276351928711,349719300,0.0,0 -2010-05-27,87.54726863189546,88.8381483166688,87.21853248440785,88.80607604980469,300870500,0.0,0 -2010-05-28,88.70985781400258,88.77400234669302,87.27465601014012,87.69158935546875,297933500,0.0,0 -2010-06-01,86.87374410903631,88.15660391497201,86.08799515415735,86.21627807617188,277909400,0.0,0 -2010-06-02,86.65726510660264,88.46930192933033,86.2002461037507,88.46128845214844,240243700,0.0,0 -2010-06-03,88.71789349067438,89.046623575269,87.85998009120401,88.76599884033203,226618300,0.0,0 -2010-06-04,87.08221234027506,87.65950079285012,85.35836657693513,85.64701080322266,398475600,0.0,0 -2010-06-07,85.9517154109026,86.28045159640891,84.5165195349979,84.58065795898438,264609100,0.0,0 -2010-06-08,84.6447912790007,85.65504625807267,83.90714750508245,85.4866714477539,357774300,0.0,0 -2010-06-09,85.983763986446,86.81762444007998,84.66883184110428,85.0296401977539,268023300,0.0,0 -2010-06-10,86.48089760969755,87.61943567348031,85.02164296138385,87.51520538330078,317890600,0.0,0 -2010-06-11,86.74549951010997,87.99628760883522,86.68937455996615,87.9401626586914,214128200,0.0,0 -2010-06-14,88.61365783558195,89.09473580491908,87.71565867609498,87.8038558959961,207196100,0.0,0 -2010-06-15,88.42120103781261,89.88045530591313,88.2688593234925,89.80027770996094,238268700,0.0,0 -2010-06-16,89.33528294046108,90.13707152786533,89.15888847248632,89.76824951171875,216374000,0.0,0 -2010-06-17,90.02478649016105,90.06487835075326,89.03859033804699,89.91253662109375,263185800,0.0,0 -2010-06-18,90.09059173060568,90.33226896099696,89.72001506032818,90.0100326538086,174006600,0.531,0 -2010-06-21,91.12982358580625,91.1942671617272,89.25276691445609,89.75224304199219,213140700,0.0,0 -2010-06-22,89.75223306324625,90.14697681177817,88.1410270653459,88.2699203491211,239355400,0.0,0 -2010-06-23,88.32631148647594,88.64049616142475,87.39181521249729,87.99601745605469,254639900,0.0,0 -2010-06-24,87.56100699998908,87.67379094756151,86.3123196780973,86.53788757324219,268523600,0.0,0 -2010-06-25,86.7956659302658,87.34347621883796,86.01423003298136,86.90039825439453,238726500,0.0,0 -2010-06-28,87.0292662286061,87.262891769374,86.31228025526316,86.62646484375,169218600,0.0,0 -2010-06-29,85.41002075927246,86.61037356187646,83.420186665812,83.9518814086914,373649500,0.0,0 -2010-06-30,83.71825461178192,84.49163268334712,82.88042683102063,83.15433502197266,284101700,0.0,0 -2010-07-01,83.09794472659335,83.37184677676629,81.47062334125796,82.78376007080078,382924800,0.0,0 -2010-07-02,83.0657126479247,83.31544757151387,81.86536608924689,82.33261108398438,233385200,0.0,0 -2010-07-06,83.4926947255283,84.08078762197763,82.0748317195271,82.87238311767578,256935300,0.0,0 -2010-07-07,83.08183662959847,85.58726249509384,82.9932198063484,85.48253631591797,253769400,0.0,0 -2010-07-08,86.19951549501782,86.42508333721022,85.32141123130272,86.32841491699219,210842100,0.0,0 -2010-07-09,86.30425598666517,86.98096577179568,86.14313782872463,86.97290802001953,144999900,0.0,0 -2010-07-12,86.6828645191091,87.19844984598576,86.32034569892647,87.0292739868164,131283600,0.0,0 -2010-07-13,87.93156325972059,88.68882585358891,87.75432962724203,88.34242248535156,213025900,0.0,0 -2010-07-14,88.06045003637307,88.68076770426518,87.69793119397752,88.33435821533203,184426800,0.0,0 -2010-07-15,88.30216667699764,88.66468565616522,87.14209610963803,88.35855865478516,232337900,0.0,0 -2010-07-16,87.88324607662688,87.97992066881473,85.75645421860906,85.9256362915039,282693400,0.0,0 -2010-07-19,86.23979301104049,86.70703802246373,85.57114112810376,86.43313598632812,186709000,0.0,0 -2010-07-20,85.28919088691451,87.45625875367986,85.24890827885122,87.39181518554688,258162400,0.0,0 -2010-07-21,87.84294390102042,87.86711100542935,85.90143789666949,86.25590515136719,264527000,0.0,0 -2010-07-22,87.2790273457948,88.56799708164976,87.27097574098653,88.18130493164062,274781300,0.0,0 -2010-07-23,88.00407218072723,89.07552567239244,87.75433721134033,88.9466323852539,222020800,0.0,0 -2010-07-26,89.09968404795792,89.96167894900267,88.84994910304466,89.87306213378906,184445700,0.0,0 -2010-07-27,90.36447535499758,90.46114991515681,89.5105382521759,89.86500549316406,204855600,0.0,0 -2010-07-28,89.67971685458036,89.95362504357746,88.98689785132376,89.28497314453125,163056200,0.0,0 -2010-07-29,89.84085634235623,90.08253973445234,88.14103943066584,88.84996795654297,220149100,0.0,0 -2010-07-30,87.94766224605607,89.30913303844164,87.7946018829932,88.83382415771484,220070600,0.0,0 -2010-08-02,90.21947263095895,90.98479912105891,89.85695376203873,90.83979034423828,188263200,0.0,0 -2010-08-03,90.6142207519322,90.84784019416168,90.10668696972905,90.4047622680664,146657300,0.0,0 -2010-08-04,90.65450488009515,91.12175609660795,90.3564357028043,91.00897216796875,158171700,0.0,0 -2010-08-05,90.42893193545606,90.96063283735398,90.29198090785066,90.91229248046875,140473800,0.0,0 -2010-08-06,90.01805919771566,90.686711026877,89.35746511786981,90.54170227050781,239728300,0.0,0 -2010-08-09,90.9686706084633,91.17812906641386,90.48531013695283,91.02506256103516,120800400,0.0,0 -2010-08-10,90.2516934686404,91.01701992466923,89.71999874147677,90.53365325927734,242916300,0.0,0 -2010-08-11,89.13997680541853,89.17220166428099,87.90740514868028,88.05241394042969,273406900,0.0,0 -2010-08-12,86.72315449679029,87.82682654995916,86.6828718927825,87.51264190673828,239542600,0.0,0 -2010-08-13,87.2387581964807,87.77851078451788,87.15014136605504,87.25486755371094,158698500,0.0,0 -2010-08-16,86.65871630199298,87.49654417731307,86.34453161703085,87.21458435058594,147895300,0.0,0 -2010-08-17,87.96378973192542,88.93051083160458,87.71404863326906,88.28602600097656,172270300,0.0,0 -2010-08-18,88.24575044073899,88.92245398816542,87.73822278016917,88.44715118408203,182922100,0.0,0 -2010-08-19,87.98794300650833,88.20545306855338,86.54591318800689,86.90843200683594,265847600,0.0,0 -2010-08-20,86.65063194343955,86.95676492953746,85.99809566677632,86.62646484375,209714200,0.0,0 -2010-08-23,87.03734927231542,87.46431788094797,86.25591337518951,86.29619598388672,163490300,0.0,0 -2010-08-24,85.35362579470561,85.70809304165506,84.56413838537948,85.01527404785156,280677800,0.0,0 -2010-08-25,84.54804480110582,85.66783264376258,84.01634993912268,85.34559631347656,272234800,0.0,0 -2010-08-26,85.7483842270813,85.86116815398641,84.49163938315388,84.77360534667969,224439500,0.0,0 -2010-08-27,85.30531779955439,86.17537068418238,84.03246333644279,86.08675384521484,272649000,0.0,0 -2010-08-30,85.86119326900167,86.1270438085825,84.83002212352255,84.83807373046875,167238600,0.0,0 -2010-08-31,84.52388896415137,85.37783256284145,84.17747933125464,84.83807373046875,273933100,0.0,0 -2010-09-01,85.98201964377861,87.49655122524072,85.92562767389076,87.3757095336914,256828100,0.0,0 -2010-09-02,87.58515174391611,88.20546329715435,87.39986036521438,88.1893539428711,156112200,0.0,0 -2010-09-03,89.0513455722883,89.41386441987736,88.5760366637975,89.33330535888672,212197300,0.0,0 -2010-09-07,88.91437903641268,89.02716293136872,88.25378501755822,88.32628631591797,141973700,0.0,0 -2010-09-08,88.50354826576431,89.30109353458232,88.46326565626042,88.9466323852539,149924400,0.0,0 -2010-09-09,89.94558348165197,89.96975059021192,89.11581330768763,89.35749053955078,147017900,0.0,0 -2010-09-10,89.51860669870844,89.913350443901,89.31720595067466,89.80862426757812,127819000,0.0,0 -2010-09-13,90.6947798625826,90.99284901481008,90.33225485421421,90.80756378173828,178503500,0.0,0 -2010-09-14,90.63034849163859,91.26677567637597,90.29199666570646,90.75119018554688,209823600,0.0,0 -2010-09-15,90.4853351702058,91.20232139966114,90.21143308086941,91.09759521484375,168608400,0.0,0 -2010-09-16,90.81561735279253,91.12980199116242,90.50948431808993,91.07341003417969,199962900,0.0,0 -2010-09-17,91.5528626801122,91.64195389289245,90.85633475064795,91.10740661621094,195836900,0.602,0 -2010-09-20,91.42330626069426,92.70297488939453,91.13173603696085,92.50049591064453,214555200,0.0,0 -2010-09-21,92.57339710433024,93.01074628697381,91.93356275163315,92.31422424316406,268389100,0.0,0 -2010-09-22,92.16844403428483,92.68678978424022,91.60149912209262,91.86067199707031,191322400,0.0,0 -2010-09-23,91.10744629025925,92.06314738784917,90.85637431536335,91.11554718017578,202354300,0.0,0 -2010-09-24,92.1279049690535,93.05930920017823,92.04691464007875,92.99451446533203,209671800,0.0,0 -2010-09-27,93.02693345160283,93.13222028582139,92.45999483786072,92.54907989501953,128761800,0.0,0 -2010-09-28,92.67058314273477,93.17273326505008,91.66628907727257,92.87306213378906,209207500,0.0,0 -2010-09-29,92.63817918433082,93.06743980538519,92.34660896358386,92.71107482910156,179665800,0.0,0 -2010-09-30,93.18080371453661,93.78013960209903,91.9983213554048,92.43567657470703,287106700,0.0,0 -2010-10-01,93.13220574769176,93.23749874464131,92.27369707256369,92.8244400024414,174638700,0.0,0 -2010-10-04,92.63007974853882,93.01883590358955,91.66627789139747,92.1279296875,166153200,0.0,0 -2010-10-05,92.97832648358145,94.20939565062022,92.87303348604424,93.98262023925781,229634100,0.0,0 -2010-10-06,93.96643219256067,94.21751030253563,93.59387165101265,93.97453308105469,148626600,0.0,0 -2010-10-07,94.35519417003393,94.37949065626071,93.29420641034822,93.86114501953125,164860000,0.0,0 -2010-10-08,93.99073908466241,94.64676896132725,93.63437412490981,94.3875961303711,177760100,0.0,0 -2010-10-11,94.53339370025054,94.73587269423525,94.15273220289231,94.47669982910156,103098300,0.0,0 -2010-10-12,94.16890737056943,95.04361791778693,93.66676352911163,94.76824951171875,182210000,0.0,0 -2010-10-13,95.29466779734976,96.01549215173235,95.06788624995153,95.50524139404297,194347200,0.0,0 -2010-10-14,95.41617497239876,95.57816183404498,94.53336974830292,95.13270568847656,217764300,0.0,0 -2010-10-15,95.79683238340782,95.85352623783098,94.56576318200483,95.32707977294922,243705000,0.0,0 -2010-10-18,95.35948159314283,96.11270351086054,95.01121756281816,95.79683685302734,141204800,0.0,0 -2010-10-19,94.91404923147407,95.44859052882573,93.96644290302244,94.54148864746094,280604700,0.0,0 -2010-10-20,94.71154559469149,95.92641916597623,94.65485174186486,95.46476745605469,200051800,0.0,0 -2010-10-21,95.89401179608313,96.45284937876531,94.93021021936917,95.67533111572266,221585500,0.0,0 -2010-10-22,95.82114876487064,95.99933125267779,95.57007681159766,95.85354614257812,108212400,0.0,0 -2010-10-25,96.49337361737558,96.99552366753697,96.06411920668697,96.13700866699219,151145700,0.0,0 -2010-10-26,95.65106343485192,96.25039945113971,95.46478624426072,96.15321350097656,158982900,0.0,0 -2010-10-27,95.4809582965591,95.9831082388497,94.9707136465296,95.87781524658203,190024000,0.0,0 -2010-10-28,96.42858424497227,96.46908251129014,95.43239115689845,95.89404296875,168576000,0.0,0 -2010-10-29,95.79683737318396,96.15320229335823,95.62675580105541,95.9669189453125,144305500,0.0,0 -2010-11-01,96.43666860325033,96.98741156326057,95.44857039448195,95.99931335449219,174074800,0.0,0 -2010-11-02,96.72012949071951,96.987403149413,96.46095671903178,96.76062774658203,158345900,0.0,0 -2010-11-03,96.93069380526062,97.20606212777858,95.93449495443879,97.14936828613281,226702800,0.0,0 -2010-11-04,98.22658166105705,99.06889478675654,97.1655940006007,99.02030181884766,215039400,0.0,0 -2010-11-05,99.08511129462568,99.55486401410766,98.95552795979816,99.39288330078125,180654100,0.0,0 -2010-11-08,99.08512299437679,99.36859854492238,98.76116152947131,99.20661163330078,156107100,0.0,0 -2010-11-09,99.47384798277743,99.57913480134776,98.09699373737104,98.49385070800781,186621600,0.0,0 -2010-11-10,98.46957825529903,98.93933096817214,97.72445709781148,98.89073181152344,221387400,0.0,0 -2010-11-11,98.04030300796973,98.66393541026775,97.74063195902995,98.51815032958984,158017600,0.0,0 -2010-11-12,97.85404065603683,98.28329510255202,96.90644051797486,97.35189056396484,239068800,0.0,0 -2010-11-15,97.65965142580673,98.0403128513048,97.173703167813,97.21419525146484,163940800,0.0,0 -2010-11-16,96.61486395477681,96.77684465556894,95.23800328137321,95.69966125488281,299566200,0.0,0 -2010-11-17,95.74016723747563,96.14512522740448,95.45669788035916,95.7482681274414,172308900,0.0,0 -2010-11-18,96.67153778109139,97.50574995768416,96.66343689398053,97.15748596191406,197723700,0.0,0 -2010-11-19,97.1089303102453,97.46528915088547,96.58248367075545,97.42479705810547,156852900,0.0,0 -2010-11-22,96.93883022131479,97.38428023203791,96.19370294193696,97.34378814697266,181361000,0.0,0 -2010-11-23,96.19368969630517,96.39616863125326,95.5619564079338,95.93451690673828,222309000,0.0,0 -2010-11-24,96.54197464852697,97.37619323192915,96.52577904905216,97.35189056396484,140046100,0.0,0 -2010-11-26,96.50956485766348,97.03600515794848,96.2179946899414,96.2179946899414,76007800,0.0,0 -2010-11-29,95.9750274673561,96.76874771292405,95.35948969604836,96.50957489013672,223642300,0.0,0 -2010-11-30,95.55386634692906,96.51766192232411,95.41617596830089,95.9669189453125,233930700,0.0,0 -2010-12-01,97.3518908456806,98.19420414167362,97.3437961355038,98.00792694091797,221037200,0.0,0 -2010-12-02,98.16180429050637,99.33618604920474,98.10511042485665,99.26329040527344,191213600,0.0,0 -2010-12-03,98.92313401905096,99.64395872298925,98.89883752912448,99.53057098388672,151288900,0.0,0 -2010-12-06,99.31997706687713,99.65204552671642,99.21469023235534,99.4252700805664,103050500,0.0,0 -2010-12-07,100.3809942830932,100.4376881577709,99.42529312483401,99.48198699951172,206581000,0.0,0 -2010-12-08,99.60344925205104,99.9274106334309,99.14179748650075,99.84642028808594,138019200,0.0,0 -2010-12-09,100.40528822371492,100.44578031650207,99.74115734615198,100.2352066040039,123705100,0.0,0 -2010-12-10,100.54294664361102,100.91550716909545,100.21088437968307,100.81832122802734,117571700,0.0,0 -2010-12-13,101.28000387492253,101.4014863383085,100.85074318067223,100.88314056396484,133812700,0.0,0 -2010-12-14,101.03700850010152,101.42577085083961,100.66444792769349,100.97221374511719,147249600,0.0,0 -2010-12-15,100.78594134362686,101.18279842324345,100.34048510587581,100.51056671142578,160823100,0.0,0 -2010-12-16,100.57537371312027,101.16661513891344,100.22710957007367,101.09371948242188,185035200,0.0,0 -2010-12-17,101.02283820396016,101.33222247607084,100.81115095900945,101.20195770263672,141075300,0.653,0 -2010-12-20,101.4787881486908,101.69047542267943,100.94143579061297,101.44622039794922,119085500,0.0,0 -2010-12-21,101.76375282276412,102.15455963774085,101.66605577776762,102.08942413330078,94965500,0.0,0 -2010-12-22,102.1626954690601,102.4395120246806,102.10570345986393,102.40694427490234,78878100,0.0,0 -2010-12-23,102.2929818801979,102.4069659226853,102.00802177397941,102.26041412353516,70053700,0.0,0 -2010-12-27,101.87775754893164,102.39882926699472,101.80448475029692,102.30113220214844,58126000,0.0,0 -2010-12-28,102.50466200015487,102.54536703437878,102.17899066804344,102.44766998291016,55309100,0.0,0 -2010-12-29,102.5697821592864,102.74889546406247,102.50464666027888,102.52092742919922,58033100,0.0,0 -2010-12-30,102.42325929668596,102.69193243550247,102.20342847841403,102.35812377929688,76616900,0.0,0 -2010-12-31,102.20341829266066,102.48024110814323,102.04058572708094,102.38253784179688,91218900,0.0,0 -2011-01-03,103.16415615938526,103.88877171205556,102.34183733011962,103.44097900390625,138725200,0.0,0 -2011-01-04,103.66890930136293,103.70147704835219,102.74075025298812,103.38394927978516,137409700,0.0,0 -2011-01-05,103.058309495029,103.98646882685885,102.96060622422314,103.92133331298828,133975300,0.0,0 -2011-01-06,103.96203611823842,104.07602015242183,103.40839671863438,103.71778106689453,122519000,0.0,0 -2011-01-07,103.85618855006605,104.02716460000141,102.70820472573888,103.51423645019531,156034600,0.0,0 -2011-01-10,103.05827802155515,103.53050103540552,102.7488875309885,103.38394927978516,122401700,0.0,0 -2011-01-11,103.75846392383075,104.00271269668293,103.35951370167959,103.75032043457031,110287000,0.0,0 -2011-01-12,104.38541988336375,104.80064481079931,103.77478220135505,104.68666076660156,107929200,0.0,0 -2011-01-13,104.72734135351982,104.77618986911266,104.25511833057996,104.5156478881836,129048400,0.0,0 -2011-01-14,104.36913024534532,105.2972895597366,104.29585745236598,105.27286529541016,117677900,0.0,0 -2011-01-18,105.1751363486865,105.54966237125502,105.05301504965678,105.45196533203125,114401300,0.0,0 -2011-01-19,105.36241495771947,105.46824928519786,104.14115216532181,104.41796875,151958400,0.0,0 -2011-01-20,104.18184539649644,104.54007821775494,103.50607857045368,104.27954864501953,175745700,0.0,0 -2011-01-21,104.9308851173736,105.16699041718083,104.40166387735849,104.5156478881836,151462900,0.0,0 -2011-01-24,104.4505387311527,105.23215244770584,104.42611446719748,105.11003112792969,113715500,0.0,0 -2011-01-25,104.83318503274019,105.25655957792797,104.30397616875037,105.16699981689453,167552200,0.0,0 -2011-01-26,105.42754348809922,105.88347957935986,105.21585000049483,105.57408905029297,141281500,0.0,0 -2011-01-27,105.59851512151607,106.01375240150587,105.41125831439287,105.83463287353516,123302700,0.0,0 -2011-01-28,105.9567447754349,106.12772700908107,103.81546654393472,103.98644256591797,295637300,0.0,0 -2011-01-31,104.27140864477339,104.84946599554195,104.0108666555123,104.7680435180664,149249200,0.0,0 -2011-02-01,105.40310838535557,106.63250824949345,105.33797288997187,106.44525146484375,167194300,0.0,0 -2011-02-02,106.16843690011102,106.52667596163596,106.1114510985014,106.2417221069336,118323600,0.0,0 -2011-02-03,106.05447720480325,106.64068445390983,105.49270664579528,106.47785186767578,145886700,0.0,0 -2011-02-04,106.51853840031667,106.81977923610722,106.03002833165301,106.77906799316406,134634800,0.0,0 -2011-02-07,107.01518159328616,107.79678276480915,107.00703189101768,107.44669342041016,112439100,0.0,0 -2011-02-08,107.5444209499403,107.99221988522595,107.25131732169243,107.93523406982422,99072800,0.0,0 -2011-02-09,107.64213046974052,107.98408263223082,107.15362028142287,107.69097900390625,146436700,0.0,0 -2011-02-10,107.14548978872931,107.85381842567128,106.9012346790949,107.73169708251953,162708500,0.0,0 -2011-02-11,107.30829513381762,108.5132709657619,107.2838708713904,108.37486267089844,137710300,0.0,0 -2011-02-14,108.30972612389556,108.72495100450112,108.18760481293147,108.63539123535156,101690700,0.0,0 -2011-02-15,108.30159910557701,108.464431676733,107.73167889486666,108.29344940185547,119575400,0.0,0 -2011-02-16,108.65982051743688,109.10760690934748,108.43998974935182,108.97734832763672,130183500,0.0,0 -2011-02-17,108.65985408202906,109.44959278861528,108.5621445864054,109.30304718017578,109810500,0.0,0 -2011-02-18,109.40070434404082,109.66124633955292,109.14831205046731,109.53097534179688,130002400,0.0,0 -2011-02-22,108.38302154732695,109.55543607076308,107.03963715283237,107.3327407836914,233116400,0.0,0 -2011-02-23,107.26761578051288,107.52815788830223,106.01379105093821,106.67327117919922,227584000,0.0,0 -2011-02-24,106.55926912948443,107.0152053178386,105.59853579831295,106.59996795654297,260431400,0.0,0 -2011-02-25,107.04775323044045,107.80494263656531,106.98261772278138,107.73980712890625,141686900,0.0,0 -2011-02-28,108.13873520682999,108.54582272845187,107.7804962000707,108.40740203857422,141585500,0.0,0 -2011-03-01,108.74940271306303,108.84709977533053,106.56740641023026,106.59996795654297,258565500,0.0,0 -2011-03-02,106.45338539610341,107.32455864322932,106.12772035274938,106.82791137695312,200277400,0.0,0 -2011-03-03,107.79678772401056,108.79008242698457,107.78865044469435,108.66796112060547,176480100,0.0,0 -2011-03-04,108.5865199538924,108.79821341296795,107.14543909322074,107.85376739501953,277202300,0.0,0 -2011-03-07,108.17134207927774,108.41559717928858,106.44529423964059,107.00706481933594,216790400,0.0,0 -2011-03-08,107.17802505399975,108.28530384589844,106.71395164050497,107.94335174560547,174615000,0.0,0 -2011-03-09,107.73166471079152,108.12246531477838,107.14545759314763,107.78865051269531,153806000,0.0,0 -2011-03-10,106.6569461073766,106.80349167318212,105.6880756779055,105.7939224243164,301291800,0.0,0 -2011-03-11,105.45196763833593,106.90933567304538,105.42754337799582,106.52667236328125,225621800,0.0,0 -2011-03-14,105.83465824162465,106.23359621227917,105.0774687058305,105.88350677490234,234974100,0.0,0 -2011-03-15,103.06643820132302,105.29728277832024,102.99316541306264,104.67036437988281,359585400,0.0,0 -2011-03-16,104.33654006015018,104.67850455422584,101.99986136503645,102.73262023925781,468670300,0.0,0 -2011-03-17,104.21442030176837,104.53194811669225,103.48166141668887,104.09229278564453,254303700,0.0,0 -2011-03-18,105.35401813760552,105.38673360708057,104.26646584617933,104.47089385986328,230435400,0.553,0 -2011-03-21,105.77110425878321,106.3107849617073,105.64843991202237,106.09001159667969,153992600,0.0,0 -2011-03-22,106.07361518577797,106.21262474625671,105.6238710328782,105.72199249267578,129538600,0.0,0 -2011-03-23,105.42762017540096,106.3025781539243,104.92882774842232,106.0245590209961,148603100,0.0,0 -2011-03-24,106.6296495169757,107.19387284471152,106.03272319627226,107.03850555419922,159129800,0.0,0 -2011-03-25,107.31656273432199,107.83171297951155,107.0303584490952,107.3656234741211,155642800,0.0,0 -2011-03-28,107.59458285739115,107.8726020368965,107.07124749943436,107.10395050048828,109762400,0.0,0 -2011-03-29,107.0139925278071,107.8562351027581,106.66238226793155,107.82353210449219,129798800,0.0,0 -2011-03-30,108.38775216317836,108.8865570930308,108.23238485231154,108.5676498413086,135835000,0.0,0 -2011-03-31,108.42862578002074,108.72300262514634,108.30596148279571,108.42044067382812,132537100,0.0,0 -2011-04-01,109.09096241258757,109.38533923572176,108.61668794879945,108.87834930419922,153850100,0.0,0 -2011-04-04,109.10731705170463,109.30357244310251,108.65758538869075,108.96830749511719,100768900,0.0,0 -2011-04-05,108.75570231940684,109.43440481611921,108.70664159292329,108.95195770263672,120791500,0.0,0 -2011-04-06,109.47531547134926,109.57343694453431,108.85384620171537,109.29541778564453,120411600,0.0,0 -2011-04-07,109.09915111693066,109.55706791432686,108.47769438864964,109.01738739013672,170731500,0.0,0 -2011-04-08,109.49983559348507,109.56525406191982,108.1914911793843,108.6412353515625,147945400,0.0,0 -2011-04-11,108.75572230479816,109.12369029833977,108.05248931561506,108.31416320800781,121385400,0.0,0 -2011-04-12,107.70904381819645,107.92164448225475,107.11211745108491,107.5046157836914,161187400,0.0,0 -2011-04-13,108.0033992461572,108.08516295734928,107.08756582612081,107.49642181396484,162059000,0.0,0 -2011-04-14,106.87499113124684,107.74176414057378,106.52338084445532,107.5782241821289,161220400,0.0,0 -2011-04-15,107.77447543219779,108.24056491952562,107.45556815856342,107.97071838378906,170006700,0.0,0 -2011-04-18,106.78502841359085,107.96253592514125,105.90189777992805,106.760498046875,210759300,0.0,0 -2011-04-19,106.92407311081125,107.40653292841476,106.66241162078194,107.37381744384766,124258800,0.0,0 -2011-04-20,108.65759622242362,109.07462493376588,108.58399264500065,108.83749389648438,156133800,0.0,0 -2011-04-21,109.40171968902082,109.4426077981958,108.83750870068282,109.39354705810547,135935400,0.0,0 -2011-04-25,109.31173283578221,109.45892748217776,108.91923457421869,109.2790298461914,65757100,0.0,0 -2011-04-26,109.61429958474217,110.44018423920586,109.49982040018982,110.21939849853516,146600000,0.0,0 -2011-04-27,110.43203305825098,111.10255056162586,109.98228886112882,110.93901062011719,143031000,0.0,0 -2011-04-28,110.74270132768606,111.44593396361917,110.72635607559558,111.29875183105469,124791100,0.0,0 -2011-04-29,111.33968203989198,111.67494699396566,111.1924873743465,111.56045532226562,115094100,0.0,0 -2011-05-02,112.08380847549431,112.1737448322531,111.16796239857256,111.38874816894531,126278700,0.0,0 -2011-05-03,111.17614276448013,111.36421305410519,110.42383665138692,110.9880599975586,138375000,0.0,0 -2011-05-04,110.93895773800423,110.98801844934093,109.76145075675657,110.25208282470703,182678500,0.0,0 -2011-05-05,109.63887292019436,110.35027866894053,108.77209982923921,109.25454711914062,226900000,0.0,0 -2011-05-06,110.34210349665264,110.90632699913591,109.31177797827452,109.73699188232422,222787200,0.0,0 -2011-05-09,109.72878401383022,110.48107761645832,109.55705899014637,110.16217041015625,114104500,0.0,0 -2011-05-10,110.53014308781383,111.2987944583766,110.39113352805407,111.1025390625,114806900,0.0,0 -2011-05-11,110.93899462900787,110.9553523639902,109.42623479148462,109.93321228027344,193564200,0.0,0 -2011-05-12,109.63886879992131,110.68553956596305,109.07464530565042,110.45658111572266,171550700,0.0,0 -2011-05-13,110.51380119717795,110.66916851486079,109.2136417659872,109.60614013671875,157444900,0.0,0 -2011-05-16,109.21365185057907,110.07225225364074,108.73120459228802,108.91110229492188,141675400,0.0,0 -2011-05-17,108.50222365924209,109.04191665528174,108.03612175976326,108.89472198486328,192686200,0.0,0 -2011-05-18,108.9519491640659,109.98226177136186,108.71480570158613,109.86778259277344,135217900,0.0,0 -2011-05-19,110.22762768030351,110.41569802785018,109.52439455762867,110.1294937133789,119489500,0.0,0 -2011-05-20,109.84330100682719,110.12949284173303,109.05011903250781,109.25454711914062,182594900,0.0,0 -2011-05-23,107.92163445524126,108.5267458729821,107.60272725013499,107.98705291748047,168700000,0.0,0 -2011-05-24,108.2977934094678,108.53492443040415,107.69268195867325,107.89710998535156,147199600,0.0,0 -2011-05-25,107.46371529203742,108.70664109217657,107.43101230029757,108.25689697265625,151050100,0.0,0 -2011-05-26,107.96254779150732,108.95198510788798,107.75811972820789,108.75572967529297,164850000,0.0,0 -2011-05-27,109.05824268478456,109.4670986744281,108.72299025602075,109.17272186279297,120921900,0.0,0 -2011-05-31,110.203070223645,110.32572205553163,109.4425914340562,110.30936431884766,164731200,0.0,0 -2011-06-01,109.99046288222613,110.32572787680262,107.74175434547313,107.83170318603516,233094300,0.0,0 -2011-06-02,107.90530690989051,108.13426532666247,107.08759471361982,107.71722412109375,200466800,0.0,0 -2011-06-03,106.42523320390612,107.46373114631949,106.36799984059377,106.6460189819336,234690200,0.0,0 -2011-06-06,106.37614767535679,106.59693340192165,105.37853806915349,105.51754760742188,179951200,0.0,0 -2011-06-07,106.05728571756389,106.35984776140934,105.36223772991858,105.45218658447266,161660500,0.0,0 -2011-06-08,105.28860872756974,105.64023142952877,104.81433419777431,105.01058959960938,198696400,0.0,0 -2011-06-09,105.2968080890392,106.24534479974312,105.0433192923296,105.81195831298828,160964400,0.0,0 -2011-06-10,105.36222679679354,105.4276327957733,104.06206109502158,104.34008026123047,238629400,0.0,0 -2011-06-13,104.57718887311954,104.8633930686687,103.89031377655567,104.42182159423828,207599800,0.0,0 -2011-06-14,105.37856342569305,106.11451186556411,105.3376877990037,105.74654388427734,160570400,0.0,0 -2011-06-15,104.86342275498397,105.73019573802156,103.58778741093602,103.86580657958984,300958000,0.0,0 -2011-06-16,103.89850167622994,104.64262271219522,103.29339644431924,104.09475708007812,308032800,0.0,0 -2011-06-17,105.12853980575493,105.13675922242294,104.05202819662854,104.40538787841797,233284900,0.628,0 -2011-06-20,104.05202678773271,105.16140977893184,104.01915539108367,104.93952941894531,159479000,0.0,0 -2011-06-21,105.48189486170781,106.58305840296956,104.98061704976699,106.37761688232422,193157300,0.0,0 -2011-06-22,106.0489160558263,106.67345376797195,105.67089813850434,105.73664093017578,176703000,0.0,0 -2011-06-23,104.49579655977067,105.71200706622203,103.69868231549414,105.43260955810547,334286500,0.0,0 -2011-06-24,105.40794446121768,105.49011355029934,104.05202909981071,104.20816040039062,226129300,0.0,0 -2011-06-27,104.27389241689602,105.53940660251635,104.06845090669336,105.13674926757812,168904700,0.0,0 -2011-06-28,105.55585020782958,106.5255407001987,105.40793833258891,106.50910186767578,165556300,0.0,0 -2011-06-29,106.9939427692399,107.59382850598958,106.52554261672876,107.4212646484375,244295500,0.0,0 -2011-06-30,107.76639613375352,108.62102728345198,107.4130427614146,108.4484634399414,223322700,0.0,0 -2011-07-01,108.54705495656985,110.19881244420296,108.29230953328283,110.05088806152344,202385700,0.0,0 -2011-07-05,109.93590404229123,110.18243646127303,109.61541565936281,109.96055603027344,165936000,0.0,0 -2011-07-06,109.69754345663854,110.23168631956469,109.38526837662745,110.09198760986328,143331600,0.0,0 -2011-07-07,111.06990984578799,111.51365802559745,110.8398163393452,111.23426055908203,170464200,0.0,0 -2011-07-08,109.97692773389934,111.23422851011918,109.61534874533771,110.44532775878906,194100500,0.0,0 -2011-07-11,109.08943993700387,109.44279330934279,108.19371797817998,108.4484634399414,195918600,0.0,0 -2011-07-12,108.21839123778648,109.11411337276088,107.94720689121353,107.98007202148438,214675700,0.0,0 -2011-07-13,108.54707053324621,109.47567014804062,108.07867042237544,108.34162902832031,204062600,0.0,0 -2011-07-14,108.61283614541256,109.11411402434561,107.38840000463324,107.59384155273438,226111800,0.0,0 -2011-07-15,108.19374706358008,108.36631095348048,107.46237560549105,108.21839904785156,220012800,0.0,0 -2011-07-18,107.71711031174561,107.88146103675996,106.52555188144588,107.33087921142578,196872100,0.0,0 -2011-07-19,107.93077400247064,109.20451417109398,107.90612201862018,109.07302856445312,166554900,0.0,0 -2011-07-20,109.35242361787917,109.41815387302842,108.81826811633346,109.00727081298828,137145400,0.0,0 -2011-07-21,109.62359069417786,110.79050956902417,109.02370496325092,110.51932525634766,245246300,0.0,0 -2011-07-22,110.54396539460379,110.70831608612423,109.91941521201053,110.59326934814453,126019400,0.0,0 -2011-07-25,109.54145459314832,110.51935853475906,109.42640780820348,109.97698974609375,136653800,0.0,0 -2011-07-26,109.9030129571861,110.08380251914532,109.31955345465286,109.56608581542969,131278200,0.0,0 -2011-07-27,108.9579766843797,108.99085435407707,107.18295869543184,107.32266998291016,249020100,0.0,0 -2011-07-28,107.32265108792404,108.2841158612082,106.83779958892723,107.0103759765625,207939900,0.0,0 -2011-07-29,105.93388192377606,107.28157796568648,105.161419703567,106.27902221679688,307038400,0.0,0 -2011-08-01,107.5198623511609,107.61848279954724,104.79981884883917,105.8270263671875,325790900,0.0,0 -2011-08-02,105.0299099459369,105.59693048946012,103.12341308593751,103.1234130859375,346653800,0.0,0 -2011-08-03,103.26312428986317,103.79726720379146,101.51275860036888,103.68222045898438,370830800,0.0,0 -2011-08-04,102.24411993907026,102.40847689394245,98.66121982735437,98.82557678222656,520721800,0.0,0 -2011-08-05,100.05824061830045,100.31298609928487,96.03158553367028,98.67767333984375,655619200,0.0,0 -2011-08-08,96.07265465550336,98.71052244976273,92.05421362490263,92.2514419555664,702263900,0.0,0 -2011-08-09,93.73885887616558,96.67256360551052,90.61614518500488,96.54108428955078,717828700,0.0,0 -2011-08-10,94.71676955018332,95.55496827647775,91.99671929172467,92.276123046875,662607400,0.0,0 -2011-08-11,93.07322108551764,97.72441349378184,92.30075902124277,96.41780853271484,487979700,0.0,0 -2011-08-12,97.29714070254174,97.96276946446356,96.37676009935733,97.06704711914062,313731600,0.0,0 -2011-08-15,97.9462885892643,99.22002208906405,97.79015104771344,99.12141418457031,258810600,0.0,0 -2011-08-16,98.17641647500167,99.17897231931353,97.22316460022023,98.2750244140625,294095200,0.0,0 -2011-08-17,98.81737750986811,99.59805282851818,97.56007632929915,98.34075164794922,238201100,0.0,0 -2011-08-18,95.7357538166127,98.37362233251507,93.18006065951285,94.1004409790039,512956300,0.0,0 -2011-08-19,92.82668556940071,95.22624075786362,92.44867396597795,92.563720703125,428281300,0.0,0 -2011-08-22,94.64281592443005,94.69212616191876,92.37474562647162,92.63771057128906,275090600,0.0,0 -2011-08-23,92.98284332322443,95.79328211792497,92.514436857441,95.68645477294922,331136600,0.0,0 -2011-08-24,95.48100412993472,97.16562085492123,95.25912377437707,97.03414154052734,246869700,0.0,0 -2011-08-25,97.56827730685366,98.11885900730404,95.21802610868205,95.55494689941406,312365400,0.0,0 -2011-08-26,95.07013772049736,97.38751825209931,93.55808458812182,96.94376373291016,314495900,0.0,0 -2011-08-29,98.25034139066918,99.78704607455086,97.0176923851874,99.72952270507812,190977200,0.0,0 -2011-08-30,99.29400794316038,100.60883256279878,98.00383530551858,99.99250793457031,241315700,0.0,0 -2011-08-31,100.63347852243993,101.49633545815392,99.68023308134042,100.4362564086914,301828400,0.0,0 -2011-09-01,100.49379016857397,101.40595115956711,99.25292144098877,99.38440704345703,254585900,0.0,0 -2011-09-02,97.313552666107,99.32688363371865,96.50000587717845,96.84514617919922,255517200,0.0,0 -2011-09-06,94.00180699000512,96.27810219387524,93.99358757498247,96.13839721679688,285130500,0.0,0 -2011-09-07,97.5929415142168,98.89132715704075,97.26423382797142,98.8502426147461,209803200,0.0,0 -2011-09-08,98.25857888216926,99.3844007713337,97.60116345047444,97.82304382324219,250568200,0.0,0 -2011-09-09,96.70542710132924,97.83946197084288,94.7331873664373,95.25911712646484,380195100,0.0,0 -2011-09-12,94.06757469345901,95.94941997931805,93.72243440598574,95.87545776367188,305793500,0.0,0 -2011-09-13,96.18773109888737,97.11632459842096,95.50566368448696,96.75474548339844,272514700,0.0,0 -2011-09-14,97.24777597017423,99.26932565074223,95.91651919221044,98.09420013427734,319389500,0.0,0 -2011-09-15,99.14608700634966,99.81993499690094,98.11887932138868,99.78706359863281,326777200,0.0,0 -2011-09-16,100.18766689726777,100.74935906934088,99.3864288854268,100.37764739990234,284528300,0.625,0 -2011-09-19,98.73390385868723,99.89033000668185,98.06483147608282,99.3781967163086,241517000,0.0,0 -2011-09-20,99.79944013369496,100.76587915466106,99.1303679348744,99.26252746582031,218932200,0.0,0 -2011-09-21,99.31210863693623,99.61773114585503,96.18150086726396,96.33843994140625,316251300,0.0,0 -2011-09-22,93.54650400201828,94.33948023334327,91.93577201682922,93.22435760498047,513911300,0.0,0 -2011-09-23,92.60482827867801,94.29816678144553,92.53048342193496,93.7860336303711,307242500,0.0,0 -2011-09-26,94.66986722735248,96.14843932496494,93.3234609561698,96.01627349853516,260673700,0.0,0 -2011-09-27,97.90787414300468,98.75867134109308,96.51190225370541,97.09011840820312,311753900,0.0,0 -2011-09-28,97.28835197674296,97.87482371684526,94.96724453602603,95.107666015625,286696800,0.0,0 -2011-09-29,96.68536977309181,97.16445522710043,94.10819240118728,95.8593521118164,298108900,0.0,0 -2011-09-30,94.53769371022003,95.36371115216869,93.39779190905553,93.46387481689453,288392300,0.0,0 -2011-10-03,92.9187261482416,94.1247111929839,90.70499853545057,90.80412292480469,365136800,0.0,0 -2011-10-04,89.4989918550771,92.99304853547078,88.7390572931141,92.7947998046875,459177500,0.0,0 -2011-10-05,93.02611144148204,94.76074727273948,92.16705231603707,94.512939453125,284108000,0.0,0 -2011-10-06,94.46337826621455,96.36322136810396,93.76126452926046,96.22279357910156,257800800,0.0,0 -2011-10-07,96.7844760935523,96.85055901090448,95.04157853597535,95.5784912109375,312657900,0.0,0 -2011-10-10,97.20575746277706,98.8164893621009,97.1974955216995,98.77519226074219,230666300,0.0,0 -2011-10-11,98.18869316656989,99.15513203728257,98.0895688072611,98.87428283691406,209088000,0.0,0 -2011-10-12,99.61771902722822,100.88978685845292,99.39469705320178,99.74162292480469,281544900,0.0,0 -2011-10-13,99.15515146479532,99.84074757148146,98.39521680057202,99.54338073730469,212538800,0.0,0 -2011-10-14,100.69981909225915,101.26976701004249,100.13812681388245,101.24498748779297,211397600,0.0,0 -2011-10-17,100.76586655195082,101.2284406074422,99.06427262850137,99.31208038330078,202311600,0.0,0 -2011-10-18,99.23774998339691,102.01316951234739,98.46129145386494,101.25323486328125,318857900,0.0,0 -2011-10-19,101.08803349375547,101.66624960568586,99.7085855886597,100.05551147460938,226601300,0.0,0 -2011-10-20,100.30332219107301,100.85675249691388,98.97343328765486,100.4933090209961,262075600,0.0,0 -2011-10-21,101.67452094623681,102.5253245150969,101.36889841466065,102.40142059326172,278999400,0.0,0 -2011-10-24,102.56660132216902,103.91301400988725,102.4757388842734,103.65694427490234,203215600,0.0,0 -2011-10-25,103.16130255919123,103.21086158173227,101.41840551036157,101.64143371582031,268596800,0.0,0 -2011-10-26,102.71528544032913,103.06221131356597,100.9476083124873,102.67398834228516,289053800,0.0,0 -2011-10-27,105.42463973219604,106.90321221281025,104.58210442750735,106.25066375732422,393220200,0.0,0 -2011-10-28,105.73025262430988,106.43237262475452,105.56505162539007,106.22586822509766,225906500,0.0,0 -2011-10-31,105.03639912513638,106.24237774088385,103.51652349181106,103.66520690917969,228146700,0.0,0 -2011-11-01,100.79891892205772,102.0214276483729,100.37764821408248,100.77413940429688,416565800,0.0,0 -2011-11-02,102.28575581188626,102.7565855682904,101.42669679454973,102.41791534423828,244717600,0.0,0 -2011-11-03,103.47520621813658,104.49121048426863,102.09575854873258,104.28470611572266,291174800,0.0,0 -2011-11-04,103.44217725971224,103.83040020213684,102.43443487253573,103.648681640625,249401600,0.0,0 -2011-11-07,103.57435400441754,104.40037166538396,102.59139097122282,104.2929916381836,196617200,0.0,0 -2011-11-08,104.83817299554175,105.74679757669732,103.83869225828604,105.63114929199219,224426300,0.0,0 -2011-11-09,103.16134497322358,103.91302406820756,101.4845301330465,101.73233795166016,337982000,0.0,0 -2011-11-10,103.07876588792045,103.20266982297507,101.61671079790469,102.69053649902344,231866500,0.0,0 -2011-11-11,103.93779409065966,104.89597121089984,103.90475263106323,104.6233901977539,189924400,0.0,0 -2011-11-14,104.23515960292683,105.27593720795016,103.18611375559172,103.63216400146484,159258300,0.0,0 -2011-11-15,103.39262331386132,104.69773265749937,103.02091790807236,104.14430236816406,184709400,0.0,0 -2011-11-16,103.09526077811664,104.35906677304713,102.34358799440598,102.49227142333984,235782500,0.0,0 -2011-11-17,102.30228976972586,102.5583595393054,100.13812745260005,100.86502075195312,331219600,0.0,0 -2011-11-18,101.18716343459845,101.3936678497711,100.33636625240948,100.75763702392578,215580400,0.0,0 -2011-11-21,99.28729908370106,99.4112029667383,98.00697576435175,98.84125518798828,229611600,0.0,0 -2011-11-22,98.62650401873714,99.20471382566036,97.89960448773165,98.45304107666016,216494900,0.0,0 -2011-11-23,97.52790519565806,98.45304724672827,96.2806167602539,96.2806167602539,224329100,0.0,0 -2011-11-25,96.13191841075157,97.22226130437397,95.9832350024388,96.098876953125,99557000,0.0,0 -2011-11-28,98.74213925814621,99.27078998906305,98.14740561036129,98.88256072998047,210686000,0.0,0 -2011-11-29,99.16341400146484,99.94812818958572,98.79996424594911,99.16341400146484,199241500,0.0,0 -2011-11-30,102.00490827248801,103.4339214459256,99.1221087087718,103.24393463134766,324439500,0.0,0 -2011-12-01,103.12830785894866,103.78086259359884,102.78138193987334,103.22743225097656,176954800,0.0,0 -2011-12-02,104.17733477186414,104.49121916941887,103.07046798740971,103.13655090332031,221109700,0.0,0 -2011-12-05,104.77205263926973,105.05290185549853,103.61563322542511,104.25992584228516,225263900,0.0,0 -2011-12-06,104.25168823432942,104.99510538960212,103.87998280770039,104.2929916381836,178842100,0.0,0 -2011-12-07,103.94604434012912,105.11899403794335,103.22741311270879,104.68120574951172,237802500,0.0,0 -2011-12-08,103.99561818390836,104.22690210599579,102.13707856454468,102.38488006591797,240862800,0.0,0 -2011-12-09,102.84743161257008,104.3838245311339,102.75656919142824,104.11949920654297,209111400,0.0,0 -2011-12-12,103.21092949380025,103.22745338019455,101.73236306433522,102.59967803955078,215826100,0.0,0 -2011-12-13,103.1365230479207,103.72299458870049,101.14581828236179,101.64143371582031,245159800,0.0,0 -2011-12-14,101.23671374892237,101.624943024296,100.33635760136573,100.55937957763672,238618800,0.0,0 -2011-12-15,101.62495004284877,101.76537153027343,100.76589093422778,100.92283630371094,199109200,0.0,0 -2011-12-16,101.60446625747416,102.20296550106893,100.8313975997671,101.07245635986328,220481400,0.77,0 -2011-12-19,101.46315763586144,101.67928608303225,99.77570810068075,99.99183654785156,183903000,0.0,0 -2011-12-20,101.5628948606091,103.19215644553279,100.05832298892588,103.01759338378906,225418100,0.0,0 -2011-12-21,103.0176022975239,103.37504279068399,102.03671952619965,103.21710205078125,194230900,0.0,0 -2011-12-22,103.59945863288054,104.23952946277674,103.26696122418706,104.13146209716797,119465400,0.0,0 -2011-12-23,104.46397918199679,105.09573575472086,104.24785710715575,105.06248474121094,92187200,0.0,0 -2011-12-27,104.87958240358803,105.419900146199,104.78814372367013,105.14558410644531,86075700,0.0,0 -2011-12-28,105.16225819895007,105.17888053794108,103.68262269139026,103.7657470703125,119107100,0.0,0 -2011-12-29,104.1065412114843,104.94611188229779,103.79066608853643,104.83805084228516,123507200,0.0,0 -2011-12-30,104.75493580840326,105.01262962234586,104.32268524169922,104.32268524169922,95599000,0.0,0 -2012-01-03,106.2013274306267,106.71670872051925,105.92701127591049,105.98519897460938,193697900,0.0,0 -2012-01-04,105.73579246824193,106.24285928812462,105.32847868147746,106.15142059326172,127186500,0.0,0 -2012-01-05,105.57788001385367,106.59200752219506,105.09574976665293,106.43406677246094,173895000,0.0,0 -2012-01-06,106.56706574392865,106.58369442309598,105.81062573337087,106.15975189208984,148050000,0.0,0 -2012-01-09,106.40080601493293,106.55042606008847,105.91036784385933,106.41743469238281,99530200,0.0,0 -2012-01-10,107.55627868025881,107.77240080534185,107.19052378860472,107.34015655517578,115282000,0.0,0 -2012-01-11,107.00761633775517,107.53961984445027,106.8330596236637,107.39830780029297,111540700,0.0,0 -2012-01-12,107.70587662929499,107.81393131492239,106.84967103663088,107.65599060058594,118983700,0.0,0 -2012-01-13,106.93281133319678,107.27362946483764,106.16805704919892,107.09906005859375,179836200,0.0,0 -2012-01-17,108.1298284845244,108.32933457651292,107.14893938720425,107.51469421386719,132209200,0.0,0 -2012-01-18,107.48974468191003,108.76156574180708,107.29855929409884,108.70338439941406,163395200,0.0,0 -2012-01-19,109.07746381111946,109.3684086193403,108.72833765163394,109.27696990966797,126328900,0.0,0 -2012-01-20,109.09407268437697,109.68425750732422,108.82806460127253,109.68425750732422,138230200,0.0,0 -2012-01-23,109.31850351875161,109.93363770236795,108.87793872641952,109.4016342163086,129295800,0.0,0 -2012-01-24,108.72833765163394,109.3102145841098,108.56208891149309,109.27696990966797,103083300,0.0,0 -2012-01-25,109.11071692380148,110.4490403139801,108.6867807010617,110.19135284423828,198613200,0.0,0 -2012-01-26,110.68178513357577,110.88959923460312,109.19384175116511,109.6260986328125,184880500,0.0,0 -2012-01-27,109.09410264011576,109.76741834490726,109.01927991872014,109.57623291015625,135259100,0.0,0 -2012-01-30,108.48724469284438,109.26031957301176,108.11318193068232,109.2021255493164,147311800,0.0,0 -2012-01-31,109.74243735960182,109.87542870001572,108.62854451040702,109.16056060791016,157212000,0.0,0 -2012-02-01,109.96691386918971,110.67348694891929,109.83392247255443,110.11654663085938,166234500,0.0,0 -2012-02-02,110.3326496430373,110.57372108287998,109.9004054818798,110.29108428955078,113090400,0.0,0 -2012-02-03,111.38836160587252,111.90373653353787,111.19717617850739,111.83723449707031,160598500,0.0,0 -2012-02-06,111.37171392539327,111.81227874335829,111.24703055576707,111.76240539550781,107694500,0.0,0 -2012-02-07,111.5296386618722,112.23621147903891,111.0890739070618,112.04501342773438,135528100,0.0,0 -2012-02-08,112.10322448886068,112.40247726252016,111.64603098966361,112.3775405883789,139361400,0.0,0 -2012-02-09,112.560409953082,112.71002998724909,111.85383707894573,112.51884460449219,148602900,0.0,0 -2012-02-10,111.52137330975117,111.77906079121632,111.25536514567915,111.6876220703125,167907500,0.0,0 -2012-02-13,112.48559993599847,112.65184864639419,112.00346979707638,112.51884460449219,115841900,0.0,0 -2012-02-14,112.21959986284135,112.44404261407708,111.59615764138111,112.3775405883789,165329500,0.0,0 -2012-02-15,112.74329400228768,112.90954272250791,111.62940094048719,111.85384368896484,195195100,0.0,0 -2012-02-16,111.86213652363499,113.1921386382827,111.6626304986553,113.09239196777344,186567800,0.0,0 -2012-02-17,113.48312419471293,113.574562903586,113.01762265280117,113.39168548583984,129869400,0.0,0 -2012-02-21,113.65766564192663,113.92367373521654,113.09241746963156,113.44154357910156,134042300,0.0,0 -2012-02-22,113.26697579757437,113.50804722105156,112.87628433246104,113.07579040527344,124455300,0.0,0 -2012-02-23,113.01759145811545,113.65764955959484,112.63520804910867,113.57453155517578,137704300,0.0,0 -2012-02-24,113.82389068603516,114.04833338257517,113.57452400539223,113.82389068603516,105539100,0.0,0 -2012-02-27,113.0674973154985,114.32268989368795,112.88461989563436,114.01512908935547,145728900,0.0,0 -2012-02-28,114.04838053735357,114.48063743579247,113.82393774801479,114.3476333618164,129355900,0.0,0 -2012-02-29,114.51386422489514,114.87131103237573,113.49973051617994,113.89874267578125,185934700,0.0,0 -2012-03-01,114.13982643354214,114.70508744151911,113.82394490896772,114.48895263671875,145023500,0.0,0 -2012-03-02,114.41411712767243,114.56374985799187,113.88211360069201,114.13980102539062,120638300,0.0,0 -2012-03-05,113.96526887824409,114.04838691615302,113.28363247396736,113.67432403564453,140765000,0.0,0 -2012-03-06,112.51056926264141,112.57705861892626,111.68762078398495,112.01181030273438,202129900,0.0,0 -2012-03-07,112.26949437880678,112.97606743660057,112.1614269811763,112.7931900024414,143692200,0.0,0 -2012-03-08,113.48311534697554,114.14812293384446,113.25036459416613,113.91535949707031,116968900,0.0,0 -2012-03-09,114.13147616394527,114.65515893276982,113.9901641352807,114.35591888427734,122836800,0.0,0 -2012-03-12,114.33930587958561,114.51386259846291,113.95692240305648,114.36424255371094,104003500,0.0,0 -2012-03-13,114.97938801473278,116.48396002583353,114.78818991580061,116.42576599121094,184090500,0.0,0 -2012-03-14,116.4590118923263,116.74994398492093,115.94362436482064,116.30107116699219,145163600,0.0,0 -2012-03-15,116.47565205712684,117.02428436931032,116.17639922175103,116.97441101074219,165118500,0.0,0 -2012-03-16,117.18645971472641,117.28664354847612,116.88589547392569,117.13636779785156,152893500,0.614,0 -2012-03-19,117.06120040049153,117.95453575175367,116.97770540038925,117.59553527832031,125291100,0.0,0 -2012-03-20,116.92763232312653,117.39517382406389,116.58532060295796,117.25324249267578,121729700,0.0,0 -2012-03-21,117.32006555120942,117.42859380873664,116.81912082266322,117.06124877929688,122388400,0.0,0 -2012-03-22,116.20125499326683,116.51017633477863,115.83391007667261,116.21795654296875,135216700,0.0,0 -2012-03-23,116.31816055644482,116.72725300373766,115.67528461699108,116.59366607666016,120521000,0.0,0 -2012-03-26,117.42857079022858,118.2300796508789,117.38683602065868,118.2300796508789,120164000,0.0,0 -2012-03-27,118.33863830687712,118.41377619079019,117.78760167907522,117.86273956298828,119868500,0.0,0 -2012-03-28,117.80431101373759,117.98798990180298,116.58535227835402,117.2783203125,148562100,0.0,0 -2012-03-29,116.5853011140216,117.29497039188091,116.1261040953802,117.07788848876953,164963700,0.0,0 -2012-03-30,117.65401137138376,117.76255236031011,116.92765303516016,117.56217193603516,135486800,0.0,0 -2012-04-02,117.4202349172735,118.73103290953497,117.18646413666862,118.42211151123047,151741100,0.0,0 -2012-04-03,118.25513200997075,118.45551242086836,117.24489828857911,117.9378662109375,155806700,0.0,0 -2012-04-04,117.06958434708798,117.16976818941095,116.3348688645791,116.7690200805664,146896000,0.0,0 -2012-04-05,116.36822660502114,117.05283715991722,116.26803006220757,116.71052551269531,137439400,0.0,0 -2012-04-09,115.24113213303329,116.75229760180858,115.08249925141813,115.39976501464844,127555900,0.0,0 -2012-04-10,115.17432953477906,115.49993967769618,113.34589844780245,113.46278381347656,235360300,0.0,0 -2012-04-11,114.62330259529476,114.83202738989142,114.1724626443682,114.38118743896484,154133000,0.0,0 -2012-04-12,114.4897708075925,115.96753372811763,114.4062757630131,115.87569427490234,154321500,0.0,0 -2012-04-13,115.60850257636397,115.9007224157755,114.38954404055379,114.49808502197266,169246700,0.0,0 -2012-04-16,115.08250790784845,115.24948520753735,114.03053945421223,114.42294311523438,147825300,0.0,0 -2012-04-17,115.08252567972832,116.35157628453233,114.96564027794068,116.11780548095703,147877600,0.0,0 -2012-04-18,115.60017302165274,116.11780655728853,115.53337954293305,115.72540283203125,123884200,0.0,0 -2012-04-19,115.74209940741433,116.17623789108566,114.43965847729454,114.98233795166016,198666700,0.0,0 -2012-04-20,115.49162036020505,115.90907000537044,115.10756108124993,115.17435455322266,143199600,0.0,0 -2012-04-23,113.99714675348487,114.30606816262922,113.49621480870508,114.20587158203125,171844900,0.0,0 -2012-04-24,114.30606004230849,114.93223448346409,114.21422061469028,114.6400146484375,137484200,0.0,0 -2012-04-25,115.75878772777942,116.25973242471242,115.65860388421395,116.20964050292969,150252200,0.0,0 -2012-04-26,115.95915226675324,117.15306477705788,115.89235880034344,117.01947784423828,136291600,0.0,0 -2012-04-27,117.37012732707721,117.54544901934564,116.71890699097949,117.21149444580078,130725000,0.0,0 -2012-04-30,116.97773942358653,117.06123444797349,116.46010594313319,116.77735900878906,115092200,0.0,0 -2012-05-01,116.71055867812551,118.27182891345191,116.57698448232944,117.50372314453125,138832200,0.0,0 -2012-05-02,116.81910119969741,117.26995392756666,116.43505467993629,117.15306854248047,121081000,0.0,0 -2012-05-03,117.16975696805255,117.2615963945707,116.04265063120424,116.25971984863281,143759700,0.0,0 -2012-05-04,115.65023775718662,116.30145809716413,114.31439397594787,114.38118743896484,193927300,0.0,0 -2012-05-07,113.97207573419888,114.84872236925598,113.93034096930784,114.46467590332031,127765900,0.0,0 -2012-05-08,113.78005157476865,114.18915673167739,112.64458825679402,114.00547790527344,213377700,0.0,0 -2012-05-09,112.79490383351437,114.05559722724517,112.28561473599744,113.32923889160156,220752500,0.0,0 -2012-05-10,114.11402738233006,114.25597147062004,113.30418680177851,113.56300354003906,150600000,0.0,0 -2012-05-11,112.85334536695476,114.27267173613141,112.80325344350372,113.220703125,153032400,0.0,0 -2012-05-14,112.13533059496574,113.22070230692434,111.80137594800303,111.96835327148438,163910000,0.0,0 -2012-05-15,111.89322345774377,112.55278839191337,111.15016348603437,111.32548522949219,207629300,0.0,0 -2012-05-16,111.8264121770658,112.33570125006904,110.87462750254933,110.89967346191406,207265500,0.0,0 -2012-05-17,110.92469629170336,111.05828320682836,109.19644901859084,109.25489807128906,247992900,0.0,0 -2012-05-18,109.68069349425181,109.87272946463654,108.16118371797225,108.31981658935547,319615900,0.0,0 -2012-05-21,108.67048274331168,110.22339576223317,108.49514830620973,110.18164825439453,177861100,0.0,0 -2012-05-22,110.46551954333643,111.23362533720477,109.65566623837216,110.3736801147461,197531200,0.0,0 -2012-05-23,109.58055080396754,110.59078472535471,108.52858210248903,110.4321517944336,204958400,0.0,0 -2012-05-24,110.73271073348677,110.90803247212514,109.72247686106387,110.64921569824219,167357600,0.0,0 -2012-05-25,110.60746764394604,110.91638908120908,110.0230406187309,110.29021453857422,135465600,0.0,0 -2012-05-29,111.17516717164946,111.81803030593206,109.51371337703705,111.62600708007812,152883500,0.0,0 -2012-05-30,110.67426976847479,111.61771022972559,109.78093397577345,110.00634765625,162370400,0.0,0 -2012-05-31,109.96459398312004,110.58241132065383,108.8207732628447,109.76421356201172,196186000,0.0,0 -2012-06-01,108.04430296233892,109.78923914293614,107.00067901611328,107.00067901611328,253240900,0.0,0 -2012-06-04,107.192722495644,107.48494235158519,106.14909835235767,106.95060729980469,202545800,0.0,0 -2012-06-05,106.7418677969647,107.91907242672274,106.6834251042785,107.76045227050781,164149400,0.0,0 -2012-06-06,108.51184985725533,110.23174016798059,108.47844675516413,110.18164825439453,184202800,0.0,0 -2012-06-07,111.43403751418889,111.48412944596343,110.02305531794745,110.24848175048828,184772700,0.0,0 -2012-06-08,109.96457459392671,111.15012987911817,109.61390573392973,111.12508392333984,143915400,0.0,0 -2012-06-11,112.01845199517328,112.08524547653147,109.6055932166573,109.7141342163086,169756100,0.0,0 -2012-06-12,110.03136750195695,111.04994561491408,109.50538963281144,110.97480773925781,181931800,0.0,0 -2012-06-13,110.64917553715853,111.34214331159784,109.88941430667758,110.26512908935547,172223900,0.0,0 -2012-06-14,110.49054279832997,111.87647834879942,110.18997861557212,111.4339828491211,230615500,0.0,0 -2012-06-15,111.93587805476706,112.6743876337005,111.7008959879843,112.57368469238281,169444500,0.688,0 -2012-06-18,112.10368931253721,113.06879304599761,111.85191922385577,112.7918472290039,131360900,0.0,0 -2012-06-19,113.36253515013851,114.34442704201564,112.76667965734491,113.88285064697266,137382600,0.0,0 -2012-06-20,113.89125794542448,114.21855526240611,112.68277160408911,113.69822692871094,206451800,0.0,0 -2012-06-21,113.83249037559399,113.94998137564158,111.05465738438699,111.14697265625,205272200,0.0,0 -2012-06-22,111.7260525055019,112.2128046474157,111.29803946739906,112.00299835205078,130029200,0.0,0 -2012-06-25,110.81968491931745,110.86164873842189,109.81261728860927,110.2070541381836,146375700,0.0,0 -2012-06-26,110.52596612865622,111.09664597440499,109.87975908151115,110.76094818115234,141634000,0.0,0 -2012-06-27,111.13020175344258,111.97781461303003,110.75255296671789,111.7596206665039,108088000,0.0,0 -2012-06-28,111.02111456400068,111.60858254629109,110.17350158083337,111.44072723388672,169242100,0.0,0 -2012-06-29,113.46324129361,114.36121837906984,113.16952016519187,114.21855163574219,212250900,0.0,0 -2012-07-02,114.53750736168124,114.68017417833265,113.7318579493478,114.56268310546875,129524500,0.0,0 -2012-07-03,114.53745365019151,115.40185459638575,114.41996263242416,115.31793975830078,80450000,0.0,0 -2012-07-05,114.88996088209635,115.64527148292136,114.37803283691076,114.79764556884766,126177500,0.0,0 -2012-07-06,113.68986931561508,113.94163950415346,113.16955365004915,113.70665740966797,151192100,0.0,0 -2012-07-09,113.61431630891455,113.7737711523095,113.04363649074111,113.56396484375,103780500,0.0,0 -2012-07-10,114.1430319538739,114.32766254999783,112.18763540806128,112.57368469238281,167884800,0.0,0 -2012-07-11,112.63243318647847,112.95973054136941,111.93587465056966,112.59046936035156,141733400,0.0,0 -2012-07-12,111.93586944578936,112.64920323453096,111.28127476644474,112.04496002197266,143583200,0.0,0 -2012-07-13,112.33866979744334,114.0422956865576,112.32188171027555,113.9248046875,129642600,0.0,0 -2012-07-16,113.66465807657914,113.99195537778557,113.21146931764117,113.65625762939453,97525200,0.0,0 -2012-07-17,114.10943217072594,114.67171142296834,112.91773412492826,114.43672943115234,138860300,0.0,0 -2012-07-18,114.16821439558778,115.51098011798982,114.10108763447437,115.28438568115234,113349700,0.0,0 -2012-07-19,115.51934726164446,115.96413560707573,115.15009891879562,115.58648681640625,129847300,0.0,0 -2012-07-20,114.9318925174113,115.10813544989739,114.40318933107454,114.52906799316406,142904500,0.0,0 -2012-07-23,112.85059520344633,114.45351814650509,112.32187931617733,113.37091064453125,145210900,0.0,0 -2012-07-24,113.4548932241988,113.5052447034579,111.64216313748464,112.3974609375,173301200,0.0,0 -2012-07-25,112.63242899793455,112.92615015877641,111.82676710516888,112.42262268066406,129122300,0.0,0 -2012-07-26,114.04230832009195,114.52067281567835,113.51359236298275,114.27729034423828,156526500,0.0,0 -2012-07-27,114.8815659530768,116.71108400720945,114.25214689508152,116.38377380371094,236768900,0.0,0 -2012-07-30,116.24950747023354,116.93766564808203,116.03970111756846,116.38377380371094,106782000,0.0,0 -2012-07-31,116.22427372944183,116.54317051856087,115.5696792602539,115.5696792602539,120575900,0.0,0 -2012-08-01,116.40051925865774,116.42569498731032,115.3095240633304,115.46897888183594,138293800,0.0,0 -2012-08-02,114.59617234987027,115.45218540583653,113.7821231035649,114.67169952392578,199556600,0.0,0 -2012-08-03,116.28304979638884,117.18941461245068,114.70530221225587,116.946044921875,157825000,0.0,0 -2012-08-06,117.25652742142935,117.63417614058282,117.12224833733444,117.17259979248047,86326200,0.0,0 -2012-08-07,117.64258223838318,118.26361349558805,117.51670358076882,117.76008605957031,109545100,0.0,0 -2012-08-08,117.365659703505,118.03702967832669,117.33208352142707,117.90276336669922,89754700,0.0,0 -2012-08-09,117.73486745640217,118.2384075693906,117.61737647077915,118.00342559814453,90291700,0.0,0 -2012-08-10,117.52510462991646,118.23845125260323,117.33208639770166,118.19648742675781,99792700,0.0,0 -2012-08-13,117.9950743341687,118.19648019700846,117.52509744123371,118.13774108886719,79426900,0.0,0 -2012-08-14,118.5741077858652,118.64964777647911,117.80202223677468,118.15449523925781,102379400,0.0,0 -2012-08-15,118.02866053252659,118.49023706672384,117.95313331935706,118.288818359375,71085900,0.0,0 -2012-08-16,118.45663167702175,119.30425732328695,118.16291054080612,119.16159057617188,112014200,0.0,0 -2012-08-17,119.36301637933163,119.42176829973106,119.05250710168441,119.32105255126953,90813700,0.0,0 -2012-08-20,119.15319432347704,119.35461298826245,118.8258969966762,119.32943725585938,78255700,0.0,0 -2012-08-21,119.62313087994801,120.08470721040793,118.70837866493693,118.96853637695312,105581100,0.0,0 -2012-08-22,118.6664883023571,119.21199259620556,118.38955513822725,119.01897430419922,133243500,0.0,0 -2012-08-23,118.7252034843578,118.73359112730391,117.86080245512558,118.0454330444336,111466400,0.0,0 -2012-08-24,117.75169082276142,119.02731676713044,117.67616362485057,118.75875854492188,99481200,0.0,0 -2012-08-27,119.07765420833769,119.23710903329953,118.61607782175321,118.78392028808594,68785900,0.0,0 -2012-08-28,118.48179706026733,119.03568871637938,118.30556695504205,118.66642761230469,75689600,0.0,0 -2012-08-29,118.76715899284142,119.07766823240433,118.4314612150807,118.75875854492188,65421300,0.0,0 -2012-08-30,118.24683599684882,118.28041217892675,117.65099322336036,117.90276336669922,96589900,0.0,0 -2012-08-31,118.5740792365682,119.01888020999044,117.79360623446254,118.4649887084961,151970400,0.0,0 -2012-09-04,118.36429889562838,118.71678469587705,117.60061380991198,118.35591125488281,120226200,0.0,0 -2012-09-05,118.40631872045095,118.72522849745505,118.02028217461232,118.25526428222656,100660300,0.0,0 -2012-09-06,118.96855991656776,120.66379840861217,118.96017227455717,120.65541076660156,158272500,0.0,0 -2012-09-07,120.8567927940281,121.17570240540655,120.74770224715478,121.12535095214844,107272100,0.0,0 -2012-09-10,121.0079052385629,121.21771157601638,120.39527431875625,120.43722534179688,86458500,0.0,0 -2012-09-11,120.51276851419524,121.15896283048393,120.47919232820759,120.7729263305664,88760000,0.0,0 -2012-09-12,121.17575073242188,121.31002986503492,120.76452569088052,121.17575073242188,87640900,0.0,0 -2012-09-13,121.15891493112585,123.3996442513348,120.84001812369439,123.0219955444336,225470200,0.0,0 -2012-09-14,123.26543661821336,124.29768032296136,123.1647208577171,123.56755828857422,169777000,0.0,0 -2012-09-17,123.31573827191602,123.5255445469654,122.8373738181352,123.14789581298828,119427800,0.0,0 -2012-09-18,122.93810486572332,123.2066502723779,122.73668620656208,123.04719543457031,98326600,0.0,0 -2012-09-19,123.18986893508001,123.50877862817545,122.87097204754565,123.11434173583984,128318300,0.0,0 -2012-09-20,122.55208465410402,123.18989135078952,122.21639961491447,123.12276458740234,154009800,0.0,0 -2012-09-21,123.72090740551309,123.74621752697459,123.02063067260434,123.07125091552734,108737500,0.779,0 -2012-09-24,122.46382086701884,123.16409782073383,122.3710127677573,122.88567352294922,95682000,0.0,0 -2012-09-25,123.14720339491429,123.38343979556063,121.5441559631932,121.57791137695312,133165200,0.0,0 -2012-09-26,121.55260256867763,121.58634510888433,120.6076440819504,120.89450073242188,146502200,0.0,0 -2012-09-27,121.4007066899368,122.31190959543835,121.08009468413549,122.03348541259766,111830300,0.0,0 -2012-09-28,121.56948697079609,121.96602947012782,121.03796141499097,121.46824645996094,150696100,0.0,0 -2012-10-01,121.93227721385388,122.91941073764333,121.50197932923217,121.78884887695312,135911200,0.0,0 -2012-10-02,122.26972931754617,122.46377786644008,121.3500939402697,121.91537475585938,113422200,0.0,0 -2012-10-03,122.24444665339091,122.70004179962547,121.60323533211863,122.4131851196289,121283100,0.0,0 -2012-10-04,122.87720640520098,123.46779738194249,122.70846796526308,123.2906265258789,124311600,0.0,0 -2012-10-05,123.94872884720102,124.1596551383954,122.92783993329584,123.299072265625,124842100,0.0,0 -2012-10-08,122.84351574811005,123.28223330245157,122.59883396403191,122.87725830078125,78415400,0.0,0 -2012-10-09,122.78442968920386,122.88567020423815,121.62011227062531,121.66230010986328,148872900,0.0,0 -2012-10-10,121.64539204318147,121.76352311313698,120.72575659732249,120.88606262207031,124247500,0.0,0 -2012-10-11,121.72977467674481,121.90695841791438,120.92825738098982,120.95356750488281,123601500,0.0,0 -2012-10-12,121.03794784450976,121.45135513335012,120.29548318450722,120.5570297241211,124181900,0.0,0 -2012-10-15,120.8438730707595,121.68757813726411,120.45577594956124,121.56102752685547,107689100,0.0,0 -2012-10-16,122.1347349012874,122.87719944365148,122.05037212305686,122.7928237915039,108815500,0.0,0 -2012-10-17,122.87723566323619,123.45096194433508,122.69161947293252,123.3497085571289,128834100,0.0,0 -2012-10-18,123.02909088134764,123.61968191026232,122.61567072414793,123.02909088134766,148108500,0.0,0 -2012-10-19,122.80124159718596,122.80967401094667,120.69197950473658,120.97883605957031,185645200,0.0,0 -2012-10-22,120.7764093260967,121.21513968963046,120.04238983000698,120.99578094482422,125578600,0.0,0 -2012-10-23,119.6880277203142,119.85676619615094,118.81901233953054,119.3167953491211,192056300,0.0,0 -2012-10-24,119.74703262493362,119.8904737897908,118.79365482350673,118.9792709350586,120179400,0.0,0 -2012-10-25,119.82302936673113,120.04238810839139,118.5996592661531,119.32523345947266,134457400,0.0,0 -2012-10-26,119.21551786412167,119.67111289497169,118.44774323217861,119.25770568847656,146023500,0.0,0 -2012-10-31,119.67955818419256,119.8314189031704,118.69241201517063,119.25770568847656,103438500,0.0,0 -2012-11-01,119.51080721615247,120.65824652261904,119.40113432122726,120.50638580322266,100995600,0.0,0 -2012-11-02,121.22355690951149,121.25731232689341,119.30835537547631,119.43490600585938,137702200,0.0,0 -2012-11-05,119.25771290843223,119.94954434885388,118.90334546153059,119.6795654296875,98378500,0.0,0 -2012-11-06,120.04237028783378,121.08856933089285,119.91581966218594,120.61609649658203,107068100,0.0,0 -2012-11-07,119.51929769073777,119.53616252776892,117.32565872807737,117.88250732421875,264304500,0.0,0 -2012-11-08,117.86562650375578,118.46466292451413,116.37226453492748,116.46507263183594,181517300,0.0,0 -2012-11-09,116.11070667527598,117.64625633424284,116.05165400511869,116.56631469726562,201055300,0.0,0 -2012-11-12,116.92908996801286,117.11470612508346,116.39756449450931,116.65911102294922,97677500,0.0,0 -2012-11-13,116.0431935983942,117.4859349815425,115.89133286012496,116.25411987304688,123018300,0.0,0 -2012-11-14,116.60847369683651,116.79407695280506,114.42326796299132,114.684814453125,191505000,0.0,0 -2012-11-15,114.72702774328783,115.15732562804028,114.0520610187879,114.49079132080078,178128400,0.0,0 -2012-11-16,114.65954877504082,115.28389535155262,113.64710495755486,115.05609130859375,239483900,0.0,0 -2012-11-19,116.34694552198098,117.40157705453672,115.08983297448339,117.38471221923828,151495800,0.0,0 -2012-11-20,117.1990739748662,117.62935892452921,116.49879722421785,117.43531036376953,119807400,0.0,0 -2012-11-21,117.53654489747001,117.75591644313607,117.30030852053503,117.6546630859375,81710800,0.0,0 -2012-11-23,118.22838456901624,119.29988063891497,118.15244133561082,119.25770568847656,65409200,0.0,0 -2012-11-26,118.66714120974746,119.2661776166481,118.27904399450543,119.00463104248047,100124400,0.0,0 -2012-11-27,118.88652165891416,119.29149661438359,118.32124063021763,118.39717102050781,128646200,0.0,0 -2012-11-28,117.91621598378153,119.41800997891632,117.27500476500053,119.35052490234375,177086500,0.0,0 -2012-11-29,119.7976909835983,120.23640836344747,119.27458507082727,119.90736389160156,151085900,0.0,0 -2012-11-30,119.92424580602722,120.16048221082512,119.51927095121918,119.93267822265625,136568300,0.0,0 -2012-12-03,120.48108615271235,120.58232664110739,119.24927109026298,119.34207916259766,124656300,0.0,0 -2012-12-04,119.33366114445097,119.6964481875828,118.85274301871526,119.17335510253906,127512200,0.0,0 -2012-12-05,119.27461442301978,119.94114882098971,118.43090912102731,119.3843002319336,147300500,0.0,0 -2012-12-06,119.27460017655794,119.83988111650375,119.09742929369715,119.78926086425781,103220600,0.0,0 -2012-12-07,120.25327905998714,120.38827495695654,119.52769220617326,120.15203857421875,108726400,0.0,0 -2012-12-10,119.9833618521277,120.48957741525355,119.93272870928357,120.20272064208984,98840700,0.0,0 -2012-12-11,120.70042986474242,121.58632265007223,120.64137721180899,121.02104187011719,152570400,0.0,0 -2012-12-12,121.49354406787572,121.95758448458547,120.91138544272341,121.08012390136719,145880100,0.0,0 -2012-12-13,121.00417543161537,121.35009758815482,120.0339197840622,120.33765411376953,135715000,0.0,0 -2012-12-14,120.07612672756062,120.29548543852654,119.70489439060344,119.89051055908203,137701700,0.0,0 -2012-12-17,120.20268018323708,121.36699747220128,120.16892476603601,121.29949951171875,143238200,0.0,0 -2012-12-18,121.4935270067035,122.75908457969,121.31634328196175,122.64939880371094,177762800,0.0,0 -2012-12-19,122.78439623467172,122.82658406241495,121.69602237283445,121.73819732666016,150895400,0.0,0 -2012-12-20,121.81415063578797,122.4553618991705,121.47666085986143,122.43848419189453,168487000,0.0,0 -2012-12-21,120.8002767714874,122.43167800379047,120.60485194275552,121.32707977294922,245883800,1.022,0 -2012-12-24,121.06369783558785,121.1316745185716,120.81729370434498,120.9532470703125,53874600,0.0,0 -2012-12-26,121.19969687188484,121.25918135387047,120.10360323815611,120.44347381591797,106947700,0.0,0 -2012-12-27,120.47742256088112,120.72383968244985,118.88850795062692,120.28199768066406,167920600,0.0,0 -2012-12-28,119.50026732037898,120.16302374131229,118.84600312245344,118.9819564819336,148806700,0.0,0 -2012-12-31,118.66756671779832,121.13165958739943,118.5655952232788,121.00421142578125,243935200,0.0,0 -2013-01-02,123.29836600986344,124.18203682718861,122.97548005486739,124.1055679321289,192059000,0.0,0 -2013-01-03,124.04609985864309,124.36897285729549,123.49379423805142,123.8251724243164,144761800,0.0,0 -2013-01-04,124.02907193570266,124.57287223489902,123.77416270931208,124.36894226074219,116817700,0.0,0 -2013-01-07,123.9271781000424,124.14809263007554,123.57029721773166,124.02913665771484,110002500,0.0,0 -2013-01-08,123.80822511884921,123.97816037415171,123.18794263741312,123.67227172851562,121265100,0.0,0 -2013-01-09,123.94412337192104,124.32649377278616,123.74869854307796,123.98661041259766,90745600,0.0,0 -2013-01-10,124.67487079700045,124.98075937390578,124.0291117858563,124.9722671508789,130735400,0.0,0 -2013-01-11,124.93830354643886,125.0317698839927,124.57294338660151,124.96380615234375,113917300,0.0,0 -2013-01-14,124.81083038458623,124.96378116328381,124.41996769700496,124.8788070678711,89567200,0.0,0 -2013-01-15,124.30103659908877,125.08276213057326,124.22456767706178,124.96380615234375,93172600,0.0,0 -2013-01-16,124.70887306193406,125.1422098362331,124.57291969403471,124.94678497314453,104849500,0.0,0 -2013-01-17,125.49904277380965,126.11081979385847,125.03171130499135,125.75395202636719,133833500,0.0,0 -2013-01-18,125.728489475854,126.17033141109862,125.2696501293853,126.03437805175781,169906000,0.0,0 -2013-01-22,126.03435760691417,126.71411132812499,125.73696130225198,126.714111328125,111797300,0.0,0 -2013-01-23,126.7141051250376,127.02848585755275,126.48468550024975,126.91802215576172,104596100,0.0,0 -2013-01-24,126.73109894725383,127.57229565692032,126.61214301545267,126.9520263671875,146426400,0.0,0 -2013-01-25,127.35145920059473,127.6658401489258,126.91810928237395,127.66584014892578,147211600,0.0,0 -2013-01-28,127.6997140880467,127.73370889791988,127.0369579129526,127.5127944946289,113357700,0.0,0 -2013-01-29,127.25789188622086,128.17555732210647,127.17291782234888,128.0141143798828,105694400,0.0,0 -2013-01-30,127.99711033094175,128.2520195441059,127.39382562529396,127.5127944946289,137447700,0.0,0 -2013-01-31,127.35992173138648,127.77627413322413,127.11351755248933,127.19847869873047,108975800,0.0,0 -2013-02-01,128.00567728501704,128.65994162223598,127.78476275274838,128.5070037841797,131173000,0.0,0 -2013-02-04,127.72523873720253,128.53244058061475,126.96900318696004,127.06246948242188,159073600,0.0,0 -2013-02-05,127.75078590472053,128.71092595575442,127.69979365813737,128.34556579589844,113912400,0.0,0 -2013-02-06,127.89521010137898,128.52397175306646,127.80174377947583,128.4390106201172,138762800,0.0,0 -2013-02-07,128.4814804793323,128.60043642172752,127.3343951335586,128.26905822753906,162490000,0.0,0 -2013-02-08,128.48998212858336,129.0592722493282,128.48998212858336,128.98280334472656,103133700,0.0,0 -2013-02-11,128.93181627487797,129.06775666420356,128.6344199324507,128.95730590820312,73775000,0.0,0 -2013-02-12,128.96580872095888,129.40765067691905,128.82136313184674,129.16973876953125,65392700,0.0,0 -2013-02-13,129.4331479302927,129.67105985168314,128.914837037572,129.2801971435547,82322600,0.0,0 -2013-02-14,128.88936415202073,129.55212072849162,128.7449185356339,129.399169921875,80834300,0.0,0 -2013-02-15,129.5180790218717,129.65403236405254,128.7703615703258,129.24618530273438,215226500,0.0,0 -2013-02-19,129.46712842645644,130.24034864543884,129.28870096990798,130.21485900878906,95105400,0.0,0 -2013-02-20,130.12134616483766,130.16383319913965,128.52392702468472,128.59190368652344,160574800,0.0,0 -2013-02-21,128.2690581351041,128.65990781759587,127.4023717181491,127.81021881103516,183257000,0.0,0 -2013-02-22,128.4304754080036,129.0592498779297,127.8696905729063,129.0592498779297,106356600,0.0,0 -2013-02-25,129.6880592380169,129.883484112441,126.60368347167967,126.60368347167969,245824800,0.0,0 -2013-02-26,127.21541241373204,127.62325942106473,126.37421580621216,127.47032165527344,186596200,0.0,0 -2013-02-27,127.3598879599458,129.433131263868,127.24942423737146,129.07626342773438,150781900,0.0,0 -2013-02-28,129.0677083395837,129.89190741577372,128.65136917433887,128.82130432128906,126866000,0.0,0 -2013-03-01,128.379498952862,129.4416101288541,127.80171669642999,129.24618530273438,170634800,0.0,0 -2013-03-04,128.94882097351046,129.93446350097656,128.74490387488132,129.93446350097656,99010200,0.0,0 -2013-03-05,130.56324587891032,131.44691694420823,130.54624846460797,131.09854125976562,121431900,0.0,0 -2013-03-06,131.56586874691124,131.6338454367394,130.98808633121374,131.2769775390625,94469900,0.0,0 -2013-03-07,131.44691588669076,131.68482782409646,131.2939780548849,131.514892578125,86101400,0.0,0 -2013-03-08,132.09268100701928,132.2541110547811,131.41292709375085,132.07568359375,123477800,0.0,0 -2013-03-11,131.9736934403287,132.58545755401846,131.81225046600076,132.57696533203125,83746800,0.0,0 -2013-03-12,132.48351683411178,132.63646760700803,131.8802448613338,132.2795867919922,105755800,0.0,0 -2013-03-13,132.3475662643578,132.65345485137635,131.89723208975084,132.46652221679688,92550900,0.0,0 -2013-03-14,132.81486988871413,133.23122211720766,132.47499951479298,133.17173767089844,126329900,0.0,0 -2013-03-15,133.01299891048646,133.17514689845436,132.55211887722143,132.9959259033203,138601100,0.694,0 -2013-03-18,131.7242585812972,132.8337696750472,131.60477357260962,132.26194763183594,126704300,0.0,0 -2013-03-19,132.5435457168981,132.72276665366158,131.08411011740156,131.95465087890625,167567300,0.0,0 -2013-03-20,132.7313920560421,133.09837716961218,132.50948196607638,132.87648010253906,113759300,0.0,0 -2013-03-21,132.08277622308773,132.83383264682402,131.51949692818096,131.74139404296875,128605000,0.0,0 -2013-03-22,132.15953578861115,132.7996368408203,132.057110764693,132.7996368408203,111163600,0.0,0 -2013-03-25,133.1495624683059,133.3714725237475,131.7328152252639,132.24488830566406,151322300,0.0,0 -2013-03-26,132.79113644098754,133.33735565991722,132.64604838533833,133.30322265625,86856600,0.0,0 -2013-03-27,132.50949032488256,133.34589867800412,132.28759324381198,133.30322265625,99950600,0.0,0 -2013-03-28,133.21786219550572,133.86650643024004,132.92768610254177,133.71287536621094,102932800,0.0,0 -2013-04-01,133.64461354351718,133.91772968232866,132.85942417877555,133.18374633789062,99194100,0.0,0 -2013-04-02,133.6616625446891,134.17374870151374,133.45682547738087,133.8408966064453,101504300,0.0,0 -2013-04-03,133.91767402948938,134.02008602753668,132.13392894142493,132.4838409423828,154167400,0.0,0 -2013-04-04,132.65456255311975,133.28613374020298,132.36438647644306,133.0215606689453,131885000,0.0,0 -2013-04-05,131.39141587566786,132.58627907019016,131.23779786341095,132.4241180419922,159666000,0.0,0 -2013-04-08,132.51806523912927,133.32885775603563,132.07425794727342,133.32032775878906,86571200,0.0,0 -2013-04-09,133.5677608994966,134.26761100950992,133.12395383029033,133.7811279296875,101922200,0.0,0 -2013-04-10,134.13961259962494,135.59050612074486,134.10547959732844,135.41981506347656,135711100,0.0,0 -2013-04-11,135.44536716440595,136.30737816740128,135.30880916075884,135.8635711669922,110142500,0.0,0 -2013-04-12,135.42827568338703,135.73552463823475,134.77964478888015,135.53070068359375,116359900,0.0,0 -2013-04-15,134.8479611927825,134.9589162142532,132.37290888637472,132.3899688720703,217259000,0.0,0 -2013-04-16,133.38849792569928,134.41266986673554,133.0641889657325,134.34439086914062,147507800,0.0,0 -2013-04-17,133.38861757812555,133.4142336202281,131.67315017698735,132.38153076171875,226834800,0.0,0 -2013-04-18,132.60332035397752,132.63746636714544,131.0500153499332,131.55355834960938,167583200,0.0,0 -2013-04-19,131.86080957358513,132.75695360244933,131.5364875574714,132.69720458984375,149687600,0.0,0 -2013-04-22,132.95329594216142,133.6019271873377,132.074224600545,133.28614807128906,106553500,0.0,0 -2013-04-23,133.95179155070085,134.78818649156332,133.2860875944999,134.66017150878906,166141300,0.0,0 -2013-04-24,134.7029141869496,135.10404536204715,134.45540106722027,134.74559020996094,96781200,0.0,0 -2013-04-25,135.13814752125762,135.9318796948375,134.93332349418475,135.29177856445312,131060600,0.0,0 -2013-04-26,135.12960441285395,135.36004444383656,134.61751834909023,135.05279541015625,95918800,0.0,0 -2013-04-29,135.41978467340425,136.25617978234536,135.20641764397817,135.9574737548828,88572800,0.0,0 -2013-04-30,135.9318720234848,136.31593007546283,135.36857993504228,136.2817840576172,116010700,0.0,0 -2013-05-01,135.98308878753105,136.05136780573508,134.93332655628737,135.08694458007812,138874200,0.0,0 -2013-05-02,135.4283506138329,136.46105304044264,135.3003355713535,136.34156799316406,96407600,0.0,0 -2013-05-03,137.5278575826486,138.1594287037838,136.367140374251,137.72415161132812,144202300,0.0,0 -2013-05-06,137.82658137822852,138.2703754563188,137.76683235451006,138.07408142089844,66882100,0.0,0 -2013-05-07,138.37277949602188,138.81657350676764,137.98017846186633,138.77391052246094,90359200,0.0,0 -2013-05-08,138.62031308369163,139.44817833687043,138.54350406586485,139.40550231933594,97419200,0.0,0 -2013-05-09,139.34576102305218,139.71274610955396,138.66298383709753,139.01290893554688,106738600,0.0,0 -2013-05-10,139.10677018079915,139.58471023270238,138.69709611669091,139.46522521972656,103203000,0.0,0 -2013-05-13,139.28595015587447,139.806566063946,138.96164122927405,139.5761260986328,81843200,0.0,0 -2013-05-14,139.68714630695584,141.1209797326209,139.68714630695584,141.0185546875,119000900,0.0,0 -2013-05-15,140.78809366008565,142.05975270550303,140.74541765349224,141.77810668945312,120718500,0.0,0 -2013-05-16,141.48795484334184,141.98296795400407,140.89905971129727,141.1124267578125,109913600,0.0,0 -2013-05-17,141.63305854026027,142.56333584048392,141.44529447672434,142.47799682617188,129801000,0.0,0 -2013-05-20,142.34140638293707,143.02418345651492,142.1963183710213,142.46942138671875,85071200,0.0,0 -2013-05-21,142.59746162103826,143.21195973757605,142.1024485258889,142.6742706298828,95804200,0.0,0 -2013-05-22,142.81937542711958,144.29588489261843,140.9673508666494,141.61598205566406,244031800,0.0,0 -2013-05-23,140.1053306757658,141.59889989611773,139.91756664623318,141.206298828125,211064400,0.0,0 -2013-05-24,140.36994272779896,141.14660206375268,139.95173854161763,141.08685302734375,151573900,0.0,0 -2013-05-28,142.5633208216793,143.1948919709372,141.5135585936955,141.9317626953125,143679800,0.0,0 -2013-05-29,141.18073134675348,141.50505348352445,140.25898397610962,141.01004028320312,160363400,0.0,0 -2013-05-30,141.120993754714,142.1792861506126,141.01003870434658,141.53065490722656,107793800,0.0,0 -2013-05-31,141.13801632939766,141.9402784316058,139.22625610921455,139.49935913085938,176850100,0.0,0 -2013-06-03,139.82369472712534,140.36138385259952,138.8251385104526,140.2675018310547,168390700,0.0,0 -2013-06-04,140.3443025881466,140.90759468428584,138.8848663432204,139.59324645996094,157631500,0.0,0 -2013-06-05,139.192068138453,139.47371409090502,137.51927844998679,137.63876342773438,211737800,0.0,0 -2013-06-06,137.57909740158178,138.89344597237675,136.7683050619555,138.88490295410156,200225500,0.0,0 -2013-06-07,139.8407581748285,140.77956530318926,139.23479007304107,140.65155029296875,188337800,0.0,0 -2013-06-10,141.08681435060862,141.1636233567409,140.2845522255197,140.65155029296875,105667100,0.0,0 -2013-06-11,139.37132881502248,140.42962081412134,138.8933888124761,139.2006378173828,159505400,0.0,0 -2013-06-12,140.15652911309758,140.3016171239236,137.92044691124232,138.0484619140625,177361500,0.0,0 -2013-06-13,137.97161880733825,140.39546442944203,137.6643698536289,140.14796447753906,163587800,0.0,0 -2013-06-14,139.9943586678199,140.54057768122235,139.0384786500878,139.26890563964844,141197500,0.0,0 -2013-06-17,140.21627128505543,141.01000340618256,139.3030671712915,140.34429931640625,136295600,0.0,0 -2013-06-18,140.42109433738167,141.6671633948316,140.41256434529708,141.45379638671875,114695600,0.0,0 -2013-06-19,141.33432336999056,141.5818233903215,139.43962313542355,139.49935913085938,206149500,0.0,0 -2013-06-20,138.14233802007078,139.51642209080495,135.68434588785342,136.0428009033203,321255900,0.0,0 -2013-06-21,136.96859740979673,137.07155132460528,135.10677326347604,136.47955322265625,271956800,0.839,0 -2013-06-24,135.0553351941176,135.93046990557767,133.61391451275344,134.75503540039062,222329000,0.0,0 -2013-06-25,135.97333909535422,137.36328247072734,135.0638778929277,136.05056762695312,162262200,0.0,0 -2013-06-26,137.1659388517193,137.706473122511,136.63399280224223,137.39759826660156,134848000,0.0,0 -2013-06-27,138.22123439146375,138.83898394899634,138.0925289300959,138.20407104492188,129483700,0.0,0 -2013-06-28,137.8180150955773,138.47865354595322,137.1573635534006,137.63783264160156,160402900,0.0,0 -2013-07-01,138.35856277640627,139.40530481554723,138.20413186496086,138.44436645507812,131954800,0.0,0 -2013-07-02,138.2384147801725,139.2508429780779,137.70646874759527,138.31564331054688,154863700,0.0,0 -2013-07-03,137.68926632120096,138.79607299385276,137.4661951980277,138.3756561279297,75216400,0.0,0 -2013-07-05,139.39672778351817,139.92009879595173,138.39288759740202,139.86862182617188,122416900,0.0,0 -2013-07-08,140.58928847196466,141.04401904071122,139.92006185789236,140.66650390625,108092500,0.0,0 -2013-07-09,141.5501885952184,141.85048821483977,140.9410273213069,141.67889404296875,119298000,0.0,0 -2013-07-10,141.5416501493302,142.21087675731476,141.2499386723727,141.73040771484375,121410100,0.0,0 -2013-07-11,143.377752290954,143.8067444271735,141.72183583741017,143.660888671875,135592200,0.0,0 -2013-07-12,143.6179628419337,144.08126851124186,143.39489168142217,143.72091674804688,104212700,0.0,0 -2013-07-15,144.11561916398747,144.47597098708334,143.8667963937873,144.27005004882812,69450600,0.0,0 -2013-07-16,144.36439200780708,144.45019564980421,143.3434019821083,143.7294921875,88702100,0.0,0 -2013-07-17,144.2786321568449,144.55318030441754,143.90969212791236,144.09844970703125,92873900,0.0,0 -2013-07-18,144.40730260238456,145.2309731034876,144.31292382717274,144.8877716064453,103620100,0.0,0 -2013-07-19,144.5874876774384,145.19664907169175,144.4073052517107,145.14517211914062,103831700,0.0,0 -2013-07-22,145.3511140277873,145.63425039953708,145.00791247484787,145.42832946777344,79428600,0.0,0 -2013-07-23,145.68574914654394,145.71148763038846,145.04226086682584,145.11947631835938,80829700,0.0,0 -2013-07-24,145.67710897669951,145.73717414545297,144.29575410514659,144.5874786376953,112914000,0.0,0 -2013-07-25,144.3301085462538,145.06797550940425,144.08987400865138,144.93927001953125,111088600,0.0,0 -2013-07-26,144.3300532968082,145.1365602608005,143.72946718270603,145.09365844726562,107814600,0.0,0 -2013-07-29,144.72475265892322,145.0507908084501,144.23570852643135,144.6475372314453,79695000,0.0,0 -2013-07-30,145.0851175040837,145.23954835903953,144.3043488259001,144.6475372314453,85209600,0.0,0 -2013-07-31,144.9479126156556,145.72868170165762,144.56182218480134,144.75057983398438,142388700,0.0,0 -2013-08-01,145.84873615210742,146.55227637525593,145.77150762577918,146.423583984375,110438400,0.0,0 -2013-08-02,146.09753076694182,146.68954188765642,145.9001980906364,146.67237854003906,91116700,0.0,0 -2013-08-05,146.3464024512219,146.68101583682568,146.15764483967075,146.4579315185547,54072700,0.0,0 -2013-08-06,146.17473486536744,146.4921978585935,145.29960058167788,145.62562561035156,87495000,0.0,0 -2013-08-07,145.1623968173373,145.36830471456483,144.6132872717235,145.15380859375,84854700,0.0,0 -2013-08-08,145.8401303132917,146.01172451100337,144.93924441055776,145.68569946289062,102181300,0.0,0 -2013-08-09,145.49697925106017,145.9431347530284,144.75911222895175,145.26531982421875,91757700,0.0,0 -2013-08-12,144.53597414669835,145.26525260960975,144.46733386340162,145.09365844726562,68593300,0.0,0 -2013-08-13,145.3510803697125,145.77148417348707,144.49309632374306,145.52267456054688,80806000,0.0,0 -2013-08-14,145.4540161511214,145.6856754803858,144.74188791063898,144.77621459960938,79829200,0.0,0 -2013-08-15,143.6351417688328,143.65229202717921,142.50259631155694,142.7514190673828,152931800,0.0,0 -2013-08-16,142.47688902299961,142.9659464207414,141.99641984811143,142.27955627441406,130868200,0.0,0 -2013-08-19,142.11651353442582,142.6055708509288,141.36148318970587,141.3700714111328,96437600,0.0,0 -2013-08-20,141.6016989259217,142.59696368596204,141.44726806236332,142.0650177001953,89294400,0.0,0 -2013-08-21,141.67033412624545,142.45110281979856,140.8724151763364,141.1898651123047,159530500,0.0,0 -2013-08-22,141.48161791951625,142.68280389720988,141.47304278883223,142.4768829345703,101471400,0.0,0 -2013-08-23,142.8972843339676,143.1375188848245,142.22805764346617,142.95733642578125,90888900,0.0,0 -2013-08-26,143.10315565112418,143.54073590060966,142.33097523360524,142.42535400390625,89702100,0.0,0 -2013-08-27,141.018289979151,142.42538360677483,140.03161334148695,140.1345672607422,158619400,0.0,0 -2013-08-28,140.07453492507787,141.1298652121032,139.89436552413454,140.63223266601562,108113000,0.0,0 -2013-08-29,140.32330914788915,141.60169714167827,140.19460367141303,140.85525512695312,119200500,0.0,0 -2013-08-30,141.14697029927393,141.1641336482812,139.9972746599763,140.4091033935547,134928900,0.0,0 -2013-09-03,141.76470985306008,142.0650095262109,140.4519952211465,141.04400634765625,142375100,0.0,0 -2013-09-04,141.0783159368212,142.4510957010197,140.82093118635734,142.2108612060547,97389400,0.0,0 -2013-09-05,142.29667346794224,142.7685542669009,142.1937064697231,142.39105224609375,63090500,0.0,0 -2013-09-06,142.8629398878228,143.26619349634873,141.12123306452978,142.45968627929688,159756500,0.0,0 -2013-09-09,142.81148528420482,143.90970414983926,142.81148528420482,143.82391357421875,87559300,0.0,0 -2013-09-10,144.69043892802003,144.91351008224868,144.36440077877947,144.8877716064453,105847200,0.0,0 -2013-09-11,144.6904811586644,145.34254455566406,144.4416714560126,145.34254455566406,94545900,0.0,0 -2013-09-12,145.29106478446195,145.47982238633446,144.7591186838042,144.95645141601562,83209000,0.0,0 -2013-09-13,145.11081551304838,145.39395175997467,144.77620232882546,145.28240966796875,72727800,0.0,0 -2013-09-16,146.85256750740552,146.9212078091367,145.89161637496812,146.12327575683594,106299200,0.0,0 -2013-09-17,146.2519892334123,146.80967371426527,146.2519892334123,146.77536010742188,82523300,0.0,0 -2013-09-18,146.72387178907866,148.87742048722902,146.3549448710145,148.4741668701172,203460600,0.0,0 -2013-09-19,148.87743347646472,148.94607378874903,148.0795013014852,148.22535705566406,146616900,0.0,0 -2013-09-20,148.5771448977787,148.5771448977787,147.06835362052905,147.18905639648438,132867100,0.838,0 -2013-09-23,146.99072820181772,147.12866480308577,146.04234006777727,146.50790405273438,104616500,0.0,0 -2013-09-24,146.48203745696424,147.0252063925584,145.88715380799522,146.1630401611328,106333100,0.0,0 -2013-09-25,146.25789036855488,146.55102375273214,145.61126564460366,145.74058532714844,117306500,0.0,0 -2013-09-26,145.98201279192446,146.71484629653384,145.74922419370057,146.30101013183594,77146900,0.0,0 -2013-09-27,145.56813631472124,145.82678880275918,145.24913903432125,145.6284942626953,99141800,0.0,0 -2013-09-30,144.39562244856486,145.30951671159139,144.11110596289555,144.85256958007812,143937000,0.0,0 -2013-10-01,144.9646552895872,146.1372020981331,144.81808858297083,145.99925231933594,127160000,0.0,0 -2013-10-02,145.14575666158618,145.99929320121413,144.69742633276402,145.86134338378906,113350000,0.0,0 -2013-10-03,145.52504464236634,145.65437748131566,143.84382298093544,144.5163116455078,176698000,0.0,0 -2013-10-04,144.6284131817001,145.75784905753508,144.4387355217995,145.6112823486328,96878000,0.0,0 -2013-10-07,144.3438611015148,145.23189121953888,144.19729442875095,144.35247802734375,96295000,0.0,0 -2013-10-08,144.3266222382282,144.51629986206373,142.56780891020455,142.6712646484375,178015000,0.0,0 -2013-10-09,142.94718039103319,143.29204166138078,141.85222546647756,142.77474975585938,168973000,0.0,0 -2013-10-10,144.23178439303123,145.93025293700728,144.18005652356806,145.8526611328125,195955000,0.0,0 -2013-10-11,145.62848776399198,146.84414519459295,145.50778502904228,146.7924041748047,105040000,0.0,0 -2013-10-14,145.88717899027398,147.49942591154138,145.77509315104493,147.37872314453125,112106000,0.0,0 -2013-10-15,147.0079533439402,147.5597391831557,146.11130628856952,146.30960083007812,155485000,0.0,0 -2013-10-16,147.18905164313205,148.43057338750208,147.12007675115422,148.3529815673828,161676000,0.0,0 -2013-10-17,147.74943894042372,149.4306737990629,147.72357500311674,149.34445190429688,129389000,0.0,0 -2013-10-18,149.89624805932576,150.45665094672037,149.5944845626579,150.3531951904297,138316000,0.0,0 -2013-10-21,150.4048968314776,150.6635493326992,150.02554158376762,150.36178588867188,104104000,0.0,0 -2013-10-22,150.80155222930307,151.68095262549593,150.38770281926455,151.23263549804688,126663000,0.0,0 -2013-10-23,150.71528856728565,150.78426344985368,149.9824551067762,150.5083770751953,105484000,0.0,0 -2013-10-24,150.81015876276052,151.19813104676211,150.45666734940988,151.00845336914062,70350000,0.0,0 -2013-10-25,151.31879537592044,151.74126157883677,151.02566200521755,151.69815063476562,93625000,0.0,0 -2013-10-28,151.6464874758886,152.14654569815386,151.4826737118822,151.9396209716797,84979000,0.0,0 -2013-10-29,152.28446641649697,152.81038848462325,152.06892480096352,152.75003051757812,87401000,0.0,0 -2013-10-30,152.93110453134088,153.04317723532267,151.44817703536316,151.9913330078125,140002000,0.0,0 -2013-10-31,151.87059158219958,152.50859939324127,151.33605267508685,151.56021118164062,133795000,0.0,0 -2013-11-01,151.75853430060283,152.2672093222351,151.0687985454392,151.92234802246094,142805000,0.0,0 -2013-11-04,152.3361911449237,152.51723873107784,151.72404718101313,152.45689392089844,85677000,0.0,0 -2013-11-05,151.86195898028998,152.38788090596364,151.3705310709036,151.9740447998047,85825000,0.0,0 -2013-11-06,152.629327739104,153.03454702875624,152.20686143663661,152.75003051757812,87348000,0.0,0 -2013-11-07,153.03454546199947,153.15524823923784,150.67220464391642,150.8187713623047,157000000,0.0,0 -2013-11-08,150.7670589142892,152.87074738061517,150.74982505550236,152.85350036621094,136713000,0.0,0 -2013-11-11,152.706874471305,153.0603657737471,152.52582693486258,152.8793182373047,62614000,0.0,0 -2013-11-12,152.55167694404716,152.91378513949184,152.06023593590794,152.5689239501953,83990000,0.0,0 -2013-11-13,151.81884490077158,153.83631067667463,151.81884490077158,153.793212890625,103844000,0.0,0 -2013-11-14,153.9311712389284,154.68988182143758,153.68114879093653,154.56056213378906,103435000,0.0,0 -2013-11-15,154.81056603815782,155.2933770216988,154.6122714889776,155.2330322265625,102818000,0.0,0 -2013-11-18,155.49168655595776,155.62100622963754,154.34500387875005,154.6898651123047,104796000,0.0,0 -2013-11-19,154.61227494222956,155.07783892801027,154.08635300435185,154.35362243652344,93891000,0.0,0 -2013-11-20,154.66401050127925,155.12957451020517,153.4483528729538,153.87081909179688,124909000,0.0,0 -2013-11-21,154.3018664565485,155.23300741409213,154.20702766025394,155.1123046875,92841000,0.0,0 -2013-11-22,155.1726907801231,155.9055374152665,154.99164321984517,155.88829040527344,81296000,0.0,0 -2013-11-25,156.16422228790125,156.19870315941512,155.50896732858723,155.73313903808594,79486000,0.0,0 -2013-11-26,155.8107238839834,156.24180711448236,155.54345438597267,155.77622985839844,86994000,0.0,0 -2013-11-27,155.9400370071319,156.25904753005153,155.7503593412712,156.15557861328125,58800000,0.0,0 -2013-11-29,156.32800831030846,156.69873352472294,155.8796781264181,156.05210876464844,55870900,0.0,0 -2013-12-02,156.1297380450339,156.42287151593024,155.40552129730727,155.6469268798828,99726000,0.0,0 -2013-12-03,155.13820945736802,155.52618166957416,154.47433770854434,154.97439575195312,116563000,0.0,0 -2013-12-04,154.41398226411766,155.60376275583613,153.76735756980494,154.95713806152344,123033000,0.0,0 -2013-12-05,154.6812200879679,154.9657364739936,154.12943432114508,154.2760009765625,106934000,0.0,0 -2013-12-06,155.76762334369957,156.14697871679914,155.31929307043492,156.0004119873047,127728000,0.0,0 -2013-12-09,156.45731535154994,156.6297459758404,156.19004591055773,156.39695739746094,70124000,0.0,0 -2013-12-10,156.03481184674447,156.3624391635213,155.74167853994953,155.83651733398438,80976000,0.0,0 -2013-12-11,155.89691926839222,155.92278320537244,153.89668710449624,154.08636474609375,130591000,0.0,0 -2013-12-12,154.0173978610192,154.20707551246744,153.25868725522625,153.57769775390625,115565000,0.0,0 -2013-12-13,153.89668439391096,154.03463415911835,153.26730667912116,153.56044006347656,107808000,0.0,0 -2013-12-16,154.28460651076747,155.02606981353293,154.24149557868392,154.51739501953125,96195000,0.0,0 -2013-12-17,154.6553918342987,154.6812557703028,153.68113972609854,154.0260009765625,89886000,0.0,0 -2013-12-18,154.25878794501284,156.68147306659336,152.87932980195168,156.65560913085938,234906000,0.0,0 -2013-12-19,156.2072962326373,156.6556264275496,155.8020901428608,156.47457885742188,136531200,0.0,0 -2013-12-20,156.6306280267186,157.757532070563,156.52661059182307,157.38478088378906,197087000,0.98,0 -2013-12-23,158.15625184056626,158.32095490702832,157.82685893467928,158.22560119628906,85598000,0.0,0 -2013-12-24,158.2342720614063,158.6416912778043,158.2256083516881,158.5723419189453,45368800,0.0,0 -2013-12-26,158.9277301069253,159.4651842558558,158.91040268992194,159.3784942626953,63365000,0.0,0 -2013-12-27,159.58652374237,159.65585985638813,159.20510898009834,159.36981201171875,61814000,0.0,0 -2013-12-30,159.38720385233032,159.51723887950288,159.1358239630602,159.3438720703125,56857000,0.0,0 -2013-12-31,159.56055097760975,160.09799194335938,159.43917968646687,160.09799194335938,86119900,0.0,0 -2014-01-02,159.48254611251372,159.56057241402198,158.18227529653302,158.56369018554688,119636900,0.0,0 -2014-01-03,158.83236823093742,159.1531106074955,158.3122679798491,158.5376434326172,81390600,0.0,0 -2014-01-06,159.05775787743835,159.1184302882682,157.83550045534432,158.07821655273438,108028200,0.0,0 -2014-01-07,158.71101771569892,159.3178079842856,158.58965966198159,159.04908752441406,86144200,0.0,0 -2014-01-08,159.02306985786834,159.35247593053714,158.53763768364152,159.08375549316406,96582300,0.0,0 -2014-01-09,159.59523967969113,159.61258032738783,158.45967195577347,159.1878204345703,90683400,0.0,0 -2014-01-10,159.4565280069509,159.69058043721964,158.64168958286072,159.62123107910156,102026400,0.0,0 -2014-01-13,159.2138207624594,159.6559080647445,157.19406523567753,157.49746704101562,149892000,0.0,0 -2014-01-14,158.01755291506058,159.30049615363913,157.72282807391568,159.21380615234375,105016100,0.0,0 -2014-01-15,159.58654348761326,160.3146918182051,159.2484736750502,160.0719757080078,98525800,0.0,0 -2014-01-16,159.74257931545316,160.07198543947663,159.35250077370983,159.8639373779297,72290600,0.0,0 -2014-01-17,159.58657596936214,159.8899645553415,158.91043620661668,159.1878204345703,107848700,0.0,0 -2014-01-21,160.10664795995692,160.16733360261262,158.67635561406948,159.6558837890625,88621200,0.0,0 -2014-01-22,159.92465182214045,159.99400118847797,159.42187883647287,159.75994873046875,61270900,0.0,0 -2014-01-23,158.9537464093919,158.97975076388784,157.61014400364525,158.4509735107422,132496900,0.0,0 -2014-01-24,157.41939704608595,157.47140574201453,155.0182275101261,155.0702362060547,208677100,0.0,0 -2014-01-27,155.21764145203127,155.6163969426606,153.53595594174456,154.3074493408203,180843100,0.0,0 -2014-01-28,154.42009813027215,155.42564365597184,154.40275748961298,155.2262725830078,110463200,0.0,0 -2014-01-29,153.9346921517463,154.77553480157243,153.3279018959531,153.73532104492188,216597300,0.0,0 -2014-01-30,155.01825671151326,155.86776310144975,154.52414755304744,155.364990234375,118938100,0.0,0 -2014-01-31,153.4405939894748,155.4170042366209,153.36258092822766,154.45480346679688,194677900,0.0,0 -2014-02-03,154.27279702518896,154.61953061388587,150.68405015131782,150.97877502441406,254837100,0.0,0 -2014-02-04,151.65490106866653,152.4263944767415,150.92675266201906,152.03631591796875,165012400,0.0,0 -2014-02-05,151.50754171753593,152.18368142699532,150.5800221579596,151.84561157226562,164230500,0.0,0 -2014-02-06,152.2010031357346,153.84800720214844,151.88893767580993,153.84800720214844,132877600,0.0,0 -2014-02-07,154.56744430806694,155.919723143018,154.06467159791274,155.75502014160156,170787200,0.0,0 -2014-02-10,155.7724324500626,156.09317489456154,155.3476858057577,156.04115295410156,92218800,0.0,0 -2014-02-11,156.17123071886044,158.14764173219558,156.06720003649852,157.74888610839844,117814100,0.0,0 -2014-02-12,157.98288465019687,158.4856575575901,157.5147930340926,157.8268585205078,94717700,0.0,0 -2014-02-13,156.76065145351123,158.80641146568325,156.75198774285934,158.64170837402344,100542200,0.0,0 -2014-02-14,158.4943102658408,159.81192147558738,158.34694785568382,159.51719665527344,96498400,0.0,0 -2014-02-18,159.65586381483254,159.92459747821178,159.19643599262383,159.7078857421875,80460900,0.0,0 -2014-02-19,159.29183381725628,160.32338408284775,158.52034035234945,158.65037536621094,126524300,0.0,0 -2014-02-20,158.86710877984945,159.95066790761365,158.28632267461265,159.5865936279297,104998100,0.0,0 -2014-02-21,159.8899121405332,160.27132690259367,159.32646693196574,159.40447998046875,118116400,0.0,0 -2014-02-24,159.74254798393585,161.36354747772688,159.6731986436889,160.28866577148438,114063900,0.0,0 -2014-02-25,160.4186736710535,160.87810143687935,159.6991892085068,160.22796630859375,117085000,0.0,0 -2014-02-26,160.46206982387537,160.8868296715277,159.78593013302458,160.2366943359375,98677200,0.0,0 -2014-02-27,160.00261961498305,161.1208464164754,159.82057592648943,161.0775146484375,93880800,0.0,0 -2014-02-28,161.05151602751403,162.2304286062886,160.4100576422494,161.4849395751953,150842000,0.0,0 -2014-03-03,160.06331934929221,160.7567997077357,159.28316221294187,160.34938049316406,167748500,0.0,0 -2014-03-04,161.91837851286223,162.94992877071618,161.8837104456489,162.6031951904297,167545900,0.0,0 -2014-03-05,162.7418703488279,163.02793146331067,162.49047729653864,162.7505340576172,88376900,0.0,0 -2014-03-06,163.14930859910788,163.49604216973304,162.77655744499984,163.123291015625,82516500,0.0,0 -2014-03-07,163.79939986131592,163.79939986131592,162.47311190453487,163.19259643554688,114513500,0.0,0 -2014-03-10,162.9412692057497,163.16664471596545,162.16977572700367,163.10597229003906,74939200,0.0,0 -2014-03-11,163.3486649507053,163.5827173645562,161.9270362766007,162.29977416992188,99009100,0.0,0 -2014-03-12,161.51091303620066,162.4037642423566,161.14682571581537,162.34307861328125,104824400,0.0,0 -2014-03-13,162.8285519982557,162.95858699621067,160.07198463849542,160.52273559570312,155014300,0.0,0 -2014-03-14,160.23667876000653,161.06018079296413,159.88126830327624,160.0719757080078,153919600,0.0,0 -2014-03-17,160.8781207863634,161.9010070559501,160.8087714437614,161.51959228515625,98359500,0.0,0 -2014-03-18,161.8489986593391,162.88921234625144,161.67561868899148,162.67250061035156,101804600,0.0,0 -2014-03-19,162.6898538204827,162.91524252685645,160.77412917852638,161.80567932128906,176267300,0.0,0 -2014-03-20,161.4502634792607,162.871892115849,161.16420236477794,162.7505340576172,117241000,0.0,0 -2014-03-21,163.4339562797549,164.5745352369767,161.97121943298285,162.11923217773438,163128000,0.825,0 -2014-03-24,162.67651976263596,162.87678409305997,160.74362488182211,161.44886779785156,121411000,0.0,0 -2014-03-25,162.26729561864326,162.76358552263576,161.30956345007817,162.21505737304688,103852000,0.0,0 -2014-03-26,162.85068724842247,163.11189182984398,161.0048645677665,161.04840087890625,119843000,0.0,0 -2014-03-27,160.85681406440716,161.3705078734613,160.1167368046138,160.70880126953125,142383000,0.0,0 -2014-03-28,161.17025395283937,162.31083327594453,161.0744794066405,161.50111389160156,101642000,0.0,0 -2014-03-31,162.52849834704392,163.07702649060855,161.52722988967398,162.82452392578125,99745000,0.0,0 -2014-04-01,163.35566182946104,163.9999646236155,162.8158488279953,163.90419006347656,89193000,0.0,0 -2014-04-02,164.11316631683655,164.67039653178213,163.8084254382532,164.45272827148438,78774000,0.0,0 -2014-04-03,164.70523454931694,164.74877086293787,163.730084894213,164.23507690429688,77435000,0.0,0 -2014-04-04,165.13181320183423,165.16663426967926,162.03222003251207,162.2934112548828,169381000,0.0,0 -2014-04-07,161.90166216838574,162.17156870685392,160.16903118192843,160.4998779296875,140803000,0.0,0 -2014-04-08,160.43018472134767,161.42275130180928,159.8468354691427,161.16156005859375,112660000,0.0,0 -2014-04-09,161.59690139144422,162.94643380686136,161.12673056862857,162.89419555664062,100254000,0.0,0 -2014-04-10,162.8854941950368,162.9638515706493,159.27219354529078,159.4724578857422,172959000,0.0,0 -2014-04-11,158.58438641890945,159.69884684337393,157.86172620398983,158.03585815429688,167251000,0.0,0 -2014-04-14,159.2721685584186,159.65526671519808,157.97487459208483,159.2808837890625,132382000,0.0,0 -2014-04-15,159.61174664523307,160.49112140465616,158.0358176920895,160.3779296875,157093000,0.0,0 -2014-04-16,161.48373272162672,162.06708207476117,160.7697744388727,162.05838012695312,105197000,0.0,0 -2014-04-17,161.84067536953657,162.73746735195715,161.5620536775078,162.2847137451172,105255000,0.0,0 -2014-04-21,162.328236014586,162.90288324066643,162.12798499413216,162.8506317138672,68329000,0.0,0 -2014-04-22,163.0160662587153,164.03475185068058,162.92900694908988,163.59071350097656,85790000,0.0,0 -2014-04-23,163.52975375998676,163.61681305920277,163.07700023366576,163.2075958251953,73869000,0.0,0 -2014-04-24,164.00862485578892,164.02604203104298,162.75485394573985,163.53846740722656,88170000,0.0,0 -2014-04-25,163.00741046208063,163.10318502957205,161.83199652336012,162.1976776123047,100380000,0.0,0 -2014-04-28,162.85936228030954,163.41659238326275,161.03965917844502,162.7113494873047,135121000,0.0,0 -2014-04-29,163.23374090638984,163.72131557286545,162.88547708331106,163.4688262939453,84098000,0.0,0 -2014-04-30,163.1989396841499,164.12185088441177,162.97255621474727,163.9564208984375,101508000,0.0,0 -2014-05-01,163.87801087535303,164.41782367897733,163.45137648465635,163.97378540039062,93019000,0.0,0 -2014-05-02,163.95639195370308,164.67905196803582,163.49493643503712,163.7387237548828,98122000,0.0,0 -2014-05-05,162.93770966221106,164.16536151680512,162.48495607962218,164.0521697998047,75883000,0.0,0 -2014-05-06,163.68647411846956,163.79966582530872,162.58943125553014,162.62425231933594,85454000,0.0,0 -2014-05-07,163.17281391779613,163.66038862372048,161.95386386757087,163.58203125,106500000,0.0,0 -2014-05-08,163.43404562234056,164.60074433198588,162.8855173442673,163.4079132080078,93618000,0.0,0 -2014-05-09,163.43403463091886,163.72134502967455,162.66783813979524,163.65170288085938,83679000,0.0,0 -2014-05-12,164.38300713599,165.32333523891103,163.68646632433615,165.24496459960938,86940000,0.0,0 -2014-05-13,165.46269329723074,165.7935532930085,165.22762114957206,165.39305114746094,66454000,0.0,0 -2014-05-14,165.24502360825477,165.3233942755424,164.37435060412474,164.60943603515625,72367000,0.0,0 -2014-05-15,164.27855324537805,164.31338760054211,162.3630755591853,163.16409301757812,154956000,0.0,0 -2014-05-16,163.2598554830975,163.79968166487612,162.57202980177385,163.7300262451172,97458000,0.0,0 -2014-05-19,163.41658615632596,164.4613908988746,163.2685733689611,164.33079528808594,63839000,0.0,0 -2014-05-20,164.25242514118938,164.2698423178191,162.87677375194232,163.29469299316406,111644000,0.0,0 -2014-05-21,163.76485715401142,164.7487217497908,163.73873803070876,164.6703643798828,89093000,0.0,0 -2014-05-22,164.71388276076212,165.41042369520076,164.43527435823464,165.07086181640625,61549000,0.0,0 -2014-05-23,165.21888262029736,165.84576816315888,165.0708698234292,165.7325897216797,61092800,0.0,0 -2014-05-27,166.35076634858626,166.80351998793395,166.25499179575147,166.75128173828125,72010000,0.0,0 -2014-05-28,166.7512882136446,167.0124927574659,166.35077280839664,166.62939453125,66723000,0.0,0 -2014-05-29,167.01248878064902,167.51746739182025,166.5858542597192,167.49134826660156,64377000,0.0,0 -2014-05-30,167.33460929498474,167.8657202399154,167.19529845703934,167.76123046875,76316000,0.0,0 -2014-06-02,167.99632560670435,168.03115996092072,167.143069924192,167.95278930664062,64656000,0.0,0 -2014-06-03,167.5435646781874,167.9527819671595,167.38684994730258,167.86572265625,65047000,0.0,0 -2014-06-04,167.578391024842,168.3010510264717,167.40425912592926,168.2052764892578,55529000,0.0,0 -2014-06-05,168.396843703351,169.4764695641546,167.77866011739596,169.30233764648438,92103000,0.0,0 -2014-06-06,169.66799368516268,170.15556829703687,169.58963632655684,170.11204528808594,78696000,0.0,0 -2014-06-09,170.08597329817184,170.69544173189396,169.92924525212015,170.28622436523438,65119000,0.0,0 -2014-06-10,170.07726641198357,170.33847097794435,169.7115853338049,170.30364990234375,57129000,0.0,0 -2014-06-11,169.69416118934703,169.8857103108297,169.32848012617526,169.71157836914062,68772000,0.0,0 -2014-06-12,169.5112914681576,169.60706600865353,168.13562683440355,168.510009765625,106350000,0.0,0 -2014-06-13,168.8408650276042,169.18914211317065,168.30105215174171,169.02371215820312,82017000,0.0,0 -2014-06-16,168.81474584353128,169.5199886740967,168.61449482278846,169.1630096435547,87424000,0.0,0 -2014-06-17,168.92799666874762,169.75513344729657,168.74514947423486,169.63323974609375,84834000,0.0,0 -2014-06-18,169.63320946124188,170.97403993509263,169.2588131909066,170.87826538085938,105267000,0.0,0 -2014-06-19,171.02625740264455,171.17428347472,170.47774255452222,171.06979370117188,85929000,0.0,0 -2014-06-20,171.49587762773947,171.55712319006173,171.207177153384,171.41714477539062,100587000,0.937,0 -2014-06-23,171.4608727641738,171.51336132722233,171.0496945548605,171.36463928222656,70611000,0.0,0 -2014-06-24,171.05841348116908,171.90701405869765,170.13982371333088,170.33229064941406,96237000,0.0,0 -2014-06-25,169.97361541743444,171.27713916758432,169.9386274938598,171.1021728515625,82782000,0.0,0 -2014-06-26,171.12842785593938,171.1459284933606,169.83366101734728,170.97970581054688,84312000,0.0,0 -2014-06-27,170.5772539317837,171.36462234692377,170.49852109499182,171.3121337890625,71445100,0.0,0 -2014-06-30,171.20715451457832,171.6183327101316,171.05843247455954,171.2246551513672,70201200,0.0,0 -2014-07-01,171.64461970477512,172.8956552395457,171.58338748438828,172.37074279785156,90470000,0.0,0 -2014-07-02,172.38820386874747,172.764380797987,172.30947102528918,172.54566955566406,52475000,0.0,0 -2014-07-03,173.03556697885034,173.4729894290562,172.9043455834181,173.39425659179688,52938800,0.0,0 -2014-07-07,173.061816757744,173.20178179016563,172.53690450167497,172.7906036376953,61696000,0.0,0 -2014-07-08,172.47564880201168,172.53689434621322,171.25961505113116,171.67955017089844,108143000,0.0,0 -2014-07-09,172.10824337631053,172.60691140565763,171.74081009898478,172.44943237304688,72992000,0.0,0 -2014-07-10,170.78722205333875,172.22196715207775,170.6472436658828,171.7670440673828,99040000,0.0,0 -2014-07-11,171.6621220714192,172.12578894830924,171.27718805685132,172.00331115722656,64243000,0.0,0 -2014-07-14,172.87809789121178,173.09680911199672,172.72937586296686,172.86935424804688,58658000,0.0,0 -2014-07-15,172.97434839628394,173.30679375631874,171.78455870408422,172.54566955566406,111307000,0.0,0 -2014-07-16,173.31554758535015,173.44676899882526,172.71190238521325,173.184326171875,79986400,0.0,0 -2014-07-17,172.65061089624126,173.30674443648684,170.97089728603012,171.2158660888672,145398000,0.0,0 -2014-07-18,171.77580183010045,173.14055774123176,171.67956835692715,172.96559143066406,124330000,0.0,0 -2014-07-21,172.4231954912684,172.7818851401475,171.84579459537645,172.64190673828125,67592000,0.0,0 -2014-07-22,173.22803392486685,173.70920128990807,173.10555617277214,173.39425659179688,67678000,0.0,0 -2014-07-23,173.65671231167815,173.9629133657111,173.3067796919894,173.77919006347656,65612000,0.0,0 -2014-07-24,173.945458190345,174.14666883179837,173.61301277040502,173.78797912597656,56888000,0.0,0 -2014-07-25,173.29805363281824,173.44677569018612,172.63317619710136,172.974365234375,76837000,0.0,0 -2014-07-28,173.0093102544575,173.29801065271477,172.01198767369274,173.0443115234375,69259000,0.0,0 -2014-07-29,173.3680168302947,173.6129723408671,172.27446067628435,172.3007049560547,80466000,0.0,0 -2014-07-30,172.91307926206161,173.1405474664673,171.60956897897444,172.32693481445312,104222000,0.0,0 -2014-07-31,171.12842593895826,171.27714798268477,168.81883574100985,168.92381286621094,183479000,0.0,0 -2014-08-01,168.46014237003283,169.5099536460377,167.59405440813924,168.40765380859375,189261000,0.0,0 -2014-08-04,168.73129661699642,169.98233150620268,168.01393088920898,169.62364196777344,91340000,0.0,0 -2014-08-05,168.93253383492748,169.3699562287527,167.36655418955286,167.97894287109375,152690000,0.0,0 -2014-08-06,167.19162184160945,168.74884481181655,167.16537756057815,168.03147888183594,94818000,0.0,0 -2014-08-07,168.79260025802176,168.9588229476378,166.70172119463857,167.12164306640625,135733000,0.0,0 -2014-08-08,167.49777019574162,169.1687134080961,167.05159086050372,169.05499267578125,117014000,0.0,0 -2014-08-11,169.69364388644925,170.2972889234957,169.46618904818664,169.544921875,74544000,0.0,0 -2014-08-12,169.37876606772267,169.85117656409008,168.79262143280795,169.30877685546875,73632000,0.0,0 -2014-08-13,169.9736055961555,170.64723989044404,169.68491853339103,170.45477294921875,69047000,0.0,0 -2014-08-14,170.73479022729137,171.2596893310547,170.57731115180763,171.2596893310547,57371000,0.0,0 -2014-08-15,171.8807888656661,172.03825454954202,169.99112056470733,171.2246551513672,139951000,0.0,0 -2014-08-18,172.1695127239857,172.7381566807739,172.07327923216715,172.659423828125,75424000,0.0,0 -2014-08-19,173.0793336730441,173.69172251057722,172.7294010084753,173.5605010986328,59135000,0.0,0 -2014-08-20,173.32427603805294,174.23412225531817,173.28928811388482,174.02415466308594,72763000,0.0,0 -2014-08-21,174.17289602274266,174.75904059837012,174.03291761239333,174.53158569335938,67791000,0.0,0 -2014-08-22,174.39158211536602,174.69778317518075,173.86668317592168,174.26036071777344,76107000,0.0,0 -2014-08-25,175.09146285633727,175.48514040299906,174.22536157442195,175.14395141601562,63855000,0.0,0 -2014-08-26,175.25772094726562,175.68639985306427,175.21397602233486,175.25772094726562,47298000,0.0,0 -2014-08-27,175.34519459012796,175.46768571756843,174.91652904039296,175.18772888183594,47874000,0.0,0 -2014-08-28,174.61027859054448,175.2051800238713,174.43531229218,175.09144592285156,58330000,0.0,0 -2014-08-29,175.36266543933226,175.60762095444727,174.81152220486067,175.5901336669922,65907000,0.0,0 -2014-09-02,175.81756918920388,175.84381346657156,174.84649087938078,175.50262451171875,72426000,0.0,0 -2014-09-03,176.17627037219944,176.20251465129417,175.16144708362395,175.40640258789062,57462000,0.0,0 -2014-09-04,175.7038378847157,176.35122788459378,174.6715273609602,175.15269470214844,85236000,0.0,0 -2014-09-05,175.11770711085612,176.01005267248158,174.45282977323618,175.9400634765625,102177000,0.0,0 -2014-09-08,175.77385364659747,176.02756616897415,174.96899785833813,175.4851531982422,64146000,0.0,0 -2014-09-09,175.3277081960939,175.4501859750839,174.01544055731105,174.37413024902344,88591000,0.0,0 -2014-09-10,174.47026847333962,175.1439026160249,173.89288112867987,175.03018188476562,67251000,0.0,0 -2014-09-11,174.3303409059333,175.25767433187352,174.19910616604705,175.23143005371094,66774400,0.0,0 -2014-09-12,175.0564711105336,175.07395839732845,173.7092024791942,174.20787048339844,117409300,0.0,0 -2014-09-15,174.23410865782478,174.37408704172213,173.55173072266692,174.07662963867188,76401000,0.0,0 -2014-09-16,173.75294507540275,175.70384545290008,173.65671160302,175.38890075683594,116201000,0.0,0 -2014-09-17,175.6426379671993,176.43873678812594,174.75029231127291,175.62513732910156,151266000,0.0,0 -2014-09-18,176.15878370190583,176.58746254289406,175.9313288153615,176.56121826171875,94990000,0.0,0 -2014-09-19,177.1228321250041,177.45681801701582,176.04173335156048,176.402099609375,121649000,0.939,0 -2014-09-22,176.0944963171194,176.12086327379262,174.67061359939837,175.03976440429688,125553000,0.0,0 -2014-09-23,174.40696215093143,175.13647937754587,173.98507735641704,174.03781127929688,111393000,0.0,0 -2014-09-24,174.06417758550907,175.5144275166241,173.6071413146205,175.40016174316406,107276000,0.0,0 -2014-09-25,174.9430815347523,174.95187946131455,172.50844311928304,172.56996154785156,150300000,0.0,0 -2014-09-26,172.88639771142653,174.37179902688828,172.64029714677338,173.9411163330078,103547000,0.0,0 -2014-09-29,172.44689564082222,173.93229665600572,172.31506086907845,173.62466430664062,95112000,0.0,0 -2014-09-30,173.7565633382491,174.29271391936075,172.80731246948704,173.1676788330078,131302000,0.0,0 -2014-10-01,172.886333631927,172.94786545602125,170.43411341036736,170.8208465576172,177798000,0.0,0 -2014-10-02,170.67146192613635,171.44492842895224,169.0630239027852,170.84725952148438,157285000,0.0,0 -2014-10-03,171.98986489469002,173.09733074437906,171.46251233855236,172.72817993164062,121569000,0.0,0 -2014-10-06,173.44888463711106,173.6774161293545,171.90196515883437,172.5260009765625,104778000,0.0,0 -2014-10-07,171.63827437594577,172.02500758076067,169.82767201837765,169.86282348632812,147913000,0.0,0 -2014-10-08,169.9594996145528,173.0797186637452,169.0717809129453,172.8336181640625,186461000,0.0,0 -2014-10-09,172.56119406225375,172.79851010780578,169.26519002976616,169.40582275390625,210705000,0.0,0 -2014-10-10,169.3618851256389,170.20565470619084,167.42823197444207,167.47216796875,221909000,0.0,0 -2014-10-13,167.40186797482144,168.00832150405148,164.6244317824606,164.7211151123047,230939000,0.0,0 -2014-10-14,165.60884713569914,166.83936355878265,164.39591315891766,164.97601318359375,215847000,0.0,0 -2014-10-15,162.74347381871698,164.96717646484166,159.89572193537032,163.85971069335938,380715000,0.0,0 -2014-10-16,160.89773085542532,164.87051814153358,160.74831361518895,163.7191162109375,270391000,0.0,0 -2014-10-17,165.60880633811485,166.7777906169013,164.90565618549854,165.6527557373047,214625000,0.0,0 -2014-10-20,165.353868875412,167.392988919118,165.30113497768664,167.2611541748047,130011000,0.0,0 -2014-10-21,168.47414764834363,170.68906620059525,168.29836344198483,170.57481384277344,154949000,0.0,0 -2014-10-22,170.87367652372166,171.3131438178551,169.29159158254575,169.36190795898438,151822000,0.0,0 -2014-10-23,171.05820570427966,172.4469236418531,170.74178878924425,171.33067321777344,154944000,0.0,0 -2014-10-24,171.6119573780827,172.70184096241798,170.94397200079868,172.6490936279297,117927000,0.0,0 -2014-10-27,172.0338096934931,172.66664347311442,171.41855835538163,172.41175842285156,82954000,0.0,0 -2014-10-28,172.99188646855953,174.39817355453513,172.91277217461473,174.38938903808594,106736000,0.0,0 -2014-10-29,174.51240461717464,175.0133901846486,172.974269621526,174.12567138671875,142557000,0.0,0 -2014-10-30,173.65985877156368,175.7429289888218,173.50164360704528,175.241943359375,113330000,0.0,0 -2014-10-31,177.3513632108021,177.38652809347087,176.46364438977716,177.2458953857422,146903000,0.0,0 -2014-11-03,177.47440985187404,177.94024395167048,176.93825939964967,177.3425750732422,93600000,0.0,0 -2014-11-04,176.86799054696812,177.19320544072139,175.83963876304634,176.7273712158203,93343000,0.0,0 -2014-11-05,178.0193968976568,178.0633463072156,177.06136146206845,177.84361267089844,91709000,0.0,0 -2014-11-06,177.88751098142973,178.6521795244862,177.22831026183678,178.5554962158203,107089000,0.0,0 -2014-11-07,178.57308643520338,178.95103517153206,178.08088535563695,178.72250366210938,89540000,0.0,0 -2014-11-10,178.75765116163322,179.33773757100977,178.53791760023344,179.28500366210938,66319000,0.0,0 -2014-11-11,179.35534759566596,179.5750811908604,178.99498128079327,179.4608154296875,54499400,0.0,0 -2014-11-12,178.73132077750012,179.51357187968134,178.6961558900566,179.26747131347656,90120300,0.0,0 -2014-11-13,179.44322227843716,180.0321066250263,178.60823741122783,179.46958923339844,85357900,0.0,0 -2014-11-14,179.39049953671676,179.7332833840262,179.05650020445043,179.5135498046875,80417500,0.0,0 -2014-11-17,179.17077141450352,179.81238973050222,178.99497381649948,179.6278076171875,80441000,0.0,0 -2014-11-18,179.6893147268201,180.9901336218714,179.6893147268201,180.66493225097656,76068100,0.0,0 -2014-11-19,180.45402458552203,180.6649736755766,179.5663056447247,180.3749237060547,82373000,0.0,0 -2014-11-20,179.53109982491003,180.805565179305,179.46078347759038,180.69129943847656,72840300,0.0,0 -2014-11-21,182.50190962361515,182.6776937937191,181.04287552995459,181.6581268310547,142327300,0.0,0 -2014-11-24,182.08880685114576,182.2821734589446,181.86028877441632,182.16790771484375,65880800,0.0,0 -2014-11-25,182.41396119328053,182.63369469898342,181.76355859973998,182.03602600097656,79108300,0.0,0 -2014-11-26,182.19429022924956,182.6073904346931,181.96577213300412,182.50192260742188,62167800,0.0,0 -2014-11-28,182.37010234225167,182.70408829235774,181.86031878406664,182.11520385742188,57890100,0.0,0 -2014-12-01,181.41206585367394,181.53511614071567,180.51556236728783,180.84954833984375,103968400,0.0,0 -2014-12-02,180.89345886648033,182.23822721851195,180.86709191145795,182.01849365234375,74507200,0.0,0 -2014-12-03,182.20308115712615,182.95016725738955,182.02729698126848,182.72164916992188,68952000,0.0,0 -2014-12-04,182.41403474614265,183.05566649777103,181.6757330880359,182.51951599121094,91316600,0.0,0 -2014-12-05,182.70404786096276,183.23141374554743,182.42279589093008,182.8183135986328,91025500,0.0,0 -2014-12-08,182.39643676864097,182.92378926439483,180.99892113793376,181.5966033935547,108588200,0.0,0 -2014-12-09,179.62781942752324,181.58785280005353,179.2235171130685,181.4735870361328,125180100,0.0,0 -2014-12-10,180.9813853941813,181.0429038281708,178.36215122778034,178.56431579589844,159856400,0.0,0 -2014-12-11,179.197121757817,181.22745775866963,179.04770454254563,179.46958923339844,159012800,0.0,0 -2014-12-12,178.10724204638643,179.14439147123935,176.53395558549556,176.56910705566406,202330200,0.0,0 -2014-12-15,177.52717026053162,178.01058687345667,174.71458280097897,175.356201171875,189965800,0.0,0 -2014-12-16,174.53877450700466,177.89629655141383,173.90594073952394,173.94989013671875,259543800,0.0,0 -2014-12-17,174.41574623433104,177.84358506418343,174.28389802612148,177.36016845703125,253910100,0.0,0 -2014-12-18,179.95305797621052,187.1866853014342,179.23232523421115,181.74607849121094,257633900,0.0,0 -2014-12-19,182.43982772099722,183.23524273364654,181.71513064955693,182.51937866210938,245084600,1.135,0 -2014-12-22,182.72265163435333,183.35897827148438,182.46635977365997,183.35897827148438,148318900,0.0,0 -2014-12-23,183.97763361978187,184.03065859432255,183.2971149803499,183.6064453125,122167900,0.0,0 -2014-12-24,183.84503080838414,184.12783510565887,183.57989250841186,183.62408447265625,42963400,0.0,0 -2014-12-26,184.10130538305003,184.57855697540413,184.0482804251202,184.21620178222656,57326700,0.0,0 -2014-12-29,184.02179139564953,184.68463042522214,183.9510869475691,184.46368408203125,79643900,0.0,0 -2014-12-30,184.01295604546385,184.15435145432343,183.39429550403872,183.47384643554688,73540800,0.0,0 -2014-12-31,183.81854446375002,183.99529886036586,181.52069685125588,181.65325927734375,130333800,0.0,0 -2015-01-02,182.39560654248885,182.83749917313892,180.45126817923415,181.55599975585938,121465900,0.0,0 -2015-01-05,180.4424472411213,180.619201608096,177.95017965014245,178.2771759033203,169632600,0.0,0 -2015-01-06,178.6042058065925,179.16099497868427,175.74958245991652,176.5980224609375,209151400,0.0,0 -2015-01-07,178.01204606886992,179.16096973704055,177.53480790681152,178.79861450195312,125346700,0.0,0 -2015-01-08,180.3010663129865,182.20121313773186,180.28340031339516,181.97142028808594,147217800,0.0,0 -2015-01-09,182.41330155481515,182.43098103879146,179.85916228278802,180.51316833496094,158567300,0.0,0 -2015-01-12,180.65459216028688,180.82251355819676,178.45396147301386,179.09912109375,144396100,0.0,0 -2015-01-13,180.39823759851498,181.60018605584017,177.20777236524324,178.59532165527344,214553300,0.0,0 -2015-01-14,176.44773418781983,177.72923369343965,175.4932579070525,177.51712036132812,192991100,0.0,0 -2015-01-15,178.19770278675892,178.5335321595903,175.76729227842014,175.89102172851562,176613900,0.0,0 -2015-01-16,175.67005050129694,178.365599017747,175.47561660925814,178.1976776123047,211879600,0.0,0 -2015-01-20,178.8781663059206,179.16098411761473,176.90732856559814,178.5776824951172,130991100,0.0,0 -2015-01-21,178.08277382061274,179.99175368965058,177.5878561106021,179.47915649414062,122942700,0.0,0 -2015-01-22,180.28342055422902,182.2896040582488,178.81633329368356,182.14820861816406,174356000,0.0,0 -2015-01-23,181.87418735534405,182.14817215086734,181.00808145917418,181.1494903564453,117516800,0.0,0 -2015-01-26,180.91970741391694,181.67091688042524,180.15965146307096,181.57369995117188,92009700,0.0,0 -2015-01-27,179.3819014844234,180.39824917426026,178.29484935309014,179.1786346435547,134044600,0.0,0 -2015-01-28,180.44242106788712,180.54847097559062,176.67750100400335,176.88076782226562,168514300,0.0,0 -2015-01-29,177.0929131493273,178.78977940691001,175.59046726253013,178.51580810546875,173585400,0.0,0 -2015-01-30,177.26084491615913,178.67489347096566,175.9881917769867,176.27099609375,197729700,0.0,0 -2015-02-02,176.80125945018233,178.5511506423575,174.86576740352925,178.4539337158203,163107000,0.0,0 -2015-02-03,179.4084449547592,181.04345341874222,179.01074420245124,181.03460693359375,124212900,0.0,0 -2015-02-04,180.22148544893372,181.51181783958313,179.8591302621529,180.34521484375,134306700,0.0,0 -2015-02-05,181.05229816132285,182.32495143964832,180.97276070280165,182.16586303710938,97953200,0.0,0 -2015-02-06,182.5546971937018,183.15567823578175,181.10528977932475,181.66207885742188,125672000,0.0,0 -2015-02-09,180.9727131627887,181.74160203083946,180.415924128411,180.84898376464844,87219000,0.0,0 -2015-02-10,181.95373610419506,183.04962133115373,180.89318287288802,182.77565002441406,96164200,0.0,0 -2015-02-11,182.59889430482568,183.34127077288542,181.90954280084244,182.88169860839844,91087800,0.0,0 -2015-02-12,183.7301440224893,184.70231334481315,182.9170630826797,184.64044189453125,97545900,0.0,0 -2015-02-13,184.77303257067362,185.4535376652261,184.49904775029347,185.4005126953125,93670400,0.0,0 -2015-02-17,185.06469076737062,185.87778534935833,184.79956588791532,185.6921844482422,76968200,0.0,0 -2015-02-18,185.29442818212908,185.7893457896392,185.01161041469848,185.70980834960938,80652900,0.0,0 -2015-02-19,185.0735045814912,185.9661229842385,184.92326268115718,185.57725524902344,91462500,0.0,0 -2015-02-20,185.13534040242294,186.77034859750808,184.47250142909007,186.69081115722656,140896400,0.0,0 -2015-02-23,186.42565034554133,186.66427612304688,186.0191032240686,186.66427612304688,74411100,0.0,0 -2015-02-24,186.58479642348306,187.40672397727874,186.2666330938681,187.19461059570312,72472300,0.0,0 -2015-02-25,187.06201968512238,187.57461683177726,186.67315195417765,187.03550720214844,73061700,0.0,0 -2015-02-26,186.938274082731,187.10619545068937,186.16937168657924,186.81454467773438,72697900,0.0,0 -2015-02-27,186.70850107033414,186.99131887488767,186.12521294805904,186.17823791503906,108076000,0.0,0 -2015-03-02,186.28428196575194,187.4155261772486,186.2312570004466,187.35366821289062,87491400,0.0,0 -2015-03-03,186.8940928462341,187.40668997792363,185.6656317241573,186.5847625732422,110325800,0.0,0 -2015-03-04,185.94842914459434,186.02798007374324,184.76416003186395,185.79818725585938,114497200,0.0,0 -2015-03-05,186.1428449759381,186.30193333333983,185.46234004322574,186.00144958496094,76873000,0.0,0 -2015-03-06,185.08230305159216,185.54187515160763,183.03192831047147,183.38543701171875,188128000,0.0,0 -2015-03-09,183.59758044880058,184.52554431320985,183.4296590682329,184.14552307128906,89818900,0.0,0 -2015-03-10,182.6872528521385,182.77562328482273,181.11410271864597,181.15829467773438,157121300,0.0,0 -2015-03-11,181.43228482025785,181.6178856735416,180.6457164144248,180.73410034179688,110145700,0.0,0 -2015-03-12,181.4057614834359,183.10262760058242,181.35273652438337,183.0319366455078,93993500,0.0,0 -2015-03-13,182.74032163957494,183.7655025146578,180.80482934250708,181.90956115722656,162410900,0.0,0 -2015-03-16,182.6872913886299,184.43718275661706,181.9360683821403,184.3399658203125,136099200,0.0,0 -2015-03-17,183.55336638670838,184.19852586315218,182.92587290625423,183.7919921875,94510400,0.0,0 -2015-03-18,183.288222395353,186.7173134795371,182.60770397714793,186.00144958496094,228808500,0.0,0 -2015-03-19,185.55960817376888,186.01033392073563,184.7376806522455,185.15306091308594,117917300,0.0,0 -2015-03-20,186.16599057948412,187.32891550125507,185.970688763311,186.7873992919922,177715100,0.931,0 -2015-03-23,186.7962613444875,187.4087975933937,186.4234161376953,186.4234161376953,71784500,0.0,0 -2015-03-24,186.29027698700864,186.7785179939738,185.3048954518938,185.37591552734375,77805300,0.0,0 -2015-03-25,185.59782317798872,185.84638663572758,182.61504813943003,182.659423828125,159521700,0.0,0 -2015-03-26,181.94923200790535,183.20092159963303,181.20352816380384,182.22442626953125,153067200,0.0,0 -2015-03-27,182.10016170988445,182.82809367576567,181.89597394208653,182.6416778564453,118939000,0.0,0 -2015-03-30,183.7423908779664,185.18939542184984,183.72464602706688,184.86981201171875,96180400,0.0,0 -2015-03-31,183.99101408959874,184.7367179862329,183.19206207725972,183.2541961669922,126768700,0.0,0 -2015-04-01,183.218676278573,183.24530710685443,181.54973879591978,182.60614013671875,137303600,0.0,0 -2015-04-02,182.53513130924128,183.74244526647433,182.3398295260351,183.26307678222656,86900900,0.0,0 -2015-04-06,182.31320162775236,185.0474130909143,182.17117504779364,184.4970245361328,114368200,0.0,0 -2015-04-07,184.52362850740138,185.32258039293092,183.9732400327339,184.0087432861328,81236300,0.0,0 -2015-04-08,184.24842468854428,185.1006381826992,183.83119036793263,184.63014221191406,89351900,0.0,0 -2015-04-09,184.45263039356934,185.69544759569945,183.9288726830782,185.44688415527344,85548900,0.0,0 -2015-04-10,185.7131721194387,186.50325152788568,185.50012552118997,186.4588623046875,72722900,0.0,0 -2015-04-13,186.30798347046144,186.98266727541596,185.56229315037737,185.6155548095703,74436600,0.0,0 -2015-04-14,185.4024951887549,186.16594385700154,184.73669740408715,185.97064208984375,75099900,0.0,0 -2015-04-15,186.46777115013552,187.34661556709474,186.37899269284898,186.8050994873047,99529300,0.0,0 -2015-04-16,186.44997551571444,187.29331650875937,186.23691538818903,186.75180053710938,68934900,0.0,0 -2015-04-17,185.4823888415409,185.73982469313188,183.7690621544331,184.60353088378906,191113200,0.0,0 -2015-04-20,185.58893799802362,186.64533947078144,185.50017307456127,186.29025268554688,92189500,0.0,0 -2015-04-21,187.01817816628983,187.1868491244129,185.74873008473963,186.0683135986328,72559800,0.0,0 -2015-04-22,186.43221829277292,187.17792197096406,185.44683720850534,186.9826202392578,78264600,0.0,0 -2015-04-23,186.5565391395403,188.1455841496264,186.4322574247032,187.45315551757812,102585900,0.0,0 -2015-04-24,187.8970695693499,188.17226389905613,187.40881501066403,187.88818359375,61327400,0.0,0 -2015-04-27,188.4918061732637,188.62496032114433,186.90276109820005,187.10694885253906,79358100,0.0,0 -2015-04-28,187.08031260979124,187.75498284901738,185.82860947316524,187.70172119140625,86863500,0.0,0 -2015-04-29,186.7518559100351,187.56856632250938,186.06831319638215,186.92941284179688,125684900,0.0,0 -2015-04-30,186.31684988348817,186.7340842309511,184.31057062657524,185.0562744140625,161304900,0.0,0 -2015-05-01,185.89076550538798,187.10696552909238,185.78424217758922,187.0625762939453,103399700,0.0,0 -2015-05-04,187.51530880441484,188.21662348157002,187.3999130510505,187.59521484375,70927200,0.0,0 -2015-05-05,187.3377543337993,187.71948546811242,185.2959716054213,185.44688415527344,113326200,0.0,0 -2015-05-06,186.03279527035096,186.36125120988459,183.54714724328235,184.68344116210938,135060200,0.0,0 -2015-05-07,184.57691633721032,185.87300877396697,184.2218295701029,185.42025756835938,88244900,0.0,0 -2015-05-08,187.20458416919553,188.0745561362556,187.11580571419964,187.8614959716797,155877300,0.0,0 -2015-05-11,187.81710129399687,188.10116793901042,186.88498179357643,186.96487426757812,75708100,0.0,0 -2015-05-12,186.0771532464985,186.98264196729488,185.1982953516941,186.40560913085938,119727600,0.0,0 -2015-05-13,186.84062283098206,187.50642064687264,186.19258341630874,186.44114685058594,94667900,0.0,0 -2015-05-14,187.52419999422665,188.4829505816829,187.2312472970295,188.3852996826172,95934000,0.0,0 -2015-05-15,188.58949279785156,188.74040537594195,188.07460741899925,188.58949279785156,76510100,0.0,0 -2015-05-18,188.41187492226445,189.44163172730137,188.34085487610864,189.17532348632812,74549700,0.0,0 -2015-05-19,189.29964957293294,189.59260225239194,188.8113951071679,189.11322021484375,72114600,0.0,0 -2015-05-20,189.2197495021233,189.77902404833225,188.64273009892122,188.98007202148438,76857500,0.0,0 -2015-05-21,188.82912502268363,189.75235860855855,188.65156811959739,189.53042602539062,64764600,0.0,0 -2015-05-22,189.12204291143522,189.56590802801318,189.00664719219304,189.07766723632812,57433500,0.0,0 -2015-05-26,188.5539234520122,189.00667460582957,186.600919364942,187.04478454589844,124308600,0.0,0 -2015-05-27,187.53304510697544,189.0688148906794,187.09805233891768,188.82025146484375,93214000,0.0,0 -2015-05-28,188.49179896440938,188.72260399380588,187.87039038857964,188.60720825195312,74974600,0.0,0 -2015-05-29,188.53616950042544,188.5805451798276,187.15131236997397,187.4353790283203,124919600,0.0,0 -2015-06-01,188.14559460526365,188.5006813686194,186.97378390394454,187.817138671875,93338800,0.0,0 -2015-06-02,187.32885121926932,188.36749404212787,186.66305349597363,187.63067626953125,91531000,0.0,0 -2015-06-03,188.19884293275484,188.79362066937074,187.60406519613895,188.12782287597656,87820900,0.0,0 -2015-06-04,187.37324123370215,188.07454221176198,186.20143073382772,186.5387725830078,151882800,0.0,0 -2015-06-05,186.37896218822863,186.9382365770778,185.51786276711013,186.21917724609375,121704700,0.0,0 -2015-06-08,186.1037908472177,186.26358935467644,184.99412790485792,185.0740203857422,89063300,0.0,0 -2015-06-09,185.04737854003906,185.62441136312054,184.37270838770635,185.04737854003906,105034700,0.0,0 -2015-06-10,185.8640928423478,187.67507028149953,185.80195876368015,187.26670837402344,134551300,0.0,0 -2015-06-11,187.7372241561911,188.27874025054797,187.48866072393133,187.87039184570312,73876400,0.0,0 -2015-06-12,186.99152544683128,187.73721571006263,186.13929832764507,186.4322509765625,135382400,0.0,0 -2015-06-15,185.21609686690726,185.93515642745814,184.4615204996394,185.63333129882812,124384200,0.0,0 -2015-06-16,185.47351402620146,186.73410316916377,185.2870982196913,186.64532470703125,85308200,0.0,0 -2015-06-17,186.9471435546875,187.59519650606612,185.85523894456085,186.9471435546875,126708600,0.0,0 -2015-06-18,187.58628599633553,189.3883774069883,186.9826358991879,188.89125061035156,165867900,0.0,0 -2015-06-19,188.6326046547824,188.71288576273048,187.6513457412561,188.05276489257812,130478700,1.03,0 -2015-06-22,189.03401909936647,189.6406056042019,188.79316216993772,189.01617431640625,70696000,0.0,0 -2015-06-23,189.23918894208396,189.50680624366848,188.73072831949662,189.1499786376953,68476800,0.0,0 -2015-06-24,188.86453023676555,189.26594938350522,187.74946948938788,187.77622985839844,92307300,0.0,0 -2015-06-25,188.31142139786755,188.4452232123219,187.1249954005852,187.2052764892578,97107400,0.0,0 -2015-06-26,187.58885166492388,187.84755332288097,186.58084623084974,187.1696014404297,104174800,0.0,0 -2015-06-29,185.5906902629151,187.17853547931085,183.16431729169875,183.24459838867188,202621300,0.0,0 -2015-06-30,184.88595176324122,184.93948610249572,183.1196996920479,183.628173828125,182925100,0.0,0 -2015-07-01,185.30521921048344,185.57283646563764,184.26152416580322,185.1000518798828,135979900,0.0,0 -2015-07-02,185.60852276700766,185.7869297301184,184.48453303741036,184.93055725097656,104373700,0.0,0 -2015-07-06,183.55682300773188,185.23386492593252,183.34272646831954,184.40426635742188,117975400,0.0,0 -2015-07-07,184.6183954482234,185.69776669723686,182.07605133931472,185.56396484375,173820200,0.0,0 -2015-07-08,184.13667016007486,184.43996341693537,182.200926333762,182.45069885253906,164020100,0.0,0 -2015-07-09,184.6896990180671,184.96624546218837,182.66475890357447,182.7807159423828,144113100,0.0,0 -2015-07-10,184.9126924772094,185.52820800322976,182.82530265020074,185.08218383789062,129456900,0.0,0 -2015-07-13,186.429188122527,187.2409417699399,186.384582983057,187.12498474121094,106069400,0.0,0 -2015-07-14,187.08042384749658,188.26685005779308,187.01797391515328,187.93678283691406,81709600,0.0,0 -2015-07-15,187.98135480638032,188.4719841468315,187.3658392348669,187.8743133544922,97914100,0.0,0 -2015-07-16,188.9982938164098,189.3818817138672,188.7396057644891,189.3818817138672,106683300,0.0,0 -2015-07-17,189.37298905890717,189.6049304035684,188.9358939615033,189.54248046875,89030000,0.0,0 -2015-07-20,189.7833560551174,190.16693045271498,189.30165575857444,189.640625,70446800,0.0,0 -2015-07-21,189.49786761050785,189.77441409570983,188.57014310433513,188.8912811279297,77965000,0.0,0 -2015-07-22,188.1598035693376,188.90913473377833,188.12412761464108,188.55230712890625,88667900,0.0,0 -2015-07-23,188.69502413185342,188.80206559956042,187.10717884015776,187.49075317382812,90509100,0.0,0 -2015-07-24,187.59778031636847,187.66021662603956,185.18925237057218,185.5460662841797,117755000,0.0,0 -2015-07-27,184.60049022594563,185.14464027127536,183.99389026171323,184.4666748046875,132361100,0.0,0 -2015-07-28,185.3587662670103,186.88417530994846,184.47564689461854,186.73252868652344,123544800,0.0,0 -2015-07-29,186.86632434588861,188.25791789042032,186.71467772747994,188.01707458496094,105791300,0.0,0 -2015-07-30,187.47292073382906,188.24008300755406,186.81279992708605,188.06167602539062,91304400,0.0,0 -2015-07-31,188.59691293507862,188.62367330408918,187.47293660189123,187.77622985839844,103266900,0.0,0 -2015-08-03,187.740537269032,187.8029735873307,186.12591801616236,187.14285278320312,113965700,0.0,0 -2015-08-04,187.06262443182655,187.55325397786666,186.25978598309473,186.7771759033203,81820800,0.0,0 -2015-08-05,187.73160834193635,188.4987706137232,187.08933231850645,187.39263916015625,85786800,0.0,0 -2015-08-06,187.58890030985788,187.70487098739994,185.23389247242358,185.85833740234375,116030800,0.0,0 -2015-08-07,185.6888162738569,185.84937846791814,184.53806610343256,185.50148010253906,117858000,0.0,0 -2015-08-10,186.6879337419811,187.92788077690892,186.6879337419811,187.83868408203125,80270700,0.0,0 -2015-08-11,186.41138559644753,186.85740986908837,185.3320008675612,186.14376831054688,126081400,0.0,0 -2015-08-12,184.75218499292907,186.56304255124505,183.19109995220282,186.36679077148438,172123700,0.0,0 -2015-08-13,186.19729349937572,186.92877985756306,185.55501744248275,186.13485717773438,89383300,0.0,0 -2015-08-14,185.92970258693666,186.8931168089661,185.7780559424852,186.81283569335938,72786500,0.0,0 -2015-08-17,186.1794491581296,187.8564910888672,185.68881975887925,187.8564910888672,79072600,0.0,0 -2015-08-18,187.56210463363902,187.9367633541171,187.0625596730016,187.3123321533203,71692700,0.0,0 -2015-08-19,186.51842580241407,187.33910882512302,184.96627005555212,185.83155822753906,172946000,0.0,0 -2015-08-20,184.21693865450573,185.80478396298048,181.88869142621266,181.95114135742188,194327900,0.0,0 -2015-08-21,179.9529524501096,181.92438575957192,176.19743562972423,176.47396850585938,346588500,0.0,0 -2015-08-24,167.25013968318524,176.16169343634675,162.70960351810018,169.04315185546875,507244300,0.0,0 -2015-08-25,174.33301397165675,174.350858751072,166.74168691409398,167.0539093017578,369833100,0.0,0 -2015-08-26,171.34469345427576,173.76213749169557,168.03518722228392,173.4677734375,339257000,0.0,0 -2015-08-27,175.7514202980704,177.89233150945438,174.13681449784428,177.75852966308594,274143900,0.0,0 -2015-08-28,177.07161359091958,178.26695522193327,176.55422386744078,177.7674102783203,160414400,0.0,0 -2015-08-31,176.72374133849303,177.63363468388292,175.7424824746823,176.33123779296875,163298800,0.0,0 -2015-09-01,172.27238770151322,173.74427577160054,170.14039250748863,171.06813049316406,256000400,0.0,0 -2015-09-02,173.61049006465763,174.359821215713,171.64798591345212,174.31521606445312,160269300,0.0,0 -2015-09-03,175.07344083242262,176.67021533486965,173.91378862450787,174.44009399414062,152087800,0.0,0 -2015-09-04,172.03154762976882,172.93251165678208,170.92540266058523,171.7996063232422,207081000,0.0,0 -2015-09-08,174.78796778540791,176.27768699801533,174.101086697868,176.1171112060547,116025700,0.0,0 -2015-09-09,177.80312318382866,177.93692502144376,173.36964080977356,173.7621307373047,149347700,0.0,0 -2015-09-10,173.5569221427634,175.92977398423787,173.2803893363467,174.70767211914062,158611100,0.0,0 -2015-09-11,174.28844614517988,175.57299820621853,173.5301994500561,175.5016326904297,119691200,0.0,0 -2015-09-14,175.68900716977862,175.74252791953887,174.3330891923203,174.85047912597656,79452000,0.0,0 -2015-09-15,175.3856545522402,177.50873431885316,174.80582847708646,177.03594970703125,113806200,0.0,0 -2015-09-16,177.3570937999926,178.77544768417215,176.99135063894096,178.5702667236328,99581600,0.0,0 -2015-09-17,178.42752490084771,180.9876994548875,177.7674041842296,178.1688232421875,276046600,0.0,0 -2015-09-18,175.4904255623797,178.15357043229227,174.8179110528676,175.2572784423828,223657500,1.033,0 -2015-09-21,176.1450110562196,177.25689300912651,175.04209103823044,176.16294860839844,105726200,0.0,0 -2015-09-22,173.84951957678396,174.36959919893715,172.66588726105354,173.8764190673828,153890900,0.0,0 -2015-09-23,174.0557700316083,174.5579121467511,172.97974925882417,173.5984649658203,92790600,0.0,0 -2015-09-24,172.29823430426646,173.46392900904328,170.8725066421756,172.9707489013672,159378800,0.0,0 -2015-09-25,174.53099606641823,174.85380363580893,171.99337255638636,172.92593383789062,155054800,0.0,0 -2015-09-28,171.96646326752386,172.08303684165608,168.25418327222124,168.58595275878906,178515900,0.0,0 -2015-09-29,168.8191272382607,170.1372571447069,167.617557242473,168.6846160888672,159045600,0.0,0 -2015-09-30,170.70213691629692,172.01130470723925,169.8682253696026,171.83197021484375,163452000,0.0,0 -2015-10-01,172.2354821686396,172.60312678422238,170.20897633839846,172.2803192138672,131079000,0.0,0 -2015-10-02,170.1641406397944,174.88070503287256,169.5812864119139,174.8538055419922,211003300,0.0,0 -2015-10-05,176.16298237975752,178.20742588508696,176.0464087917624,177.96531677246094,126320800,0.0,0 -2015-10-06,177.82182566631266,178.42260373631257,176.64716901583932,177.3555450439453,110274500,0.0,0 -2015-10-07,178.3508783063748,179.18480358064522,177.07758555425613,178.80819702148438,124307300,0.0,0 -2015-10-08,178.395706499925,180.72709595886258,178.07289893918514,180.42222595214844,153055200,0.0,0 -2015-10-09,180.57465271567418,181.04091964030957,179.8573010931697,180.52981567382812,107069200,0.0,0 -2015-10-12,180.6105059740731,180.91537595309202,180.15320100554473,180.70018005371094,56395600,0.0,0 -2015-10-13,179.92007035390938,181.2740751958258,179.38206687382657,179.5614013671875,88038700,0.0,0 -2015-10-14,179.49862690829417,180.11734254086184,178.386744839188,178.70057678222656,99106200,0.0,0 -2015-10-15,179.40897650314977,181.45341994416637,179.01443238605088,181.4444580078125,134142200,0.0,0 -2015-10-16,181.87484983356063,182.28731779225413,181.0588621695069,182.26939392089844,114580100,0.0,0 -2015-10-19,181.57892681423306,182.35903930664062,181.24715735099645,182.35903930664062,76523900,0.0,0 -2015-10-20,181.89279730469673,182.7805078672634,181.62378871390413,182.1259307861328,78448500,0.0,0 -2015-10-21,182.5742563515676,182.73565328114367,180.8167455851235,180.99609375,102038000,0.0,0 -2015-10-22,182.00934398169804,184.27795876042939,180.99609797468412,184.0537872314453,174911700,0.0,0 -2015-10-23,185.8381861298773,186.4658636360668,184.9863371084527,186.07131958007812,144442300,0.0,0 -2015-10-26,185.8830375061629,185.94579842045076,185.21948484424502,185.61402893066406,69033000,0.0,0 -2015-10-27,184.89664272299322,185.61399422943043,184.52899819462215,185.2553253173828,77905800,0.0,0 -2015-10-28,185.61401375386885,187.389448315241,184.90563778924218,187.362548828125,135906700,0.0,0 -2015-10-29,186.82453838762012,187.6494878869989,186.69900289167862,187.25494384765625,90525500,0.0,0 -2015-10-30,187.46122738174677,187.8019725389982,186.27760863301765,186.44796752929688,131076900,0.0,0 -2015-11-02,186.7976752792624,188.86004258817184,186.6631641401951,188.65380859375,86270800,0.0,0 -2015-11-03,188.27718951879288,189.79259128141618,188.03508043043993,189.20077514648438,95246100,0.0,0 -2015-11-04,189.5146162711785,189.64911371576972,188.05301352234747,188.62689208984375,96224500,0.0,0 -2015-11-05,188.68965439400714,189.18283449838384,187.48809827232165,188.43858337402344,78408700,0.0,0 -2015-11-06,188.07095566577598,188.59103526812876,186.92319850277144,188.33995056152344,110471500,0.0,0 -2015-11-09,187.6853786458651,187.84678927007397,185.56919875324286,186.58245849609375,131008700,0.0,0 -2015-11-10,186.07132477365505,187.0487230059419,185.78439234096396,187.01284790039062,75874600,0.0,0 -2015-11-11,187.29984025125347,187.35363924051708,186.2058818617359,186.27761840820312,67846000,0.0,0 -2015-11-12,185.1657180949844,185.6678602260665,183.65929170173817,183.67721557617188,121315200,0.0,0 -2015-11-13,183.23777437105744,183.52470675243467,181.52510096938306,181.61476135253906,153577100,0.0,0 -2015-11-16,181.41754881749716,184.43937677100922,181.2919996211818,184.37660217285156,117645200,0.0,0 -2015-11-17,184.70837655509422,185.64988602385512,183.71305442661355,184.24209594726562,121123700,0.0,0 -2015-11-18,184.75325568726714,187.3177792809766,184.70843231415253,187.16534423828125,121342500,0.0,0 -2015-11-19,187.03976767709744,187.4522493416172,186.69006061292984,187.00390625,88220500,0.0,0 -2015-11-20,187.8108992751457,188.41167731503947,187.28185776450934,187.68536376953125,94011500,0.0,0 -2015-11-23,187.74809372433256,188.2860970423309,186.97694332109498,187.47012329101562,64931200,0.0,0 -2015-11-24,186.394131926838,188.1516426719366,185.9816639902572,187.7212371826172,98874400,0.0,0 -2015-11-25,187.85573286360486,188.0709424474217,187.4163517608577,187.6943359375,51980100,0.0,0 -2015-11-27,187.7929723215217,188.12475549835642,187.28186833493828,187.9095458984375,37317800,0.0,0 -2015-11-30,188.07994080154376,188.20547632915918,187.0128819756397,187.12945556640625,112822700,0.0,0 -2015-12-01,187.80190602953996,189.0393370088237,187.50599802656598,188.91378784179688,97858400,0.0,0 -2015-12-02,188.86001727357402,189.20076236139002,186.71693809554208,186.98594665527344,108441300,0.0,0 -2015-12-03,187.25497584606038,187.54190830766828,183.59649460472937,184.36764526367188,166224200,0.0,0 -2015-12-04,184.36761188069732,188.27716344892212,184.36761188069732,187.96331787109375,192913900,0.0,0 -2015-12-07,187.61362890751502,188.0619719576,185.79335721875742,186.82455444335938,102027100,0.0,0 -2015-12-08,185.15671541085413,186.7707394248966,184.52006226754423,185.56918334960938,103372400,0.0,0 -2015-12-09,184.88770744976412,187.1204470615536,183.08535964862062,184.12551879882812,162401500,0.0,0 -2015-12-10,184.1972630212913,185.99959721536771,183.94619199969887,184.60076904296875,116128900,0.0,0 -2015-12-11,182.34109392236323,183.04946980464106,180.69118137110607,181.02296447753906,211173300,0.0,0 -2015-12-14,181.1933845747444,182.07213320791828,179.2924005522099,181.9376220703125,182385200,0.0,0 -2015-12-15,183.55164138448043,184.81597206546107,181.9107041845076,183.84754943847656,154069600,0.0,0 -2015-12-16,185.0490955313282,186.86040518114456,183.6413055493875,186.53759765625,197017000,0.0,0 -2015-12-17,186.86940793961597,186.94114448108007,183.6772070973677,183.6951446533203,173092500,0.0,0 -2015-12-18,182.90315469608456,183.04746787389934,180.25120564042027,180.42259216308594,251393500,1.212,0 -2015-12-21,181.6763829995144,182.10033474088843,180.4857065095857,181.91090393066406,99094300,0.0,0 -2015-12-22,182.8580536027336,183.8773437181067,181.80268863329886,183.56163024902344,111026200,0.0,0 -2015-12-23,184.6350552987451,185.87985120871417,184.53583223688125,185.83474731445312,110987200,0.0,0 -2015-12-24,185.56407322751878,186.11430751322962,185.2934637197678,185.52798461914062,48539600,0.0,0 -2015-12-28,184.78842768777233,185.14923137319573,183.95856820027586,185.10414123535156,65899900,0.0,0 -2015-12-29,186.27668346320857,187.43127129811595,186.24060861501826,187.07948303222656,92640700,0.0,0 -2015-12-30,186.81793405118543,186.90814183253948,185.6001978217806,185.7535400390625,63317700,0.0,0 -2015-12-31,185.03192793771692,185.71746026099777,183.89537048339844,183.89537048339844,114877900,0.0,0 -2016-01-04,180.84654452628428,181.3336307509781,179.1326930579565,181.32461547851562,222353500,0.0,0 -2016-01-05,181.6673614720795,182.11837281015693,180.44963911753467,181.63128662109375,110845800,0.0,0 -2016-01-06,178.90716814616727,180.4586481970175,178.23968019753227,179.34014892578125,152112600,0.0,0 -2016-01-07,176.19212476684282,178.09539352900015,174.622600054445,175.03753662109375,213436100,0.0,0 -2016-01-08,176.0658292930585,176.66116763340523,172.8095264944518,173.1162109375,209817200,0.0,0 -2016-01-11,174.0994279869478,174.4602453907335,171.2219866130003,173.28761291503906,187941300,0.0,0 -2016-01-12,174.83007219592437,175.48854501052335,172.41264384497606,174.6857452392578,172330500,0.0,0 -2016-01-13,175.39828074460243,175.76811329056085,169.92301106541012,170.32891845703125,221168900,0.0,0 -2016-01-14,170.97839384444538,174.32489012486312,169.27357160859012,173.1251983642578,240795600,0.0,0 -2016-01-15,168.4707921704715,170.26580862668783,167.34326373766234,169.4088897705078,324846400,0.0,0 -2016-01-19,171.34823551722386,171.4835334146369,167.9566214084824,169.63438415527344,195244400,0.0,0 -2016-01-20,166.90129099495172,169.12928859109388,163.28418423124316,167.46054077148438,286547800,0.0,0 -2016-01-21,167.96566878149386,170.36503892813295,166.54948640301694,168.3986358642578,195772900,0.0,0 -2016-01-22,171.18581570741685,172.0697938351839,170.37400102572036,171.8533172607422,168319600,0.0,0 -2016-01-25,171.31213415189563,171.51959550041295,169.0480623331233,169.25552368164062,130371700,0.0,0 -2016-01-26,169.95908300871542,171.86235109261398,169.59827950316281,171.56468200683594,141036800,0.0,0 -2016-01-27,171.00545511011688,172.79145609774028,168.73235418528594,169.69752502441406,185681700,0.0,0 -2016-01-28,171.34825257502632,171.56472923243751,168.8225860496186,170.58152770996094,143798800,0.0,0 -2016-01-29,171.40235642640252,174.88416458104794,171.2760737996029,174.73983764648438,210529300,0.0,0 -2016-02-01,173.66643572057532,175.5155850763762,173.0440378324681,174.67669677734375,136061600,0.0,0 -2016-02-02,173.15226896428445,173.16128423556646,170.9693621020189,171.52862548828125,182564900,0.0,0 -2016-02-03,172.6561841162047,172.98992814134976,168.76846812550562,172.5569610595703,205054900,0.0,0 -2016-02-04,172.02473037052522,173.864850357156,171.34821344306548,172.82752990722656,139531800,0.0,0 -2016-02-05,172.27735936179477,172.89072832980156,168.85868484847762,169.5352020263672,180788300,0.0,0 -2016-02-08,167.56876521658145,167.88446491157592,164.88975662639464,167.2530517578125,191526700,0.0,0 -2016-02-09,165.39488979163542,168.6241328453558,165.25056285024826,167.26206970214844,184513100,0.0,0 -2016-02-10,168.14605741859546,169.88695464998878,166.9824404098319,167.1177520751953,148214100,0.0,0 -2016-02-11,164.47479206612036,166.0623605977062,163.34726385392455,164.94384765625,219058900,0.0,0 -2016-02-12,166.83813657442326,168.36254348482467,165.9361138099425,168.34451293945312,127632400,0.0,0 -2016-02-16,170.27482933537536,171.21292688953235,169.24652400549547,171.1858673095703,120250700,0.0,0 -2016-02-17,172.4306821548529,174.37905471071892,172.29537047627085,173.98216247558594,136009500,0.0,0 -2016-02-18,174.27079231047975,174.3339405095059,172.93580249615044,173.26954650878906,102343000,0.0,0 -2016-02-19,172.43968920925423,173.3507272410061,171.79023172158605,173.18836975097656,114793000,0.0,0 -2016-02-22,174.87513991014606,175.8493260971047,174.80297644106307,175.69598388671875,103640300,0.0,0 -2016-02-23,174.9923964708022,175.28105032932407,173.35070861894934,173.4770050048828,111455300,0.0,0 -2016-02-24,171.9525912944066,174.56845161264454,170.77094376243485,174.27078247070312,150812200,0.0,0 -2016-02-25,174.74885659220644,176.3905445388885,173.9370416548242,176.3815155029297,110728300,0.0,0 -2016-02-26,177.31062004607872,177.40982933617843,175.80422992895134,175.97561645507812,129833700,0.0,0 -2016-02-29,175.99365802463012,177.0039190928836,174.3880586423952,174.59552001953125,125918100,0.0,0 -2016-03-01,175.9034313218632,178.78991480140053,175.39830084207617,178.69970703125,141799700,0.0,0 -2016-03-02,178.36598921279614,179.55665212350164,177.92399309627973,179.50253295898438,102415000,0.0,0 -2016-03-03,179.3130778202312,180.22412951206374,178.69970902045443,180.20608520507812,95172200,0.0,0 -2016-03-04,180.41354106350482,181.62226184677988,179.52956274097963,180.79238891601562,129293600,0.0,0 -2016-03-07,179.80922380580932,181.36973317844874,179.7280450561416,180.93675231933594,100219000,0.0,0 -2016-03-08,179.7911767327321,180.33238211121068,178.78993095420606,178.9613037109375,123974900,0.0,0 -2016-03-09,179.82724682975754,180.215109985887,178.98835855782943,179.8452911376953,94801200,0.0,0 -2016-03-10,180.36845513093976,181.36970082288457,178.04123504253369,179.98959350585938,156838700,0.0,0 -2016-03-11,181.54107005520683,182.9392078882842,179.97155948353026,182.89410400390625,137964500,0.0,0 -2016-03-14,182.3529072686317,183.14667786321039,182.0011189759571,182.6595916748047,73612000,0.0,0 -2016-03-15,181.63130224821865,182.68666721846807,181.3516773967562,182.3619384765625,93169100,0.0,0 -2016-03-16,181.84777150438822,183.8502628858349,181.80266761919336,183.4172821044922,129303200,0.0,0 -2016-03-17,183.32709114746606,185.12210743963055,182.90313939437402,184.58090209960938,134278500,0.0,0 -2016-03-18,185.1158512992479,185.66892365704285,184.78038594337298,185.30625915527344,138372400,1.05,0 -2016-03-21,185.02518661306155,185.8139894901758,184.78038047249512,185.56918334960938,72926700,0.0,0 -2016-03-22,184.74407867608133,186.07689192938363,184.5718220606558,185.46942138671875,97471900,0.0,0 -2016-03-23,185.06143960935648,185.26090922131763,184.06409154955077,184.2454376220703,81052500,0.0,0 -2016-03-24,183.1484075028291,184.20015415338742,182.91267690933162,184.16387939453125,84360900,0.0,0 -2016-03-28,184.6080941012368,184.83476284730506,183.79209214929594,184.2726287841797,62408200,0.0,0 -2016-03-29,183.83738911700087,186.0950144925768,183.51098561492677,185.97714233398438,92922900,0.0,0 -2016-03-30,187.04706553899658,187.56386312330096,186.40332016634855,186.79319763183594,86365300,0.0,0 -2016-03-31,186.69349229822242,187.14682989469145,186.16761902614647,186.3398895263672,94584100,0.0,0 -2016-04-01,185.2790292376063,187.80864622901598,184.94355010268492,187.6091766357422,114423500,0.0,0 -2016-04-04,187.52759741878307,187.74520440568978,186.67532068018548,187.00172424316406,63497000,0.0,0 -2016-04-05,185.56915700358346,187.01076682769454,184.86195166214173,185.1339569091797,99662200,0.0,0 -2016-04-06,185.13398697369678,187.21934242662002,184.9435791194208,187.15586853027344,91839800,0.0,0 -2016-04-07,185.99529671094314,186.37609852572066,184.13661031626398,184.91635131835938,113859000,0.0,0 -2016-04-08,186.176673391506,186.6390865757597,184.84385980412475,185.41506958007812,95040600,0.0,0 -2016-04-11,186.09504955067646,186.83852971453715,184.88010833314914,184.97984313964844,83757500,0.0,0 -2016-04-12,185.16118504566057,187.00173434234597,184.68971013261512,186.70252990722656,115350600,0.0,0 -2016-04-13,187.68171919309174,188.67906719613865,187.53664787723727,188.58839416503906,96336400,0.0,0 -2016-04-14,188.65187000582225,189.13240663914567,188.22573165781662,188.5974578857422,65212900,0.0,0 -2016-04-15,188.59749320301455,188.7425645475366,188.04442080744354,188.3889617919922,75761600,0.0,0 -2016-04-18,188.38894060171467,189.7489531754116,187.68173517017334,189.7126922607422,82531000,0.0,0 -2016-04-19,190.16600819685476,190.58307092464096,189.44066547294108,190.31106567382812,88316100,0.0,0 -2016-04-20,190.3564068357279,191.23588266179726,189.84867106702023,190.49241638183594,81100300,0.0,0 -2016-04-21,190.51055098928958,190.62842316914612,189.1777376016113,189.46788024902344,85695000,0.0,0 -2016-04-22,189.0870784003672,189.75800906167265,188.50680694030584,189.46788024902344,99251700,0.0,0 -2016-04-25,188.8241376962211,189.18681601086314,188.17133056462853,189.1414794921875,66166500,0.0,0 -2016-04-26,189.53135823119524,189.96657224347345,188.91482579928078,189.4225616455078,75864200,0.0,0 -2016-04-27,189.01454524983333,190.22948647379724,188.63374339611764,189.8124237060547,77329400,0.0,0 -2016-04-28,189.00547226298383,190.1841386682067,187.64545979409996,188.0897216796875,97216200,0.0,0 -2016-04-29,187.4278519544672,187.79959201459124,185.89556903302702,187.07424926757812,142424100,0.0,0 -2016-05-02,187.60920665689184,188.7516122818258,187.1468073447251,188.56121826171875,62188000,0.0,0 -2016-05-03,187.24653907619475,187.50040698866937,186.12225701040458,186.92013549804688,106422100,0.0,0 -2016-05-04,185.85930260952566,186.63904361835762,185.34249124837297,185.87742614746094,92243800,0.0,0 -2016-05-05,186.37615208921946,186.7569540134374,185.38787944055156,185.84121704101562,67619200,0.0,0 -2016-05-06,185.01611053799982,186.56653097796246,184.85291566787927,186.5211944580078,89315000,0.0,0 -2016-05-09,186.3852099025949,187.1377380729329,186.19480204128,186.6753387451172,74374900,0.0,0 -2016-05-10,187.4278550665887,189.01453629931734,187.35531940720676,188.99639892578125,77472200,0.0,0 -2016-05-11,188.50682402935024,189.0780199367348,187.22840881347656,187.22840881347656,81727000,0.0,0 -2016-05-12,187.94467534558802,188.1260214333548,186.20386081418684,187.28280639648438,89586300,0.0,0 -2016-05-13,186.96546194139555,187.55479517042704,185.30624499480237,185.65077209472656,96474600,0.0,0 -2016-05-16,185.83212785889765,187.99000511117453,185.7686539635077,187.48226928710938,77486800,0.0,0 -2016-05-17,187.1921387557031,187.5004049553989,185.17024341324094,185.73239135742188,114924900,0.0,0 -2016-05-18,185.36062010998907,187.04703598957477,184.62621564924004,185.78675842285156,120062100,0.0,0 -2016-05-19,185.0160714429008,185.45127150602517,183.85552871806217,185.14300537109375,115430500,0.0,0 -2016-05-20,185.79582597558962,186.86570959270975,185.74142769306448,186.31263732910156,104990400,0.0,0 -2016-05-23,186.3307988411046,186.63000329073247,185.85933773996163,186.05880737304688,58682600,0.0,0 -2016-05-24,186.92917535030088,188.80599916327978,186.90197620820803,188.47052001953125,93537800,0.0,0 -2016-05-25,189.19585961346212,190.1932075895051,188.470516888591,189.74893188476562,76621400,0.0,0 -2016-05-26,189.89403302824044,190.13883917622934,189.4678946292377,189.80335998535156,55280700,0.0,0 -2016-05-27,189.97562412723744,190.6284312769169,189.92122583722474,190.61936950683594,64211200,0.0,0 -2016-05-31,190.90949047241386,191.02736265243112,189.65827451457807,190.25668334960938,109879400,0.0,0 -2016-06-01,189.60390644390043,190.83698522407275,189.39537502928187,190.64659118652344,69936200,0.0,0 -2016-06-02,190.22044248283598,191.24497595831798,189.71270663042642,191.2268524169922,63044700,0.0,0 -2016-06-03,190.62842524550265,191.02736447265818,189.36814750595025,190.65562438964844,101757100,0.0,0 -2016-06-06,191.03643111227976,192.00658006075346,190.86416063845633,191.6257781982422,64887000,0.0,0 -2016-06-07,191.78897680733198,192.5233814018369,191.76177766196244,191.9249725341797,60974800,0.0,0 -2016-06-08,192.07004619869264,192.68659244900542,191.93405047019328,192.5505828857422,66170900,0.0,0 -2016-06-09,191.77084723881916,192.41459265321924,191.48071839814554,192.28765869140625,73786900,0.0,0 -2016-06-10,190.81882791880346,191.18149238742905,189.88493993430535,190.46522521972656,113829200,0.0,0 -2016-06-13,189.82147648714314,190.73721324666062,188.90573972762564,188.99639892578125,117751200,0.0,0 -2016-06-14,188.58838813742798,189.2593325757388,187.6091775388507,188.62464904785156,125059300,0.0,0 -2016-06-15,188.62465450729138,189.82147210733527,188.1622552535083,188.36172485351562,109124500,0.0,0 -2016-06-16,188.36172458957907,189.10520470397583,186.4033033384853,188.92385864257812,149533100,0.0,0 -2016-06-17,188.81271976557395,188.84006036102093,187.5185472564732,188.22032165527344,117055700,1.078,0 -2016-06-20,190.31649890399362,191.03649100772446,189.34130476260674,189.4324493408203,82789600,0.0,0 -2016-06-21,189.8426054970614,190.40766304251466,189.3686786391292,189.97019958496094,72461700,0.0,0 -2016-06-22,190.16156232953944,190.93624957306923,189.50536026381587,189.66030883789062,95560500,0.0,0 -2016-06-23,191.2187369375745,192.18480812898474,190.72659244812874,192.130126953125,102731400,0.0,0 -2016-06-24,185.5863833798353,192.1666214705794,184.75701499372502,185.23094177246094,333444400,0.0,0 -2016-06-27,183.72712478484172,183.73624758602958,181.0476356969278,181.91346740722656,230775800,0.0,0 -2016-06-28,183.626896246281,185.22182911924747,183.29879521328806,185.19448852539062,159382400,0.0,0 -2016-06-29,186.68913331737346,188.59393517215221,186.57977096221555,188.34786987304688,137328600,0.0,0 -2016-06-30,188.84913860564131,190.9726651867812,188.25672672840665,190.91798400878906,165021900,0.0,0 -2016-07-01,190.917986391582,191.83849925496665,190.74482005464,191.31900024414062,106055300,0.0,0 -2016-07-05,190.43495458322576,190.55343974386506,189.30483978343784,189.94281005859375,109803700,0.0,0 -2016-07-06,189.4142161279304,191.2096558320299,188.71244182009053,191.08206176757812,96021500,0.0,0 -2016-07-07,191.27341601721096,191.98429910901294,190.14330131060677,190.9635467529297,85593800,0.0,0 -2016-07-08,192.3489280107625,194.07145514311568,192.1028487327942,193.80714416503906,133971000,0.0,0 -2016-07-11,194.29926222455012,195.10128998160437,194.08052358897817,194.4906463623047,73633900,0.0,0 -2016-07-12,195.5205076401306,196.22228187726893,194.51797301564724,195.90328979492188,101275600,0.0,0 -2016-07-13,196.34987276036705,196.35898165436677,195.3564609527697,195.87594604492188,87324100,0.0,0 -2016-07-14,197.22480786098433,197.47088707660217,196.5503881016962,196.96961975097656,91230900,0.0,0 -2016-07-15,197.57114005865645,197.7807558827841,196.23139553103692,196.705322265625,107155400,0.0,0 -2016-07-18,196.83288817535967,197.40706829272625,196.55946840962764,197.23390197753906,58725900,0.0,0 -2016-07-19,196.78733754115123,197.0698662310236,196.52304054612145,197.03341674804688,54345700,0.0,0 -2016-07-20,197.03345309843544,198.1088868785107,197.03345309843544,197.85369873046875,58159500,0.0,0 -2016-07-21,197.7351998876485,197.9721563044442,196.632411760676,197.10633850097656,67777300,0.0,0 -2016-07-22,197.23391632346141,198.04505287988385,196.9513876441143,197.99037170410156,62787500,0.0,0 -2016-07-25,197.77165934634488,197.8263405293855,196.83292861958796,197.45266723632812,55873100,0.0,0 -2016-07-26,197.34333153159898,197.92662074068517,196.64155713877736,197.54383850097656,70080500,0.0,0 -2016-07-27,197.94481242010363,198.01772529483716,196.51392332853732,197.3341827392578,84083900,0.0,0 -2016-07-28,197.12456496140192,197.87191154270187,196.6324204104971,197.56204223632812,65035700,0.0,0 -2016-07-29,197.27953549718262,198.26382470863678,196.9787750521839,197.88104248046875,79519400,0.0,0 -2016-08-01,197.94481223999884,198.36404388594906,197.23392909537986,197.7169647216797,73311400,0.0,0 -2016-08-02,197.4526550200528,197.61671246573434,195.55697589394978,196.45013427734375,92295500,0.0,0 -2016-08-03,196.38635216487268,197.08812649761018,196.06737394578147,197.02432250976562,53993600,0.0,0 -2016-08-04,197.14275742005938,197.5711118081413,195.26529635231677,197.23390197753906,46585500,0.0,0 -2016-08-05,197.23397142927044,198.89269448716996,197.23397142927044,198.8471221923828,71892200,0.0,0 -2016-08-08,199.04757007433898,199.1569463307008,198.44606324453378,198.7285919189453,39906500,0.0,0 -2016-08-09,198.80156380430753,199.37573021714758,198.50080334676662,198.8471221923828,51251700,0.0,0 -2016-08-10,198.96556437175178,199.0475861406128,197.98126142529307,198.3549346923828,57941100,0.0,0 -2016-08-11,198.91999482470172,199.5397473136135,198.637466123597,199.2754364013672,72504300,0.0,0 -2016-08-12,198.9473158672615,199.33011190302128,198.67390999415835,199.10226440429688,61313500,0.0,0 -2016-08-15,199.4941773990051,200.05012591339272,199.48506850446768,199.67645263671875,49813500,0.0,0 -2016-08-16,199.229910898129,199.30280987901,198.64662170410156,198.64662170410156,53213600,0.0,0 -2016-08-17,198.68306899765048,199.16610470423632,197.78991047126496,199.02027893066406,75134300,0.0,0 -2016-08-18,198.99291589406232,199.5032921372939,198.8744446347683,199.4668426513672,52989300,0.0,0 -2016-08-19,198.96560081375313,199.36661474391187,198.44611560911036,199.1752166748047,75443000,0.0,0 -2016-08-22,198.91999744024176,199.41215588007074,198.5281063739976,199.16607666015625,61368800,0.0,0 -2016-08-23,199.82226573469845,200.14125781052724,199.50327365886963,199.56707763671875,53399200,0.0,0 -2016-08-24,199.4121587651755,199.51241223350158,198.09975478225593,198.5463409423828,71728900,0.0,0 -2016-08-25,198.13618714299866,198.85619305512273,197.9721436126665,198.40960693359375,69224800,0.0,0 -2016-08-26,198.61014522609884,199.70381065453046,197.08812530296902,198.0359649658203,122506300,0.0,0 -2016-08-29,198.1726920981532,199.29369817734198,198.13622870151468,199.01116943359375,70502200,0.0,0 -2016-08-30,198.92000085631932,199.2207612621111,198.09064642342508,198.68304443359375,58114500,0.0,0 -2016-08-31,198.3276120574558,198.45520612280484,197.28862783769668,198.1179962158203,85269500,0.0,0 -2016-09-01,198.10887401586817,198.43697502872106,196.88761454285867,198.12710571289062,97844200,0.0,0 -2016-09-02,199.0385106290384,199.475974043044,198.4096491488803,199.02027893066406,79293900,0.0,0 -2016-09-06,199.32100474599315,199.70378690508696,198.55544042780554,199.62176513671875,56702100,0.0,0 -2016-09-07,199.44861149023205,199.79494418765836,198.9564669419981,199.60354614257812,76554900,0.0,0 -2016-09-08,199.24808060634433,199.5397320863308,198.81972618680672,199.1478271484375,74102900,0.0,0 -2016-09-09,197.744333962618,197.79901514986395,194.35396128625985,194.3813018798828,221589100,0.0,0 -2016-09-12,193.5701323201806,197.5984746756418,193.49721944731644,197.1701202392578,168110900,0.0,0 -2016-09-13,195.8030318726744,196.08556055858222,193.6703825273945,194.335693359375,182828800,0.0,0 -2016-09-14,194.3903809181141,195.6754442478582,193.67038888544477,194.26278686523438,134185500,0.0,0 -2016-09-15,194.0896229325381,196.61416325110227,193.8982249112066,196.20404052734375,134427900,0.0,0 -2016-09-16,195.54637756576983,195.73874243827822,194.7128337234547,195.44561767578125,155236400,1.082,0 -2016-09-19,196.14175541881957,196.8287507637486,195.13415665547464,195.48223876953125,80250500,0.0,0 -2016-09-20,196.39827892039568,196.56315113315597,195.45480620882012,195.49143981933594,69665300,0.0,0 -2016-09-21,196.24254722986987,197.88217023672362,195.50974928063889,197.6898193359375,110284400,0.0,0 -2016-09-22,198.7706594371377,199.2561350447954,198.5050273785342,198.93553161621094,76678700,0.0,0 -2016-09-23,198.5141763173653,198.6607386789955,197.74474488424093,197.8455047607422,73630900,0.0,0 -2016-09-26,196.9569972626846,197.1493481399109,196.03183454902648,196.24252319335938,89827300,0.0,0 -2016-09-27,196.06850076206618,197.56156134269472,195.6746161096721,197.4608154296875,78494800,0.0,0 -2016-09-28,197.69894994420642,198.60578886732677,196.6730413275539,198.44090270996094,87411000,0.0,0 -2016-09-29,198.2210641336691,198.65158236259504,196.05931808221698,196.6455535888672,128070600,0.0,0 -2016-09-30,197.53408165464003,198.88059382427252,197.26844956985659,198.12948608398438,117202900,0.0,0 -2016-10-03,197.68981530865145,197.89132111305057,196.97532718941181,197.65316772460938,83512100,0.0,0 -2016-10-04,197.7722360910982,198.01038946109588,196.0135295711475,196.6455535888672,119948100,0.0,0 -2016-10-05,197.31425780310428,197.97377455750353,197.24097661073122,197.51577758789062,72816000,0.0,0 -2016-10-06,197.27760686144757,197.89132111305057,196.70054019388667,197.65316772460938,62927400,0.0,0 -2016-10-07,197.9463071685825,198.12950317150424,196.19675529021785,196.975341796875,89788300,0.0,0 -2016-10-10,198.00125122070312,198.49588179293522,197.84553392987158,198.00125122070312,51855000,0.0,0 -2016-10-11,197.54325638284965,197.61653757525792,194.72199337144323,195.50057983398438,130367400,0.0,0 -2016-10-12,195.64712079549247,196.31580636163778,195.11584269142597,195.75704956054688,73866100,0.0,0 -2016-10-13,194.33730393485746,195.64716873718143,193.467112369619,195.1158905029297,101357000,0.0,0 -2016-10-14,196.16011702510184,196.65476163115133,195.13420817842103,195.21664428710938,93346200,0.0,0 -2016-10-17,195.18913567998035,195.4639366437999,194.34642297403587,194.53878784179688,58275700,0.0,0 -2016-10-18,196.24252517725375,196.30663747799179,195.35401003491322,195.75704956054688,76869700,0.0,0 -2016-10-19,196.04102141871482,196.60893317285775,195.65630565200914,196.2791748046875,66519200,0.0,0 -2016-10-20,195.90364239357092,196.50820181916717,195.20749194943457,195.91281127929688,73639800,0.0,0 -2016-10-21,195.91280351633918,196.0959995231202,194.88688071983847,196.00439453125,89089100,0.0,0 -2016-10-24,196.93869629343288,197.23182106197237,196.46237553303533,196.8379364013672,60146600,0.0,0 -2016-10-25,196.64555760443105,196.9203585612442,196.00436468983852,196.17840576171875,66542300,0.0,0 -2016-10-26,195.29905501703485,196.4073997490557,195.04256388009176,195.78453063964844,75705500,0.0,0 -2016-10-27,196.55399078513526,196.59062439463725,195.1799998089872,195.26243591308594,77220200,0.0,0 -2016-10-28,195.23493517115,195.9585641870337,193.9250706307031,194.68533325195312,140623200,0.0,0 -2016-10-31,195.04258724352553,195.2807546184397,194.52047795421106,194.69451904296875,61272500,0.0,0 -2016-11-01,195.04255038822777,195.09752175609958,191.9923033767502,193.28384399414062,122781800,0.0,0 -2016-11-02,192.95408816819548,193.3662965593096,191.65337865085272,192.12054443359375,103330800,0.0,0 -2016-11-03,192.34953904444993,192.57853748962916,190.9480696781095,191.24118041992188,88939300,0.0,0 -2016-11-04,191.3602759186551,192.25794596572615,190.87480030300753,191.030517578125,109122100,0.0,0 -2016-11-07,191.03051635119542,195.28072717019882,191.03051635119542,195.24407958984375,109794900,0.0,0 -2016-11-08,194.8227491725293,196.7280182042583,194.53879329350937,196.1234588623047,106772100,0.0,0 -2016-11-09,194.52962938766777,198.86229080559676,194.50215068750825,198.20277404785156,258429000,0.0,0 -2016-11-10,199.04550040798787,199.97064932284817,197.14023119723134,198.69741821289062,172113300,0.0,0 -2016-11-11,197.9279301051796,198.49584175447785,197.23177989065417,198.23936462402344,100552700,0.0,0 -2016-11-14,198.79815062743512,199.0179941903057,197.59820088113426,198.39511108398438,94580000,0.0,0 -2016-11-15,198.80732346556889,199.9431610107422,198.58749385982858,199.9431610107422,91652600,0.0,0 -2016-11-16,199.28362531167426,199.8149034366837,199.15538672818627,199.5675811767578,65617700,0.0,0 -2016-11-17,199.73246937136992,200.65761816329163,199.6133856937223,200.593505859375,69797200,0.0,0 -2016-11-18,200.6667918147694,200.84998780068594,199.95230370886662,200.14466857910156,86265800,0.0,0 -2016-11-21,200.75838152666032,201.68353033460485,200.60266424078597,201.6560516357422,72402600,0.0,0 -2016-11-22,201.98583098674277,202.24230818741586,201.27135678815927,202.04995727539062,67429000,0.0,0 -2016-11-23,201.5003495566162,202.21482373488064,201.28967485711738,202.1598663330078,56620200,0.0,0 -2016-11-25,202.52623398974964,202.94758330902928,202.4437839255809,202.91094970703125,37872300,0.0,0 -2016-11-28,202.58122666395943,202.87433746186176,201.84842870376582,201.95834350585938,76572500,0.0,0 -2016-11-29,201.9949815610216,202.83769428354938,201.6743781007635,202.3522186279297,69886700,0.0,0 -2016-11-30,203.0117527429098,203.18579383755178,201.8026339655817,201.86676025390625,113291800,0.0,0 -2016-12-01,202.18734401282134,202.18734401282134,200.7400718706578,201.1248016357422,79040500,0.0,0 -2016-12-02,201.21635473733312,201.74763281426033,200.84079392790863,201.2255096435547,74840300,0.0,0 -2016-12-05,202.11405839366898,202.80105385248766,201.90338369984627,202.43466186523438,67837800,0.0,0 -2016-12-06,202.63616304192306,203.1124837631754,202.12320871609302,203.07583618164062,59877400,0.0,0 -2016-12-07,202.91094573680033,205.7963205484342,202.7827071668823,205.73220825195312,110738100,0.0,0 -2016-12-08,205.70477400138785,206.7398376904497,205.4208041280414,206.2360382080078,99714400,0.0,0 -2016-12-09,206.4741505103396,207.5000590176819,206.43750293396016,207.4817352294922,88005800,0.0,0 -2016-12-12,207.38100005277735,207.89396834448286,206.79476455349925,207.2436065673828,102016100,0.0,0 -2016-12-13,207.94894346453006,209.15804816993847,207.93061967259658,208.62677001953125,110477500,0.0,0 -2016-12-14,208.30616306429593,209.05727074708116,206.43752779861762,206.90469360351562,142501800,0.0,0 -2016-12-15,207.16120130229385,208.67258577435922,206.91387901482463,207.756591796875,124972600,0.0,0 -2016-12-16,208.24397182507101,208.308476066505,207.00930890566215,207.3502197265625,156420200,1.329,0 -2016-12-19,207.54372318311616,208.25319955858097,207.38708809802304,207.8017120361328,90341100,0.0,0 -2016-12-20,208.3729843104508,208.75998167392422,208.12421836736792,208.60333251953125,89838800,0.0,0 -2016-12-21,208.46512227610816,208.64939802536853,208.02285766601562,208.02285766601562,67909000,0.0,0 -2016-12-22,207.86622072377529,207.99521515304184,207.23966631066745,207.66351318359375,56219100,0.0,0 -2016-12-23,207.7095873945111,207.97679919934507,207.50689389823143,207.96759033203125,36697800,0.0,0 -2016-12-27,208.25320282734322,208.9073838365685,208.2347710348847,208.48355102539062,42672500,0.0,0 -2016-12-28,208.7599632146933,208.77838094706715,206.64075706667234,206.76052856445312,64095000,0.0,0 -2016-12-29,206.83421850585037,207.21199286726767,206.2445277711676,206.71444702148438,48696100,0.0,0 -2016-12-30,207.06457650368367,207.15672139695974,205.22179111285647,205.9589080810547,108998300,0.0,0 -2017-01-03,207.35022557689848,208.07813374826495,206.2814206343511,207.53451538085938,91366500,0.0,0 -2017-01-04,207.88466742054965,208.92584592569528,207.87545855265415,208.7692108154297,78744400,0.0,0 -2017-01-05,208.48356101115988,208.76919054092542,207.75565279723583,208.60333251953125,78379000,0.0,0 -2017-01-06,208.72311597693596,209.84721635063045,208.1426339969337,209.34967041015625,71559900,0.0,0 -2017-01-09,209.07326962959166,209.22069587017174,208.62178204006773,208.6586456298828,46939700,0.0,0 -2017-01-10,208.67706336545024,209.57081561737425,208.24400757083384,208.6586456298828,63771900,0.0,0 -2017-01-11,208.56650097297006,209.2483367919922,207.85702449122246,209.2483367919922,74650000,0.0,0 -2017-01-12,208.69545809710038,208.92580628484552,207.27651944669887,208.7230987548828,72113200,0.0,0 -2017-01-13,208.9074027803031,209.5247343199293,208.87055325138283,209.20225524902344,62717900,0.0,0 -2017-01-17,208.5204149888571,208.953470755918,208.05050969366602,208.4651336669922,61240800,0.0,0 -2017-01-18,208.7322978540288,208.9718689560498,208.14260708336752,208.92579650878906,54793300,0.0,0 -2017-01-19,209.0087593649998,209.1561856013392,207.69117428348324,208.15187072753906,66608800,0.0,0 -2017-01-20,208.8797471321585,209.44179730840878,208.20713431774047,208.91661071777344,129168600,0.0,0 -2017-01-23,208.91661830236131,208.98110849052094,207.56216969827983,208.37298583984375,75061600,0.0,0 -2017-01-24,208.60333224298657,210.15127951681143,208.483560734774,209.70901489257812,95555300,0.0,0 -2017-01-25,210.72251815509182,211.52413940429688,210.54745128389374,211.52413940429688,84437700,0.0,0 -2017-01-26,211.36752974417786,211.65317335857483,211.00818706856765,211.30303955078125,59970700,0.0,0 -2017-01-27,211.3859527192419,211.54258782162984,210.77783004455492,210.97132873535156,59711100,0.0,0 -2017-01-30,210.23420768398182,210.26184834510104,208.61256130784938,209.66294860839844,79737300,0.0,0 -2017-01-31,209.13773188521188,209.70900497631143,208.52962332789812,209.64450073242188,75880800,0.0,0 -2017-02-01,209.64454077571943,210.62121507179907,209.1009222991228,209.7274627685547,79117700,0.0,0 -2017-02-02,209.72742900382377,210.16970767975624,208.990325995947,209.8656463623047,69657600,0.0,0 -2017-02-03,210.8331264237251,211.50573929229716,210.50142442317704,211.31224060058594,80563200,0.0,0 -2017-02-06,210.87916692334446,211.30301380003874,210.57510561036912,210.9344482421875,57790100,0.0,0 -2017-02-07,211.34909491014534,211.60708378154052,210.7409722592828,210.9436798095703,57931200,0.0,0 -2017-02-08,210.9436873574584,211.35831133994088,210.36320534637915,211.22010803222656,51566200,0.0,0 -2017-02-09,211.22009550773245,212.79566935960875,211.22009550773245,212.4731903076172,65955200,0.0,0 -2017-02-10,212.8417250084183,213.55120136172758,212.4915912648277,213.31163024902344,66015900,0.0,0 -2017-02-13,213.83686239241283,214.749046409731,213.8092217306159,214.47262573242188,55182100,0.0,0 -2017-02-14,214.27912622748715,215.3387364765951,213.91057469869983,215.3295135498047,71109000,0.0,0 -2017-02-15,215.0991494621056,216.65630556614258,215.04386814279943,216.45359802246094,86785800,0.0,0 -2017-02-16,216.48123403285507,216.67473270560956,215.46771039555233,216.26931762695312,84722400,0.0,0 -2017-02-17,215.55985744971176,216.6102447509766,215.54142565583993,216.61024475097656,77204100,0.0,0 -2017-02-21,217.00645530008907,218.0844832838891,216.99723237330045,217.90020751953125,88946100,0.0,0 -2017-02-22,217.46713848351314,217.94625262976808,217.29207159727667,217.70669555664062,62115200,0.0,0 -2017-02-23,218.2595105024733,218.2779282340231,217.04326537200654,217.85409545898438,74615900,0.0,0 -2017-02-24,216.9511572681623,218.17659733346724,216.9050848157862,218.1305389404297,82381600,0.0,0 -2017-02-27,218.0383950581075,218.65572655669396,217.77119732801492,218.47145080566406,56515400,0.0,0 -2017-02-28,218.06606593769996,218.324054836762,217.4671661490217,217.8817901611328,96961900,0.0,0 -2017-03-01,219.6508440725056,221.42913960914888,219.63241227862855,220.93157958984375,149158200,0.0,0 -2017-03-02,220.7288891614283,220.7381120887521,219.485017135333,219.54029846191406,70246000,0.0,0 -2017-03-03,219.44814908548577,219.8535642179627,219.04273395300885,219.67849731445312,81974300,0.0,0 -2017-03-06,218.8308085604558,219.40206764591971,218.3793209888004,219.02430725097656,55391500,0.0,0 -2017-03-07,218.7018191937027,219.07959365674967,218.14897783025154,218.3701171875,65103700,0.0,0 -2017-03-08,218.6833917721527,218.9598124594059,217.81728017978472,217.96470642089844,78168800,0.0,0 -2017-03-09,218.09367790038775,218.59123789691535,217.20914866553224,218.24110412597656,90683900,0.0,0 -2017-03-10,219.2638635139542,219.30993596955645,217.99233684789783,219.00587463378906,81991700,0.0,0 -2017-03-13,218.94138816821987,219.1625275374696,218.59126840775028,219.116455078125,57256800,0.0,0 -2017-03-14,218.5359429672041,218.59123834641764,217.62377307059225,218.2779541015625,59880800,0.0,0 -2017-03-15,218.88611914890907,220.61834249041812,218.6373391019316,220.16685485839844,96081800,0.0,0 -2017-03-16,220.31423134836308,220.39715332551137,219.3836296885762,219.73374938964844,78344000,0.0,0 -2017-03-17,220.01415994131068,220.21774935775255,219.34786987304688,219.34786987304688,89002100,1.033,0 -2017-03-20,219.34786854121472,219.65325266402334,218.6908415270988,219.10726928710938,52537000,0.0,0 -2017-03-21,219.75502722717718,219.88458283220447,216.15521707266674,216.2940216064453,131809300,0.0,0 -2017-03-22,216.33107469309152,217.10840842792925,215.66478460022955,216.8030242919922,97569200,0.0,0 -2017-03-23,216.80299031284127,217.7839133178987,216.1737242795975,216.57164001464844,100410300,0.0,0 -2017-03-24,216.89553446982254,217.50628852093547,215.58146648030458,216.41432189941406,112504900,0.0,0 -2017-03-27,214.62833018785219,216.46988397369446,214.33220909594777,216.1922607421875,87454500,0.0,0 -2017-03-28,215.86838152083203,218.21889478747067,215.7480748241778,217.7654571533203,93483900,0.0,0 -2017-03-29,217.4600499962033,218.21887169660118,217.2194366283554,217.96900939941406,61950400,0.0,0 -2017-03-30,217.90426414831828,218.87593842173166,217.71918669635966,218.6630859375,56737900,0.0,0 -2017-03-31,218.30216725017291,218.86666262409867,218.09857782872405,218.15411376953125,73733100,0.0,0 -2017-04-03,218.2096437488043,218.42248210809402,216.46063574132722,217.7747039794922,85546500,0.0,0 -2017-04-04,217.46930924689244,218.0060437046005,217.0621304085964,217.9134979248047,56466200,0.0,0 -2017-04-05,218.63529117096923,219.68099908734345,217.04359991368375,217.2657012939453,108800600,0.0,0 -2017-04-06,217.41377946151954,218.43171239946065,216.94181577055778,217.87648010253906,69135800,0.0,0 -2017-04-07,217.60814604855634,218.39474293189463,217.1361963908567,217.6544189453125,74412300,0.0,0 -2017-04-10,217.80246278644645,218.63531835510184,217.21945541608528,217.78395080566406,67615300,0.0,0 -2017-04-11,217.37674320534515,217.6358544200174,215.9331195463133,217.52481079101562,88045300,0.0,0 -2017-04-12,217.2286810745368,217.43227046658666,216.33104078790845,216.57164001464844,81864400,0.0,0 -2017-04-13,216.2107776570659,216.9973744775353,215.16506958007815,215.16506958007812,92880400,0.0,0 -2017-04-17,215.720303724691,217.0713958740234,215.50746537339677,217.07139587402344,68405400,0.0,0 -2017-04-18,216.28479469525533,216.99735765569454,215.69253842333922,216.42359924316406,83225800,0.0,0 -2017-04-19,217.0251309643337,217.42304677140794,215.78508240998832,216.02569580078125,68699900,0.0,0 -2017-04-20,216.68272093742806,218.25591453233895,216.3403269557259,217.78395080566406,92572200,0.0,0 -2017-04-21,217.70064247705065,217.75616429236592,216.66419760315958,217.08987426757812,110389800,0.0,0 -2017-04-24,219.4866811809167,219.69953365407332,217.06213420925127,219.47743225097656,119209900,0.0,0 -2017-04-25,220.16222980836716,221.12464096105631,220.06968402884746,220.75448608398438,76698300,0.0,0 -2017-04-26,220.71747159352046,221.66138492720557,220.5694181086417,220.6156768798828,84702500,0.0,0 -2017-04-27,220.95803671600947,221.12460214530228,220.2269618994441,220.80072021484375,57410300,0.0,0 -2017-04-28,221.07838661714058,221.10614752922461,220.18074613841114,220.31956481933594,63532800,0.0,0 -2017-05-01,220.87477111816403,221.32822282953674,220.4305824567294,220.87477111816406,66882500,0.0,0 -2017-05-02,221.02283959496654,221.15239521009008,220.52312911391945,220.95806884765625,57375700,0.0,0 -2017-05-03,220.95807154912833,221.05986625657732,219.967885383897,220.689697265625,73137700,0.0,0 -2017-05-04,221.01357636752843,221.096859088898,220.04190225671059,220.94879150390625,61462700,0.0,0 -2017-05-05,221.34676070169766,221.83722230868707,220.87479695574226,221.81871032714844,62001300,0.0,0 -2017-05-08,221.8649294444963,222.02224594818242,221.32819507400777,221.78164672851562,48385700,0.0,0 -2017-05-09,222.05929183098806,222.27213016634607,221.20791024855086,221.5780792236328,51363200,0.0,0 -2017-05-10,221.53180926932876,221.97599792480472,221.3097078813394,221.9759979248047,54293800,0.0,0 -2017-05-11,221.49479158278226,221.6983809844325,220.36580094472265,221.52255249023438,62358300,0.0,0 -2017-05-12,221.254199495768,221.56883255747576,220.86553263356956,221.15240478515625,53912700,0.0,0 -2017-05-15,221.60586232888966,222.50350276768467,221.58735034815567,222.3739471435547,61918900,0.0,0 -2017-05-16,222.68855630318257,222.71631721105084,221.75390612377802,222.1703338623047,51241800,0.0,0 -2017-05-17,222.17033848003365,222.17033848003365,218.16334928856594,218.22813415527344,172174100,0.0,0 -2017-05-18,218.14484402968165,220.01415860543295,217.86722081617353,219.10726928710938,107047700,0.0,0 -2017-05-19,219.62548983997357,221.24494209739845,219.56996802185662,220.53237915039062,115011400,0.0,0 -2017-05-22,221.07834126283424,221.827928096839,221.0043215927984,221.652099609375,61010600,0.0,0 -2017-05-23,222.05007810691316,222.31845243852638,221.64289920412466,222.1426239013672,48341700,0.0,0 -2017-05-24,222.39243696750214,222.77184075147343,222.03151692141535,222.66079711914062,46927700,0.0,0 -2017-05-25,223.20678365124468,224.02114128795776,222.9846963834159,223.72500610351562,64071700,0.0,0 -2017-05-26,223.52144131327853,223.85458637221754,223.43815857866986,223.67877197265625,46629900,0.0,0 -2017-05-30,223.33632267756465,223.7527503943192,223.16975723906356,223.48439025878906,35201900,0.0,0 -2017-05-31,223.79904891793456,223.83607287773313,222.6885701725338,223.42889404296875,91796000,0.0,0 -2017-06-01,223.91935073379014,225.22416993848083,223.61396661436237,225.20565795898438,68962000,0.0,0 -2017-06-02,225.26117974714742,226.12181028733056,224.9465466982646,225.95523071289062,88666100,0.0,0 -2017-06-05,225.77016904948638,226.0755531902048,225.5758285524823,225.78868103027344,44698800,0.0,0 -2017-06-06,225.18714131786197,225.77939756496073,224.98355190912463,225.0668487548828,50375400,0.0,0 -2017-06-07,225.4277698054155,225.72389088857585,224.7152068270396,225.48329162597656,54144300,0.0,0 -2017-06-08,225.58506564611804,226.10328808449418,225.02981925042795,225.5943145751953,65950700,0.0,0 -2017-06-09,225.88121928508372,226.73258685958172,223.90086089819604,225.251953125,132256400,0.0,0 -2017-06-12,224.9928196165358,225.2611797769707,224.29876865070074,225.20565795898438,86108100,0.0,0 -2017-06-13,225.77939926070667,226.36240658287895,225.40924439867837,226.306884765625,60067000,0.0,0 -2017-06-14,226.59376382106464,226.60301275072177,225.14087699620723,226.02001953125,78602300,0.0,0 -2017-06-15,224.57635445954017,225.71460809227287,224.28023342081002,225.58505249023438,66464900,0.0,0 -2017-06-16,225.75526227663872,225.81105485536722,224.6951607127056,225.63436889648438,84553100,1.183,0 -2017-06-19,226.51775677636132,227.57785821054088,226.41546566475796,227.5127716064453,65123800,0.0,0 -2017-06-20,227.13152268351755,227.14081671650064,225.9598360062995,225.97842407226562,56906400,0.0,0 -2017-06-21,226.39688794219975,226.5177671237167,225.42047532126705,225.92262268066406,55977600,0.0,0 -2017-06-22,225.93194236149753,226.4619860350015,225.63436303019716,225.82034301757812,44148100,0.0,0 -2017-06-23,225.88549034676652,226.44343042383784,225.4763257766277,226.09007263183594,66986800,0.0,0 -2017-06-26,226.8060482296963,227.25241722371163,226.01562974118386,226.23880004882812,56700500,0.0,0 -2017-06-27,226.006344088686,226.32252570502956,224.39759647318624,224.41619873046875,82247700,0.0,0 -2017-06-28,225.50418455783512,226.63868097199685,225.2531037607694,226.4248046875,70042600,0.0,0 -2017-06-29,226.58288333411193,226.6386759123556,223.14220384523404,224.43478393554688,106949700,0.0,0 -2017-06-30,225.29958049006345,225.69945091995535,224.64864347678173,224.8532257080078,86820700,0.0,0 -2017-07-03,225.8575378053664,226.32249484848396,225.23449707031247,225.2344970703125,39153800,0.0,0 -2017-07-05,225.62507686758218,225.97843459912318,224.76024932151574,225.75526428222656,54427600,0.0,0 -2017-07-06,224.93693851874397,225.0671259352617,223.49556871413506,223.69085693359375,65400800,0.0,0 -2017-07-07,224.3046081727054,225.29960897824336,223.70015543515694,225.1415252685547,57972300,0.0,0 -2017-07-10,225.14151295428414,225.7831559810436,224.81603732960906,225.38328552246094,36663300,0.0,0 -2017-07-11,225.3832743324044,225.5506662477265,223.9698151264288,225.2158966064453,50354600,0.0,0 -2017-07-12,226.24812458601576,227.08504167875878,226.24812458601576,226.90835571289062,59610400,0.0,0 -2017-07-13,226.91763660328232,227.41048992798923,226.67584986253823,227.2895965576172,39471600,0.0,0 -2017-07-14,227.28961462410624,228.73098439310814,227.18732350012897,228.34971618652344,60262700,0.0,0 -2017-07-17,228.26601528562048,228.67517975996066,228.13582787918162,228.32180786132812,33531900,0.0,0 -2017-07-18,227.88474910635324,228.4984958232694,227.5220831716961,228.4427032470703,42742500,0.0,0 -2017-07-19,228.77745612288953,229.6887679091839,228.76814790129654,229.67947387695312,51034300,0.0,0 -2017-07-20,229.94914651793073,230.07933391813134,229.1959184032441,229.78176879882812,47135200,0.0,0 -2017-07-21,229.16802974551246,229.60509050131296,228.92624300183215,229.5771942138672,82340800,0.0,0 -2017-07-24,229.49351286039624,229.67019882383323,229.01926173961604,229.52142333984375,46622300,0.0,0 -2017-07-25,230.32110298695463,230.4327023207005,229.83755790171725,230.07933044433594,54915600,0.0,0 -2017-07-26,230.3862329062459,230.423423229288,229.80969066822735,230.08865356445312,47575400,0.0,0 -2017-07-27,230.58148432988924,230.618674646997,228.46126733134113,229.87474060058594,70766600,0.0,0 -2017-07-28,229.36331578270577,229.74458398360395,228.8797706487196,229.6051025390625,50088400,0.0,0 -2017-07-31,230.03286981279695,230.13516094179317,229.25174529466094,229.4749298095703,65838700,0.0,0 -2017-08-01,230.11656131451667,230.15375163711772,229.42841973680441,229.9863739013672,55050400,0.0,0 -2017-08-02,230.125872975999,230.24676636509986,229.10296165906445,230.0979766845703,47211200,0.0,0 -2017-08-03,229.97707277636133,230.00496906651404,229.35403198067712,229.651611328125,40856000,0.0,0 -2017-08-04,230.17234422014488,230.42341081321965,229.66088862235014,230.07005310058594,60191800,0.0,0 -2017-08-07,230.14442979080576,230.49778747558594,230.0328304577617,230.49778747558594,31995000,0.0,0 -2017-08-08,230.16305105220871,231.46493940350865,229.53071622765825,229.93057250976562,61719400,0.0,0 -2017-08-09,229.19591756413442,229.97704196247835,228.8146493973133,229.92124938964844,62632600,0.0,0 -2017-08-10,229.02856993309942,229.16806558150455,226.62009547790743,226.67588806152344,120479500,0.0,0 -2017-08-11,226.9176372230312,227.64296906851905,226.66655644901994,227.0106201171875,74869900,0.0,0 -2017-08-14,228.3776164851961,229.49351064585244,228.34042616189868,229.2610321044922,73291900,0.0,0 -2017-08-15,229.6701998371381,229.68880209373046,228.9076775892235,229.23313903808594,55242700,0.0,0 -2017-08-16,229.7910487649315,230.21881544761274,229.17730212039987,229.63296508789062,56715500,0.0,0 -2017-08-17,228.98206399583665,229.31683365535224,226.05282592773438,226.05282592773438,128490400,0.0,0 -2017-08-18,225.87616519628193,227.07576252242086,225.22522806046038,225.69949340820312,136748000,0.0,0 -2017-08-21,225.6343870775425,226.1551367734544,224.88115882528675,225.87615966796875,65469700,0.0,0 -2017-08-22,226.49917861936152,228.4054911263406,226.4805763647939,228.2381134033203,63140100,0.0,0 -2017-08-23,227.20590828107356,227.8754475520897,227.04782459060624,227.41978454589844,50203800,0.0,0 -2017-08-24,227.82897874057178,227.99635648548616,226.6665859918954,226.8897705078125,50741700,0.0,0 -2017-08-25,227.73595192683305,228.39619716524385,227.26170085543112,227.41978454589844,64445900,0.0,0 -2017-08-28,227.98703233928012,228.01492862641467,226.9827234343485,227.42909240722656,40565600,0.0,0 -2017-08-29,226.02489908569956,227.96841597908443,225.9040057226884,227.689453125,51135700,0.0,0 -2017-08-30,227.6708813398968,229.0564585211772,227.47559312654118,228.76817321777344,62030800,0.0,0 -2017-08-31,229.42841709728853,230.4048297793581,228.80537632800085,230.1444549560547,103803900,0.0,0 -2017-09-01,230.5443044995088,230.92557269014037,230.31182597195735,230.46990966796875,62007000,0.0,0 -2017-09-05,229.93056085734972,230.17234761043036,227.78246150433495,228.81466674804688,91398800,0.0,0 -2017-09-06,229.5399868447489,229.9491513080063,228.97273869148074,229.5957794189453,57916900,0.0,0 -2017-09-07,229.92124296428082,229.93984521782508,229.13081036631303,229.56787109375,58034700,0.0,0 -2017-09-08,229.26101326383346,229.79107110546943,229.03784296366078,229.2982177734375,63832800,0.0,0 -2017-09-11,230.65586932588508,231.82757008268229,230.63728126166055,231.74388122558594,71364800,0.0,0 -2017-09-12,232.1344774264823,232.56222999611163,231.93918920861563,232.52503967285156,56896000,0.0,0 -2017-09-13,232.21815342551363,232.67381644903875,232.09726005023157,232.63661193847656,59228000,0.0,0 -2017-09-14,232.29255648280696,232.77611581169498,232.10657649150042,232.56222534179688,95446300,0.0,0 -2017-09-15,232.40801017652922,232.96871899866971,232.29587126405718,232.87527465820312,95432400,1.235,0 -2017-09-18,233.2678372026058,233.74444196725437,232.95944085143879,233.37063598632812,46235200,0.0,0 -2017-09-19,233.63226751940573,233.6976913990065,233.25846159528746,233.60423278808594,47108100,0.0,0 -2017-09-20,233.69766313165005,233.80980204336515,232.62294627518608,233.6883087158203,59574100,0.0,0 -2017-09-21,233.52011918362464,233.61356353099757,232.87529186969152,233.06219482421875,48211400,0.0,0 -2017-09-22,232.74445149485138,233.28648002880314,232.71641676549015,233.10891723632812,51214000,0.0,0 -2017-09-25,232.83792176347734,233.2117419628827,231.83798303210585,232.63232421875,57064400,0.0,0 -2017-09-26,233.0902584607343,233.35192548147893,232.52019510987282,232.77252197265625,54082000,0.0,0 -2017-09-27,233.52013262101323,234.0901959339822,232.57624911769778,233.6790008544922,81001400,0.0,0 -2017-09-28,233.3799176641849,234.04343951281425,233.28647332226083,233.95933532714844,44778800,0.0,0 -2017-09-29,233.94999276037387,234.86584147216777,233.7537496505475,234.78172302246094,85578000,0.0,0 -2017-10-02,235.02470846462023,235.8003692626953,234.8377912527227,235.8003692626953,59023000,0.0,0 -2017-10-03,235.80038376562914,236.33305792491203,235.71626531118903,236.30502319335938,66810200,0.0,0 -2017-10-04,236.14617360034632,236.84707046404924,236.0246802475072,236.5854034423828,55953600,0.0,0 -2017-10-05,236.94048514306184,238.0058476720466,236.62274869366564,237.98716735839844,63522800,0.0,0 -2017-10-06,237.51057371437525,238.0245675900582,237.2302263819872,237.71617126464844,80646000,0.0,0 -2017-10-09,237.95914135668872,238.02455097641948,237.04329260220243,237.3236541748047,35803100,0.0,0 -2017-10-10,237.9310877535545,238.35162294921162,237.35167008019192,237.94976806640625,43057400,0.0,0 -2017-10-11,237.8469894445286,238.3236083984375,237.66944089871959,238.3236083984375,47674300,0.0,0 -2017-10-12,237.9871851754151,238.36099111330384,237.71616374963065,237.96849060058594,47065100,0.0,0 -2017-10-13,238.43572624203958,238.55721957402423,237.96846174644418,238.25816345214844,54800400,0.0,0 -2017-10-16,238.50120846297813,238.78155582109488,238.13674263764213,238.57595825195312,38221700,0.0,0 -2017-10-17,238.51984851658435,238.7908699300593,238.28621625106962,238.744140625,31561000,0.0,0 -2017-10-18,239.14599159685903,239.19272090393488,238.77218565981732,238.977783203125,40888300,0.0,0 -2017-10-19,238.1460424594612,239.0805715209857,237.69747250266835,239.04318237304688,61903800,0.0,0 -2017-10-20,239.89364731556768,240.3048424284513,239.0245277797394,240.2767791748047,89176400,0.0,0 -2017-10-23,240.6225528910853,240.6505876221325,239.25811992795218,239.34222412109375,63915300,0.0,0 -2017-10-24,239.8001302317138,240.0150536340724,239.37958080347872,239.7627410888672,66935900,0.0,0 -2017-10-25,239.407688687196,239.52918204890275,237.3704218326984,238.57595825195312,103715300,0.0,0 -2017-10-26,239.2300780207738,239.5197654623771,238.7534591161147,238.88429260253906,69798000,0.0,0 -2017-10-27,239.67868690255747,241.0057308146074,238.89368585639093,240.83749389648438,85562500,0.0,0 -2017-10-30,239.6787016208863,240.73472416484339,239.62263215125736,239.94036865234375,54285700,0.0,0 -2017-10-31,240.34218268092147,240.58516936872127,239.99641148339975,240.31414794921875,60304800,0.0,0 -2017-11-01,241.14587452401665,241.5103260089506,240.23938024053385,240.63186645507812,54202700,0.0,0 -2017-11-02,240.55716390377216,240.8749004082477,239.41703714321034,240.72537231445312,56449500,0.0,0 -2017-11-03,240.8935665021668,241.5757830424058,240.45433666494344,241.52906799316406,59589700,0.0,0 -2017-11-06,241.3888239808228,242.04300567425335,241.3140742110747,241.90283203125,49652600,0.0,0 -2017-11-07,242.0149969743612,242.3701225878709,241.19260682087858,241.73464965820312,57502200,0.0,0 -2017-11-08,241.54771399415912,242.24861075061065,241.24865786671157,242.1457977294922,50469600,0.0,0 -2017-11-09,240.85618469313172,241.47297729454743,239.57585592560244,241.2673797607422,95085500,0.0,0 -2017-11-10,240.8561796706427,241.3795136513134,240.51973438617554,241.19259643554688,59984700,0.0,0 -2017-11-13,240.46367597870244,241.65987206372978,240.4262868299179,241.41688537597656,50228600,0.0,0 -2017-11-14,240.55712976793382,240.96832483762705,239.72538521164773,240.85618591308594,61315200,0.0,0 -2017-11-15,239.81887369096484,240.3795969030712,238.89369892870812,239.65066528320312,80811500,0.0,0 -2017-11-16,240.6599394642663,242.08044204263393,240.61322441400597,241.68792724609375,67777000,0.0,0 -2017-11-17,241.31410644051672,241.65987764595926,240.89355693577772,240.9776611328125,75756800,0.0,0 -2017-11-20,241.23934017243474,241.59443725134525,240.97764466234855,241.3888397216797,48075500,0.0,0 -2017-11-21,242.211188794364,243.16442650653028,241.35143819386843,242.96815490722656,69176800,0.0,0 -2017-11-22,242.9775737633426,243.11774742890833,242.575733082199,242.7532958984375,45033400,0.0,0 -2017-11-24,243.2765889601457,243.42611701808946,243.12706090220192,243.31394958496094,27856500,0.0,0 -2017-11-27,243.360743805758,243.6784803001964,242.9775834249322,243.19253540039062,52274900,0.0,0 -2017-11-28,243.68779492018598,245.6876721808213,243.58498189843007,245.65963745117188,98971700,0.0,0 -2017-11-29,245.79977246814792,246.3698499075053,245.03348047164513,245.51007080078125,77512100,0.0,0 -2017-11-30,246.49139980467874,248.63145086846012,246.407295609643,247.65956115722656,127894400,0.0,0 -2017-12-01,247.42591414972864,247.93989370641074,243.68779804422226,247.14553833007812,164390900,0.0,0 -2017-12-04,248.87437771390643,249.3322877277396,246.79036809502054,246.84646606445312,94040600,0.0,0 -2017-12-05,245.95867919921878,247.79034797485966,245.8185055591678,245.95867919921875,77994500,0.0,0 -2017-12-06,246.06150159356244,246.46337078301818,245.51013284473353,246.00543212890625,75898600,0.0,0 -2017-12-07,246.78109741210938,247.11751418662706,245.72507500393363,246.78109741210938,77218600,0.0,0 -2017-12-08,247.79975540367448,248.13617221176807,246.74373289010293,248.12684631347656,76563900,0.0,0 -2017-12-11,248.87438964843753,248.9398135162817,248.09874320826376,248.8743896484375,83077500,0.0,0 -2017-12-12,249.7154850327602,249.81829805249106,248.9118037855992,249.3136444091797,85195800,0.0,0 -2017-12-13,249.57536155546492,250.04262614738627,249.19220116774133,249.28565979003906,102905400,0.0,0 -2017-12-14,249.60335268697494,249.7248460227816,248.21091357255617,248.26698303222656,100666700,0.0,0 -2017-12-15,249.33876490997034,250.83225786483908,249.2824088486803,250.3344268798828,144610300,1.351,0 -2017-12-18,251.82792341594453,252.29757637693461,251.71521129176162,251.92185974121094,83653600,0.0,0 -2017-12-19,252.184818686571,252.23177250804937,250.87916993156654,250.95433044433594,82382900,0.0,0 -2017-12-20,251.98760622481396,252.0439622906749,250.50351538156917,250.8228759765625,76751500,0.0,0 -2017-12-21,251.48976993332587,252.10034174294054,251.0764730154374,251.3394775390625,67032300,0.0,0 -2017-12-22,251.35823097927522,251.39581123654818,250.70070547101642,251.27369689941406,78720900,0.0,0 -2017-12-26,250.84159744492004,251.20794045901084,250.6913337454002,250.97311401367188,45244400,0.0,0 -2017-12-27,251.15160141880014,251.4803641976131,250.80406284260965,251.09524536132812,57751000,0.0,0 -2017-12-28,251.63065138615755,251.65882941431278,251.21735452965527,251.61184692382812,45116100,0.0,0 -2017-12-29,252.2318157192037,252.2505915179443,250.456542449274,250.6631622314453,96007400,0.0,0 -2018-01-02,251.5836972364917,252.49482513660018,251.17040033343164,252.45724487304688,86655700,0.0,0 -2018-01-03,252.63564014700154,254.21369542808614,252.63564014700154,254.0540008544922,90070400,0.0,0 -2018-01-04,254.73972676872154,255.6414522479233,254.11978154385278,255.12481689453125,80636400,0.0,0 -2018-01-05,255.97024046336935,256.9565001170275,255.44423149270648,256.82501220703125,83524000,0.0,0 -2018-01-08,256.7217166946166,257.46377644972046,256.4117583320432,257.2947082519531,57319200,0.0,0 -2018-01-09,257.74552809498925,258.5439438271603,257.44494333329226,257.8770446777344,57254000,0.0,0 -2018-01-10,257.0691860944629,257.7642918292214,256.35533322990386,257.48248291015625,69574300,0.0,0 -2018-01-11,258.074330866831,259.3611755371094,257.89586042850897,259.3611755371094,62361500,0.0,0 -2018-01-12,259.6429211864067,261.2303216122462,259.3235319897239,261.0518798828125,90816100,0.0,0 -2018-01-16,262.39512921758836,263.090206464505,259.417516671256,260.1595764160156,106555100,0.0,0 -2018-01-17,261.15522201339274,263.0526096393548,260.1595600381972,262.6393127441406,113258800,0.0,0 -2018-01-18,262.5172671136594,262.9681156751701,261.67186873013486,262.1979064941406,100728000,0.0,0 -2018-01-19,262.8178165194634,263.39080810546875,262.1978997633,263.39080810546875,140920100,0.0,0 -2018-01-22,263.1653084278166,265.5323486328125,263.1089237098848,265.5323486328125,91322400,0.0,0 -2018-01-23,265.5793727947124,266.4059666721469,265.2318341565512,266.09600830078125,97084700,0.0,0 -2018-01-24,266.78159758552147,267.42034725433757,264.7339180162442,265.9925842285156,134816100,0.0,0 -2018-01-25,266.91313403935317,267.016443915851,265.25994669268687,266.1053161621094,84587300,0.0,0 -2018-01-26,266.9977091050005,269.2332617923168,266.72530236053257,269.186279296875,107743100,0.0,0 -2018-01-29,268.57571311563606,269.0453660376717,267.2325126382955,267.4015808105469,90118300,0.0,0 -2018-01-30,265.447796306411,267.45789559656896,264.1515498551619,264.6587829589844,131796400,0.0,0 -2018-01-31,265.5699536297908,266.10533617931765,263.6443594356234,264.7903137207031,108364800,0.0,0 -2018-02-01,264.0106891087455,265.8798984850807,263.6443460859636,264.4897155761719,90102500,0.0,0 -2018-02-02,263.08080462236194,263.2217234507566,258.6942617757541,258.7318420410156,173174800,0.0,0 -2018-02-05,256.85317424093245,259.10750235558675,247.32859997494617,247.9109649658203,294681800,0.0,0 -2018-02-06,244.1632158203398,253.3308519995773,242.99848549654493,252.79544067382812,355026800,0.0,0 -2018-02-07,252.2036377847434,255.8293448516331,251.33946373153887,251.4240264892578,167376100,0.0,0 -2018-02-08,251.74339314913797,251.89368553878015,241.95581268058982,241.99339294433594,246449500,0.0,0 -2018-02-09,244.97095344483455,247.61040058182144,237.569233116286,245.62847900390625,283565300,0.0,0 -2018-02-12,247.8170515810126,250.8040659912252,245.77877392439447,249.23541259765625,143736000,0.0,0 -2018-02-13,247.94860244971437,250.43775758133938,247.32865705866635,249.8553924560547,81223600,0.0,0 -2018-02-14,248.2679140259629,253.61256632810446,248.25851179504255,253.22744750976562,120735700,0.0,0 -2018-02-15,255.0873006624809,256.4680814307785,252.45722704102167,256.45867919921875,111200300,0.0,0 -2018-02-16,255.79181290448813,258.6097308615769,255.74483040599705,256.5338439941406,160420100,0.0,0 -2018-02-20,255.51931842382416,257.0597934708936,254.08218190568448,254.92755126953125,86369700,0.0,0 -2018-02-21,255.39728290345278,258.04613257075914,253.55625126175474,253.65956115722656,98883700,0.0,0 -2018-02-22,254.6458526675474,256.4774820988182,253.2744739858968,253.9883270263672,110511300,0.0,0 -2018-02-23,255.29392531100206,258.03668212890625,254.78669216482183,258.03668212890625,92766400,0.0,0 -2018-02-26,259.18264744685814,261.13641960063,258.55332860147087,261.0330810546875,86491400,0.0,0 -2018-02-27,261.2303200757955,261.99118413949054,257.70792335549834,257.773681640625,99099200,0.0,0 -2018-02-28,258.947846744237,259.4269019319032,254.82430869965955,255.16244506835938,121907800,0.0,0 -2018-03-01,254.93702645422067,256.5902140675167,249.8553779220551,251.45220947265625,176855100,0.0,0 -2018-03-02,249.66752109772355,253.3496131974965,248.74701957178831,252.74844360351562,139083200,0.0,0 -2018-03-05,251.48036639661152,256.3271880389615,251.36762561534218,255.66966247558594,97307400,0.0,0 -2018-03-06,256.71230250167145,256.79686526195917,254.72097849093726,256.31781005859375,79213200,0.0,0 -2018-03-07,254.00712866132972,256.59959360160894,253.8004802048621,256.223876953125,87063500,0.0,0 -2018-03-08,256.9471096886463,257.59523303322356,255.88571813271258,257.4637451171875,66901200,0.0,0 -2018-03-09,258.9666907613724,261.94427490234375,258.62852567568166,261.94427490234375,113625300,0.0,0 -2018-03-12,262.25422833664305,262.92112752373566,261.2021816112836,261.615478515625,71924800,0.0,0 -2018-03-13,262.8553736301339,263.3907849013609,259.27662025356216,259.92474365234375,91968900,0.0,0 -2018-03-14,260.9485481339414,261.14579433027967,257.99914275864154,258.59088134765625,105895100,0.0,0 -2018-03-15,259.13567568020386,259.82135053396223,257.7736708724498,258.30908203125,83433000,0.0,0 -2018-03-16,258.8721422604331,259.7114865179347,258.5326516260384,258.5892333984375,100343700,1.097,0 -2018-03-19,257.7875818666391,258.7777915176182,253.32686093324932,255.09039306640625,109208400,0.0,0 -2018-03-20,255.51482158587115,256.2032715203458,254.7980807653303,255.52426147460938,59757300,0.0,0 -2018-03-21,255.4770870560948,257.71215336291647,254.80751690893788,255.03384399414062,78709600,0.0,0 -2018-03-22,252.65732054694445,253.56265765818537,248.3663444017155,248.65872192382812,148785900,0.0,0 -2018-03-23,249.13025750697088,249.47918802192677,243.15118174962296,243.35865783691406,183534800,0.0,0 -2018-03-26,247.206384550016,250.3184969986603,244.64123880089716,250.01670837402344,141956100,0.0,0 -2018-03-27,251.01638362912723,251.58220131801085,244.10368013508082,245.76348876953125,129941400,0.0,0 -2018-03-28,245.90489688938678,247.6873086141939,243.85842736610547,245.03726196289062,146452300,0.0,0 -2018-03-29,246.25389295793318,250.1582079975496,245.0467671603021,248.16831970214844,111601600,0.0,0 -2018-04-02,247.60246351187467,248.14945900607196,240.17109830878528,242.8116912841797,186286300,0.0,0 -2018-04-03,244.13195926642123,246.43304702425775,242.21753276413833,245.9237823486328,119956900,0.0,0 -2018-04-04,242.13268721716878,249.3094202370602,241.99123278592464,248.5549774169922,123715300,0.0,0 -2018-04-05,250.4316848609161,251.4596542621857,249.2717296912882,250.51658630371094,82652600,0.0,0 -2018-04-06,248.42292550568595,250.01668356482836,243.3114855111418,244.93356323242188,179521200,0.0,0 -2018-04-09,246.48966234375035,249.76210923973022,245.1410820996817,246.14073181152344,105442900,0.0,0 -2018-04-10,249.22449339327704,250.89374165948544,248.00795676892136,250.0543975830078,103529000,0.0,0 -2018-04-11,248.47010880908607,250.51657888161122,248.394676037909,248.7436065673828,91140200,0.0,0 -2018-04-12,250.1581692473971,251.79909797964058,249.96954417880016,250.79000854492188,68890500,0.0,0 -2018-04-13,252.18573981753076,252.3083432246695,248.97931535914205,250.0543975830078,85079200,0.0,0 -2018-04-16,251.7991213110607,252.93081426721432,250.9220750991227,252.11032104492188,63405300,0.0,0 -2018-04-17,253.99642662077366,255.4487590266592,253.44945998434986,254.80747985839844,64682000,0.0,0 -2018-04-18,255.27903310440803,255.85429066601094,254.50571057687802,254.99612426757812,57303900,0.0,0 -2018-04-19,254.29825500655448,254.5151709857109,252.47814085585657,253.58154296875,77655900,0.0,0 -2018-04-20,253.50612724637944,253.7418942654159,250.48829789065093,251.43136596679688,99953100,0.0,0 -2018-04-23,252.044304276164,252.63844158282023,250.2430413614337,251.39358520507812,65558000,0.0,0 -2018-04-24,252.48756793002545,252.7233348944758,246.4047687351475,248.00799560546875,112885500,0.0,0 -2018-04-25,247.94199213862666,249.09253616076074,245.99927451143864,248.62100219726562,103840900,0.0,0 -2018-04-26,249.71492380993885,252.03486247436817,249.2433899231767,251.14837646484375,67731900,0.0,0 -2018-04-27,251.79913798373786,252.1197776271779,250.38453608495283,251.38418579101562,57053600,0.0,0 -2018-04-30,252.04431850126892,252.6384558414576,249.37542041441284,249.4508819580078,82182300,0.0,0 -2018-05-01,248.84731422024163,250.0072980610463,247.1875055596068,249.89413452148438,74203400,0.0,0 -2018-05-02,249.6866529023294,250.55425920649748,247.80051720439405,248.21546936035156,86368900,0.0,0 -2018-05-03,247.3289969189489,248.36634858590102,244.30172823511725,247.66848754882812,136311500,0.0,0 -2018-05-04,246.63108796341086,251.60107383517024,246.28215747195105,250.87489318847656,91222100,0.0,0 -2018-05-07,251.69540296216377,252.76104550247842,250.95978237906377,251.72369384765625,55304900,0.0,0 -2018-05-08,251.32759267061377,252.11032635600384,250.05444526315705,251.72369384765625,67499200,0.0,0 -2018-05-09,252.440378517887,254.50569927547275,251.88397197673143,254.15676879882812,59666100,0.0,0 -2018-05-10,254.9489779972091,256.8822845009802,254.83581445165157,256.5333251953125,72063900,0.0,0 -2018-05-11,256.66532099244984,257.5989488505708,256.11832558334237,257.3160400390625,59871500,0.0,0 -2018-05-14,257.7781502631647,258.4760112289423,256.8539334537778,257.43865966796875,54790600,0.0,0 -2018-05-15,256.1277433596827,256.1465943521081,254.65656010655533,255.6656494140625,87036100,0.0,0 -2018-05-16,255.7034624690711,257.23122797127826,255.67514280110765,256.7408142089844,53942600,0.0,0 -2018-05-17,256.45784309716765,257.6744085382115,255.69396053143265,256.52386474609375,56536400,0.0,0 -2018-05-18,256.1560966245063,256.5427579144543,255.5053774755874,255.88259887695312,64368000,0.0,0 -2018-05-21,257.46693642538276,258.3817132968891,257.05198431170083,257.8064270019531,58025900,0.0,0 -2018-05-22,258.36286907731903,258.63636682173416,256.74079116792393,257.0897216796875,52966400,0.0,0 -2018-05-23,255.73173536255726,257.82534725386137,255.5619612674744,257.7970275878906,64694200,0.0,0 -2018-05-24,257.3727038667467,257.6650526585709,255.36396432410407,257.2689514160156,76043800,0.0,0 -2018-05-25,256.65594482421875,257.32551503111546,256.1183891687528,256.65594482421875,56374800,0.0,0 -2018-05-29,254.92065181028653,255.73170507471858,252.515840459752,253.70408630371094,115908600,0.0,0 -2018-05-30,255.0998622617287,257.5612556210216,255.02442949438026,257.0897216796875,69678400,0.0,0 -2018-05-31,256.65595102590277,256.9765906930116,254.87356746754014,255.5148468017578,93519900,0.0,0 -2018-06-01,256.90115377555287,258.34404664436283,256.82569221971323,258.0234069824219,71258400,0.0,0 -2018-06-04,258.9004590902947,259.5228874292055,258.64584108898407,259.2493896484375,45385200,0.0,0 -2018-06-05,259.3907871055433,259.8434700107928,258.57032272364665,259.4379577636719,51135000,0.0,0 -2018-06-06,260.0887603493244,261.72024974924744,259.42860116474503,261.6070861816406,62732200,0.0,0 -2018-06-07,262.125700261802,262.43689996510585,260.6073461743888,261.5787048339844,72969400,0.0,0 -2018-06-08,261.08834330003305,262.4086325505472,260.90915810387605,262.35205078125,72139700,0.0,0 -2018-06-11,262.5878557321449,263.46490206327104,262.46525228754956,262.7010192871094,58892500,0.0,0 -2018-06-12,263.14422047498095,263.4271293173209,262.3520469362823,263.0404968261719,72329000,0.0,0 -2018-06-13,263.2950728227908,263.5685705135631,261.984194908522,262.20111083984375,79070600,0.0,0 -2018-06-14,263.1253554395657,263.42711526191204,262.22942951971424,262.8612976074219,77097600,0.0,0 -2018-06-15,262.0238707852297,262.8859195079813,260.8397426895891,262.52593994140625,120041600,1.246,0 -2018-06-18,260.9724325580346,262.1186897319672,260.4609098736572,261.9860534667969,52917600,0.0,0 -2018-06-19,259.5608882730972,261.218667669002,259.11565493610766,260.9818420410156,97531500,0.0,0 -2018-06-20,261.7113032661489,262.13760103959976,261.06714437641386,261.4271240234375,53785500,0.0,0 -2018-06-21,261.4176307545717,261.4365953095443,259.257781872622,259.78826904296875,71061400,0.0,0 -2018-06-22,261.1334635698961,261.25661754536884,260.0251067000251,260.2619323730469,54898500,0.0,0 -2018-06-25,259.03038391085323,259.2008914133857,254.91909475221448,256.7189636230469,137854200,0.0,0 -2018-06-26,257.32528423066486,258.1967864066226,256.5200712635398,257.2873840332031,68547400,0.0,0 -2018-06-27,257.91259868359197,259.4377418958524,254.9948906723592,255.15594482421875,105110700,0.0,0 -2018-06-28,255.0991172346457,257.42947346281045,254.3412578328253,256.61480712890625,76650500,0.0,0 -2018-06-29,257.7799836592947,259.2388377849321,256.86109896390633,256.9842529296875,97592500,0.0,0 -2018-07-02,255.3075532470118,257.7042278589193,255.05176302269956,257.53369140625,63554800,0.0,0 -2018-07-03,258.4904241098698,258.5946424159564,256.16955037035814,256.6242370605469,42187100,0.0,0 -2018-07-05,257.82733567883093,258.7840915511452,256.68107883226014,258.7177734375,56925900,0.0,0 -2018-07-06,258.74618808907,261.30388719059295,258.3388260911773,260.9060363769531,66493700,0.0,0 -2018-07-09,261.9765372472968,263.3122374577844,261.92918367837746,263.2554016113281,50550400,0.0,0 -2018-07-10,263.73852871615793,264.3069160760963,263.42590265896996,264.20269775390625,51966800,0.0,0 -2018-07-11,262.54489795536466,263.38801110780474,261.94809271880683,262.2701721191406,77054700,0.0,0 -2018-07-12,263.6153623520419,264.7047545435547,262.97120353211545,264.6479187011719,60124700,0.0,0 -2018-07-13,264.45847235029044,265.1784026482786,263.9753387864636,264.8563232421875,48216000,0.0,0 -2018-07-16,264.9037760644464,265.0553190763022,264.1459164582273,264.61956787109375,48201000,0.0,0 -2018-07-17,263.79530604870826,266.1067262662139,263.7384702162594,265.6899108886719,52315500,0.0,0 -2018-07-18,265.7752500050585,266.3625730685969,265.30159864292955,266.2489013671875,44593500,0.0,0 -2018-07-19,265.53838194388493,265.9457151120528,264.7331689749013,265.2447204589844,61412100,0.0,0 -2018-07-20,265.0268125945942,265.69941819088643,264.77105132448344,264.9415588378906,82337700,0.0,0 -2018-07-23,264.72369670491526,265.6520346582302,264.35423485129775,265.4341735839844,47047600,0.0,0 -2018-07-24,266.9404033796979,267.66981596238264,265.8415289125571,266.7698669433594,68026900,0.0,0 -2018-07-25,266.50463351946524,269.384441580567,266.4572799521904,269.0434265136719,78882900,0.0,0 -2018-07-26,268.2760840868909,269.13810393617183,268.17186577725715,268.40869140625,57919500,0.0,0 -2018-07-27,268.7591761127074,268.86339441745554,265.6046716025263,266.5898742675781,76768700,0.0,0 -2018-07-30,266.6751161371915,266.8456236362242,264.63839278658924,265.19732666015625,63742500,0.0,0 -2018-07-31,266.01202124587087,267.1582492130158,265.6046880960544,266.5046081542969,68570500,0.0,0 -2018-08-01,266.7225411665967,267.26251063426787,265.3679052678852,266.0594177246094,53853300,0.0,0 -2018-08-02,264.6668511331677,267.688719417706,264.44896115755745,267.5087585449219,63426400,0.0,0 -2018-08-03,267.6413477485271,268.71180409335796,267.4518757034795,268.65496826171875,53935400,0.0,0 -2018-08-06,268.69289525293163,269.9717305017449,268.2760798397526,269.64019775390625,39400900,0.0,0 -2018-08-07,270.3507092644034,270.93803226474944,270.2085907435479,270.5306701660156,43196600,0.0,0 -2018-08-08,270.35067246651136,270.84325935570075,269.9243747807325,270.4169616699219,42114600,0.0,0 -2018-08-09,270.4833280343667,270.90014351856667,269.9054872868158,270.0475769042969,35717000,0.0,0 -2018-08-10,268.5128849786356,269.0907255836419,267.48029989110233,268.2381591796875,77076000,0.0,0 -2018-08-13,268.53193109511426,269.1855723525781,266.92150474003785,267.234130859375,65732900,0.0,0 -2018-08-14,268.0109013277421,269.1950297412848,267.5940858134242,268.9392395019531,43842000,0.0,0 -2018-08-15,267.49929550823066,267.6508673835508,265.39628271590516,266.930908203125,102925400,0.0,0 -2018-08-16,268.4655056803192,270.0190955582242,268.42760548809866,269.0907287597656,69967900,0.0,0 -2018-08-17,268.8728932928818,270.5117372534515,268.43714217683345,270.0380859375,65618500,0.0,0 -2018-08-20,270.5212917616694,270.90020713372695,270.0381580393969,270.61602783203125,39807500,0.0,0 -2018-08-21,271.16532608268176,272.16946436608066,270.6537746654899,271.2505798339844,67272000,0.0,0 -2018-08-22,270.8148737588763,271.64850467805775,270.53066563131097,271.089599609375,44993300,0.0,0 -2018-08-23,270.90012178511057,271.81900645027997,270.3885702938357,270.7296142578125,49204900,0.0,0 -2018-08-24,271.3453575568359,272.5105501557723,271.2885217139006,272.3589782714844,57487400,0.0,0 -2018-08-27,273.63777687114805,274.62297953192177,273.46726936525755,274.5093078613281,57072400,0.0,0 -2018-08-28,275.00194901581557,275.1156496182281,274.14938240870964,274.6419982910156,46943500,0.0,0 -2018-08-29,274.86930470267504,276.3660299752042,274.6135434277622,276.1197509765625,61485500,0.0,0 -2018-08-30,275.6082407093951,276.0060916409441,274.367276526306,275.001953125,61229500,0.0,0 -2018-08-31,274.56618019895035,275.4850648709136,274.0451753363384,275.01141357421875,66140800,0.0,0 -2018-09-04,274.56619868505857,274.9166960427102,273.4673241336153,274.53778076171875,57594400,0.0,0 -2018-09-05,274.1588993574415,274.37678940289226,272.71900954799935,273.7989196777344,72452400,0.0,0 -2018-09-06,273.9125211828548,274.2346005744175,271.8758265221431,272.9747009277344,65909900,0.0,0 -2018-09-07,271.8568604713126,273.4862217995113,271.6010703144328,272.4441833496094,73524800,0.0,0 -2018-09-10,273.524105226036,273.80831331192377,272.70943898045397,272.9178466796875,50210900,0.0,0 -2018-09-11,272.22637893945426,274.2914919377701,271.8569459102878,273.8178405761719,50530500,0.0,0 -2018-09-12,273.82728891226344,274.52828358953417,273.04104046959884,273.8841247558594,59810800,0.0,0 -2018-09-13,275.0208626791768,275.7029216205252,274.7177189476047,275.50396728515625,51034200,0.0,0 -2018-09-14,275.7218685989875,275.92079403315785,274.71773024257527,275.5513610839844,55079900,0.0,0 -2018-09-17,275.494516870808,275.53238815562725,273.7988373203701,274.0924987792969,68244000,0.0,0 -2018-09-18,274.3199051947097,276.2145106088601,274.29148726987285,275.579833984375,61930400,0.0,0 -2018-09-19,275.6366484626871,276.3187075152735,275.504012217476,275.87347412109375,49080600,0.0,0 -2018-09-20,277.2186624439872,278.45014432999403,275.892415601355,278.1091003417969,100360600,0.0,0 -2018-09-21,278.9017361269234,279.025447573832,277.68370109929776,277.85498046875,105479700,1.323,0 -2018-09-24,277.23649237937843,277.38875040988796,276.3134480345863,276.9319763183594,53409600,0.0,0 -2018-09-25,277.41728855417085,277.53147481352426,276.41812974457997,276.675048828125,44370000,0.0,0 -2018-09-26,276.8273360360989,278.0929392643458,275.39994956321414,275.8471984863281,79739700,0.0,0 -2018-09-27,276.35150615927785,277.7788924545558,276.0565153148069,276.6179504394531,59249500,0.0,0 -2018-09-28,275.95181262185326,277.1793729110245,275.9137698980281,276.646484375,70091400,0.0,0 -2018-10-01,277.9692462189158,278.74955784548604,276.89397273186654,277.607666015625,62078900,0.0,0 -2018-10-02,277.44580078125,278.20706177622185,277.0461489229757,277.44580078125,47258200,0.0,0 -2018-10-03,278.5686957071096,279.01594456753077,277.21745296472955,277.59808349609375,64694600,0.0,0 -2018-10-04,277.0841642341223,277.141257351085,273.73457553125917,275.42840576171875,111545900,0.0,0 -2018-10-05,275.66637220533363,276.21828215375035,272.36435059603497,273.88690185546875,105951700,0.0,0 -2018-10-08,273.15415827123036,274.2675324102647,271.67920398130224,273.88690185546875,87742200,0.0,0 -2018-10-09,273.47768645681543,274.8764970158451,272.8876757831772,273.4871826171875,74339000,0.0,0 -2018-10-10,272.9447972544705,273.0209407868302,264.4280763674668,264.8277282714844,214731000,0.0,0 -2018-10-11,263.666792577964,265.3986949776344,257.27210059785347,258.9945068359375,274840500,0.0,0 -2018-10-12,263.3718046893944,263.67632074907874,259.1848105096094,262.5915222167969,183186500,0.0,0 -2018-10-15,262.21083975205954,263.6287298261871,261.02135122289894,261.11651611328125,102263700,0.0,0 -2018-10-16,263.2100164445791,267.22573071134497,262.7056744910864,266.8260498046875,118255800,0.0,0 -2018-10-17,266.86413202547834,267.53975337676724,264.12354581598606,266.8736572265625,110626000,0.0,0 -2018-10-18,265.8744561567684,266.5120347523592,261.65891600221784,263.0196838378906,134557500,0.0,0 -2018-10-19,263.7143882731102,265.77932424407066,262.1347439091973,262.8769836425781,139901600,0.0,0 -2018-10-22,263.59064733527987,263.9332060784192,261.12603068798535,261.6969909667969,82415800,0.0,0 -2018-10-23,257.8335401090627,261.56375980036256,255.60679207099736,260.36474609375,146352700,0.0,0 -2018-10-24,260.0983123839023,260.5075185170506,251.88610780121797,252.47608947753906,177806700,0.0,0 -2018-10-25,254.43636786349072,258.6519083882269,253.34204418653923,257.0056457519531,138061500,0.0,0 -2018-10-26,253.04705987839,257.88112877664105,249.5927803335767,252.485595703125,201574600,0.0,0 -2018-10-29,255.78762285393796,257.1674412780049,247.27090170477362,251.08676147460938,160749100,0.0,0 -2018-10-30,250.90595042654493,255.1405119174707,250.3825580803099,254.8074493408203,157116000,0.0,0 -2018-10-31,257.5480435782613,260.00316409875865,257.0437016171121,257.5290222167969,128296300,0.0,0 -2018-11-01,258.4520807935222,260.47897395144594,257.2911387943487,260.2696228027344,99495000,0.0,0 -2018-11-02,261.44959383416773,261.9063679102785,256.53938141691094,258.7280578613281,122634100,0.0,0 -2018-11-05,259.25143354944635,260.74543826916215,258.2142029275498,260.15545654296875,65622500,0.0,0 -2018-11-06,260.08881437037195,261.97294564065544,260.02219604216555,261.8016662597656,60085900,0.0,0 -2018-11-07,264.12355511337756,267.4921948678116,263.66678104896755,267.40655517578125,102752100,0.0,0 -2018-11-08,266.55006928391316,267.60635011036896,265.70316862293026,266.92120361328125,65584900,0.0,0 -2018-11-09,265.5224138251396,265.72223978750543,262.8103738891742,264.31390380859375,98812600,0.0,0 -2018-11-12,263.77143606714867,264.02835510907425,258.82315266827226,259.3750915527344,99673600,0.0,0 -2018-11-13,259.8699690598935,262.0015234950888,258.1190451966615,258.88983154296875,98176600,0.0,0 -2018-11-14,260.8881958481174,261.3163943802081,255.45461929017623,257.1199035644531,125335900,0.0,0 -2018-11-15,255.76860848443548,260.298190594918,254.08430299624575,259.8033447265625,135101400,0.0,0 -2018-11-16,258.6329151208357,261.4496162308513,258.0809761015564,260.47900390625,126668000,0.0,0 -2018-11-19,259.83185582829185,260.14589705423094,255.09295223908876,256.0730895996094,103061700,0.0,0 -2018-11-20,252.51413082668293,254.07475374028675,250.4111232060196,251.33416748046875,136021300,0.0,0 -2018-11-21,252.9899150591185,254.21747531710076,252.18108611479917,252.19058227539062,75563700,0.0,0 -2018-11-23,250.4396682931685,252.0002911975722,250.33500724092676,250.50628662109375,42807900,0.0,0 -2018-11-26,252.91379978392172,254.7884348076081,252.49509751181182,254.550537109375,79981400,0.0,0 -2018-11-27,253.44670756270426,255.406982421875,252.79963274400197,255.406982421875,75502400,0.0,0 -2018-11-28,256.5488473503677,261.2877502441406,255.3403086282671,261.2877502441406,127629600,0.0,0 -2018-11-29,260.4599098083278,262.21083339597953,259.24187474560284,260.71685791015625,82346400,0.0,0 -2018-11-30,260.5550761583832,262.90550660982746,260.2125174076853,262.3059997558594,98204200,0.0,0 -2018-12-03,266.7118356819919,266.8260219176039,264.0759399424706,265.7792663574219,103176300,0.0,0 -2018-12-04,264.89433225542723,265.35110630409986,256.83435683811877,257.16741943359375,177986000,0.0,0 -2018-12-06,253.04703260791402,256.9009636449156,249.73548624409517,256.7772521972656,204185400,0.0,0 -2018-12-07,256.41561445764427,258.0904233339721,249.91626294275747,250.81076049804688,161018900,0.0,0 -2018-12-10,250.62046539728848,252.32382106767847,246.10040907839223,251.28659057617188,151445900,0.0,0 -2018-12-11,254.7028188743406,254.90264482822292,249.77358507691653,251.3437042236328,121504400,0.0,0 -2018-12-12,254.52199023156635,255.97792298133731,252.5236437608375,252.60928344726562,97976700,0.0,0 -2018-12-13,253.61800540724468,254.54104977531532,251.33419297250566,252.523681640625,96662700,0.0,0 -2018-12-14,250.2303222897306,251.24853147094504,247.27088867957713,247.86087036132812,116961100,0.0,0 -2018-12-17,246.84269696709998,248.0321857044513,241.25686250293845,242.99827575683594,165492300,0.0,0 -2018-12-18,244.7491787445236,245.46287188350615,241.01892982706548,242.73179626464844,134515100,0.0,0 -2018-12-19,242.81743388946367,246.84265909342508,237.2791827285689,239.09671020507812,214992800,0.0,0 -2018-12-20,237.76449365928315,239.43928835126567,232.80669887317052,235.2047119140625,252053400,0.0,0 -2018-12-21,236.16666393602424,239.00939419688098,229.69633517303475,230.38548278808594,255345600,1.435,0 -2018-12-24,228.79661129786385,230.5194803161667,224.23102665550738,224.2980194091797,147311600,0.0,0 -2018-12-26,225.85817458752993,235.63064575195312,223.7428714573097,235.63064575195312,218485400,0.0,0 -2018-12-27,232.1753537373754,237.6502258319504,228.72004952253798,237.43966674804688,186267300,0.0,0 -2018-12-28,238.88492862988585,240.62692987785215,235.88905160626118,237.1333465576172,153100200,0.0,0 -2018-12-31,238.86579913764763,239.4688069164015,236.86536377008522,239.2103729248047,144299400,0.0,0 -2019-01-02,235.4392106947059,240.4451041817098,235.41049742922849,239.459228515625,126925200,0.0,0 -2019-01-03,237.59277955392207,237.91822088545382,233.2281881936798,233.74505615234375,144140700,0.0,0 -2019-01-04,236.98018179367654,242.26364088062783,236.57818153558114,241.57449340820312,142628800,0.0,0 -2019-01-07,241.86168117845273,244.981977764934,240.9045333734677,243.47926330566406,103139100,0.0,0 -2019-01-08,245.81472062206598,246.2837137267129,243.11555664423815,245.766845703125,102512600,0.0,0 -2019-01-09,246.52298642682496,247.81514180610665,245.21169860697478,246.91542053222656,95006600,0.0,0 -2019-01-10,245.27868510731494,248.05440766503858,244.5512434899057,247.78640747070312,96823900,0.0,0 -2019-01-11,246.63781629855066,247.9108391175615,246.015676125495,247.8821258544922,73858100,0.0,0 -2019-01-14,245.85297452878564,247.23126972359336,245.42227553655405,246.36984252929688,70908200,0.0,0 -2019-01-15,246.77186801290523,249.52845852034474,246.76228718716834,249.19345092773438,85208300,0.0,0 -2019-01-16,249.6528369634964,250.7439994287581,249.43271167336331,249.7964324951172,77636700,0.0,0 -2019-01-17,248.86803582383982,252.6104876330233,248.8201609027464,251.6916046142578,96118400,0.0,0 -2019-01-18,253.6250505785959,255.53934629950356,251.72988729935685,255.04161071777344,127900300,0.0,0 -2019-01-22,253.47188642470468,253.70159254866857,249.8730013634961,251.59585571289062,115531200,0.0,0 -2019-01-23,252.69660899547807,253.44318313758697,249.49015790968755,252.122314453125,86030300,0.0,0 -2019-01-24,251.93084464082634,252.8784407517212,250.8492630374783,252.2562713623047,59204100,0.0,0 -2019-01-25,254.22803433720534,255.27135123085978,252.3616134974653,254.39076232910156,96883400,0.0,0 -2019-01-28,252.1031963805989,252.52431457850338,250.57175391698402,252.45733642578125,85613700,0.0,0 -2019-01-29,252.6104691956002,253.21344779474546,251.23217397788625,252.122314453125,66136300,0.0,0 -2019-01-30,253.73987865991322,257.0133076627899,252.92629721668223,256.11358642578125,92473700,0.0,0 -2019-01-31,256.0466335735802,258.8797830626155,255.81689822431517,258.3629150390625,104012100,0.0,0 -2019-02-01,258.5734750027893,259.57849772908514,257.645040458792,258.4873352050781,85782500,0.0,0 -2019-02-04,258.53514861645584,260.37288503422957,257.8172878487024,260.3058776855469,60744800,0.0,0 -2019-02-05,260.7653431698527,261.72249094856755,260.229342750559,261.3970642089844,79552800,0.0,0 -2019-02-06,261.10033462867875,261.62675419056745,260.26762078613507,261.0524597167969,58347800,0.0,0 -2019-02-07,259.3296715305057,259.9135177674354,256.7932352695599,258.56396484375,95482000,0.0,0 -2019-02-08,257.23346539526455,258.98503297707174,256.35287658698064,258.8797607421875,75788900,0.0,0 -2019-02-11,259.5784774736161,259.8560292857496,258.4586017710917,259.0233154296875,68021400,0.0,0 -2019-02-12,260.74624656798267,262.75623381168,260.66965837765287,262.354248046875,72270200,0.0,0 -2019-02-13,263.24434877687287,264.1057759238559,262.79448815869495,263.2060546875,65277200,0.0,0 -2019-02-14,262.047897916947,263.828207840147,261.1768899988532,262.6221923828125,83234400,0.0,0 -2019-02-15,264.51731083190424,265.5223333914358,264.29718556644576,265.4840393066406,97088700,0.0,0 -2019-02-19,264.6322242003087,266.64221113603867,264.6226433755264,265.9435119628906,59120800,0.0,0 -2019-02-20,265.90522818267647,266.96767743059445,265.369227751057,266.4795227050781,76610800,0.0,0 -2019-02-21,265.79998266462525,266.1828359814348,264.5078271617869,265.531982421875,64214700,0.0,0 -2019-02-22,266.19236289004516,267.3887976501705,265.5127961250472,267.1782531738281,78114600,0.0,0 -2019-02-25,268.7001316218115,269.2552645331776,267.45582186694276,267.5419616699219,69030700,0.0,0 -2019-02-26,267.1686949841882,268.2885416570369,266.9485404541329,267.3505554199219,56844100,0.0,0 -2019-02-27,266.5847131987411,267.6088680418371,265.5893008222929,267.235595703125,56921600,0.0,0 -2019-02-28,267.0058541312073,267.4748762613514,266.39329493015765,266.73785400390625,69268300,0.0,0 -2019-03-01,268.4225443066167,268.84369169570243,266.87196946945306,268.4034118652344,78880500,0.0,0 -2019-03-04,269.53283038150784,269.7912497758602,264.9767974377411,267.4270935058594,106494600,0.0,0 -2019-03-05,267.5610900161118,267.7716636893495,266.47950838583773,267.0633544921875,59114600,0.0,0 -2019-03-06,267.1877861633369,267.19736698789654,265.10121109749514,265.4457702636719,75039800,0.0,0 -2019-03-07,264.96720648273003,265.1203536323618,262.3254984786213,263.2252197265625,94885100,0.0,0 -2019-03-08,261.2438765860361,262.8805908553177,260.746170333751,262.69873046875,85795800,0.0,0 -2019-03-11,263.4644865379852,266.6804888049993,263.4357732752379,266.5082092285156,65098900,0.0,0 -2019-03-12,267.10167806164407,268.0684067422764,266.90068519086117,267.51324462890625,79667500,0.0,0 -2019-03-13,268.4608633784869,270.27943861338633,268.28855455067617,269.28399658203125,80639200,0.0,0 -2019-03-14,269.31262612593144,269.7624866840099,268.6426403054882,269.11163330078125,67518400,0.0,0 -2019-03-15,269.7010445171483,271.30650584699924,269.4991369685932,270.4412841796875,81309000,1.233,0 -2019-03-18,270.6719818484837,271.73911098437446,270.4316408845485,271.4218444824219,62199800,0.0,0 -2019-03-19,272.556264833853,273.3734006065709,270.53739495276596,271.4891357421875,90268100,0.0,0 -2019-03-20,271.2583831439158,272.54660697194726,269.48947746937296,270.67193603515625,84609200,0.0,0 -2019-03-21,269.79718162518776,274.1617526502856,269.74909582661724,273.7291564941406,79550400,0.0,0 -2019-03-22,272.27746147500653,272.8350395800324,268.3935434388242,268.4608459472656,122659300,0.0,0 -2019-03-25,268.09549690844057,269.36450406484147,266.9130383050378,268.2589416503906,85575200,0.0,0 -2019-03-26,270.1336239599952,271.2776493103295,268.75888066959243,270.25860595703125,68125900,0.0,0 -2019-03-27,270.2489809719605,270.87389095261307,267.191850934216,268.84539794921875,72224700,0.0,0 -2019-03-28,269.51833353241517,270.34509227601876,268.28778910434676,269.8644104003906,56238500,0.0,0 -2019-03-29,271.47949031516185,271.9120863467743,270.2777857743111,271.5660095214844,82186800,0.0,0 -2019-04-01,273.7003045687803,275.1038875993006,273.4118778056892,274.78662109375,77617900,0.0,0 -2019-04-02,274.98850611967634,275.1711675864662,274.0751987857271,274.92120361328125,40070400,0.0,0 -2019-04-03,276.21907292977625,276.6420753777573,274.709724619412,275.3538513183594,68243200,0.0,0 -2019-04-04,275.6999024959871,276.3536228224006,274.9596629503565,276.0844421386719,48997500,0.0,0 -2019-04-05,276.7958348276566,277.4783948039126,276.4881914186293,277.42071533203125,58621700,0.0,0 -2019-04-08,276.9688893622849,277.74759161649195,276.2670832955647,277.6322326660156,53566300,0.0,0 -2019-04-09,276.6036048331425,276.94968173258246,275.62302427956666,276.2094421386719,66142300,0.0,0 -2019-04-10,276.65168331558147,277.24775358734485,276.2094641293685,277.151611328125,52601500,0.0,0 -2019-04-11,277.6706562605371,277.68027928556677,276.4689516714645,277.0746154785156,55093100,0.0,0 -2019-04-12,278.79551908226824,279.2473612694931,277.12275535609353,278.9493408203125,69727800,0.0,0 -2019-04-15,279.0261897161201,279.1319549786872,277.91100430823144,278.7666320800781,49596700,0.0,0 -2019-04-16,279.70882648362607,279.7665059680806,278.31483715281604,278.9493408203125,52153200,0.0,0 -2019-04-17,280.14136517015675,280.17020490647,277.82447522468806,278.2667236328125,58268300,0.0,0 -2019-04-18,278.8916838452604,279.10318508482953,277.5073174296259,278.81475830078125,68708500,0.0,0 -2019-04-22,277.99754662236097,279.2184679269359,277.9014043872272,279.0550231933594,40160100,0.0,0 -2019-04-23,279.449197080177,281.8141729380963,279.19926246494794,281.564208984375,52246600,0.0,0 -2019-04-24,281.47769239195253,281.8333922749499,280.7855093385414,280.9393310546875,50392900,0.0,0 -2019-04-25,280.8335683715407,281.46807195454295,279.49728804162885,280.7662658691406,57770900,0.0,0 -2019-04-26,280.81437673349615,282.1506571827283,279.98758859509377,282.0737609863281,50916400,0.0,0 -2019-04-29,282.16985334542716,283.0735375204498,282.0737111130543,282.51593017578125,57197700,0.0,0 -2019-04-30,282.1506346413811,282.9677996880134,280.6413158669583,282.66015625,81111700,0.0,0 -2019-05-01,283.3330941841242,283.5542183839843,280.52589943618574,280.5355224609375,71671900,0.0,0 -2019-05-02,280.4105524477085,281.3911621825119,278.33400336861405,279.92987060546875,65030200,0.0,0 -2019-05-03,281.50655780967924,282.9678202386277,280.0452660422356,282.6697998046875,56543700,0.0,0 -2019-05-06,278.0744552494673,281.97758959491284,277.7379720806891,281.50653076171875,107198100,0.0,0 -2019-05-07,278.9396483307083,279.5741518401981,274.7673337426898,276.805419921875,144729900,0.0,0 -2019-05-08,276.4209289550781,278.24751428566935,275.78642533400006,276.4209289550781,91568300,0.0,0 -2019-05-09,274.2098209474803,276.2286615576348,272.3543664234438,275.5845642089844,103471100,0.0,0 -2019-05-10,274.58470992306155,277.77644461827794,271.3929752278452,276.9689025878906,112429300,0.0,0 -2019-05-13,271.5083603829732,272.5369972876065,269.11454471999303,270.00860595703125,127290500,0.0,0 -2019-05-14,271.09494361687257,274.08480001564584,270.9603679532788,272.4504699707031,77003200,0.0,0 -2019-05-15,270.7104227180747,274.72891626875247,270.4892984872836,274.0463562011719,73956400,0.0,0 -2019-05-16,274.7961988326606,278.03598983515224,274.7193026449407,276.5843505859375,76749600,0.0,0 -2019-05-17,274.12326660892603,277.4495768824048,274.1040205577922,274.79620361328125,100353000,0.0,0 -2019-05-20,273.08501450610294,274.9115999642539,272.1813301346551,272.9792785644531,62877600,0.0,0 -2019-05-21,274.7865580406231,275.8440639189726,274.5173773932696,275.4403076171875,46847100,0.0,0 -2019-05-22,274.42129140197,275.61337305161527,274.0848082251689,274.5943298339844,49482500,0.0,0 -2019-05-23,272.2197466641695,272.2678031133935,269.72981822143987,271.2391662597656,98733800,0.0,0 -2019-05-24,272.77736272853485,273.21961121241867,271.1911182825919,271.8544616699219,55268100,0.0,0 -2019-05-28,272.15246158841455,273.17150482053455,269.30683309146593,269.3260498046875,70029400,0.0,0 -2019-05-29,268.1339942202538,268.5665903485203,266.01898202040724,267.5187072753906,104972900,0.0,0 -2019-05-30,268.3262553314227,269.22034602664155,267.0764940374135,268.2493591308594,62523800,0.0,0 -2019-05-31,265.52870370341145,266.41314200452194,264.60577329551876,264.6346130371094,86862800,0.0,0 -2019-06-03,264.6730697571849,265.865151500352,262.5388409127597,263.961669921875,96428000,0.0,0 -2019-06-04,266.4131217742404,269.83557442942526,265.9324398918999,269.6913757324219,77231900,0.0,0 -2019-06-05,271.42180199185174,272.05630555793005,269.4894808944912,272.0274658203125,71169700,0.0,0 -2019-06-06,272.34474739341385,274.5174095377128,271.6525643136698,273.79638671875,69430400,0.0,0 -2019-06-07,274.88273852554335,277.6899336715843,274.7000770602961,276.5362854003906,74272200,0.0,0 -2019-06-10,278.1898375030219,279.58382674536915,277.70915560407394,277.8052978515625,60799100,0.0,0 -2019-06-11,279.7472227517949,280.1413854022035,277.04579301421944,277.73797607421875,58641300,0.0,0 -2019-06-12,277.48811321174674,278.08415418506223,276.6997877070712,277.2477722167969,47096300,0.0,0 -2019-06-13,278.2186851854904,278.77629263374473,277.46882257526556,278.3917236328125,48945200,0.0,0 -2019-06-14,278.08404541015625,278.7281425951175,277.2668804792677,278.08404541015625,52324700,0.0,0 -2019-06-17,278.3340180285061,279.0069843784834,278.0071578791863,278.1898193359375,39205700,0.0,0 -2019-06-18,280.1318256671139,282.22759181388574,279.7472566572323,281.102783203125,85434800,0.0,0 -2019-06-19,281.2469387768916,282.3044447148806,280.20867888954274,281.73724365234375,78674400,0.0,0 -2019-06-20,284.6021143919417,284.86167202582806,281.80454253942315,284.4290466308594,116570000,0.0,0 -2019-06-21,284.1411843262233,285.4839638134585,283.78375445151715,284.0155944824219,83309500,1.432,0 -2019-06-24,284.2378064343848,284.5758966669855,283.5036069965851,283.6678466796875,47582700,0.0,0 -2019-06-25,283.72574743233315,283.7547274313945,280.76966960336415,280.8855895996094,82028700,0.0,0 -2019-06-26,281.8420593203217,282.3830391493823,280.4896097476704,280.60552978515625,51584900,0.0,0 -2019-06-27,281.4170055295921,282.1415352605181,281.01128538974,281.6005554199219,40355200,0.0,0 -2019-06-28,282.64381100372145,283.5808704550865,282.0931909196206,283.049560546875,59350900,0.0,0 -2019-07-01,286.6045818202502,286.8364513393953,284.3343831779401,285.6192321777344,78705600,0.0,0 -2019-07-02,285.57096906729413,286.42108868307724,284.6725592611014,286.3631286621094,61504500,0.0,0 -2019-07-03,287.0876389855511,288.67195806801135,286.933069113029,288.6526184082031,40898900,0.0,0 -2019-07-05,287.338807980658,288.4980672406781,285.9573784906519,288.32415771484375,51677300,0.0,0 -2019-07-08,286.92341803824655,288.1309674835694,286.16023853407,286.7398681640625,45841800,0.0,0 -2019-07-09,285.503270015843,287.41600900904666,285.44531001490833,287.09722900390625,41101300,0.0,0 -2019-07-10,288.2372151183228,289.4834143895366,287.6672553229459,288.46905517578125,58448500,0.0,0 -2019-07-11,289.15490298169675,289.40605316346466,288.0729436354258,289.1452331542969,50826100,0.0,0 -2019-07-12,289.666968960172,290.5170884928908,289.338519046383,290.4397888183594,40326000,0.0,0 -2019-07-15,290.90341556446316,290.90341556446316,289.99533627508634,290.53631591796875,33900000,0.0,0 -2019-07-16,290.43978440713744,290.66198411655574,289.27088480799637,289.5993347167969,36650100,0.0,0 -2019-07-17,289.57034996920976,289.74423000963634,287.62860107421875,287.62860107421875,36036300,0.0,0 -2019-07-18,287.0972900918945,289.08732916390125,286.6239401564831,288.68157958984375,51392600,0.0,0 -2019-07-19,289.85043944733525,289.87941944705017,286.894361551699,287.0779113769531,58678600,0.0,0 -2019-07-22,287.50295191080164,288.36274106863976,286.95233189636804,287.7831115722656,43638100,0.0,0 -2019-07-23,288.98106051646994,289.8408203125,288.0922912344716,289.8408203125,44564500,0.0,0 -2019-07-24,289.0293833641376,291.2029724121094,288.93277351021226,291.2029724121094,47213200,0.0,0 -2019-07-25,290.7199386479644,290.7778986612956,288.9520697978015,289.8118591308594,55394100,0.0,0 -2019-07-26,290.54605168992583,291.9661309451017,290.4107920079157,291.75360107421875,45084100,0.0,0 -2019-07-29,291.62800908335413,291.7535989353897,290.6329895772387,291.2222595214844,38126500,0.0,0 -2019-07-30,289.72489565609453,290.9421147998836,289.3191461144367,290.50738525390625,45849000,0.0,0 -2019-07-31,290.76826135215026,290.97115090268795,285.1749130718072,287.32916259765625,104245200,0.0,0 -2019-08-01,287.4933659008826,290.65230450544846,283.97696791114663,284.82708740234375,142646600,0.0,0 -2019-08-02,283.87076505099037,284.1315851506143,281.02093621067814,282.6825256347656,116749700,0.0,0 -2019-08-05,278.3062824864292,278.4222024954732,272.15261632982345,274.1813049316406,178745400,0.0,0 -2019-08-06,276.2003845748526,278.2580536324012,274.62573531555716,278.02618408203125,120711700,0.0,0 -2019-08-07,274.74163104006794,279.01153865053277,272.4617919450118,278.1903991699219,140572300,0.0,0 -2019-08-08,279.7843708377664,283.6485290527344,279.1951008609538,283.6485290527344,87713900,0.0,0 -2019-08-09,282.64382031745004,283.28140991702446,279.8133316941948,281.7164306640625,93730000,0.0,0 -2019-08-12,280.1128786612584,281.7068383582442,277.27271942756283,278.2870788574219,65527600,0.0,0 -2019-08-13,277.968190113332,284.16050670834215,277.6010903945074,282.6148376464844,94299800,0.0,0 -2019-08-14,278.28700361148674,278.93423356183854,274.12337575833106,274.25860595703125,135622100,0.0,0 -2019-08-15,275.20532346621155,275.93952288281275,272.79989466765204,274.9831237792969,99556600,0.0,0 -2019-08-16,276.75101834832657,279.5042074555195,275.041109492615,279.04052734375,83018300,0.0,0 -2019-08-19,282.26711353600103,283.1268734511641,281.54258383483693,282.40234375,53571800,0.0,0 -2019-08-20,281.86131195859923,282.43127168067616,280.1031426136708,280.2383728027344,51596400,0.0,0 -2019-08-21,282.54719899532097,282.91426918321156,281.8129996571772,282.5182189941406,49524700,0.0,0 -2019-08-22,283.271814701557,283.9480247619198,280.53790600653656,282.43133544921875,51666400,0.0,0 -2019-08-23,281.04022800145475,282.8177371670491,273.84322183949206,275.1763610839844,149161500,0.0,0 -2019-08-26,277.51420182344737,278.21942138671875,275.8815924436203,278.21942138671875,72423800,0.0,0 -2019-08-27,279.70708501813897,280.10316475078696,276.31627693996677,277.12774658203125,66668900,0.0,0 -2019-08-28,276.4225539984372,279.2530426304842,275.5627647008117,279.07916259765625,59696700,0.0,0 -2019-08-29,281.8130799386555,283.20417935396387,280.7407606271434,282.64385986328125,57899400,0.0,0 -2019-08-30,284.2280980261434,284.24740819986994,281.5231996453738,282.5182189941406,62901200,0.0,0 -2019-09-03,280.7020922918931,281.67777209693855,279.44622330820584,280.8663024902344,69101400,0.0,0 -2019-09-04,283.1848914563834,284.07363146980936,282.38306199691425,284.0543212890625,46887300,0.0,0 -2019-09-05,286.7108825553499,288.6815819851615,284.01562399131217,287.7059020996094,83258100,0.0,0 -2019-09-06,288.0440195761339,288.61397936098126,287.319489928774,287.9280700683594,49584300,0.0,0 -2019-09-09,288.98107755855284,289.0776579260698,287.0683086864936,288.072998046875,51260300,0.0,0 -2019-09-10,287.2614713455819,288.0729704118953,285.91869186533137,288.0053405761719,57947100,0.0,0 -2019-09-11,288.33382602227385,290.140315266005,287.6382763661711,290.0533752441406,68821100,0.0,0 -2019-09-12,291.0193945994959,292.1882941205827,290.2079249705541,291.05804443359375,72908700,0.0,0 -2019-09-13,291.53143786612355,291.9082074721536,290.4687883786936,290.8648681640625,62104800,0.0,0 -2019-09-16,289.6572299669717,290.9130987881379,289.2804899574484,289.96636962890625,58191200,0.0,0 -2019-09-17,289.7538932247927,290.79720292472376,289.5703433592477,290.70062255859375,41475500,0.0,0 -2019-09-18,290.28521226846715,290.990431746691,288.1116233010123,290.87451171875,73375800,0.0,0 -2019-09-19,291.2898931475013,292.3525425079359,290.4977336714331,290.85516357421875,76560500,0.0,0 -2019-09-20,291.4995547909268,291.80043723394266,288.63659570498044,289.4809265136719,89565000,1.384,0 -2019-09-23,288.7724603931848,290.1796982012936,288.5007213922715,289.4129943847656,43476800,0.0,0 -2019-09-24,290.5776403597218,290.99494858447133,286.113330874898,287.1420593261719,94869400,0.0,0 -2019-09-25,287.22935846482795,289.3159288980625,285.64743769748725,288.84039306640625,71854000,0.0,0 -2019-09-26,288.8501286771311,289.0733248835009,286.7344442549152,288.23870849609375,56179700,0.0,0 -2019-09-27,289.0441920107594,289.16067696588664,285.02633477007737,286.6858825683594,84746600,0.0,0 -2019-09-30,287.2390532897808,288.7724311502273,287.19054010848146,288.01544189453125,51662400,0.0,0 -2019-10-01,288.956883496958,289.65564522085214,284.3567194247659,284.5896301269531,88242400,0.0,0 -2019-10-02,282.9009638579745,282.9106783428572,278.1843445087715,279.56243896484375,122539500,0.0,0 -2019-10-03,279.319791605972,281.8819275557079,276.4180041202906,281.8528137207031,85278800,0.0,0 -2019-10-04,282.55160153158243,285.93863965907235,282.49334423885097,285.6669006347656,65091200,0.0,0 -2019-10-07,284.8128356532726,286.5500401627699,284.1334733305576,284.434326171875,59610500,0.0,0 -2019-10-08,282.4545516085538,283.2406548606821,279.9797568815328,280.0185852050781,95708100,0.0,0 -2019-10-09,282.173084662263,283.6773489330484,281.5034367953117,282.677734375,62359400,0.0,0 -2019-10-10,282.59040095362633,285.5310170380697,282.4157179269859,284.5896301269531,55296300,0.0,0 -2019-10-11,287.53023302517585,289.92737094969397,287.4040928121642,287.5399475097656,98720400,0.0,0 -2019-10-14,287.2002670756926,287.9184577385611,286.85090103753856,287.2196960449219,40394800,0.0,0 -2019-10-15,288.33571215298,290.8590194436506,288.20954234584764,290.0632019042969,46754500,0.0,0 -2019-10-16,289.56829827214807,290.3350021422327,289.13159071374434,289.597412109375,48928200,0.0,0 -2019-10-17,290.83967144572597,291.38314952211533,289.7138869682526,290.45147705078125,45736600,0.0,0 -2019-10-18,289.8788458917521,290.56789307079663,288.26781123436433,289.1800842285156,64304000,0.0,0 -2019-10-21,290.5872791065818,291.35395319390096,290.12142819414095,291.14044189453125,39048600,0.0,0 -2019-10-22,291.71305551325656,292.0236228114956,290.09233610697805,290.18939208984375,48594700,0.0,0 -2019-10-23,289.91768256836036,291.09198011357694,289.6944567468189,291.03375244140625,34352200,0.0,0 -2019-10-24,292.0333865633568,292.1886702386739,290.6261486177117,291.5093078613281,35453100,0.0,0 -2019-10-25,290.89785631371734,293.2853092450756,290.8396286439115,292.7030029296875,45205400,0.0,0 -2019-10-28,294.00347820998826,294.8866373823915,293.9743643742972,294.35284423828125,42147000,0.0,0 -2019-10-29,294.0617060797125,295.2554325785126,293.9258217681756,294.2655029296875,44284900,0.0,0 -2019-10-30,294.4790140135277,295.5659700355771,293.08149066594126,295.1680908203125,49643900,0.0,0 -2019-10-31,295.1584069196841,295.1584069196841,292.8292109714703,294.3819885253906,69053800,0.0,0 -2019-11-01,295.9251186917832,297.15764405272404,295.7504060375914,297.109130859375,71141500,0.0,0 -2019-11-04,298.7686158431431,298.9141850097797,297.9048560922195,298.3027648925781,60606900,0.0,0 -2019-11-05,298.5163173974508,298.8365992255703,297.6622720122413,297.97283935546875,42933200,0.0,0 -2019-11-06,297.9727988164596,298.33187930063093,297.0314120472923,298.0407409667969,46487100,0.0,0 -2019-11-07,299.4674071932418,300.5155349144175,298.58424800485733,299.0888977050781,54272300,0.0,0 -2019-11-08,298.7201528891124,299.88476576815606,297.9728778890831,299.8265380859375,49032100,0.0,0 -2019-11-11,298.35128682749047,299.43824268546336,298.20568805370857,299.25384521484375,35797300,0.0,0 -2019-11-12,299.64204893143045,300.8454601524283,299.0597426699607,299.8846740722656,46484600,0.0,0 -2019-11-13,298.8268827699311,300.40880369564786,298.5842575878845,299.9817810058594,53917700,0.0,0 -2019-11-14,299.6808662523742,300.5057976244147,299.00150403602885,300.4184265136719,51219900,0.0,0 -2019-11-15,301.84510276783465,302.64092041233437,301.10754241052257,302.5924072265625,62023600,0.0,0 -2019-11-18,302.34007693530185,303.0679524483824,301.8548265932481,302.81561279296875,49228000,0.0,0 -2019-11-19,303.4561164069796,303.46583089039353,302.03919384294215,302.7282409667969,67804700,0.0,0 -2019-11-20,302.0974734068222,302.65066594455396,299.9429605490591,301.6025085449219,79406200,0.0,0 -2019-11-21,301.71895328315674,301.83540861929174,300.26320234681185,301.1172180175781,54664700,0.0,0 -2019-11-22,301.91306558439044,302.0586347689982,300.70965416852397,301.7868957519531,44850200,0.0,0 -2019-11-25,302.77681291238076,304.12579345703125,302.77681291238076,304.12579345703125,48647200,0.0,0 -2019-11-26,304.1646614162385,305.0089923793893,303.8249802103884,304.81488037109375,37569000,0.0,0 -2019-11-27,305.32922346238297,306.173583984375,305.0963127624305,306.173583984375,44444600,0.0,0 -2019-11-29,305.57181892784405,305.8338730571358,304.79543025862466,305.0380554199219,36592700,0.0,0 -2019-12-02,305.3097975411219,305.3777396951396,301.9907018863052,302.44683837890625,75767800,0.0,0 -2019-12-03,299.54498196217486,300.5057976244147,298.0698318222537,300.4184265136719,73941700,0.0,0 -2019-12-04,301.53459533038347,302.9126898117725,301.16580030604956,302.27215576171875,49080000,0.0,0 -2019-12-05,303.01943926110926,303.0388386125524,301.4180894384676,302.81561279296875,40709000,0.0,0 -2019-12-06,304.85363701720723,306.0085350751507,304.8439225338763,305.5815124511719,48927000,0.0,0 -2019-12-09,305.16423606783917,305.8823970932093,304.5431014165664,304.6207580566406,34838500,0.0,0 -2019-12-10,304.5625509210281,305.2709975098249,303.5823356909772,304.2810974121094,52649800,0.0,0 -2019-12-11,304.766326944773,305.4165754311216,304.1937350984247,305.14483642578125,53429100,0.0,0 -2019-12-12,305.1545082586967,308.60948815787896,304.90219823279847,307.7748718261719,96389600,0.0,0 -2019-12-13,307.52252191409787,309.2694407731909,306.69759047652576,307.9592590332031,81503900,0.0,0 -2019-12-16,309.8032121802673,310.7057706576791,307.89132475517164,310.074951171875,82749700,0.0,0 -2019-12-17,310.48262553564956,310.8028777644826,310.055602818983,310.1429443359375,61097700,0.0,0 -2019-12-18,310.5602318491834,310.8028570303156,310.10409532396164,310.1623229980469,48133000,0.0,0 -2019-12-19,310.3661285523784,311.511341948578,310.09438952659076,311.4336853027344,85310500,0.0,0 -2019-12-20,312.53569922400766,314.0083696681147,311.4921806621476,312.7990417480469,147142100,1.57,0 -2019-12-23,313.63779298464004,313.69630693742494,313.12089989307583,313.2769470214844,52990000,0.0,0 -2019-12-24,313.5207073793926,313.569459076759,312.9647951672985,313.2866516113281,20270000,0.0,0 -2019-12-26,313.6962668706267,314.9641384659025,313.6865343883699,314.9543762207031,30911200,0.0,0 -2019-12-27,315.73461760294754,315.79313155485687,314.3107285015766,314.8763732910156,42528800,0.0,0 -2019-12-30,314.96419554614846,315.1104804359374,312.62351825773356,313.1404113769531,49729100,0.0,0 -2019-12-31,312.6039632218848,314.1644045254851,312.23335506394864,313.90106201171875,57077300,0.0,0 -2020-01-02,315.5395710117542,316.8561944138564,314.55453658093904,316.836669921875,59151200,0.0,0 -2020-01-03,313.21840980262533,315.63709546887657,313.1598958541869,314.4375,77709700,0.0,0 -2020-01-06,312.56498417602006,315.7248864067375,312.4381940253842,315.6371154785156,55653900,0.0,0 -2020-01-07,315.0323802310774,315.539540766859,314.27166919034727,314.74957275390625,40496400,0.0,0 -2020-01-08,314.9543925082585,317.72416186034826,314.69107974074103,316.42706298828125,68296000,0.0,0 -2020-01-09,318.0947580215935,318.6506702727343,317.4705695789913,318.5726318359375,48473300,0.0,0 -2020-01-10,319.1968304540203,319.362610052348,317.15851523113554,317.6558837890625,53029300,0.0,0 -2020-01-13,318.3190929559576,319.85024761946664,317.8607138525909,319.84051513671875,47086800,0.0,0 -2020-01-14,319.3723694840367,320.4939264945821,318.75794327259655,319.3528747558594,62832800,0.0,0 -2020-01-15,319.25535988638006,320.8840477893748,319.16758896013596,320.0745849609375,72056600,0.0,0 -2020-01-16,321.5472273791711,322.73706054687494,321.3034093510592,322.737060546875,54050300,0.0,0 -2020-01-17,323.49782011891654,323.9659317548105,322.6688327464245,323.74163818359375,95846000,0.0,0 -2020-01-21,322.71759357128826,323.9659409071848,322.6395848840845,323.1076965332031,77742400,0.0,0 -2020-01-22,324.02440645438094,324.71687110349563,322.9808878838227,323.14666748046875,48914900,0.0,0 -2020-01-23,322.4542298964593,323.95615731397476,321.2643967044174,323.51727294921875,51963000,0.0,0 -2020-01-24,324.2194594582929,324.3072303757813,319.2650605207031,320.64019775390625,87578400,0.0,0 -2020-01-27,315.042200675856,317.0805161517614,314.6813546974684,315.5005798339844,84062500,0.0,0 -2020-01-28,317.0219674492371,319.7429851221418,315.59807842252127,318.8067321777344,63834000,0.0,0 -2020-01-29,320.2599152462082,320.50373331558217,318.32886542210485,318.5434265136719,53888900,0.0,0 -2020-01-30,316.33929840143503,319.8015328088434,315.5395977619218,319.57720947265625,75491800,0.0,0 -2020-01-31,318.9140270918076,319.07983647070193,312.79908077324035,313.77435302734375,113845600,0.0,0 -2020-02-03,315.35427572075275,318.0947882555932,315.2274855711142,316.105224609375,69083000,0.0,0 -2020-02-04,319.9575552394076,321.84958567331864,319.61620401954724,320.9230651855469,62573200,0.0,0 -2020-02-05,324.053712794015,324.8534432142078,322.4933009417682,324.6291198730469,65951100,0.0,0 -2020-02-06,325.653159346524,325.92623438498094,324.57059167635555,325.721435546875,50359700,0.0,0 -2020-02-07,324.5900765545177,325.7311282762224,323.4002433686814,323.98541259765625,64139400,0.0,0 -2020-02-10,323.039412117659,326.4723594470727,323.00039289717,326.4040832519531,42070000,0.0,0 -2020-02-11,327.8474960800644,328.68621585964496,326.40408255450296,326.9697570800781,54864500,0.0,0 -2020-02-12,328.5008877335763,329.30061799718834,328.1107848468936,329.0763244628906,43992700,0.0,0 -2020-02-13,327.5548812726131,329.75900579694235,327.26231154059735,328.7252197265625,54501900,0.0,0 -2020-02-14,329.164151675128,329.3787127639399,327.8865473890494,329.2519226074219,64582200,0.0,0 -2020-02-18,328.1888507951302,329.3201700954118,326.92097910344364,328.4034118652344,57226200,0.0,0 -2020-02-19,329.4371840063319,330.695263635711,329.13485202442433,329.97357177734375,48814700,0.0,0 -2020-02-20,329.38845515779536,330.2662240330376,325.42885202391244,328.6180114746094,74163400,0.0,0 -2020-02-21,327.17457738667963,327.50616637454027,324.3560263454442,325.2337951660156,113788200,0.0,0 -2020-02-24,315.1494933624793,325.3118136760255,313.2964522523599,314.4472961425781,161088400,0.0,0 -2020-02-25,315.9296538422726,316.5830694973033,303.98257033791947,304.9188232421875,218913200,0.0,0 -2020-02-26,306.41102470176514,310.2438374553743,303.0170963605923,303.79730224609375,194773800,0.0,0 -2020-02-27,297.9066245449798,303.85579065130236,290.1532287597656,290.1532287597656,284353500,0.0,0 -2020-02-28,281.56111756937986,290.52387215358164,278.47925361023044,288.9341735839844,384975800,0.0,0 -2020-03-02,290.83590301482917,301.5151450909119,287.1786324083549,301.4468688964844,238703600,0.0,0 -2020-03-03,301.8467655472551,306.0794435992073,290.2117745870386,292.81573486328125,300139100,0.0,0 -2020-03-04,298.5503020251495,305.3577122608297,295.82928442739245,305.1236267089844,176613400,0.0,0 -2020-03-05,297.43850929537945,300.8421995549829,292.5914055474934,294.9808044433594,186366800,0.0,0 -2020-03-06,285.90104084879493,291.39182812320394,283.0532626783845,290.1044616699219,228667200,0.0,0 -2020-03-09,268.492432237462,277.16261662330606,266.6882024275362,267.44891357421875,309417300,0.0,0 -2020-03-10,277.6014670083577,281.38549778517665,266.7369214428988,281.2879943847656,276444100,0.0,0 -2020-03-11,273.758935928018,274.9682640091057,264.18175516929153,267.57568359375,255316300,0.0,0 -2020-03-12,249.66967400090172,260.06607884139885,241.55540245276575,241.9747772216797,392220700,0.0,0 -2020-03-13,256.58438229563063,264.76693106596025,242.37467281903318,262.66033935546875,329566100,0.0,0 -2020-03-16,235.21613576084084,250.54741552524558,231.490603794865,233.91903686523438,297240000,0.0,0 -2020-03-17,238.98067634934978,249.83547480715055,231.20777115893475,246.54879760742188,262070500,0.0,0 -2020-03-18,230.40805220603943,242.22834624920506,222.38156634256302,234.06532287597656,327597100,0.0,0 -2020-03-19,233.33387599706967,241.26284381810098,226.4777135584991,234.56271362304688,289322000,0.0,0 -2020-03-20,237.92364496010447,239.826801082704,224.16011688045532,224.4544219970703,347158800,1.406,0 -2020-03-23,223.85601299878326,225.3177040006051,214.11460469212452,218.7155303955078,326025200,0.0,0 -2020-03-24,229.9676729198424,239.46382903257478,229.3594533334805,238.5318603515625,235494500,0.0,0 -2020-03-25,240.21920557699968,251.48117794658793,235.19645397764472,242.1027374267578,299430300,0.0,0 -2020-03-26,244.78090362795456,257.8086621669641,244.3198290786598,256.23907470703125,257632800,0.0,0 -2020-03-27,248.45965119980093,255.85643751605994,246.28181442618262,248.60679626464844,224341200,0.0,0 -2020-03-30,250.8434921781517,257.44566523559473,248.7147087396888,256.68048095703125,171369500,0.0,0 -2020-03-31,255.6112113367011,258.32859026596213,251.35364405269925,252.85458374023438,194881100,0.0,0 -2020-04-01,243.27012876564996,252.76628497690646,239.26761812807703,241.47488403320312,189554600,0.0,0 -2020-04-02,240.53311112410248,247.88084404724194,239.94450093064017,247.0469970703125,177660400,0.0,0 -2020-04-03,245.9973309340812,248.50872164244254,240.5625582764185,243.4761505126953,135561200,0.0,0 -2020-04-06,252.94283996469383,261.92886763025683,243.45650412057958,259.8294982910156,188061200,0.0,0 -2020-04-07,269.00195282495207,269.80638584497115,259.85898925908833,260.09442138671875,201427200,0.0,0 -2020-04-08,262.8706580471995,270.7579636312611,260.21213714924636,268.82537841796875,153774500,0.0,0 -2020-04-09,272.3079491548729,275.85922015486074,270.2380384566057,272.91619873046875,189999200,0.0,0 -2020-04-13,271.87630917582237,272.239276995542,266.25512798163066,270.4244079589844,114839100,0.0,0 -2020-04-14,275.6433665325658,279.48889733140317,270.27725687188524,278.3999938964844,134143400,0.0,0 -2020-04-15,272.29813385349087,278.5471439673248,270.2281934117733,272.4845275878906,121775000,0.0,0 -2020-04-16,273.8481411657386,274.7114322516927,270.52254248003186,273.7991027832031,131798300,0.0,0 -2020-04-17,279.9597834120126,281.843300093228,277.036371764303,281.19586181640625,146684800,0.0,0 -2020-04-20,277.24240725420157,281.3430397603875,276.00635864330656,276.2417907714844,100109300,0.0,0 -2020-04-21,271.4740746763567,272.7591914361182,266.8535102056844,267.8541564941406,126385700,0.0,0 -2020-04-22,273.06334741739624,275.66301038898814,271.65069472000994,273.7991027832031,92951600,0.0,0 -2020-04-23,275.16264240058206,278.5471285079392,273.45569980971896,273.7794189453125,104709700,0.0,0 -2020-04-24,275.3981347247383,278.31172701734033,273.2104781080029,277.5955810546875,85063200,0.0,0 -2020-04-27,279.7047166159488,282.79488273985044,279.21421310618797,281.5980529785156,77896600,0.0,0 -2020-04-28,285.49263639704327,285.86542383410415,279.97938203955994,280.3031311035156,105270000,0.0,0 -2020-04-29,285.9929373390306,289.2793164069132,284.8942144127073,287.6410217285156,118745600,0.0,0 -2020-04-30,286.16957122640184,287.7490082166862,283.1088338808608,284.96295166015625,122901700,0.0,0 -2020-05-01,279.8911334633807,285.1395274389247,276.17310816966057,277.41900634765625,125180000,0.0,0 -2020-05-04,275.407876681854,278.5078621814683,273.8284698905645,278.18414306640625,80873200,0.0,0 -2020-05-05,281.1958902201207,283.756304387327,278.3215166570548,280.7544250488281,79569900,0.0,0 -2020-05-06,282.56928247117037,282.9812886718801,278.39018280764185,278.85125732421875,73632600,0.0,0 -2020-05-07,282.28480317286073,284.27624645993274,281.67658353906955,282.21612548828125,75250400,0.0,0 -2020-05-08,285.5613461298709,287.3860348587758,284.3546966488538,286.8857116699219,76452400,0.0,0 -2020-05-11,284.8256011249927,288.41609074519226,284.37434623638785,286.944580078125,79514200,0.0,0 -2020-05-12,288.2100768611455,288.6515120819882,281.07813626772264,281.2253112792969,95870800,0.0,0 -2020-05-13,280.6268699054825,281.7354126445861,273.66171397265657,276.2515869140625,144721100,0.0,0 -2020-05-14,273.651934870671,279.69491209234354,267.8051111627781,279.5575866699219,121977900,0.0,0 -2020-05-15,277.00697103496844,280.8917507823361,275.9965349158463,280.84271240234375,111146300,0.0,0 -2020-05-18,287.4840885890301,291.11382645429194,287.1407600903347,289.3970642089844,119703800,0.0,0 -2020-05-19,288.75942308585996,290.58408177765034,286.4050122192446,286.42462158203125,95189300,0.0,0 -2020-05-20,290.2015018588968,292.21255426097423,289.9562501055723,291.2904052734375,85861700,0.0,0 -2020-05-21,291.15308493074764,292.0163759075603,288.1119571489608,289.27935791015625,78293900,0.0,0 -2020-05-22,288.9752639783807,290.01512909259765,287.6508984271165,289.8287353515625,63958200,0.0,0 -2020-05-26,296.1954426476647,296.4505140532561,289.84832602465684,293.3995666503906,88951400,0.0,0 -2020-05-27,296.3818521180462,297.80432434914434,291.23156498456405,297.76507568359375,104817400,0.0,0 -2020-05-28,298.8637828517603,301.01219062200846,296.49955233945195,297.2156982421875,90405200,0.0,0 -2020-05-29,296.7154112491019,299.16792909965847,293.78220947998415,298.54010009765625,119090800,0.0,0 -2020-06-01,297.85336760469585,300.3941723729286,297.3040060298326,299.7467041015625,55758300,0.0,0 -2020-06-02,300.7276981117738,302.27770601041016,299.30525585720767,302.2286376953125,74267200,0.0,0 -2020-06-03,304.34760693418633,307.2710186182873,304.0533168046949,306.2507629394531,92567600,0.0,0 -2020-06-04,305.2011288206996,307.0552467576052,303.2096854465953,305.4463806152344,75794400,0.0,0 -2020-06-05,311.20483950164913,315.1680859475974,311.1361618313691,313.2747497558594,150524700,0.0,0 -2020-06-08,314.13808111126843,317.2674960193427,313.5592905399703,317.0614929199219,73641200,0.0,0 -2020-06-09,314.2165518040222,317.1399636433862,313.29440276536235,314.697265625,77479200,0.0,0 -2020-06-10,315.3153346806508,316.26691282379403,312.17609979206446,312.9412841796875,95000800,0.0,0 -2020-06-11,305.54444509473706,306.22134234914375,294.31193242014064,294.9005126953125,209243600,0.0,0 -2020-06-12,302.3856168116949,303.2096591773836,292.9287240014907,298.4321594238281,194678900,0.0,0 -2020-06-15,292.3596786596257,302.4248194847437,291.1039909688823,301.2181701660156,135782700,0.0,0 -2020-06-16,309.4881176414586,309.6450823633982,301.8264549084168,307.0159606933594,137627500,0.0,0 -2020-06-17,308.104922964097,308.41885243738983,304.9558684554398,305.7406921386719,83398900,0.0,0 -2020-06-18,304.1219962697921,306.3684807933604,303.63149275911553,305.8583679199219,80828700,0.0,0 -2020-06-19,309.55925309344263,309.7661627131124,302.0313633295862,304.11041259765625,135549600,1.366,0 -2020-06-22,303.46996362396993,306.485053001028,302.24817134743034,306.0613708496094,74649400,0.0,0 -2020-06-23,308.8892058553746,309.88439270066056,307.0367919559004,307.4703369140625,68471200,0.0,0 -2020-06-24,305.29277965721644,305.95295995730146,297.6663816417867,299.6271667480469,132813500,0.0,0 -2020-06-25,299.0162933096727,303.1251078653027,296.8584312154481,302.83935546875,89468000,0.0,0 -2020-06-26,301.66679912725874,301.89343447211024,295.02572499663245,295.6464538574219,127961000,0.0,0 -2020-06-29,296.9865036331724,300.1395223189962,294.54288934415524,299.9917297363281,79773300,0.0,0 -2020-06-30,299.5286720629897,305.6475565483558,299.3611838002569,303.83453369140625,113394800,0.0,0 -2020-07-01,305.02678973396564,307.3127488692916,304.53412768254395,305.96282958984375,72396500,0.0,0 -2020-07-02,309.62818575313406,311.0667803579012,306.9382706374605,307.647705078125,69344200,0.0,0 -2020-07-06,311.72698998261825,313.0177621864543,310.9288798434435,312.3970031738281,61713800,0.0,0 -2020-07-07,310.7514816575032,312.8600593386887,308.7709708351823,309.1749572753906,82910000,0.0,0 -2020-07-08,309.9927983620726,311.6579984842647,308.1108558064095,311.5397644042969,54638600,0.0,0 -2020-07-09,312.1900630181532,312.44625688904705,306.12046336629885,309.76617431640625,83354200,0.0,0 -2020-07-10,309.6972153049008,313.2148295568068,308.1699749785745,312.9290771484375,57550400,0.0,0 -2020-07-13,315.43176301876105,317.97388559596953,309.51981927951243,310.2193908691406,102997500,0.0,0 -2020-07-14,308.7020165029715,315.0672315917454,307.4211072506421,314.23956298828125,93657000,0.0,0 -2020-07-15,317.67830489673975,318.29906380922773,314.58437319630787,317.12652587890625,87196500,0.0,0 -2020-07-16,315.096768291685,316.56489141965255,314.4070294683744,316.08209228515625,54622500,0.0,0 -2020-07-17,317.15609905442665,317.8359750309854,315.0474912269076,316.9984436035156,62774900,0.0,0 -2020-07-20,316.7127017997887,320.3584128083537,315.91459172580994,319.560302734375,56308800,0.0,0 -2020-07-21,321.65907300463266,322.1320093405656,319.18589982572803,320.2402038574219,57292200,0.0,0 -2020-07-22,319.8558721430427,322.39802490266555,319.7376380741676,322.06298828125,57792900,0.0,0 -2020-07-23,321.67874238384,322.42759828083376,316.76198501838684,318.2202453613281,75738000,0.0,0 -2020-07-24,316.23978678955643,317.2645022191382,314.5647237658965,316.1708068847656,73766600,0.0,0 -2020-07-27,316.9097787996052,318.66365440463795,316.0623844809289,318.4764404296875,48293000,0.0,0 -2020-07-28,317.69803084239607,318.89029461041184,316.1412320514382,316.45654296875,57495000,0.0,0 -2020-07-29,317.39256919341244,320.9496045495029,317.35314781301093,320.3485412597656,48454200,0.0,0 -2020-07-30,317.17583162040575,319.6490048104725,314.94901953269056,319.2055969238281,61861700,0.0,0 -2020-07-31,321.1170702688856,321.83636757966815,316.6141325869457,321.72796630859375,84986800,0.0,0 -2020-08-03,323.50161814643826,324.78252745812915,322.9202805314582,323.9647216796875,53077900,0.0,0 -2020-08-04,323.04833944248503,325.216064453125,323.04833944248503,325.216064453125,41917900,0.0,0 -2020-08-05,326.60533968777963,327.5118509768131,326.319587315083,327.2359313964844,42697700,0.0,0 -2020-08-06,326.61522092611705,329.5514672966303,326.2703515010042,329.4233703613281,43679400,0.0,0 -2020-08-07,328.38883552082956,329.9653601940298,327.42320701693893,329.659912109375,57308300,0.0,0 -2020-08-10,330.1426777428928,330.8422494072574,328.07349119916097,330.64520263671875,44282100,0.0,0 -2020-08-11,331.90641297246236,332.58628897400536,327.1374481685387,327.91583251953125,69601100,0.0,0 -2020-08-12,330.5170839397103,333.31540048266055,330.4875254225901,332.48773193359375,53774400,0.0,0 -2020-08-13,331.66991573752233,333.2858616212651,330.9013641773701,331.8866882324219,41816100,0.0,0 -2020-08-14,331.47286329047023,332.46805019133103,330.69444888079585,331.89654541015625,47260400,0.0,0 -2020-08-17,332.9804252191162,333.37454884098463,331.9064255699003,332.95086669921875,35481000,0.0,0 -2020-08-18,333.3745507452565,334.12340667987735,331.6699292355502,333.670166015625,38733900,0.0,0 -2020-08-19,334.0740895777421,334.6258686111842,331.67975947873055,332.28082275390625,68054200,0.0,0 -2020-08-20,330.4382701336667,333.8277873857093,330.30034039825466,333.3154296875,42207800,0.0,0 -2020-08-21,332.9607300755044,334.7343014114976,332.5961349032668,334.4978332519531,55106600,0.0,0 -2020-08-24,337.0990822832813,337.96617231787366,334.4682837284718,337.8873596191406,48588700,0.0,0 -2020-08-25,338.4883645760912,339.15837770323236,337.2468466695566,339.0697021484375,38463400,0.0,0 -2020-08-26,339.70032753122456,342.75480801635297,339.11898995277426,342.4690856933594,50790200,0.0,0 -2020-08-27,343.3953072140425,344.7648920588511,341.4443546965106,343.2179260253906,58034100,0.0,0 -2020-08-28,344.31165218027223,345.5728658118236,343.0405756855221,345.4349060058594,48588900,0.0,0 -2020-08-31,345.20827812020474,346.1443179019907,343.93720170863116,344.18353271484375,66099200,0.0,0 -2020-09-01,345.07032356256684,347.5336336620934,344.11455804116235,347.4252624511719,54908700,0.0,0 -2020-09-02,349.4649086595517,353.48501772101184,348.243086339054,352.450439453125,69540000,0.0,0 -2020-09-03,350.647283299371,351.1498082135989,337.5621804301448,340.32110595703125,148011100,0.0,0 -2020-09-04,341.0502009861614,342.7252337446103,329.95544312206727,337.5424499511719,139156300,0.0,0 -2020-09-08,331.7684276179883,337.6114216500247,327.9946500196835,328.3197937011719,114465300,0.0,0 -2020-09-09,332.59613726440455,337.43408219412936,331.66993020667365,334.80328369140625,91462300,0.0,0 -2020-09-10,336.8034808223932,337.5030524925724,327.9651227117506,328.9898681640625,90569500,0.0,0 -2020-09-11,330.891528577298,332.0246452170547,326.1422594555071,329.1573486328125,84680200,0.0,0 -2020-09-14,332.5370322391455,335.384633418818,329.31503314724387,333.4927978515625,65605700,0.0,0 -2020-09-15,336.11374368694413,337.00052934059323,333.50264090187017,335.1777038574219,52920900,0.0,0 -2020-09-16,336.49799701680286,338.02523713515967,333.55185791311624,333.84747314453125,82096000,0.0,0 -2020-09-17,328.6646867406648,332.7439427290615,328.10304481709653,330.9112243652344,91523300,0.0,0 -2020-09-18,331.77087920380495,331.88958656018474,324.45030038970583,327.1015319824219,105877900,1.339,0 -2020-09-21,322.20466928971535,323.61931558974044,318.2772732735822,323.4610290527344,99450800,0.0,0 -2020-09-22,325.04389520738874,327.34887708141235,322.36295635583804,326.75531005859375,63612100,0.0,0 -2020-09-23,327.3488872174343,327.64568583307016,318.64333791344586,319.17755126953125,93112200,0.0,0 -2020-09-24,317.7727593155621,323.2928630552864,316.3679850689975,320.0282897949219,76681300,0.0,0 -2020-09-25,319.1181248146024,326.043002261089,318.1882404752242,325.2021484375,71069400,0.0,0 -2020-09-28,329.64398519845355,331.36530238519066,328.58546086841676,330.60357666015625,64584600,0.0,0 -2020-09-29,330.38593590657734,331.1773384718609,328.0611493597069,328.8031005859375,51304000,0.0,0 -2020-09-30,329.5153501027799,334.6595569591169,329.3076122283333,331.2960510253906,104081100,0.0,0 -2020-10-01,334.065991946112,335.10471151451344,331.41476032785135,333.4229736328125,88698700,0.0,0 -2020-10-02,328.1403057647572,333.3933179997991,327.63576927311925,330.25732421875,89431100,0.0,0 -2020-10-05,332.4534651561859,336.3116050549942,332.4040138227672,336.11376953125,45713100,0.0,0 -2020-10-06,336.2621994433775,338.4979555151759,330.79154682235594,331.33563232421875,90128900,0.0,0 -2020-10-07,334.49140547642617,337.9637470022001,334.4617286339013,337.10308837890625,56999600,0.0,0 -2020-10-08,339.1706249816913,340.15989323003214,338.19122888658546,340.09063720703125,45242500,0.0,0 -2020-10-09,341.8515210995184,343.62231965312964,341.1887283035763,343.127685546875,59528600,0.0,0 -2020-10-12,345.8383087394127,350.2207601561271,345.3139977368495,348.6478271484375,80388500,0.0,0 -2020-10-13,348.4994182602636,348.6873816431623,345.3436501243173,346.37249755859375,73255500,0.0,0 -2020-10-14,346.9858497566436,348.1531790832653,343.414605751452,344.19610595703125,57727900,0.0,0 -2020-10-15,340.02135608034916,344.2850995007018,339.4475938223034,343.77069091796875,60357700,0.0,0 -2020-10-16,345.2150493969607,346.98584806554027,343.3750248934642,343.56298828125,89501900,0.0,0 -2020-10-19,344.90835534181844,345.58105047893014,337.38003875575237,338.3396301269531,68425600,0.0,0 -2020-10-20,339.7740744677079,343.1573852636833,338.9628974238229,339.6949462890625,60051900,0.0,0 -2020-10-21,339.6454777556973,341.96039218313126,338.7254654671449,339.05194091796875,63575000,0.0,0 -2020-10-22,339.27942609351965,341.5349564661785,336.99421888135487,340.9117126464844,55399300,0.0,0 -2020-10-23,342.2175675530305,342.27692123439897,339.4476284555958,342.0691833496094,49143900,0.0,0 -2020-10-26,338.45838837625956,339.29927251912926,332.0182417006067,335.747802734375,91473000,0.0,0 -2020-10-27,336.1138136956006,336.46993579917506,334.36278944947304,334.59033203125,65994100,0.0,0 -2020-10-28,328.53597940123024,334.61997286994244,322.63004696514685,323.15435791015625,127094300,0.0,0 -2020-10-29,323.40169041765375,329.8220317626079,321.60121493929176,326.4387512207031,90597700,0.0,0 -2020-10-30,324.75699220823026,326.1518641163939,319.13795558092835,323.0356750488281,120287300,0.0,0 -2020-11-02,326.6564025878906,328.79319553457486,323.7281467022949,326.6564025878906,86068300,0.0,0 -2020-11-03,330.1089136034495,334.6199742558167,326.74540770511527,332.4237976074219,93294200,0.0,0 -2020-11-04,337.2019789726345,344.20601545815225,335.9456190973562,339.8532409667969,126959700,0.0,0 -2020-11-05,345.49205493216294,348.4104085227646,345.1161281439419,346.4813232421875,82039700,0.0,0 -2020-11-06,346.1746180874066,347.73767876838974,343.9190877722497,346.40216064453125,74973000,0.0,0 -2020-11-09,360.0639615846726,360.469565184827,350.2603097289417,350.75494384765625,172304200,0.0,0 -2020-11-10,349.6964543696119,351.36832027236045,346.7484540505035,350.2405700683594,85552000,0.0,0 -2020-11-11,352.5752244224408,353.7227793003958,351.24960849189097,352.84234619140625,58649000,0.0,0 -2020-11-12,351.7639945390848,352.8917748465008,347.49037860116624,349.41943359375,67546200,0.0,0 -2020-11-13,351.4573422963045,355.04839109887246,350.9033544568526,354.2569885253906,62892200,0.0,0 -2020-11-16,357.1060527494804,358.886723468582,355.7309554331188,358.6789855957031,74541100,0.0,0 -2020-11-17,356.10689012825446,358.0359752753589,354.4943780640718,356.7499084472656,66111000,0.0,0 -2020-11-18,357.03679864495183,357.62046327479106,352.416902751381,352.45648193359375,70591300,0.0,0 -2020-11-19,351.7838015946351,354.3361004384954,350.34935053222546,353.9403991699219,59940900,0.0,0 -2020-11-20,353.66341861817114,353.881058852616,351.43756493456027,351.5166931152344,70417300,0.0,0 -2020-11-23,353.4457487802955,354.9692302938078,351.0616087449511,353.6238098144531,63230600,0.0,0 -2020-11-24,356.3443143370891,359.9056861396439,355.43420443703553,359.322021484375,62415900,0.0,0 -2020-11-25,359.2330237422052,359.2627005853481,357.6007369891963,358.76806640625,45330900,0.0,0 -2020-11-27,359.93540114858024,360.2717487725343,358.6889133379873,359.7672424316406,28514100,0.0,0 -2020-11-30,358.9362252794399,359.2231215566645,355.31552965410594,358.17449951171875,83872700,0.0,0 -2020-12-01,361.64679687000694,363.7341383601376,361.0136507067003,362.0919494628906,74231400,0.0,0 -2020-12-02,360.9048391301993,363.0218574213661,360.29149766444135,362.85369873046875,45927000,0.0,0 -2020-12-03,362.7448889160538,364.2386936930658,361.5775595808084,362.7547912597656,62882000,0.0,0 -2020-12-04,363.3780422799781,365.88088989257807,363.2791094111255,365.8808898925781,50749900,0.0,0 -2020-12-07,365.05974178283554,365.65330874326764,363.77370519362404,365.1289978027344,48944300,0.0,0 -2020-12-08,363.77372939333094,366.800887883837,363.7242780558676,366.19744873046875,42458900,0.0,0 -2020-12-09,366.8998360233274,367.0679947297608,362.02275049559216,362.9130859375,74098300,0.0,0 -2020-12-10,361.44895197905737,363.91222037186634,360.5190373668981,362.79437255859375,57735400,0.0,0 -2020-12-11,360.98398797077584,362.8042379762932,359.36160369654,362.36895751953125,57698600,0.0,0 -2020-12-14,364.68388073509976,365.8314053962508,360.5586186389762,360.74658203125,69216200,0.0,0 -2020-12-15,363.4571572944864,365.6236572265625,361.9930595727679,365.6236572265625,63865300,0.0,0 -2020-12-16,365.8511987980102,367.1768146567878,364.91138186563313,366.19744873046875,58420500,0.0,0 -2020-12-17,367.9484403372163,368.4628489658047,367.06797709147696,368.2452087402344,64119500,0.0,0 -2020-12-18,368.5532188862956,368.7320389521145,364.6289400800548,366.7748718261719,136542300,1.58,0 -2020-12-21,362.59228356697605,375.9943888030728,359.67143474280834,365.46343994140625,96386700,0.0,0 -2020-12-22,365.8111549431686,365.93036830897773,363.6453646142756,364.84747314453125,47949000,0.0,0 -2020-12-23,365.88071999074316,367.2119864904647,364.82762812799683,365.17535400390625,46201400,0.0,0 -2020-12-24,365.68201909405826,366.62584216161036,365.05614888578714,366.5960388183594,26457900,0.0,0 -2020-12-28,369.31817017712484,370.16263864174135,368.65255208671476,369.7453918457031,39000400,0.0,0 -2020-12-29,371.37470485804255,371.563469473918,368.4141080100467,369.0400085449219,53680500,0.0,0 -2020-12-30,369.91428473010353,370.6693432024787,369.14931202224545,369.5665588378906,49455300,0.0,0 -2020-12-31,369.35791944056797,372.2191616133234,368.8115147184322,371.4442443847656,78520700,0.0,0 -2021-01-04,372.86490227937304,373.0040047507885,362.4432529518963,366.38739013671875,110210800,0.0,0 -2021-01-05,365.70189000424693,370.07321860319024,365.6521975554599,368.91082763671875,66426200,0.0,0 -2021-01-06,367.3014144133991,374.52407141039185,366.7152617683135,371.11639404296875,107997700,0.0,0 -2021-01-07,373.64979339463497,377.42502506361325,373.4610287793098,376.6302490234375,68766800,0.0,0 -2021-01-08,378.1105356454251,379.00466627826285,374.6432819350956,378.77618408203125,71677200,0.0,0 -2021-01-11,375.3884069383176,378.10060226075467,375.2592490051037,376.2229309082031,51034700,0.0,0 -2021-01-12,376.42161185261426,377.38526336467356,373.90806525823467,376.3023681640625,52547700,0.0,0 -2021-01-13,376.2228951308927,378.37874093506036,375.38837124036706,377.31573486328125,45303600,0.0,0 -2021-01-14,378.1105130051827,378.6470034802669,375.6367446614096,375.994384765625,49989100,0.0,0 -2021-01-15,374.2657243022502,375.1201069722675,371.2654100849953,373.25238037109375,107160000,0.0,0 -2021-01-19,375.8751885161074,376.7594049008451,374.2955506796921,376.18316650390625,51233300,0.0,0 -2021-01-20,378.62712019558325,382.283168678987,378.20987340091546,381.3890380859375,61836100,0.0,0 -2021-01-21,381.98512667878754,382.44215171445364,380.7532146946304,381.73675537109375,47840100,0.0,0 -2021-01-22,379.7597195870754,381.62747662335846,379.35238701479983,380.3856201171875,52860500,0.0,0 -2021-01-25,381.1704926422267,382.2633021433925,375.994412749373,381.88580322265625,70402000,0.0,0 -2021-01-26,382.89914458423044,383.3362805091639,381.041332062645,381.2897033691406,42665300,0.0,0 -2021-01-27,377.74294122245163,377.84229580548487,369.586436278746,371.9707946777344,123351100,0.0,0 -2021-01-28,373.9080846826603,379.4418046617425,373.44117573297933,375.1698303222656,94198100,0.0,0 -2021-01-29,373.1828636149903,374.2160967484805,365.87079652079063,367.6590881347656,126765100,0.0,0 -2021-02-01,371.285303537766,374.88171524037773,367.9670664884292,373.7789611816406,75817600,0.0,0 -2021-02-02,377.1766541829316,380.7234036616752,373.86836177151724,379.06427001953125,64450700,0.0,0 -2021-02-03,379.94848784335767,381.2002889155806,378.0012653122708,379.3623352050781,52427100,0.0,0 -2021-02-04,380.4650737214778,383.72370387923917,379.4815331012843,383.6740417480469,47142600,0.0,0 -2021-02-05,385.6709714370589,385.93920152955207,383.62439432578066,385.18414306640625,48669800,0.0,0 -2021-02-08,386.73396961091925,388.01557399730854,385.8199802131739,387.9659118652344,38365200,0.0,0 -2021-02-09,387.07173551612374,388.3434256166888,386.6346299425054,387.70758056640625,35551100,0.0,0 -2021-02-10,389.56541460102875,389.72437587243417,384.9755177947106,387.5386962890625,59154400,0.0,0 -2021-02-11,388.6911272248447,389.13820767771745,385.5715995646975,388.1645812988281,42913300,0.0,0 -2021-02-12,387.31019913965724,390.3403167771432,387.230703347643,390.08203125,50593300,0.0,0 -2021-02-16,391.39339060273454,391.6020443080903,388.9792290301316,389.74420166015625,50972400,0.0,0 -2021-02-17,387.8765121072332,390.1019092932934,386.79358653922645,389.83367919921875,52290600,0.0,0 -2021-02-18,387.05188692695725,388.96930604433226,385.2139332835811,388.1745300292969,59712800,0.0,0 -2021-02-19,389.5157625538972,389.82374055060643,387.0121603628889,387.4890441894531,83241000,0.0,0 -2021-02-22,384.53834826273555,387.08166774536755,384.2204257477166,384.508544921875,67414200,0.0,0 -2021-02-23,382.15400020610656,386.4160599751289,377.72306494063423,384.9754943847656,107284100,0.0,0 -2021-02-24,383.8131200268697,389.67470690157234,382.76002815120546,389.2176818847656,72433900,0.0,0 -2021-02-25,387.8665806918066,389.32700522432026,378.2993128684785,379.8392028808594,146670500,0.0,0 -2021-02-26,381.8460456383999,383.0680130398475,375.76592101835513,377.88201904296875,152701600,0.0,0 -2021-03-01,383.0779351083503,388.3732279330125,378.0906505732534,387.04193115234375,105348800,0.0,0 -2021-03-02,387.2804198946143,387.52879120228073,383.4852990369681,384.02178955078125,79595300,0.0,0 -2021-03-03,383.2766757549318,384.3098785656574,378.8258510053181,378.9351501464844,119940200,0.0,0 -2021-03-04,378.7364222341196,381.49830982688667,369.4572742739774,374.2458801269531,183433000,0.0,0 -2021-03-05,377.9813758376478,382.25338044694064,370.21234451036435,381.1307373046875,152039600,0.0,0 -2021-03-08,382.15403382852435,385.1543483210763,378.9351513716961,379.2331848144531,123149200,0.0,0 -2021-03-09,383.33626683253493,387.369814280615,382.7997763403915,384.6476745605469,113633600,0.0,0 -2021-03-10,387.1512302845303,388.8500814007046,385.64114377223774,387.04193115234375,109899400,0.0,0 -2021-03-11,389.6746984498204,393.0724007466626,389.1878701006298,390.9662170410156,86245000,0.0,0 -2021-03-12,389.51574152915816,391.64178404712874,388.65141427415904,391.4927673339844,64653600,0.0,0 -2021-03-15,391.7609875140465,394.10562824370584,389.4759837868989,393.82745361328125,73427200,0.0,0 -2021-03-16,394.48319604157007,395.23822421585874,392.5061397745664,393.33074951171875,73722500,0.0,0 -2021-03-17,391.9597105533942,395.5263187450174,390.73771285570234,394.67193603515625,97959300,0.0,0 -2021-03-18,391.91005153911584,394.13544867902687,388.2043408384944,388.9295959472656,115349100,0.0,0 -2021-03-19,388.6086504993499,390.29314203487473,385.88754176856423,388.2099609375,113624500,1.278,0 -2021-03-22,388.7581343752593,392.7849686949258,388.6983324651012,391.3097839355469,73778600,0.0,0 -2021-03-23,390.63203385575355,392.17696733119755,387.3926317017688,388.2298889160156,90686600,0.0,0 -2021-03-24,389.7249800858464,391.46927347497746,386.2064923519218,386.2563171386719,97588600,0.0,0 -2021-03-25,384.7213591602085,389.2764336157188,382.6481248498714,388.4292297363281,116128600,0.0,0 -2021-03-26,389.6552006238771,395.1173417240859,389.017303431085,394.6887512207031,114409100,0.0,0 -2021-03-29,393.1139055384738,395.4562485701391,391.52909397698045,394.4894104003906,108107600,0.0,0 -2021-03-30,393.13385388493947,394.1604939534358,391.73839479388033,393.4428405761719,76262200,0.0,0 -2021-03-31,394.0508356721947,396.7021653521025,394.0209347156495,395.03759765625,112734200,0.0,0 -2021-04-01,397.10083458386333,399.3634517128567,396.8815507744028,399.3036193847656,99682900,0.0,0 -2021-04-05,402.1443443174063,405.61300729751275,402.0646185742367,405.0348815917969,91684800,0.0,0 -2021-04-06,404.43687333345997,405.91202775718347,404.07803143440304,404.7956848144531,62021000,0.0,0 -2021-04-07,404.61625533506924,405.6329182229658,404.1278629307947,405.2641296386719,55836300,0.0,0 -2021-04-08,406.59976328967423,407.24763760437395,405.6030242153478,407.1878356933594,57863100,0.0,0 -2021-04-09,407.0582959638626,410.32759899766353,406.9287150138724,410.1481628417969,61104600,0.0,0 -2021-04-12,409.5102665661528,410.58673141348424,408.86239223279176,410.2976989746094,56704900,0.0,0 -2021-04-13,410.18802231506163,412.18150042616793,409.77935565211743,411.513671875,56551000,0.0,0 -2021-04-14,411.4837812648366,412.61010129281743,409.5301811838959,410.1083068847656,61659900,0.0,0 -2021-04-15,412.3908263438138,414.8029483546959,412.34100155593717,414.5138854980469,60229800,0.0,0 -2021-04-16,415.8893759028891,416.5472273375884,414.3743434708334,415.89935302734375,82037300,0.0,0 -2021-04-19,414.9026123339885,415.38102761694057,412.44066563025666,413.85601806640625,78498500,0.0,0 -2021-04-20,412.56027451004616,413.7364193191423,409.2510934780912,410.8259582519531,81851800,0.0,0 -2021-04-21,410.16809865657467,414.9325101273956,410.0185634637294,414.7132263183594,66793000,0.0,0 -2021-04-22,414.5338498506027,415.42093185564414,409.78936187548504,410.9256286621094,97582800,0.0,0 -2021-04-23,411.5236670333282,416.88612825409047,411.4439412893375,415.38104248046875,73209200,0.0,0 -2021-04-26,416.07877085061153,416.85622612911084,415.45082035296537,416.2481994628906,52182400,0.0,0 -2021-04-27,416.56717499198413,416.7765121091303,414.94248535219776,416.15850830078125,51303100,0.0,0 -2021-04-28,416.44754606110035,417.6436451055983,415.54050986233415,416.03887939453125,51238900,0.0,0 -2021-04-29,418.9493779593755,419.34806750828966,415.0820254569766,418.6902160644531,78544300,0.0,0 -2021-04-30,416.2681499173161,417.1751861369732,414.98234797757567,415.939208984375,85527000,0.0,0 -2021-05-03,418.0622733361526,418.4709400172454,416.3080332047567,416.8363037109375,68128300,0.0,0 -2021-05-04,414.7132542452733,415.2415247637895,410.32760818728076,414.26470947265625,101591200,0.0,0 -2021-05-05,416.0189767339039,416.2681615126828,413.7962375566928,414.394287109375,60162200,0.0,0 -2021-05-06,414.474005334694,417.84298834955086,412.3310223596888,417.7034606933594,74321400,0.0,0 -2021-05-07,418.5207910529736,421.44122928600495,417.793160566854,420.7434997558594,67733800,0.0,0 -2021-05-10,421.1222763715203,421.36148402550117,416.44756748557234,416.5771484375,81852400,0.0,0 -2021-05-11,411.75291767546656,413.91582443257477,408.7228223725479,412.8592834472656,116888000,0.0,0 -2021-05-12,409.88904170858723,411.2445923191875,402.68260687757703,404.0880126953125,134811000,0.0,0 -2021-05-13,405.7425842274601,411.0053653483582,405.6927290226677,408.9421081542969,106394000,0.0,0 -2021-05-14,411.8625517435864,416.1285938411969,411.8326507875449,415.2215576171875,82201600,0.0,0 -2021-05-17,414.0354580166412,415.0321970893583,412.0120484976854,414.1650085449219,65129200,0.0,0 -2021-05-18,414.44410855774674,414.7032704593686,410.4272511729261,410.5967102050781,59810200,0.0,0 -2021-05-19,405.59307865736986,409.7095854948221,404.008236756808,409.52020263671875,106467100,0.0,0 -2021-05-20,410.45714875296113,415.2714156346834,410.32759822127946,413.9258117675781,78022200,0.0,0 -2021-05-21,415.51061317621054,416.83629317959014,413.09852164970886,413.5869140625,76578700,0.0,0 -2021-05-24,415.97908156367066,418.9493749551978,415.7199196706066,417.8031311035156,51376700,0.0,0 -2021-05-25,418.95934077786626,419.3381065102229,416.25818628067697,416.87615966796875,57451400,0.0,0 -2021-05-26,417.50410070672774,418.2416779047509,416.39773490969304,417.7034606933594,43088600,0.0,0 -2021-05-27,418.79986473294304,419.3480590493842,417.6236895229869,417.9227294921875,56707700,0.0,0 -2021-05-28,419.5972481220444,419.8763338453259,418.42110331807675,418.6702880859375,58520200,0.0,0 -2021-06-01,421.19205099340206,421.34155577557243,417.8330450756988,418.301513671875,54216600,0.0,0 -2021-06-02,418.99919814823204,419.8564095661502,417.92273333617044,418.9593200683594,49097100,0.0,0 -2021-06-03,416.4874360140431,418.6204418552625,414.9225483379971,417.4044189453125,58138800,0.0,0 -2021-06-04,419.37798090694395,421.54091816152317,417.47420555497655,421.2219543457031,55938800,0.0,0 -2021-06-07,421.21198302326667,421.40136589038974,419.8165543324106,420.81329345703125,51555000,0.0,0 -2021-06-08,421.7302646856138,421.8299446789157,418.9493845062886,420.9029846191406,47134300,0.0,0 -2021-06-09,421.8000339803625,421.87979014038723,420.0358167701135,420.2750244140625,48436300,0.0,0 -2021-06-10,421.5807633606339,423.24533105003803,420.1753575723266,422.2286376953125,51020100,0.0,0 -2021-06-11,422.8167343846925,423.045964907962,421.4412295728234,422.9263610839844,45570800,0.0,0 -2021-06-14,423.0459500478235,423.98288719348784,421.72030048788594,423.8732604980469,42358500,0.0,0 -2021-06-15,424.0327623851421,424.07261004823795,422.1588880054828,423.0958251953125,51508500,0.0,0 -2021-06-16,423.2453224692094,423.48453011579466,418.55068989659617,420.7335205078125,80386100,0.0,0 -2021-06-17,420.2949845814783,421.64055801570163,417.9526416412854,420.593994140625,90949700,0.0,0 -2021-06-18,417.0899963378906,417.8299865722656,414.70001220703125,414.9200134277344,118676300,1.376,0 -2021-06-21,416.79998779296875,421.05999755859375,415.92999267578125,420.8599853515625,72822000,0.0,0 -2021-06-22,420.8500061035156,424.0,420.0799865722656,423.1099853515625,57700300,0.0,0 -2021-06-23,423.19000244140625,424.04998779296875,422.510009765625,422.6000061035156,49445400,0.0,0 -2021-06-24,424.8900146484375,425.54998779296875,424.6199951171875,425.1000061035156,45110300,0.0,0 -2021-06-25,425.8999938964844,427.0899963378906,425.54998779296875,426.6099853515625,58129500,0.0,0 -2021-06-28,427.1700134277344,427.6499938964844,425.8900146484375,427.4700012207031,53159600,0.0,0 -2021-06-29,427.8800048828125,428.55999755859375,427.1300048828125,427.70001220703125,35970500,0.0,0 -2021-06-30,427.2099914550781,428.7799987792969,427.17999267578125,428.05999755859375,64827900,0.0,0 -2021-07-01,428.8699951171875,430.6000061035156,428.79998779296875,430.42999267578125,53441000,0.0,0 -2021-07-02,431.6700134277344,434.1000061035156,430.5199890136719,433.7200012207031,57697700,0.0,0 -2021-07-06,433.7799987792969,434.010009765625,430.010009765625,432.92999267578125,68710400,0.0,0 -2021-07-07,433.6600036621094,434.760009765625,431.510009765625,434.4599914550781,63549500,0.0,0 -2021-07-08,428.7799987792969,431.7300109863281,427.5199890136719,430.9200134277344,97595200,0.0,0 -2021-07-09,432.5299987792969,435.8399963378906,430.7099914550781,435.5199890136719,76238600,0.0,0 -2021-07-12,435.42999267578125,437.3500061035156,434.9700012207031,437.0799865722656,52889600,0.0,0 -2021-07-13,436.239990234375,437.8399963378906,435.30999755859375,435.5899963378906,52911300,0.0,0 -2021-07-14,437.3999938964844,437.9200134277344,434.9100036621094,436.239990234375,64130400,0.0,0 -2021-07-15,434.80999755859375,435.5299987792969,432.7200012207031,434.75,55126400,0.0,0 -2021-07-16,436.010009765625,436.05999755859375,430.9200134277344,431.3399963378906,75874700,0.0,0 -2021-07-19,426.19000244140625,431.4100036621094,421.9700012207031,424.9700012207031,147987000,0.0,0 -2021-07-20,425.67999267578125,432.4200134277344,424.8299865722656,431.05999755859375,99608200,0.0,0 -2021-07-21,432.3399963378906,434.70001220703125,431.010009765625,434.54998779296875,64724400,0.0,0 -2021-07-22,434.739990234375,435.7200012207031,433.69000244140625,435.4599914550781,47878500,0.0,0 -2021-07-23,437.5199890136719,440.29998779296875,436.7900085449219,439.94000244140625,63766600,0.0,0 -2021-07-26,439.30999755859375,441.0299987792969,439.260009765625,441.0199890136719,43719200,0.0,0 -2021-07-27,439.9100036621094,439.94000244140625,435.989990234375,439.010009765625,67397100,0.0,0 -2021-07-28,439.67999267578125,440.29998779296875,437.30999755859375,438.8299865722656,52472400,0.0,0 -2021-07-29,439.82000732421875,441.79998779296875,439.80999755859375,440.6499938964844,47435300,0.0,0 -2021-07-30,437.9100036621094,440.05999755859375,437.7699890136719,438.510009765625,68890600,0.0,0 -2021-08-02,440.3399963378906,440.92999267578125,437.2099914550781,437.5899963378906,58783300,0.0,0 -2021-08-03,438.44000244140625,441.2799987792969,436.1000061035156,441.1499938964844,58053900,0.0,0 -2021-08-04,439.7799987792969,441.1199951171875,438.7300109863281,438.9800109863281,46732200,0.0,0 -2021-08-05,440.2200012207031,441.8500061035156,439.8800048828125,441.760009765625,38969700,0.0,0 -2021-08-06,442.1000061035156,442.94000244140625,441.79998779296875,442.489990234375,46864100,0.0,0 -2021-08-09,442.4599914550781,442.79998779296875,441.30999755859375,442.1300048828125,41222600,0.0,0 -2021-08-10,442.6099853515625,443.44000244140625,441.8800048828125,442.67999267578125,43339300,0.0,0 -2021-08-11,443.82000732421875,443.8800048828125,442.6199951171875,443.7799987792969,44034300,0.0,0 -2021-08-12,443.6199951171875,445.260009765625,442.6600036621094,445.1099853515625,38909400,0.0,0 -2021-08-13,445.5899963378906,445.94000244140625,445.07000732421875,445.9200134277344,39388300,0.0,0 -2021-08-16,444.5299987792969,447.1099853515625,442.8699951171875,446.9700012207031,73740000,0.0,0 -2021-08-17,444.239990234375,444.9599914550781,440.8500061035156,444.0400085449219,92673900,0.0,0 -2021-08-18,442.9599914550781,444.6300048828125,438.9200134277344,439.17999267578125,88807700,0.0,0 -2021-08-19,436.2699890136719,441.1400146484375,436.1199951171875,438.989990234375,61450143,0.0,0 diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/data/sample.csv b/temp_pandas_ta/pandas_ta-0.4.71b0/data/sample.csv deleted file mode 100644 index a8c39a01..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/data/sample.csv +++ /dev/null @@ -1,101 +0,0 @@ -,date,open,high,low,close,volume -0,2018-07-05,272.17,273.18,270.96,273.11,56925919.0 -1,2018-07-06,273.14,275.84,272.715,275.42,66493696.0 -2,2018-07-09,276.55,277.96,276.5,277.9,50550399.0 -3,2018-07-10,278.41,279.01,278.08,278.9,51966829.0 -4,2018-07-11,277.15,278.04,276.52,276.86,77054739.0 -5,2018-07-12,278.28,279.43,277.6,279.37,60124687.0 -6,2018-07-13,279.17,279.93,278.66,279.59,48234964.0 -7,2018-07-16,279.64,279.803,278.84,279.34,48201038.0 -8,2018-07-17,278.47,280.91,278.41,280.47,52315500.0 -9,2018-07-18,280.56,281.18,280.06,281.06,44593465.0 -10,2018-07-19,280.31,280.74,279.46,280.0,61412117.0 -11,2018-07-20,279.77,280.48,279.5,279.68,82372729.0 -12,2018-07-23,279.45,280.43,279.06,280.2,47047565.0 -13,2018-07-24,281.79,282.56,280.63,281.61,68026935.0 -14,2018-07-25,281.33,284.37,281.28,284.01,78882927.0 -15,2018-07-26,283.2,284.11,283.09,283.34,57919495.0 -16,2018-07-27,283.71,283.82,280.38,281.42,76783177.0 -17,2018-07-30,281.51,281.69,279.36,279.95,63742508.0 -18,2018-07-31,280.81,282.02,280.38,281.33,68570493.0 -19,2018-08-01,281.56,282.13,280.1315,280.86,53853326.0 -20,2018-08-02,279.39,282.58,279.16,282.39,63426363.0 -21,2018-08-03,282.53,283.6577,282.33,283.6,53935386.0 -22,2018-08-06,283.64,284.99,283.2015,284.64,39400887.0 -23,2018-08-07,285.39,286.01,285.24,285.58,43196646.0 -24,2018-08-08,285.39,285.91,284.94,285.46,42114551.0 -25,2018-08-09,285.53,285.97,284.915,285.07,35716976.0 -26,2018-08-10,283.45,284.055,282.36,283.16,77076044.0 -27,2018-08-13,283.47,284.16,281.77,282.1,65732909.0 -28,2018-08-14,282.92,284.17,282.4833,283.9,43842031.0 -29,2018-08-15,282.38,282.54,280.16,281.78,102925355.0 -30,2018-08-16,283.4,285.04,283.36,284.06,69967919.0 -31,2018-08-17,283.83,285.5601,283.37,285.06,65618481.0 -32,2018-08-20,285.57,285.97,285.06,285.67,39807490.0 -33,2018-08-21,286.25,287.31,285.7135,286.34,67271983.0 -34,2018-08-22,285.88,286.76,285.575,286.17,44993333.0 -35,2018-08-23,285.97,286.94,285.43,285.79,49204851.0 -36,2018-08-24,286.44,287.67,286.38,287.51,57487399.0 -37,2018-08-27,288.86,289.9,288.68,289.78,57072377.0 -38,2018-08-28,290.3,290.4175,289.4,289.92,46943472.0 -39,2018-08-29,290.16,291.74,289.8854,291.48,61485514.0 -40,2018-08-30,290.94,291.36,289.63,290.3,61229501.0 -41,2018-08-31,289.84,290.81,289.29,290.31,66140838.0 -42,2018-09-04,289.84,290.21,288.68,289.81,57594367.0 -43,2018-09-05,289.41,289.64,287.89,289.03,72452437.0 -44,2018-09-06,289.15,289.49,287.0,288.16,65909863.0 -45,2018-09-07,286.98,288.7,286.71,287.6,73524824.0 -46,2018-09-10,288.74,289.04,287.88,288.1,50191113.0 -47,2018-09-11,287.37,289.55,286.975,289.05,50530492.0 -48,2018-09-12,289.06,289.8,288.23,289.12,59810758.0 -49,2018-09-13,290.32,291.0384,289.995,290.83,51034222.0 -50,2018-09-14,291.06,291.27,290.0,290.88,55079875.0 -51,2018-09-17,290.82,290.86,289.03,289.34,68244043.0 -52,2018-09-18,289.58,291.58,289.55,290.91,61930407.0 -53,2018-09-19,290.97,291.69,290.825,291.22,49080562.0 -54,2018-09-20,292.64,293.94,291.2363,293.58,100360646.0 -55,2018-09-21,293.09,293.22,291.81,291.99,105479656.0 -56,2018-09-24,291.34,291.5,290.37,291.02,53409645.0 -57,2018-09-25,291.53,291.65,290.4833,290.75,44370037.0 -58,2018-09-26,290.91,292.24,289.41,289.88,79739674.0 -59,2018-09-27,290.41,291.91,290.1,290.69,59249455.0 -60,2018-09-28,289.99,291.28,289.95,290.72,70091385.0 -61,2018-10-01,292.11,292.93,290.98,291.73,62078937.0 -62,2018-10-02,291.56,292.355,291.14,291.56,47258227.0 -63,2018-10-03,292.74,293.21,291.32,291.72,64694594.0 -64,2018-10-04,291.18,291.24,287.66,289.44,111545910.0 -65,2018-10-05,289.69,290.27,286.22,287.82,105951698.0 -66,2018-10-08,287.05,288.22,285.5,287.82,87742172.0 -67,2018-10-09,287.39,288.86,286.77,287.4,74338982.0 -68,2018-10-10,286.83,286.91,277.88,278.3,214731000.0 -69,2018-10-11,277.08,278.9,270.36,272.17,274840491.0 -70,2018-10-12,276.77,277.09,272.37,275.95,183186492.0 -71,2018-10-15,275.55,277.04,274.3,274.4,102263717.0 -72,2018-10-16,276.6,280.82,276.07,280.4,118255834.0 -73,2018-10-17,280.44,281.15,277.56,280.45,110625987.0 -74,2018-10-18,279.4,280.07,274.97,276.4,134557525.0 -75,2018-10-19,277.13,279.3,275.47,276.25,139901634.0 -76,2018-10-22,277.0,277.36,274.41,275.01,82415812.0 -77,2018-10-23,270.95,274.87,268.61,273.61,146352719.0 -78,2018-10-24,273.33,273.76,264.7,265.32,177806697.0 -79,2018-10-25,267.38,271.81,266.23,270.08,138061545.0 -80,2018-10-26,265.92,271.0,262.29,265.33,201574596.0 -81,2018-10-29,268.8,270.25,259.85,263.86,160749101.0 -82,2018-10-30,263.67,268.12,263.12,267.77,157115995.0 -83,2018-10-31,270.65,273.23,270.12,270.63,128296325.0 -84,2018-11-01,271.6,273.73,270.38,273.51,99495037.0 -85,2018-11-02,274.75,275.23,269.59,271.89,122634107.0 -86,2018-11-05,272.44,274.01,271.35,273.39,65622482.0 -87,2018-11-06,273.32,275.3,273.25,275.12,60085894.0 -88,2018-11-07,277.56,281.1,277.08,281.01,102752099.0 -89,2018-11-08,280.11,281.22,279.22,280.5,65584886.0 -90,2018-11-09,279.03,279.24,276.18,277.76,98812561.0 -91,2018-11-12,277.19,277.46,271.99,272.57,99673574.0 -92,2018-11-13,273.09,275.325,271.25,272.06,98176610.0 -93,2018-11-14,274.16,274.61,268.45,270.2,125335931.0 -94,2018-11-15,268.78,273.54,267.0102,273.02,135101437.0 -95,2018-11-16,271.79,274.75,271.21,273.73,126668040.0 -96,2018-11-19,273.05,273.38,268.07,269.1,103061706.0 -97,2018-11-20,265.36,267.0,263.15,264.12,136021311.0 -98,2018-11-21,265.86,267.15,265.01,265.02,75563743.0 -99,2018-11-23,263.18,264.8234,263.07,263.25,42807878.0 diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/images/SPY_ADX.png b/temp_pandas_ta/pandas_ta-0.4.71b0/images/SPY_ADX.png deleted file mode 100644 index 27ee79dbc59f5012697b86f57ecff57ae0b7e01c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 75060 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ʱ|VLd{eF<1??W_j6622oA^ftzWC^-B+r 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

FrmLLF!HLgMQZ7x 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 L9V$HN`s05AGsk}p diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/images/SPY_CLR.png b/temp_pandas_ta/pandas_ta-0.4.71b0/images/SPY_CLR.png deleted file mode 100644 index ae92bf6ed4fde3965880f3e4418c87acec19239e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63571 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 Yx}5G6Dw5 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 a+w`Xrp1GYkyY`X_e)P3XPW*A)A?iP3rn4vj diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/images/SPY_STDEV.png b/temp_pandas_ta/pandas_ta-0.4.71b0/images/SPY_STDEV.png deleted file mode 100644 index 62bbdcd29d300e420e7abba44371bcf61631e202..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 46628 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 CN*;Cq diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/images/SPY_VOL.png b/temp_pandas_ta/pandas_ta-0.4.71b0/images/SPY_VOL.png deleted file mode 100644 index 7c32682e6b6fd215c85221746a023d6794c763cc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 83006 zcmd?RWmHyM+cpe{q)2ynqsT=!2na|k(jg$1bR&&)mxv%G(kV!TgmgU{qg>L$6&h`Yb?0tn)96Jd7Q^_OhQ$a<*+cwFc1(Bu;d>-R7XHSB||_! z#6d#=cY;&x(-9D85ab_9K6z!Zor?PE$@j6KXYLsRs?Qm49>Fu{uQ1TU_zx{I^YXNC zYKYY&OKAN3(CG45CSvY}OTx!Y3^cn%p_fNij zA0kN6MtEaap%fAXf_8Q;MWo>|n^1r-8#Sm4&5tTlM%Gr9ykKJpI#AHJgmyp8k^mpeuY zK`PVAvBjj2jYmwrwRsprq> zC`Dck3S^u0CJ<0iY^%>0ar}Fbus~xOepr@PfE|WT#_7hN)72w~nvbQLasX;9+ZEwtnPFm0#t^aZW(HRGEg$~ z+zT8UiHX6{sj^B6Tn8VM{mj6v{q$AR1GA7_XHyBdQvlfx;=cv%pfFfZ_vq4rOGOox zTrscnM7MS%I?T|V<-$*mAD5!#9KcZ#(^iBS;F)R7Rq8 z{GO+FLSE+;LzP3BavCQ)v;BIM4@}YYYaQB8Nid^hV`E=9YE_81?K7O6o~q8)Id_kb zkF#-^V@8gDGR$RrS`ZT)92_WGZ8Q7P*B1ff&K(ZEirU&*r=1zWGR;5?!m!k6^nVXU znqaVn1uO19!$%(bWT=wveV#v*fJ*hs_eEc#@nx;um`Sa}>c)Dy51)ZysS)DU;fTtM zEAlfs%vbjs4)Kn*zW4Th`xwx1eRZMX;!>43UurB}ZV+`jfv+MWNlHq(DPi}X1}DQH{=G#`N-=5$3;mx`K{lr&oJ zYRksLg45_IyVMa$9!XJUH7UhoJ^;J!%hr^OqF{X}G~f;E52`@<O3@kv5(kCDq(mAO<72dK9wT0qug8yFFlk!=S9Bog&;j^9N==n&7V$Sjz-sRt0larN2@(GJlC>|`m z+`D^*Io)rVlaGp0U@!41Eyo8KO|Ua1|1EDLBw}ilMins6}Z$@z_CX@sZk1jxp zi`xQ+!mYcL$|FK6i+yIiOe0qr=6(69T;I_9%nW3jls#^u>zbQPo&eb$tZpe5?41z- zmu;;~O0dxhrSgnR=k>%Af~%|f%QoJ>f6w+%rgdRB50jV+1ke@b%|ZGNiO-sMY>rg% z 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 TA \ No newline at end of file diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/images/pta-logo.webp b/temp_pandas_ta/pandas_ta-0.4.71b0/images/pta-logo.webp deleted file mode 100644 index 6b9b496d62aeefaac51b77a67117a580117bdb56..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10670 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 UMdaH7HJO}wcEA7p{a^q90A0_;^8f$< diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/pyproject.toml b/temp_pandas_ta/pandas_ta-0.4.71b0/pyproject.toml deleted file mode 100644 index c6f7b979..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/pyproject.toml +++ /dev/null @@ -1,72 +0,0 @@ -[project] -name = "pandas-ta" -version = "0.4.71b" -description = "A Comprehensive Python 3 Technical Analysis Library with Pandas Dataframe Extension for Quantitative Researchers, Traders, and Investors." -authors = [{ name = "Pandas TA Support", email = "support@pandas-ta.dev" }] -requires-python = ">=3.12" -dependencies = [ - "numba==0.61.2", - "numpy>=2.2.6", - "pandas>=2.3.2", - "tqdm>=4.67.1", -] -readme = { file = "README.md", content-type = "text/markdown" } -license-files = ["LICENSE"] -keywords = [ - "library", - "technical analysis", - "ta", - "indicators", - "pandas", - "dataframe extension", - "finance", - "trading", - "machine learning", - "ai", -] -classifiers = [ - "Development Status :: 4 - Beta", - "Programming Language :: Python :: 3.12", - "Operating System :: OS Independent", - "Natural Language :: English", - "Intended Audience :: Developers", - "Intended Audience :: Financial and Insurance Industry", - "Intended Audience :: Science/Research", - "Topic :: Office/Business :: Financial", - "Topic :: Office/Business :: Financial :: Investment", - "Topic :: Scientific/Engineering", - "Topic :: Scientific/Engineering :: Information Analysis", -] - -[project.urls] -Homepage = "https://www.pandas-ta.dev" -Documentation = "https://www.pandas-ta.dev/api" -Repository = "https://github.com/twopirllc/pandas-ta" - -[build-system] -requires = ["hatchling"] -build-backend = "hatchling.build" - -[dependency-groups] -dev = [ - "bokeh>=3.7.3", - "cryptography>=45.0.6", - "ipython>=9.4.0", - "jupyterlab>=4.4.6", - "matplotlib>=3.10.5", - "pytest>=8.4.1", - "requests>=2.32.5", - "ta-lib==0.6.4", - "yfinance>=0.2.65", -] -docs = [ - "mkdocs>=1.6.1", - "mkdocs-include-markdown-plugin>=7.1.6", - "mkdocs-macros-plugin>=1.3.9", - "mkdocs-material>=9.6.18", - "mkdocs-minify-plugin>=0.8.0", - "mkdocs-plotly-plugin>=0.1.3", - "mkdocs-redirects>=1.2.2", - "mkdocstrings-python>=1.17.0", - "ruff>=0.12.10", -] diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/requirements.dev.txt b/temp_pandas_ta/pandas_ta-0.4.71b0/requirements.dev.txt deleted file mode 100644 index daf9f4e7..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/requirements.dev.txt +++ /dev/null @@ -1,383 +0,0 @@ -# This file was autogenerated by uv via the following command: -# uv export --dev --no-hashes -vn -o requirements.dev.txt --e . -anyio==4.10.0 - # via - # httpx - # jupyter-server -appnope==0.1.4 ; sys_platform == 'darwin' - # via ipykernel -argon2-cffi==25.1.0 - # via jupyter-server -argon2-cffi-bindings==21.2.0 ; python_full_version >= '3.14' - # via argon2-cffi -argon2-cffi-bindings==25.1.0 ; python_full_version < '3.14' - # via argon2-cffi -arrow==1.3.0 - # via isoduration -asttokens==3.0.0 - # via stack-data -async-lru==2.0.5 - # via jupyterlab -attrs==25.3.0 - # via - # jsonschema - # referencing -babel==2.17.0 - # via jupyterlab-server -beautifulsoup4==4.13.5 - # via - # nbconvert - # yfinance -bleach==6.2.0 - # via nbconvert -bokeh==3.7.3 -certifi==2025.8.3 - # via - # curl-cffi - # httpcore - # httpx - # requests -cffi==1.17.1 - # via - # argon2-cffi-bindings - # cryptography - # curl-cffi - # pyzmq -charset-normalizer==3.4.3 - # via requests -colorama==0.4.6 ; sys_platform == 'win32' - # via - # ipython - # pytest - # tqdm -comm==0.2.3 - # via ipykernel -contourpy==1.3.3 - # via - # bokeh - # matplotlib -cryptography==45.0.6 -curl-cffi==0.13.0 - # via yfinance -cycler==0.12.1 - # via matplotlib -debugpy==1.8.16 - # via ipykernel -decorator==5.2.1 - # via ipython -defusedxml==0.7.1 - # via nbconvert -executing==2.2.0 - # via stack-data -fastjsonschema==2.21.2 - # via nbformat -fonttools==4.59.1 - # via matplotlib -fqdn==1.5.1 - # via jsonschema -frozendict==2.4.6 - # via yfinance -h11==0.16.0 - # via httpcore -httpcore==1.0.9 - # via httpx -httpx==0.28.1 - # via jupyterlab -idna==3.10 - # via - # anyio - # httpx - # jsonschema - # requests -iniconfig==2.1.0 - # via pytest -ipykernel==6.30.1 - # via jupyterlab -ipython==9.4.0 - # via ipykernel -ipython-pygments-lexers==1.1.1 - # via ipython -isoduration==20.11.0 - # via jsonschema -jedi==0.19.2 - # via ipython -jinja2==3.1.6 - # via - # bokeh - # jupyter-server - # jupyterlab - # jupyterlab-server - # nbconvert -json5==0.12.1 - # via jupyterlab-server -jsonpointer==3.0.0 - # via jsonschema -jsonschema==4.25.1 - # via - # jupyter-events - # jupyterlab-server - # nbformat -jsonschema-specifications==2025.4.1 - # via jsonschema -jupyter-client==8.6.3 - # via - # ipykernel - # jupyter-server - # nbclient -jupyter-core==5.8.1 - # via - # ipykernel - # jupyter-client - # jupyter-server - # jupyterlab - # nbclient - # nbconvert - # nbformat -jupyter-events==0.12.0 - # via jupyter-server -jupyter-lsp==2.2.6 - # via jupyterlab -jupyter-server==2.17.0 - # via - # jupyter-lsp - # jupyterlab - # jupyterlab-server - # notebook-shim -jupyter-server-terminals==0.5.3 - # via jupyter-server -jupyterlab==4.4.6 -jupyterlab-pygments==0.3.0 - # via nbconvert -jupyterlab-server==2.27.3 - # via jupyterlab -kiwisolver==1.4.9 - # via matplotlib -lark==1.2.2 - # via rfc3987-syntax -llvmlite==0.44.0 - # via numba -markupsafe==3.0.2 - # via - # jinja2 - # nbconvert -matplotlib==3.10.5 -matplotlib-inline==0.1.7 - # via - # ipykernel - # ipython -mistune==3.1.3 - # via nbconvert -multitasking==0.0.12 - # via yfinance -narwhals==2.2.0 - # via bokeh -nbclient==0.10.2 - # via nbconvert -nbconvert==7.16.6 - # via jupyter-server -nbformat==5.10.4 - # via - # jupyter-server - # nbclient - # nbconvert -nest-asyncio==1.6.0 - # via ipykernel -notebook-shim==0.2.4 - # via jupyterlab -numba==0.61.2 - # via pandas-ta -numpy==2.2.6 - # via - # bokeh - # contourpy - # matplotlib - # numba - # pandas - # pandas-ta - # ta-lib - # yfinance -packaging==25.0 - # via - # bokeh - # ipykernel - # jupyter-events - # jupyter-server - # jupyterlab - # jupyterlab-server - # matplotlib - # nbconvert - # pytest -pandas==2.3.2 - # via - # bokeh - # pandas-ta - # yfinance -pandocfilters==1.5.1 - # via nbconvert -parso==0.8.5 - # via jedi -peewee==3.18.2 - # via yfinance -pexpect==4.9.0 ; sys_platform != 'emscripten' and sys_platform != 'win32' - # via ipython -pillow==11.3.0 - # via - # bokeh - # matplotlib -platformdirs==4.3.8 - # via - # jupyter-core - # yfinance -pluggy==1.6.0 - # via pytest -prometheus-client==0.22.1 - # via jupyter-server -prompt-toolkit==3.0.51 - # via ipython -protobuf==6.32.0 - # via yfinance -psutil==7.0.0 - # via ipykernel -ptyprocess==0.7.0 ; os_name != 'nt' or (sys_platform != 'emscripten' and sys_platform != 'win32') - # via - # pexpect - # terminado -pure-eval==0.2.3 - # via stack-data -pycparser==2.22 - # via cffi -pygments==2.19.2 - # via - # ipython - # ipython-pygments-lexers - # nbconvert - # pytest -pyparsing==3.2.3 - # via matplotlib -pytest==8.4.1 -python-dateutil==2.9.0.post0 - # via - # arrow - # jupyter-client - # matplotlib - # pandas -python-json-logger==3.3.0 - # via jupyter-events -pytz==2025.2 - # via - # pandas - # yfinance -pywin32==311 ; platform_python_implementation != 'PyPy' and sys_platform == 'win32' - # via jupyter-core -pywinpty==3.0.0 ; os_name == 'nt' - # via - # jupyter-server - # jupyter-server-terminals - # terminado -pyyaml==6.0.2 - # via - # bokeh - # jupyter-events -pyzmq==27.0.2 - # via - # ipykernel - # jupyter-client - # jupyter-server -referencing==0.36.2 - # via - # jsonschema - # jsonschema-specifications - # jupyter-events -requests==2.32.5 - # via - # jupyterlab-server - # yfinance -rfc3339-validator==0.1.4 - # via - # jsonschema - # jupyter-events -rfc3986-validator==0.1.1 - # via - # jsonschema - # jupyter-events -rfc3987-syntax==1.1.0 - # via jsonschema -rpds-py==0.27.0 - # via - # jsonschema - # referencing -send2trash==1.8.3 - # via jupyter-server -setuptools==80.9.0 - # via - # jupyterlab - # ta-lib -six==1.17.0 - # via - # python-dateutil - # rfc3339-validator -sniffio==1.3.1 - # via anyio -soupsieve==2.7 - # via beautifulsoup4 -stack-data==0.6.3 - # via ipython -ta-lib==0.6.4 -terminado==0.18.1 - # via - # jupyter-server - # jupyter-server-terminals -tinycss2==1.4.0 - # via bleach -tornado==6.5.2 - # via - # bokeh - # ipykernel - # jupyter-client - # jupyter-server - # jupyterlab - # terminado -tqdm==4.67.1 - # via pandas-ta -traitlets==5.14.3 - # via - # ipykernel - # ipython - # jupyter-client - # jupyter-core - # jupyter-events - # jupyter-server - # jupyterlab - # matplotlib-inline - # nbclient - # nbconvert - # nbformat -types-python-dateutil==2.9.0.20250822 - # via arrow -typing-extensions==4.15.0 - # via - # anyio - # beautifulsoup4 - # referencing -tzdata==2025.2 - # via pandas -uri-template==1.3.0 - # via jsonschema -urllib3==2.5.0 - # via requests -wcwidth==0.2.13 - # via prompt-toolkit -webcolors==24.11.1 - # via jsonschema -webencodings==0.5.1 - # via - # bleach - # tinycss2 -websocket-client==1.8.0 - # via jupyter-server -websockets==15.0.1 - # via yfinance -xyzservices==2025.4.0 - # via bokeh -yfinance==0.2.65 diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/requirements.txt b/temp_pandas_ta/pandas_ta-0.4.71b0/requirements.txt deleted file mode 100644 index 49b828ca..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/requirements.txt +++ /dev/null @@ -1,383 +0,0 @@ -# This file was autogenerated by uv via the following command: -# uv export --no-hashes -vn -o requirements.txt --e . -anyio==4.10.0 - # via - # httpx - # jupyter-server -appnope==0.1.4 ; sys_platform == 'darwin' - # via ipykernel -argon2-cffi==25.1.0 - # via jupyter-server -argon2-cffi-bindings==21.2.0 ; python_full_version >= '3.14' - # via argon2-cffi -argon2-cffi-bindings==25.1.0 ; python_full_version < '3.14' - # via argon2-cffi -arrow==1.3.0 - # via isoduration -asttokens==3.0.0 - # via stack-data -async-lru==2.0.5 - # via jupyterlab -attrs==25.3.0 - # via - # jsonschema - # referencing -babel==2.17.0 - # via jupyterlab-server -beautifulsoup4==4.13.5 - # via - # nbconvert - # yfinance -bleach==6.2.0 - # via nbconvert -bokeh==3.7.3 -certifi==2025.8.3 - # via - # curl-cffi - # httpcore - # httpx - # requests -cffi==1.17.1 - # via - # argon2-cffi-bindings - # cryptography - # curl-cffi - # pyzmq -charset-normalizer==3.4.3 - # via requests -colorama==0.4.6 ; sys_platform == 'win32' - # via - # ipython - # pytest - # tqdm -comm==0.2.3 - # via ipykernel -contourpy==1.3.3 - # via - # bokeh - # matplotlib -cryptography==45.0.6 -curl-cffi==0.13.0 - # via yfinance -cycler==0.12.1 - # via matplotlib -debugpy==1.8.16 - # via ipykernel -decorator==5.2.1 - # via ipython -defusedxml==0.7.1 - # via nbconvert -executing==2.2.0 - # via stack-data -fastjsonschema==2.21.2 - # via nbformat -fonttools==4.59.1 - # via matplotlib -fqdn==1.5.1 - # via jsonschema -frozendict==2.4.6 - # via yfinance -h11==0.16.0 - # via httpcore -httpcore==1.0.9 - # via httpx -httpx==0.28.1 - # via jupyterlab -idna==3.10 - # via - # anyio - # httpx - # jsonschema - # requests -iniconfig==2.1.0 - # via pytest -ipykernel==6.30.1 - # via jupyterlab -ipython==9.4.0 - # via ipykernel -ipython-pygments-lexers==1.1.1 - # via ipython -isoduration==20.11.0 - # via jsonschema -jedi==0.19.2 - # via ipython -jinja2==3.1.6 - # via - # bokeh - # jupyter-server - # jupyterlab - # jupyterlab-server - # nbconvert -json5==0.12.1 - # via jupyterlab-server -jsonpointer==3.0.0 - # via jsonschema -jsonschema==4.25.1 - # via - # jupyter-events - # jupyterlab-server - # nbformat -jsonschema-specifications==2025.4.1 - # via jsonschema -jupyter-client==8.6.3 - # via - # ipykernel - # jupyter-server - # nbclient -jupyter-core==5.8.1 - # via - # ipykernel - # jupyter-client - # jupyter-server - # jupyterlab - # nbclient - # nbconvert - # nbformat -jupyter-events==0.12.0 - # via jupyter-server -jupyter-lsp==2.2.6 - # via jupyterlab -jupyter-server==2.17.0 - # via - # jupyter-lsp - # jupyterlab - # jupyterlab-server - # notebook-shim -jupyter-server-terminals==0.5.3 - # via jupyter-server -jupyterlab==4.4.6 -jupyterlab-pygments==0.3.0 - # via nbconvert -jupyterlab-server==2.27.3 - # via jupyterlab -kiwisolver==1.4.9 - # via matplotlib -lark==1.2.2 - # via rfc3987-syntax -llvmlite==0.44.0 - # via numba -markupsafe==3.0.2 - # via - # jinja2 - # nbconvert -matplotlib==3.10.5 -matplotlib-inline==0.1.7 - # via - # ipykernel - # ipython -mistune==3.1.3 - # via nbconvert -multitasking==0.0.12 - # via yfinance -narwhals==2.2.0 - # via bokeh -nbclient==0.10.2 - # via nbconvert -nbconvert==7.16.6 - # via jupyter-server -nbformat==5.10.4 - # via - # jupyter-server - # nbclient - # nbconvert -nest-asyncio==1.6.0 - # via ipykernel -notebook-shim==0.2.4 - # via jupyterlab -numba==0.61.2 - # via pandas-ta -numpy==2.2.6 - # via - # bokeh - # contourpy - # matplotlib - # numba - # pandas - # pandas-ta - # ta-lib - # yfinance -packaging==25.0 - # via - # bokeh - # ipykernel - # jupyter-events - # jupyter-server - # jupyterlab - # jupyterlab-server - # matplotlib - # nbconvert - # pytest -pandas==2.3.2 - # via - # bokeh - # pandas-ta - # yfinance -pandocfilters==1.5.1 - # via nbconvert -parso==0.8.5 - # via jedi -peewee==3.18.2 - # via yfinance -pexpect==4.9.0 ; sys_platform != 'emscripten' and sys_platform != 'win32' - # via ipython -pillow==11.3.0 - # via - # bokeh - # matplotlib -platformdirs==4.3.8 - # via - # jupyter-core - # yfinance -pluggy==1.6.0 - # via pytest -prometheus-client==0.22.1 - # via jupyter-server -prompt-toolkit==3.0.51 - # via ipython -protobuf==6.32.0 - # via yfinance -psutil==7.0.0 - # via ipykernel -ptyprocess==0.7.0 ; os_name != 'nt' or (sys_platform != 'emscripten' and sys_platform != 'win32') - # via - # pexpect - # terminado -pure-eval==0.2.3 - # via stack-data -pycparser==2.22 - # via cffi -pygments==2.19.2 - # via - # ipython - # ipython-pygments-lexers - # nbconvert - # pytest -pyparsing==3.2.3 - # via matplotlib -pytest==8.4.1 -python-dateutil==2.9.0.post0 - # via - # arrow - # jupyter-client - # matplotlib - # pandas -python-json-logger==3.3.0 - # via jupyter-events -pytz==2025.2 - # via - # pandas - # yfinance -pywin32==311 ; platform_python_implementation != 'PyPy' and sys_platform == 'win32' - # via jupyter-core -pywinpty==3.0.0 ; os_name == 'nt' - # via - # jupyter-server - # jupyter-server-terminals - # terminado -pyyaml==6.0.2 - # via - # bokeh - # jupyter-events -pyzmq==27.0.2 - # via - # ipykernel - # jupyter-client - # jupyter-server -referencing==0.36.2 - # via - # jsonschema - # jsonschema-specifications - # jupyter-events -requests==2.32.5 - # via - # jupyterlab-server - # yfinance -rfc3339-validator==0.1.4 - # via - # jsonschema - # jupyter-events -rfc3986-validator==0.1.1 - # via - # jsonschema - # jupyter-events -rfc3987-syntax==1.1.0 - # via jsonschema -rpds-py==0.27.0 - # via - # jsonschema - # referencing -send2trash==1.8.3 - # via jupyter-server -setuptools==80.9.0 - # via - # jupyterlab - # ta-lib -six==1.17.0 - # via - # python-dateutil - # rfc3339-validator -sniffio==1.3.1 - # via anyio -soupsieve==2.7 - # via beautifulsoup4 -stack-data==0.6.3 - # via ipython -ta-lib==0.6.4 -terminado==0.18.1 - # via - # jupyter-server - # jupyter-server-terminals -tinycss2==1.4.0 - # via bleach -tornado==6.5.2 - # via - # bokeh - # ipykernel - # jupyter-client - # jupyter-server - # jupyterlab - # terminado -tqdm==4.67.1 - # via pandas-ta -traitlets==5.14.3 - # via - # ipykernel - # ipython - # jupyter-client - # jupyter-core - # jupyter-events - # jupyter-server - # jupyterlab - # matplotlib-inline - # nbclient - # nbconvert - # nbformat -types-python-dateutil==2.9.0.20250822 - # via arrow -typing-extensions==4.15.0 - # via - # anyio - # beautifulsoup4 - # referencing -tzdata==2025.2 - # via pandas -uri-template==1.3.0 - # via jsonschema -urllib3==2.5.0 - # via requests -wcwidth==0.2.13 - # via prompt-toolkit -webcolors==24.11.1 - # via jsonschema -webencodings==0.5.1 - # via - # bleach - # tinycss2 -websocket-client==1.8.0 - # via jupyter-server -websockets==15.0.1 - # via yfinance -xyzservices==2025.4.0 - # via bokeh -yfinance==0.2.65 diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/__init__.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/__init__.py deleted file mode 100644 index 703f7496..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/__init__.py +++ /dev/null @@ -1,65 +0,0 @@ -# -*- coding: utf-8 -*- -from importlib.metadata import version -version = version("pandas-ta") - -from pandas_ta.maps import EXCHANGE_TZ, RATE, Category, Imports -from pandas_ta.utils import * -from pandas_ta.utils import __all__ as utils_all - -# Flat Structure. Supports ta.ema() or ta.overlap.ema() -from pandas_ta.candle import * -from pandas_ta.cycle import * -from pandas_ta.momentum import * -from pandas_ta.overlap import * -from pandas_ta.performance import * -from pandas_ta.statistics import * -from pandas_ta.trend import * -from pandas_ta.volatility import * -from pandas_ta.volume import * -from pandas_ta.candle import __all__ as candle_all -from pandas_ta.cycle import __all__ as cycle_all -from pandas_ta.momentum import __all__ as momentum_all -from pandas_ta.overlap import __all__ as overlap_all -from pandas_ta.performance import __all__ as performance_all -from pandas_ta.statistics import __all__ as statistics_all -from pandas_ta.trend import __all__ as trend_all -from pandas_ta.volatility import __all__ as volatility_all -from pandas_ta.volume import __all__ as volume_all - -# Common Averages useful for Indicators -# with a mamode argument, like ta.adx() -from pandas_ta.ma import ma - -# Custom External Directory Commands. See help(import_dir) -from pandas_ta.custom import create_dir, import_dir - -# Enable "ta" DataFrame Extension -from pandas_ta.core import AnalysisIndicators - -__all__ = [ - # "name", - "EXCHANGE_TZ", - "RATE", - "Category", - "Imports", - "version", - "ma", - "create_dir", - "import_dir", - "AnalysisIndicators", - "AllStudy", - "CommonStudy", -] - -__all__ += [ - utils_all - + candle_all - + cycle_all - + momentum_all - + overlap_all - + performance_all - + statistics_all - + trend_all - + volatility_all - + volume_all -] diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/__main__.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/__main__.py deleted file mode 100644 index c842f73f..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/__main__.py +++ /dev/null @@ -1,7 +0,0 @@ -#-*- coding: utf-8 -*- -from pandas_ta import version - -SUPPORT="http://www.pandas-ta.dev/support" - -if __name__ == "__main__": - print(f"Pandas TA: {version}\nSupport: {SUPPORT}") diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/_typing.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/_typing.py deleted file mode 100644 index ffc1165d..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/_typing.py +++ /dev/null @@ -1,71 +0,0 @@ -# -*- coding: utf-8 -*- -from pathlib import Path -from typing import ( - Any, - Dict, - Iterable, - List, - Optional, - Sequence, - TextIO, - Tuple, - TypeVar, - Union -) - -from numpy import ndarray, recarray, void -from numpy import bool_ as np_bool_ -from numpy import floating as np_floating -from numpy import generic as np_generic -from numpy import integer as np_integer -from numpy import number as np_number -from pandas import DataFrame, Series - - - -# Generic types -T = TypeVar("T") - -# Scalars -Scalar = Union[str, float, int, complex, bool, object, np_generic] -Number = Union[int, float, complex, np_number, np_bool_] -Int = Union[int, np_integer] -Float = Union[float, np_floating] -IntFloat = Union[Int, Float] - -# Basic sequences -MaybeTuple = Union[T, Tuple[T, ...]] -MaybeList = Union[T | List[T]] -TupleList = Union[List[T], Tuple[T, ...]] -MaybeTupleList = Union[T, List[T], Tuple[T, ...]] -MaybeIterable = Union[T, Iterable[T]] -MaybeSequence = Union[T, Sequence[T]] -ListStr = List[str] - -DictLike = Union[None, dict] -DictLikeSequence = MaybeSequence[DictLike] -Args = Tuple[Any, ...] -ArgsLike = Union[None, Args] -Kwargs = Dict[str, Any] -KwargsLike = Union[None, Kwargs] -KwargsLikeSequence = MaybeSequence[KwargsLike] -FileName = Union[str, Path] - -DTypeLike = Any -PandasDTypeLike = Any -Shape = Tuple[int, ...] -RelaxedShape = Union[int, Shape] -Array = ndarray -Array1d = ndarray -Array2d = ndarray -Array3d = ndarray -Record = void -RecordArray = ndarray -RecArray = recarray -MaybeArray = Union[T, Array] -SeriesFrame = Union[Series, DataFrame] -MaybeSeries = Union[T, Series] -MaybeSeriesFrame = Union[T, Series, DataFrame] -AnyArray = Union[Array, Series, DataFrame] -AnyArray1d = Union[Array1d, Series] -AnyArray2d = Union[Array2d, DataFrame] diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/__init__.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/__init__.py deleted file mode 100644 index 9da8e2ae..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/__init__.py +++ /dev/null @@ -1,16 +0,0 @@ -# -*- coding: utf-8 -*- -from .cdl_doji import cdl_doji -from .cdl_inside import cdl_inside -from .cdl_pattern import cdl_pattern, cdl, ALL_PATTERNS as CDL_PATTERN_NAMES -from .cdl_z import cdl_z -from .ha import ha - -__all__ = [ - "cdl_doji", - "cdl_inside", - "cdl_pattern", - "cdl", - "CDL_PATTERN_NAMES", - "cdl_z", - "ha", -] diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/cdl_doji.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/cdl_doji.py deleted file mode 100644 index bd279d88..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/cdl_doji.py +++ /dev/null @@ -1,90 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta.overlap import sma -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import high_low_range, v_percent -from pandas_ta.utils import real_body, v_offset, v_pos_default -from pandas_ta.utils import v_bool, v_scalar, v_series - - - -def cdl_doji( - open_: Series, high: Series, low: Series, close: Series, - length: Int = None, factor: IntFloat = None, - scalar: IntFloat = None, asint: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Doji - - Attempts to identify a "Doji" candle which is shorter than 10% of - the average of the 10 previous bars High-Low range. - - Sources: - * [TA Lib](https://github.com/TA-Lib/ta-lib/blob/main/src/ta_func/ta_CDLDOJI.c) - - Parameters: - open_ (Series): ```open``` Series - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - factor (float): Doji value. Default: ```100``` - scalar (float): Scalar. Default: ```100``` - asint (bool): Returns as ```Int```. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - naive (bool): Prefills potential Doji; bodies that are less - than a percentage, ```factor```, of it's High-Low range. - Default: ```False``` - fillna (value): Replaces ```na```'s with ```value```. - - Returns: - (Series): 1 column - - Warning: - TA-Lib Correlation: ```np.float64(0.9434563530497265)``` - - Tip: - Corrective contributions welcome! - """ - # Validate - length = v_pos_default(length, 10) - open_ = v_series(open_, length) - high = v_series(high, length) - low = v_series(low, length) - close = v_series(close, length) - - if open_ is None or high is None or low is None or close is None: - return - - factor = v_scalar(factor, 10) if v_percent(factor) else 10 - scalar = v_scalar(scalar, 100) - asint = v_bool(asint, True) - offset = v_offset(offset) - naive = kwargs.pop("naive", False) - - # Calculate - body = real_body(open_, close).abs() - hl_range = high_low_range(high, low).abs() - hl_range_avg = sma(hl_range, length) - doji = body < 0.01 * factor * hl_range_avg - - if naive: - doji.iat[:length] = body < 0.01 * factor * hl_range - if asint: - doji = scalar * doji.astype(int) - - # Offset - if offset != 0: - doji = doji.shift(offset) - - # Fill - if "fillna" in kwargs: - doji.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - doji.name = f"CDL_DOJI_{length}_{0.01 * factor}" - doji.category = "candle" - - return doji diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/cdl_inside.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/cdl_inside.py deleted file mode 100644 index 99b1a19d..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/cdl_inside.py +++ /dev/null @@ -1,84 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from numpy import roll, where -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import ( - v_bool, - v_offset, - v_offset, - v_scalar, - v_series -) - - - -@njit(cache=True) -def np_cdl_inside(high, low): - hdiff = where(high - roll(high, 1) < 0, 1, 0) - ldiff = where(low - roll(low, 1) > 0, 1, 0) - return hdiff & ldiff - - -def cdl_inside( - open_: Series, high: Series, low: Series, close: Series, - asbool: bool = None, scalar: IntFloat = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Inside Bar - - Attempts to identify an "Inside" candle which is smaller than it's - previous candle. - - Sources: - * [TA Lib](https://github.com/TA-Lib/ta-lib/blob/main/src/ta_func/ta_CDL3INSIDE.c) - * [tradingview](https://www.tradingview.com/script/IyIGN1WO-Inside-Bar/) - - Parameters: - open_ (Series): ```open``` Series - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - asbool (bool): Return booleans. Default: ```False``` - scalar (float): Scalar. Default: ```100``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): Replaces ```na```'s with ```value```. - - Returns: - (Series): 1 column - """ - # Validate - open_ = v_series(open_) - high = v_series(high) - low = v_series(low) - close = v_series(close) - - if open_ is None or high is None or low is None or close is None: - return - - asbool = v_bool(asbool, False) - scalar = v_scalar(scalar, 100) - offset = v_offset(offset) - - # Calculate - np_high, np_low = high.to_numpy(), low.to_numpy() - np_inside = np_cdl_inside(np_high, np_low) - inside = Series(np_inside, index=close.index, dtype=bool) - - if not asbool: - inside = scalar * inside.astype(int) - - # Offset - if offset != 0: - inside = inside.shift(offset) - - # Fill - if "fillna" in kwargs: - inside.fillna(kwargs["fillna"], inplace=True) - # Name and Category - inside.name = f"CDL_INSIDE" - inside.category = "candle" - - return inside diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/cdl_pattern.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/cdl_pattern.py deleted file mode 100644 index 2f9c40e3..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/cdl_pattern.py +++ /dev/null @@ -1,126 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series, DataFrame -from pandas_ta._typing import DictLike, Int, IntFloat, List -from pandas_ta.maps import Imports -from pandas_ta.utils import v_offset, v_scalar, v_series -from pandas_ta.candle import cdl_doji, cdl_inside - - - -ALL_PATTERNS = [ - "2crows", "3blackcrows", "3inside", "3linestrike", "3outside", - "3starsinsouth", "3whitesoldiers", "abandonedbaby", "advanceblock", - "belthold", "breakaway", "closingmarubozu", "concealbabyswall", - "counterattack", "darkcloudcover", "doji", "dojistar", "dragonflydoji", - "engulfing", "eveningdojistar", "eveningstar", "gapsidesidewhite", - "gravestonedoji", "hammer", "hangingman", "harami", "haramicross", - "highwave", "hikkake", "hikkakemod", "homingpigeon", "identical3crows", - "inneck", "inside", "invertedhammer", "kicking", "kickingbylength", - "ladderbottom", "longleggeddoji", "longline", "marubozu", "matchinglow", - "mathold", "morningdojistar", "morningstar", "onneck", "piercing", - "rickshawman", "risefall3methods", "separatinglines", "shootingstar", - "shortline", "spinningtop", "stalledpattern", "sticksandwich", "takuri", - "tasukigap", "thrusting", "tristar", "unique3river", "upsidegap2crows", - "xsidegap3methods" -] - - -def cdl_pattern( - open_: Series, high: Series, low: Series, close: Series, - name: str | List[str] = "all", - scalar: IntFloat = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Candle Pattern - - This function wraps TA Lib candle patterns. - - Sources: - * [TA Lib](https://ta-lib.org) - - Parameters: - open_ (Series): ```open``` Series - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - name (str | List[str]): Pattern name or a list of pattern names. - Default: ```"all"``` - scalar (float): Scalar. Default: ```100``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): Replaces ```na```'s with ```value```. - - Returns: - (DataFrame): Pattern Column(s) - - Warning: TA Lib - TA Lib must be installed - """ - # Validate Arguments - open_ = v_series(open_, 1) - high = v_series(high, 1) - low = v_series(low, 1) - close = v_series(close, 1) - - if open_ is None or high is None or low is None or close is None: - return - - offset = v_offset(offset) - scalar = v_scalar(scalar, 100) - - pta_patterns = {"doji": cdl_doji, "inside": cdl_inside} - - if name == "all": - name = ALL_PATTERNS - - if isinstance(name, str): - name = [name] - - if Imports["talib"]: - import talib.abstract as tala - - result = {} - for n in name: - if n not in ALL_PATTERNS: - print(f"[X] There is no candle pattern named {n} available!") - continue - - if n in pta_patterns: - pattern_result = pta_patterns[n]( - open_, high, low, close, offset=offset, scalar=scalar, **kwargs - ) - if not isinstance(pattern_result, Series): - continue - result[pattern_result.name] = pattern_result - - else: - if not Imports["talib"]: - print(f"[i] Requires TA-Lib to use {n}. (pip install TA-Lib)") - continue - - pf = tala.Function(f"CDL{n.upper()}") - pattern_result = Series( - 0.01 * scalar * pf(open_, high, low, close, **kwargs) - ) - pattern_result.index = close.index - - # Offset - if offset != 0: - pattern_result = pattern_result.shift(offset) - - # Fill - if "fillna" in kwargs: - pattern_result.fillna(kwargs["fillna"], inplace=True) - result[f"CDL_{n.upper()}"] = pattern_result - - if len(result) == 0: - return - - # Name and Category - df = DataFrame(result) - df.name = "CDL_PATTERN" - df.category = "candle" - return df - -cdl = cdl_pattern # Alias diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/cdl_z.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/cdl_z.py deleted file mode 100644 index 24a5d9e5..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/cdl_z.py +++ /dev/null @@ -1,93 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.statistics import zscore -from pandas_ta.utils import v_bool, v_offset, v_pos_default, v_series - - - -def cdl_z( - open_: Series, high: Series, low: Series, close: Series, - length: Int = None, full: bool = None, ddof: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Z Candles - - Creates candlesticks using a rolling Z Score. - - Sources: - * Kevin Johnson - - Parameters: - open_ (Series): ```open``` Series - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - full (bool): Apply ```length``` to whole DataFrame. - Default: ```False``` - ddof (int): By default, uses Pandas ```ddof=1```. - For Numpy calculation, use ```0```. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - naive (bool): If ```True```, prefills potential Doji less - than the length if it less than a percentage of it's - High-Low range. Default: ```False``` - fillna (value): Replaces ```na```'s with ```value```. - - Returns: - (DataFrame): 4 columns - - Note: - * Numpy ```std()``` [ddof](https://numpy.org/doc/stable/reference/generated/numpy.std.html) explanation. - """ - # Validate - length = v_pos_default(length, 30) - open_ = v_series(open_, length) - high = v_series(high, length) - low = v_series(low, length) - close = v_series(close, length) - - if open_ is None or high is None or low is None or close is None: - return - - full = v_bool(full, False) - ddof = int(ddof) if isinstance(ddof, int) and 0 <= ddof < length else 1 - offset = v_offset(offset) - - # Calculate - if full: - length = close.size - - z_open = zscore(open_, length=length, ddof=ddof) - z_high = zscore(high, length=length, ddof=ddof) - z_low = zscore(low, length=length, ddof=ddof) - z_close = zscore(close, length=length, ddof=ddof) - - _full = "a" if full else "" - _props = _full if full else f"_{length}_{ddof}" - data = { - f"open_Z{_props}": z_open, - f"high_Z{_props}": z_high, - f"low_Z{_props}": z_low, - f"close_Z{_props}": z_close, - } - df = DataFrame(data, index=close.index) - - if full: - df.fillna(method="backfill", axis=0, inplace=True) - - # Offset - if offset != 0: - df = df.shift(offset) - - # Fill - if "fillna" in kwargs: - df.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - df.name = f"CDL_Z{_props}" - df.category = "candle" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/ha.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/ha.py deleted file mode 100644 index 59a02971..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/candle/ha.py +++ /dev/null @@ -1,86 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from numpy import empty_like, maximum, minimum -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_offset, v_series - - - -@njit(cache=True) -def np_ha(np_open, np_high, np_low, np_close): - ha_close = 0.25 * (np_open + np_high + np_low + np_close) - ha_open = empty_like(ha_close) - ha_open[0] = 0.5 * (np_open[0] + np_close[0]) - - m = np_close.size - for i in range(1, m): - ha_open[i] = 0.5 * (ha_open[i - 1] + ha_close[i - 1]) - - ha_high = maximum(maximum(ha_open, ha_close), np_high) - ha_low = minimum(minimum(ha_open, ha_close), np_low) - - return ha_open, ha_high, ha_low, ha_close - - -def ha( - open_: Series, high: Series, low: Series, close: Series, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Heikin Ashi Candles - - Creates Japanese _ohlc_ candlesticks that attempts to filter out market - noise. Developed by Munehisa Homma in the 1700s, Heikin Ashi Candles share - some characteristics with standard candlestick charts but creates a - smoother candlestick appearance. - - Sources: - * [Investopedia](https://www.investopedia.com/terms/h/heikinashi.asp) - - Parameters: - open_ (Series): ```open``` Series - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): Replaces ```na```'s with ```value```. - - Returns: - (DataFrame): 4 columns - """ - # Validate - open_ = v_series(open_, 1) - high = v_series(high, 1) - low = v_series(low, 1) - close = v_series(close, 1) - offset = v_offset(offset) - - if open_ is None or high is None or low is None or close is None: - return - - # Calculate - np_open, np_high = open_.to_numpy(), high.to_numpy() - np_low, np_close = low.to_numpy(), close.to_numpy() - ha_open, ha_high, ha_low, ha_close = np_ha(np_open, np_high, np_low, np_close) - df = DataFrame({ - "HA_open": ha_open, - "HA_high": ha_high, - "HA_low": ha_low, - "HA_close": ha_close, - }, index=close.index) - - # Offset - if offset != 0: - df = df.shift(offset) - - # Fill - if "fillna" in kwargs: - df.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - df.name = "Heikin-Ashi" - df.category = "candle" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/core.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/core.py deleted file mode 100644 index 832a3257..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/core.py +++ /dev/null @@ -1,1834 +0,0 @@ -# -*- coding: utf-8 -*- -from dataclasses import dataclass -from multiprocessing import cpu_count, Pool -from pathlib import Path -from time import perf_counter -from warnings import simplefilter - -from numpy import log, log10, ndarray -from pandas.api.extensions import register_dataframe_accessor -from pandas.errors import PerformanceWarning -from pandas import DataFrame, Series -from pandas import options as pd_options -from tqdm import tqdm - -from pandas_ta._typing import * -from pandas_ta import * - -# Recommended moving forward to Pandas 3 -pd_options.mode.copy_on_write = True - - - -@register_dataframe_accessor("ta") -class AnalysisIndicators(object): - """Pandas DataFrame Extension: "ta" - - The "ta" extension simplifies the processing of concatenating - Technical Analysis indicators onto the existing Pandas DataFrame. - To do so, this extension assumes that the DataFrame includes a DateTime - oriented index and columns named: "open", "high", "low", "close", "volume". - - Returns: - (Series | DataFrame | None): See Notes - - Features: - * Attributes and methods for _ohlcv_ data. - * Indicator Wrappers for each. Simplifies - ```sma = ta.sma(df["Close"]); df["sma"] = sma``` to ```df.ta.sma(append=True)``` - * A ```study``` method, that simplifies processing multiple indicators - with or without multiprocessing. See: ```help(ta.study)``` - - See Also: - * Pandas TA [DataFrame Extension](http://127.0.0.1:8000/docs/api/dataframe/) Documention - * [Pandas DataFrame Accessor](https://pandas.pydata.org/docs/reference/api/pandas.api.extensions.register_dataframe_accessor.html#pandas.api.extensions.register_dataframe_accessor) - - Notes: - Most Indicators will return a Pandas Series. Others like MACD, - BBANDS, KC, et al will return a Pandas DataFrame. Ichimoku on the - other hand will return two DataFrames, the Ichimoku DataFrame for - the known period and a Span DataFrame for the future of the Span values. - - Documentation is formatted for [mkdocs](https://www.mkdocs.org/) and [mkdocs-docstrings](https://mkdocstrings.github.io/). - - Tip: - Remember to adjust the ```cores``` for maximum speed! - """ - # DataFrame Extension Properties/Attributes - _adjusted = None - _cores = cpu_count() - _custom = None - _df = DataFrame() - _ds = "yf" if Imports["yfinance"] else None - _exchange = "NYSE" - _last_run = get_time(_exchange, to_string=True) - _time_range = "years" - - - def __init__(self, obj: SeriesFrame): - v_dataframe(obj) - self._df = obj - self._last_run = get_time(self._exchange, to_string=True) - - - # DataFrame Behavioral Methods - def __call__( - self, kind: str = None, timed: bool = False, - version: bool = False, **kwargs: DictLike - ): - if version: - print(f"Pandas TA - Technical Analysis Indicators - v{version}") - try: - if isinstance(kind, str): - # Get the indicator named "kind" as fn - kind = kind.lower() - - # if kind == "ta": - # self.help() - - fn = getattr(self, kind) - - if timed: - stime = perf_counter() - - # Run the indicator - # Equivalent: fn(**kwargs) = getattr(self, kind)(**kwargs) - result = fn(**kwargs) - - if timed: - result.timed = final_time(stime) - print(f"[+] {kind}: {result.timed}") - - self._last_run = get_time(self.exchange, to_string=True) - return result - else: - self.help() - - except BaseException: - pass - - - @property - def adjusted(self) -> str: - """Get/Set the **adjusted_close** column. - - Parameters: - name (str): The column ```name```, to set as the *adjusted* - column. Default: ```None``` - - Returns: - (str): The *adjusted* column. - """ - return self._adjusted - - - @adjusted.setter - def adjusted(self, name: str) -> None: - if name is not None and isinstance(name, str): - self._adjusted = name - else: - self._adjusted = None - - - @property - def cores(self) -> Int: - """Manage the number of ```cpus``` to utilize for multiprocessing. - - Parameters: - cpus (Int): Number of ```cores``` Default: ```cpu_count()``` - - Returns: - (Int): The number of ```cores``` set for multiprocessing - - !!! tip "Disable multiprocessing" - Set: ```df.ta.cores = 0``` - - !!! warning "Multiprocessing caveats" - * Multiprocessing **will not** work when using the following keys: ```"col_names"```. - * Multiprocessing **may not** work or complete as expected when indicator _chaining_. - * Chained indicators use non-default, _ohlcv_, sources as input Series. - """ - return self._cores - - @cores.setter - def cores(self, cpus: Int) -> None: - _cpus = cpu_count() - if cpus is not None and isinstance(cpus, int): - self._cores = int(cpus) if 0 <= cpus <= _cpus else _cpus - else: - self._cores = _cpus - - - @property - def exchange(self) -> str: - """A label property of the major _exchange_ the _ohlcv_ data is - associated with. - - Parameters: - value (str): The ```exchange```. Must be one of the following - ```ta.EXCHANGE_TZ.keys()```. Default: ```"NYSE"``` - - Returns: - (str): Exchange label - """ - return self._exchange - - @exchange.setter - def exchange(self, value: str) -> None: - if value is not None and isinstance(value, str) and value in EXCHANGE_TZ.keys(): - self._exchange = value - - - @property - def time_range(self) -> IntFloat: - """Useful for annualization. - - Parameters: - value (str): ```"months", "weeks", "days", "hours", "minutes", - "seconds"```. Default: ```"years"``` - - Returns: - (float): Time elapsed between the first and last DateTimeIndex - """ - return total_time(self._df, self._time_range) - - - @time_range.setter - def time_range(self, value: str) -> None: - if value is not None and isinstance(value, str): - self._time_range = value - else: - self._time_range = "years" - - - # Private DataFrame Methods - def _add_prefix_suffix(self, - result: MaybeSeriesFrame = None, **kwargs: DictLike - ) -> MaybeSeriesFrame: - """Add prefix and/or suffix to the result columns""" - if result is None: - return - else: - prefix = suffix = "" - delimiter = kwargs.setdefault("delimiter", "_") - - if "prefix" in kwargs: - prefix = f"{kwargs['prefix']}{delimiter}" - if "suffix" in kwargs: - suffix = f"{delimiter}{kwargs['suffix']}" - - if isinstance(result, Series): - result.name = prefix + result.name + suffix - else: - result.columns = [prefix + column + suffix for column in result.columns] - - - def _append(self, - result: MaybeSeriesFrame = None, **kwargs: DictLike - ) -> MaybeSeriesFrame: - """Appends a Pandas Series or DataFrame columns to self._df.""" - if result is None: return - - if "col_names" in kwargs and not isinstance(kwargs["col_names"], tuple): - # Note: tuple(kwargs["col_names"]) doesn't work - kwargs["col_names"] = (kwargs["col_names"],) - - df = self._df - if isinstance(result, DataFrame): - simplefilter(action="ignore", category=PerformanceWarning) - pd_options.mode.chained_assignment = None - - # Rename the columns if kwargs["col_names"] - if "col_names" in kwargs and isinstance(kwargs["col_names"], tuple): - if len(kwargs["col_names"]) >= len(result.columns): - for col, ind_name in zip(result.columns, kwargs["col_names"]): - df[ind_name] = result.loc[:, col] - else: - print(f"[!] Not enough col_names were specified : got {len(kwargs['col_names'])}, expected {len(result.columns)}.") - return - else: - for i, column in enumerate(result.columns): - df.loc[:, (column)] = result.iloc[:, i] - else: - ind_name = ( - kwargs["col_names"][0] - if "col_names" in kwargs and isinstance(kwargs["col_names"], tuple) - else result.name - ) - df.loc[:, (ind_name)] = result - - - def _check_na_columns(self): - """Returns the columns in which all it's values are na.""" - return [x for x in self._df.columns if all(self._df[x].isna())] - - - def _get_column(self, series: Series | str | None): - """Attempts to get the correct series or 'column' and return it.""" - df = self._df - if df is None: return - - # Explicitly passing a Series to override default. - if isinstance(series, Series): - return series - # Apply default if no series nor a default. - elif series is None: - return df[self.adjusted] if self.adjusted is not None else None - # Ok. So it's a str. - elif isinstance(series, str): - # Return the df column since it's in there. - if series in df.columns: - return df[series] - else: - # Attempt to match the 'series' because it was likely - # misspelled. - matches = df.columns.str.match(series, case=False) - match = [i for i, x in enumerate(matches) if x] - # If found, awesome. Return it or return the 'series'. - NOT_FOUND = f"[X] The '{series}' column was not found in" - cols = ", ".join(list(df.columns)) - - if len(df.columns): NOT_FOUND += f": {cols}" - else: NOT_FOUND += " the DataFrame" - - if len(match): - return df.iloc[:, match[0]] - else: - print(NOT_FOUND) - - - def _indicators_by_category(self, name: str) -> List: - """Returns indicators by Categorical name.""" - return Category[name] if name in self.categories() else None - - - def _mp_worker(self, arguments: Tuple): - """Multiprocessing Worker to handle different Methods.""" - method, args, kwargs = arguments - - if method != "ichimoku": - return getattr(self, method)(*args, **kwargs) - else: - return getattr(self, method)(*args, **kwargs)[0] - - - def _post_process(self, - result: Series | DataFrame, **kwargs: DictLike - ) -> Series | DataFrame: - """Applies any additional modifications to the DataFrame - - * Applies prefixes and/or suffixes - * Appends the result to main DataFrame - """ - verbose = kwargs.pop("verbose", False) - if not isinstance(result, (Series, DataFrame)): - if verbose: - print(f"[X] The result is not a Series or DataFrame.") - return self._df - else: - # Append only specific columns to the dataframe (via - # 'col_numbers':(0,1,3) for example) - result = ( - result.iloc[:, [int(n) for n in kwargs["col_numbers"]]] - if isinstance(result, DataFrame) and - "col_numbers" in kwargs and - kwargs["col_numbers"] is not None else result - ) - # Add prefix/suffix and append to the dataframe - self._add_prefix_suffix(result=result, **kwargs) - - if "append" in kwargs and isinstance(kwargs["append"], bool): - if not kwargs["append"]: - # Issue 388 - No appending, just print to stdout - # No DatetimeIndex could break execution. - print(result) - else: - # Default: Appends result to DataFrame - self._append(result=result, **kwargs) - return result - - - def _study_mode(self, *args: Args) -> Tuple: - """Returns tuple: (name:str, mode:dict)""" - name = "All" - mode = {"all": False, "category": False, "custom": False} - - if len(args) == 0: - mode["all"] = True - else: - _categories = self.categories() - if isinstance(args[0], str): - if args[0].lower() == "all": - name, mode["all"] = name, True - if args[0].lower() in _categories: - name, mode["category"] = args[0], True - - if isinstance(args[0], Study): - study_ = args[0] - if study_.ta is None or study_.name.lower() == "all": - name, mode["all"] = name, True - elif study_.name.lower() in _categories: - name, mode["category"] = study_.name, True - else: - name, mode["custom"] = study_.name, True - - return name, mode - - - # Public DataFrame Methods - def baseline(self, - zero: bool = False, index: int = 0, - k: IntFloat = 1, to_log: bool = False, save: bool = False - ) -> DataFrame: - """baseline - - This method updates the DataFrame _ohlc_ values with a baseline - of ```k=1```. Useful for comparisons. - - Parameters: - zero (bool): Zero the _ohlc_ data. - index (bool): Index to baseline at. - k (IntFloat): Scaler. - to_log (bool): Pre apply ```np.log```. - save (bool): Preserve _ohlc_ when using ```to_log```. - """ - open_ = self._get_column("open") - high = self._get_column("high") - low = self._get_column("low") - close = self._get_column("close") - - zero = v_bool(zero, False) - index = v_pos_default(index, 0) - k = v_scalar(k, 1) - to_log = v_bool(to_log, False) - save = v_bool(save, False) - - if index >= self._df.shape[0]: - index = self._df.shape[0] - 1 - - if to_log: - if save: - self._df["_open"] = open_ - self._df["_high"] = high - self._df["_low"] = low - self._df["_close"] = close - - open_ = log(open_) - high = log(high) - low = log(low) - close = log(close) - - self._df.loc[:, (open_.name)] = k * open_ / open_.iloc[index] - self._df.loc[:, (high.name)] = k * high / high.iloc[index] - self._df.loc[:, (low.name)] = k * low / low.iloc[index] - self._df.loc[:, (close.name)] = k * close / close.iloc[index] - - if zero: - self._df.loc[:, (open_.name)] -= k - self._df.loc[:, (high.name)] -= k - self._df.loc[:, (low.name)] -= k - self._df.loc[:, (close.name)] -= k - - - def categories(self) -> ListStr: - """categories - - List of categories. - - Returns: - (ListStr): List of the indicator categories. - """ - return list(Category.keys()) - - - def constants(self, append: bool, values: Array | List) -> PandasDTypeLike | None: - """constants - - Concatenate / Drop constant(s) to the DataFrame. - - Parameters: - append (bool): Concatenate if ```True```. Drop if ```False```. - Default: ```None``` - values (Array): List/Numpy array of ```values``` to append/drop from - the DataFrame. - - Returns: - (Series, DataFrame, None): Depends upon parameters. - - See Also: - * [TA DataFrame Constants](../support/how-to.md) - """ - if isinstance(values, ndarray) or isinstance(values, list): - if append: - for x in values: - self._df[f"{x}"] = x - return self._df[self._df.columns[-len(values):]] - else: - for x in values: - del self._df[f"{x}"] - - - def datetime_ordered(self) -> bool: - """datetime_ordered - - DataFrame DateTime ordered? - - Returns: - (bool): ```True``` if the DataFrame is DateTime ordered, - otherwise ```False```. - """ - return v_datetime_ordered(self._df) - - - def help(self, s: str ="") -> None | TextIO: - """help - - Help! - - Parameters: - s (str): String to search for. Default: ```""``` - - Returns: - (None | TextIO): Opens web browser to relevant Pandas TA website - page or prints all search keywords. - """ - return help(s) - - - def indicators(self, as_list: bool = None, exclude: ListStr = None) -> TextIO | ListStr: - """indicators - - List indicators. - - Parameters: - as_list (bool): Return as a list. Default: ```False``` - exclude (ListStr): The passed in list will be excluded - from the indicators list. Default: ```None``` - - Returns: - (TextIO | ListStr): Prints list or returns a ```ListStr```. - """ - as_list = bool(as_list) if isinstance(as_list, bool) else False - user_excluded = [] - if isinstance(exclude, list) and len(exclude): - user_excluded = exclude - - # Public DataFrame Extension methods - df_ext_methods = [ - "baseline", - "categories", - "constants", - "datetime_ordered", - "help", - "indicators", - "last_run", - "reverse", - "study", - "ticker", - "to_utc", - ] - # Public df.ta.properties - ta_properties = [ - "adjusted", - "cores", - # "custom", - # "ds", - "exchange", - "time_range" - ] - - # Public non-indicator methods - ta_indicators = list((x for x in dir(DataFrame().ta) if not x.startswith("_") and not x.endswith("_"))) - - # Add Pandas TA methods and properties to be removed - removed = df_ext_methods + ta_properties - - # Add user excluded methods to be removed - if isinstance(user_excluded, list) and len(user_excluded) > 0: - removed += user_excluded - - # Remove the unwanted indicators - [ta_indicators.remove(x) for x in removed] - - if as_list: - return ta_indicators - - indicator_count = len(ta_indicators) - header = f"Pandas TA - Technical Analysis Indicators - v{version}" - - s, _count = f"{header}\n", 0 - if indicator_count > 0: - from pandas_ta.candle.cdl_pattern import ALL_PATTERNS - s += f"\nIndicators and Utilities [{indicator_count}]:\n {', '.join(ta_indicators)}\n" - _count += indicator_count - if Imports["talib"]: - s += f"\nCandle Patterns [{len(ALL_PATTERNS)}]:\n {', '.join(ALL_PATTERNS)}\n" - _count += len(ALL_PATTERNS) - s += f"\nTotal Candles, Indicators and Utilities: {_count}" - print(s) - - - def last_run(self) -> str: - """last_run - - Detailed string of last run time. - - Returns: - (str): Detailed date and time of the lastest run. - """ - return self._last_run - - - def reverse(self) -> None: - """reverse - - Reverse the DataFrame inplace. - - Returns: - (None): DataFrame reversed inplace. - """ - self._df.index = self._df.iloc[::-1].index - - - def study(self, *args: Args, **kwargs: DictLike) -> dataclass: - """study - - Applies the ```ta``` listed in a [```Study```](studies.md). - - Other Parameters: - chunksize (int): Multiprocessing Pool chunksize. - Default: ```df.ta.cores``` - cores (int): Number of Multiprocessing cores. - Default: ```df.ta.cores``` - exclude (ListStr): List of indicator names. Default: ```[]``` - ordered (bool): Run ```ta``` in order. Default: ```True``` - returns (bool): Return the DataFrame. Default: ```False``` - timed (bool): Print the process time. Default: ```False``` - verbose (bool): More verbose output. Default: ```False``` - - Note: Multiprocessing - Multiprocessing is **not** viable or efficient for some cases. - Customize for production. See [Multiprocessing](https://docs.python.org/3.12/library/multiprocessing.html) - for more information. - """ - all_ordered = kwargs.pop("ordered", True) - # Append indicators to the DataFrame by default - kwargs.setdefault("append", True) - # If True, it returns the resultant DataFrame. Default: False - returns = kwargs.pop("returns", False) - - mp_chunksize = kwargs.pop("chunksize", self.cores) - cores = kwargs.pop("cores", self.cores) - self.cores = cores - - # Initialize - initial_column_count = self._df.shape[1] - excluded = ["long_run", "short_run", "tsignals", "xsignals"] - - # Get the Study Name and mode - name, mode = self._study_mode(*args) - - # If All or a Category, exclude user list if any - user_excluded = kwargs.pop("exclude", []) - if isinstance(user_excluded, str) and len(user_excluded) > 1: - user_excluded = [user_excluded] - if mode["all"] or mode["category"]: - excluded += user_excluded - - # Collect the indicators, remove excluded or include kwarg["append"] - if mode["category"]: - ta = self._indicators_by_category(name.lower()) - [ta.remove(x) for x in excluded if x in ta] - elif mode["custom"]: - if hasattr(args[0], "cores") and isinstance(args[0].cores, int): - self.cores = min(args[0].cores, self.cores) - ta = args[0].ta - for kwds in ta: - kwds["append"] = True - elif mode["all"]: - ta = self.indicators(as_list=True, exclude=excluded) - else: - print(f"[X] Study not available.") - return None - - verbose = kwargs.pop("verbose", False) - if verbose: - print(f"[+] Study: {name}\n[i] Indicator arguments: {kwargs}") - if mode["all"] or mode["category"]: - excluded_str = ", ".join(excluded) - print(f"[i] Excluded[{len(excluded)}]: {excluded_str}") - - timed = kwargs.pop("timed", False) - results = [] - use_multiprocessing = True if self.cores > 0 else False - has_col_names = False - - if timed: - stime = perf_counter() - - if use_multiprocessing and mode["custom"]: - # Determine if the Custom Study has "col_names" key - has_col_names = (True if len([ - True for x in ta - if "col_names" in x and isinstance(x["col_names"], tuple) - ]) else False) - - if has_col_names: - use_multiprocessing = False - print(f"[i] Multiprocessing is disabled (cores=0) when using custom \"col_names\".") - - if use_multiprocessing: - _total_ta = len(ta) - with Pool(self.cores) as pool: - # Some magic to optimize chunksize for speed - # based on total ta indicators - if mp_chunksize > _total_ta: - _chunksize = mp_chunksize - 1 - elif mp_chunksize > 0: - _chunksize = mp_chunksize - else: - _chunksize = int(log10(_total_ta)) + 1 - if verbose: - print(f"[i] Multiprocessing {_total_ta} indicators with chunksize {_chunksize} and {self.cores}/{cpu_count()} cpus.") - - results = None - if mode["custom"]: - # Create a list of all the custom indicators into a list - custom_ta = [( - ind["kind"], - ind["params"] if "params" in ind and isinstance(ind["params"], tuple) else (), - {**ind, **kwargs}, - ) for ind in ta] - # Custom multiprocessing pool. Must be ordered for Chained Strategies - # May fix this to cpus if Chaining/Composition if it remains - if verbose: - results = tqdm(pool.map(self._mp_worker, custom_ta, _chunksize), total=len(custom_ta) // _chunksize) - else: - results = pool.map(self._mp_worker, custom_ta, _chunksize) - else: - default_ta = [(ind, tuple(), kwargs) for ind in ta] - tqdm_total = len(default_ta) // _chunksize - # All and Categorical multiprocessing pool. - if all_ordered: - if verbose: - results = tqdm(pool.imap(self._mp_worker, default_ta, _chunksize), total=tqdm_total) # Order over Speed - else: - results = pool.imap(self._mp_worker, default_ta, _chunksize) # Order over Speed - else: - if verbose: - results = tqdm(pool.imap_unordered(self._mp_worker, default_ta, _chunksize), total=tqdm_total) # Speed over Order - else: - results = pool.imap_unordered(self._mp_worker, default_ta, _chunksize) # Speed over Order - if results is None: - print(f"[X] ta.study('{name}') has no results.") - return - - pool.close() - pool.join() - self._last_run = get_time(self.exchange, to_string=True) - - else: - # Without multiprocessing: - if verbose: - _col_msg = f"[i] No multiprocessing. (cores = 0)" - if has_col_names: - _col_msg = f"[i] No multiprocessing support with the 'col_names' keyword." - print(_col_msg) - - if mode["custom"]: - if verbose: - pbar = tqdm(ta, f"[i] Progress") - for ind in pbar: - params = ind["params"] if "params" in ind and isinstance(ind["params"], tuple) else tuple() - getattr(self, ind["kind"])(*params, **{**ind, **kwargs}) - else: - for ind in ta: - params = ind["params"] if "params" in ind and isinstance(ind["params"], tuple) else tuple() - getattr(self, ind["kind"])(*params, **{**ind, **kwargs}) - else: - if verbose: - pbar = tqdm(ta, f"[i] Progress") - for ind in pbar: - getattr(self, ind)(*tuple(), **kwargs) - else: - for ind in ta: - getattr(self, ind)(*tuple(), **kwargs) - self._last_run = get_time(self.exchange, to_string=True) - - # Apply prefixes/suffixes and appends indicator results to the DataFrame - [self._post_process(r, **kwargs) for r in results] - - final_column_count = self._df.shape[1] - _added_columns = final_column_count - initial_column_count - - if verbose: - print(f"[i] Total indicators: {len(ta)}") - print(f"[i] Columns added: {_added_columns}") - print(f"[i] Last Run: {self._last_run}") - if timed: - ft = final_time(stime) - if _added_columns > 0: - avgtd = (perf_counter() - stime) / _added_columns - else: - avgtd = perf_counter() - stime - print(f"[i] Pandas TA Time: {ft} for {_added_columns} columns (avg {avgtd * 1000:2.4f} ms / col)") - - if returns: - return self._df - - - def ticker(self, - ticker: str = None, period: str = None, interval: str = None, - study: Study = None, proxy: dict = None, - timed: bool = False, **kwargs: DictLike - ): - """ticker - - Download Historical _ohlcv_ data as a Pandas DataFrame if _yfinance_ - package is installed. It also can run a ```ta.Study``` afterwards. - - Parameters: - ticker (str): Any string for a ticker you would use - with ```yfinance```. Default: ```"SPY"``` - period (str): See the yfinance ```history()``` method for - more options. Default: ```"max"``` - interval (str): Default: ```"1d"``` - study (ta.Study | str): After downloading, apply ```Study``` - Default: ```None``` - proxy (dict): Proxy dictionary. Default: ```{}``` - timed (bool): Print download time to stdout. Default: ```False``` - - Returns: - (DataFrame | None): _ohlcv_ ```df``` or ```None``` - - Tip: YFinance ```history``` parameters - * [_yfinance_](https://ranaroussi.github.io/yfinance/index.html) - * _yfinance_ [```history()```](https://github.com/ranaroussi/yfinance/blob/main/yfinance/scrapers/history.py) - - Example: - ```py - import panadas as pd - import pandas_ta as ta - - # Simple - df = pd.DataFrame().ta.ticker("SPY", period="2y", timed=True) - - # Built In Study - df = pd.DataFrame().ta.ticker("SPY", period="2y", study=ta.AllStudy, timed=True) - ``` - """ - if self._ds is None: - print(f"[X] Please install yfinance to use this method. (pip install yfinance)") - return - - ticker = v_str(ticker, "SPY") - period = v_str(period, "max") - interval = v_str(interval, "1d") - proxy = proxy if isinstance(proxy, dict) else {} - timed = v_bool(timed, False) - - df, stime = None, None - if self._ds == "yf" and ticker is not None: - import yfinance as yf - yft = yf.Ticker(ticker) - - if timed: stime = perf_counter() - df = yft.history( - period=period, interval=interval, - proxy=proxy, **kwargs - ) - df.name = ticker - else: - return None - - if timed: - df.timed = final_time(stime) - print(f"[+] yf | {ticker}{df.shape}: {df.timed}") - - self._df = df - - if study is not None and isinstance(study, Study): - self.study(study, timed=timed, **kwargs) - - return self._df - - - def to_utc(self) -> None: - """to_utc - - Set the DataFrame index to UTC. - - Returns: - (None): Performs the operation. - """ - self._df = to_utc(self._df) - - - # def version(self) -> str: - # return version - - - # Public DataFrame Methods: Indicators and Utilities - # Candles - def cdl_pattern(self, name: str = "all", offset=None, **kwargs): - open_ = self._get_column(kwargs.pop("open", "open")) - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = cdl_pattern(open_=open_, high=high, low=low, close=close, name=name, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def cdl_z(self, full=None, offset=None, **kwargs): - open_ = self._get_column(kwargs.pop("open", "open")) - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = cdl_z(open_=open_, high=high, low=low, close=close, full=full, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def ha(self, offset=None, **kwargs): - open_ = self._get_column(kwargs.pop("open", "open")) - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = ha(open_=open_, high=high, low=low, close=close, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - # Cycles - def ebsw(self, close=None, length=None, bars=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = ebsw(close=close, length=length, bars=bars, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def reflex(self, close=None, length=None, smooth=None, alpha=None, pi=None, sqrt2=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = reflex(close=close, length=length, smooth=smooth, alpha=alpha, pi=pi, sqrt2=sqrt2, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - # Momentum - def ao(self, fast=None, slow=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - result = ao(high=high, low=low, fast=fast, slow=slow, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def apo(self, fast=None, slow=None, mamode=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = apo(close=close, fast=fast, slow=slow, mamode=mamode, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def bias(self, length=None, mamode=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = bias(close=close, length=length, mamode=mamode, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def bop(self, percentage=False, offset=None, **kwargs): - open_ = self._get_column(kwargs.pop("open", "open")) - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = bop(open_=open_, high=high, low=low, close=close, percentage=percentage, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def brar(self, length=None, scalar=None, drift=None, offset=None, **kwargs): - open_ = self._get_column(kwargs.pop("open", "open")) - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = brar(open_=open_, high=high, low=low, close=close, length=length, scalar=scalar, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def cci(self, length=None, c=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = cci(high=high, low=low, close=close, length=length, c=c, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def cfo(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = cfo(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def cg(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = cg(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def cmo(self, length=None, scalar=None, drift=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = cmo(close=close, length=length, scalar=scalar, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def coppock(self, length=None, fast=None, slow=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = coppock(close=close, length=length, fast=fast, slow=slow, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def crsi(self, rsi_length=None, streak_length=None, rank_length=None, drift=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = crsi(close=close, rsi_length=rsi_length, streak_length=streak_length, rank_length=rank_length, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def cti(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = cti(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def dm(self, drift=None, offset=None, mamode=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - result = dm(high=high, low=low, drift=drift, mamode=mamode, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def er(self, length=None, drift=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = er(close=close, length=length, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def eri(self, length=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = eri(high=high, low=low, close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def exhc(self, length=None, cap=None, asint=None, show_all=None, nozeros=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = exhc(close=close, length=length, cap=cap, asint=asint, show_all=show_all, nozeros=nozeros, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def fisher(self, length=None, signal=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - result = fisher(high=high, low=low, length=length, signal=signal, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def inertia(self, length=None, rvi_length=None, scalar=None, refined=None, thirds=None, mamode=None, drift=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - if refined is not None or thirds is not None: - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - result = inertia(close=close, high=high, low=low, length=length, rvi_length=rvi_length, scalar=scalar, refined=refined, thirds=thirds, mamode=mamode, drift=drift, offset=offset, **kwargs) - else: - result = inertia(close=close, length=length, rvi_length=rvi_length, scalar=scalar, refined=refined, thirds=thirds, mamode=mamode, drift=drift, offset=offset, **kwargs) - - return self._post_process(result, **kwargs) - - def kdj(self, length=None, signal=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = kdj(high=high, low=low, close=close, length=length, signal=signal, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def kst(self, roc1=None, roc2=None, roc3=None, roc4=None, sma1=None, sma2=None, sma3=None, sma4=None, signal=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = kst(close=close, roc1=roc1, roc2=roc2, roc3=roc3, roc4=roc4, sma1=sma1, sma2=sma2, sma3=sma3, sma4=sma4, signal=signal, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def macd(self, fast=None, slow=None, signal=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = macd(close=close, fast=fast, slow=slow, signal=signal, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def mom(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = mom(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def pgo(self, length=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = pgo(high=high, low=low, close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def ppo(self, fast=None, slow=None, scalar=None, mamode=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = ppo(close=close, fast=fast, slow=slow, scalar=scalar, mamode=mamode, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def psl(self, open_=None, length=None, scalar=None, drift=None, offset=None, **kwargs): - if open_ is not None: - open_ = self._get_column(kwargs.pop("open", "open")) - - close = self._get_column(kwargs.pop("close", "close")) - result = psl(close=close, open_=open_, length=length, scalar=scalar, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def qqe(self, length=None, smooth=None, factor=None, mamode=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = qqe(close=close, length=length, smooth=smooth, factor=factor, mamode=mamode, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def roc(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = roc(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def rsi(self, length=None, scalar=None, drift=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = rsi(close=close, length=length, scalar=scalar, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def rsx(self, length=None, drift=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = rsx(close=close, length=length, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def rvgi(self, length=None, swma_length=None, offset=None, **kwargs): - open_ = self._get_column(kwargs.pop("open", "open")) - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = rvgi(open_=open_, high=high, low=low, close=close, length=length, swma_length=swma_length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def slope(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = slope(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def smc(self, abr_length=None, close_length=None, vol_length=None, percent=None, vol_ratio=None, asint=None, mamode=None, talib=None, offset=None, **kwargs): - open_ = self._get_column(kwargs.pop("open", "open")) - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = smc(open_=open_, high=high, low=low, close=close, abr_length=abr_length, close_length=close_length, vol_length=vol_length, percent=percent, vol_ratio=vol_ratio, asint=asint, mamode=mamode, talib=talib, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def smi(self, fast=None, slow=None, signal=None, scalar=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = smi(close=close, fast=fast, slow=slow, signal=signal, scalar=scalar, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def squeeze(self, bb_length=None, bb_std=None, kc_length=None, kc_scalar=None, mom_length=None, mom_smooth=None, use_tr=None, mamode=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = squeeze(high=high, low=low, close=close, bb_length=bb_length, bb_std=bb_std, kc_length=kc_length, kc_scalar=kc_scalar, mom_length=mom_length, mom_smooth=mom_smooth, use_tr=use_tr, mamode=mamode, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def squeeze_pro(self, bb_length=None, bb_std=None, kc_length=None, kc_scalar_wide=None, kc_scalar_normal=None, kc_scalar_narrow=None, mom_length=None, mom_smooth=None, use_tr=None, mamode=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = squeeze_pro(high=high, low=low, close=close, bb_length=bb_length, bb_std=bb_std, kc_length=kc_length, kc_scalar_wide=kc_scalar_wide, kc_scalar_normal=kc_scalar_normal, kc_scalar_narrow=kc_scalar_narrow, mom_length=mom_length, mom_smooth=mom_smooth, use_tr=use_tr, mamode=mamode, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def stc(self, tclength=None, ma1=None, ma2=None, osc=None, fast=None, slow=None, factor=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = stc(close=close, tclength=tclength, ma1=ma1, ma2=ma2, osc=osc, fast=fast, slow=slow, factor=factor, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def stoch(self, k=None, d=None, smooth_k=None, mamode=None, talib=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = stoch(high=high, low=low, close=close, k=k, d=d, smooth_k=smooth_k, mamode=mamode, talib=talib, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def stochf(self, k=None, d=None, mamode=None, talib=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = stochf(high=high, low=low, close=close, k=k, d=d, mamode=mamode, talib=talib, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def stochrsi(self, length=None, rsi_length=None, k=None, d=None, mamode=None, talib=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = stochrsi(high=high, low=low, close=close, length=length, rsi_length=rsi_length, k=k, d=d, mamode=mamode, talib=talib, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def tmo(self, tmo_length=None, calc_length=None, smooth_length=None, mamode=None, compute_momentum=False, normalize_signal=False, offset=None, **kwargs): - open_ = self._get_column(kwargs.pop("open", "open")) - close = self._get_column(kwargs.pop("close", "close")) - result = tmo(open_=open_, close=close, tmo_length=tmo_length, calc_length=calc_length, smooth_length=smooth_length, mamode=mamode, compute_momentum=compute_momentum, normalize_signal=normalize_signal, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def trix(self, length=None, signal=None, scalar=None, drift=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = trix(close=close, length=length, signal=signal, scalar=scalar, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def tsi(self, fast=None, slow=None, drift=None, mamode=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = tsi(close=close, fast=fast, slow=slow, drift=drift, mamode=mamode, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def uo(self, fast=None, medium=None, slow=None, fast_w=None, medium_w=None, slow_w=None, drift=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = uo(high=high, low=low, close=close, fast=fast, medium=medium, slow=slow, fast_w=fast_w, medium_w=medium_w, slow_w=slow_w, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def willr(self, length=None, percentage=True, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = willr(high=high, low=low, close=close, length=length, percentage=percentage, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - # Overlap - def alligator(self, jaw=None, teeth=None, lips=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = alligator(close=close, jaw=jaw, teeth=teeth, lips=lips, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def alma(self, length=None, sigma=None, distribution_offset=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = alma(close=close, length=length, sigma=sigma, distribution_offset=distribution_offset, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def dema(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = dema(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def ema(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = ema(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def fwma(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = fwma(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def hilo(self, high_length=None, low_length=None, mamode=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = hilo(high=high, low=low, close=close, high_length=high_length, low_length=low_length, mamode=mamode, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def hl2(self, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - result = hl2(high=high, low=low, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def hlc3(self, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = hlc3(high=high, low=low, close=close, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def hma(self, length=None, mamode=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = hma(close=close, length=length, mamode=mamode, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def hwma(self, na=None, nb=None, nc=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = hwma(close=close, na=na, nb=nb, nc=nc, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def jma(self, length=None, phase=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = jma(close=close, length=length, phase=phase, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def kama(self, length=None, fast=None, slow=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = kama(close=close, length=length, fast=fast, slow=slow, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def ichimoku(self, tenkan=None, kijun=None, senkou=None, include_chikou=True, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result, span = ichimoku(high=high, low=low, close=close, tenkan=tenkan, kijun=kijun, senkou=senkou, include_chikou=include_chikou, offset=offset, **kwargs) - self._add_prefix_suffix(result, **kwargs) - self._add_prefix_suffix(span, **kwargs) - self._append(result, **kwargs) - # return self._post_process(result, **kwargs), span - return result, span - - def linreg(self, length=None, offset=None, adjust=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = linreg(close=close, length=length, offset=offset, adjust=adjust, **kwargs) - return self._post_process(result, **kwargs) - - def mama(self, fastlimit=None, slowlimit=None, prenan=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = mama(close=close, fastlimit=fastlimit, slowlimit=slowlimit, prenan=prenan, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def mcgd(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = mcgd(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def midpoint(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = midpoint(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def midprice(self, length=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - result = midprice(high=high, low=low, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def ohlc4(self, offset=None, **kwargs): - open_ = self._get_column(kwargs.pop("open", "open")) - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = ohlc4(open_=open_, high=high, low=low, close=close, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def pivots(self, method=None, anchor=None, **kwargs): - open_ = self._get_column(kwargs.pop("open", "open")) - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = pivots(open_=open_, high=high, low=low, close=close, method=method, anchor=anchor, **kwargs) - return self._post_process(result, **kwargs) - - def pwma(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = pwma(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def rma(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = rma(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def rwi(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = rwi(high=high, low=low, close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def sinwma(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = sinwma(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def sma(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = sma(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def smma(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = smma(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def ssf(self, length=None, everget=None, pi=None, sqrt2=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = ssf(close=close, length=length, everget=everget, pi=pi, sqrt2=sqrt2, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def ssf3(self, length=None, pi=None, sqrt3=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = ssf3(close=close, length=length, pi=pi, sqrt3=sqrt3, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def supertrend(self, length=None, multiplier=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = supertrend(high=high, low=low, close=close, length=length, multiplier=multiplier, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def swma(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = swma(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def t3(self, length=None, a=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = t3(close=close, length=length, a=a, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def tema(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = tema(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def trima(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = trima(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def vidya(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = vidya(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def wcp(self, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = wcp(high=high, low=low, close=close, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def wma(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = wma(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def zlma(self, length=None, mamode=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = zlma(close=close, length=length, mamode=mamode, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - # Performance - def log_return(self, length=None, cumulative=False, percent=False, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = log_return(close=close, length=length, cumulative=cumulative, percent=percent, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def percent_return(self, length=None, cumulative=False, percent=False, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = percent_return(close=close, length=length, cumulative=cumulative, percent=percent, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - # Statistics - def entropy(self, length=None, base=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = entropy(close=close, length=length, base=base, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def kurtosis(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = kurtosis(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def mad(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = mad(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def median(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = median(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def quantile(self, length=None, q=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = quantile(close=close, length=length, q=q, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def skew(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = skew(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def stdev(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = stdev(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def tos_stdevall(self, length=None, stds=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = tos_stdevall(close=close, length=length, stds=stds, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def variance(self, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = variance(close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def zscore(self, length=None, std=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = zscore(close=close, length=length, std=std, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - # Trend - def adx(self, length=None, lensig=None, mamode=None, scalar=None, drift=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = adx(high=high, low=low, close=close, length=length, lensig=lensig, mamode=mamode, scalar=scalar, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def alphatrend(self, volume=None, src=None, length=None, multiplier=None, threshold=None, lag=None, mamode=None, talib=None, offset=None, **kwargs): - open_ = self._get_column(kwargs.pop("open", "open")) - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - if volume is not None: - volume = self._get_column(kwargs.pop("volume", "volume")) - result = alphatrend(open_=open_, high=high, low=low, close=close, volume=volume, src=src, length=length, multiplier=multiplier, threshold=threshold, lag=lag, mamode=mamode, talib=talib, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def amat(self, fast=None, slow=None, mamode=None, lookback=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = amat(close=close, fast=fast, slow=slow, mamode=mamode, lookback=lookback, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def aroon(self, length=None, scalar=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - result = aroon(high=high, low=low, length=length, scalar=scalar, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def chop(self, length=None, atr_length=None, ln=None, scalar=None, drift=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = chop(high=high, low=low, close=close, length=length, atr_length=atr_length, ln=ln, scalar=scalar, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def cksp(self, p=None, x=None, q=None, mamode=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = cksp(high=high, low=low, close=close, p=p, x=x, q=q, mamode=mamode, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def decay(self, length=None, mode=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = decay(close=close, length=length, mode=mode, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def decreasing(self, length=None, strict=None, asint=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = decreasing(close=close, length=length, strict=strict, asint=asint, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def dpo(self, length=None, centered=True, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = dpo(close=close, length=length, centered=centered, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def ht_trendline(self, talib=None, prenan=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = ht_trendline(close=close, talib=talib, prenan=prenan, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def increasing(self, length=None, strict=None, asint=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = increasing(close=close, length=length, strict=strict, asint=asint, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def long_run(self, fast=None, slow=None, length=None, offset=None, **kwargs): - if fast is None and slow is None: - return self._df - else: - result = long_run(fast=fast, slow=slow, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def psar(self, af0=None, af=None, max_af=None, tv=False, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", None)) - result = psar(high=high, low=low, close=close, af0=af0, af=af, max_af=max_af, tv=tv, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def qstick(self, length=None, offset=None, **kwargs): - open_ = self._get_column(kwargs.pop("open", "open")) - close = self._get_column(kwargs.pop("close", "close")) - result = qstick(open_=open_, close=close, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def rwi(self, length=None, lensig=None, mamode=None, scalar=None, drift=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = rwi(high=high, low=low, close=close, length=length, lensig=lensig, mamode=mamode, scalar=scalar, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def short_run(self, fast=None, slow=None, length=None, offset=None, **kwargs): - if fast is None and slow is None: - return self._df - else: - result = short_run(fast=fast, slow=slow, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def supertrend(self, period=None, multiplier=None, mamode=None, drift=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = supertrend(high=high, low=low, close=close, period=period, multiplier=multiplier, mamode=mamode, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def trendflex(self, close=None, length=None, smooth=None, alpha=None, pi=None, sqrt2=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = trendflex(close=close, length=length, smooth=smooth, alpha=alpha, pi=pi, sqrt2=sqrt2, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def tsignals(self, trend=None, asbool=None, trend_reset=None, trend_offset=None, offset=None, **kwargs): - if trend is None: - return self._df - else: - result = tsignals(trend, asbool=asbool, trend_offset=trend_offset, trend_reset=trend_reset, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def vhf(self, length=None, drift=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = vhf(close=close, length=length, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def vortex(self, drift=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = vortex(high=high, low=low, close=close, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def xsignals(self, signal=None, xa=None, xb=None, above=None, long=None, asbool=None, trend_reset=None, trend_offset=None, offset=None, **kwargs): - if signal is None: - return self._df - else: - result = xsignals(signal=signal, xa=xa, xb=xb, above=above, long=long, asbool=asbool, trend_offset=trend_offset, trend_reset=trend_reset, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def zigzag(self, close=None, legs=None, deviation=None, retrace=None, last_extreme=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - if close is not None: - close = self._get_column(kwargs.pop("close", "close")) - result = zigzag(high=high, low=low, close=close, legs=legs, deviation=deviation, retrace=retrace, last_extreme=last_extreme, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - # Volatility - def aberration(self, length=None, atr_length=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = aberration(high=high, low=low, close=close, length=length, atr_length=atr_length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def accbands(self, length=None, c=None, mamode=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = accbands(high=high, low=low, close=close, length=length, c=c, mamode=mamode, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def atr(self, length=None, mamode=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = atr(high=high, low=low, close=close, length=length, mamode=mamode, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def atrts(self, length=None, ma_length=None, multiplier=None, mamode=None, talib=None, drift=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = atrts(high=high, low=low, close=close, length=length, ma_length=ma_length, multiplier=multiplier, mamode=mamode, talib=talib, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def bbands(self, length=None, lower_std=None, upper_std=None, mamode=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = bbands(close=close, length=length, lower_std=lower_std, upper_std=upper_std, mamode=mamode, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def chandelier_exit(self, high_length=None, low_length=None, atr_length=None, multiplier=None, mamode=None, talib=None, use_close=None, drift=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = chandelier_exit(high=high, low=low, close=close, high_length=high_length, low_length=low_length, atr_length=atr_length, multiplier=multiplier, mamode=mamode, talib=talib, use_close=use_close, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def donchian(self, lower_length=None, upper_length=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - result = donchian(high=high, low=low, lower_length=lower_length, upper_length=upper_length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def hwc(self, na=None, nb=None, nc=None, nd=None, scalar=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = hwc(close=close, na=na, nb=nb, nc=nc, nd=nd, scalar=scalar, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def kc(self, length=None, scalar=None, mamode=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = kc(high=high, low=low, close=close, length=length, scalar=scalar, mamode=mamode, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def massi(self, fast=None, slow=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - result = massi(high=high, low=low, fast=fast, slow=slow, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def natr(self, length=None, mamode=None, scalar=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = natr(high=high, low=low, close=close, length=length, mamode=mamode, scalar=scalar, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def pdist(self, drift=None, offset=None, **kwargs): - open_ = self._get_column(kwargs.pop("open", "open")) - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = pdist(open_=open_, high=high, low=low, close=close, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def rvi(self, length=None, scalar=None, refined=None, thirds=None, mamode=None, drift=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = rvi(high=high, low=low, close=close, length=length, scalar=scalar, refined=refined, thirds=thirds, mamode=mamode, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def thermo(self, long=None, short= None, length=None, mamode=None, drift=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - result = thermo(high=high, low=low, long=long, short=short, length=length, mamode=mamode, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def true_range(self, drift=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - result = true_range(high=high, low=low, close=close, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def ui(self, length=None, scalar=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - result = ui(close=close, length=length, scalar=scalar, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - # Volume - def ad(self, open_=None, signed=True, offset=None, **kwargs): - if open_ is not None: - open_ = self._get_column(kwargs.pop("open", "open")) - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - volume = self._get_column(kwargs.pop("volume", "volume")) - result = ad(high=high, low=low, close=close, volume=volume, open_=open_, signed=signed, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def adosc(self, open_=None, fast=None, slow=None, signed=True, offset=None, **kwargs): - if open_ is not None: - open_ = self._get_column(kwargs.pop("open", "open")) - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - volume = self._get_column(kwargs.pop("volume", "volume")) - result = adosc(high=high, low=low, close=close, volume=volume, open_=open_, fast=fast, slow=slow, signed=signed, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def aobv(self, fast=None, slow=None, mamode=None, max_lookback=None, min_lookback=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - volume = self._get_column(kwargs.pop("volume", "volume")) - result = aobv(close=close, volume=volume, fast=fast, slow=slow, mamode=mamode, max_lookback=max_lookback, min_lookback=min_lookback, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def cmf(self, open_=None, length=None, offset=None, **kwargs): - if open_ is not None: - open_ = self._get_column(kwargs.pop("open", "open")) - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - volume = self._get_column(kwargs.pop("volume", "volume")) - result = cmf(high=high, low=low, close=close, volume=volume, open_=open_, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def efi(self, length=None, mamode=None, offset=None, drift=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - volume = self._get_column(kwargs.pop("volume", "volume")) - result = efi(close=close, volume=volume, length=length, offset=offset, mamode=mamode, drift=drift, **kwargs) - return self._post_process(result, **kwargs) - - def eom(self, length=None, divisor=None, offset=None, drift=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - volume = self._get_column(kwargs.pop("volume", "volume")) - result = eom(high=high, low=low, close=close, volume=volume, length=length, divisor=divisor, offset=offset, drift=drift, **kwargs) - return self._post_process(result, **kwargs) - - def kvo(self, fast=None, slow=None, length_sig=None, mamode=None, offset=None, drift=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - volume = self._get_column(kwargs.pop("volume", "volume")) - result = kvo(high=high, low=low, close=close, volume=volume, fast=fast, slow=slow, length_sig=length_sig, mamode=mamode, offset=offset, drift=drift, **kwargs) - return self._post_process(result, **kwargs) - - def mfi(self, length=None, drift=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - volume = self._get_column(kwargs.pop("volume", "volume")) - result = mfi(high=high, low=low, close=close, volume=volume, length=length, drift=drift, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def nvi(self, length=None, initial=None, signed=True, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - volume = self._get_column(kwargs.pop("volume", "volume")) - result = nvi(close=close, volume=volume, length=length, initial=initial, signed=signed, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def obv(self, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - volume = self._get_column(kwargs.pop("volume", "volume")) - result = obv(close=close, volume=volume, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def pvi(self, length=None, initial=None, mamode=None, overlay=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - volume = self._get_column(kwargs.pop("volume", "volume")) - result = pvi(close=close, volume=volume, length=length, initial=initial, mamode=mamode, overlay=overlay, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def pvo(self, fast=None, slow=None, signal=None, scalar=None, offset=None, **kwargs): - volume = self._get_column(kwargs.pop("volume", "volume")) - result = pvo(volume=volume, fast=fast, slow=slow, signal=signal, scalar=scalar, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def pvol(self, volume=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - volume = self._get_column(kwargs.pop("volume", "volume")) - result = pvol(close=close, volume=volume, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def pvr(self, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - volume = self._get_column(kwargs.pop("volume", "volume")) - result = pvr(close=close, volume=volume) - return self._post_process(result, **kwargs) - - def pvt(self, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - volume = self._get_column(kwargs.pop("volume", "volume")) - result = pvt(close=close, volume=volume, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def tsv(self, length=None, signal=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - volume = self._get_column(kwargs.pop("volume", "volume")) - result = tsv(close=close, volume=volume, signal=signal, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def vhm(self, length=None, std_length=None, offset=None, **kwargs): - volume = self._get_column(kwargs.pop("volume", "volume")) - result = vhm(volume=volume, length=length, std_length=std_length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def vwap(self, anchor=None, offset=None, **kwargs): - high = self._get_column(kwargs.pop("high", "high")) - low = self._get_column(kwargs.pop("low", "low")) - close = self._get_column(kwargs.pop("close", "close")) - volume = self._get_column(kwargs.pop("volume", "volume")) - - if not self.datetime_ordered(): - volume.index = self._df.index - - result = vwap(high=high, low=low, close=close, volume=volume, anchor=anchor, offset=offset, **kwargs) - return self._post_process(result, **kwargs) - - def vwma(self, volume=None, length=None, offset=None, **kwargs): - close = self._get_column(kwargs.pop("close", "close")) - volume = self._get_column(kwargs.pop("volume", "volume")) - result = vwma(close=close, volume=volume, length=length, offset=offset, **kwargs) - return self._post_process(result, **kwargs) diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/custom.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/custom.py deleted file mode 100644 index 2af2044c..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/custom.py +++ /dev/null @@ -1,177 +0,0 @@ -# -*- coding: utf-8 -*- -import importlib -import os -import sys -import types -from glob import glob -from os.path import abspath, basename, exists, join, splitext - -import pandas_ta -from pandas_ta._typing import DictLike - - - -def bind(name: str, fn: types.FunctionType, method: types.MethodType = None): - """Bind - - Helper function to bind the function and class method defined in a custom - indicator module to the active pandas_ta instance. - - Parameters: - name (str): The name of the indicator within pandas_ta - fn (types.FunctionType): The indicator function - method (types.MethodType): The class method corresponding to the passed function - """ - setattr(pandas_ta, name, fn) - setattr(pandas_ta.AnalysisIndicators, name, method) - - -def create_dir(path: str, categories: bool = True, verbose: bool = True): - """Create Dir - - Sets up a suitable folder structure for working with custom indicators. - Use it **once** to setup and initialize the custom folder. - - Parameters: - path (str): Indicator directory full path - categories (bool): Create category sub-folders - verbose (bool): Verbose output - """ - - # ensure that the passed directory exists / is readable - if not exists(path): - os.makedirs(path) - if verbose: - print(f"[i] Created main directory '{path}'.") - - # list the contents of the directory - # dirs = glob(abspath(join(path, '*'))) - - # optionally add any missing category subdirectories - if categories: - for _ in [*pandas_ta.Category]: - d = abspath(join(path, _)) - if not exists(d): - os.makedirs(d) - if verbose: - dirname = basename(d) - print(f"[i] Created an empty sub-directory '{dirname}'.") - - -def get_module_functions(module: types.ModuleType) -> DictLike: - """Get Module Functions - - Returns a dictionary with the mapping: "name" to a _function_. - - Parameters: - module (types.ModuleType): python module - - Returns: - (DictLike): Returns a dictionary with the mapping: "name" to a _function_ - - Example: - Example return - ```py - { - "func1_name": func1, - "func2_name": func2, # ... - } - ``` - """ - module_functions = {} - - for name, item in vars(module).items(): - if isinstance(item, types.FunctionType): - module_functions[name] = item - - return module_functions - - -def import_dir(path: str, verbose: bool = True): - """Import Dir - - Import a directory of custom (proprietary) indicators into Pandas TA. - - Parameters: - path (str): Full path to indicator directory. - verbose (bool): Output process to STDOUT. - """ - # ensure that the passed directory exists / is readable - if not exists(path): - print(f"[X] Unable to read the directory '{path}'.") - return - - # list the contents of the directory - dirs = glob(abspath(join(path, "*"))) - - # traverse full directory, importing all modules found there - for d in dirs: - dirname = basename(d) - - # only look in directories which are valid pandas_ta categories - if dirname not in [*pandas_ta.Category]: - if verbose and dirname not in ["__pycache__", "__init__.py"]: - print( - f"[i] Skipping the sub-directory '{dirname}' since it's not a valid pandas_ta category." - ) - continue - - # for each module found in that category (directory)... - for module in glob(abspath(join(path, dirname, "*.py"))): - module_name = splitext(basename(module))[0] - if module_name not in ["__init__"]: - # ensure that the supplied path is included in our python path - if d not in sys.path: - sys.path.append(d) - - # (re)load the indicator module - module_functions = load_indicator_module(module_name) - - # figure out which of the modules functions to bind to pandas_ta - _callable = module_functions.get(module_name, None) - _method_callable = module_functions.get(f"{module_name}_method", None) - - if _callable == None: - print( - f"[X] Unable to find a function named '{module_name}' in the module '{module_name}.py'." - ) - continue - if _method_callable == None: - missing_method = f"{module_name}_method" - print( - f"[X] Unable to find a method function named '{missing_method}' in the module '{module_name}.py'." - ) - continue - - # add it to the correct category if it's not there yet - if module_name not in pandas_ta.Category[dirname]: - pandas_ta.Category[dirname].append(module_name) - - bind(module_name, _callable, _method_callable) - if verbose: - print( - f"[i] Successfully imported the custom indicator '{module}' into category '{dirname}'." - ) - - -def load_indicator_module(name: str) -> dict: - """ - Helper function to (re)load an indicator module. - - Returns: - dict: module functions mapping - ```{ - "func1_name": func1, - "func2_name": func2, # ... - }``` - - """ - try: - module = importlib.import_module(name) - except Exception as ex: - print(f"[X] An error occurred when attempting to load module {name}: {ex}") - sys.exit(1) - - # reload to refresh previously loaded module - module = importlib.reload(module) - return get_module_functions(module) diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/cycle/__init__.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/cycle/__init__.py deleted file mode 100644 index ae54cda9..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/cycle/__init__.py +++ /dev/null @@ -1,8 +0,0 @@ -# -*- coding: utf-8 -*- -from .ebsw import ebsw -from .reflex import reflex - -__all__ = [ - "ebsw", - "reflex", -] diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/cycle/ebsw.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/cycle/ebsw.py deleted file mode 100644 index a1824569..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/cycle/ebsw.py +++ /dev/null @@ -1,142 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import cos, exp, mean, nan, pi, roll, sin, sqrt, zeros -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_bool, v_offset, v_pos_default, v_series - - - -def ebsw( - close: Series, length: Int = None, bars: Int = None, - initial_version: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Even Better SineWave - - This indicator attempts to quantify market cycles using a low pass filter. - - Sources: - * [rengel8](https://github.com/rengel8) - * J.F.Ehlers 'Cycle Analytics for Traders', 2014 - * [Pandas TA Issue #350](https://github.com/twopirllc/pandas-ta/issues/350) - * [Proreal Code](https://www.prorealcode.com/prorealtime-indicators/even-better-sinewave/) - - Parameters: - close (Series): ```close``` Series - length (int): Max cycle/trend period. Values between ```40-48``` work - as expected with minimum value: ```39```. Default: ```40``` - bars (int): Period of low pass filtering. Default: ```10``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): Replaces ```na```'s with ```value```. - - Returns: - (Series): 1 column - - Note: - The _default_ is more cycle oriented and seems to be less - whipsaw-prune. The older version might offer earlier signals at medium - and stronger reversals. Compared to TradingView, returns very close - results but appears to be one bar earlier. - """ - # Validate - length = v_pos_default(length, 40) - close = v_series(close, length) - - if close is None: - return - - initial_version = v_bool(initial_version, False) - bars = v_pos_default(bars, 10) - offset = v_offset(offset) - - # Calculate - # allow initial version to be used (more responsive/caution!) - m = close.size - if isinstance(initial_version, bool) and initial_version: - # not the default version that is active - alpha1 = hp = 0 # alpha and HighPass - a1 = b1 = c1 = c2 = c3 = 0 - filter_ = power_ = wave = 0 - lastClose = lastHP = 0 - filtHist = [0, 0] # Filter history - - result = [nan for _ in range(0, length - 1)] + [0] - for i in range(length, m): - # HighPass filter cyclic components whose periods are shorter than - # Duration input - alpha1 = (1 - sin(360 / length)) / cos(360 / length) - hp = 0.5 * (1 + alpha1) * (close.iloc[i] - lastClose) + alpha1 * lastHP - - # Smooth with a Super Smoother Filter from equation 3-3 - a1 = exp(-sqrt(2) * pi / bars) - b1 = 2 * a1 * cos(sqrt(2) * 180 / bars) - c2 = b1 - c3 = -1 * a1 * a1 - c1 = 1 - c2 - c3 - filter_ = 0.5 * c1 * (hp + lastHP) + c2 * \ - filtHist[1] + c3 * filtHist[0] - # filter_ = float("{:.8f}".format(float(filter_))) # to fix for - # small scientific notations, the big ones fail - - # 3 Bar average of wave amplitude and power - wave = (filter_ + filtHist[1] + filtHist[0]) / 3 - power_ = (filter_ * filter_ + filtHist[1] * filtHist[1] \ - + filtHist[0] * filtHist[0]) / 3 - # Normalize the Average Wave to Square Root of the Average Power - wave = wave / sqrt(power_) - - # update storage, result - filtHist.append(filter_) # append new filter_ value - # remove first element of list (left) -> updating/trim - filtHist.pop(0) - lastHP = hp - lastClose = close.iloc[i] - result.append(wave) - - else: # Default - lastHP = lastClose = 0 - filtHist = zeros(3) - result = [nan] * (length - 1) + [0] - - angle = 2 * pi / length - alpha1 = (1 - sin(angle)) / cos(angle) - ang = 2 ** .5 * pi / bars - a1 = exp(-ang) - c2 = 2 * a1 * cos(ang) - c3 = -a1 ** 2 - c1 = 1 - c2 - c3 - - for i in range(length, m): - hp = 0.5 * (1 + alpha1) * (close.iloc[i] - lastClose) + alpha1 * lastHP - - # Rotate filters to overwrite oldest value - filtHist = roll(filtHist, -1) - filtHist[-1] = 0.5 * c1 * \ - (hp + lastHP) + c2 * filtHist[1] + c3 * filtHist[0] - - # Wave calculation - wave = mean(filtHist) - rms = sqrt(mean(filtHist ** 2)) - wave = wave / rms - - # Update past values - lastHP = hp - lastClose = close.iloc[i] - result.append(wave) - - ebsw = Series(result, index=close.index) - - # Offset - if offset != 0: - ebsw = ebsw.shift(offset) - - # Fill - if "fillna" in kwargs: - ebsw.fillna(kwargs["fillna"], inplace=True) - # Name and Category - ebsw.name = f"EBSW_{length}_{bars}" - ebsw.category = "cycle" - - return ebsw diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/cycle/reflex.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/cycle/reflex.py deleted file mode 100644 index c5d24111..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/cycle/reflex.py +++ /dev/null @@ -1,115 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from numpy import cos, exp, nan, sqrt, zeros_like -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import v_offset, v_pos_default, v_series - - - -@njit(cache=True) -def np_reflex(x, n, k, alpha, pi, sqrt2): - m, ratio = x.size, 2 * sqrt2 / k - a = exp(-pi * ratio) - b = 2 * a * cos(180 * ratio) - c = a * a - b + 1 - - _f = zeros_like(x) - _ms = zeros_like(x) - result = zeros_like(x) - - for i in range(2, m): - _f[i] = 0.5 * c * (x[i] + x[i - 1]) + b * _f[i - 1] - a * a * _f[i - 2] - - for i in range(n, m): - slope = (_f[i - n] - _f[i]) / n - - _sum = 0 - for j in range(1, n): - _sum += _f[i] - _f[i - j] + j * slope - _sum /= n - - _ms[i] = alpha * _sum * _sum + (1 - alpha) * _ms[i - 1] - if _ms[i] != 0.0: - result[i] = _sum / sqrt(_ms[i]) - - return result - - -def reflex( - close: Series, length: Int = None, - smooth: Int = None, alpha: IntFloat = None, - pi: IntFloat = None, sqrt2: IntFloat = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Reflex - - This cycle indicator, by John F. Ehlers, attempts to reduce lag. - - Sources: - * [rengel8](https://github.com/rengel8) (2021-08-11) based on the - implementation from "ProRealCode" - * [traders.com](http://traders.com/Documentation/FEEDbk_docs/2020/02/TradersTips.html) - * [prorealcode](https://www.prorealcode.com/prorealtime-indicators/reflex-and-trendflex-indicators-john-f-ehlers/) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```20``` - smooth (int): SuperSmoother period. Default: ```20``` - alpha (float): Alpha weight of Difference Sums. Default: ```0.04``` - pi (float): Ehlers's truncated value: ```3.14159```. - Default: ```3.14159``` - sqrt2 (float): Ehlers's truncated value: ```1.414```. - Default: ```1.414``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): Replaces ```na```'s with ```value```. - - Returns: - (Series): 1 column - - Tip: - This implementation has a separate control parameter for the - internal applied SuperSmoother. - - Note: - John F. Ehlers introduced two indicators within the article - "Reflex: A New Zero-Lag Indicator” in February 2020, TASC magazine. - One of which is Reflex, a lag reduced cycle indicator. Both indicators - (Reflex/Trendflex) are oscillators that complement each other with the - focus for cycle and trend. - """ - # Validate - length = v_pos_default(length, 20) - smooth = v_pos_default(smooth, 20) - _length = max(length, smooth) + 1 - close = v_series(close, _length) - - if close is None: - return - - alpha = v_pos_default(alpha, 0.04) - pi = v_pos_default(pi, 3.14159) - sqrt2 = v_pos_default(sqrt2, 1.414) - offset = v_offset(offset) - - # Calculate - np_close = close.to_numpy() - result = np_reflex(np_close, length, smooth, alpha, pi, sqrt2) - result[:length] = nan - result = Series(result, index=close.index) - - # Offset - if offset != 0: - result = result.shift(offset) - - # Fill - if "fillna" in kwargs: - result.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - result.name = f"REFLEX_{length}_{smooth}_{alpha}" - result.category = "cycle" - - return result diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/ma.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/ma.py deleted file mode 100644 index 92a0814f..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/ma.py +++ /dev/null @@ -1,75 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike -from pandas_ta.overlap.dema import dema -from pandas_ta.overlap.ema import ema -from pandas_ta.overlap.fwma import fwma -from pandas_ta.overlap.hma import hma -from pandas_ta.overlap.linreg import linreg -from pandas_ta.overlap.midpoint import midpoint -from pandas_ta.overlap.pwma import pwma -from pandas_ta.overlap.rma import rma -from pandas_ta.overlap.sinwma import sinwma -from pandas_ta.overlap.sma import sma -from pandas_ta.overlap.ssf import ssf -from pandas_ta.overlap.swma import swma -from pandas_ta.overlap.t3 import t3 -from pandas_ta.overlap.tema import tema -from pandas_ta.overlap.trima import trima -from pandas_ta.overlap.vidya import vidya -from pandas_ta.overlap.wma import wma - - - - -def ma(name: str = None, source: Series = None, **kwargs: DictLike) -> Series: - """MA Selection Utility - - Available MAs: dema, ema, fwma, hma, linreg, midpoint, pwma, rma, - sinwma, sma, ssf, swma, t3, tema, trima, vidya, wma. - - Parameters: - name (str): One of the Available MAs. Default: "ema" - source (Series): Input Series ```source```. - - Other Parameters: - kwargs (**kwargs): Additional args for the MA. - - Returns: - (Series): Selected MA - - Esourceample: - ```py linenums="0" - ema8 = ta.ma("ema", df.close, length=8) - sma50 = ta.ma("sma", df.close, length=50) - pwma10 = ta.ma("pwma", df.close, length=10, asc=False) - ``` - """ - _mas = [ - "dema", "ema", "fwma", "hma", "linreg", "midpoint", "pwma", "rma", - "sinwma", "sma", "ssf", "swma", "t3", "tema", "trima", "vidya", "wma" - ] - if name is None and source is None: - return _mas - elif isinstance(name, str) and name.lower() in _mas: - name = name.lower() - else: # "ema" - name = _mas[1] - - if name == "dema": return dema(source, **kwargs) - elif name == "fwma": return fwma(source, **kwargs) - elif name == "hma": return hma(source, **kwargs) - elif name == "linreg": return linreg(source, **kwargs) - elif name == "midpoint": return midpoint(source, **kwargs) - elif name == "pwma": return pwma(source, **kwargs) - elif name == "rma": return rma(source, **kwargs) - elif name == "sinwma": return sinwma(source, **kwargs) - elif name == "sma": return sma(source, **kwargs) - elif name == "ssf": return ssf(source, **kwargs) - elif name == "swma": return swma(source, **kwargs) - elif name == "t3": return t3(source, **kwargs) - elif name == "tema": return tema(source, **kwargs) - elif name == "trima": return trima(source, **kwargs) - elif name == "vidya": return vidya(source, **kwargs) - elif name == "wma": return wma(source, **kwargs) - else: return ema(source, **kwargs) diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/maps.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/maps.py deleted file mode 100644 index 81fef8c3..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/maps.py +++ /dev/null @@ -1,90 +0,0 @@ -# -*- coding: utf-8 -*- -from importlib.util import find_spec -from pandas_ta._typing import Dict, IntFloat, ListStr - - -Imports: Dict[str, bool] = { - "talib": find_spec("talib") is not None, - "vectorbt": find_spec("vectorbt") is not None, - "yfinance": find_spec("yfinance") is not None, -} - - -# Not ideal and not dynamic but it works. -# TODO: find a dynamic solution later. -Category: Dict[str, ListStr] = { - "candle": [ - "cdl_pattern", "cdl_z", "ha" - ], - "cycle": ["ebsw", "reflex"], - "momentum": [ - "ao", "apo", "bias", "bop", "brar", "cci", "cfo", "cg", "cmo", - "coppock", "crsi", "cti", "er", "eri", "exhc", "fisher", - "inertia", "kdj", "kst", "macd", "mom", "pgo", "ppo", "psl", "qqe", - "roc", "rsi", "rsx", "rvgi", "slope", "smc", "smi", "squeeze", - "squeeze_pro", "stc", "stoch", "stochf", "stochrsi", "tmo", "trix", - "tsi", "uo", "willr" - ], - "overlap": [ - "alligator", "alma", "dema", "ema", "fwma", "hilo", "hl2", "hlc3", - "hma", "hwma", "ichimoku", "jma", "kama", "linreg", "mama", - "mcgd", "midpoint", "midprice", "ohlc4", "pivots", "pwma", "rma", - "sinwma", "sma", "smma", "ssf", "ssf3", "supertrend", "swma", "t3", - "tema", "trima", "vidya", "wcp", "wma", "zlma" - ], - "performance": ["log_return", "percent_return"], - "statistics": [ - "entropy", "kurtosis", "mad", "median", "quantile", "skew", "stdev", - "tos_stdevall", "variance", "zscore" - ], - "trend": [ - "adx", "alphatrend", "amat", "aroon", "chop", "cksp", "decay", - "decreasing", "dpo", "ht_trendline", "increasing", - "long_run", "psar", "qstick", "rwi", "short_run", "trendflex", - "vhf", "vortex", "zigzag" - ], - "volatility": [ - "aberration", "accbands", "atr", "atrts", "bbands", "chandelier_exit", - "donchian", "hwc", "kc", "massi", "natr", "pdist", "rvi", "thermo", - "true_range", "ui" - ], - # Note: "vp" or "Volume Profile" is excluded since it does not - # return a Time Series - "volume": [ - "ad", "adosc", "aobv", "cmf", "efi", "eom", "kvo", "mfi", "nvi", - "obv", "pvi", "pvo", "pvol", "pvr", "pvt", "tsv", "vhm", "vwap", - "vwma" - ], -} - - -CANDLE_AGG: Dict[str, str] = { - "open": "first", - "high": "max", - "low": "min", - "close": "last", - "volume": "sum" -} - - -# https://www.worldtimezone.com/markets24.php -EXCHANGE_TZ: Dict[str, IntFloat] = { - "NZSX": 12, "ASX": 11, - "TSE": 9, "HKE": 8, "SSE": 8, "SGX": 8, - "NSE": 5.5, "DIFX": 4, "RTS": 3, - "JSE": 2, "FWB": 1, "LSE": 1, - "BMF": -2, "NYSE": -4, "TSX": -4, - "GENR": 0 # Generated Data -} - - -RATE: Dict[str, IntFloat] = { - "DAYS_PER_MONTH": 21, - "MINUTES_PER_HOUR": 60, - "MONTHS_PER_YEAR": 12, - "QUARTERS_PER_YEAR": 4, - "TRADING_DAYS_PER_YEAR": 252, # Keep even - "TRADING_HOURS_PER_DAY": 6.5, - "WEEKS_PER_YEAR": 52, - "YEARLY": 1, -} diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/__init__.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/__init__.py deleted file mode 100644 index f773d51f..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/__init__.py +++ /dev/null @@ -1,93 +0,0 @@ -# -*- coding: utf-8 -*- -from .ao import ao -from .apo import apo -from .bias import bias -from .bop import bop -from .brar import brar -from .cci import cci -from .cfo import cfo -from .cg import cg -from .cmo import cmo -from .coppock import coppock -from .crsi import crsi -from .cti import cti -from .dm import dm -from .er import er -from .eri import eri -from .exhc import exhc -from .fisher import fisher -from .inertia import inertia -from .kdj import kdj -from .kst import kst -from .macd import macd -from .mom import mom -from .pgo import pgo -from .ppo import ppo -from .psl import psl -from .qqe import qqe -from .roc import roc -from .rsi import rsi -from .rsx import rsx -from .rvgi import rvgi -from .slope import slope -from .smc import smc -from .smi import smi -from .squeeze import squeeze -from .squeeze_pro import squeeze_pro -from .stc import stc -from .stoch import stoch -from .stochf import stochf -from .stochrsi import stochrsi -from .tmo import tmo -from .trix import trix -from .tsi import tsi -from .uo import uo -from .willr import willr - - -__all__ = [ - "ao", - "apo", - "bias", - "bop", - "brar", - "cci", - "cfo", - "cg", - "cmo", - "coppock", - "crsi", - "cti", - "dm", - "er", - "eri", - "exhc", - "fisher", - "inertia", - "kdj", - "kst", - "macd", - "mom", - "pgo", - "ppo", - "psl", - "qqe", - "roc", - "rsi", - "rsx", - "rvgi", - "slope", - "smc", - "smi", - "squeeze", - "squeeze_pro", - "stc", - "stoch", - "stochf", - "stochrsi", - "tmo", - "trix", - "tsi", - "uo", - "willr", -] diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/ao.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/ao.py deleted file mode 100644 index 71399528..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/ao.py +++ /dev/null @@ -1,66 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.overlap import sma -from pandas_ta.utils import v_offset, v_pos_default, v_series - - - -def ao( - high: Series, low: Series, fast: Int = None, slow: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Awesome Oscillator - - This indicator attempts to identify momentum with the intention to - affirm trends or anticipate possible reversals. - - Sources: - * [ifcm](https://www.ifcm.co.uk/ntx-indicators/awesome-oscillator) - * [tradingview](https://www.tradingview.com/wiki/Awesome_Oscillator_(AO)) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - fast (int): Fast period. Default: ```5``` - slow (int): Slow period. Default: ```34``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - fast = v_pos_default(fast, 5) - slow = v_pos_default(slow, 34) - if slow < fast: - fast, slow = slow, fast - _length = max(fast, slow) - high = v_series(high, _length) - low = v_series(low, _length) - - if high is None or low is None: - return - - offset = v_offset(offset) - - # Calculate - median_price = 0.5 * (high + low) - fast_sma = sma(median_price, fast) - slow_sma = sma(median_price, slow) - ao = fast_sma - slow_sma - - # Offset - if offset != 0: - ao = ao.shift(offset) - - # Fill - if "fillna" in kwargs: - ao.fillna(kwargs["fillna"], inplace=True) - # Name and Category - ao.name = f"AO_{fast}_{slow}" - ao.category = "momentum" - - return ao diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/apo.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/apo.py deleted file mode 100644 index 16775968..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/apo.py +++ /dev/null @@ -1,75 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.maps import Imports -from pandas_ta.utils import tal_ma, v_mamode, v_offset -from pandas_ta.utils import v_pos_default, v_series, v_talib - - - -def apo( - close: Series, fast: Int = None, slow: Int = None, - mamode: str = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Absolute Price Oscillator - - This indicator attempts to quantify momentum. - - Sources: - * [tradingtechnologies](https://www.tradingtechnologies.com/xtrader-help/x-study/technical-indicator-definitions/absolute-price-oscillator-apo/) - - Parameters: - close (Series): ```close``` Series - fast (int): Fast period. Default: ```12``` - slow (int): Slow period. Default: ```26``` - mamode (str): See ```help(ta.ma)```. Default: ```"sma"``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - * Simply the difference of two different EMAs. - * APO and MACD lines are equivalent. - """ - # Validate - fast = v_pos_default(fast, 12) - slow = v_pos_default(slow, 26) - if slow < fast: - fast, slow = slow, fast - close = v_series(close, max(fast, slow)) - - if close is None: - return - - mamode = v_mamode(mamode, "sma") - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import APO - apo = APO(close, fast, slow, tal_ma(mamode)) - else: - fastma = ma(mamode, close, length=fast, talib=mode_tal) - slowma = ma(mamode, close, length=slow, talib=mode_tal) - apo = fastma - slowma - - # Offset - if offset != 0: - apo = apo.shift(offset) - - # Fill - if "fillna" in kwargs: - apo.fillna(kwargs["fillna"], inplace=True) - # Name and Category - apo.name = f"APO_{fast}_{slow}" - apo.category = "momentum" - - return apo diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/bias.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/bias.py deleted file mode 100644 index ad7e030b..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/bias.py +++ /dev/null @@ -1,59 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.utils import v_mamode, v_offset, v_pos_default, v_series - - - -def bias( - close: Series, length: Int = None, mamode: str = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Bias - - This indicator computes the Rate of Change between the source and a - moving average. - - Sources: - * Few internet resources on definitive definition. - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```26``` - mamode (str): See ```help(ta.ma)```. Default: ```"sma"``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 26) - close = v_series(close, length) - - if close is None: - return - - mamode = v_mamode(mamode, "sma") - offset = v_offset(offset) - - # Calculate - bma = ma(mamode, close, length=length, **kwargs) - bias = (close / bma) - 1 - - # Offset - if offset != 0: - bias = bias.shift(offset) - - # Fill - if "fillna" in kwargs: - bias.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - bias.name = f"BIAS_{bma.name}" - bias.category = "momentum" - - return bias diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/bop.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/bop.py deleted file mode 100644 index 23740edd..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/bop.py +++ /dev/null @@ -1,73 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - non_zero_range, - v_offset, - v_scalar, - v_series, - v_talib -) - - - -def bop( - open_: Series, high: Series, low: Series, close: Series, - scalar: IntFloat = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Balance of Power - - This indicator attempts to quantify the market strength of buyers - versus sellers. - - Sources: - * [worden](http://www.worden.com/TeleChartHelp/Content/Indicators/Balance_of_Power.htm) - - Parameters: - open_ (Series): ```open``` Series - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - scalar (float): Scalar. Default: ```1``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - open_ = v_series(open_) - high = v_series(high) - low = v_series(low) - close = v_series(close) - scalar = v_scalar(scalar, 1) - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal and close.size: - from talib import BOP - bop = BOP(open_, high, low, close) - else: - high_low_range = non_zero_range(high, low) - close_open_range = non_zero_range(close, open_) - bop = scalar * close_open_range / high_low_range - - # Offset - if offset != 0: - bop = bop.shift(offset) - - # Fill - if "fillna" in kwargs: - bop.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - bop.name = f"BOP" - bop.category = "momentum" - - return bop diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/brar.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/brar.py deleted file mode 100644 index c54b93e6..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/brar.py +++ /dev/null @@ -1,93 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import ( - non_zero_range, - v_drift, - v_offset, - v_pos_default, - v_scalar, - v_series -) - - - -def brar( - open_: Series, high: Series, low: Series, close: Series, - length: Int = None, scalar: IntFloat = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """BRAR - - BR and AR - - Sources: - * No internet resources on definitive definition. - - Parameters: - open_ (Series): ```open``` Series - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```26``` - scalar (float): Scalar. Default: ```100``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - """ - # Validate - length = v_pos_default(length, 26) - open_ = v_series(open_, length) - high = v_series(high, length) - low = v_series(low, length) - close = v_series(close, length) - - if open_ is None or high is None or low is None or close is None: - return - - scalar = v_scalar(scalar, 100) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - high_open_range = non_zero_range(high, open_) - open_low_range = non_zero_range(open_, low) - hcy = non_zero_range(high, close.shift(drift)) - cyl = non_zero_range(close.shift(drift), low) - - hcy[hcy < 0] = 0 # Zero negative values - cyl[cyl < 0] = 0 # "" - - ar = scalar * high_open_range.rolling(length).sum() \ - / open_low_range.rolling(length).sum() - - br = scalar * hcy.rolling(length).sum() \ - / cyl.rolling(length).sum() - - # Offset - if offset != 0: - ar = ar.shift(offset) - br = ar.shift(offset) - - # Fill - if "fillna" in kwargs: - ar.fillna(kwargs["fillna"], inplace=True) - br.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{length}" - ar.name = f"AR{_props}" - br.name = f"BR{_props}" - ar.category = br.category = "momentum" - - data = {ar.name: ar, br.name: br} - df = DataFrame(data, index=close.index) - df.name = f"BRAR{_props}" - df.category = "momentum" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cci.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cci.py deleted file mode 100644 index 1d7071aa..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cci.py +++ /dev/null @@ -1,75 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.maps import Imports -from pandas_ta.overlap import hlc3, sma -from pandas_ta.statistics import mad -from pandas_ta.utils import v_offset, v_pos_default, v_series, v_talib - - - -def cci( - high: Series, low: Series, close: Series, length: Int = None, - c: IntFloat = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Commodity Channel Index - - This indicator attempts to identify "overbought" and "oversold" levels - relative to a mean. - - Sources: - * [tradingview](https://www.tradingview.com/wiki/Commodity_Channel_Index_(CCI)) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```14``` - c (float): Scaling Constant. Default: ```0.015``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 14) - high = v_series(high, length) - low = v_series(low, length) - close = v_series(close, length) - - if high is None or low is None or close is None: - return - - c = v_pos_default(c, 0.015) - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import CCI - cci = CCI(high, low, close, length) - else: - typical_price = hlc3(high=high, low=low, close=close, talib=mode_tal) - mean_typical_price = sma(typical_price, length=length, talib=mode_tal) - mad_typical_price = mad(typical_price, length=length) - - cci = typical_price - mean_typical_price / (c * mad_typical_price) - - # Offset - if offset != 0: - cci = cci.shift(offset) - - # Fill - if "fillna" in kwargs: - cci.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - cci.name = f"CCI_{length}_{c}" - cci.category = "momentum" - - return cci diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cfo.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cfo.py deleted file mode 100644 index df40aa8d..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cfo.py +++ /dev/null @@ -1,69 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.overlap import linreg -from pandas_ta.utils import ( - v_drift, - v_offset, - v_pos_default, - v_scalar, - v_series -) - - - -def cfo( - close: Series, length: Int = None, - scalar: IntFloat = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Chande Forcast Oscillator - - This indicator attempts to calculate the percentage difference between - the actual price and the Time Series Forecast (the endpoint of a - linear regression line). - - Sources: - * [fmlabs](https://www.fmlabs.com/reference/default.htm?url=ForecastOscillator.htm) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```9``` - scalar (float): Scalar. Default: ```100``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 9) - close = v_series(close, length) - - if close is None: - return - - scalar = v_scalar(scalar, 100) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - # Finding linear regression of Series - cfo = scalar * (close - linreg(close, length=length, tsf=True)) / close - - # Offset - if offset != 0: - cfo = cfo.shift(offset) - - # Fill - if "fillna" in kwargs: - cfo.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - cfo.name = f"CFO_{length}" - cfo.category = "momentum" - - return cfo diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cg.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cg.py deleted file mode 100644 index 581d48ce..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cg.py +++ /dev/null @@ -1,57 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_offset, v_pos_default, v_series, weights - - - -def cg( - close: Series, length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Center of Gravity - - This indicator, by John Ehlers, attempts to identify turning points with - minimal to zero lag and smoothing. - - Sources: - * [MESA Software](http://www.mesasoftware.com/papers/TheCGOscillator.pdf) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, length) - - if close is None: - return - - offset = v_offset(offset) - - # Calculate - coefficients = range(1, length + 1) - numerator = close.rolling(length).apply(weights(coefficients), raw=True) - cg = -numerator / close.rolling(length).sum() - - # Offset - if offset != 0: - cg = cg.shift(offset) - - # Fill - if "fillna" in kwargs: - cg.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - cg.name = f"CG_{length}" - cg.category = "momentum" - - return cg diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cmo.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cmo.py deleted file mode 100644 index 137ed7be..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cmo.py +++ /dev/null @@ -1,90 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.maps import Imports -from pandas_ta.overlap import rma -from pandas_ta.utils import ( - v_drift, - v_offset, - v_pos_default, - v_scalar, - v_series, - v_talib -) - - - -def cmo( - close: Series, length: Int = None, scalar: IntFloat = None, - talib: bool = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Chande Momentum Oscillator - - This indicator attempts to capture momentum. - - Sources: - * [tradingtechnologies](https://www.tradingtechnologies.com/help/x-study/technical-indicator-definitions/chande-momentum-oscillator-cmo/) - * [tradingview](https://www.tradingview.com/script/hdrf0fXV-Variable-Index-Dynamic-Average-VIDYA/) - - Parameters: - close (Series): ```close``` Series - scalar (float): Scalar. Default: ```100``` - talib (bool): If installed, use TA Lib. Uses EMA if ```False```. - Default: ```True``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - * Overbought around 50 - * Oversold around -50. - """ - # Validate - length = v_pos_default(length, 14) - close = v_series(close, length + 1) - - if close is None: - return - - scalar = v_scalar(scalar, 100) - mode_tal = v_talib(talib) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import CMO - cmo = CMO(close, length) - else: - mom = close.diff(drift) - positive = mom.copy().clip(lower=0) - negative = mom.copy().clip(upper=0).abs() - - if mode_tal: - pos_ = rma(positive, length) - neg_ = rma(negative, length) - else: - pos_ = positive.rolling(length).sum() - neg_ = negative.rolling(length).sum() - - cmo = scalar * (pos_ - neg_) / (pos_ + neg_) - - # Offset - if offset != 0: - cmo = cmo.shift(offset) - - # Fill - if "fillna" in kwargs: - cmo.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - cmo.name = f"CMO_{length}" - cmo.category = "momentum" - - return cmo diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/coppock.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/coppock.py deleted file mode 100644 index 8070e2ce..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/coppock.py +++ /dev/null @@ -1,70 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.overlap import wma -from pandas_ta.utils import v_offset, v_pos_default, v_series -from .roc import roc - - - -def coppock( - close: Series, length: Int = None, - fast: Int = None, slow: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Coppock Curve - - This indicator, by Edwin Coppock 1962, was originally called the - "Trendex Model", attempts to identify major upturns and downturns. - - Sources: - * [wikipedia](https://en.wikipedia.org/wiki/Coppock_curve) - - Parameters: - close (Series): ```close``` Series - length (int): WMA period. Default: ```10``` - fast (int): Fast ROC period. Default: ```11``` - slow (int): Slow ROC period. Default: ```14``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - Although designed for monthly use, a daily calculation over the same - period length can be made, converting the periods to 294-day and - 231-day rate of changes, and a 210-day WMA. - - """ - # Validate - length = v_pos_default(length, 10) - fast = v_pos_default(fast, 11) - slow = v_pos_default(slow, 14) - _length = length + fast + slow - close = v_series(close, _length) - - if close is None: - return - - offset = v_offset(offset) - - # Calculate - total_roc = roc(close, fast) + roc(close, slow) - coppock = wma(total_roc, length) - - # Offset - if offset != 0: - coppock = coppock.shift(offset) - - # Fill - if "fillna" in kwargs: - coppock.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - coppock.name = f"COPC_{fast}_{slow}_{length}" - coppock.category = "momentum" - - return coppock diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/crsi.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/crsi.py deleted file mode 100644 index 275c9b1b..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/crsi.py +++ /dev/null @@ -1,106 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.maps import Imports -from pandas_ta.momentum.rsi import rsi -from pandas_ta.utils import ( - consecutive_streak, - percent_rank, - v_drift, - v_offset, - v_pos_default, - v_scalar, - v_series, - v_talib, -) - - - -def crsi( - close: Series, rsi_length: Int = None, streak_length: Int = None, - rank_length: Int = None, scalar: IntFloat = None, - talib: bool = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike, -) -> Series: - """Connors Relative Strength Index - - This indicator attempts to identify momentum and potential reversals at - "overbought" or "oversold" conditions. - - Sources: - * [alvarezquanttrading](https://alvarezquanttrading.com/blog/connorsrsi-analysis/) - * [tradingview](https://www.tradingview.com/support/solutions/43000502017-connors-rsi-crsi/) - * An Introduction to ConnorsRSI. Connors Research Trading Strategy Series. - Connors, L., Alvarez, C., & Radtke, M. (2012). ISBN 978-0-9853072-9-5. - - Parameters: - close (Series): ```close``` Series - rsi_length (int): The RSI period. Default: ```3``` - streak_length (int): Streak RSI period. Default: ```2``` - rank_length (int): Percent Rank length. Default: ```100``` - scalar (float): Scalar. Default: ```100``` - talib (bool): If installed, use TA Lib. Default: ```True``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - rsi_length = v_pos_default(rsi_length, 3) - streak_length = v_pos_default(streak_length, 2) - rank_length = v_pos_default(rank_length, 100) - _length = max(rsi_length, streak_length, rank_length) - close = v_series(close, _length) - - if "length" in kwargs: - kwargs.pop("length") - - if close is None: - return None - - scalar = v_scalar(scalar, 100) - mode_tal = v_talib(talib) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - np_close = close.to_numpy() - streak = Series(consecutive_streak(np_close), index=close.index) - - if Imports["talib"] and mode_tal: - from talib import RSI - _rsi = RSI(close, rsi_length) - _streak_rsi = RSI(streak, streak_length) - else: - # Both TA-lib and Pandas-TA use the Wilder's RSI - # and its smoothing function - _rsi = rsi( - close, length=rsi_length, scalar=scalar, talib=talib, - drift=drift, offset=offset, **kwargs - ) - - _streak_rsi = rsi( - streak, length=streak_length, scalar=scalar, talib=talib, - drift=drift, offset=offset, **kwargs - ) - - _crsi = (_rsi + _streak_rsi + percent_rank(close, rank_length)) / 3.0 - crsi = Series(_crsi, index=close.index) - - # Offset - if offset != 0: - crsi = crsi.shift(offset) - - # Fill - if "fillna" in kwargs: - crsi.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - crsi.name = f"CRSI_{rsi_length}_{streak_length}_{rank_length}" - crsi.category = "momentum" - - return crsi diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cti.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cti.py deleted file mode 100644 index f310500f..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/cti.py +++ /dev/null @@ -1,56 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.overlap import linreg -from pandas_ta.utils import v_offset, v_pos_default, v_series - - - -def cti( - close: Series, length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Correlation Trend Indicator - - This oscillator, by John Ehlers' in 2020, attempts to identify the - magnitude and direction of a trend using linear regession. - - Note: - This is a wrapper for ```ta.linreg(close, r=True)```. - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```12``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 12) - close = v_series(close, length) - - if close is None: - return - - offset = v_offset(offset) - - # Calculate - cti = linreg(close, length=length, r=True) - - # Offset - if offset != 0: - cti = cti.shift(offset) - - # Fill - if "fillna" in kwargs: - cti.fillna(method=kwargs["fillna"], inplace=True) - - # Name and Category - cti.name = f"CTI_{length}" - cti.category = "momentum" - - return cti diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/dm.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/dm.py deleted file mode 100644 index faaa8fdd..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/dm.py +++ /dev/null @@ -1,94 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - v_drift, - v_mamode, - v_offset, - v_pos_default, - v_series, - v_talib, - zero -) - - - -def dm( - high: Series, low: Series, length: Int = None, - mamode: str = None, talib: bool = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Directional Movement - - This indicator, by J. Welles Wilder in 1978, attempts to - determine direction. - - Sources: - * [sierrachart](https://www.sierrachart.com/index.php?page=doc/StudiesReference.php&ID=24&Name=Directional_Movement_Index) - * [tradingview](https://www.tradingview.com/pine-script-reference/#fun_dmi) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - mamode (str): See ```help(ta.ma)```. Default: ```"rma"``` - talib (bool): If installed, use TA Lib. Default: ```True``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - """ - # Validate - length = v_pos_default(length, 14) - high = v_series(high, length) - low = v_series(low, length) - - if high is None or low is None: - return - - mamode = v_mamode(mamode, "rma") - mode_tal = v_talib(talib) - drift = v_drift(drift) - offset = v_offset(offset) - - if Imports["talib"] and mode_tal and high.size and low.size: - from talib import MINUS_DM, PLUS_DM - pos = PLUS_DM(high, low, length) - neg = MINUS_DM(high, low, length) - else: - up = high - high.shift(drift) - dn = low.shift(drift) - low - - pos_ = ((up > dn) & (up > 0)) * up - neg_ = ((dn > up) & (dn > 0)) * dn - - pos_ = pos_.apply(zero) - neg_ = neg_.apply(zero) - - # Not the same values as TA Lib's -+DM (Good First Issue) - pos = ma(mamode, pos_, length=length, talib=mode_tal) - neg = ma(mamode, neg_, length=length, talib=mode_tal) - - # Offset - if offset != 0: - pos = pos.shift(offset) - neg = neg.shift(offset) - - # Fill - if "fillna" in kwargs: - pos.fillna(kwargs["fillna"], inplace=True) - neg.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{length}" - data = {f"DMP{_props}": pos, f"DMN{_props}": neg} - df = DataFrame(data, index=high.index) - df.name = f"DM{_props}" - df.category = "momentum" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/er.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/er.py deleted file mode 100644 index 2a838eba..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/er.py +++ /dev/null @@ -1,93 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series, concat -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import ( - signals, - v_drift, - v_offset, - v_pos_default, - v_series -) - - - -def er( - close: Series, length: Int = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Efficiency Ratio - - This indicator, by Perry J. Kaufman, attempts to identify market noise - or volatility. - - Sources: - * "New Trading Systems and Methods", Perry J. Kaufman - * [tc2000](https://help.tc2000.com/m/69404/l/749623-kaufman-efficiency-ratio) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - It is calculated by dividing the net change in price movement over - ```n``` periods by the sum of the absolute net changes over the - same ```n``` periods. - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, length + 1) - - if close is None: - return - - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - abs_diff = close.diff(length).abs() - abs_volatility = close.diff(drift).abs() - abs_volatility_rsum = abs_volatility.rolling(window=length).sum() - - er = abs_diff / abs_volatility_rsum - - # Offset - if offset != 0: - er = er.shift(offset) - - # Fill - if "fillna" in kwargs: - er.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - er.name = f"ER_{length}" - er.category = "momentum" - - signal_indicators = kwargs.pop("signal_indicators", False) - if not signal_indicators: - return er - else: - signalsdf = concat( - [ - DataFrame({er.name: er}), - signals( - indicator=er, - xa=kwargs.pop("xa", 80), - xb=kwargs.pop("xb", 20), - xseries=kwargs.pop("xseries", None), - xseries_a=kwargs.pop("xseries_a", None), - xseries_b=kwargs.pop("xseries_b", None), - cross_values=kwargs.pop("cross_values", False), - cross_series=kwargs.pop("cross_series", True), - offset=offset, - ), - ], - axis=1, - ) - return signalsdf diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/eri.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/eri.py deleted file mode 100644 index a1c32842..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/eri.py +++ /dev/null @@ -1,75 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.overlap import ema -from pandas_ta.utils import v_offset, v_pos_default, v_series - - - -def eri( - high: Series, low: Series, close: Series, length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Elder Ray Index - - This indicator, by Dr Alexander Elder, attempts to identify market - strength. - - Sources: - * [admiralmarkets](https://admiralmarkets.com/education/articles/forex-indicators/bears-and-bulls-power-indicator) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```14``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - - Note: - * Possible entry signals when used in combination with a trend, - * Bear Power attempts to quantify lower value appeal. - * Bull Power attempts the to quantify higher value appeal. - """ - # Validate - length = v_pos_default(length, 13) - high = v_series(high, length) - low = v_series(low, length) - close = v_series(close, length) - - if high is None or low is None or close is None: - return - - offset = v_offset(offset) - - # Calculate - ema_ = ema(close, length) - bull = high - ema_ - bear = low - ema_ - - # Offset - if offset != 0: - bull = bull.shift(offset) - bear = bear.shift(offset) - - # Fill - if "fillna" in kwargs: - bull.fillna(kwargs["fillna"], inplace=True) - bear.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - bull.name = f"BULLP_{length}" - bear.name = f"BEARP_{length}" - bull.category = bear.category = "momentum" - - data = {bull.name: bull, bear.name: bear} - df = DataFrame(data, index=close.index) - df.name = f"ERI_{length}" - df.category = bull.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/exhc.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/exhc.py deleted file mode 100644 index 8e3acb33..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/exhc.py +++ /dev/null @@ -1,110 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from numpy import clip, cumsum, int64, nan, where -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import ( - nb_ffill, - nb_idiff, - v_bool, - v_int, - v_offset, - v_pos_default, - v_series -) - - - -@njit(cache=True) -def nb_exhc(x, n, cap, lb, ub, show_all): - x_diff = nb_idiff(x, n) - neg_diff, pos_diff = x_diff < 0, x_diff > 0 - - dn_csum = cumsum(neg_diff) - up_csum = cumsum(pos_diff) - - dn = dn_csum - nb_ffill(where(~neg_diff, dn_csum, nan)) - up = up_csum - nb_ffill(where(~pos_diff, up_csum, nan)) - - if cap > 0: - dn = clip(dn, 0, cap) - up = clip(up, 0, cap) - - if show_all: - dn = where(dn == 0, 0, dn) - up = where(up == 0, 0, up) - else: - between_lu = (dn >= lb) & (dn <= ub) - dn = where(between_lu, dn, 0) - up = where(between_lu, up, 0) - - return dn, up - - -def exhc( - close: Series, length: Int = None, cap: Int = None, - asint: bool = None, show_all: bool = None, nozeros: bool = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Exhaustion Count - - This indicator attempts to identify rising/falling exhaustion. - - Sources: - * [demark](https://demark.com) - * [practicaltechnicalanalysis](http://practicaltechnicalanalysis.blogspot.com/2013/01/tom-demark-sequential.html) - - Parameters: - close (Series): Series of close's - length (int): The period. Default: ```4``` - cap (int): Count cap. For no cap, set to ```0```. Default: ```13``` - show_all (bool): Counts 1 - 13. For 6 - 9, set to ```False```. - Default: ```True``` - asint (bool): Returns as ```Int```. Default: ```False``` - nozeros (bool): Replace zeros with ```np.nan```. Default: ```False``` - offset (int): Post shift. Default: ```0``` - - Returns: - (DataFrame): 2 columns - - Note: - Similar to TD Sequential - """ - # Validate - length = v_pos_default(length, 4) - close = v_series(close, length + 1) - - if close is None: - return - - cap = v_int(cap, 13, -1) - show_all = v_bool(show_all, True) - asint = v_bool(asint, False) - nozeros = v_bool(nozeros, False) - offset = v_offset(offset) - - # Calculate - np_close = close.to_numpy() - dn, up = nb_exhc(np_close, length, cap, 6, 9, show_all) - - if asint: - dn = dn.astype(int64) - up = up.astype(int64) - - # Name and Category - data = { - "EXHC_DNa" if show_all else "EXHC_DN": dn, - "EXHC_UPa" if show_all else "EXHC_UP": up - } - df = DataFrame(data, index=close.index) - df.name = "EXHCa" if show_all else "EXHC" - df.category = "momentum" - - if nozeros: - df.replace({0: nan}, inplace=True) - - # Offset - if offset != 0: - df = df.shift(offset) - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/fisher.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/fisher.py deleted file mode 100644 index 12297a60..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/fisher.py +++ /dev/null @@ -1,95 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan, log, nan -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.overlap import hl2 -from pandas_ta.utils import high_low_range, v_offset, v_pos_default, v_series - - - -def fisher( - high: Series, low: Series, length: Int = None, signal: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Fisher Transform - - This indicator attempts to identify significant reversals through - normalization. - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - length (int): The period. Default: ```9``` - signal (int): Signal period. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - - Tip: Reversal Signal - When the two lines cross. - """ - # Validate - length = v_pos_default(length, 9) - signal = v_pos_default(signal, 1) - _length = max(length, signal) - high = v_series(high, _length) - low = v_series(low, _length) - - if high is None or low is None: - return - - offset = v_offset(offset) - - # Calculate - hl2_ = hl2(high, low) - highest_hl2 = hl2_.rolling(length).max() - lowest_hl2 = hl2_.rolling(length).min() - - hlr = high_low_range(highest_hl2, lowest_hl2) - hlr[hlr < 0.001] = 0.001 - - position = ((hl2_ - lowest_hl2) / hlr) - 0.5 - - v = 0 - m = high.size - result = [nan for _ in range(0, length - 1)] + [0] - for i in range(length, m): - v = 0.66 * position.iat[i] + 0.67 * v - if v < -0.99: - v = -0.999 - if v > 0.99: - v = 0.999 - result.append(0.5 * (log((1 + v) / (1 - v)) + result[i - 1])) - - fisher = Series(result, index=high.index) - if all(isnan(fisher)): - return # Emergency Break - - signalma = fisher.shift(signal) - - # Offset - if offset != 0: - fisher = fisher.shift(offset) - signalma = signalma.shift(offset) - - # Fill - if "fillna" in kwargs: - fisher.fillna(kwargs["fillna"], inplace=True) - signalma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{length}_{signal}" - fisher.name = f"FISHERT{_props}" - signalma.name = f"FISHERTs{_props}" - fisher.category = signalma.category = "momentum" - - data = {fisher.name: fisher, signalma.name: signalma} - df = DataFrame(data, index=high.index) - df.name = f"FISHERT{_props}" - df.category = fisher.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/inertia.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/inertia.py deleted file mode 100644 index d902da35..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/inertia.py +++ /dev/null @@ -1,118 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.overlap import linreg -from pandas_ta.utils import ( - v_bool, - v_drift, - v_mamode, - v_offset, - v_pos_default, - v_scalar, - v_series -) -from pandas_ta.volatility import rvi - - - -def inertia( - close: Series, high: Series = None, low: Series = None, - length: Int = None, rvi_length: Int = None, scalar: IntFloat = None, - refined: bool = None, thirds: bool = None, - drift: Int = None, mamode: str = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Inertia - - This indicator, by Donald Dorsey, is the _rvi_ smoothed by the Least Squares - MA. - - Sources: - * Donald Dorsey, some article in September, 1995. - * [sierrachart](https://www.sierrachart.com/index.php?page=doc/StudiesReference.php&ID=285&Name=Inertia) - * [tradingview](https://www.tradingview.com/script/mLZJqxKn-Relative-Volatility-Index/) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```20``` - rvi_length (int): RVI period. Default: ```14``` - refined (bool): Use 'refined' calculation. Default: ```False``` - thirds (bool): Use 'thirds' calculation. Default: ```False``` - mamode (str): See ```help(ta.ma)```. Default: ```"ema"``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - * Negative Inertia when less than 50. - * Positive Inertia when greater than 50. - """ - # Validate - length = v_pos_default(length, 20) - rvi_length = v_pos_default(rvi_length, 14) - _length = 2 * max(length, rvi_length) - min(length, rvi_length) // 2 - 1 - close = v_series(close, _length) - - if close is None: - return - - refined = v_bool(refined, False) - thirds = v_bool(thirds, False) - - if refined or thirds: - high = v_series(high, _length) - low = v_series(low, _length) - if high is None or low is None: - return - - scalar = v_scalar(scalar, 100) - mamode = v_mamode(mamode, "ema") - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - if refined: - _mode = "r" - rvi_ = rvi( - close, high=high, low=low, length=rvi_length, - scalar=scalar, refined=refined, mamode=mamode - ) - elif thirds: - _mode = "t" - rvi_ = rvi( - close, high=high, low=low, length=rvi_length, - scalar=scalar, thirds=thirds, mamode=mamode - ) - else: - _mode = "" - rvi_ = rvi(close, length=rvi_length, scalar=scalar, mamode=mamode) - - if all(isnan(rvi_)): - return # Emergency Break - - inertia = linreg(rvi_, length=length) - if all(isnan(inertia)): - return # Emergency Break - - # Offset - if offset != 0: - inertia = inertia.shift(offset) - - # Fill - if "fillna" in kwargs: - inertia.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{length}_{rvi_length}" - inertia.name = f"INERTIA{_mode}{_props}" - inertia.category = "momentum" - - return inertia diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/kdj.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/kdj.py deleted file mode 100644 index 32c8a9a5..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/kdj.py +++ /dev/null @@ -1,94 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import ( - non_zero_range, - pd_rma, - v_offset, - v_pos_default, - v_series -) - - - -def kdj( - high: Series, low: Series, close: Series, - length: Int = None, signal: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """KDJ - - This indicator, derived from the Slow Stochastic, includes an - extra signal named the J line. The J line represents the divergence - of the %D value from the %K. - - Sources: - * [anychart](https://docs.anychart.com/Stock_Charts/Technical_Indicators/Mathematical_Description#kdj) - * [prorealcode](https://www.prorealcode.com/prorealtime-indicators/kdj/) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```9``` - signal (int): Signal period. Default: ```3``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3 columns - - Note: - The J can go beyond ```[0, 100]``` for %K and %D lines when charted. - """ - # Validate - length = v_pos_default(length, 9) - signal = v_pos_default(signal, 3) - _length = length + signal + 1 - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - offset = v_offset(offset) - - # Calculate - highest_high = high.rolling(length).max() - lowest_low = low.rolling(length).min() - - fastk = 100 * (close - lowest_low) / \ - non_zero_range(highest_high, lowest_low) - - k = pd_rma(fastk, n=signal) - d = pd_rma(k, n=signal) - j = 3 * k - 2 * d - - # Offset - if offset != 0: - k = k.shift(offset) - d = d.shift(offset) - j = j.shift(offset) - - # Fill - if "fillna" in kwargs: - k.fillna(kwargs["fillna"], inplace=True) - d.fillna(kwargs["fillna"], inplace=True) - j.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{length}_{signal}" - k.name = f"K{_props}" - d.name = f"D{_props}" - j.name = f"J{_props}" - k.category = d.category = j.category = "momentum" - - data = {k.name: k, d.name: d, j.name: j} - df = DataFrame(data, index=close.index) - df.name = f"KDJ{_props}" - df.category = "momentum" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/kst.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/kst.py deleted file mode 100644 index 00bbd517..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/kst.py +++ /dev/null @@ -1,97 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_drift, v_offset, v_pos_default, v_series -from .roc import roc - - - -def kst( - close: Series, signal: Int = None, - roc1: Int = None, roc2: Int = None, roc3: Int = None, roc4: Int = None, - sma1: Int = None, sma2: Int = None, sma3: Int = None, sma4: Int = None, - drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """'Know Sure Thing' - - This indicator, by Martin Pring, attempts to capture trends using a - smoothed indicator of four different smoothed ROCs. - - Sources: - * [incrediblecharts](https://www.incrediblecharts.com/indicators/kst.php) - * [tradingview](https://www.tradingview.com/wiki/Know_Sure_Thing_(KST)) - - Parameters: - close (Series): ```close``` Series - roc1 (int): ROC 1 period. Default: ```10``` - roc2 (int): ROC 2 period. Default: ```15``` - roc3 (int): ROC 3 period. Default: ```20``` - roc4 (int): ROC 4 period. Default: ```30``` - sma1 (int): SMA 1 period. Default: ```10``` - sma2 (int): SMA 2 period. Default: ```10``` - sma3 (int): SMA 3 period. Default: ```10``` - sma4 (int): SMA 4 period. Default: ```15``` - signal (int): Signal period. Default: ```9``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - """ - # Validate - roc1 = int(roc1) if roc1 and roc1 > 0 else 10 - roc2 = int(roc2) if roc2 and roc2 > 0 else 15 - roc3 = int(roc3) if roc3 and roc3 > 0 else 20 - roc4 = int(roc4) if roc4 and roc4 > 0 else 30 - - sma1 = int(sma1) if sma1 and sma1 > 0 else 10 - sma2 = int(sma2) if sma2 and sma2 > 0 else 10 - sma3 = int(sma3) if sma3 and sma3 > 0 else 10 - sma4 = int(sma4) if sma4 and sma4 > 0 else 15 - - signal = v_pos_default(signal, 9) - _rmax = max(roc1, roc2, roc3, roc4) - _smax = max(sma1, sma2, sma3, sma4) - _length = _rmax + _smax - close = v_series(close, _length) - - if close is None: - return - - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - rocma1 = roc(close, roc1).rolling(sma1).mean() - rocma2 = roc(close, roc2).rolling(sma2).mean() - rocma3 = roc(close, roc3).rolling(sma3).mean() - rocma4 = roc(close, roc4).rolling(sma4).mean() - - kst = 100 * (rocma1 + 2 * rocma2 + 3 * rocma3 + 4 * rocma4) - kst_signal = kst.rolling(signal).mean() - - # Offset - if offset != 0: - kst = kst.shift(offset) - kst_signal = kst_signal.shift(offset) - - # Fill - if "fillna" in kwargs: - kst.fillna(kwargs["fillna"], inplace=True) - kst_signal.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - kst.name = f"KST_{roc1}_{roc2}_{roc3}_{roc4}_{sma1}_{sma2}_{sma3}_{sma4}" - kst_signal.name = f"KSTs_{signal}" - kst.category = kst_signal.category = "momentum" - - data = {kst.name: kst, kst_signal.name: kst_signal} - df = DataFrame(data, index=close.index) - df.name = f"KST_{roc1}_{roc2}_{roc3}_{roc4}_{sma1}_{sma2}_{sma3}_{sma4}_{signal}" - df.category = "momentum" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/macd.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/macd.py deleted file mode 100644 index 791364c3..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/macd.py +++ /dev/null @@ -1,141 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import concat, DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.overlap import ema -from pandas_ta.utils import ( - signals, - v_offset, - v_pos_default, - v_series, - v_talib -) - - - -def macd( - close: Series, fast: Int = None, slow: Int = None, - signal: Int = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Moving Average Convergence Divergence - - This indicator attempts to identify trends. - - Sources: - * [tradingview](https://www.tradingview.com/wiki/MACD_(Moving_Average_Convergence/Divergence)) - * [tradingview (AS Mode)](https://tr.tradingview.com/script/YFlKXHnP/) - - Parameters: - close (Series): ```close``` Series - fast (int): Fast MA period. Default: ```12``` - slow (int): Slow MA period. Default: ```26``` - signal (int): Signal period. Default: ```9``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - asmode (value): Enable AS version of MACD. Default: ```False``` - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3 columns - """ - # Validate - fast = v_pos_default(fast, 12) - slow = v_pos_default(slow, 26) - signal = v_pos_default(signal, 9) - if slow < fast: - fast, slow = slow, fast - _length = slow + signal - 1 - close = v_series(close, _length) - - if close is None: - return - - mode_tal = v_talib(talib) - offset = v_offset(offset) - as_mode = kwargs.setdefault("asmode", False) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import MACD - macd, signalma, histogram = MACD(close, fast, slow, signal) - else: - fastma = ema(close, length=fast, talib=mode_tal) - slowma = ema(close, length=slow, talib=mode_tal) - - macd = fastma - slowma - macd_fvi = macd.loc[macd.first_valid_index():, ] - signalma = ema(close=macd_fvi, length=signal, talib=mode_tal) - histogram = macd - signalma - - if as_mode: - macd = macd - signalma - macd_fvi = macd.loc[macd.first_valid_index():, ] - signalma = ema(close=macd_fvi, length=signal, talib=mode_tal) - histogram = macd - signalma - - # Offset - if offset != 0: - macd = macd.shift(offset) - histogram = histogram.shift(offset) - signalma = signalma.shift(offset) - - # Fill - if "fillna" in kwargs: - macd.fillna(kwargs["fillna"], inplace=True) - histogram.fillna(kwargs["fillna"], inplace=True) - signalma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _asmode = "AS" if as_mode else "" - _props = f"_{fast}_{slow}_{signal}" - macd.name = f"MACD{_asmode}{_props}" - histogram.name = f"MACD{_asmode}h{_props}" - signalma.name = f"MACD{_asmode}s{_props}" - macd.category = histogram.category = signalma.category = "momentum" - - data = { - macd.name: macd, - histogram.name: histogram, - signalma.name: signalma - } - df = DataFrame(data, index=close.index) - df.name = f"MACD{_asmode}{_props}" - df.category = macd.category - - signal_indicators = kwargs.pop("signal_indicators", False) - if not signal_indicators: - return df - else: - signalsdf = concat( - [ - df, - signals( - indicator=histogram, - xa=kwargs.pop("xa", 0), - xb=kwargs.pop("xb", None), - xseries=kwargs.pop("xseries", None), - xseries_a=kwargs.pop("xseries_a", None), - xseries_b=kwargs.pop("xseries_b", None), - cross_values=kwargs.pop("cross_values", True), - cross_series=kwargs.pop("cross_series", True), - offset=offset, - ), - signals( - indicator=macd, - xa=kwargs.pop("xa", 0), - xb=kwargs.pop("xb", None), - xseries=kwargs.pop("xseries", None), - xseries_a=kwargs.pop("xseries_a", None), - xseries_b=kwargs.pop("xseries_b", None), - cross_values=kwargs.pop("cross_values", False), - cross_series=kwargs.pop("cross_series", True), - offset=offset, - ), - ], - axis=1, - ) - - return signalsdf diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/mom.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/mom.py deleted file mode 100644 index 6f6ec352..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/mom.py +++ /dev/null @@ -1,76 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - nb_idiff, - v_offset, - v_pos_default, - v_series, - v_talib -) - - - -@njit(cache=True) -def nb_mom(x, n): - return nb_idiff(x, n) - - -def mom( - close: Series, length: Int = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Momentum - - This indicator attempts to quantify speed by using the differences over - a bar length. - - Sources: - * [onlinetradingconcepts](http://www.onlinetradingconcepts.com/TechnicalAnalysis/Momentum.html) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```1``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, length + 1) - - if close is None: - return - - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import MOM - mom = MOM(close, length) - else: - np_close = close.to_numpy() - _mom = nb_mom(np_close, length) - mom = Series(_mom, index=close.index) - - # Offset - if offset != 0: - mom = mom.shift(offset) - - # Fill - if "fillna" in kwargs: - mom.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - mom.name = f"MOM_{length}" - mom.category = "momentum" - - return mom diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/pgo.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/pgo.py deleted file mode 100644 index 5fc121d8..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/pgo.py +++ /dev/null @@ -1,68 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.overlap import ema, sma -from pandas_ta.utils import v_offset, v_pos_default, v_series -from pandas_ta.volatility import atr - - - -def pgo( - high: Series, low: Series, close: Series, length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Pretty Good Oscillator - - This indicator, by Mark Johnson, attempts to identify breakouts for longer - time periods based on the distance of the current bar to its N-day - SMA, expressed in terms of an ATR over a similar length. - - Sources: - * [tradingtechnologies](https://library.tradingtechnologies.com/trade/chrt-ti-pretty-good-oscillator.html) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```14``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: Entry - * Long when greater than 3. - * Short when less than -3. - """ - # Validate - length = v_pos_default(length, 14) - _length = 2 * length - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - offset = v_offset(offset) - - # Calculate - pgo = (close - sma(close, length)) \ - / ema(atr(high, low, close, length), length) - - # Offset - if offset != 0: - pgo = pgo.shift(offset) - - # Fill - if "fillna" in kwargs: - pgo.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - pgo.name = f"PGO_{length}" - pgo.category = "momentum" - - return pgo diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/ppo.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/ppo.py deleted file mode 100644 index 71d09079..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/ppo.py +++ /dev/null @@ -1,107 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.ma import ma -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - tal_ma, - v_mamode, - v_offset, - v_pos_default, - v_scalar, - v_series, - v_talib -) - - - -def ppo( - close: Series, fast: Int = None, slow: Int = None, signal: Int = None, - scalar: IntFloat = None, mamode: str = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Percentage Price Oscillator - - Similar to MACD. - - Sources: - * [investopedia](https://www.investopedia.com/terms/p/ppo.asp) - - Parameters: - close (Series): ```close``` Series - fast (int): Fast MA period. Default: ```12``` - slow (int): Slow MA period. Default: ```26``` - signal (int): Signal period. Default: ```9``` - scalar (float): Scalar. Default: ```100``` - mamode (str): See ```help(ta.ma)```. Default: ```"sma"``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3 columns - """ - # Validate - fast = v_pos_default(fast, 12) - slow = v_pos_default(slow, 26) - signal = v_pos_default(signal, 9) - if slow < fast: - fast, slow = slow, fast - _length = max(fast, slow, signal) - close = v_series(close, _length) - - if close is None: - return - - scalar = v_scalar(scalar, 100) - mamode = v_mamode(mamode, "sma") - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import PPO - ppo = PPO(close, fast, slow, tal_ma(mamode)) - else: - fastma = ma(mamode, close, length=fast, talib=mode_tal) - slowma = ma(mamode, close, length=slow, talib=mode_tal) - ppo = scalar * (fastma - slowma) / slowma - - if all(isnan(ppo)): - return # Emergency Break - - signalma = ma("ema", ppo, length=signal, talib=mode_tal) - histogram = ppo - signalma - - # Offset - if offset != 0: - ppo = ppo.shift(offset) - histogram = histogram.shift(offset) - signalma = signalma.shift(offset) - - # Fill - if "fillna" in kwargs: - ppo.fillna(kwargs["fillna"], inplace=True) - histogram.fillna(kwargs["fillna"], inplace=True) - signalma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{fast}_{slow}_{signal}" - ppo.name = f"PPO{_props}" - histogram.name = f"PPOh{_props}" - signalma.name = f"PPOs{_props}" - ppo.category = histogram.category = signalma.category = "momentum" - - data = { - ppo.name: ppo, - histogram.name: histogram, - signalma.name: signalma - } - df = DataFrame(data, index=close.index) - df.name = f"PPO{_props}" - df.category = ppo.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/psl.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/psl.py deleted file mode 100644 index 7e1774e9..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/psl.py +++ /dev/null @@ -1,79 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import sign -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import ( - v_drift, - v_offset, - v_pos_default, - v_scalar, - v_series -) - - - -def psl( - close: Series, open_: Series = None, - length: Int = None, scalar: IntFloat = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Psychological Line - - This indicator compares the number of the rising bars to the total number - of bars. In other words, it is the percentage of bars that are above the - previous bar over a given length. - - Sources: - * [quantshare](https://www.quantshare.com/item-851-psychological-line) - - Parameters: - close (Series): ```close``` Series - open_ (Series): ```open``` Series - length (int): The period. Default: ```12``` - scalar (float): Scalar. Default: ```100``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 12) - close = v_series(close, length) - - if close is None: - return - - scalar = v_scalar(scalar, 100) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - if open_ is not None: - open_ = v_series(open_) - diff = sign(close - open_) - else: - diff = sign(close.diff(drift)) - - diff.fillna(0, inplace=True) - diff[diff <= 0] = 0 # Set negative values to zero - - psl = scalar * diff.rolling(length).sum() / length - - # Offset - if offset != 0: - psl = psl.shift(offset) - - # Fill - if "fillna" in kwargs: - psl.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{length}" - psl.name = f"PSL{_props}" - psl.category = "momentum" - - return psl diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/qqe.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/qqe.py deleted file mode 100644 index 10aa0769..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/qqe.py +++ /dev/null @@ -1,174 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan, maximum, minimum, nan -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.ma import ma -from pandas_ta.utils import ( - v_drift, - v_mamode, - v_offset, - v_pos_default, - v_scalar, - v_series -) -from .rsi import rsi - - - -def qqe( - close: Series, length: Int = None, - smooth: Int = None, factor: IntFloat = None, - mamode: str = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Quantitative Qualitative Estimation - - This indicator is similar to SuperTrend but uses a Smoothed ```rsi``` - with upper and lower bands. - - Sources: - * [prorealcode](https://www.prorealcode.com/prorealtime-indicators/qqe-quantitative-qualitative-estimation/) - * [tradingpedia](https://www.tradingpedia.com/forex-trading-indicators/quantitative-qualitative-estimation) - * [tradingview](https://www.tradingview.com/script/IYfA9R2k-QQE-MT4/) - - Parameters: - close (Series): ```close``` Series - length (int): RSI period. Default: ```14``` - smooth (int): RSI smoothing period. Default: ```5``` - factor (float): QQE Factor. Default: ```4.236``` - mamode (str): See ```help(ta.ma)```. Default: ```"ema"``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 4 columns - - Tip: Trend - * Long: When the Smoothed RSI crosses the previous upperband. - * Short: When the Smoothed RSI crosses the previous lowerband. - - Note: See also - * QQE.mq5 by EarnForex Copyright © 2010 - * Tim Hyder (2008) version - * Roman Ignatov (2006) version - """ - # Validate - length = v_pos_default(length, 14) - smooth = v_pos_default(smooth, 5) - wilders_length = 2 * length - 1 - _length = wilders_length + smooth - close = v_series(close, _length) - - if close is None: - return - - factor = v_scalar(factor, 4.236) - mamode = v_mamode(mamode, "ema") - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - rsi_ = rsi(close, length) - _mode = mamode.lower()[0] if mamode != "ema" else "" - rsi_ma = ma(mamode, rsi_, length=smooth) - - # RSI MA True Range - rsi_ma_tr = rsi_ma.diff(drift).abs() - if all(isnan(rsi_ma_tr)): - return - - # Double Smooth the RSI MA True Range using Wilder's Length with a default - # width of 4.236. - smoothed_rsi_tr_ma = ma("ema", rsi_ma_tr, length=wilders_length) - if all(isnan(smoothed_rsi_tr_ma)): - return # Emergency Break - dar = factor * ma("ema", smoothed_rsi_tr_ma, length=wilders_length) - if all(isnan(dar)): - return # Emergency Break - - # Create the Upper and Lower Bands around RSI MA. - upperband = rsi_ma + dar - lowerband = rsi_ma - dar - - m = close.size - long = Series(0, index=close.index) - short = Series(0, index=close.index) - trend = Series(1, index=close.index) - qqe = Series(rsi_ma.iat[0], index=close.index) - qqe_long = Series(nan, index=close.index) - qqe_short = Series(nan, index=close.index) - - for i in range(1, m): - c_rsi, p_rsi = rsi_ma.iat[i], rsi_ma.iat[i - 1] - c_long, p_long = long.iat[i - 1], long.iat[i - 2] - c_short, p_short = short.iat[i - 1], short.iat[i - 2] - - # Long Line - if p_rsi > c_long and c_rsi > c_long: - long.iat[i] = maximum(c_long, lowerband.iat[i]) - else: - long.iat[i] = lowerband.iat[i] - - # Short Line - if p_rsi < c_short and c_rsi < c_short: - short.iat[i] = minimum(c_short, upperband.iat[i]) - else: - short.iat[i] = upperband.iat[i] - - # Trend & QQE Calculation - # Long: Current RSI_MA value Crosses the Prior Short Line Value - # Short: Current RSI_MA Crosses the Prior Long Line Value - if (c_rsi > c_short and p_rsi < p_short) or \ - (c_rsi <= c_short and p_rsi >= p_short): - trend.iat[i] = 1 - qqe.iat[i] = qqe_long.iat[i] = long.iat[i] - elif (c_rsi > c_long and p_rsi < p_long) or \ - (c_rsi <= c_long and p_rsi >= p_long): - trend.iat[i] = -1 - qqe.iat[i] = qqe_short.iat[i] = short.iat[i] - else: - trend.iat[i] = trend.iat[i - 1] - if trend.iat[i] == 1: - qqe.iat[i] = qqe_long.iat[i] = long.iat[i] - else: - qqe.iat[i] = qqe_short.iat[i] = short.iat[i] - - # Offset - if offset != 0: - rsi_ma = rsi_ma.shift(offset) - qqe = qqe.shift(offset) - long = long.shift(offset) - short = short.shift(offset) - - # Fill - if "fillna" in kwargs: - rsi_ma.fillna(kwargs["fillna"], inplace=True) - qqe.fillna(kwargs["fillna"], inplace=True) - qqe_long.fillna(kwargs["fillna"], inplace=True) - qqe_short.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"{_mode}_{length}_{smooth}_{factor}" - qqe.name = f"QQE{_props}" - rsi_ma.name = f"QQE{_props}_RSI{_mode.upper()}MA" - qqe_long.name = f"QQEl{_props}" - qqe_short.name = f"QQEs{_props}" - qqe.category = rsi_ma.category = "momentum" - qqe_long.category = qqe_short.category = qqe.category - - data = { - qqe.name: qqe, - rsi_ma.name: rsi_ma, - # long.name: long, - # short.name: short - qqe_long.name: qqe_long, - qqe_short.name: qqe_short - } - df = DataFrame(data, index=close.index) - df.name = f"QQE{_props}" - df.category = qqe.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/roc.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/roc.py deleted file mode 100644 index c7d3bcf5..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/roc.py +++ /dev/null @@ -1,84 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - nb_idiff, - nb_shift, - v_offset, - v_pos_default, - v_scalar, - v_series, - v_talib -) -# from .mom import mom - - - -@njit(cache=True) -def nb_roc(x, n, k): - return k * nb_idiff(x, n) / nb_shift(x, n) - - -def roc( - close: Series, length: Int = None, - scalar: IntFloat = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Rate of Change - - This indicator, also (confusingly) known as Momentum, is a pure - oscillator that quantifies the percent change. - - Sources: - * [tradingview](https://www.tradingview.com/wiki/Rate_of_Change_(ROC)) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - scalar (float): Scalar. Default: ```100``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, length + 1) - - if close is None: - return - - scalar = v_scalar(scalar, 100) - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import ROC - roc = ROC(close, length) - else: - # roc = scalar * mom(close=close, length=length, talib=mode_tal) \ - # / close.shift(length) - np_close = close.to_numpy() - _roc = nb_roc(np_close, length, scalar) - roc = Series(_roc, index=close.index) - - # Offset - if offset != 0: - roc = roc.shift(offset) - - # Fill - if "fillna" in kwargs: - roc.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - roc.name = f"ROC_{length}" - roc.category = "momentum" - - return roc diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/rsi.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/rsi.py deleted file mode 100644 index b4d51d5e..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/rsi.py +++ /dev/null @@ -1,115 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series, concat -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.maps import Imports -from pandas_ta.ma import ma -from pandas_ta.utils import ( - signals, - v_drift, - v_mamode, - v_offset, - v_pos_default, - v_scalar, - v_series, - v_talib -) - - - -def rsi( - close: Series, length: Int = None, scalar: IntFloat = None, - mamode: str = None, talib: bool = None, - drift: Int = None, offset: Int = None, - **kwargs: DictLike -) -> Series: - """Relative Strength Index - - This oscillator used to attempts to quantify "velocity" and "magnitude". - - Sources: - * [tradingview](https://www.tradingview.com/wiki/Relative_Strength_Index_(RSI)) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```14``` - scalar (float): Scalar. Default: ```100``` - mamode (str): See ```help(ta.ma)```. Default: ```"rma"``` - talib (bool): If installed, use TA Lib. Default: ```True``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Warning: - TA-Lib Correlation: ```np.float64(0.9289853267851295)``` - - Tip: - Corrective contributions welcome! - """ - # Validate - length = v_pos_default(length, 14) - close = v_series(close, length + 1) - - if close is None: - return - - scalar = v_scalar(scalar, 100) - mamode = v_mamode(mamode, "rma") - mode_tal = v_talib(talib) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import RSI - rsi = RSI(close, length) - else: - negative = close.diff(drift) - positive = negative.copy() - - positive[positive < 0] = 0 # Make negatives 0 for the positive series - negative[negative > 0] = 0 # Make positives 0 for the negative series - - positive_avg = ma(mamode, positive, length=length, talib=mode_tal) - negative_avg = ma(mamode, negative, length=length, talib=mode_tal) - - rsi = scalar * positive_avg / (positive_avg + negative_avg.abs()) - - # Offset - if offset != 0: - rsi = rsi.shift(offset) - - # Fill - if "fillna" in kwargs: - rsi.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - rsi.name = f"RSI_{length}" - rsi.category = "momentum" - - signal_indicators = kwargs.pop("signal_indicators", False) - if not signal_indicators: - return rsi - else: - signalsdf = concat( - [ - DataFrame({rsi.name: rsi}), - signals( - indicator=rsi, - xa=kwargs.pop("xa", 80), - xb=kwargs.pop("xb", 20), - xseries=kwargs.pop("xseries", None), - xseries_a=kwargs.pop("xseries_a", None), - xseries_b=kwargs.pop("xseries_b", None), - cross_values=kwargs.pop("cross_values", False), - cross_series=kwargs.pop("cross_series", True), - offset=offset, - ), - ], - axis=1, - ) - return signalsdf diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/rsx.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/rsx.py deleted file mode 100644 index c028a2e8..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/rsx.py +++ /dev/null @@ -1,148 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import nan -from pandas import DataFrame, Series, concat -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import ( - signals, - v_drift, - v_offset, - v_pos_default, - v_series -) - - - -def rsx( - close: Series, length: Int = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Relative Strength Xtra - - This indicator, by Jurik Research, is an enhanced version of the RSI which - attemps to reduce noise and provide a clearer, though slightly - delayed, signal. - - Sources: - * [jurikres](http://www.jurikres.com/catalog1/ms_rsx.htm) - * [prorealcode](https://www.prorealcode.com/prorealtime-indicators/jurik-rsx/) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```14``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 14) - close = v_series(close, length) - - if close is None: - return - - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - m = close.size - vC, v1C = 0, 0 - v4, v8, v10, v14, v18, v20 = 0, 0, 0, 0, 0, 0 - - f0, f8, f10, f18, f20, f28, f30, f38 = 0, 0, 0, 0, 0, 0, 0, 0 - f40, f48, f50, f58, f60, f68, f70, f78 = 0, 0, 0, 0, 0, 0, 0, 0 - f80, f88, f90 = 0, 0, 0 - - result = [nan for _ in range(0, length - 1)] + [50] - for i in range(length, m): - if f90 == 0: - f90 = 1.0 - f0 = 0.0 - if length - 1.0 >= 5: - f88 = length - 1.0 - else: - f88 = 5.0 - f8 = 100.0 * close.iat[i] - f18 = 3.0 / (length + 2.0) - f20 = 1.0 - f18 - else: - if f88 <= f90: - f90 = f88 + 1 - else: - f90 = f90 + 1 - f10 = f8 - f8 = 100 * close.iat[i] - v8 = f8 - f10 - f28 = f20 * f28 + f18 * v8 - f30 = f18 * f28 + f20 * f30 - vC = 1.5 * f28 - 0.5 * f30 - f38 = f20 * f38 + f18 * vC - f40 = f18 * f38 + f20 * f40 - v10 = 1.5 * f38 - 0.5 * f40 - f48 = f20 * f48 + f18 * v10 - f50 = f18 * f48 + f20 * f50 - v14 = 1.5 * f48 - 0.5 * f50 - f58 = f20 * f58 + f18 * abs(v8) - f60 = f18 * f58 + f20 * f60 - v18 = 1.5 * f58 - 0.5 * f60 - f68 = f20 * f68 + f18 * v18 - f70 = f18 * f68 + f20 * f70 - v1C = 1.5 * f68 - 0.5 * f70 - f78 = f20 * f78 + f18 * v1C - f80 = f18 * f78 + f20 * f80 - v20 = 1.5 * f78 - 0.5 * f80 - - if f88 >= f90 and f8 != f10: - f0 = 1.0 - if f88 == f90 and f0 == 0.0: - f90 = 0.0 - - if f88 < f90 and v20 > 0.0000000001: - v4 = (v14 / v20 + 1.0) * 50.0 - if v4 > 100.0: - v4 = 100.0 - if v4 < 0.0: - v4 = 0.0 - else: - v4 = 50.0 - result.append(v4) - rsx = Series(result, index=close.index) - - # Offset - if offset != 0: - rsx = rsx.shift(offset) - - # Fill - if "fillna" in kwargs: - rsx.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - rsx.name = f"RSX_{length}" - rsx.category = "momentum" - - signal_indicators = kwargs.pop("signal_indicators", False) - if not signal_indicators: - return rsx - else: - signalsdf = concat( - [ - DataFrame({rsx.name: rsx}), - signals( - indicator=rsx, - xa=kwargs.pop("xa", 80), - xb=kwargs.pop("xb", 20), - xseries=kwargs.pop("xseries", None), - xseries_a=kwargs.pop("xseries_a", None), - xseries_b=kwargs.pop("xseries_b", None), - cross_values=kwargs.pop("cross_values", False), - cross_series=kwargs.pop("cross_series", True), - offset=offset, - ), - ], - axis=1 - ) - return signalsdf diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/rvgi.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/rvgi.py deleted file mode 100644 index da302012..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/rvgi.py +++ /dev/null @@ -1,87 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.overlap import swma -from pandas_ta.utils import non_zero_range, v_offset, v_pos_default, v_series - - - -def rvgi( - open_: Series, high: Series, low: Series, close: Series, - length: Int = None, swma_length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Relative Vigor Index - - This indicator attempts to quantify the strength of a trend relative to - its trading range. - - Sources: - * [investopedia](https://www.investopedia.com/terms/r/relative_vigor_index.asp) - - Parameters: - open_ (Series): ```open``` Series - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```14``` - swma_length (int): SWMA period. Default: ```4``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 14) - swma_length = v_pos_default(swma_length, 4) - _length = length + swma_length - 1 - open_ = v_series(open_, _length) - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if open_ is None or high is None or low is None or close is None: - return - - offset = v_offset(offset) - - # Calculate - high_low_range = non_zero_range(high, low) - close_open_range = non_zero_range(close, open_) - - numerator = swma(close_open_range, length=swma_length) \ - .rolling(length).sum() - denominator = swma(high_low_range, length=swma_length) \ - .rolling(length).sum() - - rvgi = numerator / denominator - signal = swma(rvgi, length=swma_length) - - if all(isnan(signal.to_numpy())): - return # Emergency Break - - # Offset - if offset != 0: - rvgi = rvgi.shift(offset) - signal = signal.shift(offset) - - # Fill - if "fillna" in kwargs: - rvgi.fillna(kwargs["fillna"], inplace=True) - signal.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - rvgi.name = f"RVGI_{length}_{swma_length}" - signal.name = f"RVGIs_{length}_{swma_length}" - rvgi.category = signal.category = "momentum" - - data = {rvgi.name: rvgi, signal.name: signal} - df = DataFrame(data, index=close.index) - df.name = f"RVGI_{length}_{swma_length}" - df.category = rvgi.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/slope.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/slope.py deleted file mode 100644 index ebe36e68..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/slope.py +++ /dev/null @@ -1,71 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import arctan, rad2deg -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import ( - nb_idiff, - v_bool, - v_offset, - v_pos_default, - v_series -) - - - -def slope( - close: Series, length: Int = None, - as_angle: bool = None, to_degrees: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Slope - - Calculates a rolling slope. - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```1``` - as_angle (bool): Converts slope to an angle in radians - per ```np.arctan()```. Default: ```False``` - to_degrees (value): If ```as_angle=True```, converts radians to - degrees. Default: ```False``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 1) - close = v_series(close, length + 1) - - if close is None: - return - - as_angle = v_bool(as_angle, False) - to_degrees = v_bool(to_degrees, False) - offset = v_offset(offset) - - # Calculate - np_close = close.to_numpy() - _slope = nb_idiff(np_close, length) / length - if as_angle: - _slope = arctan(_slope) - if to_degrees: - _slope = rad2deg(_slope) - slope = Series(_slope, index=close.index) - - # Offset - if offset != 0: - slope = slope.shift(offset) - - # Fill - if "fillna" in kwargs: - slope.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - slope.name = f"SLOPE_{length}" if not as_angle else f"ANGLE{'d' if to_degrees else 'r'}_{length}" - slope.category = "momentum" - - return slope diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/smc.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/smc.py deleted file mode 100644 index b47da384..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/smc.py +++ /dev/null @@ -1,118 +0,0 @@ -# -*- coding: utf-8 -*- -from sys import float_info as sflt -from numpy import maximum, minimum -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.ma import ma -from pandas_ta.utils import ( - v_bool, - v_mamode, - v_offset, - v_pos_default, - v_scalar, - v_series, - v_talib -) - - -def smc( - open_: Series, high: Series, low: Series, close: Series, - abr_length: Int = None, close_length: Int = None, vol_length: Int = None, - percent: Int = None, vol_ratio: IntFloat = None, asint: bool = None, - mamode: str = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> DictLike: - """Smart Money Concept - - This indicator combines several techniques in an attempt to identify - significant movements that might indicate "smart money" actions. - It uses candlestick patterns, moving averages, and imbalance calculations. - - Sources: - * [tradingview](https://www.tradingview.com/script/CnB3fSph-Smart-Money-Concepts-LuxAlgo/) - - Parameters: - abr_length (int): ABR length. Default: ```14``` - close_length (int): The ```close``` MA period. Default: ```50``` - vol_length (int): Volatility period. Default: ```20``` - percent (int): Percent of wick that exceeds the body. Default: ```5``` - vol_ratio (float): Volatility ratio (high) limit. Default: ```1.5``` - asint (bool): Returns as ```Int```. Default: ```True``` - mamode (str): See ```help(ta.ma)```. Default: ```"sma"``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Returns: - (DataFrame): 7 columns - """ - # Validate - abr_length = v_pos_default(abr_length, 14) - close_length = v_pos_default(close_length, 50) - vol_length = v_pos_default(vol_length, 20) - if close_length < abr_length: - abr_length, close_length = close_length, abr_length - _length = max(abr_length, close_length, vol_length) + 1 - - open_ = v_series(open_, _length) - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if open_ is None or high is None or low is None or close is None: - return - - percent = v_pos_default(percent, 5) - body_percent = 0.01 * percent - vol_ratio = v_scalar(vol_ratio, 1.5) - asint = v_bool(asint) - mamode = v_mamode(mamode, "sma") - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - body_high, body_low = maximum(open_, close), minimum(open_, close) - body = body_high - body_low + sflt.epsilon - close_ma = ma(mamode, body, length=close_length, talib=mode_tal) - - # Calculate imbalance sizes and percentages based on Average Bar Range (abr) - abr = high.rolling(window=abr_length).max() - low.rolling(window=abr_length).min() - top_imbalance = low.shift(2) - high - btm_imbalance = low - high.shift(2) - top_imbalance_pct = 100 * top_imbalance / abr - btm_imbalance_pct = 100 * btm_imbalance / abr - hld = high - low + sflt.epsilon - high_volatility = hld > vol_ratio * ma(mamode, hld, length=vol_length, talib=mode_tal) - - btm_imbalance_flag = (btm_imbalance > 0) & (btm_imbalance_pct > 1) - top_imbalance_flag = (top_imbalance > 0) & (top_imbalance_pct > 1) - - if asint: - high_volatility = high_volatility.astype(int) - btm_imbalance_flag = btm_imbalance_flag.astype(int) - top_imbalance_flag = top_imbalance_flag.astype(int) - - _props = f"_{abr_length}_{close_length}_{vol_length}_{percent}" - data = { - f"SMChv{_props}": high_volatility, - f"SMCbf{_props}": btm_imbalance_flag, - f"SMCbi{_props}": btm_imbalance, - f"SMCbp{_props}": btm_imbalance_pct, - f"SMCtf{_props}": top_imbalance_flag, - f"SMCti{_props}": top_imbalance, - f"SMCtp{_props}": top_imbalance_pct, - } - df = DataFrame(data, index=close.index) - - # Offset - if offset != 0: - df = df.shift(offset) - - # Fill - df.ffill(inplace=True) - df.bfill(inplace=True) - - # Name and Category - df.name = f"SMC{_props}" - df.category = "momentum" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/smi.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/smi.py deleted file mode 100644 index 5c3fa566..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/smi.py +++ /dev/null @@ -1,92 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import v_offset, v_pos_default, v_scalar, v_series -from .tsi import tsi - - - -def smi( - close: Series, fast: Int = None, slow: Int = None, - signal: Int = None, scalar: IntFloat = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """SMI Ergodic Indicator - - This indicator, by William Blau, is the same as the TSI except the SMI - includes a signal line. A trend is considered bullish when crossing above - zero and bearish when crossing below zero. This implementation includes - both the SMI Ergodic Indicator and SMI Ergodic Oscillator. - - Sources: - * [motivewave](https://www.motivewave.com/studies/smi_ergodic_indicator.htm) - * [tradingview A](https://www.tradingview.com/script/Xh5Q0une-SMI-Ergodic-Oscillator/) - * [tradingview B](https://www.tradingview.com/script/cwrgy4fw-SMIIO/) - - Parameters: - close (Series): ```close``` Series - fast (int): The short period. Default: ```5``` - slow (int): The long period. Default: ```20``` - signal (int): Signal period. Default: ```5``` - scalar (float): Scalar. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3 columns - """ - # Validate - fast = v_pos_default(fast, 5) - slow = v_pos_default(slow, 20) - signal = v_pos_default(signal, 5) - if slow < fast: - fast, slow = slow, fast - _length = slow + signal + 1 - close = v_series(close, _length) - - if close is None: - return - - scalar = v_scalar(scalar, 1) - offset = v_offset(offset) - - # Calculate - tsi_df = tsi(close, fast=fast, slow=slow, signal=signal, scalar=scalar) - if tsi_df is None: - return # Emergency Break - - smi = tsi_df.iloc[:, 0] - signalma = tsi_df.iloc[:, 1] - if all(isnan(signalma)): - return # Emergency Break - osc = smi - signalma - - # Offset - if offset != 0: - smi = smi.shift(offset) - signalma = signalma.shift(offset) - osc = osc.shift(offset) - - # Fill - if "fillna" in kwargs: - smi.fillna(kwargs["fillna"], inplace=True) - signalma.fillna(kwargs["fillna"], inplace=True) - osc.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - # _scalar = f"_{scalar}" if scalar != 1 else "" - _props = f"_{fast}_{slow}_{signal}_{scalar}" - smi.name = f"SMI{_props}" - signalma.name = f"SMIs{_props}" - osc.name = f"SMIo{_props}" - smi.category = signalma.category = osc.category = "momentum" - - data = {smi.name: smi, signalma.name: signalma, osc.name: osc} - df = DataFrame(data, index=close.index) - df.name = f"SMI{_props}" - df.category = smi.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/squeeze.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/squeeze.py deleted file mode 100644 index b4330676..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/squeeze.py +++ /dev/null @@ -1,205 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import nan -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.overlap import ema, linreg, sma -from pandas_ta.trend import decreasing, increasing -from pandas_ta.utils import ( - simplify_columns, - unsigned_differences, - v_bool, - v_mamode, - v_offset, - v_pos_default, - v_series -) -from pandas_ta.volatility import bbands, kc -from .mom import mom - - - -def squeeze( - high: Series, low: Series, close: Series, - bb_length: Int = None, bb_std: IntFloat = None, - kc_length: Int = None, kc_scalar: IntFloat = None, - mom_length: Int = None, mom_smooth: Int = None, - use_tr: bool = None, mamode: str = None, - prenan: bool = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Squeeze - - This indicator, based on John Carter's "TTM Squeeze" indicator, attempts - identify momentum using volatility. - - Sources: - * "Mastering the Trade" (chapter 11), John Carter - * [thinkorswim](https://tlc.thinkorswim.com/center/reference/Tech-Indicators/studies-library/T-U/TTM-Squeeze) - * [tradestation](https://tradestation.tradingappstore.com/products/TTMSqueeze) - * [tradingview](https://www.tradingview.com/scripts/lazybear/) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - bb_length (int): BB period. Default: ```20``` - bb_std (float): BB Std. Dev. Default: ```2``` - kc_length (int): KC period. Default: ```20``` - kc_scalar (float): KC scalar. Default: ```1.5``` - mom_length (int): Momentum Period. Default: ```12``` - mom_smooth (int): Momentum Smoothing period. Default: ```6``` - mamode (str): One of: "ema" or "sma". Default: ```"sma"``` - prenan (bool): Apply prenans. Default: ```False``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - tr (value): Use True Range for Keltner Channels. Default: ```True``` - asint (bool): Returns as ```Int```. Default: ```True``` - lazybear (value): LazyBear's TradingView. Default: ```False``` - detailed (value): Extra detailed. Default: ```False``` - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): - * Default: 4 columns - * Detailed: 10 columns - - Note: Volatility - * Increasing: ```kc``` and ```bbands``` difference increases - * Decreasing: ```kc``` and ```bbands``` difference decreases - """ - # Validate - bb_length = v_pos_default(bb_length, 20) - kc_length = v_pos_default(kc_length, 20) - mom_length = v_pos_default(mom_length, 12) - mom_smooth = v_pos_default(mom_smooth, 6) - _length = max(bb_length, kc_length, mom_length, mom_smooth) + 1 - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - bb_std = v_pos_default(bb_std, 2.0) - kc_scalar = v_pos_default(kc_scalar, 1.5) - mamode = v_mamode(mamode, "sma") - prenan = v_bool(prenan, False) - offset = v_offset(offset) - - use_tr = kwargs.pop("tr", True) - asint = kwargs.pop("asint", True) - detailed = kwargs.pop("detailed", False) - lazybear = kwargs.pop("lazybear", False) - - # Calculate - bbd = bbands(close, length=bb_length, std=bb_std, mamode=mamode) - kch = kc( - high, low, close, length=kc_length, scalar=kc_scalar, - mamode=mamode, tr=use_tr - ) - - # Simplify KC and BBAND column names for dynamic access - bbd.columns = simplify_columns(bbd) - kch.columns = simplify_columns(kch) - - if lazybear: - highest_high = high.rolling(kc_length).max() - lowest_low = low.rolling(kc_length).min() - avg_ = 0.5 * (0.5 * (highest_high + lowest_low) + kch.b) - - squeeze = linreg(close - avg_, length=kc_length) - - else: - momo = mom(close, length=mom_length) - if mamode.lower() == "ema": - squeeze = ema(momo, length=mom_smooth) - else: # "sma" - squeeze = sma(momo, length=mom_smooth) - - # Classify Squeezes - squeeze_on = (bbd.l > kch.l) & (bbd.u < kch.u) - squeeze_off = (bbd.l < kch.l) & (bbd.u > kch.u) - no_squeeze = ~squeeze_on & ~squeeze_off - - # Offset - if offset != 0: - squeeze = squeeze.shift(offset) - squeeze_on = squeeze_on.shift(offset) - squeeze_off = squeeze_off.shift(offset) - no_squeeze = no_squeeze.shift(offset) - - # Fill - if "fillna" in kwargs: - squeeze.fillna(kwargs["fillna"], inplace=True) - squeeze_on.fillna(kwargs["fillna"], inplace=True) - squeeze_off.fillna(kwargs["fillna"], inplace=True) - no_squeeze.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = "" if use_tr else "hlr" - _props += f"_{bb_length}_{bb_std}_{kc_length}_{kc_scalar}" - _props += "_LB" if lazybear else "" - squeeze.name = f"SQZ{_props}" - - if asint: - squeeze_on = squeeze_on.astype(int) - squeeze_off = squeeze_off.astype(int) - no_squeeze = no_squeeze.astype(int) - - if prenan: - nanlength = max(bb_length, kc_length) - 2 - squeeze_on[:nanlength] = nan - squeeze_off[:nanlength] = nan - no_squeeze[:nanlength] = nan - - data = { - squeeze.name: squeeze, - f"SQZ_ON": squeeze_on, - f"SQZ_OFF": squeeze_off, - f"SQZ_NO": no_squeeze - } - df = DataFrame(data, index=close.index) - df.name = squeeze.name - df.category = squeeze.category = "momentum" - - # More Detail - if detailed: - pos_squeeze = squeeze[squeeze >= 0] - neg_squeeze = squeeze[squeeze < 0] - - pos_inc, pos_dec = unsigned_differences(pos_squeeze, asint=True) - neg_inc, neg_dec = unsigned_differences(neg_squeeze, asint=True) - - pos_inc *= squeeze - pos_dec *= squeeze - neg_dec *= squeeze - neg_inc *= squeeze - - pos_inc.replace(0, nan, inplace=True) - pos_dec.replace(0, nan, inplace=True) - neg_dec.replace(0, nan, inplace=True) - neg_inc.replace(0, nan, inplace=True) - - sqz_inc = squeeze * increasing(squeeze) - sqz_dec = squeeze * decreasing(squeeze) - sqz_inc.replace(0, nan, inplace=True) - sqz_dec.replace(0, nan, inplace=True) - - # Handle fills - if "fillna" in kwargs: - sqz_inc.fillna(kwargs["fillna"], inplace=True) - sqz_dec.fillna(kwargs["fillna"], inplace=True) - pos_inc.fillna(kwargs["fillna"], inplace=True) - pos_dec.fillna(kwargs["fillna"], inplace=True) - neg_dec.fillna(kwargs["fillna"], inplace=True) - neg_inc.fillna(kwargs["fillna"], inplace=True) - - df[f"SQZ_INC"] = sqz_inc - df[f"SQZ_DEC"] = sqz_dec - df[f"SQZ_PINC"] = pos_inc - df[f"SQZ_PDEC"] = pos_dec - df[f"SQZ_NDEC"] = neg_dec - df[f"SQZ_NINC"] = neg_inc - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/squeeze_pro.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/squeeze_pro.py deleted file mode 100644 index 524c66a8..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/squeeze_pro.py +++ /dev/null @@ -1,222 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import nan -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.ma import ma -from pandas_ta.momentum import mom -from pandas_ta.trend import decreasing, increasing -from pandas_ta.utils import ( - simplify_columns, - unsigned_differences, - v_bool, - v_mamode, - v_offset, - v_pos_default, - v_scalar, - v_series -) -from pandas_ta.volatility import bbands, kc - - - -def squeeze_pro( - high: Series, low: Series, close: Series, - bb_length: Int = None, bb_std: IntFloat = None, - kc_length: Int = None, kc_scalar_narrow: IntFloat = None, - kc_scalar_normal: IntFloat = None, kc_scalar_wide: IntFloat = None, - mom_length: Int = None, mom_smooth: Int = None, - use_tr: bool = None, mamode: str = None, - prenan: bool = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Squeeze Pro - - This indicator, based on John Carter's "TTM Squeeze" indicator, attempts - identify momentum using volatility with additional details. - - Sources: - * [usethinkscript](https://usethinkscript.com/threads/john-carters-squeeze-pro-indicator-for-thinkorswim-free.4021/) - * [tradingview](https://www.tradingview.com/script/TAAt6eRX-Squeeze-PRO-Indicator-Makit0/) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - bb_length (int): BB period. Default: ```20``` - bb_std (float): BB Std. Dev. Default: ```2``` - kc_length (int): KC period. Default: ```20``` - kc_scalar_normal (float): Keltner Channel scalar for normal channel. - Default: ```1.5``` - kc_scalar_narrow (float): Narrow channel KC scalar. Default: ```1``` - kc_scalar_wide (float): Wide channel KC scalar. Default: ```2``` - mom_length (int): Momentum Period. Default: ```12``` - mom_smooth (int): Momentum Smoothing period. Default: ```6``` - mamode (str): One of: "ema" or "sma". Default: ```"sma"``` - prenan (bool): Apply prenans. Default: ```False``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - tr (value): Use True Range for Keltner Channels. - Default: ```True``` - asint (bool): Returns as ```Int```. Default: ```True``` - mamode (value): Which MA to use. Default: ```"sma"``` - detailed (value): Extra detailed. Default: ```False``` - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 6 columns (_default_) or 12 columns if ```detailed=True``` - - Warning: - May be depreciated in the future and combined with ```squeeze```. - """ - # Validate - bb_length = v_pos_default(bb_length, 20) - kc_length = v_pos_default(kc_length, 20) - mom_length = v_pos_default(mom_length, 12) - mom_smooth = v_pos_default(mom_smooth, 6) - _length = max(bb_length, kc_length, mom_length, mom_smooth) + 1 - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - kc_scalar_narrow = v_scalar(kc_scalar_narrow, 1) - kc_scalar_normal = v_scalar(kc_scalar_normal, 1.5) - kc_scalar_wide = v_scalar(kc_scalar_wide, 2) - prenan = v_bool(prenan, False) - valid_kc_scaler = kc_scalar_wide > kc_scalar_normal \ - and kc_scalar_normal > kc_scalar_narrow - - if not valid_kc_scaler: - return - - bb_std = v_pos_default(bb_std, 2.0) - mamode = v_mamode(mamode, "sma") - offset = v_offset(offset) - use_tr = kwargs.pop("tr", True) - asint = kwargs.pop("asint", True) - detailed = kwargs.pop("detailed", False) - - # Calculate - bbd = bbands(close, length=bb_length, std=bb_std, mamode=mamode) - kch_wide = kc( - high, low, close, length=kc_length, scalar=kc_scalar_wide, - mamode=mamode, tr=use_tr - ) - kch_normal = kc( - high, low, close, length=kc_length, scalar=kc_scalar_normal, - mamode=mamode, tr=use_tr - ) - kch_narrow = kc( - high, low, close, length=kc_length, scalar=kc_scalar_narrow, - mamode=mamode, tr=use_tr - ) - - # Simplify KC and BBAND column names for dynamic access - bbd.columns = simplify_columns(bbd) - kch_wide.columns = simplify_columns(kch_wide) - kch_normal.columns = simplify_columns(kch_normal) - kch_narrow.columns = simplify_columns(kch_narrow) - - momo = mom(close, length=mom_length) - squeeze = ma(mamode, momo, length=mom_smooth) - - # Classify Squeezes - squeeze_on_wide = (bbd.l > kch_wide.l) & (bbd.u < kch_wide.u) - squeeze_on_normal = (bbd.l > kch_normal.l) & (bbd.u < kch_normal.u) - squeeze_on_narrow = (bbd.l > kch_narrow.l) & (bbd.u < kch_narrow.u) - squeeze_off_wide = (bbd.l < kch_wide.l) & (bbd.u > kch_wide.u) - no_squeeze = ~squeeze_on_wide & ~squeeze_off_wide - - # Offset - if offset != 0: - squeeze = squeeze.shift(offset) - squeeze_on_wide = squeeze_on_wide.shift(offset) - squeeze_on_normal = squeeze_on_normal.shift(offset) - squeeze_on_narrow = squeeze_on_narrow.shift(offset) - squeeze_off_wide = squeeze_off_wide.shift(offset) - no_squeeze = no_squeeze.shift(offset) - - # Fill - if "fillna" in kwargs: - squeeze.fillna(kwargs["fillna"], inplace=True) - squeeze_on_wide.fillna(kwargs["fillna"], inplace=True) - squeeze_on_normal.fillna(kwargs["fillna"], inplace=True) - squeeze_on_narrow.fillna(kwargs["fillna"], inplace=True) - squeeze_off_wide.fillna(kwargs["fillna"], inplace=True) - no_squeeze.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = "" if use_tr else "hlr" - _props += f"_{bb_length}_{bb_std}_{kc_length}_{kc_scalar_wide}_{kc_scalar_normal}_{kc_scalar_narrow}" - squeeze.name = f"SQZPRO{_props}" - - if asint: - squeeze_on_wide = squeeze_on_wide.astype(int) - squeeze_on_narrow = squeeze_on_narrow.astype(int) - squeeze_on_normal = squeeze_on_normal.astype(int) - squeeze_off_wide = squeeze_off_wide.astype(int) - no_squeeze = no_squeeze.astype(int) - - if prenan: - nanlength = max(bb_length, kc_length) - 2 - squeeze_on_wide[:nanlength] = nan - squeeze_on_narrow[:nanlength] = nan - squeeze_on_normal[:nanlength] = nan - squeeze_off_wide[:nanlength] = nan - no_squeeze[:nanlength] = nan - - data = { - squeeze.name: squeeze, - f"SQZPRO_ON_WIDE": squeeze_on_wide, - f"SQZPRO_ON_NORMAL": squeeze_on_normal, - f"SQZPRO_ON_NARROW": squeeze_on_narrow, - f"SQZPRO_OFF": squeeze_off_wide, - f"SQZPRO_NO": no_squeeze - } - df = DataFrame(data, index=close.index) - df.name = squeeze.name - df.category = squeeze.category = "momentum" - - # More Detail - if detailed: - pos_squeeze = squeeze[squeeze >= 0] - neg_squeeze = squeeze[squeeze < 0] - - pos_inc, pos_dec = unsigned_differences(pos_squeeze, asint=True) - neg_inc, neg_dec = unsigned_differences(neg_squeeze, asint=True) - - pos_inc *= squeeze - pos_dec *= squeeze - neg_dec *= squeeze - neg_inc *= squeeze - - pos_inc.replace(0, nan, inplace=True) - pos_dec.replace(0, nan, inplace=True) - neg_dec.replace(0, nan, inplace=True) - neg_inc.replace(0, nan, inplace=True) - - sqz_inc = squeeze * increasing(squeeze) - sqz_dec = squeeze * decreasing(squeeze) - sqz_inc.replace(0, nan, inplace=True) - sqz_dec.replace(0, nan, inplace=True) - - # Fill - if "fillna" in kwargs: - sqz_inc.fillna(kwargs["fillna"], inplace=True) - sqz_dec.fillna(kwargs["fillna"], inplace=True) - pos_inc.fillna(kwargs["fillna"], inplace=True) - pos_dec.fillna(kwargs["fillna"], inplace=True) - neg_dec.fillna(kwargs["fillna"], inplace=True) - neg_inc.fillna(kwargs["fillna"], inplace=True) - - df[f"SQZPRO_INC"] = sqz_inc - df[f"SQZPRO_DEC"] = sqz_dec - df[f"SQZPRO_PINC"] = pos_inc - df[f"SQZPRO_PDEC"] = pos_dec - df[f"SQZPRO_NDEC"] = neg_dec - df[f"SQZPRO_NINC"] = neg_inc - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/stc.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/stc.py deleted file mode 100644 index 518b3d25..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/stc.py +++ /dev/null @@ -1,175 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import nan -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.overlap import ema -from pandas_ta.utils import ( - non_zero_range, - v_offset, - v_pos_default, - v_series -) - - - -def schaff_tc(close: Series, seed: Series, tc_length: int, factor: IntFloat): - lowest_xmacd = seed.rolling(tc_length).min() - xmacd_range = non_zero_range(seed.rolling(tc_length).max(), lowest_xmacd) - m = len(seed) - - # Initialize lists - stoch1, pf = [0] * m, [0] * m - stoch2, pff = [0] * m, [0] * m - - for i in range(1, m): - # %Fast K of MACD - if lowest_xmacd.iloc[i] > 0: - stoch1[i] = 100 * ((seed.iloc[i] - lowest_xmacd.iloc[i]) / xmacd_range.iloc[i]) - else: - stoch1[i] = stoch1[i - 1] - # Smoothed Calculation for % Fast D of MACD - pf[i] = round(pf[i - 1] + (factor * (stoch1[i] - pf[i - 1])), 8) - - # find min and max so far - if i < tc_length: - # If there are not enough elements for a full tclength window, - # use what is available - lowest_pf = min(pf[:i+1]) - highest_pf = max(pf[:i+1]) - else: - lowest_pf = min(pf[i - tc_length + 1:i + 1]) - highest_pf = max(pf[i - tc_length + 1:i + 1]) - - # Ensure non-zero range - pf_range = highest_pf - lowest_pf if highest_pf - lowest_pf > 0 else 1 - - # % of Fast K of PF - if pf_range > 0: - stoch2[i] = 100 * ((pf[i] - lowest_pf) / pf_range) - else: - stoch2[i] = stoch2[i - 1] - pff[i] = round(pff[i - 1] + (factor * (stoch2[i] - pff[i - 1])), 8) - - pf_series = Series(pf, index=close.index) - pff_series = Series(pff, index=close.index) - - return pff_series, pf_series - - -def stc( - close: Series, tc_length: Int = None, - fast: Int = None, slow: Int = None, factor: IntFloat = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Schaff Trend Cycle - - This indicator is an evolved MACD with additional smoothing. - - Sources: - * [rengel8](https://github.com/rengel8) - * [prorealcode](https://www.prorealcode.com/prorealtime-indicators/schaff-trend-cycle2/) - - Parameters: - close (Series): ```close``` Series - tc_length (int): TC period. (Adjust to the half of cycle) - Default: ```10``` - fast (int): Fast MA period. Default: ```12``` - slow (int): Slow MA period. Default: ```26``` - factor (float): Smoothing factor for last stoch. calculation. - Default: ```0.5``` - offset (int): How many bars to shift the results. Default: ```0`` - - Other Parameters: - ma1 (Series): User chosen MA. Default: ```False``` - ma2 (Series): User chosen MA. Default: ```False``` - osc (Series): User chosen oscillator. Default: ```False``` - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3 columns - - Note: - Can also seed STC with two MAs, ```ma1``` and ```ma2```, or an oscillator ```osc```. - - * ```ma1``` and ```ma2``` are **both** required if this option is used. - """ - # Validate - fast = v_pos_default(fast, 12) - slow = v_pos_default(slow, 26) - tc_length = v_pos_default(tc_length, 10) - if slow < fast: - fast, slow = slow, fast - _length = max(tc_length, fast, slow) - close = v_series(close, _length) - - if close is None: - return - - factor = v_pos_default(factor, 0.5) - offset = v_offset(offset) - - # Calculate - # kwargs allows for three more series (ma1, ma2 and osc) which can be passed - # here ma1 and ma2 input negate internal ema calculations, osc substitutes - # both ma's. - ma1 = kwargs.pop("ma1", False) - ma2 = kwargs.pop("ma2", False) - osc = kwargs.pop("osc", False) - - if isinstance(ma1, Series) and isinstance(ma2, Series) and not osc: - ma1 = v_series(ma1, _length) - ma2 = v_series(ma2, _length) - - if ma1 is None or ma2 is None: - return - seed = ma1 - ma2 - - elif isinstance(osc, Series): - osc = v_series(osc, _length) - if osc is None: - return - seed = osc - - else: - fastma = ema(close, length=fast) - slowma = ema(close, length=slow) - seed = fastma - slowma - - pff, pf = schaff_tc(close, seed, tc_length, factor) - pf[:_length - 1] = nan - - stc = Series(pff, index=close.index) - macd = Series(seed, index=close.index) - stoch = Series(pf, index=close.index) - - stc.iloc[:_length - 1] = nan - - # Offset - if offset != 0: - stc = stc.shift(offset) - macd = macd.shift(offset) - stoch = stoch.shift(offset) - - # Fill - if "fillna" in kwargs: - stc.fillna(kwargs["fillna"], inplace=True) - macd.fillna(kwargs["fillna"], inplace=True) - stoch.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{tc_length}_{fast}_{slow}_{factor}" - stc.name = f"STC{_props}" - macd.name = f"STCmacd{_props}" - stoch.name = f"STCstoch{_props}" - stc.category = macd.category = stoch.category = "momentum" - - data = { - stc.name: stc, - macd.name: macd, - stoch.name: stoch - } - df = DataFrame(data, index=close.index) - df.name = f"STC{_props}" - df.category = stc.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/stoch.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/stoch.py deleted file mode 100644 index 0d10ca64..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/stoch.py +++ /dev/null @@ -1,121 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - non_zero_range, - tal_ma, - v_mamode, - v_offset, - v_pos_default, - v_series, - v_talib -) - - - -def stoch( - high: Series, low: Series, close: Series, - k: Int = None, d: Int = None, smooth_k: Int = None, - mamode: str = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Stochastic - - This indicator, by George Lane in the 1950's, attempts to identify and - quantify momentum; it assumes that momentum precedes value change. - - Sources: - * [sierrachart](https://www.sierrachart.com/index.php?page=doc/StudiesReference.php&ID=332&Name=KD_-_Slow) - * [tradingview](https://www.tradingview.com/wiki/Stochastic_(STOCH)) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - k (int): The Fast %K period. Default: ```14``` - d (int): The Slow %D period. Default: ```3``` - smooth_k (int): The Slow %K period. Default: ```3``` - mamode (str): See ```help(ta.ma)```. Default: ```"sma"``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3 columns - """ - # Validate - k = v_pos_default(k, 14) - d = v_pos_default(d, 3) - smooth_k = v_pos_default(smooth_k, 3) - _length = k + d + smooth_k - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - mode_tal = v_talib(talib) - mamode = v_mamode(mamode, "sma") - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal and smooth_k > 2: - from talib import STOCH - stoch_ = STOCH( - high, low, close, k, d, tal_ma(mamode), d, tal_ma(mamode) - ) - stoch_k, stoch_d = stoch_[0], stoch_[1] - else: - ll = low.rolling(k).min() - hh = high.rolling(k).max() - - stoch = 100 * (close - ll) / non_zero_range(hh, ll) - - if stoch is None: return - - stoch_fvi = stoch.loc[stoch.first_valid_index():, ] - if smooth_k == 1: - stoch_k = stoch - else: - stoch_k = ma(mamode, stoch_fvi, length=smooth_k) - - stochk_fvi = stoch_k.loc[stoch_k.first_valid_index():, ] - stoch_d = ma(mamode, stochk_fvi, length=d) - - stoch_h = stoch_k - stoch_d # Histogram - - # Offset - if offset != 0: - stoch_k = stoch_k.shift(offset) - stoch_d = stoch_d.shift(offset) - stoch_h = stoch_h.shift(offset) - - # Fill - if "fillna" in kwargs: - stoch_k.fillna(kwargs["fillna"], inplace=True) - stoch_d.fillna(kwargs["fillna"], inplace=True) - stoch_h.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _name = "STOCH" - _props = f"_{k}_{d}_{smooth_k}" - stoch_k.name = f"{_name}k{_props}" - stoch_d.name = f"{_name}d{_props}" - stoch_h.name = f"{_name}h{_props}" - stoch_k.category = stoch_d.category = stoch_h.category = "momentum" - - data = { - stoch_k.name: stoch_k, - stoch_d.name: stoch_d, - stoch_h.name: stoch_h - } - df = DataFrame(data, index=close.index) - df.name = f"{_name}{_props}" - df.category = stoch_k.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/stochf.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/stochf.py deleted file mode 100644 index 8b214321..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/stochf.py +++ /dev/null @@ -1,100 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - non_zero_range, - tal_ma, - v_mamode, - v_offset, - v_pos_default, - v_series, - v_talib -) - - - -def stochf( - high: Series, low: Series, close: Series, - k: Int = None, d: Int = None, - mamode: str = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Fast Stochastic - - This indicator, by George Lane in the 1950's, attempts to identify and - quantify momentum like STOCH, but is more volatile. - - Sources: - * [corporatefinanceinstitute](https://corporatefinanceinstitute.com/resources/knowledge/trading-investing/fast-stochastic-indicator/) - * [sierrachart](https://www.sierrachart.com/index.php?page=doc/StudiesReference.php&ID=333&Name=KD_-_Fast) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - k (int): The Fast %K period. Default: ```14``` - d (int): The Slow %D period. Default: ```3``` - mamode (str): See ```help(ta.ma)```. Default: ```"sma"``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - """ - # Validate - k = v_pos_default(k, 14) - d = v_pos_default(d, 3) - _length = k + d - 1 - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - mamode = v_mamode(mamode, "sma") - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import STOCHF - stochf_ = STOCHF(high, low, close, k, d, tal_ma(mamode)) - stochf_k, stochf_d = stochf_[0], stochf_[1] - else: - lowest_low = low.rolling(k).min() - highest_high = high.rolling(k).max() - - stochf_k = 100 * (close - lowest_low) \ - / non_zero_range(highest_high, lowest_low) - stochfk_fvi = stochf_k.loc[stochf_k.first_valid_index():, ] - stochf_d = ma(mamode, stochfk_fvi, length=d, talib=mode_tal) - - # Offset - if offset != 0: - stochf_k = stochf_k.shift(offset) - stochf_d = stochf_d.shift(offset) - - # Fill - if "fillna" in kwargs: - stochf_k.fillna(kwargs["fillna"], inplace=True) - stochf_d.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _name = "STOCHF" - _props = f"_{k}_{d}" - stochf_k.name = f"{_name}k{_props}" - stochf_d.name = f"{_name}d{_props}" - stochf_k.category = stochf_d.category = "momentum" - - data = {stochf_k.name: stochf_k, stochf_d.name: stochf_d} - df = DataFrame(data, index=close.index) - df.name = f"{_name}{_props}" - df.category = stochf_k.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/stochrsi.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/stochrsi.py deleted file mode 100644 index 4fe88410..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/stochrsi.py +++ /dev/null @@ -1,104 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.maps import Imports -from pandas_ta.momentum import rsi -from pandas_ta.utils import ( - non_zero_range, - v_mamode, - v_offset, - v_pos_default, - v_series, - v_talib -) - - - -def stochrsi( - close: Series, length: Int = None, rsi_length: Int = None, - k: Int = None, d: Int = None, mamode: str = None, - talib: bool = None, offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Stochastic RSI - - This indicator attempts to quantify RSI relative to its High-Low range. - - Sources: - * "Stochastic RSI and Dynamic Momentum Index", Tushar Chande and - Stanley Kroll, Stock & Commodities V.11:5 (189-199) - * [tradingview](https://www.tradingview.com/wiki/Stochastic_(STOCH)) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```14``` - rsi_length (int): RSI period. Default: ```14``` - k (int): The Fast %K period. Default: ```3``` - d (int): The Slow %K period. Default: ```3``` - mamode (str): See ```help(ta.ma)```. Default: ```"sma"``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - - Note: - May be more sensitive to RSI and thus identify potential "overbought" - or "oversold" signals. - """ - # Validate - length = v_pos_default(length, 14) - rsi_length = v_pos_default(rsi_length, 14) - k = v_pos_default(k, 3) - d = v_pos_default(d, 3) - _length = length + rsi_length + 2 - close = v_series(close, _length) - - if close is None: - return - - mamode = v_mamode(mamode, "sma") - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - # if Imports["talib"] and mode_tal: - # from talib import RSI - # rsi_ = RSI(close, length) - # else: - - rsi_ = rsi(close, length=rsi_length) - lowest_rsi = rsi_.rolling(length).min() - highest_rsi = rsi_.rolling(length).max() - - stoch = 100 * (rsi_ - lowest_rsi) / non_zero_range(highest_rsi, lowest_rsi) - - stochrsi_k = ma(mamode, stoch, length=k) - stochrsi_d = ma(mamode, stochrsi_k, length=d) - - # Offset - if offset != 0: - stochrsi_k = stochrsi_k.shift(offset) - stochrsi_d = stochrsi_d.shift(offset) - - # Fill - if "fillna" in kwargs: - stochrsi_k.fillna(kwargs["fillna"], inplace=True) - stochrsi_d.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _name = "STOCHRSI" - _props = f"_{length}_{rsi_length}_{k}_{d}" - stochrsi_k.name = f"{_name}k{_props}" - stochrsi_d.name = f"{_name}d{_props}" - stochrsi_k.category = stochrsi_d.category = "momentum" - - data = {stochrsi_k.name: stochrsi_k, stochrsi_d.name: stochrsi_d} - df = DataFrame(data, index=close.index) - df.name = f"{_name}{_props}" - df.category = stochrsi_k.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/tmo.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/tmo.py deleted file mode 100644 index b046602a..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/tmo.py +++ /dev/null @@ -1,129 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan, zeros -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.utils import ( - sum_signed_rolling_deltas, - v_bool, - v_mamode, - v_offset, - v_pos_default, - v_series -) - - -def tmo( - open_: Series, close: Series, tmo_length: Int = None, - calc_length: Int = None, smooth_length: Int = None, - momentum: bool = None, normalize: bool = None, exclusive: bool = None, - mamode: str = None, offset: Int = None, **kwargs: DictLike, -) -> DataFrame: - """True Momentum Oscillator - - This indicator attempts to quantify momentum. - - Sources: - * [tradingview A](https://www.tradingview.com/script/VRwDppqd-True-Momentum-Oscillator/) - * [tradingview B](https://www.tradingview.com/script/65vpO7T5-True-Momentum-Oscillator-Universal-Edition/) - - Parameters: - open_ (Series): ```open``` Series - close (Series): ```close``` Series - tmo_length (int): TMO period. Default: ```14``` - calc_length (int): Initial MA period. Default: ```5``` - smooth_length (int): Main and smooth signal MA period. Default: ```3``` - mamode (str): See ```help(ta.ma)```. Default: ```"ema"``` - momentum (bool): Compute main and smooth momentum. Default: ```False``` - normalize (bool): Normalize. Default: ```False``` - exclusive (bool): Exclusive period over ```n``` bars, or inclusively - over ```n-1``` bars. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): DataFrame.fillna(value) - - Returns: - (DataFrame): 4 columns - """ - # Validate - tmo_length = v_pos_default(tmo_length, 14) - calc_length = v_pos_default(calc_length, 5) - smooth_length = v_pos_default(smooth_length, 3) - _length = max(tmo_length, calc_length, smooth_length) - - open_ = v_series(open_, _length) - close = v_series(close, _length) - offset = v_offset(offset) - - if "length" in kwargs: - kwargs.pop("length") - - if open_ is None or close is None: - return None - - mamode = v_mamode(mamode, "ema") - compute_momentum = v_bool(momentum, False) - normalize_signal = v_bool(normalize, False) - exclusive = v_bool(exclusive, True) - - signed_diff_sum = sum_signed_rolling_deltas( - open_, close, tmo_length, exclusive=exclusive - ) - if all(isnan(signed_diff_sum)): - return None # Emergency Break - - initial_ma = ma(mamode, signed_diff_sum, length=calc_length) - if all(isnan(initial_ma)): - return None # Emergency Break - - main = ma(mamode, initial_ma, length=smooth_length) - if all(isnan(main)): - return None # Emergency Break - - smooth = ma(mamode, main, length=smooth_length) - if all(isnan(smooth)): - return None # Emergency Break - - if compute_momentum: - mom_main = main - main.shift(tmo_length) - mom_smooth = smooth - smooth.shift(tmo_length) - else: - zero_array = zeros(main.size) - mom_main = Series(zero_array, index=main.index) - mom_smooth = Series(zero_array, index=smooth.index) - - # Offset - if offset != 0: - main = main.shift(offset) - smooth = smooth.shift(offset) - mom_main = mom_main.shift(offset) - mom_smooth = mom_smooth.shift(offset) - - # Fill - if "fillna" in kwargs: - main.fillna(kwargs["fillna"], inplace=True) - smooth.fillna(kwargs["fillna"], inplace=True) - mom_main.fillna(kwargs["fillna"], inplace=True) - mom_smooth.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{tmo_length}_{calc_length}_{smooth_length}" - main.name = f"TMO{_props}" - smooth.name = f"TMOs{_props}" - mom_main.name = f"TMOM{_props}" - mom_smooth.name = f"TMOMs{_props}" - main.category = smooth.category = "momentum" - mom_main.category = mom_smooth.category = main.category - - data = { - main.name: main, - smooth.name: smooth, - mom_main.name: mom_main, - mom_smooth.name: mom_smooth, - } - df = DataFrame(data, index=close.index) - df.name = f"TMO{_props}" - df.category = main.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/trix.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/trix.py deleted file mode 100644 index 123bf7de..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/trix.py +++ /dev/null @@ -1,93 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.overlap.ema import ema -from pandas_ta.utils import ( - v_drift, - v_offset, - v_pos_default, - v_scalar, - v_series -) - - - -def trix( - close: Series, length: Int = None, signal: Int = None, - scalar: IntFloat = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Trix - - This indicator attempts to identify divergences as an oscillator. - - Sources: - * [tradingview](https://www.tradingview.com/wiki/TRIX) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```18``` - signal (int): Signal period. Default: ```9``` - scalar (float): Scalar. Default: ```100``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 30) - signal = v_pos_default(signal, 9) - if length < signal: - length, signal = signal, length - _length = 3 * length - 1 - close = v_series(close, _length) - - if close is None: - return - - scalar = v_scalar(scalar, 100) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - ema1 = ema(close=close, length=length, **kwargs) - if all(isnan(ema1)): - return # Emergency Break - - ema2 = ema(close=ema1, length=length, **kwargs) - if all(isnan(ema2)): - return # Emergency Break - - ema3 = ema(close=ema2, length=length, **kwargs) - if all(isnan(ema3)): - return # Emergency Break - - trix = scalar * ema3.pct_change(drift) - trix_signal = trix.rolling(signal).mean() - - # Offset - if offset != 0: - trix = trix.shift(offset) - trix_signal = trix_signal.shift(offset) - - # Fill - if "fillna" in kwargs: - trix.fillna(kwargs["fillna"], inplace=True) - trix_signal.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - trix.name = f"TRIX_{length}_{signal}" - trix_signal.name = f"TRIXs_{length}_{signal}" - trix.category = trix_signal.category = "momentum" - - data = {trix.name: trix, trix_signal.name: trix_signal} - df = DataFrame(data, index=close.index) - df.name = f"TRIX_{length}_{signal}" - df.category = "momentum" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/tsi.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/tsi.py deleted file mode 100644 index 025a0f47..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/tsi.py +++ /dev/null @@ -1,106 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.ma import ma -from pandas_ta.overlap import ema -from pandas_ta.utils import ( - v_drift, - v_mamode, - v_offset, - v_pos_default, - v_scalar, - v_series -) - - - -def tsi( - close: Series, fast: Int = None, slow: Int = None, - signal: Int = None, scalar: IntFloat = None, - mamode: str = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """True Strength Index - - This indicator attempts to identify short-term swings in trend direction - as well as identifying possible "overbought" and "oversold" signals. - - Sources: - * [investopedia](https://www.investopedia.com/terms/t/tsi.asp) - - Parameters: - close (Series): ```close``` Series - fast (int): Fast MA period. Default: ```13``` - slow (int): Slow MA period. Default: ```25``` - signal (int): Signal period. Default: ```13``` - scalar (float): Scalar. Default: ```100``` - mamode (str): Signal MA. See ```help(ta.ma)```. Default: ```"ema"``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - """ - # Validate - fast = v_pos_default(fast, 13) - slow = v_pos_default(slow, 25) - signal = v_pos_default(signal, 13) - if slow < fast: - fast, slow = slow, fast - _length = slow + signal + 1 - close = v_series(close, _length) - - if "length" in kwargs: - kwargs.pop("length") - - if close is None: - return - - scalar = v_scalar(scalar, 100) - mamode = v_mamode(mamode, "ema") - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - diff = close.diff(drift) - slow_ema = ema(close=diff, length=slow, **kwargs) - if all(isnan(slow_ema)): - return # Emergency Break - fast_slow_ema = ema(close=slow_ema, length=fast, **kwargs) - - abs_diff = diff.abs() - abs_slow_ema = ema(close=abs_diff, length=slow, **kwargs) - if all(isnan(abs_slow_ema)): - return # Emergency Break - abs_fast_slow_ema = ema(close=abs_slow_ema, length=fast, **kwargs) - - tsi = scalar * fast_slow_ema / abs_fast_slow_ema - if all(isnan(tsi)): - return # Emergency Break - tsi_signal = ma(mamode, tsi, length=signal) - - # Offset - if offset != 0: - tsi = tsi.shift(offset) - tsi_signal = tsi_signal.shift(offset) - - # Fill - if "fillna" in kwargs: - tsi.fillna(kwargs["fillna"], inplace=True) - tsi_signal.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - tsi.name = f"TSI_{fast}_{slow}_{signal}" - tsi_signal.name = f"TSIs_{fast}_{slow}_{signal}" - tsi.category = tsi_signal.category = "momentum" - - data = {tsi.name: tsi, tsi_signal.name: tsi_signal} - df = DataFrame(data, index=close.index) - df.name = f"TSI_{fast}_{slow}_{signal}" - df.category = "momentum" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/uo.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/uo.py deleted file mode 100644 index ab407b3a..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/uo.py +++ /dev/null @@ -1,105 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - v_drift, - v_offset, - v_pos_default, - v_series, - v_talib -) - - - -def uo( - high: Series, low: Series, close: Series, - fast: Int = None, medium: Int = None, slow: Int = None, - fast_w: IntFloat = None, medium_w: IntFloat = None, slow_w: IntFloat = None, - talib: bool = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Ultimate Oscillator - - This indicator, by Larry Williams, attempts to identify momentum. - - Sources: - * [tradingview](https://www.tradingview.com/wiki/Ultimate_Oscillator_(UO)) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - fast (int): The Fast %K period. Default: ```7``` - medium (int): The Slow %K period. Default: ```14``` - slow (int): The Slow %D period. Default: ```28``` - fast_w (float): The Fast %K period. Default: ```4.0``` - medium_w (float): The Slow %K period. Default: ```2.0``` - slow_w (float): The Slow %D period. Default: ```1.0``` - talib (bool): If installed, use TA Lib. Default: ```True``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - fast = v_pos_default(fast, 7) - medium = v_pos_default(medium, 14) - slow = v_pos_default(slow, 28) - _length = max(fast, medium, slow) + 1 - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - fast_w = v_pos_default(fast_w, 4.0) - medium_w = v_pos_default(medium_w, 2.0) - slow_w = v_pos_default(slow_w, 1.0) - mode_tal = v_talib(talib) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import ULTOSC - uo = ULTOSC(high, low, close, fast, medium, slow) - else: - close_drift = close.shift(drift) - tdf = DataFrame({ - "high": high, "low": low, f"close_{drift}": close_drift - }) - max_h_or_pc = tdf.loc[:, ["high", f"close_{drift}"]].max(axis=1) - min_l_or_pc = tdf.loc[:, ["low", f"close_{drift}"]].min(axis=1) - del tdf - - bp = close - min_l_or_pc - tr = max_h_or_pc - min_l_or_pc - - fast_avg = bp.rolling(fast).sum() / tr.rolling(fast).sum() - medium_avg = bp.rolling(medium).sum() / tr.rolling(medium).sum() - slow_avg = bp.rolling(slow).sum() / tr.rolling(slow).sum() - - total_weight = fast_w + medium_w + slow_w - weights = (fast_w * fast_avg) + (medium_w * medium_avg) \ - + (slow_w * slow_avg) - uo = 100 * weights / total_weight - - # Offset - if offset != 0: - uo = uo.shift(offset) - - # Fill - if "fillna" in kwargs: - uo.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - uo.name = f"UO_{fast}_{medium}_{slow}" - uo.category = "momentum" - - return uo diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/willr.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/willr.py deleted file mode 100644 index c83c1272..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/momentum/willr.py +++ /dev/null @@ -1,75 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import v_offset, v_pos_default, v_series, v_talib - - - -def willr( - high: Series, low: Series, close: Series, - length: Int = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """William's Percent R - - This indicator attempts to identify "overbought" and "oversold" - conditions similar to the RSI. - - Sources: - * [tradingview](https://www.tradingview.com/wiki/Williams_%25R_(%25R)) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```14``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 14) - if "min_periods" in kwargs and kwargs["min_periods"] is not None: - min_periods = int(kwargs["min_periods"]) - else: - min_periods = length - _length = max(length, min_periods) - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import WILLR - willr = WILLR(high, low, close, length) - else: - lowest_low = low.rolling(length, min_periods=min_periods).min() - highest_high = high.rolling(length, min_periods=min_periods).max() - - willr = 100 * ((close - lowest_low) / (highest_high - lowest_low) - 1) - - # Offset - if offset != 0: - willr = willr.shift(offset) - - # Fill - if "fillna" in kwargs: - willr.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - willr.name = f"WILLR_{length}" - willr.category = "momentum" - - return willr diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/__init__.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/__init__.py deleted file mode 100644 index d68ac52d..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/__init__.py +++ /dev/null @@ -1,77 +0,0 @@ -# -*- coding: utf-8 -*- -from .alligator import alligator -from .alma import alma -from .dema import dema -from .ema import ema -from .fwma import fwma -from .hilo import hilo -from .hl2 import hl2 -from .hlc3 import hlc3 -from .hma import hma -from .hwma import hwma -from .ichimoku import ichimoku -from .jma import jma -from .kama import kama -from .linreg import linreg -from .mama import mama -from .mcgd import mcgd -from .midpoint import midpoint -from .midprice import midprice -from .ohlc4 import ohlc4 -from .pivots import pivots -from .pwma import pwma -from .rma import rma -from .sinwma import sinwma -from .sma import sma -from .smma import smma -from .ssf import ssf -from .ssf3 import ssf3 -from .supertrend import supertrend -from .swma import swma -from .t3 import t3 -from .tema import tema -from .trima import trima -from .vidya import vidya -from .wcp import wcp -from .wma import wma -from .zlma import zlma - - -__all__ = [ - "alligator", - "alma", - "dema", - "ema", - "fwma", - "hilo", - "hl2", - "hlc3", - "hma", - "hwma", - "ichimoku", - "jma", - "kama", - "linreg", - "mama", - "mcgd", - "midpoint", - "midprice", - "ohlc4", - "pivots", - "pwma", - "rma", - "sinwma", - "sma", - "smma", - "ssf", - "ssf3", - "supertrend", - "swma", - "t3", - "tema", - "trima", - "vidya", - "wcp", - "wma", - "zlma", -] diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/alligator.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/alligator.py deleted file mode 100644 index 67dd95f0..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/alligator.py +++ /dev/null @@ -1,86 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_offset, v_pos_default, v_series, v_talib -from .smma import smma - - - -def alligator( - close: Series, jaw: Int = None, teeth: Int = None, lips: Int = None, - talib: bool = None, offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Bill Williams Alligator - - This indicator, by Bill Williams, attempts to identify trends. - - Sources: - * [sierrachart](https://www.sierrachart.com/index.php?page=doc/StudiesReference.php&ID=175&Name=Bill_Williams_Alligator) - * [tradingview](https://www.tradingview.com/scripts/alligator/) - - Parameters: - close (Series): ```close``` Series - jaw (int): Jaw period. Default: ```13``` - teeth (int): Teeth period. Default: ```8``` - lips (int): Lips period. Default: ```5``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3 columns - - Tip: - To avoid data leaks, offsets are to be done manually. - - Note: - Williams believed the fx market trends between 15% and 30% of the - time. Otherwise it is range bound. Inspired by fractal geometry, - where the outputs are meant to resemble an alligator opening and - closing its mouth. It It consists of 3 lines: Jaw, Teeth, and - Lips which each have differing lengths. - """ - # Validate - jaw = v_pos_default(jaw, 13) - teeth = v_pos_default(teeth, 8) - lips = v_pos_default(lips, 5) - close = v_series(close, max(jaw, teeth, lips)) - - if close is None: - return - - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - gator_jaw = smma(close, length=jaw, talib=mode_tal) - gator_teeth = smma(close, length=teeth, talib=mode_tal) - gator_lips = smma(close, length=lips, talib=mode_tal) - - # Offset - if offset != 0: - gator_jaw = gator_jaw.shift(offset) - gator_teeth = gator_teeth.shift(offset) - gator_lips = gator_lips.shift(offset) - - # Fill - if "fillna" in kwargs: - gator_jaw.fillna(kwargs["fillna"], inplace=True) - gator_teeth.fillna(kwargs["fillna"], inplace=True) - gator_lips.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{jaw}_{teeth}_{lips}" - data = { - f"AGj{_props}": gator_jaw, - f"AGt{_props}": gator_teeth, - f"AGl{_props}": gator_lips - } - df = DataFrame(data, index=close.index) - - df.name = f"AG{_props}" - df.category = "overlap" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/alma.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/alma.py deleted file mode 100644 index 1ca3f3b6..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/alma.py +++ /dev/null @@ -1,81 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import append, arange, array, exp, floor, nan, tensordot -from numpy.version import version as np_version -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas import Series -from pandas_ta.utils import strided_window, v_offset, v_pos_default, v_series - - - -def alma( - close: Series, length: Int = None, - sigma: IntFloat = None, dist_offset: IntFloat = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Arnaud Legoux Moving Average - - This indicator attempts to reduce lag with Gaussian smoothing. - - Sources: - * [prorealcode](https://www.prorealcode.com/prorealtime-indicators/alma-arnaud-legoux-moving-average/) - * [sierrachart](https://www.sierrachart.com/index.php?page=doc/StudiesReference.php&ID=475&Name=Moving_Average_-_Arnaud_Legoux) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```9``` - sigma (float): Smoothing value. Default ```6.0``` - dist_offset (float): Distribution offset, range ```[0, 1]```. - Default ```0.85``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 9) - close = v_series(close, length) - - if close is None: - return - - sigma = v_pos_default(sigma, 6.0) - - if isinstance(dist_offset, float) and 0 <= dist_offset <= 1: - offset_ = float(dist_offset) - else: - offset_ = 0.85 - - offset = v_offset(offset) - - # Calculate - np_close = close.to_numpy() - x = arange(length) - k = floor(offset_ * (length - 1)) - weights = exp(-0.5 * ((sigma / length) * (x - k)) ** 2) - weights /= weights.sum() - - if np_version >= "1.20.0": - from numpy.lib.stride_tricks import sliding_window_view - window = sliding_window_view(np_close, length) - else: - window = strided_window(np_close, length) - result = append(array([nan] * (length - 1)), - tensordot(window, weights, axes=1)) - alma = Series(result, index=close.index) - - # Offset - if offset != 0: - alma = alma.shift(offset) - - # Fill - if "fillna" in kwargs: - alma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - alma.name = f"ALMA_{length}_{sigma}_{offset_}" - alma.category = "overlap" - - return alma diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/dema.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/dema.py deleted file mode 100644 index e58ab701..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/dema.py +++ /dev/null @@ -1,75 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import v_offset, v_pos_default, v_series, v_talib -from .ema import ema - - - -def dema( - close: Series, length: Int = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Double Exponential Moving Average - - This indicator attempts to create a smoother average with less lag than - the EMA. - - Sources: - * [tradingtechnologies](https://www.tradingtechnologies.com/help/x-study/technical-indicator-definitions/double-exponential-moving-average-dema/) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Warning: - TA-Lib Correlation: ```np.float64(0.9999894518202522)``` - - Tip: - Corrective contributions welcome! - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, length) - - if close is None: - return - - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import DEMA - dema = DEMA(close, length) - else: - ema1 = ema(close=close, length=length, talib=mode_tal) - ema2 = ema(close=ema1, length=length, talib=mode_tal) - dema = 2 * ema1 - ema2 - - if all(isnan(dema.to_numpy())): - return # Emergency Break - - # Offset - if offset != 0: - dema = dema.shift(offset) - - # Fill - if "fillna" in kwargs: - dema.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - dema.name = f"DEMA_{length}" - dema.category = "overlap" - - return dema diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ema.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ema.py deleted file mode 100644 index b41e5521..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ema.py +++ /dev/null @@ -1,80 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import nan -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - v_bool, - v_offset, - v_pos_default, - v_series, - v_talib -) - - - -def ema( - close: Series, length: Int = None, - talib: bool = None, presma: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Exponential Moving Average - - This Moving Average is more responsive than the Simple Moving - Average (SMA). - - Sources: - * [investopedia](https://www.investopedia.com/ask/answers/122314/what-exponential-moving-average-ema-formula-and-how-ema-calculated.asp) - * [stockcharts](https://stockcharts.com/school/doku.php?id=chart_school:technical_indicators:moving_averages) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - talib (bool): If installed, use TA Lib. Default: ```True``` - presma (bool): Initialize with SMA like TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - adjust (bool): Default: ```False``` - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, length) - - if close is None: - return - - mode_tal = v_talib(talib) - presma = v_bool(presma, True) - offset = v_offset(offset) - adjust = kwargs.setdefault("adjust", False) - - # Calculate - if Imports["talib"] and mode_tal and length > 1: - from talib import EMA - ema = EMA(close, length) - else: - if presma: # TA Lib implementation - close = close.copy() - sma_nth = close.iloc[0:length].mean() - close.iloc[:length - 1] = nan - close.iloc[length - 1] = sma_nth - ema = close.ewm(span=length, adjust=adjust).mean() - - # Offset - if offset != 0: - ema = ema.shift(offset) - - # Fill - if "fillna" in kwargs: - ema.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - ema.name = f"EMA_{length}" - ema.category = "overlap" - - return ema diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/fwma.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/fwma.py deleted file mode 100644 index eee67a80..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/fwma.py +++ /dev/null @@ -1,66 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import ( - fibonacci, - v_ascending, - v_offset, - v_pos_default, - v_series, - weights -) - - - -def fwma( - close: Series, length: Int = None, asc: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Fibonacci's Weighted Moving Average - - This indicator, by Kevin Johnson, is similar to a Weighted Moving Average - (WMA) where the weights are based on the Fibonacci Sequence. - - Sources: - * Kevin Johnson - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - asc (bool): Recent values weigh more. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, length) - - if close is None: - return - - asc = v_ascending(asc) - offset = v_offset(offset) - - # Calculate - fibs = fibonacci(n=length, weighted=True) - fwma = close.rolling(length, min_periods=length) \ - .apply(weights(fibs), raw=True) - - # Offset - if offset != 0: - fwma = fwma.shift(offset) - - # Fill - if "fillna" in kwargs: - fwma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - fwma.name = f"FWMA_{length}" - fwma.category = "overlap" - - return fwma diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hilo.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hilo.py deleted file mode 100644 index d359be13..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hilo.py +++ /dev/null @@ -1,100 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import nan -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.utils import v_mamode, v_offset, v_pos_default, v_series - - - -def hilo( - high: Series, low: Series, close: Series, - high_length: Int = None, low_length: Int = None, mamode: str = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Gann HiLo Activator - - This indicator, by Robert Krausz, uses two different Moving Averages to - identify trends. - - Sources: - * Gann HiLo Activator, , Stocks & Commodities Magazine, 1998 - * [sierrachart](https://www.sierrachart.com/index.php?page=doc/StudiesReference.php&ID=447&Name=Gann_HiLo_Activator) - * [tradingview](https://www.tradingview.com/script/XNQSLIYb-Gann-High-Low/) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - high_length (int): High period. Default: ```13``` - low_length (int): Low period. Default: ```21``` - mamode (str): See ```help(ta.ma)```. Default: ```"sma"``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3 columns - - Note: - Increasing ```high_length``` and decreasing ```low_length``` is - better for short trades and vice versa for long trades. - """ - # Validate - high_length = v_pos_default(high_length, 13) - low_length = v_pos_default(low_length, 21) - _length = max(high_length, low_length) + 1 - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - mamode = v_mamode(mamode, "sma") - offset = v_offset(offset) - - # Calculate - m = close.size - hilo = Series(nan, index=close.index) - long = Series(nan, index=close.index) - short = Series(nan, index=close.index) - - high_ma = ma(mamode, high, length=high_length) - low_ma = ma(mamode, low, length=low_length) - - for i in range(1, m): - if close.iat[i] > high_ma.iat[i - 1]: - hilo.iat[i] = long.iat[i] = low_ma.iat[i] - elif close.iat[i] < low_ma.iat[i - 1]: - hilo.iat[i] = short.iat[i] = high_ma.iat[i] - else: - hilo.iat[i] = hilo.iat[i - 1] - long.iat[i] = short.iat[i] = hilo.iat[i - 1] - - # Offset - if offset != 0: - hilo = hilo.shift(offset) - long = long.shift(offset) - short = short.shift(offset) - - # Fill - if "fillna" in kwargs: - hilo.fillna(kwargs["fillna"], inplace=True) - long.fillna(kwargs["fillna"], inplace=True) - short.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{high_length}_{low_length}" - data = { - f"HILO{_props}": hilo, - f"HILOl{_props}": long, - f"HILOs{_props}": short - } - df = DataFrame(data, index=close.index) - - df.name = f"HILO{_props}" - df.category = "overlap" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hl2.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hl2.py deleted file mode 100644 index 281bc72b..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hl2.py +++ /dev/null @@ -1,52 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_offset, v_series - - - -def hl2( - high: Series, low: Series, - offset: Int = None, **kwargs: DictLike -) -> Series: - """HL2 - - HL2 is the midpoint/average of high and low. - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)```. - Only works when offset. - - Returns: - (Series): 1 column - """ - # Validate - high = v_series(high) - low = v_series(low) - offset = v_offset(offset) - - if high is None or low is None: - return - - # Calculate - avg = 0.5 * (high.to_numpy() + low.to_numpy()) - hl2 = Series(avg, index=high.index) - - # Offset - if offset != 0: - hl2 = hl2.shift(offset) - - # Fill - if "fillna" in kwargs: - hl2.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - hl2.name = "HL2" - hl2.category = "overlap" - - return hl2 diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hlc3.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hlc3.py deleted file mode 100644 index 7287d3ab..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hlc3.py +++ /dev/null @@ -1,60 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import v_offset, v_series, v_talib - - - -def hlc3( - high: Series, low: Series, close: Series, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """HLC3 - - HLC3 is the average of high, low and close. - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)```. - Only works when offset. - - Returns: - (Series): 1 column - """ - # Validate - high = v_series(high) - low = v_series(low) - close = v_series(close) - mode_tal = v_talib(talib) - offset = v_offset(offset) - - if high is None or low is None or close is None: - return - - # Calculate - if Imports["talib"] and mode_tal and close.size: - from talib import TYPPRICE - hlc3 = TYPPRICE(high, low, close) - else: - avg = (high.to_numpy() + low.to_numpy() + close.to_numpy()) / 3.0 - hlc3 = Series(avg, index=close.index) - - # Offset - if offset != 0: - hlc3 = hlc3.shift(offset) - - # Fill - if "fillna" in kwargs: - hlc3.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - hlc3.name = "HLC3" - hlc3.category = "overlap" - - return hlc3 diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hma.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hma.py deleted file mode 100644 index db39e9eb..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hma.py +++ /dev/null @@ -1,72 +0,0 @@ -# -*- coding: utf-8 -*- -from sys import modules as module_ -from numpy import sqrt -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_mamode, v_offset, v_pos_default, v_series -from .ema import ema -from .sma import sma -from .wma import wma - - - -def hma( - close: Series, length: Int = None, mamode: str = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Hull Moving Average - - This indicator, by Alan Hull, attempts to reduce lag compared to - classical moving averages. - - Sources: - * [Alan Hull](https://alanhull.com/hull-moving-average) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - mamode (str): One of: 'ema', 'sma', or 'wma'. Default: ```"wma"``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, length + 2) - - if close is None: - return - - mamode = v_mamode(mamode, "wma") - offset = v_offset(offset) - - if mamode not in ["ema", "sma", "wma"]: - return - - _ma = getattr(module_[__name__], mamode) - - # Calculate - half_length = int(length / 2) - sqrt_length = int(sqrt(length)) - - maf = _ma(close, length=half_length) - mas = _ma(close, length=length) - hma = _ma(close=2 * maf - mas, length=sqrt_length) - - # Offset - if offset != 0: - hma = hma.shift(offset) - - # Fill - if "fillna" in kwargs: - hma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - hma.name = f"HMA{"" if mamode == "wma" else mamode[0]}_{length}" - hma.category = "overlap" - - return hma diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hwma.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hwma.py deleted file mode 100644 index 8a43c301..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/hwma.py +++ /dev/null @@ -1,73 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import v_offset, v_series - - - -def hwma( - close: Series, - na: IntFloat = None, nb: IntFloat = None, nc: IntFloat = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Holt-Winter Moving Average - - This indicator uses a three parameter Holt-Winter Moving Average for - smoothing. - - Sources: - * [rengel8](https://github.com/rengel8) based on a publication for - MetaTrader 5. - * [mql5](https://www.mql5.com/en/code/20856) - - Parameters: - close (Series): ```close``` Series - na (float): Smoothed series parameter (from 0 to 1). Default: 0.2 - nb (float): Trend parameter (from 0 to 1). Default: 0.1 - nc (float): Seasonality parameter (from 0 to 1). Default: 0.1 - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - Series: 1 column - """ - # Validate - close = v_series(close, 1) - na = float(na) if isinstance(na, float) and 0 < na < 1 else 0.2 - nb = float(nb) if isinstance(nb, float) and 0 < nb < 1 else 0.1 - nc = float(nc) if isinstance(nc, float) and 0 < nc < 1 else 0.1 - offset = v_offset(offset) - - if close is None: - return - - # Calculate - last_a = last_v = 0 - last_f = close.iloc[0] - - result = [] - m = close.size - for i in range(m): - F = (1.0 - na) * (last_f + last_v + 0.5 * last_a) + na * close.iloc[i] - V = (1.0 - nb) * (last_v + last_a) + nb * (F - last_f) - A = (1.0 - nc) * last_a + nc * (V - last_v) - result.append((F + V + 0.5 * A)) - last_a, last_f, last_v = A, F, V # update values - - hwma = Series(result, index=close.index) - - # Offset - if offset != 0: - hwma = hwma.shift(offset) - - # Fill - if "fillna" in kwargs: - hwma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - hwma.name = f"HWMA_{na}_{nb}_{nc}" - hwma.category = "overlap" - - return hwma diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ichimoku.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ichimoku.py deleted file mode 100644 index cf4df242..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ichimoku.py +++ /dev/null @@ -1,131 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, RangeIndex, Timedelta, Series, date_range -from pandas_ta._typing import DictLike, Int, Tuple -from pandas_ta.utils import v_offset, v_pos_default, v_series -from .midprice import midprice - - - -def ichimoku( - high: Series, low: Series, close: Series, - tenkan: Int = None, kijun: Int = None, senkou: Int = None, - include_chikou: bool = True, - offset: Int = None, **kwargs: DictLike -) -> Tuple[DataFrame, DataFrame]: - """Ichimoku Kinkō Hyō - - A forecasting model used in Japaese financial markets Pre WWII. - - Sources: - * [tradingtechnologies](https://www.tradingtechnologies.com/help/x-study/technical-indicator-definitions/ichimoku-ich/) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - tenkan (int): Tenkan period. Default: ```9``` - kijun (int): Kijun period. Default: ```26``` - senkou (int): Senkou period. Default: ```52``` - include_chikou (bool): Whether to include chikou component. - Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - lookahead (value): To avoid data leakage set to ```False```. - - Returns: - (Tuple[pd.DataFrame, pd.DataFrame]): - * Historical DataFrame, 5 columns - * Forward Looking DataFrame, 2 columns - - Danger: Possible Data Leak - Set ```lookahead=False``` to avoid data leakage. Issue [#60](https://github.com/twopirllc/pandas-ta/issues/60#). - """ - # Validate - tenkan = v_pos_default(tenkan, 9) - kijun = v_pos_default(kijun, 26) - senkou = v_pos_default(senkou, 52) - _length = max(tenkan, kijun, senkou) - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return None, None - - offset = v_offset(offset) - if not kwargs.get("lookahead", True): - include_chikou = False - - # Calculate - tenkan_sen = midprice(high=high, low=low, length=tenkan) - kijun_sen = midprice(high=high, low=low, length=kijun) - span_a = 0.5 * (tenkan_sen + kijun_sen) - span_b = midprice(high=high, low=low, length=senkou) - - # Copy Span A and B values before their shift - _span_a = span_a[-kijun:].shift(-1).copy() - _span_b = span_b[-kijun:].shift(-1).copy() - - span_a = span_a.shift(kijun - 1) - span_b = span_b.shift(kijun - 1) - chikou_span = close.shift(-kijun + 1) - - # Offset - if offset != 0: - tenkan_sen = tenkan_sen.shift(offset) - kijun_sen = kijun_sen.shift(offset) - span_a = span_a.shift(offset) - span_b = span_b.shift(offset) - chikou_span = chikou_span.shift(offset) - - # Fill - if "fillna" in kwargs: - span_a.fillna(kwargs["fillna"], inplace=True) - span_b.fillna(kwargs["fillna"], inplace=True) - chikou_span.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - span_a.name = f"ISA_{tenkan}" - span_b.name = f"ISB_{kijun}" - tenkan_sen.name = f"ITS_{tenkan}" - kijun_sen.name = f"IKS_{kijun}" - chikou_span.name = f"ICS_{kijun}" - - chikou_span.category = kijun_sen.category = tenkan_sen.category = "overlap" - span_b.category = span_a.category = chikou_span - - # Prepare Ichimoku DataFrame - data = { - span_a.name: span_a, - span_b.name: span_b, - tenkan_sen.name: tenkan_sen, - kijun_sen.name: kijun_sen, - } - if include_chikou: - data[chikou_span.name] = chikou_span - - ichimokudf = DataFrame(data, index=close.index) - ichimokudf.name = f"ICHIMOKU_{tenkan}_{kijun}_{senkou}" - ichimokudf.category = "overlap" - - # Prepare Span DataFrame - last = close.index[-1] - if close.index.dtype == "int64": - ext_index = RangeIndex(start=last + 1, stop=last + kijun + 1) - spandf = DataFrame(index=ext_index, columns=[span_a.name, span_b.name]) - _span_a.index = _span_b.index = ext_index - else: - df_freq = close.index.value_counts().mode()[0] - tdelta = Timedelta(df_freq, unit="d") - new_dt = date_range(start=last + tdelta, periods=kijun, freq="B") - spandf = DataFrame(index=new_dt, columns=[span_a.name, span_b.name]) - _span_a.index = _span_b.index = new_dt - - spandf[span_a.name] = _span_a - spandf[span_b.name] = _span_b - spandf.name = f"ICHISPAN_{tenkan}_{kijun}" - spandf.category = "overlap" - - return ichimokudf, spandf diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/jma.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/jma.py deleted file mode 100644 index d47d7799..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/jma.py +++ /dev/null @@ -1,117 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import average, log, nan, sqrt, zeros_like -from numpy import power as np_power -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import v_float, v_offset, v_pos_default, v_series - - - -def jma( - close: Series, length: IntFloat = None, phase: IntFloat = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Jurik Moving Average Average - - This indicator, by Mark Jurik, attempts to eliminate noise. It claims - to have extremely low lag, is very smooth and is responsive to gaps. - - Sources: - * [mql5](https://c.mql5.com/forextsd/forum/164/jurik_1.pdf) - * [prorealcode](https://www.prorealcode.com/prorealtime-indicators/jurik-volatility-bands/) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```7``` - phase (float): Phase value between [-100, 100]. Default: ```0``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - _length = v_pos_default(length, 7) - close = v_series(close, _length) - - if close is None: - return - - phase = v_float(phase, 0.0) - offset = v_offset(offset) - - # Calculate - jma = zeros_like(close) - volty = zeros_like(close) - v_sum = zeros_like(close) - - kv = det0 = det1 = ma2 = 0.0 - jma[0] = ma1 = uBand = lBand = close.iloc[0] - - # Static variables - sum_length = 10 - length = 0.5 * (_length - 1) - pr = 0.5 if phase < -100 else 2.5 if phase > 100 else 1.5 + phase * 0.01 - length1 = max((log(sqrt(length)) / log(2.0)) + 2.0, 0) - pow1 = max(length1 - 2.0, 0.5) - length2 = length1 * sqrt(length) - bet = length2 / (length2 + 1) - beta = 0.45 * (_length - 1) / (0.45 * (_length - 1) + 2.0) - - m = close.shape[0] - for i in range(1, m): - price = close.iloc[i] - - # Price volatility - del1 = price - uBand - del2 = price - lBand - volty[i] = max(abs(del1), abs(del2)) if abs(del1) != abs(del2) else 0 - - # Relative price volatility factor - v_sum[i] = v_sum[i - 1] + \ - (volty[i] - volty[max(i - sum_length, 0)]) / sum_length - avg_volty = average(v_sum[max(i - 65, 0):i + 1]) - d_volty = 0 if avg_volty == 0 else volty[i] / avg_volty - r_volty = max(1.0, min(np_power(length1, 1 / pow1), d_volty)) - # r_volty = max(1.0, min(length1 **(1 / pow1), d_volty)) - - # Jurik volatility bands - pow2 = np_power(r_volty, pow1) - kv = np_power(bet, sqrt(pow2)) - uBand = price if (del1 > 0) else price - (kv * del1) - lBand = price if (del2 < 0) else price - (kv * del2) - - # Jurik Dynamic Factor - power = np_power(r_volty, pow1) - alpha = np_power(beta, power) - - # 1st stage - preliminary smoothing by adaptive EMA - ma1 = (1 - alpha) * price + alpha * ma1 - - # 2nd stage - one more preliminary smoothing by Kalman filter - det0 = (1 - beta) * (price - ma1) + beta * det0 - ma2 = ma1 + pr * det0 - - # 3rd stage - final smoothing by unique Jurik adaptive filter - det1 = ((ma2 - jma[i - 1]) * (1 - alpha) * \ - (1 - alpha)) + (alpha * alpha * det1) - jma[i] = jma[i - 1] + det1 - - jma = Series(jma, index=close.index) - jma.iloc[0:_length - 1] = nan - - # Offset - if offset != 0: - jma = jma.shift(offset) - - # Fill - if "fillna" in kwargs: - jma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - jma.name = f"JMA_{_length}_{phase}" - jma.category = "overlap" - - return jma diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/kama.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/kama.py deleted file mode 100644 index c98f28eb..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/kama.py +++ /dev/null @@ -1,94 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import nan -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.utils import ( - non_zero_range, - v_drift, - v_mamode, - v_offset, - v_pos_default, - v_series -) - - - -def kama( - close: Series, length: Int = None, fast: Int = None, slow: Int = None, - mamode: str = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Kaufman's Adaptive Moving Average - - This indicator, by Perry Kaufman, attempts to find the overall trend by - adapting to volatility. - - Sources: - * [stockcharts](https://stockcharts.com/school/doku.php?id=chart_school:technical_indicators:kaufman_s_adaptive_moving_average) - * [tradingview](https://www.tradingview.com/script/wZGOIz9r-REPOST-Indicators-3-Different-Adaptive-Moving-Averages/) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - fast (int): Fast MA period. Default: ```2``` - slow (int): Slow MA period. Default: ```30``` - mamode (str): See ```help(ta.ma)```. Default: ```"sma"``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 10) - fast = v_pos_default(fast, 2) - slow = v_pos_default(slow, 30) - close = v_series(close, max(fast, slow, length)) - - if close is None: - return - - mamode = v_mamode(mamode, "sma") - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - def weight(length: int) -> float: - return 2 / (length + 1) - - fr = weight(fast) - sr = weight(slow) - - abs_diff = non_zero_range(close, close.shift(length)).abs() - peer_diff = non_zero_range(close, close.shift(drift)).abs() - peer_diff_sum = peer_diff.rolling(length).sum() - er = abs_diff / peer_diff_sum - x = er * (fr - sr) + sr - sc = x * x - - m = close.size - ma0 = ma(mamode, close.iloc[:length], length=length, **kwargs).iloc[-1] - result = [nan for _ in range(0, length - 1)] + [ma0] - for i in range(length, m): - result.append(sc.iat[i] * close.iat[i] \ - + (1 - sc.iat[i]) * result[i - 1]) - - kama = Series(result, index=close.index) - - # Offset - if offset != 0: - kama = kama.shift(offset) - - # Fill - if "fillna" in kwargs: - kama.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - kama.name = f"KAMA_{length}_{fast}_{slow}" - kama.category = "overlap" - - return kama diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/linreg.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/linreg.py deleted file mode 100644 index 670863dd..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/linreg.py +++ /dev/null @@ -1,164 +0,0 @@ -# -*- coding: utf-8 -*- -from sys import float_info as sflt -from numpy import arctan, nan, pi, zeros_like -from numpy.version import version as np_version -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - strided_window, - v_offset, - v_pos_default, - v_series, - v_talib, - zero -) - - - -def linreg( - close: Series, length: Int = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Linear Regression Moving Average - - This indicator is a simplified version of Standard Linear Regression. It is - one variable rolling regression whereas a Standard Linear Regression is - between two or more variables. - - Sources: - * [TA Lib](https://ta-lib.org) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - angle (bool): Returns the slope angle in radians. - Default: ```False``` - degrees (bool): Return the slope angle in degrees. - Default: ```False``` - intercept (bool): Return the intercept. Default: ```False``` - r (bool): Return the 'r' correlation. Default: ```False``` - slope (bool): Return the slope. Default: ```False``` - tsf (bool): Return the Time Series Forecast value. - Default: ```False``` - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Warning: - TA-Lib Correlation: ```np.float64(0.9985638477660118)``` - - Tip: - Corrective contributions welcome! - """ - # Validate - length = v_pos_default(length, 14) - close = v_series(close, length) - - if close is None: - return - - mode_tal = v_talib(talib) - offset = v_offset(offset) - - angle = kwargs.pop("angle", False) - intercept = kwargs.pop("intercept", False) - degrees = kwargs.pop("degrees", False) - r = kwargs.pop("r", False) - slope = kwargs.pop("slope", False) - tsf = kwargs.pop("tsf", False) - - # Calculate - np_close = close.to_numpy() - - if Imports["talib"] and mode_tal and not r: - from talib import LINEARREG, LINEARREG_ANGLE, LINEARREG_INTERCEPT, LINEARREG_SLOPE, TSF - if tsf: - linreg = TSF(close, timeperiod=length) - elif slope: - linreg = LINEARREG_SLOPE(close, timeperiod=length) - elif intercept: - linreg = LINEARREG_INTERCEPT(close, timeperiod=length) - elif angle: - linreg = LINEARREG_ANGLE(close, timeperiod=length) - else: - linreg = LINEARREG(close, timeperiod=length) - else: - linreg_ = zeros_like(np_close) - # [1, 2, ..., n] from 1 to n keeps Sum(xy) low - x = range(1, length + 1) - x_sum = 0.5 * length * (length + 1) - x2_sum = x_sum * (2 * length + 1) / 3 - divisor = length * x2_sum - x_sum * x_sum - - # Needs to be reworked outside the method - def linear_regression(series): - y_sum = series.sum() - xy_sum = (x * series).sum() - - m = (length * xy_sum - x_sum * y_sum) / divisor - if slope: - return m - b = (y_sum * x2_sum - x_sum * xy_sum) / divisor - if intercept: - return b - - if angle: - theta = arctan(m) - if degrees: - theta *= 180 / pi - return theta - - if r: - y2_sum = (series * series).sum() - rn = length * xy_sum - x_sum * y_sum - rd = (divisor * (length * y2_sum - y_sum * y_sum)) ** 0.5 - if zero(rd) == 0: - rd = sflt.epsilon - return rn / rd - - return m * length + b if not tsf else m * (length - 1) + b - - if np_version >= "1.20.0": - from numpy.lib.stride_tricks import sliding_window_view - linreg_ = [ - linear_regression(_) for _ in sliding_window_view( - np_close, length) - ] - - else: - linreg_ = [ - linear_regression(_) for _ in strided_window( - np_close, length) - ] - - linreg = Series([nan] * (length - 1) + linreg_, index=close.index) - - # Offset - if offset != 0: - linreg = linreg.shift(offset) - - # Fill - if "fillna" in kwargs: - linreg.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - linreg.name = f"LINREG" - if slope: - linreg.name += "m" - if intercept: - linreg.name += "b" - if angle: - linreg.name += "a" - if r: - linreg.name += "r" - - linreg.name += f"_{length}" - linreg.category = "overlap" - - return linreg diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/mama.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/mama.py deleted file mode 100644 index a7a51a3c..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/mama.py +++ /dev/null @@ -1,167 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from numpy import arctan, isnan, nan, zeros_like -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.maps import Imports -from pandas_ta.utils import v_offset, v_pos_default, v_series, v_talib - - - -# Ehler's Mother of Adaptive Moving Averages -# http://traders.com/documentation/feedbk_docs/2014/01/traderstips.html -@njit(cache=True) -def nb_mama(x, fastlimit, slowlimit, prenan): - a, b, m = 0.0962, 0.5769, x.size - p_w, smp_w, smp_w_c = 0.2, 0.33, 0.67 - - wma4 = zeros_like(x) - dt, smp = zeros_like(x), zeros_like(x) - i1, i2 = zeros_like(x), zeros_like(x) - ji, jq = zeros_like(x), zeros_like(x) - q1, q2 = zeros_like(x), zeros_like(x) - re, im, alpha = zeros_like(x), zeros_like(x), zeros_like(x) - period, phase = zeros_like(x), zeros_like(x) - mama, fama = zeros_like(x), zeros_like(x) - - # Ehler's starts from 6, TV-LB from 3, TALib from 32 - for i in range(3, m): - adj_prev_period = 0.075 * period[i - 1] + 0.54 - - # WMA(x,4) & Detrended WMA(x,4) - wma4[i] = 0.4 * x[i] + 0.3 * x[i - 1] + 0.2 * x[i - 2] + 0.1 * x[i - 3] - dt[i] = adj_prev_period * (a * wma4[i] + b * wma4[i - 2] - b * wma4[i - 4] - a * wma4[i - 6]) - - # Quadrature(Detrender) and In Phase Component - q1[i] = adj_prev_period * (a * dt[i] + b * dt[i - 2] - b * dt[i - 4] - a * dt[i - 6]) - i1[i] = dt[i - 3] - - # Phase Q1 and I1 by 90 degrees - ji[i] = adj_prev_period * (a * i1[i] + b * i1[i - 2] - b * i1[i - 4] - a * i1[i - 6]) - jq[i] = adj_prev_period * (a * q1[i] + b * q1[i - 2] - b * q1[i - 4] - a * q1[i - 6]) - - # Phasor Addition for 3 Bar Averaging - i2[i] = i1[i] - jq[i] - q2[i] = q1[i] + ji[i] - - # Smooth I2 & Q2 - i2[i] = p_w * i2[i] + (1 - p_w) * i2[i - 1] - q2[i] = p_w * q2[i] + (1 - p_w) * q2[i - 1] - - # Homodyne Discriminator - re[i] = i2[i] * i2[i - 1] + q2[i] * q2[i - 1] - im[i] = i2[i] * q2[i - 1] + q2[i] * i2[i - 1] - - # Smooth Re & Im - re[i] = p_w * re[i] + (1 - p_w) * re[i - 1] - im[i] = p_w * im[i] + (1 - p_w) * im[i - 1] - - if im[i] != 0.0 and re[i] != 0.0: - period[i] = 360 / arctan(im[i] / re[i]) - else: - period[i] = 0 - - if period[i] > 1.5 * period[i - 1]: - period[i] = 1.5 * period[i - 1] - if period[i] < 0.67 * period[i - 1]: - period[i] = 0.67 * period[i - 1] - if period[i] < 6: - period[i] = 6 - if period[i] > 50: - period[i] = 50 - - period[i] = p_w * period[i] + (1 - p_w) * period[i - 1] - smp[i] = smp_w * period[i] + smp_w_c * smp[i - 1] - - if i1[i] != 0.0: - phase[i] = arctan(q1[i] / i1[i]) - - dphase = phase[i - 1] - phase[i] - if dphase < 1: - dphase = 1 - - alpha[i] = fastlimit / dphase - if alpha[i] > fastlimit: - alpha[i] = fastlimit - if alpha[i] < slowlimit: - alpha[i] = slowlimit - - mama[i] = alpha[i] * x[i] + (1 - alpha[i]) * mama[i - 1] - fama[i] = 0.5 * alpha[i] * mama[i] + (1 - 0.5 * alpha[i]) * fama[i - 1] - - mama[:prenan], fama[:prenan] = nan, nan - return mama, fama - - -def mama( - close: Series, fastlimit: IntFloat = None, slowlimit: IntFloat = None, - prenan: Int = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """MESA Adaptive Moving Average - - This indicator, aka the Mother of All Moving Averages by John Ehlers, - attempts to adapt to volatility by using a Hilbert Transform Discriminator - - Sources: - * [Ehlers's Mother of Adaptive Moving Averages](http://traders.com/documentation/feedbk_docs/2014/01/traderstips.html) - * [tradingview](https://www.tradingview.com/script/foQxLbU3-Ehlers-MESA-Adaptive-Moving-Average-LazyBear/) - - Parameters: - close (Series): ```close``` Series - fastlimit (float): Fast limit. Default: ```0.5``` - slowlimit (float): Slow limit. Default: ```0.05``` - prenan (int): Prenans to apply. TV-LB ```3```, Ehler's ```6```, - TA Lib ```32```. Default: ```3``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - - Tip: - **FAMA** also included - """ - # Validate - close = v_series(close, 1) - - if close is None: - return - - fastlimit = v_pos_default(fastlimit, 0.5) - slowlimit = v_pos_default(slowlimit, 0.05) - prenan = v_pos_default(prenan, 3) - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - np_close = close.to_numpy() - if Imports["talib"] and mode_tal: - from talib import MAMA - mama, fama = MAMA(np_close, fastlimit, slowlimit) - else: - mama, fama = nb_mama(np_close, fastlimit, slowlimit, prenan) - - if all(isnan(mama)) or all(isnan(fama)): - return # Emergency Break - - # Name and Category - _props = f"_{fastlimit}_{slowlimit}" - data = {f"MAMA{_props}": mama, f"FAMA{_props}": fama} - df = DataFrame(data, index=close.index) - - df.name = f"MAMA{_props}" - df.category = "overlap" - - # Offset - if offset != 0: - df = df.shift(offset) - - # Fill - if "fillna" in kwargs: - df.fillna(kwargs["fillna"], inplace=True) - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/mcgd.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/mcgd.py deleted file mode 100644 index 5c60429b..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/mcgd.py +++ /dev/null @@ -1,72 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import v_offset, v_pos_default, v_series - - - -def _mcgd(x, n, k): - d = (k * n * (x[1] / x[0]) ** 4) - x[1] = (x[0] + ((x[1] - x[0]) / d)) - return x[1] - - -def mcgd( - close: Series, length: Int = None, c: IntFloat = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """McGinley Dynamic Indicator - - This indicator, by John R. McGinley, is not a moving average but a - differential smoothing technique. - - Sources: - * John R. McGinley, a Certified Market Technician (CMT) and former - editor of the Market Technicians Association's Journal of - Technical Analysis. - * [investopedia](https://www.investopedia.com/articles/forex/09/mcginley-dynamic-indicator.asp) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - c (float): Denominator multiplier. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - Sometimes ```c``` is set to ```0.6```. - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, length) - - if close is None: - return - - c = float(c) if isinstance(c, float) and 0 < c <= 1 else 1 - offset = v_offset(offset) - - # Calculate - close = close.copy() - - mcg_ds = close[0:].rolling(2, min_periods=2) \ - .apply(_mcgd, kwargs={"n": length, "k": c}, raw=True) - - # Offset - if offset != 0: - mcg_ds = mcg_ds.shift(offset) - - # Fill - if "fillna" in kwargs: - mcg_ds.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - mcg_ds.name = f"MCGD_{length}" - mcg_ds.category = "overlap" - - return mcg_ds diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/midpoint.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/midpoint.py deleted file mode 100644 index 20ec369e..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/midpoint.py +++ /dev/null @@ -1,64 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import v_offset, v_pos_default, v_series, v_talib - - - -def midpoint( - close: Series, length: Int = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Midpoint - - The Midpoint is the average of the rolling high and low of period length. - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```2``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 2) - if "min_periods" in kwargs and kwargs["min_periods"] is not None: - min_periods = int(kwargs["min_periods"]) - else: - min_periods = length - close = v_series(close, max(length, min_periods)) - - if close is None: - return - - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import MIDPOINT - midpoint = MIDPOINT(close, length) - else: - lowest = close.rolling(length, min_periods=min_periods).min() - highest = close.rolling(length, min_periods=min_periods).max() - midpoint = 0.5 * (lowest + highest) - - # Offset - if offset != 0: - midpoint = midpoint.shift(offset) - - # Fill - if "fillna" in kwargs: - midpoint.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - midpoint.name = f"MIDPOINT_{length}" - midpoint.category = "overlap" - - return midpoint diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/midprice.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/midprice.py deleted file mode 100644 index 6593cd74..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/midprice.py +++ /dev/null @@ -1,67 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import v_offset, v_pos_default, v_series, v_talib - - - -def midprice( - high: Series, low: Series, length: Int = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Midprice - - The Midprice is the average of the rolling high and low of period length. - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - length (int): The period. Default: ```2``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 2) - if "min_periods" in kwargs and kwargs["min_periods"] is not None: - min_periods = int(kwargs["min_periods"]) - else: - min_periods = length - _length = max(length, min_periods) - high = v_series(high, _length) - low = v_series(low, _length) - - if high is None or low is None: - return - - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import MIDPRICE - midprice = MIDPRICE(high, low, length) - else: - lowest_low = low.rolling(length, min_periods=min_periods).min() - highest_high = high.rolling(length, min_periods=min_periods).max() - midprice = 0.5 * (lowest_low + highest_high) - - # Offset - if offset != 0: - midprice = midprice.shift(offset) - - # Fill - if "fillna" in kwargs: - midprice.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - midprice.name = f"MIDPRICE_{length}" - midprice.category = "overlap" - - return midprice diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ohlc4.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ohlc4.py deleted file mode 100644 index 30ad87dc..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ohlc4.py +++ /dev/null @@ -1,53 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_offset, v_series - - - -def ohlc4( - open_: Series, high: Series, low: Series, close: Series, - offset: Int = None, **kwargs: DictLike -) -> Series: - """OHLC4 - - OHLC4 is the average of open, high, low and close. - - Parameters: - open_ (Series): ```open``` Series - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)```. - Only works when offset. - - Returns: - (Series): 1 column - """ - # Validate - open_ = v_series(open_) - high = v_series(high) - low = v_series(low) - close = v_series(close) - offset = v_offset(offset) - - # Calculate - avg = 0.25 * (open_.to_numpy() + high.to_numpy() + low.to_numpy() + close.to_numpy()) - ohlc4 = Series(avg, index=close.index) - - # Offset - if offset != 0: - ohlc4 = ohlc4.shift(offset) - - # Fill - if "fillna" in kwargs: - ohlc4.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - ohlc4.name = "OHLC4" - ohlc4.category = "overlap" - - return ohlc4 diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/pivots.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/pivots.py deleted file mode 100644 index 157c3da6..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/pivots.py +++ /dev/null @@ -1,264 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from numpy import greater, nan, zeros_like -from pandas import DataFrame, DateOffset, Series, infer_freq -from pandas_ta._typing import DictLike -from pandas_ta.utils import ( - nb_nonzero_range, - v_datetime_ordered, - v_series, - v_str -) - -# Support for Pandas v1.4.x and v2.2.x -td_mapping = { - 'Y': 'years', - 'YE': 'years', - 'M': 'months', - 'ME': 'months', - 'D': 'days', -} - - - -@njit(cache=True) -def pivot_camarilla(high, low, close): - tp = (high + low + close) / 3 - hl_range = nb_nonzero_range(high, low) - - s1 = close - 11 / 120 * hl_range - s2 = close - 11 / 60 * hl_range - s3 = close - 0.275 * hl_range - s4 = close - 0.55 * hl_range - - r1 = close + 11 / 120 * hl_range - r2 = close + 11 / 60 * hl_range - r3 = close + 0.275 * hl_range - r4 = close + 0.55 * hl_range - - return tp, s1, s2, s3, s4, r1, r2, r3, r4 - - -@njit(cache=True) -def pivot_classic(high, low, close): - tp = (high + low + close) / 3 - hl_range = nb_nonzero_range(high, low) - - s1 = 2 * tp - high - s2 = tp - hl_range - s3 = tp - 2 * hl_range - s4 = tp - 3 * hl_range - - r1 = 2 * tp - low - r2 = tp + hl_range - r3 = tp + 2 * hl_range - r4 = tp + 3 * hl_range - - return tp, s1, s2, s3, s4, r1, r2, r3, r4 - - -@njit(cache=True) -def pivot_demark(open_, high, low, close): - if (open_ == close).all(): - tp = 0.25 * (high + low + 2 * close) - elif greater(close, open_).all(): - tp = 0.25 * (2 * high + low + close) - else: - tp = 0.25 * (high + 2 * low + close) - - s1 = 2 * tp - high - r1 = 2 * tp - low - - return tp, s1, r1 - - -@njit(cache=True) -def pivot_fibonacci(high, low, close): - tp = (high + low + close) / 3 - hl_range = nb_nonzero_range(high, low) - - s1 = tp - 0.382 * hl_range - s2 = tp - 0.618 * hl_range - s3 = tp - hl_range - - r1 = tp + 0.382 * hl_range - r2 = tp + 0.618 * hl_range - r3 = tp + hl_range - - return tp, s1, s2, s3, r1, r2, r3 - - -@njit(cache=True) -def pivot_traditional(high, low, close): - tp = (high + low + close) / 3 - hl_range = nb_nonzero_range(high, low) - - s1 = 2 * tp - high - s2 = tp - hl_range - s3 = tp - 2 * hl_range - s4 = tp - 2 * hl_range - - r1 = 2 * tp - low - r2 = tp + hl_range - r3 = tp + 2 * hl_range - r4 = tp + 2 * hl_range - - return tp, s1, s2, s3, s4, r1, r2, r3, r4 - - -@njit(cache=True) -def pivot_woodie(open_, high, low): - tp = (2 * open_ + high + low) / 4 - hl_range = nb_nonzero_range(high, low) - - s1 = 2 * tp - high - s2 = tp - hl_range - s3 = low - 2 * (high - tp) - s4 = s3 - hl_range - - r1 = 2 * tp - low - r2 = tp + hl_range - r3 = high + 2 * (tp - low) - r4 = r3 + hl_range - - return tp, s1, s2, s3, s4, r1, r2, r3, r4 - - -def pivots( - open_: Series, high: Series, - low: Series, close: Series, - method: str = None, anchor: str = None, - **kwargs: DictLike -) -> DataFrame: - """Pivot Points - - Pivot Points attempt to identify support and resistance levels. - There are many different methods of calculating Pivot Points. The most - common (and default) method is: Traditional. Other methods include: - Camarilla, Classic, Demark, Fibonacci, and Woodie. - - Sources: - * [sierrachart](https://www.sierrachart.com/index.php?page=doc/PivotPoints.html) - - Parameters: - open_ (Series): ```open``` Series - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - method (str): Pivot methode. Default: ```'traditional'``` - anchor (str): Anchor frequency. Default: ```'D'``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3, 7 or 9 columns - - Note: - [Pandas Offset Aliases](https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#timeseries-offset-aliases) - """ - # Validate - open_ = v_series(open_) - high = v_series(high) - low = v_series(low) - close = v_series(close) - - if open_ is None or high is None or low is None or close is None: - return None - - methods = [ - "traditional", "fibonacci", "woodie", "classic", "demark", "camarilla" - ] - method = v_str(method, methods[0]) - - if close.index.size < 3: - return # Emergency Break - - if not v_datetime_ordered(close): - print("[!] Pivots requires an ordered DatetimeIndex.") - return - - dt_index = close.index - freq = infer_freq(dt_index) - - if anchor and isinstance(anchor, str) and len(anchor) >= 1: - anchor = anchor.upper() - else: - anchor = "D" - - # Resample if freq does not match the anchor - if freq is not anchor: - df = DataFrame( - data={ - "open": open_.resample(anchor).first(), - "high": high.resample(anchor).max(), - "low": low.resample(anchor).min(), - "close": close.resample(anchor).last() - } - ) - df.dropna(inplace=True) - else: - df = DataFrame( - data={"open": open_, "high": high, "low": low, "close": close}, - index=dt_index - ) - - np_open = df.open.to_numpy() - np_high = df.high.to_numpy() - np_low = df.low.to_numpy() - np_close = df.close.to_numpy() - - # Create nan arrays for "demark" and "fibonacci" pivots - _nan_array = zeros_like(np_close) - _nan_array[:] = nan - tp = s1 = s2 = s3 = s4 = r1 = r2 = r3 = r4 = _nan_array - - # Calculate - if method == "camarilla": - tp, s1, s2, s3, s4, r1, r2, r3, r4 = \ - pivot_camarilla(np_high, np_low, np_close) - - elif method == "classic": - tp, s1, s2, s3, s4, r1, r2, r3, r4 = \ - pivot_classic(np_high, np_low, np_close) - - elif method == "demark": - tp, s1, r1 = pivot_demark(np_open, np_high, np_low, np_close) - - elif method == "fibonacci": - tp, s1, s2, s3, r1, r2, r3 = pivot_fibonacci(np_high, np_low, np_close) - - elif method == "woodie": - tp, s1, s2, s3, s4, r1, r2, r3, r4 = \ - pivot_woodie(np_open, np_high, np_low) - - else: # Traditional - tp, s1, s2, s3, s4, r1, r2, r3, r4 = \ - pivot_traditional(np_high, np_low, np_close) - - # Name and Category - _props = f"PIVOTS_{method[:4].upper()}_{anchor}" - df[f"{_props}_P"] = tp - df[f"{_props}_S1"], df[f"{_props}_S2"] = s1, s2 - df[f"{_props}_S3"], df[f"{_props}_S4"] = s3, s4 - df[f"{_props}_R1"], df[f"{_props}_R2"] = r1, r2 - df[f"{_props}_R3"], df[f"{_props}_R4"] = r3, r4 - - time_unit = td_mapping.get(anchor.upper(), None) - if time_unit: - time_delta = DateOffset(**{time_unit: 1}) - df.index = df.index + time_delta - else: - print(f"[!] Unsupported time anchor {anchor}.") - - if freq is not anchor: - df = df.reindex(dt_index, method="ffill") - df = df.iloc[:,4:] - - if method in ["demark", "fibonacci"]: - df.drop(columns=[x for x in df.columns if all(df[x].isna())], inplace=True) - - df.name = _props - df.category = "overlap" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/pwma.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/pwma.py deleted file mode 100644 index 3c3ccdfd..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/pwma.py +++ /dev/null @@ -1,66 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import ( - pascals_triangle, - v_offset, - v_ascending, - v_pos_default, - v_series, - weights -) - - - -def pwma( - close: Series, length: Int = None, asc: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Pascal's Weighted Moving Average - - This indicator, by Kevin Johnson, creates a weighted moving average using - Pascal's Triangle. - - Sources: - * Kevin Johnson - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - asc (bool): Ascending. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 1 column - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, length) - - if close is None: - return - - asc = v_ascending(asc) - offset = v_offset(offset) - - # Calculate - triangle = pascals_triangle(n=length - 1, weighted=True) - pwma = close.rolling(length, min_periods=length) \ - .apply(weights(triangle), raw=True) - - # Offset - if offset != 0: - pwma = pwma.shift(offset) - - # Fill - if "fillna" in kwargs: - pwma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - pwma.name = f"PWMA_{length}" - pwma.category = "overlap" - - return pwma diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/rma.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/rma.py deleted file mode 100644 index 8162933e..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/rma.py +++ /dev/null @@ -1,56 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_offset, v_pos_default, v_series - - - -def rma( - close: Series, length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """wildeR's Moving Average - - This indicator, by Wilder, is simply an EMA where _alpha_ is - the recipical of its _length_. - - Sources: - * [incrediblecharts](https://www.incrediblecharts.com/indicators/wilder_moving_average.php) - * [thinkorswim](https://tlc.thinkorswim.com/center/reference/Tech-Indicators/studies-library/V-Z/WildersSmoothing) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, length) - - if close is None: - return - - alpha = (1.0 / length) if length > 0 else 0.5 - offset = v_offset(offset) - - rma = close.ewm(alpha=alpha, adjust=False).mean() - - # Offset - if offset != 0: - rma = rma.shift(offset) - - # Fill - if "fillna" in kwargs: - rma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - rma.name = f"RMA_{length}" - rma.category = "overlap" - - return rma diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/sinwma.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/sinwma.py deleted file mode 100644 index cdeb3cff..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/sinwma.py +++ /dev/null @@ -1,63 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import pi, sin -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_offset, v_pos_default, v_series, weights - - - -def sinwma( - close: Series, length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Sine Weighted Moving Average - - This indicator is a weighted average using sine cycles where the central - values have greater weight. - - Source: - * [Everget](https://www.tradingview.com/u/everget/) - * [tradingview](https://www.tradingview.com/script/6MWFvnPO-Sine-Weighted-Moving-Average/) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 14) - close = v_series(close, length) - - if close is None: - return - - offset = v_offset(offset) - - # Calculate - sines = Series( - [sin((i + 1) * pi / (length + 1)) for i in range(0, length)] - ) - w = sines / sines.sum() - - sinwma = close.rolling(length, min_periods=length) \ - .apply(weights(w), raw=True) - - # Offset - if offset != 0: - sinwma = sinwma.shift(offset) - - # Fill - if "fillna" in kwargs: - sinwma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - sinwma.name = f"SINWMA_{length}" - sinwma.category = "overlap" - - return sinwma diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/sma.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/sma.py deleted file mode 100644 index efe058e3..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/sma.py +++ /dev/null @@ -1,85 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from numpy import convolve, ones -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - nb_prepend, - v_offset, - v_pos_default, - v_series, - v_talib -) - - - -# Fast SMA Options: https://github.com/numba/numba/issues/4119 -@njit(cache=True) -def nb_sma(x, n): - result = convolve(ones(n) / n, x)[n - 1:1 - n] - return nb_prepend(result, n - 1) - - -def sma( - close: Series, length: Int = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Simple Moving Average - - This indicator is the the textbook moving average, a rolling sum of - values divided by the window period (or length). - - Sources: - * [tradingtechnologies](https://www.tradingtechnologies.com/help/x-study/technical-indicator-definitions/simple-moving-average-sma/) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - adjust (bool): Adjust the values. Default: ```True``` - presma (bool): If True, uses SMA for initial value. - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 10) - if "min_periods" in kwargs and kwargs["min_periods"] is not None: - min_periods = int(kwargs["min_periods"]) - else: - min_periods = length - close = v_series(close, max(length, min_periods)) - - if close is None: - return - - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal and length > 1: - from talib import SMA - sma = SMA(close, length) - else: - np_close = close.to_numpy() - sma = nb_sma(np_close, length) - sma = Series(sma, index=close.index) - - # Offset - if offset != 0: - sma = sma.shift(offset) - - # Fill - if "fillna" in kwargs: - sma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - sma.name = f"SMA_{length}" - sma.category = "overlap" - - return sma diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/smma.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/smma.py deleted file mode 100644 index 99af8e43..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/smma.py +++ /dev/null @@ -1,82 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import nan -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.utils import ( - v_mamode, - v_offset, - v_pos_default, - v_series, - v_talib -) - - - -def smma( - close: Series, length: Int = None, - mamode: str = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """SMoothed Moving Average - - This indicator attempts to confirm trends and identify support and - resistance areas. It tries to reduce noise in contrast to reducing lag. - - Sources: - * [sierrachart](https://www.sierrachart.com/index.php?page=doc/StudiesReference.php&ID=173&Name=Moving_Average_-_Smoothed) - * [tradingview](https://www.tradingview.com/scripts/smma/) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - mamode (str): See ```help(ta.ma)```. Default: ```"sma"``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - A core component of Bill Williams Alligator indicator. - """ - # Validate - length = v_pos_default(length, 7) - if "min_periods" in kwargs and kwargs["min_periods"] is not None: - min_periods = int(kwargs["min_periods"]) - else: - min_periods = length - close = v_series(close, max(length, min_periods)) - - if close is None: - return - - mamode = v_mamode(mamode, "sma") - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - m = close.size - smma = close.copy() - smma[:length - 1] = nan - smma.iloc[length - 1] = ma(mamode, close[0:length], length=length, talib=mode_tal).iloc[-1] - - for i in range(length, m): - smma.iat[i] = ((length - 1) * smma.iat[i - 1] + smma.iat[i]) / length - - # Offset - if offset != 0: - smma = smma.shift(offset) - - # Fill - if "fillna" in kwargs: - smma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - smma.name = f"SMMA_{length}" - smma.category = "overlap" - - return smma diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ssf.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ssf.py deleted file mode 100644 index 3f50a18f..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ssf.py +++ /dev/null @@ -1,115 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from numpy import copy, cos, exp -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import v_bool, v_offset, v_pos_default, v_series - - - -# Ehlers's Super Smoother Filter -# http://traders.com/documentation/feedbk_docs/2014/01/traderstips.html -@njit(cache=True) -def nb_ssf(x, n, pi, sqrt2): - m, ratio, result = x.size, sqrt2 / n, copy(x) - a = exp(-pi * ratio) - b = 2 * a * cos(180 * ratio) - c = a * a - b + 1 - - # result[:2] = x[:2] - for i in range(2, m): - result[i] = 0.5 * c * (x[i] + x[i - 1]) + b * result[i - 1] \ - - a * a * result[i - 2] - - return result - - -# John F. Ehlers's Super Smoother Filter by Everget (2 poles), Tradingview -# https://www.tradingview.com/script/VdJy0yBJ-Ehlers-Super-Smoother-Filter/ -@njit(cache=True) -def nb_ssf_everget(x, n, pi, sqrt2): - m, arg, result = x.size, pi * sqrt2 / n, copy(x) - a = exp(-arg) - b = 2 * a * cos(arg) - - # result[:2] = x[:2] - for i in range(2, m): - result[i] = 0.5 * (a * a - b + 1) * (x[i] + x[i - 1]) \ - + b * result[i - 1] - a * a * result[i - 2] - - return result - - -def ssf( - close: Series, length: Int = None, - everget: bool = None, pi: IntFloat = None, sqrt2: IntFloat = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Ehlers's Super Smoother Filter - - This indicator, by John F. Ehlers's © 2013, is a (Recursive) Digital - Filter that attempts to reduce lag and remove aliases. This version - has two poles. - - Sources: - * [mql5](https://www.mql5.com/en/code/588) - * [traders.com](http://traders.com/documentation/feedbk_docs/2014/01/traderstips.html) - * [tradingview](https://www.tradingview.com/script/VdJy0yBJ-Ehlers-Super-Smoother-Filter/) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```20``` - everget (bool): Everget's implementation of ssf that uses pi - instead of 180 for the b factor of ssf. Default: ```False``` - pi (float): The default is Ehlers's truncated value: ```3.14159```. - Default: ```3.14159``` - sqrt2 (float): The default is Ehlers's truncated value: ```1.414```. - Default: ```1.414``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - * Everget's calculation on TradingView: - ```pi=np.pi```, ```sqrt2=np.sqrt(2)``` - - Danger: - Possible Data Leak - """ - # Validate - length = v_pos_default(length, 20) - close = v_series(close, length) - - if close is None: - return - - pi = v_pos_default(pi, 3.14159) - sqrt2 = v_pos_default(sqrt2, 1.414) - everget = v_bool(everget, False) - offset = v_offset(offset) - - # Calculate - np_close = close.to_numpy() - if everget: - ssf = nb_ssf_everget(np_close, length, pi, sqrt2) - else: - ssf = nb_ssf(np_close, length, pi, sqrt2) - ssf = Series(ssf, index=close.index) - - # Offset - if offset != 0: - ssf = ssf.shift(offset) - - # Fill - if "fillna" in kwargs: - ssf.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - ssf.name = f"SSF{'e' if everget else ''}_{length}" - ssf.category = "overlap" - - return ssf diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ssf3.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ssf3.py deleted file mode 100644 index 497abbb4..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/ssf3.py +++ /dev/null @@ -1,94 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from numpy import copy, cos, exp -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import v_offset, v_pos_default, v_series - - - -# John F. Ehler's Super Smoother Filter by Everget (3 poles), Tradingview -# https://www.tradingview.com/script/VdJy0yBJ-Ehlers-Super-Smoother-Filter/ -@njit(cache=True) -def nb_ssf3(x, n, pi, sqrt3): - m, result = x.size, copy(x) - a = exp(-pi / n) - b = 2 * a * cos(-pi * sqrt3 / n) - c = a * a - - d4 = c * c - d3 = -c * (1 + b) - d2 = b + c - d1 = 1 - d2 - d3 - d4 - - # result[:3] = x[:3] - for i in range(3, m): - result[i] = d1 * x[i] + d2 * result[i - 1] \ - + d3 * result[i - 2] + d4 * result[i - 3] - - return result - - -def ssf3( - close: Series, length: Int = None, - pi: IntFloat = None, sqrt3: IntFloat = None, - offset: Int = None, **kwargs: DictLike -): - """Ehlers's 3 Pole Super Smoother Filter - - This indicator, by John F. Ehlers's © 2013, is a (Recursive) Digital - Filter that attempts to reduce lag and remove aliases. This version - has two poles. - - Sources: - * [mql5](https://www.mql5.com/en/code/589) - * [tradingview](https://www.tradingview.com/script/VdJy0yBJ-Ehlers-Super-Smoother-Filter/) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```20``` - pi (float): The value of ```PI```. The default is Ehler's truncated - value: ```3.14159```. Default: ```3.14159``` - sqrt3 (float): The value of ```sqrt(3)``` to use. The default is - Ehler's truncated value: ```1.732```. Default: ```1.732``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - * Everget's calculation on TradingView: - ```pi=np.pi```, ```sqrt2=np.sqrt(2)``` - """ - # Validate - length = v_pos_default(length, 20) - close = v_series(close, length) - - if close is None: - return - - pi = v_pos_default(pi, 3.14159) - sqrt3 = v_pos_default(sqrt3, 1.732) - offset = v_offset(offset) - - # Calculate - np_close = close.to_numpy() - ssf = nb_ssf3(np_close, length, pi, sqrt3) - ssf = Series(ssf, index=close.index) - - # Offset - if offset != 0: - ssf = ssf.shift(offset) - - # Fill - if "fillna" in kwargs: - ssf.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - ssf.name = f"SSF3_{length}" - ssf.category = "overlap" - - return ssf diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/supertrend.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/supertrend.py deleted file mode 100644 index 8adb08bf..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/supertrend.py +++ /dev/null @@ -1,108 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import nan -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.overlap import hl2 -from pandas_ta.utils import v_mamode, v_offset, v_pos_default, v_series -from pandas_ta.volatility import atr - - - -def supertrend( - high: Series, low: Series, close: Series, - length: Int = None, atr_length: Int = None, - multiplier: IntFloat = None, - atr_mamode : str = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Supertrend - - This indicator attempts to identify trend direction as well as support and - resistance levels. - - Sources: - * [freebsensetips](http://www.freebsensetips.com/blog/detail/7/What-is-supertrend-indicator-its-calculation) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```7``` - atr_length (int): ATR period. Default: ```length``` - multiplier (float): Coefficient for upper and lower band distance to - midrange. Default: ```3.0``` - atr_mamode (str) : MA type to be used for ATR calculation. - See ```help(ta.ma)```. Default: ```"rma"``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 4 columns - """ - # Validate - length = v_pos_default(length, 7) - atr_length = v_pos_default(atr_length, length) - high = v_series(high, length + 1) - low = v_series(low, length + 1) - close = v_series(close, length + 1) - - if high is None or low is None or close is None: - return - - multiplier = v_pos_default(multiplier, 3.0) - atr_mamode = v_mamode(atr_mamode, "rma") - offset = v_offset(offset) - - # Calculate - m = close.size - dir_, trend = [1] * m, [0] * m - long, short = [nan] * m, [nan] * m - - hl2_ = hl2(high, low) - matr = multiplier * atr(high, low, close, atr_length, mamode=atr_mamode) - lb = hl2_ - matr - ub = hl2_ + matr - - for i in range(1, m): - if close.iat[i] > ub.iat[i - 1]: - dir_[i] = 1 - elif close.iat[i] < lb.iat[i - 1]: - dir_[i] = -1 - else: - dir_[i] = dir_[i - 1] - if dir_[i] > 0 and lb.iat[i] < lb.iat[i - 1]: - lb.iat[i] = lb.iat[i - 1] - if dir_[i] < 0 and ub.iat[i] > ub.iat[i - 1]: - ub.iat[i] = ub.iat[i - 1] - - if dir_[i] > 0: - trend[i] = long[i] = lb.iat[i] - else: - trend[i] = short[i] = ub.iat[i] - - trend[0] = nan - dir_[:length] = [nan] * length - - _props = f"_{length}_{multiplier}" - data = { - f"SUPERT{_props}": trend, - f"SUPERTd{_props}": dir_, - f"SUPERTl{_props}": long, - f"SUPERTs{_props}": short - } - df = DataFrame(data, index=close.index) - - df.name = f"SUPERT{_props}" - df.category = "overlap" - - # Offset - if offset != 0: - df = df.shift(offset) - - # Fill - if "fillna" in kwargs: - df.fillna(kwargs["fillna"], inplace=True) - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/swma.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/swma.py deleted file mode 100644 index bbab9005..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/swma.py +++ /dev/null @@ -1,68 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import ( - symmetric_triangle, - v_offset, - v_pos_default, - v_series, - weights -) - - - -def swma( - close: Series, length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Symmetric Weighted Moving Average - - This indicator is based on a Symmetric Weighted Moving Average where - weights are based on a symmetric triangle. - - Source: - * [tradingview](https://www.tradingview.com/study-script-reference/#fun_swma) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - * ```n=3``` -> ```[1, 2, 1]``` - * ```n=4``` -> ```[1, 2, 2, 1]``` - * etc... - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, length) - - if close is None: - return - - offset = v_offset(offset) - - # Calculate - triangle = symmetric_triangle(length, weighted=True) - swma = close.rolling(length, min_periods=length) \ - .apply(weights(triangle), raw=True) - - # Offset - if offset != 0: - swma = swma.shift(offset) - - # Fill - if "fillna" in kwargs: - swma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - swma.name = f"SWMA_{length}" - swma.category = "overlap" - - return swma diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/t3.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/t3.py deleted file mode 100644 index 8aee19e3..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/t3.py +++ /dev/null @@ -1,84 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.maps import Imports -from pandas_ta.utils import v_offset, v_pos_default, v_series, v_talib -from .ema import ema - - - -def t3( - close: Series, length: Int = None, a: IntFloat = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """T3 - - This indicator, by Tim Tillson, attempts to be smoother and more - responsive relative to other moving averages. - - Sources: - * [binarytribune](http://www.binarytribune.com/forex-trading-indicators/t3-moving-average-indicator/) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - a (float): The a factor, 0 < a < 1. Default: ```0.7``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - adjust (bool): Default: True - presma (bool): If True, uses SMA for initial value. - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Warning: - TA-Lib Correlation: ```np.float64(0.9999994265973177)``` - - Tip: - Corrective contributions welcome! - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, 5 * (length + 1)) - - if close is None: - return - - a = float(a) if isinstance(a, float) and 0 < a < 1 else 0.7 - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import T3 - t3 = T3(close, length, a) - else: - c1 = -a * a**2 - c2 = 3 * a**2 + 3 * a**3 - c3 = -6 * a**2 - 3 * a - 3 * a**3 - c4 = a**3 + 3 * a**2 + 3 * a + 1 - - e1 = ema(close=close, length=length, talib=mode_tal, **kwargs) - e2 = ema(close=e1, length=length, talib=mode_tal, **kwargs) - e3 = ema(close=e2, length=length, talib=mode_tal, **kwargs) - e4 = ema(close=e3, length=length, talib=mode_tal, **kwargs) - e5 = ema(close=e4, length=length, talib=mode_tal, **kwargs) - e6 = ema(close=e5, length=length, talib=mode_tal, **kwargs) - t3 = c1 * e6 + c2 * e5 + c3 * e4 + c4 * e3 - - # Offset - if offset != 0: - t3 = t3.shift(offset) - - # Fill - if "fillna" in kwargs: - t3.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - t3.name = f"T3_{length}_{a}" - t3.category = "overlap" - - return t3 diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/tema.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/tema.py deleted file mode 100644 index b5555595..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/tema.py +++ /dev/null @@ -1,73 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import v_offset, v_pos_default, v_series, v_talib -from .ema import ema - - - -def tema( - close: Series, length: Int = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Triple Exponential Moving Average - - This indicator attempts to be less laggy than the EMA. - - Sources: - * [tradingtechnologies](https://www.tradingtechnologies.com/help/x-study/technical-indicator-definitions/triple-exponential-moving-average-tema/) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - adjust (bool): Default: ```True``` - presma (bool): If True, uses SMA for initial value. - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Warning: - TA-Lib Correlation: ```np.float64(0.9999355450605516)``` - - Tip: - Corrective contributions welcome! - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, 3 * length) - - if close is None: - return - - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import TEMA - tema = TEMA(close, length) - else: - ema1 = ema(close=close, length=length, talib=mode_tal, **kwargs) - ema2 = ema(close=ema1, length=length, talib=mode_tal, **kwargs) - ema3 = ema(close=ema2, length=length, talib=mode_tal, **kwargs) - tema = 3 * (ema1 - ema2) + ema3 - - # Offset - if offset != 0: - tema = tema.shift(offset) - - # Fill - if "fillna" in kwargs: - tema.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - tema.name = f"TEMA_{length}" - tema.category = "overlap" - - return tema diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/trima.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/trima.py deleted file mode 100644 index 41f887f5..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/trima.py +++ /dev/null @@ -1,77 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import v_offset, v_pos_default, v_series, v_talib -from .sma import sma - - - -def trima( - close: Series, length: Int = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Triangular Moving Average - - This indicator is a weighted moving average where the shape of the - weights are triangular with the greatest weight is in the middle - of the period. - - Sources: - * [tradingtechnologies](https://www.tradingtechnologies.com/help/x-study/technical-indicator-definitions/triangular-moving-average-trima/) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - adjust (bool): Default: True - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - tma = sma(sma(src, ceil(length / 2)), floor(length / 2) + 1) # Tradingview - trima = sma(sma(x, n), n) # Tradingview - - Warning: - TA-Lib Correlation: ```np.float64(0.9991752493891967)``` - - Tip: - Corrective contributions welcome! - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, length) - - if close is None: - return - - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import TRIMA - trima = TRIMA(close, length) - else: - half_length = round(0.5 * (length + 1)) - sma1 = sma(close, length=half_length, talib=mode_tal) - trima = sma(sma1, length=half_length, talib=mode_tal) - - # Offset - if offset != 0: - trima = trima.shift(offset) - - # Fill - if "fillna" in kwargs: - trima.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - trima.name = f"TRIMA_{length}" - trima.category = "overlap" - - return trima diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/vidya.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/vidya.py deleted file mode 100644 index c1e44ab1..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/vidya.py +++ /dev/null @@ -1,113 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import nan -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - v_drift, - v_offset, - v_pos_default, - v_series, - v_talib -) - - - -def vidya( - close: Series, length: Int = None, - talib: bool = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Variable Index Dynamic Average - - This indicator, by Tushar Chande, is similar to an EMA but it has a - dynamically adjusted lookback period dependent based on CMO. - - Sources: - * [perfecttrendsystem](https://www.perfecttrendsystem.com/blog_mt4_2/en/vidya-indicator-for-mt4) - * [tradingview](https://www.tradingview.com/script/hdrf0fXV-Variable-Index-Dynamic-Average-VIDYA/) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```14``` - talib (bool): If installed, use TA Lib. Default: ```True``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - Sometimes used as a moving average or a trend identifier. - """ - # Validate - length = v_pos_default(length, 14) - close = v_series(close, length + 1) - - if close is None: - return - - mode_tal = v_talib(talib) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - m = close.size - alpha = 2 / (length + 1) - - if Imports["talib"] and mode_tal: - from talib import CMO - cmo_ = 0.01 * CMO(close, length) - else: - cmo_ = _cmo(close, length, drift) - abs_cmo = cmo_.abs().astype(float) - - vidya = Series(0.0, index=close.index) - for i in range(length, m): - vidya.iloc[i] = alpha * abs_cmo.iloc[i] * close.iloc[i] + \ - vidya.iloc[i - 1] * (1 - alpha * abs_cmo.iloc[i]) - vidya.replace({0: nan}, inplace=True) - - # Offset - if offset != 0: - vidya = vidya.shift(offset) - - # Fill - if "fillna" in kwargs: - vidya.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - vidya.name = f"VIDYA_{length}" - vidya.category = "overlap" - - return vidya - - -def _cmo(x: Series, length: Int, drift: Int): - """Chande Momentum Oscillator Patch - - Unguarded CMO Patch - - Parameters: - x (Series): ```x``` Series - length (int): The period. - drift (int): Difference amount. - - Returns: - (Series): 1 column - - Info: Weird Circular TypeError!? - For some reason: from pandas_ta.momentum import cmo causes - pandas_ta.momentum.coppock to not be able to import it's _wma_ like - from pandas_ta.overlap import wma? - """ - mom = x.diff(drift) - positive = mom.copy().clip(lower=0) - negative = mom.copy().clip(upper=0).abs() - pos_sum = positive.rolling(length).sum() - neg_sum = negative.rolling(length).sum() - - return (pos_sum - neg_sum) / (pos_sum + neg_sum) diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/wcp.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/wcp.py deleted file mode 100644 index 14ac9d79..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/wcp.py +++ /dev/null @@ -1,65 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import v_offset, v_series, v_talib - - - -def wcp( - high: Series, low: Series, close: Series, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Weighted Closing Price - - This indicator is a weighted value of: high, low and twice the close. - - Sources: - * [fmlabs](https://www.fmlabs.com/reference/default.htm?url=WeightedCloses.htm) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - _length = 1 - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import WCLPRICE - wcp = WCLPRICE(high, low, close) - else: - weight = high.to_numpy() + low.to_numpy() + 2 * close.to_numpy() - wcp = Series(weight, index=close.index) - - # Offset - if offset != 0: - wcp = wcp.shift(offset) - - # Fill - if "fillna" in kwargs: - wcp.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - wcp.name = "WCP" - wcp.category = "overlap" - - return wcp diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/wma.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/wma.py deleted file mode 100644 index 4b05de16..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/wma.py +++ /dev/null @@ -1,94 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from numpy import arange, float64, nan, zeros_like -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - v_ascending, - v_offset, - v_pos_default, - v_series, - v_talib -) - - - -@njit(cache=True) -def nb_wma(x, n, asc, prenan): - m = x.size - w = arange(1, n + 1, dtype=float64) - result = zeros_like(x, dtype=float64) - - if not asc: - w = w[::-1] - - for i in range(n - 1, m): - result[i] = (w * x[i - n + 1:i + 1]).sum() - result *= 2 / (n * n + n) - - if prenan: - result[:n - 1] = nan - - return result - - -def wma( - close: Series, length: Int = None, - asc: bool = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Weighted Moving Average - - This indicator is a Moving Average where the weights are linearly - increasing and the most recent data has the heaviest weight. - - Sources: - * [wikipedia](https://en.wikipedia.org/wiki/Moving_average#Weighted_moving_average) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - asc (bool): Recent values weigh more. Default: ```True``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, length) - - if close is None: - return - - asc = v_ascending(asc) - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import WMA - wma = WMA(close, length) - else: - np_close = close.to_numpy() - wma_ = nb_wma(np_close, length, asc, True) - wma = Series(wma_, index=close.index) - - # Offset - if offset != 0: - wma = wma.shift(offset) - - # Fill - if "fillna" in kwargs: - wma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - wma.name = f"WMA_{length}" - wma.category = "overlap" - - return wma diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/zlma.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/zlma.py deleted file mode 100644 index 2e57d347..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/overlap/zlma.py +++ /dev/null @@ -1,99 +0,0 @@ -# -*- coding: utf-8 -*- -from sys import modules as sys_modules -from numpy import isnan -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_mamode, v_offset, v_pos_default, v_series - -# Available MAs for zlma -from .dema import dema -from .ema import ema -from .fwma import fwma -from .hma import hma -from .linreg import linreg -from .midpoint import midpoint -from .pwma import pwma -from .rma import rma -from .sinwma import sinwma -from .sma import sma -from .ssf import ssf -from .swma import swma -from .t3 import t3 -from .tema import tema -from .trima import trima -from .vidya import vidya -from .wma import wma - - - -def zlma( - close: Series, length: Int = None, mamode: str = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Zero Lag Moving Average - - This indicator, by John Ehlers and Ric Way, attempts to eliminate the lag - often introduced in other moving averages. - - Sources: - * [wikipedia](https://en.wikipedia.org/wiki/Zero_lag_exponential_moving_average) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - mamode (str): One of: "dema", "ema", "fwma", "hma", "linreg", - "midpoint", "pwma", "rma", "sinwma", "ssf", "swma", "t3", - "tema", "trima", "vidya", or "wma". Default: ```"ema"``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, length) - - if close is None: - return - - mamode = v_mamode(mamode, "ema") - supported_mas = [ - "dema", "ema", "fwma", "hma", "linreg", - "midpoint", "pwma", "rma", "sinwma", "sma", - "ssf", "swma", "t3", "tema", "trima", "vidya", "wma" - ] - - if mamode not in supported_mas: - return - - offset = v_offset(offset) - - # Calculate - lag = int(0.5 * (length - 1)) - close_ = 2 * close - close.shift(lag) - - kwargs.update({"close": close_}) - kwargs.update({"length": length}) - - fn = getattr(sys_modules[__name__], mamode) - zlma = fn(**kwargs) - - if zlma is None or all(isnan(zlma)): - return # Emergency Break - - # Offset - if offset != 0: - zlma = zlma.shift(offset) - - # Fill - if "fillna" in kwargs: - zlma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - zlma.name = f"ZL_{zlma.name}" - zlma.category = "overlap" - - return zlma diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/performance/__init__.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/performance/__init__.py deleted file mode 100644 index c30db9ec..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/performance/__init__.py +++ /dev/null @@ -1,10 +0,0 @@ -# -*- coding: utf-8 -*- -from .drawdown import drawdown -from .log_return import log_return -from .percent_return import percent_return - -__all__ = [ - "drawdown", - "log_return", - "percent_return", -] diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/performance/drawdown.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/performance/drawdown.py deleted file mode 100644 index 1976c5e2..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/performance/drawdown.py +++ /dev/null @@ -1,68 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import log, seterr -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_offset, v_series - - - -def drawdown( - close: Series, offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Drawdown - - This indicator traces the peak-to-trough decline over a specific period. - Commonly quoted as the percentage between the peak and the subsequent - trough. - - Sources: - * [investopedia](https://www.investopedia.com/terms/d/drawdown.asp) - - Parameters: - close (Series): ```close``` Series. - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3 columns - """ - # Validate - close = v_series(close) - offset = v_offset(offset) - - # Calculate - max_close = close.cummax() - dd = max_close - close - dd_pct = 1 - (close / max_close) - - _np_err = seterr() - seterr(divide="ignore", invalid="ignore") - dd_log = log(max_close) - log(close) - seterr(divide=_np_err["divide"], invalid=_np_err["invalid"]) - - # Offset - if offset != 0: - dd = dd.shift(offset) - dd_pct = dd_pct.shift(offset) - dd_log = dd_log.shift(offset) - - # Fill - if "fillna" in kwargs: - dd.fillna(kwargs["fillna"], inplace=True) - dd_pct.fillna(kwargs["fillna"], inplace=True) - dd_log.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - dd.name = "DD" - dd_pct.name = f"{dd.name}_PCT" - dd_log.name = f"{dd.name}_LOG" - dd.category = dd_pct.category = dd_log.category = "performance" - - data = {dd.name: dd, dd_pct.name: dd_pct, dd_log.name: dd_log} - df = DataFrame(data, index=close.index) - df.name = dd.name - df.category = dd.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/performance/log_return.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/performance/log_return.py deleted file mode 100644 index b9c1c2ab..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/performance/log_return.py +++ /dev/null @@ -1,64 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import log, nan, roll -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_bool, v_offset, v_pos_default, v_series - - - -def log_return( - close: Series, length: Int = None, cumulative: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Log Return - - Calculates the logarithmic return. - - Sources: - * [stackoverflow](https://stackoverflow.com/questions/31287552/logarithmic-returns-in-pandas-dataframe) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```20``` - cumulative (bool): If True, returns the cumulative returns. - Default: ```False``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 1) - close = v_series(close, length + 1) - - if close is None: - return - - cumulative = v_bool(cumulative, False) - offset = v_offset(offset) - - # Calculate - np_close = close.to_numpy() - if cumulative: - r = np_close / np_close[0] - else: - r = np_close / roll(np_close, length) - r[:length] = nan - log_return = Series(log(r), index=close.index) - - # Offset - if offset != 0: - log_return = log_return.shift(offset) - - # Fill - if "fillna" in kwargs: - log_return.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - log_return.name = f"{'CUM' if cumulative else ''}LOGRET_{length}" - log_return.category = "performance" - - return log_return diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/performance/percent_return.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/performance/percent_return.py deleted file mode 100644 index 221fffc7..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/performance/percent_return.py +++ /dev/null @@ -1,64 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import nan, roll -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_bool, v_offset, v_pos_default, v_series - - - -def percent_return( - close: Series, length: Int = None, cumulative: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Percent Return - - Calculates the percent return. - - Sources: - * [stackoverflow](https://stackoverflow.com/questions/31287552/logarithmic-returns-in-pandas-dataframe) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```1``` - cumulative (bool): If True, returns the cumulative returns. - Default: ```False``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 1) - close = v_series(close, length + 1) - - if close is None: - return - - cumulative = v_bool(cumulative, False) - offset = v_offset(offset) - - # Calculate - np_close = close.to_numpy() - if cumulative: - pr = (np_close / np_close[0]) - 1 - else: - pr = (np_close / roll(np_close, length)) - 1 - pr[:length] = nan - pct_return = Series(pr, index=close.index) - - # Offset - if offset != 0: - pct_return = pct_return.shift(offset) - - # Fill - if "fillna" in kwargs: - pct_return.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - pct_return.name = f"{'CUM' if cumulative else ''}PCTRET_{length}" - pct_return.category = "performance" - - return pct_return diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/py.typed b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/py.typed deleted file mode 100644 index e69de29b..00000000 diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/__init__.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/__init__.py deleted file mode 100644 index 594392bc..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/__init__.py +++ /dev/null @@ -1,24 +0,0 @@ -# -*- coding: utf-8 -*- -from .entropy import entropy -from .kurtosis import kurtosis -from .mad import mad -from .median import median -from .quantile import quantile -from .skew import skew -from .stdev import stdev -from .tos_stdevall import tos_stdevall -from .variance import variance -from .zscore import zscore - -__all__ = [ - "entropy", - "kurtosis", - "mad", - "median", - "quantile", - "skew", - "stdev", - "tos_stdevall", - "variance", - "zscore", -] \ No newline at end of file diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/entropy.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/entropy.py deleted file mode 100644 index 198123cf..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/entropy.py +++ /dev/null @@ -1,60 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import log -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import v_offset, v_pos_default, v_series - - - -def entropy( - close: Series, length: Int = None, base: IntFloat = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Entropy - - This indicator attempts to quantify the unpredictability of the data, - or equivalently, its average information. It is a rolling entropy - calculation. - - Sources: - * [wikipedia](https://en.wikipedia.org/wiki/Entropy_(information_theory)) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - base (float): Logarithmic Base. Default: ```2``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, 2 * length - 1) - - if close is None: - return - - base = v_pos_default(base, 2.0) - offset = v_offset(offset) - - # Calculate - p = close / close.rolling(length).sum() - entropy = (-p * log(p) / log(base)).rolling(length).sum() - - # Offset - if offset != 0: - entropy = entropy.shift(offset) - - # Fill - if "fillna" in kwargs: - entropy.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - entropy.name = f"ENTP_{length}" - entropy.category = "statistics" - - return entropy diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/kurtosis.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/kurtosis.py deleted file mode 100644 index de5b79f0..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/kurtosis.py +++ /dev/null @@ -1,58 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_offset, v_pos_default, v_series - - - -def kurtosis( - close: Series, length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Rolling Kurtosis - - Calculates a rolling Kurtosis. - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```30``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Danger: - Possible Data Leak - """ - # Validate - length = v_pos_default(length, 30) - if "min_periods" in kwargs and kwargs["min_periods"] is not None: - min_periods = int(kwargs["min_periods"]) - else: - min_periods = length - close = v_series(close, max(length, min_periods)) - - if close is None: - return - - offset = v_offset(offset) - - # Calculate - kurtosis = close.rolling(length, min_periods=min_periods).kurt() - - # Offset - if offset != 0: - kurtosis = kurtosis.shift(offset) - - # Fill - if "fillna" in kwargs: - kurtosis.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - kurtosis.name = f"KURT_{length}" - kurtosis.category = "statistics" - - return kurtosis diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/mad.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/mad.py deleted file mode 100644 index 50541c47..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/mad.py +++ /dev/null @@ -1,61 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import fabs -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_offset, v_pos_default, v_series - - - -def _mad(series: Series): - """Mean Absolute Deviation""" - return fabs(series - series.mean()).mean() - - -def mad( - close: Series, length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Rolling Mean Absolute Deviation - - Calculates a rolling Mean Absolute Deviation (MAD). - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```30``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 30) - if "min_periods" in kwargs and kwargs["min_periods"] is not None: - min_periods = int(kwargs["min_periods"]) - else: - min_periods = length - close = v_series(close, max(length, min_periods)) - - if close is None: - return - - offset = v_offset(offset) - - # Calculate - mad = close.rolling(length, min_periods=min_periods).apply(_mad, raw=True) - - # Offset - if offset != 0: - mad = mad.shift(offset) - - # Fill - if "fillna" in kwargs: - mad.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - mad.name = f"MAD_{length}" - mad.category = "statistics" - - return mad diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/median.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/median.py deleted file mode 100644 index 03e57005..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/median.py +++ /dev/null @@ -1,58 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_offset, v_pos_default, v_series - - - -def median( - close: Series, length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Rolling Median - - Calculates a rolling Median. - - Sources: - * [incrediblecharts](https://www.incrediblecharts.com/indicators/median_price.php) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```30``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 30) - if "min_periods" in kwargs and kwargs["min_periods"] is not None: - min_periods = int(kwargs["min_periods"]) - else: - min_periods = length - close = v_series(close, max(length, min_periods)) - - if close is None: - return - - offset = v_offset(offset) - - # Calculate - median = close.rolling(length, min_periods=min_periods).median() - - # Offset - if offset != 0: - median = median.shift(offset) - - # Fill - if "fillna" in kwargs: - median.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - median.name = f"MEDIAN_{length}" - median.category = "statistics" - - return median diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/quantile.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/quantile.py deleted file mode 100644 index 35439167..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/quantile.py +++ /dev/null @@ -1,57 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import v_offset, v_pos_default, v_series - - - -def quantile( - close: Series, length: Int = None, q: IntFloat = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Rolling Quantile - - Calculates a rolling Quantile. - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```30``` - q (float): The quantile. Default: ```0.5``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 30) - if "min_periods" in kwargs and kwargs["min_periods"] is not None: - min_periods = int(kwargs["min_periods"]) - else: - min_periods = length - close = v_series(close, max(length, min_periods)) - - if close is None: - return - - q = float(q) if isinstance(q, float) and 0 < q < 1 else 0.5 - offset = v_offset(offset) - - # Calculate - quantile = close.rolling(length, min_periods=min_periods).quantile(q) - - # Offset - if offset != 0: - quantile = quantile.shift(offset) - - # Fill - if "fillna" in kwargs: - quantile.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - quantile.name = f"QTL_{length}_{q}" - quantile.category = "statistics" - - return quantile diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/skew.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/skew.py deleted file mode 100644 index e1068d04..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/skew.py +++ /dev/null @@ -1,58 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_offset, v_pos_default, v_series - - - -def skew( - close: Series, length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Rolling Skew - - Calculates a rolling Skew. - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```30``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Danger: - Possible Data Leak - """ - # Validate - length = v_pos_default(length, 30) - if "min_periods" in kwargs and kwargs["min_periods"] is not None: - min_periods = int(kwargs["min_periods"]) - else: - min_periods = length - close = v_series(close, max(length, min_periods)) - - if close is None: - return - - offset = v_offset(offset) - - # Calculate - skew = close.rolling(length, min_periods=min_periods).skew() - - # Offset - if offset != 0: - skew = skew.shift(offset) - - # Fill - if "fillna" in kwargs: - skew.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - skew.name = f"SKEW_{length}" - skew.category = "statistics" - - return skew diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/stdev.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/stdev.py deleted file mode 100644 index 90f7b2d4..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/stdev.py +++ /dev/null @@ -1,70 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import sqrt -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import v_offset, v_pos_default, v_series, v_talib -from .variance import variance - - - -def stdev( - close: Series, length: Int = None, - ddof: Int = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Rolling Standard Deviation - - Calculates a rolling Standard Deviation. - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```30``` - ddof (int): Delta Degrees of Freedom. Default: ```1``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - * TA Lib does not have a ```ddof``` parameter. - * The divisor used in calculations is: ```N - ddof```, where ```N``` - is the number of elements. To use ```ddof```, set ```talib=False```. - """ - # Validate - length = v_pos_default(length, 30) - close = v_series(close, length) - - if close is None: - return - - ddof = int(ddof) if isinstance(ddof, int) and 0 <= ddof < length else 1 - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import STDDEV - stdev = STDDEV(close, length) - else: - stdev = variance( - close=close, length=length, ddof=ddof, talib=mode_tal - ).apply(sqrt) - - # Offset - if offset != 0: - stdev = stdev.shift(offset) - - # Fill - if "fillna" in kwargs: - stdev.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - stdev.name = f"STDEV_{length}" - stdev.category = "statistics" - - return stdev diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/tos_stdevall.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/tos_stdevall.py deleted file mode 100644 index b3876a7d..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/tos_stdevall.py +++ /dev/null @@ -1,96 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import arange, array, polyfit, std -from pandas import DataFrame, DatetimeIndex, Series -from pandas_ta._typing import DictLike, Int, List -from pandas_ta.utils import v_list, v_lowerbound, v_offset, v_series - - - -def tos_stdevall( - close: Series, length: Int = None, - stds: List = None, ddof: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """TD Ameritrade's Think or Swim Standard Deviation All - - This indicator returns the standard deviation(s) over all the bars or the - last ```n``` (length) bars. - - Sources: - * [thinkorswim](https://tlc.thinkorswim.com/center/reference/thinkScript/Functions/Statistical/StDevAll) - - Parameters: - close (Series): ```close``` Series - length (int): Bars since current/last bar, Series[-1]. Default: ```None``` - stds (list): List of standard deviations in increasing order from the - central Linear Regression line. Default: ```[1,2,3]``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 7+ columns - - Note: - * TA Lib does not have a ```ddof``` parameter. - * The divisor used in calculations is: ```N - ddof```, where ```N``` - is the number of elements. To use ```ddof```, set ```talib=False```. - - Danger: - Possible Data Leak - """ - # Validate - _props = f"TOS_STDEVALL" - if length is None: - length = close.size - else: - length = v_lowerbound(length, 2, 30) - close = close.iloc[-length:] - _props = f"{_props}_{length}" - - close = v_series(close, 2) - - if close is None: - return - - stds = v_list(stds, [1, 2, 3]) - if min(stds) <= 0: - return - - if not all(i < j for i, j in zip(stds, stds[1:])): - stds = stds[::-1] - - ddof = int(ddof) if isinstance(ddof, int) and 0 <= ddof < length else 1 - offset = v_offset(offset) - - # Calculate - X = src_index = close.index - if isinstance(close.index, DatetimeIndex): - X = arange(length) - close = array(close) - - m, b = polyfit(X, close, 1) - lr = Series(m * X + b, index=src_index) - stdev = std(close, ddof=ddof) - - # Name and Category - df = DataFrame({f"{_props}_LR": lr}, index=src_index) - for i in stds: - df[f"{_props}_L_{i}"] = lr - i * stdev - df[f"{_props}_U_{i}"] = lr + i * stdev - df[f"{_props}_L_{i}"].name = df[f"{_props}_U_{i}"].name = f"{_props}" - df[f"{_props}_L_{i}"].category = df[f"{_props}_U_{i}"].category = "statistics" - - # Offset - if offset != 0: - df = df.shift(offset) - - # Fill - if "fillna" in kwargs: - df.fillna(kwargs["fillna"], inplace=True) - - df.name = f"{_props}" - df.category = "statistics" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/variance.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/variance.py deleted file mode 100644 index 85e9f850..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/variance.py +++ /dev/null @@ -1,70 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import v_lowerbound, v_offset, v_series, v_talib - - - -def variance( - close: Series, length: Int = None, - ddof: Int = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Rolling Variance - - Calculates a rolling Variance. - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```30``` - ddof (int): Delta Degrees of Freedom. Default: ```1``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - * TA Lib does not have a ```ddof``` parameter. - * The divisor used in calculations is: ```N - ddof```, where ```N``` - is the number of elements. To use ```ddof```, set ```talib=False```. - """ - # Validate - length = v_lowerbound(length, 1, 30) - if "min_periods" in kwargs and kwargs["min_periods"] is not None: - min_periods = int(kwargs["min_periods"]) - else: - min_periods = length - close = v_series(close, max(length, min_periods)) - - if close is None: - return - - ddof = int(ddof) if isinstance(ddof, int) and 0 <= ddof < length else 1 - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import VAR - variance = VAR(close, length) - else: - variance = close.rolling(length, min_periods=min_periods).var(ddof) - - # Offset - if offset != 0: - variance = variance.shift(offset) - - # Fill - if "fillna" in kwargs: - variance.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - variance.name = f"VAR_{length}" - variance.category = "statistics" - - return variance diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/zscore.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/zscore.py deleted file mode 100644 index a1ff7459..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/statistics/zscore.py +++ /dev/null @@ -1,57 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.overlap import sma -from pandas_ta.statistics import stdev -from pandas_ta.utils import v_lowerbound, v_offset, v_series - - - -def zscore( - close: Series, length: Int = None, std: IntFloat = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Rolling Z Score - - Calculates a rolling Z Score. - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```30``` - std (float): Number of deviation standards. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_lowerbound(length, 1, 30) - close = v_series(close, length) - - if close is None: - return - - std = v_lowerbound(std, 1, 1.0) - offset = v_offset(offset) - - # Calculate - std *= stdev(close=close, length=length, **kwargs) - mean = sma(close=close, length=length, **kwargs) - zscore = (close - mean) / std - - # Offset - if offset != 0: - zscore = zscore.shift(offset) - - # Fill - if "fillna" in kwargs: - zscore.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - zscore.name = f"ZS_{length}" - zscore.category = "statistics" - - return zscore diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/__init__.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/__init__.py deleted file mode 100644 index afb75b32..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/__init__.py +++ /dev/null @@ -1,46 +0,0 @@ -# -*- coding: utf-8 -*- -from .adx import adx -from .alphatrend import alphatrend -from .amat import amat -from .aroon import aroon -from .chop import chop -from .cksp import cksp -from .decay import decay -from .decreasing import decreasing -from .dpo import dpo -from .ht_trendline import ht_trendline -from .increasing import increasing -from .long_run import long_run -from .psar import psar -from .qstick import qstick -from .rwi import rwi -from .short_run import short_run -from .trendflex import trendflex -from .ttm_trend import ttm_trend -from .vhf import vhf -from .vortex import vortex -from .zigzag import zigzag - -__all__ = [ - "adx", - "alphatrend", - "amat", - "aroon", - "chop", - "cksp", - "decay", - "decreasing", - "dpo", - "ht_trendline", - "increasing", - "long_run", - "psar", - "qstick", - "rwi", - "short_run", - "trendflex", - "ttm_trend", - "vhf", - "vortex", - "zigzag", -] diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/adx.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/adx.py deleted file mode 100644 index 12c6fb22..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/adx.py +++ /dev/null @@ -1,168 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan, nan -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.ma import ma -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - v_bool, - v_drift, - v_mamode, - v_offset, - v_pos_default, - v_scalar, - v_series, - v_talib, - zero -) -from pandas_ta.volatility import atr - - - -def adx( - high: Series, low: Series, close: Series, length: Int = None, - signal_length: Int = None, adxr_length: Int = None, scalar: IntFloat = None, - talib: bool = None, tvmode: bool = None, mamode: str = None, - drift: Int = None, offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Average Directional Movement - - This indicator attempts to quantify trend strength by measuring the - amount of movement in a single direction. - - Sources: - * [tradingtechnologies](https://www.tradingtechnologies.com/help/x-study/technical-indicator-definitions/average-directional-movement-adx/) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```14``` - signal_length (int): Signal period. Default: ```length``` - adxr_length (int): ADXR period. Default: ```2``` - scalar (float): Scalar. Default: ```100``` - talib (bool): If installed, use TA Lib. Default: ```True``` - tvmode (bool): Trading View. Default: ```False``` - mamode (str): See ```help(ta.ma)```. Default: ```"rma"``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 4 columns - - Note: - ```signal_length``` is like TradingView's default ADX. - """ - # Validate - length = v_pos_default(length, 14) - signal_length = v_pos_default(signal_length, length) - adxr_length = v_pos_default(adxr_length, 2) - _length = max(length, signal_length, adxr_length) - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - scalar = v_scalar(scalar, 100) - mamode = v_mamode(mamode, "rma") - mode_tal = v_talib(talib) - mode_tv = v_bool(tvmode, False) - - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - atr_ = atr( - high=high, low=low, close=close, - length=length, prenan=kwargs.pop("prenan", True) - ) - if atr_ is None or all(isnan(atr_)): - return - - k = scalar / atr_ - - up = high - high.shift(drift) # high.diff(drift) - dn = low.shift(drift) - low # low.diff(-drift).shift(drift) - - pos = ((up > dn) & (up > 0)) * up - neg = ((dn > up) & (dn > 0)) * dn - - # Issue #671 Solution - # not_close = ~isclose(up, dn) - # pos = ((up > dn) & (up > 0) * up & not_close) * up - # neg = ((dn > up) & (dn > 0) * dn & not_close) * dn - - pos = pos.apply(zero) - neg = neg.apply(zero) - - if not mode_tv and Imports["talib"] and mode_tal and length > 1: - from talib import ADX, MINUS_DM, PLUS_DM - adx = ADX(high, low, close, length) - dmp = PLUS_DM(high, low, length) - dmn = MINUS_DM(high, low, length) - - elif mode_tv: - # How to treat the initial value of RMA varies from one another. - # It follows the way TradingView does, setting it to the average of - # previous values. Since 'pandas' does not provide API to control - # the initial value, work around it by modifying input value to get - # desired output. - pos.iloc[length - 1] = pos[:length].sum() - pos[:length - 1] = 0 - neg.iloc[length - 1] = neg[:length].sum() - neg[:length - 1] = 0 - - alpha = 1 / length - dmp = k * pos.ewm(alpha=alpha, adjust=False, min_periods=length).mean() - dmn = k * neg.ewm(alpha=alpha, adjust=False, min_periods=length).mean() - - # The same goes with dx. - dx = scalar * (dmp - dmn).abs() / (dmp + dmn) - dx = dx.shift(-length) - dx.iloc[length - 1] = dx[:length].sum() - dx[:length - 1] = 0 - - adx = ma(mamode, dx, length=signal_length) - # Rollback shifted rows. - adx[:length - 1] = nan - adx = adx.shift(length) - else: - dmp = k * ma(mamode, pos, length=length) - dmn = k * ma(mamode, neg, length=length) - dx = scalar * (dmp - dmn).abs() / (dmp + dmn) - adx = ma(mamode, dx, length=signal_length) - - adxr = 0.5 * (adx + adx.shift(adxr_length)) - - # Offset - if offset != 0: - adx = adx.shift(offset) - adxr = adxr.shift(offset) - dmn = dmn.shift(offset) - dmp = dmp.shift(offset) - - # Fill - if "fillna" in kwargs: - adx.fillna(kwargs["fillna"], inplace=True) - adxr.fillna(kwargs["fillna"], inplace=True) - dmp.fillna(kwargs["fillna"], inplace=True) - dmn.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - adx.name = f"ADX_{signal_length}" - adxr.name = f"ADXR_{signal_length}_{adxr_length}" - dmp.name = f"DMP_{length}" - dmn.name = f"DMN_{length}" - adx.category = dmp.category = dmn.category = "trend" - - data = {adx.name: adx, adxr.name: adxr, dmp.name: dmp, dmn.name: dmn} - df = DataFrame(data, index=close.index) - df.name = f"ADX_{signal_length}" - df.category = "trend" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/alphatrend.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/alphatrend.py deleted file mode 100644 index 5c1070ff..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/alphatrend.py +++ /dev/null @@ -1,161 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from numpy import isnan, nan, zeros_like -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.momentum import rsi -from pandas_ta.volatility import atr -from pandas_ta.volume.mfi import mfi -from pandas_ta.utils import ( - v_mamode, - v_offset, - v_pos_default, - v_series, - v_str, - v_talib -) - - - -@njit(cache=True) -def nb_alpha(low_atr, high_atr, momo_threshold): - m = momo_threshold.size - result = zeros_like(low_atr) - - for i in range(1, m): - if momo_threshold[i]: - if low_atr[i] < result[i - 1]: - result[i] = result[i - 1] - else: - result[i] = low_atr[i] - else: - if high_atr[i] > result[i - 1]: - result[i] = result[i - 1] - else: - result[i] = high_atr[i] - result[0] = nan - - return result - - -def alphatrend( - open_: Series, high: Series, low: Series, close: Series, - volume: Series = None, src: str = None, - length: int = None, multiplier: IntFloat = None, - threshold: IntFloat = None, lag: Int = None, - mamode: str = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -): - """Alpha Trend - - This indicator attempts to filter sideways movement for accurate signals. - - Sources: - * [OnlyFibonacci](https://github.com/OnlyFibonacci/AlgoSeyri/blob/main/alphaTrendIndicator.py) - * [tradingview](https://www.tradingview.com/script/o50NYLAZ-AlphaTrend/) - - Parameters: - open_ (Series): ```open``` Series - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - volume (Series): ```volume``` Series. Default: ```None``` - src (str): One of: "open", "high", "low" or "close". - Default: ```"close"``` - length (int): ATR, MFI, or RSI period. Default: ```14``` - multiplier (float): Trailing ATR multiple. Default: ```1``` - threshold (float): Momentum threshold. Default: ```50``` - lag (int): Lag period of main trend. Default: ```2``` - mamode (str): See ```help(ta.ma)```. Default: ```"sma"``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - """ - # Validate - length = v_pos_default(length, 14) - open_ = v_series(open_, length) - high = v_series(high, length) - low = v_series(low, length) - close = v_series(close, length) - - if open_ is None or high is None or low is None or close is None: - return - - _src = {"open": open_, "high": high, "low": low, "close": close} - src = v_str(src, "close") - src = src if src in _src.keys() else "close" - - multiplier = v_pos_default(multiplier, 1) - threshold = v_pos_default(threshold, 50) - lag = v_pos_default(lag, 2) - - mamode = v_mamode(mamode, "sma") - mode_tal = v_talib(talib) - offset = v_offset(offset) - - if volume is not None: - volume = v_series(volume) - if volume is None: - return - - # Calculate - atr_ = atr( - high=high, low=low, close=close, length=length, - mamode=mamode, talib=mode_tal - ) - - if atr_ is None or all(isnan(atr_)): - return - - lower_atr = low - atr_ * multiplier - upper_atr = high + atr_ * multiplier - - momo = None - if volume is None: - momo = rsi(close=_src[src], length=length, mamode=mamode, talib=mode_tal) - else: - momo = mfi( - high=high, low=low, close=close, volume=volume, - length=length, talib=mode_tal - ) - - if momo is None: - return - - np_upper_atr, np_lower_atr = upper_atr.to_numpy(), lower_atr.to_numpy() - - at = nb_alpha(np_lower_atr, np_upper_atr, momo.to_numpy() >= threshold) - at = Series(at, index=close.index) - - atl = at.shift(lag) - - if all(isnan(at)) or all(isnan(atl)): - return # Emergency Break - - # Offset - if offset != 0: - at = at.shift(offset) - atl = atl.shift(offset) - - # Fill - if "fillna" in kwargs: - at.fillna(kwargs["fillna"], inplace=True) - atl.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{length}_{multiplier}_{threshold}" - at.name = f"ALPHAT{_props}" - atl.name = f"ALPHATl{_props}_{lag}" - at.category = atl.category = "trend" - - data = {at.name: at, atl.name: atl} - df = DataFrame(data, index=close.index) - df.name = at.name - df.category = at.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/amat.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/amat.py deleted file mode 100644 index f5d48c77..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/amat.py +++ /dev/null @@ -1,87 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.utils import v_mamode, v_offset, v_pos_default, v_series -from .long_run import long_run -from .short_run import short_run - - - -def amat( - close: Series, fast: Int = None, slow: Int = None, - lookback: Int = None, mamode: str = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Archer Moving Averages Trends - - This indicator, by Kevin Johnson, attempts to identify both long run - and short run trends. - - Sources: - * Kevin Johnson - * [tradingview](https://www.tradingview.com/script/Z2mq63fE-Trade-Archer-Moving-Averages-v1-4F/) - - Parameters: - close (Series): ```close``` Series - fast (int): Fast MA period. Default: ```8``` - slow (int): Slow MA period. Default: ```21``` - lookback (int): Lookback period for ```long_run``` and ```short_run```. - Default: ```2``` - mamode (str): See ```help(ta.ma)```. Default: ```"ema"``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - run_length (int): OBV trend period. Default: ```2``` - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - - Note: - Both the long run and short run values are integers, where ```1``` - is a trend and ```0``` is not a trend. - """ - # Validate - fast = v_pos_default(fast, 8) - slow = v_pos_default(slow, 21) - lookback = v_pos_default(lookback, 2) - close = v_series(close, max(fast, slow, lookback)) - - if close is None: - return - - mamode = v_mamode(mamode, "ema") - offset = v_offset(offset) - if "length" in kwargs: - kwargs.pop("length") - - # Calculate - fast_ma = ma(mamode, close, length=fast, **kwargs) - slow_ma = ma(mamode, close, length=slow, **kwargs) - - mas_long = long_run(fast_ma, slow_ma, length=lookback) - mas_short = short_run(fast_ma, slow_ma, length=lookback) - - # Offset - if offset != 0: - mas_long = mas_long.shift(offset) - mas_short = mas_short.shift(offset) - - # Fill - if "fillna" in kwargs: - mas_long.fillna(kwargs["fillna"], inplace=True) - mas_short.fillna(kwargs["fillna"], inplace=True) - - _props = f"_{fast}_{slow}_{lookback}" - data = { - f"AMAT{mamode[0]}_LR{_props}": mas_long, - f"AMAT{mamode[0]}_SR{_props}": mas_short - } - df = DataFrame(data, index=close.index) - - # Name and Category - df.name = f"AMAT{mamode[0]}{_props}" - df.category = "trend" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/aroon.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/aroon.py deleted file mode 100644 index e627029f..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/aroon.py +++ /dev/null @@ -1,100 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - recent_maximum_index, - recent_minimum_index, - v_offset, - v_pos_default, - v_scalar, - v_series, - v_talib -) - - - -def aroon( - high: Series, low: Series, - length: Int = None, scalar: IntFloat = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Aroon & Aroon Oscillator - - This indicator attempts to identify trends and their magnitude. - - Sources: - * [tradingtechnologies](https://www.tradingtechnologies.com/help/x-study/technical-indicator-definitions/aroon-ar/) - * [tradingview](https://www.tradingview.com/wiki/Aroon) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - length (int): The period. Default: ```14``` - scalar (float): Scalar. Default: ```100``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3 columns - """ - # Validate - length = v_pos_default(length, 14) - high = v_series(high, length + 1) - low = v_series(low, length + 1) - - if high is None or low is None: - return - - scalar = v_scalar(scalar, 100) - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import AROON, AROONOSC - aroon_down, aroon_up = AROON(high, low, length) - aroon_osc = AROONOSC(high, low, length) - else: - periods_from_hh = high.rolling(length + 1) \ - .apply(recent_maximum_index,raw=True) - periods_from_ll = low.rolling(length + 1) \ - .apply(recent_minimum_index,raw=True) - - aroon_up = aroon_down = scalar - aroon_up *= 1 - (periods_from_hh / length) - aroon_down *= 1 - (periods_from_ll / length) - aroon_osc = aroon_up - aroon_down - - # Offset - if offset != 0: - aroon_up = aroon_up.shift(offset) - aroon_down = aroon_down.shift(offset) - aroon_osc = aroon_osc.shift(offset) - - # Fill - if "fillna" in kwargs: - aroon_up.fillna(kwargs["fillna"], inplace=True) - aroon_down.fillna(kwargs["fillna"], inplace=True) - aroon_osc.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - aroon_up.name = f"AROONU_{length}" - aroon_down.name = f"AROOND_{length}" - aroon_osc.name = f"AROONOSC_{length}" - - aroon_down.category = aroon_up.category = aroon_osc.category = "trend" - - data = { - aroon_down.name: aroon_down, - aroon_up.name: aroon_up, - aroon_osc.name: aroon_osc - } - df = DataFrame(data, index=high.index) - df.name = f"AROON_{length}" - df.category = aroon_down.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/chop.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/chop.py deleted file mode 100644 index 7db600d5..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/chop.py +++ /dev/null @@ -1,92 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import log, log10 -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import ( - v_bool, - v_drift, - v_offset, - v_pos_default, - v_scalar, - v_series -) -from pandas_ta.volatility import atr - - - -def chop( - high: Series, low: Series, close: Series, - length: Int = None, atr_length: Int = None, - ln: bool = None, scalar: IntFloat = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Choppiness Index - - This indicator, by E.W. Dreiss, attempts to determine choppiness. - - Sources: - * E.W. Dreiss an Australian Commodity Trader - * [motivewave](https://www.motivewave.com/studies/choppiness_index.htm) - * [tradingview](https://www.tradingview.com/scripts/choppinessindex/) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```14``` - atr_length (int): ATR period. Default: ```1``` - ln (bool): Use ```ln``` instead of ```log10```. Default: ```False``` - scalar (float): Scalar. Default: ```100``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - * Choppy: ```~ 100``` - * Trending: ```~ 0``` - """ - # Validate - length = v_pos_default(length, 14) - high = v_series(high, length + 1) - low = v_series(low, length + 1) - close = v_series(close, length + 1) - - if high is None or low is None or close is None: - return - - atr_length = v_pos_default(atr_length, 1) - scalar = v_scalar(scalar, 100) - ln = v_bool(ln, False) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - diff = high.rolling(length).max() - low.rolling(length).min() - - atr_ = atr(high=high, low=low, close=close, length=atr_length) - atr_sum = atr_.rolling(length).sum() - - chop = scalar - if ln: - chop *= (log(atr_sum) - log(diff)) / log(length) - else: - chop *= (log10(atr_sum) - log10(diff)) / log10(length) - - # Offset - if offset != 0: - chop = chop.shift(offset) - - # Fill - if "fillna" in kwargs: - chop.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - chop.name = f"CHOP{'ln' if ln else ''}_{length}_{atr_length}_{scalar}" - chop.category = "trend" - - return chop diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/cksp.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/cksp.py deleted file mode 100644 index fb2fa274..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/cksp.py +++ /dev/null @@ -1,101 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import ( - v_mamode, - v_offset, - v_pos_default, - v_series, - v_tradingview -) -from pandas_ta.volatility import atr - - - -def cksp( - high: Series, low: Series, close: Series, - p: Int = None, x: IntFloat = None, q: Int = None, - tvmode: bool = None, mamode: str = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Chande Kroll Stop - - This indicator, by Tushar Chande and Stanley Kroll, attempts to identify - trends with long and short stops. - - Sources: - * "The New Technical Trader", Wiley 1st ed. ISBN 9780471597803, page 95 - * [multicharts](https://www.multicharts.com/discussion/viewtopic.php?t=48914) - - Parameters: - close (Series): ```close``` Series - p (int): ATR and first stop period; see Note. - Default: ```10``` for both modes - x (float): ATR scalar; see Note. Default: ```1``` or ```3``` - q (int): Second stop period; see Note. Default: ```9``` or ```20``` - tvmode (bool): Trading View mode. Default: ```True``` - mamode (str): See ```help(ta.ma)```. Default: ```None``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - - Note: Book vs TradingView Defaults - * Book: ```p=10, x=3, q=20, ma="sma"``` - * Trading View: ```p=10, x=1, q=9, ma="rma"``` - """ - # Validate - mode_tv = v_tradingview(tvmode) - p = v_pos_default(p, 10) - # TODO: clean up x and q - x = float(x) if isinstance(x, float) and x > 0 else 1 if tvmode is True else 3 - q = int(q) if isinstance(q, float) and q > 0 else 9 if tvmode is True else 20 - _length = p + q - - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - mamode = v_mamode(mamode, "rma") if mode_tv else v_mamode(mamode, "sma") - offset = v_offset(offset) - - # Calculate - atr_ = atr(high=high, low=low, close=close, length=p, mamode=mamode) - if atr_ is None or all(isnan(atr_)): - return - - long_stop_ = high.rolling(p).max() - x * atr_ - long_stop = long_stop_.rolling(q).max() - - short_stop_ = low.rolling(p).min() + x * atr_ - short_stop = short_stop_.rolling(q).min() - - # Offset - if offset != 0: - long_stop = long_stop.shift(offset) - short_stop = short_stop.shift(offset) - - # Fill - if "fillna" in kwargs: - long_stop.fillna(kwargs["fillna"], inplace=True) - short_stop.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{p}_{x}_{q}" - long_stop.name = f"CKSPl{_props}" - short_stop.name = f"CKSPs{_props}" - long_stop.category = short_stop.category = "trend" - - data = {long_stop.name: long_stop, short_stop.name: short_stop} - df = DataFrame(data, index=close.index) - df.name = f"CKSP{_props}" - df.category = long_stop.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/decay.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/decay.py deleted file mode 100644 index 161a3de3..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/decay.py +++ /dev/null @@ -1,95 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from numpy import float64, zeros_like -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_offset, v_pos_default, v_series, v_str - - - -# Exponential Decay - https://tulipindicators.org/edecay -@njit(cache=True) -def nb_exponential_decay(x, n): - m, rate = x.size, 1.0 - (1.0 / n) - - result = zeros_like(x, dtype=float64) - result[0] = x[0] - - for i in range(1, m): - result[i] = max(0, x[i], result[i - 1] * rate) - - return result - - -# Linear Decay - https://tulipindicators.org/decay -@njit(cache=True) -def nb_linear_decay(x, n): - m, rate = x.size, 1.0 / n - - result = zeros_like(x, dtype=float64) - result[0] = x[0] - - for i in range(1, m): - result[i] = max(0, x[i], result[i - 1] - rate) - - return result - - -def decay( - close: Series, length: Int = None, mode: str = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Decay - - This function creates a decay moving forward from prior signals. - - Sources: - * [tulipindicators](https://tulipindicators.org/decay) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```1``` - mode (str): Either ```"linear"``` or ```"exp"``` (exponetional) - Default: ```"linear"``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - close = v_series(close, length) - - if close is None: - return - - length = v_pos_default(length, 1) - mode = v_str(mode, "linear") - offset = v_offset(offset) - - # Calculate - _mode, np_close = "L", close.to_numpy() - - if mode in ["exp", "exponential"]: - _mode = "EXP" - result = nb_exponential_decay(np_close, length) - else: # "linear" - result = nb_linear_decay(np_close, length) - - result = Series(result, index=close.index) - - # Offset - if offset != 0: - result = result.shift(offset) - - # Fill - if "fillna" in kwargs: - result.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - result.name = f"{_mode}DECAY_{length}" - result.category = "trend" - - return result diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/decreasing.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/decreasing.py deleted file mode 100644 index 04762e15..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/decreasing.py +++ /dev/null @@ -1,85 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import ( - v_percent, - v_bool, - v_drift, - v_offset, - v_pos_default, - v_series -) - - - -def decreasing( - close: Series, length: Int = None, strict: bool = None, - asint: bool = None, percent: IntFloat = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Decreasing - - This indicator, by Kevin Johnson, attempts to identify decreasing periods. - - Sources: - * Kevin Johnson - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```1``` - strict (bool): Check if continuously increasing. Default: ```False``` - percent (float): Percent, i.e. ```5.0```. Default: ```None``` - asint (bool): Returns as ```Int```. Default: ```True``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 1) - close = v_series(close, length) - - if close is None: - return - - strict = v_bool(strict, False) - asint = v_bool(asint, True) - percent = float(percent) if v_percent(percent) else False - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - close_ = (1 - 0.01 * percent) * close if percent else close - if strict: - # Returns value as float64? Have to cast to bool - decreasing = close < close_.shift(drift) - for x in range(3, length + 1): - decreasing &= (close.shift(x - (drift + 1)) < close_.shift(x - drift)) - - decreasing.fillna(0, inplace=True) - decreasing = decreasing.astype(bool) - else: - decreasing = close_.diff(length) < 0 - - if asint: - decreasing = decreasing.astype(int) - - # Offset - if offset != 0: - decreasing = decreasing.shift(offset) - - # Fill - if "fillna" in kwargs: - decreasing.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _percent = f"_{0.01 * percent}" if percent else '' - _props = f"{'S' if strict else ''}DEC{'p' if percent else ''}" - decreasing.name = f"{_props}_{length}{_percent}" - decreasing.category = "trend" - - return decreasing diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/dpo.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/dpo.py deleted file mode 100644 index db003497..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/dpo.py +++ /dev/null @@ -1,69 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.overlap import sma -from pandas_ta.utils import v_bool, v_offset, v_pos_default, v_series - - - -def dpo( - close: Series, length: Int = None, centered: bool = True, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Detrend Price Oscillator - - This indicator attempts to detrend (remove the trend) and identify cycles. - - Sources: - * [fidelity](https://www.fidelity.com/learning-center/trading-investing/technical-analysis/technical-indicator-guide/dpo) - * [stockcharts](http://stockcharts.com/school/doku.php?id=chart_school:technical_indicators:detrended_price_osci) - * [tradingview](https://www.tradingview.com/scripts/detrendedpriceoscillator/) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```20``` - centered (bool): Shift the dpo back by ```int(0.5 * length) + 1```. - Set to ```False``` to remove data leakage. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Danger: Possible Data Leak - Set ```centered=False``` to remove data leakage. See [Issue #60]( https://github.com/twopirllc/pandas-ta/issues/60#). - """ - # Validate - length = v_pos_default(length, 20) - close = v_series(close, length + 1) - - if close is None: - return - - centered = v_bool(centered, True) - offset = v_offset(offset) - - # Calculate - t = int(0.5 * length) + 1 - ma = sma(close, length) - - if centered: - dpo = (close.shift(t) - ma).shift(-t) - else: - dpo = close - ma.shift(t) - - # Offset - if offset != 0: - dpo = dpo.shift(offset) - - # Fill - if "fillna" in kwargs: - dpo.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - dpo.name = f"DPO_{length}" - dpo.category = "trend" - - return dpo diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/ht_trendline.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/ht_trendline.py deleted file mode 100644 index 72c47b74..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/ht_trendline.py +++ /dev/null @@ -1,148 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from numpy import arctan, isnan, nan, rad2deg, zeros_like -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import v_offset, v_pos_default, v_series, v_talib - - - -@njit(cache=True) -def nb_ht_trendline(x): - a, b, m = 0.0962, 0.5769, x.size - - wma4, dt = zeros_like(x), zeros_like(x) - q1, q2 = zeros_like(x), zeros_like(x) - ji, jq = zeros_like(x), zeros_like(x) - i1, i2 = zeros_like(x), zeros_like(x) - re, im = zeros_like(x), zeros_like(x) - period, smp = zeros_like(x), zeros_like(x) - i_trend = zeros_like(x) - - result = zeros_like(x) - result[:13] = x[:13] - - # Ehlers's starts from 6, TALib from 63 - for i in range(6, m): - adj_prev_period = 0.075 * period[i - 1] + 0.54 - - wma4[i] = 0.4 * x[i] + 0.3 * x[i - 1] + 0.2 * x[i - 2] + 0.1 * x[i - 3] - dt[i] = adj_prev_period * (a * wma4[i] + b * wma4[i - 2] - b * wma4[i - 4] - a * wma4[i - 6]) - - q1[i] = adj_prev_period * (a * dt[i] + b * dt[i - 2] - b * dt[i - 4] - a * dt[i - 6]) - i1[i] = dt[i - 3] - - ji[i] = adj_prev_period * (a * i1[i] + b * i1[i - 2] - b * i1[i - 4] - a * i1[i - 6]) - jq[i] = adj_prev_period * (a * q1[i] + b * q1[i - 2] - b * q1[i - 4] - a * q1[i - 6]) - - i2[i] = i1[i] - jq[i] - q2[i] = q1[i] + ji[i] - - i2[i] = 0.2 * i2[i] + 0.8 * i2[i - 1] - q2[i] = 0.2 * q2[i] + 0.8 * q2[i - 1] - - re[i] = i2[i] * i2[i - 1] + q2[i] * q2[i - 1] - im[i] = i2[i] * q2[i - 1] - q2[i] * i2[i - 1] - - re[i] = 0.2 * re[i] + 0.8 * re[i - 1] - im[i] = 0.2 * im[i] + 0.8 * im[i - 1] - - if re[i] != 0 and im[i] != 0: - period[i] = 360.0 / rad2deg(arctan(im[i] / re[i])) - if period[i] > 1.5 * period[i - 1]: - period[i] = 1.5 * period[i - 1] - if period[i] < 0.67 * period[i - 1]: - period[i] = 0.67 * period[i - 1] - if period[i] < 6.0: - period[i] = 6.0 - if period[i] > 50.0: - period[i] = 50.0 - period[i] = 0.2 * period[i] + 0.8 * period[i - 1] - smp[i] = 0.33 * period[i] + 0.67 * smp[i - 1] - - dc_period = int(smp[i] + 0.5) - dcp_avg = 0 - for k in range(dc_period): - dcp_avg += x[i - k] - - if dc_period > 0: - dcp_avg /= dc_period - - i_trend[i] = dcp_avg - - if i > 12: - result[i] = 0.4 * i_trend[i] + 0.3 * i_trend[i - 1] + 0.2 * i_trend[i - 2] + 0.1 * i_trend[i - 3] - - return result - - -def ht_trendline( - close: Series, talib: bool = None, - prenan: Int = None, offset: Int = None, - **kwargs: DictLike -) -> Series: - """Hilbert Transform TrendLine - - This indicator uses the Hilbert Transform to smooth values. - - Sources: - * John F Ehlers's "Rocket Science for Traders" Book - * [mql5](https://c.mql5.com/forextsd/forum/59/023inst.pdf) - * TA-Lib [ta_HT_TRENDLINE](https://github.com/TA-Lib/ta-lib/blob/main/src/ta_func/ta_HT_TRENDLINE.c) - - Parameters: - close (Series): ```close``` Series. - talib (bool): If installed, use TA Lib. Default: ```True``` - prenan (int): Prenans to apply. Ehlers's ```6``` or ```12```, - TALib ```63``` Default: ```63``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Warning: - TA-Lib Correlation: ```np.float64(0.9979308363057683)``` - - Tip: - Corrective contributions welcome! - """ - # Validate - prenan = v_pos_default(prenan, 63) - close = v_series(close, prenan) - - if close is None: - return - - mode_tal = v_talib(talib) - offset = v_offset(offset) - - if Imports["talib"] and mode_tal: - from talib import HT_TRENDLINE - tl = HT_TRENDLINE(close) - else: - np_close = close.to_numpy() - np_tl = nb_ht_trendline(np_close) - - if prenan > 0: - np_tl[:prenan] = nan - tl = Series(np_tl, index=close.index) - - if all(isnan(tl)): - return # Emergency Break - - # Offset - if offset != 0: - trend_line = tl.shift(offset) - - # Fill - if "fillna" in kwargs: - tl.fillna(kwargs["fillna"], inplace=True) - - tl.name = f"HT_TL" - tl.category = "trend" - - return tl diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/increasing.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/increasing.py deleted file mode 100644 index 6d06b19d..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/increasing.py +++ /dev/null @@ -1,85 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import ( - v_percent, - v_bool, - v_drift, - v_offset, - v_pos_default, - v_series -) - - - -def increasing( - close: Series, length: Int = None, strict: bool = None, - asint: bool = None, percent: IntFloat = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Increasing - - This indicator, by Kevin Johnson, attempts to identify increasing periods. - - Sources: - * Kevin Johnson - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```1``` - strict (bool): Check if continuously increasing. Default: ```False``` - percent (float): Percent, i.e. ```5.0```. Default: ```None``` - asint (bool): Returns as ```Int```. Default: ```True``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 1) - close = v_series(close, length) - - if close is None: - return - - strict = v_bool(strict, False) - asint = v_bool(asint, True) - percent = float(percent) if v_percent(percent) else False - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - close_ = (1 + 0.01 * percent) * close if percent else close - if strict: - # Returns value as float64? Have to cast to bool - increasing = close > close_.shift(drift) - for x in range(3, length + 1): - increasing &= (close.shift(x - (drift + 1)) > close_.shift(x - drift)) - - increasing.fillna(0, inplace=True) - increasing = increasing.astype(bool) - else: - increasing = close_.diff(length) > 0 - - if asint: - increasing = increasing.astype(int) - - # Offset - if offset != 0: - increasing = increasing.shift(offset) - - # Fill - if "fillna" in kwargs: - increasing.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _percent = f"_{0.01 * percent}" if percent else '' - _props = f"{'S' if strict else ''}INC{'p' if percent else ''}" - increasing.name = f"{_props}_{length}{_percent}" - increasing.category = "trend" - - return increasing diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/long_run.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/long_run.py deleted file mode 100644 index 24a51d20..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/long_run.py +++ /dev/null @@ -1,66 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_offset, v_pos_default, v_series -from .decreasing import decreasing -from .increasing import increasing - - - -def long_run( - fast: Series, slow: Series, length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Long Run - - This indicator, by Kevin Johnson, attempts to identify long runs. - - Sources: - * Kevin Johnson - * [tradingview](https://www.tradingview.com/script/Z2mq63fE-Trade-Archer-Moving-Averages-v1-4F/) - - Parameters: - fast (Series): ```fast``` Series. - slow (Series): ```slow``` Series. - length (int): The ```decreasing``` and ```increasing``` period. - Default: ```2``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 2) - fast = v_series(fast, length) - slow = v_series(slow, length) - - if fast is None or slow is None: - return - - offset = v_offset(offset) - - # Calculate - inc = increasing(fast, length) - - # potential bottom or bottom - pb = inc & decreasing(slow, length) - # fast and slow are increasing - bi = inc & increasing(slow, length) - long_run = pb | bi - - # Offset - if offset != 0: - long_run = long_run.shift(offset) - - # Fill - if "fillna" in kwargs: - long_run.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - long_run.name = f"LR_{length}" - long_run.category = "trend" - - return long_run diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/psar.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/psar.py deleted file mode 100644 index a4b4bcaf..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/psar.py +++ /dev/null @@ -1,154 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import full, nan, zeros -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import v_offset, v_pos_default, v_series, zero - - - -def psar( - high: Series, low: Series, close: Series = None, - af0: IntFloat = None, af: IntFloat = None, max_af: IntFloat = None, tv=False, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Parabolic Stop and Reverse - - This indicator, by J. Wells Wilder, attempts to identify trend direction - and potential reversals. - - Sources: - * [sierrachart](https://www.sierrachart.com/index.php?page=doc/StudiesReference.php&ID=66&Name=Parabolic) - * [tradingview](https://www.tradingview.com/pine-script-reference/#fun_sar) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): Optional ```close``` Series - af0 (float): Initial Acceleration Factor. Default: ```0.02``` - af (float): Acceleration Factor. Default: ```0.02``` - max_af (float): Maximum Acceleration Factor. Default: ```0.2``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 4 columns - - Warning: - TA-Lib Correlation: ```np.float64(0.9837617513753181)``` - - Tip: - Corrective contributions welcome! - """ - # Validate - _length = 1 - high = v_series(high, _length) - low = v_series(low, _length) - - if high is None or low is None: - return - - orig_high = high.copy() - orig_low = low.copy() - # Numpy arrays offer some performance improvements - high, low = high.to_numpy(), low.to_numpy() - - paf = v_pos_default(af, 0.02) # paf is used to keep af from parameters - af0 = v_pos_default(af0, paf) - af = af0 - - max_af = v_pos_default(max_af, 0.2) - offset = v_offset(offset) - - # Set up - m = high.size - sar = zeros(m) - long = full(m, nan) - short = full(m, nan) - reversal = zeros(m, dtype=int) - _af = zeros(m) - _af[:2] = af0 - falling = _falling(orig_high.iloc[:2], orig_low.iloc[:2]) - ep = low[0] if falling else high[0] - if close is not None: - close = v_series(close) - sar[0] = close.iloc[0] - else: - sar[0] = high[0] if falling else low[0] - - # Calculate - for i in range(1, m): - sar[i] = sar[i - 1] + af * (ep - sar[i - 1]) - - if falling: - reverse = high[i] > sar[i] - if low[i] < ep: - ep = low[i] - af = min(af + af0, max_af) - sar[i] = max(high[i - 1], sar[i]) - else: - reverse = low[i] < sar[i] - if high[i] > ep: - ep = high[i] - af = min(af + af0, max_af) - sar[i] = min(low[i - 1], sar[i]) - - if reverse: - sar[i] = ep - af = af0 - falling = not falling - ep = low[i] if falling else high[i] - - # Separate long/short SAR based on falling - if falling: - short[i] = sar[i] - else: - long[i] = sar[i] - - _af[i] = af - reversal[i] = int(reverse) - - _af = Series(_af, index=orig_high.index) - long = Series(long, index=orig_high.index) - short = Series(short, index=orig_high.index) - reversal = Series(reversal, index=orig_high.index) - - # Offset - if offset != 0: - _af = _af.shift(offset) - long = long.shift(offset) - short = short.shift(offset) - reversal = reversal.shift(offset) - - # Fill - if "fillna" in kwargs: - _af.fillna(kwargs["fillna"], inplace=True) - long.fillna(kwargs["fillna"], inplace=True) - short.fillna(kwargs["fillna"], inplace=True) - reversal.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _name = f"PSAR" - _props = f"_{af0}_{max_af}" - - data = { - f"{_name}l{_props}": long, - f"{_name}s{_props}": short, - f"{_name}af{_props}": _af, - f"{_name}r{_props}": reversal - } - df = DataFrame(data, index=orig_high.index) - df.name = f"{_name}{_props}" - df.category = long.category = short.category = "trend" - - return df - - -def _falling(high, low, drift: int = 1): - """Returns the last -DM value""" - # Not to be confused with ta.falling() - up = high - high.shift(drift) - dn = low.shift(drift) - low - _dmn = (((dn > up) & (dn > 0)) * dn).apply(zero).iloc[-1] - return _dmn > 0 diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/qstick.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/qstick.py deleted file mode 100644 index 7fd14657..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/qstick.py +++ /dev/null @@ -1,67 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.utils import ( - non_zero_range, - v_mamode, - v_offset, - v_pos_default, - v_series -) - - - -def qstick( - open_: Series, close: Series, length: Int = None, mamode: str = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Q Stick - - This indicator, by Tushar Chande, attempts to quantify and identify - trends. - - Sources: - * [tradingtechnologies](https://library.tradingtechnologies.com/trade/chrt-ti-qstick.html) - - Parameters: - open_ (Series): ```open``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - mamode (str): See ```help(ta.ma)```. Default: ```"sma"``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 10) - open_ = v_series(open_, length) - close = v_series(close, length) - - if open_ is None or close is None: - return - - mamode = v_mamode(mamode, "sma") - offset = v_offset(offset) - - # Calculate - diff = non_zero_range(close, open_) - qstick = ma(mamode, diff, length=length, **kwargs) - - # Offset - if offset != 0: - qstick = qstick.shift(offset) - - # Fill - if "fillna" in kwargs: - qstick.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - qstick.name = f"QS_{length}" - qstick.category = "trend" - - return qstick diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/rwi.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/rwi.py deleted file mode 100644 index ed77f181..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/rwi.py +++ /dev/null @@ -1,94 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.volatility import atr -from pandas_ta.utils import ( - v_drift, - v_mamode, - v_offset, - v_pos_default, - v_series, - v_talib -) - - - -def rwi( - high: Series, low: Series, close: Series, - length: Int = None, mamode: str = None, talib: bool = None, - drift: Int = None, offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Random Walk Index - - This indicator attempts to identify the difference between a trend and - a random walk. - - Sources: - * [technicalindicators](https://www.technicalindicators.net/indicators-technical-analysis/168-rwi-random-walk-index) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```14``` - mamode (str): See ```help(ta.ma)```. Default: ```"rma"``` - talib (bool): If installed, use TA Lib. Default: ```True``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - """ - # Validate - length = v_pos_default(length, 14) - _length = length + 1 - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - mamode = v_mamode(mamode, "rma") - mode_tal = v_talib(talib) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - atr_ = atr( - high=high, low=low, close=close, - length=length, mamode=mamode, talib=mode_tal - ) - if all(isnan(atr_)): - return # Emergency Break - - denom = atr_ * (length ** 0.5) - rwi_high = (high - low.shift(length)) / denom - rwi_low = (high.shift(length) - low) / denom - - # Offset - if offset != 0: - rwi_high = rwi_high.shift(offset) - rwi_low = rwi_low.shift(offset) - - # Fill - if "fillna" in kwargs: - rwi_high.fillna(kwargs["fillna"], inplace=True) - rwi_low.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - rwi_high.name = f"RWIh_{length}" - rwi_low.name = f"RWIl_{length}" - rwi_high.category = rwi_low.category = "trend" - - # Prepare DataFrame to return - data = {rwi_high.name: rwi_high, rwi_low.name: rwi_low} - df = DataFrame(data, index=close.index) - df.name = f"RWI_{length}" - df.category = "trend" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/short_run.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/short_run.py deleted file mode 100644 index 3aa86866..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/short_run.py +++ /dev/null @@ -1,66 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_offset, v_pos_default, v_series -from .decreasing import decreasing -from .increasing import increasing - - - -def short_run( - fast: Series, slow: Series, length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Short Run - - This indicator, by Kevin Johnson, attempts to identify short runs. - - Sources: - * Kevin Johnson - * [tradingview](https://www.tradingview.com/script/Z2mq63fE-Trade-Archer-Moving-Averages-v1-4F/) - - Parameters: - fast (Series): ```fast``` Series. - slow (Series): ```slow``` Series. - length (int): The ```decreasing``` and ```increasing``` period. - Default: ```2``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 2) - fast = v_series(fast, length) - slow = v_series(slow, length) - - if fast is None or slow is None: - return - - offset = v_offset(offset) - - # Calculate - dec = decreasing(fast, length) - - # potential top or top - pt = dec & increasing(slow, length) - # fast and slow are decreasing - bd = dec & decreasing(slow, length) - short_run = pt | bd - - # Offset - if offset != 0: - short_run = short_run.shift(offset) - - # Fill - if "fillna" in kwargs: - short_run.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - short_run.name = f"SR_{length}" - short_run.category = "trend" - - return short_run diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/trendflex.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/trendflex.py deleted file mode 100644 index e90a11de..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/trendflex.py +++ /dev/null @@ -1,111 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from numpy import cos, exp, nan, sqrt, zeros_like -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import v_offset, v_pos_default, v_series - - - -# Ehlers's Trendflex -# http://traders.com/Documentation/FEEDbk_docs/2020/02/TradersTips.html -@njit(cache=True) -def nb_trendflex(x, n, k, alpha, pi, sqrt2): - m, ratio = x.size, 2 * sqrt2 / k - a = exp(-pi * ratio) - b = 2 * a * cos(180 * ratio) - c = a * a - b + 1 - - _f = zeros_like(x) - _ms = zeros_like(x) - result = zeros_like(x) - - for i in range(2, m): - _f[i] = 0.5 * c * (x[i] + x[i - 1]) + b * _f[i - 1] - a * a * _f[i - 2] - - for i in range(n, m): - _sum = 0 - for j in range(1, n): - _sum += _f[i] - _f[i - j] - _sum /= n - - _ms[i] = alpha * _sum * _sum + (1 - alpha) * _ms[i - 1] - if _ms[i] != 0.0: - result[i] = _sum / sqrt(_ms[i]) - - return result - - -def trendflex( - close: Series, length: Int = None, - smooth: Int = None, alpha: IntFloat = None, - pi: IntFloat = None, sqrt2: IntFloat = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Trendflex - - This trend indicator, by John F. Ehlers, complements the "reflex" - indicator. - - Sources: - * [rengel8](https://github.com/rengel8) (2021-08-11) based on the - implementation from "ProRealCode" (2021-08-11) - * [prorealcode](https://www.prorealcode.com/prorealtime-indicators/reflex-and-trendflex-indicators-john-f-ehlers/) - * [traders](http://traders.com/Documentation/FEEDbk_docs/2020/02/TradersTips.html) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```20``` - smooth (int): Super Smoother period. Default: ```20```` - alpha (float): Alpha weight. Default: ```0.04``` - pi (float): Ehlers's truncated value: ```3.14159```. - Default: ```3.14159``` - sqrt2 (float): Ehlers's truncated value: ```1.414```. - Default: ```1.414``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - John F. Ehlers introduced two indicators within the article - "Reflex: A New Zero-Lag Indicator” in February 2020, TASC magazine. - One of which is Reflex, a lag reduced cycle indicator. Both indicators - (Reflex/Trendflex) are oscillators that complement each other with the - focus for cycle and trend. - """ - # Validate - length = v_pos_default(length, 20) - smooth = v_pos_default(smooth, 20) - close = v_series(close, max(length, smooth) + 1) - - if close is None: - return - - alpha = v_pos_default(alpha, 0.04) - pi = v_pos_default(pi, 3.14159) - sqrt2 = v_pos_default(sqrt2, 1.414) - offset = v_offset(offset) - - # Calculate - np_close = close.to_numpy() - result = nb_trendflex(np_close, length, smooth, alpha, pi, sqrt2) - result[:length] = nan - result = Series(result, index=close.index) - - # Offset - if offset != 0: - result = result.shift(offset) - - # Fill - if "fillna" in kwargs: - result.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - result.name = f"TRENDFLEX_{length}_{smooth}_{alpha}" - result.category = "trend" - - return result diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/ttm_trend.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/ttm_trend.py deleted file mode 100644 index f3578c84..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/ttm_trend.py +++ /dev/null @@ -1,76 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.overlap import hl2 -from pandas_ta.utils import v_offset, v_pos_default, v_series - - - -def ttm_trend( - high: Series, low: Series, close: Series, - length: Int = None, offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """TTM Trend - - This indicator, by John Carter, labels bars green, ```1```, or - red ```-1```, when above or below the average value. - - Sources: - * John Carter, book “Mastering the Trade” - * [prorealcode](https://www.prorealcode.com/prorealtime-indicators/ttm-trend-price/) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```6``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 1 column - - Tip: - * Two bars of the opposite color is the signal to get in or out. - * Recommended to stay in trade if colors do not change. - """ - # Validate - length = v_pos_default(length, 6) - high = v_series(high, length) - low = v_series(low, length) - close = v_series(close, length) - - if high is None or low is None or close is None: - return - - offset = v_offset(offset) - - # Calculate - trend_avg = hl2(high, low) - for i in range(1, length): - trend_avg = trend_avg + hl2(high.shift(i), low.shift(i)) - - trend_avg = trend_avg / length - - tm_trend = (close > trend_avg).astype(int) - tm_trend.replace(0, -1, inplace=True) - - # Offset - if offset != 0: - tm_trend = tm_trend.shift(offset) - - # Fill - if "fillna" in kwargs: - tm_trend.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - tm_trend.name = f"TTM_TRND_{length}" - tm_trend.category = "momentum" - - df = DataFrame({tm_trend.name: tm_trend}, index=close.index) - df.name = f"TTMTREND_{length}" - df.category = tm_trend.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/vhf.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/vhf.py deleted file mode 100644 index 7c7814e2..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/vhf.py +++ /dev/null @@ -1,68 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import inf, fabs, nan -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import ( - non_zero_range, - v_drift, - v_offset, - v_pos_default, - v_series -) - - - -def vhf( - close: Series, length: Int = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Vertical Horizontal Filter - - This indicator, by Adam White, attempts to identify trending and - ranging markets. - - Sources: - * [incrediblecharts](https://www.incrediblecharts.com/indicators/vertical_horizontal_filter.php) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```28``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 28) - close = v_series(close, length) - - if close is None: - return - - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - hcp = close.rolling(length).max() - lcp = close.rolling(length).min() - diff = fabs(close.diff(drift)) - vhf = fabs(non_zero_range(hcp, lcp)) / diff.rolling(length).sum() - vhf.replace([inf, -inf], nan, inplace=True) - # np_vhf = where(np_vhf == inf, nan, np_vhf) - - # Offset - if offset != 0: - vhf = vhf.shift(offset) - - # Fill - if "fillna" in kwargs: - vhf.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - vhf.name = f"VHF_{length}" - vhf.category = "trend" - - return vhf diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/vortex.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/vortex.py deleted file mode 100644 index ba60ed87..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/vortex.py +++ /dev/null @@ -1,83 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_drift, v_offset, v_pos_default, v_series -from pandas_ta.volatility import true_range - - - -def vortex( - high: Series, low: Series, close: Series, - length: Int = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Vortex - - This indicator attempts to capture positive and negative trend movement - using two oscillators. - - Sources: - * [stockcharts](https://stockcharts.com/school/doku.php?id=chart_school:technical_indicators:vortex_indicator) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```14``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - """ - # Validate - length = v_pos_default(length, 14) - if "min_periods" in kwargs and kwargs["min_periods"] is not None: - min_periods = int(kwargs["min_periods"]) - else: - min_periods = length - _length = max(length, min_periods) - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - tr = true_range(high=high, low=low, close=close) - tr_sum = tr.rolling(length, min_periods=min_periods).sum() - - vmp = (high - low.shift(drift)).abs() - vmm = (low - high.shift(drift)).abs() - - vip = vmp.rolling(length, min_periods=min_periods).sum() / tr_sum - vim = vmm.rolling(length, min_periods=min_periods).sum() / tr_sum - - # Offset - if offset != 0: - vip = vip.shift(offset) - vim = vim.shift(offset) - - # Fill - if "fillna" in kwargs: - vip.fillna(kwargs["fillna"], inplace=True) - vim.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - vip.name = f"VTXP_{length}" - vim.name = f"VTXM_{length}" - vip.category = vim.category = "trend" - - data = {vip.name: vip, vim.name: vim} - df = DataFrame(data, index=close.index) - df.name = f"VTX_{length}" - df.category = "trend" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/zigzag.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/zigzag.py deleted file mode 100644 index 2bcd4103..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/trend/zigzag.py +++ /dev/null @@ -1,335 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from numpy import floor, nan, zeros, zeros_like, roll -from pandas import Series, DataFrame -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import ( - v_bool, - v_offset, - v_pos_default, - v_series, -) - - -# Find high and low pivots using a centered rolling window. -@njit(cache=True) -def nb_rolling_hl(np_high, np_low, window_size): - idx = zeros_like(np_high) - swing = zeros_like(np_high) # where a high = 1 and low = -1 - value = zeros_like(np_high) - - extremes = 0 - left = int(floor(window_size / 2)) - right = left + 1 - # sample_array = [*[left-window], *[center], *[right-window]] - - m = np_high.size - for i in range(left, m - right): - low_center = np_low[i] - high_center = np_high[i] - low_window = np_low[i - left: i + right] - high_window = np_high[i - left: i + right] - - if (low_center <= low_window).all(): - idx[extremes] = i - swing[extremes] = -1 - value[extremes] = low_center - extremes += 1 - - if (high_center >= high_window).all(): - idx[extremes] = i - swing[extremes] = 1 - value[extremes] = high_center - extremes += 1 - - return idx[:extremes], swing[:extremes], value[:extremes] - - -# Calculate zigzag points using pre-calculated unfiltered pivots. -@njit(cache=True) -def nb_zz_backtest(idx, swing, value, deviation): - zz_idx = zeros_like(idx) - zz_swing = zeros_like(swing) - zz_value = zeros_like(value) - zz_dev = zeros_like(idx) - - zigzags = 0 - changes = 0 - zz_idx[zigzags] = idx[0] - zz_swing[zigzags] = swing[0] - zz_value[zigzags] = value[0] - zz_dev[zigzags] = 0 - - # print(f'Starting S: {zz_swing[0]}') - - m = idx.size - for i in range(1, m): - last_zz_value = zz_value[zigzags] - current_dev = (value[i] - last_zz_value) / last_zz_value - - # print(f'{i} | P {swing[i]:.0f} : {idx[i]:.0f} , {value[i]}') - # print(f'{len(str(i))*" "} | Last: {zz_swing[zigzags-changes]:.0f} , Dev: %{(current_dev*100):.1f}') - - # Last point in zigzag is bottom - if zz_swing[zigzags-changes] == -1: - if swing[i] == -1: - # If the current pivot is lower than the last ZZ bottom: - # create a new point and log it as a change - if value[i] < zz_value[zigzags]: - if zz_idx[zigzags - changes] == idx[i]: - continue - # print(f'{len(str(i))*" "} | Change -1 : {zz_value[zigzags]} to {value[i]}') - zigzags += 1 - changes += 1 - zz_idx[zigzags] = idx[i] - zz_swing[zigzags] = swing[i] - zz_value[zigzags] = value[i] - zz_dev[zigzags] = 100 * current_dev - else: - # If the deviation between pivot and the last ZZ bottom is - # great enough create new ZZ point. - if current_dev > 0.01 * deviation: - if zz_idx[zigzags - changes] == idx[i]: - continue - # print(f'{len(str(i))*" "} | new ZZ 1 {value[i]}') - zigzags += 1 - zz_idx[zigzags] = idx[i] - zz_swing[zigzags] = swing[i] - zz_value[zigzags] = value[i] - zz_dev[zigzags] = 100 * current_dev - changes = 0 - - # last point in zigzag is top - else: - if swing[i] == 1: - # If the current pivot is higher than the last ZZ top: - # create a new point and log it as a change - if value[i] > zz_value[zigzags]: - if zz_idx[zigzags - changes] == idx[i]: - continue - # print(f'{len(str(i))*" "} | Change 1 : {zz_value[zigzags]} to {value[i]}') - zigzags += 1 - changes += 1 - zz_idx[zigzags] = idx[i] - zz_swing[zigzags] = swing[i] - zz_value[zigzags] = value[i] - zz_dev[zigzags] = 100 * current_dev - else: - # If the deviation between pivot and the last ZZ top is great - # enough create new ZZ point. - if current_dev < -0.01 * deviation: - if zz_idx[zigzags - changes] == idx[i]: - continue - # print(f'{len(str(i))*" "} | new ZZ -1 {value[i]}') - zigzags += 1 - zz_idx[zigzags] = idx[i] - zz_swing[zigzags] = swing[i] - zz_value[zigzags] = value[i] - zz_dev[zigzags] = 100 * current_dev - changes = 0 - - _n = zigzags + 1 - return zz_idx[:_n], zz_swing[:_n], zz_value[:_n], zz_dev[:_n] - - -# Calculate zigzag points using pre-calculated unfiltered pivots. -@njit(cache=True) -def nb_find_zz(idx, swing, value, deviation): - zz_idx = zeros_like(idx) - zz_swing = zeros_like(swing) - zz_value = zeros_like(value) - zz_dev = zeros_like(idx) - - zigzags = 0 - zz_idx[zigzags] = idx[-1] - zz_swing[zigzags] = swing[-1] - zz_value[zigzags] = value[-1] - zz_dev[zigzags] = 0 - - m = idx.size - for i in range(m - 2, -1, -1): - # Next point in zigzag is bottom - if zz_swing[zigzags] == -1: - if swing[i] == -1: - # If the current pivot is lower than the next ZZ bottom in - # time, move it to the pivot. As this lower value invalidates - # the other one - if value[i] < zz_value[zigzags] and zigzags > 1: - current_dev = (zz_value[zigzags - 1] - value[i]) / value[i] - zz_idx[zigzags] = idx[i] - zz_swing[zigzags] = swing[i] - zz_value[zigzags] = value[i] - zz_dev[zigzags - 1] = 100 * current_dev - else: - # If the deviation between pivot and the next ZZ bottom is - # great enough create new ZZ point. - current_dev = (value[i] - zz_value[zigzags]) / value[i] - if current_dev > 0.01 * deviation: - if zz_idx[zigzags] == idx[i]: - continue - zigzags += 1 - zz_idx[zigzags] = idx[i] - zz_swing[zigzags] = swing[i] - zz_value[zigzags] = value[i] - zz_dev[zigzags - 1] = 100 * current_dev - - # Next point in zigzag is top - else: - if swing[i] == 1: - # If the current pivot is greater than the next ZZ top in time, - # move it to the pivot. - # As this higher value invalidates the other one - if value[i] > zz_value[zigzags] and zigzags > 1: - current_dev = (value[i] - zz_value[zigzags - 1]) / value[i] - zz_idx[zigzags] = idx[i] - zz_swing[zigzags] = swing[i] - zz_value[zigzags] = value[i] - zz_dev[zigzags - 1] = 100 * current_dev - else: - # If the deviation between pivot and the next ZZ top is great - # enough create new ZZ point. - current_dev = (zz_value[zigzags] - value[i]) / value[i] - if current_dev > 0.01 * deviation: - if zz_idx[zigzags] == idx[i]: - continue - zigzags += 1 - zz_idx[zigzags] = idx[i] - zz_swing[zigzags] = swing[i] - zz_value[zigzags] = value[i] - zz_dev[zigzags - 1] = 100 * current_dev - - _n = zigzags + 1 - return zz_idx[:_n], zz_swing[:_n], zz_value[:_n], zz_dev[:_n] - - - -# Maps nb_find_zz results back onto the original data indices. -@njit(cache=True) -def nb_map_zz(idx, swing, value, deviation, n): - swing_map = zeros(n) - value_map = zeros(n) - dev_map = zeros(n) - - for j, i in enumerate(idx): - i = int(i) - swing_map[i] = swing[j] - value_map[i] = value[j] - dev_map[i] = deviation[j] - - for i in range(n): - if swing_map[i] == 0: - swing_map[i] = nan - value_map[i] = nan - dev_map[i] = nan - - return swing_map, value_map, dev_map - - - -def zigzag( - high: Series, low: Series, close: Series = None, - legs: int = None, deviation: IntFloat = None, backtest: bool = None, - offset: Int = None, **kwargs: DictLike -): - """Zigzag - - This indicator attempts to filter out smaller movements while identifying - trend direction. It does not predict future trends, but it does identify - swing highs and lows. - - Sources: - * [stockcharts](https://school.stockcharts.com/doku.php?id=technical_indicators:zigzag) - * [tradingview](https://www.tradingview.com/support/solutions/43000591664-zig-zag/#:~:text=Definition,trader%20visual%20the%20price%20action.) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series. Default: ```None``` - legs (int): Number of legs (> 2). Default: ```10``` - deviation (float): Reversal deviation percentage. Default: ```5``` - backtest (bool): Default: ```False``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - - Note: Deviation - When ```deviation=10```, it shows movements greater than ```10%```. - - Note: Backtest Mode - Ensures the DataFrame is safe for backtesting. By default, swing - points are returned on the pivot index. Intermediate swings are - not returned at all. This mode swing detection is placed on the bar - that would have been detected. Furthermore, changes in swing levels - are also included instead of only the final value. - - * Use the following formula to get the true index of a pivot: - ```p_i = i - int(floor(legs / 2))``` - - Warning: - A Series reversal will create a new line. - """ - # Validate - legs = v_pos_default(legs, 10) - _length = legs + 1 - high = v_series(high, _length) - low = v_series(low, _length) - - if high is None or low is None: - return - - if close is not None: - close = v_series(close,_length) - np_close = close.values - if close is None: - return - - deviation = v_pos_default(deviation, 5.0) - offset = v_offset(offset) - backtest = v_bool(backtest, False) - - if backtest: - offset+=int(floor(legs/2)) - - # Calculation - np_high, np_low = high.to_numpy(), low.to_numpy() - hli, hls, hlv = nb_rolling_hl(np_high, np_low, legs) - - if backtest: - zzi, zzs, zzv, zzd = nb_zz_backtest(hli, hls, hlv, deviation) - else: - zzi, zzs, zzv, zzd = nb_find_zz(hli, hls, hlv, deviation) - - swing, value, dev = nb_map_zz(zzi, zzs, zzv, zzd, np_high.size) - - # Offset - if offset != 0: - swing = roll(swing, offset) - value = roll(value, offset) - dev = roll(dev, offset) - - swing[:offset] = nan - value[:offset] = nan - dev[:offset] = nan - - # Fill - if "fillna" in kwargs: - swing.fillna(kwargs["fillna"], inplace=True) - value.fillna(kwargs["fillna"], inplace=True) - dev.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{deviation}%_{legs}" - data = { - f"ZIGZAGs{_props}": swing, - f"ZIGZAGv{_props}": value, - f"ZIGZAGd{_props}": dev, - } - df = DataFrame(data, index=high.index) - df.name = f"ZIGZAG{_props}" - df.category = "trend" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/__init__.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/__init__.py deleted file mode 100644 index a27ff5ce..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/__init__.py +++ /dev/null @@ -1,28 +0,0 @@ -# -*- coding: utf-8 -*- -from ._candles import * -from ._core import * -from ._math import * -from ._numba import * -from ._signals import * -from ._study import * -from ._time import * -from ._validate import * -from ._candles import __all__ as _candles_all -from ._core import __all__ as _core_all -from ._math import __all__ as _math_all -from ._numba import __all__ as _numba_all -from ._signals import __all__ as _signals_all -from ._study import __all__ as _study_all -from ._time import __all__ as _time_all -from ._validate import __all__ as _validate_all - -__all__ = ( - _candles_all - + _core_all - + _math_all - + _numba_all - + _signals_all - + _study_all - + _time_all - + _validate_all -) diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_candles.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_candles.py deleted file mode 100644 index da0537d5..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_candles.py +++ /dev/null @@ -1,54 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta.utils._core import non_zero_range - -__all__ = ["candle_color", "high_low_range", "real_body"] - - - -def candle_color(open_: Series, close: Series) -> Series: - """Candle Change - - If ```close >= open_```, returns ```1```. Otherwise ```-1```. - - Parameters: - open_ (Series): ```open``` Series - close (Series): ```close``` Series - - Returns: - (Series): 1 column - """ - color = close.copy().astype(int) - color[close >= open_] = 1 - color[close < open_] = -1 - return color - - -def high_low_range(high: Series, low: Series) -> Series: - """High Low Range - - Returns a non-zero ```high - low```. - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - - Returns: - (.Series): 1 column - """ - return non_zero_range(high, low) - - -def real_body(open_: Series, close: Series) -> Series: - """Body Range - - Returns a non-zero ```close - open_```. - - Parameters: - open_ (Series): ```open``` Series - close (Series): ```close``` Series - - Returns: - (Series): 1 column - """ - return non_zero_range(close, open_) diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_core.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_core.py deleted file mode 100644 index e8ed0ece..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_core.py +++ /dev/null @@ -1,454 +0,0 @@ -# -*- coding: utf-8 -*- -import re as re_ -from contextlib import redirect_stdout -from io import StringIO -from sys import float_info as sflt -from webbrowser import open as webbrowser_open - -from numpy import argmax, argmin -from pandas import DataFrame, Series - -from pandas_ta._typing import ( - Array, - Int, - IntFloat, - ListStr, - TextIO, - Tuple -) -from pandas_ta.utils._validate import ( - v_array, - v_bool, - v_dataframe, - v_pos_default, - v_series, - v_str -) -from pandas_ta.utils._study import Study -from pandas_ta.maps import Category, Imports - -__all__ = [ - "camelCase2Title", - "category_files", - "help", - "ms2secs", - "non_zero_range", - "recent_maximum_index", - "recent_minimum_index", - "pd_rma", - "signed_series", - "simplify_columns", - "speed_test", - "tal_ma", - "unsigned_differences", -] - - - -def camelCase2Title(x: str) -> str | None: - """camelCase2Title - - Converts Camel Case to Title - - Sources: - * [stackoverflow](https://stackoverflow.com/questions/5020906/python-convert-camel-case-to-space-delimited-using-regex-and-taking-acronyms-in) - - Parameters: - x (str): input - - Returns: - (str | None): Title Case string or None - """ - if isinstance(x, str) and len(x): - return re_.sub("([a-z])([A-Z])", r"\g<1> \g<2>", x).title() - return None - - - -def category_files(category: str) -> list: - """Category Files - - Return all filenames in the category directory. - - Parameters: - category (str): String name of a Indicator Category - - Returns: - (list): List of filenames of Category - """ - files = [ - x.stem - for x in list(Path(f"pandas_ta/{category}/").glob("*.py")) - if x.stem != "__init__" - ] - return files - - - -def help(query: str = "") -> None | TextIO: - """Pandas TA Help - - Prints available query words or opens a web browser to relevant - documentation. - - Parameters: - query (str): Query string. Default: ```""``` - - Returns: - (TextIO | None): Available query keywords or opens web browser to - online documentation. - """ - s = v_str(query, "") - - _categories = list(Category.keys()) - _dataframes = ["pandas", "dataframe", "extension"] - _events = ["events", "signals"] - _features = ["bugs", "features", "contribute", "contributing"] - _help = ["help", "support"] - _how2 = ["how2", "how to", "usage"] - _mp = ["custom", "multiprocessing"] - _studies = ["study", "studies"] - KEYWORDS = _dataframes + _events + _features + _help \ - + _how2 + _studies + _categories + _mp - - www = "https://www.pandas-ta.dev" - _url = "" - - if s == "": - out = f'\nSearch words:\n\t{", ".join(sorted(KEYWORDS))}\n' - out += '\nExample: df.ta.help("usage")' - print(out) - elif s in _categories: - _url = f"{www}/api/{s.lower()}" - elif s in _dataframes: - _url = f"{www}/api/ta-extension" - elif s in _events: - _url = f"{www}/api/events" - elif s in _features: - _url = f"{www}/support/bugs-and-features" - elif s in _help: - _url = f"{www}/support" - elif s in _how2: - _url = f"{www}/support/how-to" - elif s in _mp: - _url = f"{www}/getting-started/usage" - elif s in _studies: - _url = f"{www}/api/studies" - else: - _url = f"{www}" - webbrowser_open(_url, new=1) - - - -def ms2secs(ms: IntFloat, p: Int) -> IntFloat: - """ms2secs - - Convert ms to secs - - Parameters: - ms (IntFloat): ms - p (Int): Rounding precision - - Returns: - (IntFloat): seconds - """ - return round(0.001 * ms, p) - - - -def non_zero_range(x: Series, y: Series) -> Series: - """Non-Zero Range - - Calculates the difference of two Series plus epsilon to any zero values. - Technically: ```x - y + epsilon``` - - Parameters: - x (Series): Series of 'x's - y (Series): Series of 'y's - - Returns: - (Series): 1 column - """ - diff = x - y - if diff.eq(0).any().any(): - diff += sflt.epsilon - return diff - - - -def recent_maximum_index(x) -> Int: - """Recent Maximum Index - - Index of the largest value in ```x``` - - Parameters: - x (Series): ```x``` values - - Returns: - (int): Index of the largest value - """ - return int(argmax(x[::-1])) - - - -def recent_minimum_index(x) -> Int: - """Recent Minimum Index - - Index of the smallest value in ```x``` - - Parameters: - x (Series): ```x``` values - - Returns: - (int): Index of the smallest value - """ - return int(argmin(x[::-1])) - - - -def pd_rma(x: Series, n: Int) -> Series: - """RMA (Pandas) - - Pandas Implementation of RMA. - - Parameters: - x (Series): ```x``` Series - n (Int): Bars of lookback. Default: ```0.5``` - - Returns: - (Series): 1 column - """ - x = v_series(x) - if x is None: - return - a = (1.0 / n) if n > 0 else 0.5 - return x.ewm(alpha=a, min_periods=n).mean() - - - -def signed_series(x: Series, initial: Int, lag: Int = None) -> Series: - """Signed Series - - Returns a Signed Series with or without an initial value - - Parameters: - x (Series): Series of 'x's - initial (int): Set inital values of the signed Series. - lag (int): Difference between adjacent items. Default: ```1``` - - Returns: - (Series): 1 column - """ - initial = None - if initial is not None and not isinstance(lag, str): - initial = initial - x = v_series(x) - lag = v_pos_default(lag, 1) - sign = x.diff(lag) - sign[sign > 0] = 1 - sign[sign < 0] = -1 - sign.iloc[0] = initial # sign.iloc[:lag-1] - return sign - - - -def simplify_columns(df: DataFrame, n: Int=3) -> ListStr: - """Simplify Columns - - Helper method for managing columns used by Squeeze and Squeeze Pro. - - Parameters: - df (DataFrame): DataFrame with the columns - n (int): Default: ```3``` - - Returns: - (ListStr): List of string column - """ - df.columns = df.columns.str.lower() - return [c.split("_")[0][n - 1:n] for c in df.columns] - - - -def speed_test(df: DataFrame, - only: ListStr = None, excluded: ListStr = None, - top: Int = None, talib: bool = False, - ascending: bool = False, sortby: str = "secs", - gradient: bool = False, places: Int = 5, stats: bool = False, - verbose: bool = False, silent: bool = False - ) -> DataFrame | Tuple[DataFrame, DataFrame]: - """Speed Test - - Given a standard ohlcv DataFrame, the Speed Test calculates the - speed of each indicator of the DataFrame Extension: df.ta.(). - - Parameters: - df (DataFrame): DataFrame with _ohlcv_ columns - only (list): List of indicators to run. Default: ```None``` - excluded (list): List of indicators to exclude. Default: ```None``` - top (Int): Return a DataFrame the 'top' values. Default: ```None``` - talib (bool): Enable TA Lib. Default: ```False``` - ascending (bool): Ascending Order. Default: ```False``` - sortby (str): Options: "ms", "secs". Default: ```"secs"``` - gradient (bool): Returns a DataFrame the 'top' values with gradient - styling. Default: ```False``` - places (Int): Decimal places. Default: ```5``` - stats (bool): Returns a Tuple of two DataFrames. The second tuple - contains Stats on the performance time. Default: ```False``` - verbose (bool): Display more info. Default: ```False``` - silent (bool): Display nothing. Default: ```False``` - - Returns: - (DataFrame): if ```stats=False``` - (DataFrame, DataFrame): if ```stats=True``` - """ - if df.empty: - print(f"[X] No DataFrame") - return - talib = v_bool(talib, False) - top = int(top) if isinstance(top, int) and top > 0 else None - stats = v_bool(stats, False) - verbose = v_bool(verbose, False) - silent = v_bool(silent, False) - - _ichimoku = ["ichimoku"] - if excluded is None and isinstance(only, list) and len(only) > 0: - _indicators = only - elif only is None and isinstance(excluded, list) and len(excluded) > 0: - _indicators = df.ta.indicators(as_list=True, exclude=_ichimoku + excluded) - else: - _indicators = df.ta.indicators(as_list=True, exclude=_ichimoku) - - if len(_indicators) == 0: return None - - _iname = "Indicator" - if verbose: - print() - data = _speed_group(df.copy(), _indicators, talib, _iname, places) - else: - _this = StringIO() - with redirect_stdout(_this): - data = _speed_group(df.copy(), _indicators, talib, _iname, places) - _this.close() - - tdf = DataFrame.from_dict(data) - tdf.set_index(_iname, inplace=True) - tdf.sort_values(by=sortby, ascending=ascending, inplace=True) - - total_timedf = DataFrame( - tdf.describe().loc[['min', '50%', 'mean', 'max']]).T - total_timedf["total"] = tdf.sum(axis=0).T - total_timedf = total_timedf.T - - _div = "=" * 60 - _observations = f" Bars{'[talib]' if talib else ''}: {df.shape[0]}" - _quick_slow = "Quickest" if ascending else "Slowest" - _title = f" {_quick_slow} Indicators" - _perfstats = f"Time Stats:\n{total_timedf}" - if top: - _title = f" {_quick_slow} {top} Indicators [{tdf.shape[0]}]" - tdf = tdf.head(top) - - if not silent: - print(f"\n{_div}\n{_title}\n{_observations}\n{_div}\n{tdf}\n\n{_div}\n{_perfstats}\n\n{_div}\n") - - if isinstance(gradient, bool) and gradient: - return tdf.style.background_gradient("autumn_r"), total_timedf - - if stats: - return tdf, total_timedf - else: - return tdf - - - -def tal_ma(name: str) -> Int: - """TA Lib MA - - Helper Function that returns the Enum value for TA Lib's MA Type - - Parameters: - name (str): Abbreivated Name of the Moving Average - - Returns: - (int): The equivalent TA Lib MA Enum value for ```name``` - """ - if Imports["talib"] and isinstance(name, str) and len(name) > 1: - from talib import MA_Type - name = name.lower() - if name == "sma": - return MA_Type.SMA # 0 - elif name == "ema": - return MA_Type.EMA # 1 - elif name == "wma": - return MA_Type.WMA # 2 - elif name == "dema": - return MA_Type.DEMA # 3 - elif name == "tema": - return MA_Type.TEMA # 4 - elif name == "trima": - return MA_Type.TRIMA # 5 - elif name == "kama": - return MA_Type.KAMA # 6 - elif name == "mama": - return MA_Type.MAMA # 7 - elif name == "t3": - return MA_Type.T3 # 8 - return 0 # Default: SMA -> 0 - - - -def unsigned_differences( - x: Series, lag: Int = None, asint: bool = None -) -> Tuple[Series, Series]: - """Unsigned Differences - - Returns two Series, an unsigned positive and unsigned negative series based - on the differences of the original series. The positive series are only the - increases and the negative series are only the decreases. - - Parameters: - x (Series): Series of 'x's - lag (int): Difference between adjacent items. Default: ```1``` - asint (bool): Returns as ```Int```. Default: ```False``` - - Returns: - (Series | Series): Positive Series, Negative Series - - Example: - ```py - ta.unsigned_differences(Series([3, 2, 2, 1, 1, 5, 6, 6, 7, 5, 3])) - ``` - """ - asint = v_bool(asint, False) - lag = int(lag) if lag is not None else 1 - negative = x.diff(lag) - negative.fillna(0, inplace=True) - positive = negative.copy() - - positive[positive <= 0] = 0 - positive[positive > 0] = 1 - - negative[negative >= 0] = 0 - negative[negative < 0] = 1 - - if asint: - positive = positive.astype(int) - negative = negative.astype(int) - - return positive, negative - - - -def _speed_group( - df: DataFrame, group: ListStr = [], talib: bool = False, - index_name: str = "Indicator", p: Int = 4 - ) -> ListStr: - result = [] - for i in group: - r = df.ta(i, talib=talib, timed=True) - if r is None: - print(f"[S] {i} skipped due to returning None") - continue # ta.pivots() sometimes returns None - ms = float(r.timed.split(" ")[0].split(" ")[0]) - result.append({index_name: i, "ms": ms, "secs": ms2secs(ms, p)}) - return result diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_math.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_math.py deleted file mode 100644 index 848cd3dc..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_math.py +++ /dev/null @@ -1,811 +0,0 @@ -# -*- coding: utf-8 -*- -from collections.abc import Callable -from functools import reduce -from math import floor as mfloor -from operator import mul -from sys import float_info as sflt - -from numpy import ( - all, array, broadcast_to, concatenate, diff, dot, exp, - fabs, full, isnan, log, logical_and, nan, nanmean, nansum, - ndarray, newaxis, ones, pad, sign, sqrt, sum, triu, zeros -) -from numpy import max as np_max -from numpy import min as np_min -from numpy.lib.stride_tricks import sliding_window_view - -from pandas import DataFrame, Series -from numba import njit -from pandas_ta._typing import ( - Array, - DictLike, - Float, - Int, - IntFloat, - List -) -from pandas_ta.maps import Imports -from pandas_ta.utils._validate import ( - v_array, - v_dataframe, - v_float, - v_int, - v_lowerbound, - v_offset, - v_pos_default, - v_scalar, - v_series -) - -__all__ = [ - "combination", - "cube", - "consecutive_streak", - "df_error_analysis", - "erf", - "fibonacci", - "geometric_mean", - "hpoly", - "ifisher", - "log_geometric_mean", - "pascals_triangle", - "percent_rank", - "remap", - "strided_window", - "sum_signed_rolling_deltas", - "symmetric_triangle", - "weights", - "zero", -] - - - -def combination( - n: Int = 1, r: Int = 0, - repetition: bool = False, multichoose: bool = False -) -> Int: - """Combination - - Combination computation. - - Sources: - * [stackoverflow](https://stackoverflow.com/questions/4941753/is-there-a-math-ncr-function-in-python) - - Parameters: - n (Int): ```n``` - r (Int): ```r``` - repetition (bool): Apply repetition. - multichoose (bool): Apply multichoose. - - Returns: - (Int): Combination value - - Note: - ```n``` Choose ```r```: ```(n r)``` - """ - n, r = int(fabs(n)), int(fabs(r)) - - if repetition or multichoose: - n = n + r - 1 - - # if r < 0: return None - r = min(n, n - r) - if r == 0: - return 1 - - numerator = reduce(mul, range(n, n - r, -1), 1) - denominator = reduce(mul, range(1, r + 1), 1) - return numerator // denominator - - - -def consecutive_streak(x: Array) -> Array: - """Consecutive Streak - - Computes the streak of consecutive value increases or decreases. - - Parameters: - x (Array): Numpy array. - - Returns: - (Array): Streak array of element changes. - - Note: Logic - Yield an array where each value represents the streak value - for that bar. - - 1. Computes the difference between consecutive values. - 2. Assigns 1 for each positive change, -1 for each negative - change -1 and 0 for no change. - - Note: Streaks - * Positive: Consecutive bars of value increases - * Negative: Consecutive bars of value decreases - * Zero: When direction of the value change reverses - - Example: - ```py - x = np.array([100, 101, 102, 100, 100, 101, 102, 103]) - result = consecutive_streak(x) - expected = np.array([0, 1, 1, -1, 0, 1, 1, 1]) - np.array_equal(result, expected) - ``` - """ - return concatenate(([0], sign(diff(x)))) - - - -def cube( - src: Series, pwr: IntFloat = None, signal_offset: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Cube Transform - - This transform, by John Ehlers, is used to compress Svalues near zero for - a normalized oscillator like the Inverse Fisher Transform. - - In other words, a Power Transform/Function: ```result = src ^ pwr``` - - Sources: - * [rengel8](https://github.com/rengel8) based on Markus K. - (cryptocoinserver)'s source - * "Cycle Analytics for Traders", 2014, by John Ehlers, page 200 - - Parameters: - src (Series): Source - pwr (float): The transform power. Default: ```3``` - signal_offset (int): Signal offset. Default: ```-1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - - Note: - * Values near ```-1``` and ```1``` are nearly unchanged, whereas - values near zero are reduced. - * Input effects of spectral dilation should have been removed - (i.e. roofing filter). - - """ - # Validate - src = v_series(src) - pwr = v_lowerbound(pwr, 3.0, 3.0, strict=False) - signal_offset = v_int(signal_offset, -1, 0) - offset = v_offset(offset) - - # Calculate - result = src ** pwr - ct = Series(result, index=src.index) - ct_signal = Series(result, index=src.index) - - # Offset - if offset != 0: - ct = ct.shift(offset) - ct_signal = ct_signal.shift(offset) - if signal_offset != 0: - ct = ct.shift(signal_offset) - ct_signal = ct_signal.shift(signal_offset) - - if all(isnan(ct)) and all(isnan(ct_signal)): - return # Emergency Break - - # Fill - if "fillna" in kwargs: - ct.fillna(kwargs["fillna"], inplace=True) - ct_signal.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{pwr}_{signal_offset}" - ct.name = f"CUBE{_props}" - ct_signal.name = f"CUBEs{_props}" - ct.category = ct_signal.category = "transform" - - data = {ct.name: ct, ct_signal.name: ct_signal} - df = DataFrame(data, index=src.index) - df.name = f"CUBE{_props}" - df.category = ct.category - - return df - - - -def erf(x: IntFloat) -> Float: - """Error Function - - Computes the erf(x) - - Sources: - * Handbook of Mathematical Functions, formula 7.1.26. - * [stackoverflow](https://stackoverflow.com/questions/457408/is-there-an-easily-available-implementation-of-erf-for-python) - - Parameters: - x (IntFloat): ```x``` value. - - Returns: - (Float): Error value - """ - x_sign = sign(x) - x = abs(x) - - # constants - a1 = 0.254829592 - a2 = -0.284496736 - a3 = 1.421413741 - a4 = -1.453152027 - a5 = 1.061405429 - p = 0.3275911 - - # A&S formula 7.1.26 - t = 1.0 / (1.0 + p * x) - y = 1.0 - (((((a5 * t + a4) * t) + a3) * t + a2) - * t + a1) * t * exp(-x * x) - return x_sign * y # erf(-x) = -erf(x) - - - -@njit(cache=True) -def fibonacci(n: Int = 2, weighted: bool = False) -> Array: - """Fibonacci - - Computes closed form Fibonacci values. - - Parameters: - n (Int): Number of terms (n >= 2). Default: ```2``` - weighted (bool): Return weighted values. Default: ```False``` - - Returns: - (Array): Numpy array results - """ - n = n if n > 1 else 2 - sqrt5 = sqrt(5.0) - phi, psi = 0.5 * (1.0 + sqrt5), 0.5 * (1.0 - sqrt5) - - result = zeros(n) - for i in range(0, n): - result[i] = float(phi ** (i + 1) - psi ** (i + 1)) / sqrt5 - - if weighted: - return result / result.sum() - return result - - - -def geometric_mean(x: Series) -> Float: - """Geometric Mean - - Computes the Geometric Mean of positive values. - - Parameters: - x (Series): Values - - Returns: - (Float): Geometric Mean - """ - n = x.size - if n < 1: - return x.iloc[0] - - has_zeros = 0 in x.to_numpy() - if has_zeros: - x = x.fillna(0) + 1 - if all(x > 0): - mean = x.prod() ** (1 / n) - return mean if not has_zeros else mean - 1 - return 0 - - - -def hpoly(x: Array, v: IntFloat) -> Float: - """Horner's Polynomial - - Evaluates a polynomial with an array of polynomial coefficients, ```x```, - and a value, ```v```, using Horner's Calculation for Polynomial - Evaluation. - - Parameters: - x (Array): Polynomial coefficients as ```np.array``` - v (IntFloat): Value - - Returns: - (Float): Polynomial value. - - Tip: Performance - Use a ```np.array``` for best performance. - - Example: - ```py - coeffs_0 = [4, -3, 0, 1] # 4x^3 - 3x^2 + 0x + 1 - coeffs_1 = np.array(coeffs_0) # Faster - coeffs_2 = pd.Series(coeffs_0).to_numpy() - x = -6.5 - - hpoly(coeffs_0, x) => -1224.25 - hpoly(coeffs_1, x) or hpoly(coeffs_2, x) => -1224.25 # Faster - ``` - """ - if not isinstance(x, ndarray): - x = array(x) - - m, y = x.size, x[0] - - for i in range(1, m): - y = x[i] + v * y - return y - - - -def ifisher( - x: Series, - amp: IntFloat = None, signal_offset: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Inverse Fisher Transform - - This transform function, by John Ehlers, attempts to create clearer - signals by changing the Probability Distribution Function (pdf) for the - results of known oscillator-indicators. - - Sources: - * [rengel8](https://github.com/rengel8) based on Markus K. - (cryptocoinserver)'s source - * "Cycle Analytics for Traders", 2014, by John Ehlers, page 198 - * [mesasoftware](https://www.mesasoftware.com/papers/TheInverseFisherTransform.pdf) - - Parameters: - x (Series): Normalized to range ```[-1, 1]``` - amp (float): Amplifier. Default: ```1``` - signal_offset (int): Signal line offset. Default: ```-1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - - Note: - * Normalized input, ```x```, with range ```[-1, 1]``` - * Data range of ```[-0.5, 0.5]``` would not have a significant impact - - Example: Preparation Examples - Or use _ta.remap()_ function to prep - - (RSI - 50) * 0.1 RSI [0 to 100] -> -5 to 5 - - (RSI - 50) * 0.02 RSI [0 to 100] -> -1 to 1 (use amp of 5 to match input of example above) - """ - # Validate - x = v_series(x) - amp = v_scalar(amp, 1.0) - signal_offset = v_int(signal_offset, -1, 0) - offset = v_offset(offset) - - # Calculate - np_x = x.to_numpy() - is_remapped = logical_and(np_x >= -1, np_x <= 1) - if not all(is_remapped): - _np_max, _np_min = np_max(np_x), np_min(np_x) - x_map = remap(x, - from_min=_np_min, from_max=_np_max, - to_min=-1, to_max=1 - ) - if x_map is None or all(isnan(x_map.to_numpy())): - return # Emergency Break - np_x = x_map.to_numpy() - - amped = exp(amp * np_x) - result = (amped - 1) / (amped + 1) - - inv_fisher = Series(result, index=x.index) - signal = Series(result, index=x.index) - - # Offset - if offset != 0: - inv_fisher = inv_fisher.shift(offset) - signal = signal.shift(offset) - - if signal_offset != 0: - inv_fisher = inv_fisher.shift(offset) - signal = signal.shift(offset) - - # Fill - if "fillna" in kwargs: - inv_fisher.fillna(kwargs["fillna"], inplace=True) - signal.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{amp}" - inv_fisher.name = f"INVFISHER{_props}" - signal.name = f"INVFISHERs{_props}" - - data = {inv_fisher.name: inv_fisher, signal.name: signal} - df = DataFrame(data, index=x.index) - df.name = f"INVFISHER{_props}" - - return df - - - -def log_geometric_mean(x: Series) -> Float: - """Logarithmic Geometric Mean - - Computes the Logarithmic Geometric Mean of positive values. - - Parameters: - x (Series): Values - - Returns: - (Float): LogGeometric Mean or zero - """ - n = x.size - if n > 1: - x = x.fillna(0) + 1 - if all(x > 0): - return exp(log(x).sum() / n) - 1 - return 0 - - - -def pascals_triangle( - n: Int = None, inverse: bool = False, weighted: bool = False -) -> Array: - """Pascal's Triangle - - The ```n```th row of Pascal's Triangle. - - Parameters: - n (Int): ```n^th``` row of Pascal' Triange - inverse (bool): Return Inverse weighted. - weighted (bool): Return weighted. - - Returns: - (Array): Classical, Weighted, or Inversely - - Example: - ```py - # Classical - pt4 = pascals_triangle(4) - # pt4 = [1, 4, 6, 4, 1] - - # Inverse - invpt4 = pascals_triangle(4, inverse=True) - # invpt4 = [0.9375, 0.75, 0.625, 0.75, 0.9375] - - # Weighted - wpt4 = pascals_triangle(4, weighted=True) - # wpt4 = [0.0625, 0.25, 0.375, 0.25, 0.0625] - ``` - """ - n = int(fabs(n)) if n is not None else 0 - - # Calculation - triangle = array([combination(n=n, r=i) for i in range(0, n + 1)]) - triangle_sum = sum(triangle) - triangle_weights = triangle / triangle_sum - inverse_weights = 1 - triangle_weights - - if weighted and inverse: - return inverse_weights - if weighted: - return triangle_weights - if inverse: - return None - - return triangle - - - -def percent_rank(x: Series, length: int) -> Series: - """Percent Rank - - Percent Rank of values over a specified length. - - Parameters: - x (Series): ```x``` values - length (int): The period. - - Returns: - (Series): Percent Rank values. - - Note: Logic - Yield a Series where the initial part (up to ```length - 1```) is - padded with NaNs, and the rest contains the Percent Rank values. - - 1. Computes the daily percentage returns. - 2. Creates a rolling window of these returns. - 3. Compares each value in the window to the current value (the - last value in each window). - 4. Percent Rank is calculated as the percentage of values in each - window that are less than the current value. - - Example: - ```py - x = Series([100, 80, 75, 123, 140, 80, 70, 40, 100, 120]).to_numpy() - result = percent_rank(x, 3) - expected_result = Series([np.nan, np.nan, np.nan, 66.666667, 66.666667, 0.0, 33.333333, 0.0, 100.0, 66.666667]) - np.allclose(result, expected_result, rtol=1e-6, equal_nan=True) - ``` - """ - np_pctchg = x.pct_change().to_numpy() - - rws = sliding_window_view(np_pctchg, window_shape=(length + 1,)) - comparison_matrix = rws[:, :-1] < rws[:, -1, newaxis] - - prs = 100 * nanmean(comparison_matrix, axis=1) - result = full(len(x), nan) - result[length:] = prs - - # return Series(padded_percent_ranks, index=x.index) - return result - - - -def remap( - x: Series, from_min: IntFloat = None, from_max: IntFloat = None, - to_min: IntFloat = None, to_max: IntFloat = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """remap - - The standard method of transforming from a source range to a target range - using Max-Min. Useful for bounded sources; not unbounded sources - like _ohlcv_ data. - - Sources: - * Linear (Max-Min) Normalization - - Parameters: - x (Series): Series of 'x's - from_min (IntFloat): Input minimum. Default: ```0.0``` - from_max (IntFloat): Input maximum. Default: ```100.0``` - to_min (IntFloat): Output minimum. Default: ```0.0``` - to_max (IntFloat): Output maximum. Default: ```100.0``` - offset (Int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - x = v_series(x) - from_min = v_float(from_min, 0.0, 0.0) - from_max = v_float(from_max, 100.0, 0.0) - to_min = v_float(to_min, -1.0, 0.0) - to_max = v_float(to_max, 1.0, 0.0) - offset = v_offset(offset) - - # Calculate - frange, trange = from_max - from_min, to_max - to_min - if frange <= 0 or trange <= 0: - return - result = to_min + (trange / frange) * (x.to_numpy() - from_min) - result = Series(result, index=x.index) - - # Offset - if offset != 0: - result = result.shift(offset) - - # Fill - if "fillna" in kwargs: - result.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - result.name = f"REMAP_{from_min}_{from_max}_{to_min}_{to_max}" - # result.name = f"{x.name}_{from_min}_{from_max}_{to_min}_{to_max}" # OR - - return result - - - -def strided_window(x: Array, length: Int) -> Array: - """Strided Window - - Creates a strided window view. - - Source: - * [numpy](https://numpy.org/devdocs/reference/generated/numpy.lib.stride_tricks.as_strided.html) - * [Issue #285](https://github.com/twopirllc/pandas-ta/issues/285) - - Parameters: - x (Array): Source - length (Int): Window period. - - Returns: - (Array): Numpy Array of Strided Window Arrays - - Warning: - Use if necessary, otherwise avoid when possible! - """ - from numpy.lib.stride_tricks import as_strided - strides = x.strides + (x.strides[-1],) - shape = x.shape[:-1] + (x.shape[-1] - length + 1, length) - return as_strided(x, shape=shape, strides=strides, writeable=False) - - - -def sum_signed_rolling_deltas( - open_: Series, close: Series, length: Int, exclusive: bool = True -) -> Series: - """Sum of Signed Rolling Series Deltas - - Calculates the sum of signed differences between the current closing bar - and a rolling window of preceding opening bars. This sum is then padded - to match the original series length. - - Parameters: - open_ (Series): ```open``` Series - close (Series): ```close``` Series - length (Int): Window length. Default: ```4``` - exclusive (bool): Exclusive rolling window. Inclusive rolling window - when ```False```. Default: ```True``` - - Returns: - (Series): 1 column - - Notes: Mode - **Exclusive**: Rolling window excludes the current bar in the - lookback period. - - **Inclusive**: Rolling window includes the current bar in the - lookback period. - - Example: - ```py - open_ = Series([95, 83, 71, 132, 129, 145, 133, 101, 68, 96]) - close = Series([100, 110, 140, 80, 90, 60, 50, 40, 90, 110]) - - result = sum_signed_rolling_deltas(close, open_, 4, exclusive=True) - expected_result = Series([np.nan, np.nan, np.nan, np.nan, 0.0, -4.0, -4.0, -4.0, -4.0, 0.0]) - np.allclose(result, expected_result, rtol=1e-6, equal_nan=True) - - result = sum_signed_rolling_deltas(close, open_, 4, exclusive=False) - expected_result = Series([np.nan, np.nan, np.nan, -1.0, 1.0, -3.0, -3.0, -3.0, -3.0, 1.0]) - np.allclose(result, expected_result, rtol=1e-6, equal_nan=True) - ``` - """ - length = v_pos_default(length, 4) - if not exclusive: - length -= 1 - - rolling_open = sliding_window_view(open_, window_shape=length)[:-1] - - close_broadcasted = broadcast_to( - close[length:].to_numpy()[:, newaxis], rolling_open.shape - ) - - signed_deltas = sign(close_broadcasted - rolling_open) - sum_signed_deltas = nansum(signed_deltas, axis=1).astype(float) - - return Series( - pad(sum_signed_deltas, (length, 0), mode="constant", constant_values=nan), - index=close.index, - ) - - -def symmetric_triangle( - n: Int = None, weighted: bool = False -) -> List[IntFloat]: - """Symmetric Triangle - - Creates a Symmetric Triangle of given length. - - Parameters: - n (Int): Array return size - weighted (bool): Return weighted. - - Returns: - (List[IntFloat]): List of Symmetric Triangle values. - - Example: - ```py - # Default - symt4 = ta.symmetric_triangle(4) - # symt4 = [1, 2, 2, 1] - - # Weighted - wsymt4 = ta.symmetric_triangle(4, weighted=True) - # wsymt4 = [0.16666667 0.33333333 0.33333333 0.16666667] - ``` - """ - n = int(fabs(n)) if n is not None else 2 - - triangle = None - if n == 2: - triangle = [1, 1] - - if n > 2: - if n % 2 == 0: - front = [i + 1 for i in range(0, mfloor(n / 2))] - triangle = front + front[::-1] - else: - front = [i + 1 for i in range(0, mfloor(0.5 * (n + 1)))] - triangle = front.copy() - front.pop() - triangle += front[::-1] - - if weighted and isinstance(triangle, list): - return triangle / sum(triangle) - - return triangle - - - -def weights(w: Array) -> Callable: - """Weights - - Prepares weights for the dot product - - Parameters: - w (Array): Input - - Returns: - (Callable): Weights function for dot product. - """ - def _dot(x): - return dot(w, x) - return _dot - - - -def zero(x: IntFloat) -> IntFloat: - """Zero - - Zeros inputs near zero. - - Parameters: - x (IntFloat): Value to attempt to zero - - Returns: - (IntFloat): ```0``` or ```x``` - """ - return 0 if abs(x) < sflt.epsilon else x - - - -# TESTING - - - -def df_error_analysis( - A: DataFrame, B: DataFrame, - plot: bool = False, triangular: bool = False, - method: str = "pearson", -) -> DataFrame: - """DataFrame Correlation Analysis - - Compares two DataFrames using both their difference and their correlations. - - Parameters: - A (DataFrame): DataFrame A - B (DataFrame): DataFrame B - plot (bool): Create a KDE plot of differences. Default: ```False``` - triangular (bool): Return a Triangular Correlation DataFrame. - Default: ```False``` - method (str): Correlation methods: ```"pearson"```, ```"kendall"```, - or ```"spearman"```. Default: ```"pearson"``` - - Returns: - (DataFrame): Correlation DataFrame or a KDE Difference plot - """ - _r_method = ["pearson", "kendall", "spearman"] - corr_method = method if method in _r_method else _r_method[0] - - # Find their differences and correlation - diff = A - B - result = A.corr(B, method=corr_method) - - # For plotting - if plot: - diff.hist() - if diff[diff > 0].any(): - diff.plot(kind="kde") - - if triangular: - return result.where(triu(ones(result.shape)).astype(bool)) - - return result diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_numba.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_numba.py deleted file mode 100644 index 9c0b25db..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_numba.py +++ /dev/null @@ -1,140 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import ( - append, - array, - empty_like, - finfo, - float64, - int64, - isnan, - nan, - roll, - zeros_like -) -from numba import njit -from pandas_ta._typing import Array, Int, IntFloat - -__all__ = [ - "nb_ffill", - "nb_idiff", - "nb_nonzero_range", - "nb_prenan", - "nb_prepend", - "nb_rolling", - "nb_shift", -] - - - -# Numba version of ffill() -@njit(cache=True) -def nb_ffill(x): - mask = isnan(x) - idx = zeros_like(mask, dtype=int64) - last_valid_idx = -1 - - m = mask.size - for i in range(m): - if not mask[i]: - last_valid_idx = i - idx[i] = last_valid_idx - return x[idx] - - -# Indexwise element difference by k indices of array x. -# Similar to Pandas Series/DataFrame diff() -@njit(cache=True) -def nb_idiff(x, k): - n, k = x.size, int(k) - result = zeros_like(x, dtype=float64) - - for i in range(k, n): - result[i] = x[i] - x[i - k] - result[:k] = nan - - return result - - -# Returns the difference of two series and adds epsilon to any zero values. -# This occurs commonly in crypto data when 'high' = 'low'.""" -@njit(cache=True) -def nb_nonzero_range(x, y): - diff = x - y - if diff.any() == 0: - diff += finfo(float64).eps - return diff - - -# Prepend n values, typically np.nan, to array x. -@njit(cache=True) -def nb_prenan(x, n, value = nan): - if n > 0: - x[:n - 1] = value - return x - return x - - -# Prepend n values, typically np.nan, to array x. -@njit(cache=True) -def nb_prepend(x, n, value = nan): - return append(array([value] * n), x) - -# Prepend n values, typically np.nan, to array x. -# @njit(cache=True) -# def nb_prepend2(x, n, value = nan): - # return concatenate(array([value] * n), x) - - -# Like Pandas Rolling Window. x.rolling(n).fn() -@njit(cache=True) -def nb_rolling(x, n, fn = None): - if fn is None: - return x - m = x.size - result = zeros_like(x, dtype=float) - if n <= 0: - return result # TODO: Handle negative rolling windows - - for i in range(0, m): - result[i] = fn(x[i:n + i]) - result = roll(result, n - 1) - result[:n - 1] = nan - return result - - -# np shift -# shift5 - preallocate empty array and assign slice by chrisaycock -# https://stackoverflow.com/questions/30399534/shift-elements-in-a-numpy-array -@njit(cache=True) -def nb_shift(x, n, value = nan): - result = empty_like(x) - if n > 0: - result[:n] = value - result[n:] = x[:-n] - elif n < 0: - result[n:] = value - result[:n] = x[-n:] - else: - result[:] = x - return result - - -# Uncategorized -# @njit(cache=True) -# def nb_roofing_filter(x: Array, n: Int, k: Int, pi: Float, sqrt2: Float): -# """Ehlers's Roofing Filter (INCOMPLETE) -# http://traders.com/documentation/feedbk_docs/2014/01/traderstips.html""" -# m, hp = x.size, np.copy(x) -# # a = exp(-pi * sqrt(2) / n) -# # b = 2 * a * cos(180 * sqrt(2) / n) -# rsqrt2 = 1 / np.sqrt2 -# a = (np.cos(rsqrt2 * 360 / n) + np.sin(rsqrt2 * 360 / n) - 1) -# a /= np.cos(rsqrt2 * 360 / n) -# b, c = 1 - a, (1 - a / 2) - -# for i in range(2, m): -# hp = c * c * (x[i] - 2 * x[i - 1] + x[i - 2]) \ -# + 2 * b * hp[i - 1] - b * b * hp[i - 2] - -# result = nb_ssf(hp, k, pi, rsqrt2) -# return result diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_signals.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_signals.py deleted file mode 100644 index c964d1d2..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_signals.py +++ /dev/null @@ -1,623 +0,0 @@ -# -*- coding: utf-8 -*- -from functools import partial - -from numpy import nan -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils._math import zero -from pandas_ta.utils._validate import ( - v_bool, - v_drift, - v_float, - v_int, - v_offset, - v_series -) - - - -__all__ = [ - "above", - "above_value", - "below", - "below_value", - "cross", - "cross_value", - "signals", - "tsignals", - "xsignals" -] - - - -def above( - x: Series, y: Series, asint: bool = True, offset: Int = None, **kwargs -) -> Series: - """Above - - Determines if each ```x``` value is above (or ```>=```) each ```y``` value. - - Parameters: - x (Series): ```x``` - y (Series): ```y``` - asint (bool): Returns as ```Int```. - offset (Int): Post shift. Default: ```0``` - - Returns: - (Series): State where ```x >= y```. - - Example: - ```py - x = Series([4, 2, 0, -1, 1]) - y = Series([1, 1, 1, 1, 1]) - - x_above_y = ta.above(x, y) - # x_above_y = Series([1, 1, 0, 0, 1]) - ``` - """ - return partial(_above_below, above=True)(x, y, asint=asint, offset=offset, **kwargs) - - -def above_value( - x: Series, value: IntFloat, asint: bool = True, - offset: Int = None, **kwargs -) -> Series: - """Above Value - - Determines if each ```x``` value is above (or ```>=```) a - constant ```value```. - - Parameters: - x (Series): ```x``` - value (IntFloat): Value to compare with ```x```. - asint (bool): Returns as ```Int```. - - Returns: - (Series): State where ```x >= y```. - - Example: - ```py - x = Series([4, 2, 0, -1, 1]) - x_above_1 = ta.above_value(x, 1) - # x_above_1 = Series([1, 1, 0, 0, 1]) - ``` - """ - if not isinstance(value, (int, float)): - print("[X] value is not a number") - return - y = Series(value, index=x.index, name=f"{value}".replace(".", "_")) - return partial(_above_below, above=True)(x, y, asint=asint, offset=offset, **kwargs) - - -def below( - x: Series, y: Series, asint: bool = True, offset: Int = None, **kwargs -) -> Series: - """Below - - Determines if each ```x``` value is below (or ```<=```) each ```y``` value. - - Parameters: - x (Series): ```x``` - y (Series): ```y``` - asint (bool): Returns as ```Int```. - offset (Int): Post shift. Default: ```0``` - - Returns: - (Series): State where ```x <= y```. - - Example: - ```py - x = Series([4, 2, 0, -1, 1]) - y = Series([1, 1, 1, 1, 1]) - - x_below_y = ta.below(x, y) - # x_below_y = Series([0, 0, 1, 1, 1]) - ``` - """ - return partial(_above_below, above=False)(x, y, asint=asint, offset=offset, **kwargs) - - -def below_value( - x: Series, value: IntFloat, asint: bool = True, - offset: Int = None, **kwargs -) -> Series: - """Below Value - - Determines if each ```x``` value is below (or ```<=```) a - constant ```value```. - - Parameters: - x (Series): ```x``` - value (IntFloat): Value to compare with ```x```. - asint (bool): Returns as ```Int```. - offset (Int): Post shift. Default: ```0``` - - Returns: - (Series): State where ```x <= y```. - - Example: - ```py - x = Series([4, 2, 0, -1, 1]) - x_below_1 = ta.below_value(x, 1) - # x_below_1 = Series([0, 0, 1, 1, 1]) - ``` - """ - if not isinstance(value, (int, float)): - print("[X] value is not a number") - return - y = Series(value, index=x.index, name=f"{value}".replace(".", "_")) - return partial(_above_below, above=False)(x, y, asint=asint, offset=offset, **kwargs) - - -def cross( - x: Series, y: Series, - above: bool = True, equal: bool = True, - asint: bool = True, offset: Int = None, - **kwargs: DictLike -) -> Series: - """Cross - - Determines where ```x``` crosses ```y```, either _above_ or _below_, - strictly (_equal_) or not. - - Parameters: - x (Series): ```x``` - y (Series): ```y``` - above (bool): Check above. Check below, set ```above=False``` - equal (bool): At least/most, ```=```, check. - asint (bool): Returns as ```Int```. - offset (Int): Post shift. Default: ```0``` - - Returns: - (Series): Values where ```x``` crosses ```y```. - - Example: - ```py - x = Series([4, 2, 0, -1, 1]) - y = Series([1, 1, 1, 1, 1]) - - # Cross Above Examples - x_xae_y = ta.cross(x, y, above=True, equal=True) - # x_xae_y = Series([0, 0, 0, 0, 1]) - - x_xa_y = ta.cross(x, y, above=True, equal=False) - # x_xa_y = Series([0, 0, 0, 0, 0]) - - # Cross Below Examples - x_xbe_y = ta.cross(x, y, above=False, equal=True) - # x_xbe_y = Series([0, 0, 1, 0, 1]) - - x_xb_y = ta.cross(x, y, above=False, equal=False) - # x_xb_y = Series([0, 0, 1, 0, 0]) - ``` - """ - # Validate - x = v_series(x) - y = v_series(y) - offset = v_offset(offset) - - x.apply(zero) - y.apply(zero) - - # Calculate - if above: - current = x >= y if equal else x > y - previous = x.shift(1) < y.shift(1) - else: - current = x <= y if equal else x < y - previous = x.shift(1) > y.shift(1) - - cross = current & previous - # ensure there is no cross on the first entry - cross.iloc[0] = False - - if asint: - cross = cross.astype(int) - - # Offset - if offset != 0: - cross = cross.shift(offset) - - # Name and Category - cross.name = f"{x.name}_{'XA' if above else 'XB'}_{y.name}" - cross.category = "signal" - - return cross - - -def cross_value( - x: Series, value: IntFloat, - above: bool = True, equal: bool = True, - asint: bool = True, offset: Int = None, - **kwargs -) -> Series: - """Cross Value - - Determines where ```x``` crosses a constant ```value```, either _above_ - or _below_, strictly (_equal_) or not. - - Parameters: - x (Series): ```x``` - value (IntFloat): Value to compare with ```x```. - above (bool): Check above. Check below, set ```above=False``` - equal (bool): At least/most, ```=```, check. - asint (bool): Returns as ```Int```. - offset (Int): Post shift. Default: ```0``` - - Returns: - (Series): Values where ```x``` crosses ```y```. - - Example: - ```py - x = Series([4, 2, 0, -1, 1]) - - # Cross Above Examples - x_xae_y = ta.cross_value(x, 1, above=True, equal=True) - # x_xae_y = Series([0, 0, 0, 0, 1]) - - x_xa_y = ta.cross_value(x, 1, above=True, equal=False) - # x_xa_y = Series([0, 0, 0, 0, 0]) - - # Cross Below Examples - x_xbe_y = ta.cross_value(x, 1, above=False, equal=True) - # x_xbe_y = Series([0, 0, 1, 0, 1]) - - x_xb_y = ta.cross_value(x, 1, above=False, equal=False) - # x_xb_y = Series([0, 0, 1, 0, 0]) - ``` - """ - y = Series(value, index=x.index, name=f"{value}".replace(".", "_")) - return cross(x, y, above, equal, asint, offset, **kwargs) - - - -def signals( - indicator: Series, xa: IntFloat = None, xb: IntFloat = None, - cross_values: bool = None, xseries: Series = None, - xseries_a: Series = None, xseries_b: Series = None, - cross_series: bool = None, offset: Int = None -) -> DataFrame: - """Signals - - Mulitfuncational signal checker that determines whether an - indicator crosses above/below value or Series. - - Parameters: - indicator (Series): Indicator to check for signal crossings. - cross_values (bool): Check if crossed value. - xseries (Series): Cross Series - xseries_a (Series): Cross Above Series - xseries_b (Series): Cross Below Series - cross_series (bool): Check if crossed ```xseries```. - - Other Parameters: - xa (IntFloat): Crossing above value. - xb (IntFloat): Crossing below value. - offset (Int): Post shift. Default: ```0``` - - Returns: - (DataFrame): 2 columns - - Note: - See sources of: ```er```, ```macd```, ```rsi```, and ```rsx``` - for examples of use. - """ - df = DataFrame() - - if xa is not None and isinstance(xa, (int, float)): - if cross_values: - xa_start = cross_value(indicator, xa, above=True, offset=offset) - xa_end = cross_value(indicator, xa, above=False, offset=offset) - - df[xa_start.name] = xa_start - df[xa_end.name] = xa_end - else: - xd_above = above_value(indicator, xa, offset=offset) - df[xd_above.name] = xd_above - - if xb is not None and isinstance(xb, (int, float)): - if cross_values: - xb_start = cross_value(indicator, xb, above=True, offset=offset) - xb_end = cross_value(indicator, xb, above=False, offset=offset) - - df[xb_start.name] = xb_start - df[xb_end.name] = xb_end - else: - xd_below = below_value(indicator, xb, offset=offset) - df[xd_below.name] = xd_below - - # xseries is the default value for both xseries_a and xseries_b - if xseries_a is None: - xseries_a = xseries - if xseries_b is None: - xseries_b = xseries - - if xseries_a is not None and v_series(xseries_a): - if cross_series: - xsa = cross(indicator, xseries_a, above=True, offset=offset) - else: - xsa = above(indicator, xseries_a, offset=offset) - - df[xsa.name] = xsa - - if xseries_b is not None and v_series(xseries_b): - if cross_series: - xsb = cross(indicator, xseries_b, above=False, offset=offset) - else: - xsb = below(indicator, xseries_b, offset=offset) - - df[xsb.name] = xsb - - return df - - -def _above_below( - x: Series, y: Series, - above: bool = True, asint: bool = True, - offset: Int = None, **kwargs -) -> Series: - """Above / Below - - Determines if ```x``` is above or below ```y```. - - Parameters: - x (Series): ```x``` - y (Series): ```y``` - above (bool): Above check. Below: ```above=False``` - equal (bool): At least/most, ```=```, check. - asint (bool): Returns as ```Int```. - offset (Int): Post shift. Default: ```0``` - - Returns: - (Series): Values where ```x``` values are above/below ```y``` values. - """ - # Verify - x = v_series(x) - y = v_series(y) - offset = v_offset(offset) - - x.apply(zero) - y.apply(zero) - - # Calculate - if above: - current = x >= y - else: - current = x <= y - - if asint: - current = current.astype(int) - - # Offset - if offset != 0: - current = current.shift(offset) - - # Name and Category - current.name = f"{x.name}_{'A' if above else 'B'}_{y.name}" - current.category = "signal" - - return current - - - -def tsignals( - trend: Series, asbool: bool = None, - trade_offset: Int = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Trend Signals - - This function creates Trend, Trades, Entries and Exit values per bar when - given a trend condition e.g. ```trend = close > sma(close, 50)```. - - Source: - * Kevin Johnson - - Parameters: - trend (Series): ```trend``` Series. Boolean or integer values of - ```0``` and ```1``` - asbool (bool): Return booleans. Default: ```False``` - trade_offset (value): Shift trade entries/exits with live: ```0``` and - backesting: ```1```. Default: ```0``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 4 columns - - Note: Column Detail - * Trends (trend: 1, no trend: 0) - * Trades (Enter: 1, Exit: -1, Otherwise: 0) - * Entries (entry: 1, nothing: 0) - * Exits (exit: 1, nothing: 0) - - Note: Details - A ```trend``` is a state or condition, that is as simple - as ```Close > MA``` or something more complex that has boolean - or integer (trend: 1, no trend: 0) values. - - Tip: VectorBT - * For backtesting, set ```trade_offset=1```. - * Setting ```asbool=True``` is useful for backtesting with vectorbt's - ```Portfolio.from_signal(close, entries, exits)``` method. - - Example: - These are two different outcomes for each (long/short) position and - depends on the source and it's behavior. - - Signals when ```Close > SMA50(Close)``` - - ta.tsignals(close > ta.sma(close, 50), asbool=False) - - Signals when ```EMA(Close, 8) > EMA(Close, 21)``` - - ta.tsignals(ta.ema(close, 8) > ta.ema(close, 21), asbool=True) - - Warning: - Check ALL outcomes BEFORE making an Issue - """ - # Validate - trend = v_series(trend) - if trend is None: - return - - asbool = v_bool(asbool, False) - trade_offset = v_int(trade_offset, 0) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - trends = trend.astype(int) - trades = trends.diff(drift).shift(trade_offset).fillna(0).astype(int) - entries = (trades > 0).astype(int) - exits = (trades < 0).abs().astype(int) - - if asbool: - trends = trends.astype(bool) - entries = entries.astype(bool) - exits = exits.astype(bool) - - data = { - f"TS_Trends": trends, - f"TS_Trades": trades, - f"TS_Entries": entries, - f"TS_Exits": exits, - } - df = DataFrame(data, index=trends.index) - - # Offset - if offset != 0: - df = df.shift(offset) - - # Fill - if "fillna" in kwargs: - df.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - df.name = f"TS" - df.category = "trend" - - return df - - - -def xsignals( - source: Series, - xa: IntFloat | Series, - xb: IntFloat | Series, - above: bool = True, long: bool = True, - asbool: bool = None, trade_offset: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Cross Signals - - This function creates Trend, Trades, Entries and Exits values per bar - for crossing events. - - Sources: - * Kevin Johnson - - Parameters: - source (Series): ```source``` Signal - xa (Series): Series the Signal crosses above if ```above=True``` - xb (Series): Series the Signal crosses below if ```above=True``` - above (bool): The ```source``` crossing; below is ```False```. - Default: ```True``` - long (bool): The ```source``` position; short is ```False```. - Default: ```True``` - offset (int): Post shift. Default: ```0``` - asbool (bool): Return booleans. Default: ```False``` - trade_offset (value): Shift trade entries/exits with live: ```0``` and - backesting: ```1```. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 4 columns - - Note: Column Detail - * Trends (trend: 1, no trend: 0) - * Trades (Enter: 1, Exit: -1, Otherwise: 0) - * Entries (entry: 1, nothing: 0) - * Exits (exit: 1, nothing: 0) - - Tip: VectorBT - * For backtesting, set ```trade_offset=1```. - * Setting ```asbool=True``` is useful for backtesting with vectorbt's - ```Portfolio.from_signal(close, entries, exits)``` method. - - Example: - These are two different outcomes for each (long/short) position and - depends on the source and it's behavior. - - rsi = df.ta.rsi() - - When RSI crosses above 20 and then below 80 in a long position: - - ta.xsignals(source=rsi, xa=20, xb=80, above=True, long=True) - # Simpler - # ta.xsignals(rsi, 20, 80, True, True) - - When RSI crosses below 20 and then above 80 in a long position: - - ta.xsignals(source=rsi, xa=20, xb=80, above=False, long=True) - # Simpler - # ta.xsignals(rsi, 20, 80, False, True) - - * Similarly, short positions (```long=False```) also differ depending - on ```above``` state. - - Warning: - Check ALL parameter combination outcomes BEFORE making an Issue. - """ - # Validate - source = v_series(source) - if source is None: - return - - offset = v_offset(offset) - - # Calculate - if above: - entries = cross_value(source, xa) - exits = -cross_value(source, xb, above=False) - else: - entries = cross_value(source, xa, above=False) - exits = -cross_value(source, xb) - trades = entries + exits - - # Modify trades to fill gaps for trends - trades.replace({0: nan}, inplace=True) - trades.ffill(limit_area="inside", inplace=True) # or trades.bfill(limit_area="inside", inplace=True) - trades.fillna(0, inplace=True) - - trends = (trades > 0).astype(int) - if not long: - trends = 1 - trends - - tskwargs = { - "asbool": asbool, - "trade_offset": trade_offset, - "offset": offset - } - df = tsignals(trends, **tskwargs) - - # Offset handled by tsignals - DataFrame({ - f"XS_LONG": df.TS_Trends, - f"XS_SHORT": 1 - df.TS_Trends - }) - - # Fill - if "fillna" in kwargs: - df.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - df.name = f"XS" - df.category = "trend" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_study.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_study.py deleted file mode 100644 index 16d01e6c..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_study.py +++ /dev/null @@ -1,144 +0,0 @@ -# -*- coding: utf-8 -*- -from multiprocessing import cpu_count -from dataclasses import dataclass, field - -from pandas_ta._typing import Int, List -from pandas_ta.utils._time import get_time - -__all__ = [ - "Study", - "AllStudy", - "CommonStudy" -] - - - -# Study DataClass -@dataclass -class Study: - """Study DataClass - Class to name and group indicators for processing. - - Parameters: - name (str): Name. - ta (list of dicts): i.e [{"kind": "ema", "length", 50}] - cores (int): The number cores to use for multiprocessing. - Default: ```cpu_count()``` - description (str): Description of what the Study. Default: ```""``` - created (str): DateTime String at creation. - Default: Automatically generated. - - Returns: - (DataClass): The Study to be processed by ```df.ta.study()``` - - Example: All or Common Study - Run - ```py - # Run "All" - df.ta.study(ta.AllStudy, **kwargs) - - # Run "Common" - df.ta.study(ta.CommonStudy, **kwargs) - ``` - - Example: Custom Study - Create - ```py - DemoStudy = ta.Study( - name="Demo Study", - description="Example Study Group", - cores=0, # Usually faster than multiprocessing - ta = [ - {"kind": "sma", "length": 200}, - {"kind": "sma", "close": "volume", "length": 50}, - {"kind": "bbands", "length": 20}, - {"kind": "rsi"}, - {"kind": "macd", "fast": 8, "slow": 21}, - {"kind": "sma", "close": "volume", "length": 20, "prefix": "VOLUME"} - ] - ``` - - Run - ```py - df.ta.study(DemoStudy, **kwargs) - ``` - - Note: - * See [also](../getting-started/usage.md) the Pandas TA - "Study" Examples - * Case-insensitive "All" is reserved. - - Warning: Multiprocessing - **Not recommended** for: - - * Small sets of indicators - * Indicator chains - """ - name: str - ta: List = field(default_factory=list) - cores: Int = cpu_count() - description: str = "" - created: str = get_time(to_string=True) - - - def __post_init__(self): - if isinstance(self.cores, int) and self.cores >= 0 and self.cores <= cpu_count(): - self.cores = int(self.cores) - - req_args = ["[X] Study requires the following argument(s):"] - - if self._is_name(): - req_args.append( - ' - name. Must be a string. Example: "My TA". Note: "all" is reserved.') - - if self.ta is None: - self.ta = None - elif not self._is_ta(): - s = " - ta. Format is a list of dicts. Example: [{'kind': 'sma', 'length': 10}]" - s += "\n Check the indicator for the correct arguments if you receive this error." - req_args.append(s) - - if len(req_args) > 1: - [print(_) for _ in req_args] - return None - - - def _is_name(self): - return self.name is None or not isinstance(self.name, str) - - - def _is_ta(self): - if isinstance(self.ta, list) and self.total_ta() > 0: - # Check that all elements of the list are dicts. - # Does not check if the dicts values are valid indicator kwargs - # User must check indicator documentation for all indicators args. - return all([isinstance(_, dict) and len(_.keys()) > 0 for _ in self.ta]) - - return False - - - def total_ta(self): - return len(self.ta) if self.ta is not None else 0 - - - -# All Study -AllStudy = Study( - name="All", - description="All the indicators with their default settings. Pandas TA default.", - ta=None, -) - -# Default (Example) Study. -CommonStudy = Study( - name="Common Price and Volume SMAs", - description="Common Price SMAs: 10, 20, 50, 200 and Volume SMA: 20.", - cores=0, - ta=[ - {"kind": "sma", "length": 10}, - {"kind": "sma", "length": 20}, - {"kind": "sma", "length": 50}, - {"kind": "sma", "length": 200}, - {"kind": "sma", "close": "volume", "length": 20, "prefix": "VOL"} - ] -) diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_time.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_time.py deleted file mode 100644 index bff01f05..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_time.py +++ /dev/null @@ -1,152 +0,0 @@ -# -*- coding: utf-8 -*- -from datetime import datetime -from time import localtime, perf_counter - -from pandas import DataFrame, Series, Timestamp, to_datetime -from pandas_ta._typing import Float, MaybeSeriesFrame, Optional, Tuple -from pandas_ta.maps import EXCHANGE_TZ - -__all__ = [ - "df_dates", - "df_month_to_date", - "df_quarter_to_date", - "df_year_to_date", - "final_time", - "get_time", - "mtd", - "qtd", - "to_utc", - "total_time", - "unix_convert", - "ytd", -] - - - -def df_dates( - df: DataFrame, dates: Tuple[str, list] = None -) -> MaybeSeriesFrame: - """Yields the DataFrame with the given dates""" - if dates is None: - return None - if not isinstance(dates, list): - dates = [dates] - return df[df.index.isin(dates)] - - -def df_month_to_date(df: DataFrame) -> DataFrame: - """Yields the Month-to-Date (MTD) DataFrame""" - in_mtd = df.index >= Timestamp.now().strftime("%Y-%m-01") - if any(in_mtd): - return df[in_mtd] - return df - - -def df_quarter_to_date(df: DataFrame) -> DataFrame: - """Yields the Quarter-to-Date (QTD) DataFrame""" - now = Timestamp.now() - for m in [1, 4, 7, 10]: - if now.month <= m: - in_qtr = df.index >= datetime(now.year, m, 1).strftime("%Y-%m-01") - if any(in_qtr): - return df[in_qtr] - return df[df.index >= now.strftime("%Y-%m-01")] - - -def df_year_to_date(df: DataFrame) -> DataFrame: - """Yields the Year-to-Date (YTD) DataFrame""" - in_ytd = df.index >= Timestamp.now().strftime("%Y-01-01") - if any(in_ytd): - return df[in_ytd] - return df - - -def final_time(stime: Float) -> str: - """Human readable elapsed time. Calculates the final time elapsed since - stime and returns a string with microseconds and seconds.""" - time_diff = perf_counter() - stime - return f"{time_diff * 1000:2.4f} ms ({time_diff:2.4f} s)" - - -def get_time( - exchange: str = "NYSE", full: bool = True, to_string: bool = False -) -> Optional[str]: - """Returns Current Time, Day of the Year and Percentage, and the current - time of the selected Exchange.""" - tz = EXCHANGE_TZ["NYSE"] # Default is NYSE (Eastern Time Zone) - if isinstance(exchange, str): - exchange = exchange.upper() - tz = EXCHANGE_TZ[exchange] - - # today = Timestamp.utcnow() - today = Timestamp.now() - date = f"{today.day_name()} {today.month_name()} {today.day}, {today.year}" - - _today = today.timetuple() - exchange_time = f"{(_today.tm_hour + tz) % 24}:{_today.tm_min:02d}:{_today.tm_sec:02d}" - - if full: - lt = localtime() - local_ = f"Local: {lt.tm_hour}:{lt.tm_min:02d}:{lt.tm_sec:02d} {lt.tm_zone}" - doy = f"Day {today.dayofyear}/365 ({100 * round(today.dayofyear/365, 2):.2f}%)" - exchange_ = f"{exchange}: {exchange_time}" - - s = f"{date}, {exchange_}, {local_}, {doy}" - else: - s = f"{date}, {exchange}: {exchange_time}" - - return s if to_string else print(s) - - -def total_time(df: DataFrame, tf: str = "years") -> Float: - """Calculates the total time of a DataFrame. Difference of the Last and - First index. Options: 'months', 'weeks', 'days', 'hours', 'minutes' - and 'seconds'. Default: 'years'. - Useful for annualization.""" - time_diff = df.index[-1] - df.index[0] - TimeFrame = { - "years": time_diff.days / 365.242199074074074, # PR 602 - "months": time_diff.days / 30.417, - "weeks": time_diff.days / 7, - "days": time_diff.days, - "hours": time_diff.days * 24, - "minutes": time_diff.total_seconds() / 60, - "seconds": time_diff.total_seconds() - } - - if isinstance(tf, str) and tf in TimeFrame.keys(): - return TimeFrame[tf] - return TimeFrame["years"] - - -def to_utc(df: DataFrame) -> DataFrame: - """Either localizes the DataFrame Index to UTC or it applies tz_convert to - set the Index to UTC. - """ - if not df.empty: - try: - df.index = df.index.tz_localize("UTC") - except TypeError: - df.index = df.index.tz_convert("UTC") - return df - - -def unix_convert(s: int | Series) -> datetime | str: - """unix_convert - - Convert timestamps from Polygon to readable datetime strings. - - Parameters: - s (int | Series): The timestamp(s). An integer posix timestamp - or a Series of timestamps. - - Returns: - (datetime | str): Converted datetime - """ - return to_datetime(s, unit="ms") - - -# Aliases -mtd = df_month_to_date -qtd = df_quarter_to_date -ytd = df_year_to_date diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_validate.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_validate.py deleted file mode 100644 index 6a05bf78..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/utils/_validate.py +++ /dev/null @@ -1,202 +0,0 @@ -# -*- coding: utf-8 -*- -from functools import partial -from numpy import ndarray, zeros -from pandas import DataFrame, Series, isnull -from pandas.api.types import is_datetime64_any_dtype -from pandas_ta._typing import ( - Array, - Float, - Int, - IntFloat, - List, - MaybeSeriesFrame, - Optional, - SeriesFrame, - np_floating, - np_integer -) - -__all__ = [ - "v_array", - "v_ascending", - "v_bool", - "v_dataframe", - "v_datetime_ordered", - "v_drift", - "v_float", - "v_int", - "v_list", - "v_lowerbound", - "v_mamode", - "v_null", - "v_offset", - "v_percent", - "v_pos_default", - "v_scalar", - "v_series", - "v_str", - "v_talib", - "v_tradingview", - "v_upperbound" -] - - -def v_array(var: Array, default: Array = zeros(0)) -> Array: - """Returns zeros(0) if not a valid Array""" - if isinstance(var, ndarray) and var.size > 0: - return var - return default - - -def v_ascending(var: bool) -> bool: - """Returns True by default""" - return partial(v_bool, default=True)(var=var) - - -def v_bool(var: bool, default: bool = True) -> bool: - """Returns default=True if var is not a bool.""" - if isinstance(var, bool): - return bool(var) - return default - - -def v_dataframe(df: MaybeSeriesFrame) -> None: - """Returns None if df is not a DataFrame.""" - if isinstance(df, DataFrame) and df.size > 0: - return df - return None - - - -def v_datetime_ordered(df: SeriesFrame) -> bool: - if df.shape[0] < 2: - return False - if is_datetime64_any_dtype(df.index): - np_dt_index = df.index.to_numpy() - if np_dt_index[0] < np_dt_index[-1]: - return True - return False - - -def v_drift(var: Int) -> Int: - """Defaults to 1""" - return partial(v_int, default=1, ne=0)(var=var) - - -def v_float( - var: IntFloat, default: IntFloat, ne: Optional[IntFloat] = 0.0 -) -> Float: - """Returns the default if var is not equal to the ne value.""" - _types = (float, int, np_floating, np_integer) - if isinstance(ne, _types) and isinstance(var, _types): - if float(var) != float(ne): - return float(var) - return float(default) - - -def v_int(var: Int, default: Int, ne: Optional[Int] = 0) -> Int: - """Returns the default if var is not equal to the ne value.""" - if isinstance(var, int) and int(var) != int(ne): - return int(var) - if isinstance(var, np_integer) and var.item() != int(ne): - return var.item() - return int(default) - - -def v_list(var: List, default: List = []) -> List: - """Returns [] if not a valid list""" - if isinstance(var, list) and len(var) > 0: - return var - return default - - -def v_lowerbound( - var: IntFloat, bound: IntFloat = 0, - default: IntFloat = 0, strict: bool = True, complement: bool = False -) -> IntFloat: - """Returns the default if var(iable) not greater(equal) than bound.""" - var_type = None - if isinstance(var, (float, np_floating)): var_type = float - if isinstance(var, (int, np_integer)): var_type = int - - if var_type is None: - return default - - valid = False - if strict: - valid = var_type(var) > var_type(bound) - else: - valid = var_type(var) >= var_type(bound) - - if complement: valid = not valid - - if valid: - return var_type(var) - return default - - -def v_mamode(var: str, default: str) -> str: # Could be an alias. - return v_str(var, default) - - -def v_null(var: IntFloat, default: IntFloat) -> IntFloat: - """Returns the var if not null else returns the default""" - return default if isnull(var) else var - - -def v_offset(var: Int) -> Int: - """Defaults to 0""" - return partial(v_int, default=0, ne=0)(var=var) - - -def v_percent(x: IntFloat) -> bool: - if isinstance(x, (float, int, np_floating, np_integer)): - return x is not None and 0 <= x <= 100 - return False - - -def v_pos_default( - var: IntFloat, default: IntFloat = 0, strict: bool = True, complement: bool = False -) -> IntFloat: - return partial(v_lowerbound, bound=0) \ - (var=var, default=default, strict=strict, complement=complement) - - -def v_scalar(var: IntFloat, default: Optional[IntFloat] = 1) -> Float: - """Returns the default if var is not an IntFloat.""" - if isinstance(var, (float, int, np_floating, np_integer)): - return float(var) - return float(default) - - -def v_series(series: Series, length: Optional[IntFloat] = 0) -> Optional[Series]: - """Returns None if the series does not meet the required minimum length.""" - if series is not None and isinstance(series, Series): - if series.size >= v_pos_default(length, 0): - return series - return None - - -def v_str(var: str, default: str) -> str: - """"Returns the default value if var is not a empty str""" - if isinstance(var, str) and len(var) > 0: - return f"{var}" - return f"{default}" - - -def v_talib(var: bool) -> bool: - """Returns True by default""" - return partial(v_bool, default=True)(var=var) - - -def v_tradingview(var: bool) -> bool: - """Returns True by default""" - return partial(v_bool, default=True)(var=var) - - -def v_upperbound( - var: IntFloat, bound: IntFloat = 0, - default: IntFloat = 0, strict: bool = True -) -> IntFloat: - return partial(v_lowerbound, complement=True)\ - (var=var, bound=bound, default=default, strict=strict) diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/__init__.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/__init__.py deleted file mode 100644 index 8f804ca4..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/__init__.py +++ /dev/null @@ -1,36 +0,0 @@ -# -*- coding: utf-8 -*- -from .aberration import aberration -from .accbands import accbands -from .atr import atr -from .atrts import atrts -from .bbands import bbands -from .chandelier_exit import chandelier_exit -from .donchian import donchian -from .hwc import hwc -from .kc import kc -from .massi import massi -from .natr import natr -from .pdist import pdist -from .rvi import rvi -from .thermo import thermo -from .true_range import true_range -from .ui import ui - -__all__ = [ - "aberration", - "accbands", - "atr", - "atrts", - "bbands", - "chandelier_exit", - "donchian", - "hwc", - "kc", - "massi", - "natr", - "pdist", - "rvi", - "thermo", - "true_range", - "ui", -] diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/aberration.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/aberration.py deleted file mode 100644 index 6f78982e..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/aberration.py +++ /dev/null @@ -1,85 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.overlap import hlc3, sma -from pandas_ta.utils import v_offset, v_pos_default, v_series -from .atr import atr - - - -def aberration( - high: Series, low: Series, close: Series, - length: Int = None, atr_length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Aberration - - Similar to Keltner Channels. - - Sources: - * [Request #46](https://github.com/twopirllc/pandas-ta/issues/46) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```5``` - atr_length (int): ATR period. Default: ```15``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 4 columns - """ - # Validate - length = v_pos_default(length, 5) - atr_length = v_pos_default(atr_length, 15) - _length = max(atr_length, length) + 1 - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - offset = v_offset(offset) - - # Calculate - atr_ = atr(high=high, low=low, close=close, length=atr_length) - jg = hlc3(high=high, low=low, close=close) - - zg = sma(jg, length) - sg = zg + atr_ - xg = zg - atr_ - - # Offset - if offset != 0: - zg = zg.shift(offset) - sg = sg.shift(offset) - xg = xg.shift(offset) - atr_ = atr_.shift(offset) - - # Fill - if "fillna" in kwargs: - zg.fillna(kwargs["fillna"], inplace=True) - sg.fillna(kwargs["fillna"], inplace=True) - xg.fillna(kwargs["fillna"], inplace=True) - atr_.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{length}_{atr_length}" - zg.name = f"ABER_ZG{_props}" - sg.name = f"ABER_SG{_props}" - xg.name = f"ABER_XG{_props}" - atr_.name = f"ABER_ATR{_props}" - zg.category = sg.category = "volatility" - xg.category = atr_.category = zg.category - - data = {zg.name: zg, sg.name: sg, xg.name: xg, atr_.name: atr_} - df = DataFrame(data, index=close.index) - df.name = f"ABER{_props}" - df.category = zg.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/accbands.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/accbands.py deleted file mode 100644 index c11ac70f..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/accbands.py +++ /dev/null @@ -1,93 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.ma import ma -from pandas_ta.utils import ( - non_zero_range, - v_drift, - v_mamode, - v_offset, - v_pos_default, - v_series -) - - - -def accbands( - high: Series, low: Series, close: Series, length: Int = None, - c: IntFloat = None, drift: Int = None, mamode: str = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Acceleration Bands - - This indicator, by Price Headley, creates lower and upper bands centered - around a moving average based on a ratio of it's High-Low range. - - Sources: - * [tradingtechnologies](https://www.tradingtechnologies.com/help/x-study/technical-indicator-definitions/acceleration-bands-abands/) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```10``` - c (int): Multiplier. Default: ```4``` - mamode (str): See ```help(ta.ma)```. Default: ```"sma"``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3 columns - """ - # Validate - length = v_pos_default(length, 20) - high = v_series(high, length) - low = v_series(low, length) - close = v_series(close, length) - - if high is None or low is None or close is None: - return - - c = v_pos_default(c, 4) - mamode = v_mamode(mamode, "sma") - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - high_low_range = non_zero_range(high, low) - hl_ratio = high_low_range / (high + low) - hl_ratio *= c - _lower = low * (1 - hl_ratio) - _upper = high * (1 + hl_ratio) - - lower = ma(mamode, _lower, length=length) - mid = ma(mamode, close, length=length) - upper = ma(mamode, _upper, length=length) - - # Offset - if offset != 0: - lower = lower.shift(offset) - mid = mid.shift(offset) - upper = upper.shift(offset) - - # Fill - if "fillna" in kwargs: - lower.fillna(kwargs["fillna"], inplace=True) - mid.fillna(kwargs["fillna"], inplace=True) - upper.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - lower.name = f"ACCBL_{length}" - mid.name = f"ACCBM_{length}" - upper.name = f"ACCBU_{length}" - mid.category = upper.category = lower.category = "volatility" - - data = {lower.name: lower, mid.name: mid, upper.name: upper} - df = DataFrame(data, index=close.index) - df.name = f"ACCBANDS_{length}" - df.category = mid.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/atr.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/atr.py deleted file mode 100644 index 397e2ad6..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/atr.py +++ /dev/null @@ -1,107 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan, nan -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - v_bool, - v_drift, - v_mamode, - v_offset, - v_pos_default, - v_series, - v_talib -) -from .true_range import true_range - - - -def atr( - high: Series, low: Series, close: Series, length: Int = None, - mamode: str = None, talib: bool = None, - prenan: bool = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Average True Range - - This indicator attempts to quantify volatility with a focus on gaps or - limit moves. - - Sources: - * [tradingview](https://www.tradingview.com/wiki/Average_True_Range_(ATR)) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```14``` - mamode (str): See ```help(ta.ma)```. Default: ```"rma"``` - talib (bool): If installed, use TA Lib. Default: ```True``` - prenan (bool): Sets initial values to ```np.nan``` based - on ```drift```. Default: ```False``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - percent (bool): Return as percent. Default: ```False``` - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 14) - _length = length + 1 - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - mamode = v_mamode(mamode, "rma") - mode_tal = v_talib(talib) - prenan = v_bool(prenan, False) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import ATR - atr = ATR(high, low, close, length) - else: - tr = true_range( - high=high, low=low, close=close, - talib=mode_tal, prenan=prenan, drift=drift - ) - if all(isnan(tr)): - return # Emergency Break - - presma = kwargs.pop("presma", True) - if presma: - sma_nth = tr[0:length].mean() - tr[:length - 1] = nan - tr.iloc[length - 1] = sma_nth - atr = ma(mamode, tr, length=length, talib=mode_tal) - - if all(isnan(atr)): - return # Emergency Break - - percent = kwargs.pop("percent", False) - if percent: - atr *= 100 / close - - # Offset - if offset != 0: - atr = atr.shift(offset) - - # Fill - if "fillna" in kwargs: - atr.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - atr.name = f"ATR{mamode[0]}{'p' if percent else ''}_{length}" - atr.category = "volatility" - - return atr diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/atrts.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/atrts.py deleted file mode 100644 index ea880287..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/atrts.py +++ /dev/null @@ -1,140 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from numpy import isnan, nan, uintc, zeros_like -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.ma import ma as _ma -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - v_drift, - v_mamode, - v_offset, - v_pos_default, - v_series, - v_talib -) -from pandas_ta.volatility import atr - - - -@njit(cache=True) -def nb_atrts(x, ma, atr_, length, ma_length): - m = x.size - k = max(length, ma_length) - - result = x.copy() - up = zeros_like(x, dtype=uintc) - dn = zeros_like(x, dtype=uintc) - - expn = x > ma - up[expn], dn[~expn] = 1, 1 - up[:k], dn[:k] = 0, 0 - result[:k] = nan - - for i in range(k, m): - pr = result[i - 1] - if up[i]: - result[i] = x[i] - atr_[i] - if result[i] < pr: - result[i] = pr - if dn[i]: - result[i] = x[i] + atr_[i] - if result[i] > pr: - result[i] = pr - - long, short = result * up, result * dn - long[long == 0], short[short == 0] = nan, nan - - return result, long, short - - -def atrts( - high: Series, low: Series, close: Series, length: Int = None, - ma_length: Int = None, k: IntFloat = None, - mamode: str = None, talib: bool = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """ATR Trailing Stop - - This indicator attempts to identify exits for long and short positions. - To determine trend, it uses a moving average with a scalable ATR. - - Sources: - * [motivewave](https://www.motivewave.com/studies/atr_trailing_stops.htm) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```14``` - ma_length (int): MA Length. Default: ```20``` - k (int): ATR multiplier. Default: ```3``` - mamode (str): See ```help(ta.ma)```. Default: ```"ema"``` - talib (bool): If installed, use TA Lib. Default: ```True``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - percent (bool): Return as percent. Default: ```False``` - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 14) - ma_length = v_pos_default(ma_length, 20) - _length = length + ma_length - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - k = v_pos_default(k, 3.0) - mamode = v_mamode(mamode, "ema") - mode_tal = v_talib(talib) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import ATR - atr_ = ATR(high, low, close, length) - else: - atr_ = atr( - high=high, low=low, close=close, length=length, - mamode=mamode, drift=drift, talib=mode_tal, - offset=offset, **kwargs - ) - - if all(isnan(atr_)): - return # Emergency Break - - atr_ *= k - ma_ = _ma(mamode, close, length=ma_length, talib=mode_tal) - - np_close, np_ma, np_atr = close.to_numpy(), ma_.to_numpy(), atr_.to_numpy() - np_atrts_, _, _ = nb_atrts(np_close, np_ma, np_atr, length, ma_length) - - percent = kwargs.pop("percent", False) - if percent: - np_atrts_ *= 100 / np_close - - atrts = Series(np_atrts_, index=close.index) - - # Offset - if offset != 0: - atrts = atrts.shift(offset) - - # Fill - if "fillna" in kwargs: - atrts.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"ATRTS{mamode[0]}{'p' if percent else ''}" - atrts.name = f"{_props}_{length}_{ma_length}_{k}" - atrts.category = "volatility" - - return atrts diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/bbands.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/bbands.py deleted file mode 100644 index aa235360..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/bbands.py +++ /dev/null @@ -1,124 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.ma import ma -from pandas_ta.maps import Imports -from pandas_ta.statistics import stdev -from pandas_ta.utils import ( - non_zero_range, - tal_ma, - v_mamode, - v_offset, - v_pos_default, - v_series, - v_talib -) - - - -def bbands( - close: Series, length: Int = None, - lower_std: IntFloat = None, upper_std: IntFloat = None, - ddof: Int = None, mamode: str = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Bollinger Bands - - This indicator, by John Bollinger, attempts to quantify volatility by - creating lower and upper bands centered around a moving average. - - Sources: - * [tradingview](https://www.tradingview.com/wiki/Bollinger_Bands_(BB)) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```5``` - lower_std (IntFloat): Lower standard deviation. Default: ```2.0``` - upper_std (IntFloat): Upper standard deviation. Default: ```2.0``` - ddof (int): Degrees of Freedom to use. Default: ```0``` - mamode (str): See ```help(ta.ma)```. Default: ```"sma"``` - talib (bool): If installed, use TA Lib. Default: ```True``` - ddof (int): By default, uses Pandas ```ddof=1```. - For Numpy calculation, use ```0```. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 5 columns - - Note: - * TA Lib does not have a ```ddof``` parameter. - * The divisor used in calculations is: ```N - ddof```, where ```N``` - is the number of elements. To use ```ddof```, set ```talib=False```. - """ - # Validate - length = v_pos_default(length, 5) - close = v_series(close, length) - - if close is None: - return - - lower_std = v_pos_default(lower_std, 2.0) - upper_std = v_pos_default(upper_std, 2.0) - ddof = int(ddof) if isinstance(ddof, int) and 0 <= ddof < length else 1 - mamode = v_mamode(mamode, "sma") - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import BBANDS - upper, mid, lower = BBANDS(close, length, upper_std, lower_std, tal_ma(mamode)) - else: - std_dev = stdev(close=close, length=length, ddof=ddof, talib=mode_tal) - lower_deviations = lower_std * std_dev - upper_deviations = upper_std * std_dev - - mid = ma(mamode, close, length=length, talib=mode_tal, **kwargs) - lower = mid - lower_deviations - upper = mid + upper_deviations - - ulr = non_zero_range(upper, lower) - bandwidth = 100 * ulr / mid - percent = non_zero_range(close, lower) / ulr - - # Offset - if offset != 0: - lower = lower.shift(offset) - mid = mid.shift(offset) - upper = upper.shift(offset) - bandwidth = bandwidth.shift(offset) - percent = percent.shift(offset) - - # Fill - if "fillna" in kwargs: - lower.fillna(kwargs["fillna"], inplace=True) - mid.fillna(kwargs["fillna"], inplace=True) - upper.fillna(kwargs["fillna"], inplace=True) - bandwidth.fillna(kwargs["fillna"], inplace=True) - percent.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{length}_{lower_std}_{upper_std}" - lower.name = f"BBL{_props}" - mid.name = f"BBM{_props}" - upper.name = f"BBU{_props}" - bandwidth.name = f"BBB{_props}" - percent.name = f"BBP{_props}" - upper.category = lower.category = "volatility" - mid.category = bandwidth.category = upper.category - - data = { - lower.name: lower, - mid.name: mid, - upper.name: upper, - bandwidth.name: bandwidth, - percent.name: percent - } - df = DataFrame(data, index=close.index) - df.name = f"BBANDS{_props}" - df.category = mid.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/chandelier_exit.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/chandelier_exit.py deleted file mode 100644 index 84433bfe..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/chandelier_exit.py +++ /dev/null @@ -1,127 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan, nan -from pandas import Series, DataFrame -from pandas_ta.volatility import atr -from pandas_ta._typing import Int, IntFloat, DictLike -from pandas_ta.utils import ( - v_bool, - v_drift, - v_mamode, - v_pos_default, - v_offset, - v_series, - v_talib -) - - - -def chandelier_exit( - high: Series, low: Series, close: Series, - high_length: Int = None, low_length: Int = None, - atr_length: Int = None, multiplier: IntFloat = None, - mamode: str = None, talib: bool = None, use_close: bool = None, - drift: Int = None, offset: Int = None, **kwargs: DictLike -): - """Chandelier Exit - - This indicator attempts to identify trailing stop-losses based on ATR. - - Sources: - * [stockcharts](https://school.stockcharts.com/doku.php?id=technical_indicators:chandelier_exit) - * [tradingview](https://in.tradingview.com/scripts/chandelier/) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - high_length (int): Highest high period. Default: ```22``` - low_length (int): Lowest low period. Default: ```22``` - atr_length (int) : ATR length. Default: ```14``` - multiplier (float): Lower & Upper Bands scalar. Default: ```2.0``` - mamode (str): See ```help(ta.ma)```. Default: ```"rma"``` - talib (bool): If installed, use TA Lib. Default: ```True``` - use_close (bool): Use ```max(high_length, low_length)``` for - the ```close```. Default: ```False``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3 columns - """ - # Validate - atr_length = v_pos_default(atr_length, 14) - high_length = v_pos_default(high_length, 22) - low_length = v_pos_default(low_length, 22) - roll_length = max(high_length, low_length) - _length = max(atr_length, roll_length) + 1 - - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - multiplier = v_pos_default(multiplier, 2.0) - mamode = v_mamode(mamode, "rma") - mode_tal = v_talib(talib) - use_close = v_bool(use_close, False) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - atr_ = atr( - high=high, low=low, close=close, length=atr_length, - mamode=mamode, talib=mode_tal, drift=drift, offset=offset - ) - if atr_ is None or all(isnan(atr_)): - return - - atr_mult = atr_ * multiplier - - if use_close: - long = close.rolling(roll_length, min_periods=1).max() - atr_mult - short = close.rolling(roll_length, min_periods=1).min() + atr_mult - else: - long = high.rolling(high_length, min_periods=1).max() - atr_mult - short = low.rolling(low_length, min_periods=1).min() + atr_mult - - uptrend = (close > long.shift(drift)).astype(int) - downtrend = -(close < short.shift(drift)).astype(int) - - direction = uptrend + downtrend - if direction.iloc[0] == 0: - direction.iloc[0] = 1 - direction = direction.replace(0, nan).ffill() - - # Offset - if offset != 0: - long = long.shift(offset) - short = short.shift(offset) - direction = direction.shift(offset) - - # Fill - if "fillna" in kwargs: - long.fillna(kwargs["fillna"], inplace=True) - short.fillna(kwargs["fillna"], inplace=True) - direction.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _name = "CHDLREXT" - _props = f"_{high_length}_{low_length}_{atr_length}_{multiplier}" - if use_close: - _props = f"_CLOSE_{_props}" - - data = { - f"{_name}l{_props}": long, - f"{_name}s{_props}": short, - f"{_name}d{_props}": direction - } - df = DataFrame(data, index=close.index) - df.name = f"{_name}{_props}" - df.category = "volatility" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/donchian.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/donchian.py deleted file mode 100644 index 3355f408..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/donchian.py +++ /dev/null @@ -1,77 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_offset, v_pos_default, v_series - - - -def donchian( - high: Series, low: Series, - lower_length: Int = None, upper_length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Donchian Channels - - This indicator attempt to quantify volatility similarily to - Bollinger Bands and Keltner Channels. - - Sources: - * [tradingview](https://www.tradingview.com/wiki/Donchian_Channels_(DC)) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - lower_length (int): Lower period. Default: ```20``` - upper_length (int): Upper period. Default: ```20``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3 columns - """ - # Validate - lower_length = v_pos_default(lower_length, 20) - upper_length = v_pos_default(upper_length, 20) - lmin_periods = int(kwargs.pop("lmin_periods", lower_length)) - umin_periods = int(kwargs.pop("umin_periods", upper_length)) - - _length = max(lower_length, lmin_periods, upper_length, umin_periods) - high = v_series(high, _length) - low = v_series(low, _length) - - if high is None or low is None: - return - - offset = v_offset(offset) - - # Calculate - lower = low.rolling(lower_length, min_periods=lmin_periods).min() - upper = high.rolling(upper_length, min_periods=umin_periods).max() - mid = 0.5 * (lower + upper) - - # Fill - if "fillna" in kwargs: - lower.fillna(kwargs["fillna"], inplace=True) - mid.fillna(kwargs["fillna"], inplace=True) - upper.fillna(kwargs["fillna"], inplace=True) - - # Offset - if offset != 0: - lower = lower.shift(offset) - mid = mid.shift(offset) - upper = upper.shift(offset) - - # Name and Category - lower.name = f"DCL_{lower_length}_{upper_length}" - mid.name = f"DCM_{lower_length}_{upper_length}" - upper.name = f"DCU_{lower_length}_{upper_length}" - mid.category = upper.category = lower.category = "volatility" - - data = {lower.name: lower, mid.name: mid, upper.name: upper} - df = DataFrame(data, index=high.index) - df.name = f"DC_{lower_length}_{upper_length}" - df.category = mid.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/hwc.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/hwc.py deleted file mode 100644 index a450dc0f..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/hwc.py +++ /dev/null @@ -1,142 +0,0 @@ -# -*- coding: utf-8 -*- -from sys import float_info as sflt -from numpy import sqrt -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.utils import v_bool, v_offset, v_pos_default, v_series - - - -def hwc( - close: Series, scalar: IntFloat = None, channels: bool = None, - na: IntFloat = None, nb: IntFloat = None, - nc: IntFloat = None, nd: IntFloat = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Holt-Winter Channel - - This indicator creates a three-parameter moving average using the - "Holt-Winters" method. - - Sources: - * [rengel8](https://github.com/rengel8) (2021-08-11) based on the - implementation from "MetaTrader 5" - * [mql5](https://www.mql5.com/en/code/20857) - - Parameters: - close (Series): ```close``` Series - scalar (float): Channel scalar. Default: ```1``` - channels (bool): Return width and percentage columns. - Default: ```True``` - na (float): Smoothed series in range ```[0, 1]```. Default: ```0.2``` - nb (float): Trend value in range ```[0, 1]```. Default: ```0.1``` - nc (float): Seasonality value in range ```[0, 1]```. Default: ```0.1``` - nd (float): Channel value in range ```[0, 1]```. Default: ```0.1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3 columns - """ - # Validate - close = v_series(close, 1) - scalar = v_pos_default(scalar, 1) - channels = v_bool(channels, True) - na = v_pos_default(na, 0.2) - nb = v_pos_default(nb, 0.1) - nc = v_pos_default(nc, 0.1) - nd = v_pos_default(nd, 0.1) - offset = v_offset(offset) - - if close is None: - return - - # Calculate Result - last_a = last_v = last_var = 0 - last_f = last_price = last_result = close.iloc[0] - lower, result, upper = [], [], [] - chan_pct_width, chan_width = [], [] - - m = close.size - for i in range(m): - F = (1.0 - na) * (last_f + last_v + 0.5 * last_a) + na * close.iloc[i] - V = (1.0 - nb) * (last_v + last_a) + nb * (F - last_f) - A = (1.0 - nc) * last_a + nc * (V - last_v) - result.append((F + V + 0.5 * A)) - - var = (1.0 - nd) * last_var + \ - nd * (last_price - last_result) * (last_price - last_result) - stddev = sqrt(last_var) - upper.append(result[i] + scalar * stddev) - lower.append(result[i] - scalar * stddev) - - if channels: - # channel width - chan_width.append(upper[i] - lower[i]) - # channel percentage price position - chan_pct_width.append( - (close.iloc[i] - lower[i]) / (upper[i] - lower[i] + sflt.epsilon) - ) - - # update values - last_price = close.iloc[i] - last_a = A - last_f = F - last_v = V - last_var = var - last_result = result[i] - - # Aggregate - hwc = Series(result, index=close.index) - hwc_upper = Series(upper, index=close.index) - hwc_lower = Series(lower, index=close.index) - if channels: - hwc_width = Series(chan_width, index=close.index) - hwc_pctwidth = Series(chan_pct_width, index=close.index) - - # Offset - if offset != 0: - hwc = hwc.shift(offset) - hwc_upper = hwc_upper.shift(offset) - hwc_lower = hwc_lower.shift(offset) - if channels: - hwc_width = hwc_width.shift(offset) - hwc_pctwidth = hwc_pctwidth.shift(offset) - - # Fill - if "fillna" in kwargs: - hwc.fillna(kwargs["fillna"], inplace=True) - hwc_upper.fillna(kwargs["fillna"], inplace=True) - hwc_lower.fillna(kwargs["fillna"], inplace=True) - if channels: - hwc_width.fillna(kwargs["fillna"], inplace=True) - hwc_pctwidth.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{scalar}" - hwc.name = f"HWM{_props}" - hwc_upper.name = f"HWU{_props}" - hwc_lower.name = f"HWL{_props}" - hwc.category = hwc_upper.category = hwc_lower.category = "volatility" - - if channels: - data = { - hwc.name: hwc, - hwc_lower.name: hwc_lower, - hwc_upper.name: hwc_upper, - f"HWW{_props}": hwc_width, - f"HWPCT{_props}": hwc_pctwidth - } - else: - data = { - hwc.name: hwc, - hwc_lower.name: hwc_lower, - hwc_upper.name: hwc_upper - } - df = DataFrame(data, index=close.index) - df.name = f"HWC_{scalar}" - df.category = hwc.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/kc.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/kc.py deleted file mode 100644 index 366c7622..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/kc.py +++ /dev/null @@ -1,95 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.ma import ma -from pandas_ta.utils import ( - high_low_range, - v_bool, - v_mamode, - v_offset, - v_pos_default, - v_series -) -from .true_range import true_range - - - -def kc( - high: Series, low: Series, close: Series, - length: Int = None, scalar: IntFloat = None, - tr: bool = None, mamode: str = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Keltner Channels - - This indicator attempts to identify volatility similarily to - Bollinger Bands and Donchian Channels. - - Sources: - * [tradingview](https://www.tradingview.com/wiki/Keltner_Channels_(KC)) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```20``` - scalar (float): Band scalar. Default: ```2``` - mamode (str): See ```help(ta.ma)```. Default: ```"ema"``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - tr (bool): Use True Range calculation. Otherwise use ```high - low``` - for range computation. Default: ```True``` - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3 columns - """ - # Validate - length = v_pos_default(length, 20) - _length = length + 1 - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - scalar = v_pos_default(scalar, 2) - tr = v_bool(tr, True) - mamode = v_mamode(mamode, "ema") - offset = v_offset(offset) - - # Calculate - range_ = true_range(high, low, close) if tr else high_low_range(high, low) - basis = ma(mamode, close, length=length) - band = ma(mamode, range_, length=length) - - lower = basis - scalar * band - upper = basis + scalar * band - - # Offset - if offset != 0: - lower = lower.shift(offset) - basis = basis.shift(offset) - upper = upper.shift(offset) - - # Fill - if "fillna" in kwargs: - lower.fillna(kwargs["fillna"], inplace=True) - basis.fillna(kwargs["fillna"], inplace=True) - upper.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"{mamode.lower()[0] if len(mamode) else ''}_{length}_{scalar}" - lower.name = f"KCL{_props}" - basis.name = f"KCB{_props}" - upper.name = f"KCU{_props}" - basis.category = upper.category = lower.category = "volatility" - - data = {lower.name: lower, basis.name: basis, upper.name: upper} - df = DataFrame(data, index=close.index) - df.name = f"KC{_props}" - df.category = basis.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/massi.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/massi.py deleted file mode 100644 index 3a86b65b..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/massi.py +++ /dev/null @@ -1,77 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.overlap import ema -from pandas_ta.utils import non_zero_range, v_offset, v_pos_default, v_series - - - -def massi( - high: Series, low: Series, fast: Int = None, slow: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Mass Index - - This indicator attempts to use a High-Low Range to identify trend - reversals based on range expansions. - - Sources: - * [stockcharts](https://stockcharts.com/school/doku.php?id=chart_school:technical_indicators:mass_index) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - fast (int): Fast period. Default: ```9``` - slow (int): Slow period. Default: ```25``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - fast = v_pos_default(fast, 9) - slow = v_pos_default(slow, 25) - if slow < fast: - fast, slow = slow, fast - _length = 2 * max(fast, slow) - min(fast, slow) - high = v_series(high, _length) - low = v_series(low, _length) - - if high is None or low is None: - return - - offset = v_offset(offset) - if "length" in kwargs: - kwargs.pop("length") - - # Calculate - high_low_range = non_zero_range(high, low) - hl_ema1 = ema(close=high_low_range, length=fast, **kwargs) - if all(isnan(hl_ema1)): - return # Emergency Break - hl_ema2 = ema(close=hl_ema1, length=fast, **kwargs) - if all(isnan(hl_ema2)): - return # Emergency Break - - hl_ratio = hl_ema1 / hl_ema2 - massi = hl_ratio.rolling(slow, min_periods=slow).sum() - if all(isnan(massi)): - return # Emergency Break - - # Offset - if offset != 0: - massi = massi.shift(offset) - - # Fill - if "fillna" in kwargs: - massi.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - massi.name = f"MASSI_{fast}_{slow}" - massi.category = "volatility" - - return massi diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/natr.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/natr.py deleted file mode 100644 index f59f9880..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/natr.py +++ /dev/null @@ -1,97 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - v_bool, - v_drift, - v_mamode, - v_offset, - v_pos_default, - v_scalar, - v_series, - v_talib -) -from pandas_ta.volatility import atr - - - -def natr( - high: Series, low: Series, close: Series, - length: Int = None, scalar: IntFloat = None, mamode: str = None, - talib: bool = None, prenan: bool = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Normalized Average True Range - - This indicator applies a normalizer to Average True Range. - - Sources: - * [tradingtechnologies](https://www.tradingtechnologies.com/help/x-study/technical-indicator-definitions/normalized-average-true-range-natr/) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```20``` - scalar (float): Scalar. Default: ```100``` - mamode (str): See ```help(ta.ma)```. Default: ```"ema"``` - talib (bool): If installed, use TA Lib. Default: ```True``` - prenan (bool): Sets initial values to ```np.nan``` based - on ```drift```. Default: ```False``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Warning: - TA-Lib Correlation: ```np.float64(0.9506743353852364)``` - - Tip: - Corrective contributions welcome! - """ - # Validate - length = v_pos_default(length, 14) - _length = length + 1 - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - scalar = v_scalar(scalar, 100) - mamode = v_mamode(mamode, "ema") - mode_tal = v_talib(talib) - prenan = v_bool(prenan, False) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import NATR - natr = NATR(high, low, close, length) - else: - natr = (scalar / close) * \ - atr( - high=high, low=low, close=close, length=length, - mamode=mamode, drift=drift, talib=mode_tal, - prenan=prenan, offset=offset, **kwargs - ) - - # Offset - if offset != 0: - natr = natr.shift(offset) - - # Fill - if "fillna" in kwargs: - natr.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - natr.name = f"NATR_{length}" - natr.category = "volatility" - - return natr diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/pdist.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/pdist.py deleted file mode 100644 index f4193288..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/pdist.py +++ /dev/null @@ -1,67 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import non_zero_range, v_drift, v_offset, v_series - - - -def pdist( - open_: Series, high: Series, low: Series, close: Series, - drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Price Distance - - This indicator attempts to quantify the magnitude covered by - price movements. - - Sources: - * [prorealcode](https://www.prorealcode.com/prorealtime-indicators/pricedistance/) - - Parameters: - open_ (Series): ```open``` Series - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - drift = v_drift(drift) - open_ = v_series(open_) - high = v_series(high) - low = v_series(low) - close = v_series(close) - offset = v_offset(offset) - - # Calculate - pdist = 2 * non_zero_range(high, low) - if all(isnan(pdist)): - return # Emergency Break - - pdist += non_zero_range(open_, close.shift(drift)).abs() - pdist -= non_zero_range(close, open_).abs() - - if all(isnan(pdist)): - return # Emergency Break - - # Offset - if offset != 0: - pdist = pdist.shift(offset) - - # Fill - if "fillna" in kwargs: - pdist.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - pdist.name = "PDIST" - pdist.category = "volatility" - - return pdist diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/rvi.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/rvi.py deleted file mode 100644 index 1f58af32..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/rvi.py +++ /dev/null @@ -1,117 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.ma import ma -from pandas_ta.statistics import stdev -from pandas_ta.utils import ( - unsigned_differences, - v_bool, - v_drift, - v_mamode, - v_offset, - v_pos_default, - v_series -) - - - -def _rvi(source, length, scalar, mode, drift): - std = stdev(source, length) - pos, neg = unsigned_differences(source, drift) - - pos_std = pos * std - neg_std = neg * std - - pos_avg = ma(mode, pos_std, length=length) - neg_avg = ma(mode, neg_std, length=length) - - result = scalar * pos_avg / (pos_avg + neg_avg) - return result - - -def rvi( - close: Series, high: Series = None, low: Series = None, - length: Int = None, scalar: IntFloat = None, - refined: bool = None, thirds: bool = None, - mamode: str = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Relative Volatility Index - - This indicator attempts to quantify volatility using standard deviation. - - Sources: - * [motivewave](https://www.motivewave.com/studies/relative_volatility_index.htm) - * [tradingview A](https://www.tradingview.com/script/mLZJqxKn-Relative-Volatility-Index/) - * [tradingview B](https://www.tradingview.com/support/solutions/43000594684-relative-volatility-index/) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - length (int): The period. Default: ```14``` - scalar (float): Bands scalar. Default: ```100``` - refined (bool): Use 'refined' calculation which is the average of - RVI(high) and RVI(low) instead of RVI(close). Default: ```False``` - thirds (bool): Average of ```high```, ```low``` and ```close```. - Default: ```False``` - mamode (str): See ```help(ta.ma)```. Default: ```"ema"``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3 columns - """ - # Validate - length = v_pos_default(length, 14) - close = v_series(close, length + 2) - - if close is None: - return - - scalar = v_pos_default(scalar, 100) - refined = v_bool(refined, False) - thirds = v_bool(thirds, False) - mamode = v_mamode(mamode, "ema") - drift = v_drift(drift) - offset = v_offset(offset) - - if refined or thirds: - high = v_series(high) - low = v_series(low) - - # Calculate - _mode = "" - if refined: - high_rvi = _rvi(high, length, scalar, mamode, drift) - low_rvi = _rvi(low, length, scalar, mamode, drift) - rvi = 0.5 * (high_rvi + low_rvi) - _mode = "r" - elif thirds: - high_rvi = _rvi(high, length, scalar, mamode, drift) - low_rvi = _rvi(low, length, scalar, mamode, drift) - close_rvi = _rvi(close, length, scalar, mamode, drift) - rvi = (high_rvi + low_rvi + close_rvi) / 3.0 - _mode = "t" - else: - rvi = _rvi(close, length, scalar, mamode, drift) - - if all(isnan(rvi)): - return # Emergency Break - - # Offset - if offset != 0: - rvi = rvi.shift(offset) - - # Fill - if "fillna" in kwargs: - rvi.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - rvi.name = f"RVI{_mode}_{length}" - rvi.category = "volatility" - - return rvi diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/thermo.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/thermo.py deleted file mode 100644 index e44bcdbf..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/thermo.py +++ /dev/null @@ -1,111 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.utils import ( - v_bool, - v_drift, - v_mamode, - v_offset, - v_pos_default, - v_series -) - - - -def thermo( - high: Series, low: Series, length: Int = None, - long: Int = None, short: Int = None, - mamode: str = None, asint: bool = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Elders Thermometer - - This indicator, by Dr Alexander Elder, attempts to quantify volatility. - - Sources: - * [motivewave](https://www.motivewave.com/studies/elders_thermometer.htm) - * [tradingview](https://www.tradingview.com/script/HqvTuEMW-Elder-s-Market-Thermometer-LazyBear/) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - length (int): The period. Default: ```20``` - long (int): Buy factor. Default: ```2``` - short (float): Sell factor. Default: ```0.5``` - mamode (str): See ```help(ta.ma)```. Default: ```"ema"``` - asint (int): Returns as int. Default: ```True``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 4 columns - """ - # Validate - length = v_pos_default(length, 20) - high = v_series(high, length + 1) - low = v_series(low, length + 1) - - if high is None or low is None: - return - - long = v_pos_default(long, 2) - short = v_pos_default(short, 0.5) - mamode = v_mamode(mamode, "ema") - asint = v_bool(asint, True) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - thermoL = (low.shift(drift) - low).abs() - thermoH = (high - high.shift(drift)).abs() - - thermo = thermoL - thermo = thermo.where(thermoH < thermoL, thermoH) - thermo.index = high.index - - thermo_ma = ma(mamode, thermo, length=length) - thermo_long = thermo < (thermo_ma * long) - thermo_short = thermo > (thermo_ma * short) - - if asint: - thermo_long = thermo_long.astype(int) - thermo_short = thermo_short.astype(int) - - # Offset - if offset != 0: - thermo = thermo.shift(offset) - thermo_ma = thermo_ma.shift(offset) - thermo_long = thermo_long.shift(offset) - thermo_short = thermo_short.shift(offset) - - # Fill - if "fillna" in kwargs: - thermo.fillna(kwargs["fillna"], inplace=True) - thermo_ma.fillna(kwargs["fillna"], inplace=True) - thermo_long.fillna(kwargs["fillna"], inplace=True) - thermo_short.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{length}_{long}_{short}" - thermo.name = f"THERMO{_props}" - thermo_ma.name = f"THERMOma{_props}" - thermo_long.name = f"THERMOl{_props}" - thermo_short.name = f"THERMOs{_props}" - thermo.category = thermo_ma.category = "volatility" - thermo_long.category = thermo_short.category = thermo.category - - data = { - thermo.name: thermo, - thermo_ma.name: thermo_ma, - thermo_long.name: thermo_long, - thermo_short.name: thermo_short - } - df = DataFrame(data, index=high.index) - df.name = f"THERMO{_props}" - df.category = thermo.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/true_range.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/true_range.py deleted file mode 100644 index daac99cb..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/true_range.py +++ /dev/null @@ -1,94 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan, nan -from pandas import Series, concat -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - non_zero_range, - v_bool, - v_drift, - v_offset, - v_series, - v_talib -) - - - -def true_range( - high: Series, low: Series, close: Series, - talib: bool = None, prenan: bool = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """True Range - - This indicator attempts to quantify a High-Low range including potential - gap scenarios. - - Sources: - * [macroption](https://www.macroption.com/true-range/) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - talib (bool): If installed, use TA Lib. Default: ```True``` - prenan (bool): Sets initial values to ```nan``` based - on ```drift```. Default: ```False``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Warning: - TA-Lib Correlation: ```np.float64(0.9999999999999999)``` - - Tip: - Corrective contributions welcome! - """ - # Validate - _length = 1 - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - - if high is None or low is None or close is None: - return - - mode_tal = v_talib(talib) - prenan = v_bool(prenan, False) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import TRANGE - true_range = TRANGE(high, low, close) - else: - hl_range = non_zero_range(high, low) - pc = close.shift(drift) - ranges = [hl_range, high - pc, pc - low] - true_range = concat(ranges, axis=1) - true_range = true_range.abs().max(axis=1) - if prenan: - true_range.iloc[:drift] = nan - - if all(isnan(true_range)): - return # Emergency Break - - # Offset - if offset != 0: - true_range = true_range.shift(offset) - - # Fill - if "fillna" in kwargs: - true_range.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - true_range.name = f"TRUERANGE_{drift}" - true_range.category = "volatility" - - return true_range diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/ui.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/ui.py deleted file mode 100644 index 494bca8b..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volatility/ui.py +++ /dev/null @@ -1,73 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import sqrt -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.overlap import sma -from pandas_ta.utils import v_offset, v_pos_default, v_series - - - -def ui( - close: Series, length: Int = None, scalar: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Ulcer Index - - This indicator, by Peter Martin, attempts to quantify downside volatility - with a Quadratic Mean. - - Sources: - * [tangotools](http://www.tangotools.com/ui/ui.htm) - * [tradingtechnologies](https://library.tradingtechnologies.com/trade/chrt-ti-ulcer-index.html) - * [wikipedia](https://en.wikipedia.org/wiki/Ulcer_index) - - Parameters: - close (Series): ```close``` Series - length (int): The period. Default: ```14``` - scalar (float): Bands scalar. Default: ```100``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - everget (value): Use Evergets' TradingView SMA. - Default: ```False``` - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 14) - scalar = v_pos_default(scalar, 100) - close = v_series(close, 2 * length - 1) - - if close is None: - return - - offset = v_offset(offset) - - # Calculate - highest_close = close.rolling(length).max() - downside = scalar * (close - highest_close) / highest_close - d2 = downside * downside - - everget = kwargs.pop("everget", False) - if everget: - # Everget uses SMA instead of SUM for calculation - _ui = sma(d2, length) - else: - _ui = d2.rolling(length).sum() - ui = sqrt(_ui / length) - - # Offset - if offset != 0: - ui = ui.shift(offset) - - # Fill - if "fillna" in kwargs: - ui.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - ui.name = f"UI{'' if not everget else 'e'}_{length}" - ui.category = "volatility" - - return ui diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/__init__.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/__init__.py deleted file mode 100644 index 6f6575e9..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/__init__.py +++ /dev/null @@ -1,44 +0,0 @@ -# -*- coding: utf-8 -*- -from .ad import ad -from .adosc import adosc -from .aobv import aobv -from .cmf import cmf -from .efi import efi -from .eom import eom -from .kvo import kvo -from .mfi import mfi -from .nvi import nvi -from .obv import obv -from .pvi import pvi -from .pvo import pvo -from .pvol import pvol -from .pvr import pvr -from .pvt import pvt -from .tsv import tsv -from .vhm import vhm -from .vp import vp -from .vwap import vwap -from .vwma import vwma - -__all__ = [ - "ad", - "adosc", - "aobv", - "cmf", - "efi", - "eom", - "kvo", - "mfi", - "nvi", - "obv", - "pvi", - "pvo", - "pvol", - "pvr", - "pvt", - "tsv", - "vhm", - "vp", - "vwap", - "vwma", -] diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/ad.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/ad.py deleted file mode 100644 index e7f4a678..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/ad.py +++ /dev/null @@ -1,72 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import non_zero_range, v_offset, v_series, v_talib - - - -def ad( - high: Series, low: Series, close: Series, volume: Series, - open_: Series = None, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Accumulation/Distribution - - This indicator attempts to quantify accumulation/distribution from a - relative position within it's High-Low range and volume. - - Sources: - * [tradingtechnologies](https://www.tradingtechnologies.com/help/x-study/technical-indicator-definitions/accumulationdistribution-ad/) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - volume (Series): ```volume``` Series - open_ (Series): Optional ```open``` Series - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - high = v_series(high) - low = v_series(low) - close = v_series(close) - volume = v_series(volume) - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal and volume.size: - from talib import AD - ad = AD(high, low, close, volume) - else: - if open_ is not None: - open_ = v_series(open_) - ad = non_zero_range(close, open_) # AD with Open - else: - ad = 2 * close - (high + low) # AD with High, Low, Close - - high_low_range = non_zero_range(high, low) - ad *= volume / high_low_range - ad = ad.cumsum() - - # Offset - if offset != 0: - ad = ad.shift(offset) - - # Fill - if "fillna" in kwargs: - ad.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - ad.name = "AD" if open_ is None else "ADo" - ad.category = "volume" - - return ad diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/adosc.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/adosc.py deleted file mode 100644 index f7dccd47..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/adosc.py +++ /dev/null @@ -1,95 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.overlap import ema -from pandas_ta.utils import v_offset, v_pos_default, v_series, v_talib -from pandas_ta.volume import ad - - - -def adosc( - high: Series, low: Series, close: Series, volume: Series, - open_: Series = None, fast: Int = None, slow: Int = None, - talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Accumulation/Distribution Oscillator - - This indicator is an AD oscillator. It is interpreted similarly - to MACD and APO. - - Sources: - * [investopedia](https://www.investopedia.com/articles/active-trading/031914/understanding-chaikin-oscillator.asp) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - open_ (Series): ```open``` Series - volume (Series): ```volume``` Series - fast (int): Fast MA period. Default: ```12``` - slow (int): Slow MA period. Default: ```26``` - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - Also known as Chaikin Oscillator - - Warning: - TA-Lib Correlation: ```np.float64(0.9989721423605135)``` - - Tip: - Corrective contributions welcome! - """ - # Validate - fast = v_pos_default(fast, 3) - slow = v_pos_default(slow, 10) - _length = max(fast, slow) - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - volume = v_series(volume, _length) - - if high is None or low is None or close is None or volume is None: - return - - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import ADOSC - adosc = ADOSC(high, low, close, volume, fast, slow) - else: - # remove length so it doesn't override ema length - if "length" in kwargs: - kwargs.pop("length") - - ad_ = ad( - high=high, low=low, close=close, volume=volume, - open_=open_, talib=mode_tal - ) - fast_ad = ema(close=ad_, length=fast, **kwargs, talib=mode_tal) - slow_ad = ema(close=ad_, length=slow, **kwargs, talib=mode_tal) - adosc = fast_ad - slow_ad - - # Offset - if offset != 0: - adosc = adosc.shift(offset) - - # Fill - if "fillna" in kwargs: - adosc.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - adosc.name = f"ADOSC_{fast}_{slow}" - adosc.category = "volume" - - return adosc diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/aobv.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/aobv.py deleted file mode 100644 index f850c05c..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/aobv.py +++ /dev/null @@ -1,113 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.trend.long_run import long_run -from pandas_ta.trend.short_run import short_run -from pandas_ta.utils import v_mamode, v_offset, v_pos_default, v_series -from .obv import obv - - - -def aobv( - close: Series, volume: Series, fast: Int = None, slow: Int = None, - max_lookback: Int = None, min_lookback: Int = None, - mamode: str = None, run_length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Archer On Balance Volume - - This indicator, by Kevin Johnson, attempts to identify OBV trends using - two moving averages. It also attempts to identify if the moving averages - are in a long_run or short_run. Finally, it also calculates the rolling - maximum and minimum of OBV. - - Sources: - * Kevin Johnson - * [tradingview](https://www.tradingview.com/script/Co1ksara-Trade-Archer-On-balance-Volume-Moving-Averages-v1/) - - Parameters: - close (Series): ```close``` Series - volume (Series): ```volume``` Series - fast (int): Fast MA period. Default: ```4``` - slow (int): Slow MA period. Default: ```12``` - max_lookback (int): Maximum OBV period. Default: ```2``` - min_lookback (int): Minimum OBV period. Default: ```2``` - run_length (int): Long and short run period. Default: ```2``` - mamode (str): See ```help(ta.ma)```. Default: ```"ema"``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 6 columns - - Note: - * [long_run](../api/trend.md/#src.pandas_ta.trend.long_run.long_run) - * [short_run](../api/trend.md/#src.pandas_ta.trend.short_run.short_run) - """ - # Validate - fast = v_pos_default(fast, 4) - slow = v_pos_default(slow, 12) - min_lookback = v_pos_default(min_lookback, 2) - max_lookback = v_pos_default(max_lookback, 2) - - if slow < fast: - fast, slow = slow, fast - _length = max(max_lookback, min_lookback) + slow - - close = v_series(close, _length) - volume = v_series(volume, _length) - - if close is None or volume is None: - return - - mamode = v_mamode(mamode, "ema") - run_length = v_pos_default(run_length, 2) - offset = v_offset(offset) - # remove length so it doesn't override ema length - if "length" in kwargs: - kwargs.pop("length") - - # Calculate - obv_ = obv(close=close, volume=volume, **kwargs) - maf = ma(mamode, obv_, length=fast, **kwargs) - mas = ma(mamode, obv_, length=slow, **kwargs) - - obv_long = long_run(maf, mas, length=run_length) - obv_short = short_run(maf, mas, length=run_length) - - # Offset - if offset != 0: - obv_ = obv_.shift(offset) - maf = maf.shift(offset) - mas = mas.shift(offset) - obv_long = obv_long.shift(offset) - obv_short = obv_short.shift(offset) - - # Fill - if "fillna" in kwargs: - obv_.fillna(kwargs["fillna"], inplace=True) - maf.fillna(kwargs["fillna"], inplace=True) - mas.fillna(kwargs["fillna"], inplace=True) - obv_long.fillna(kwargs["fillna"], inplace=True) - obv_short.fillna(kwargs["fillna"], inplace=True) - - _mode = mamode.lower()[0] if len(mamode) else "" - data = { - obv_.name: obv_, - f"OBV_min_{min_lookback}": obv_.rolling(min_lookback).min(), - f"OBV_max_{max_lookback}": obv_.rolling(max_lookback).max(), - f"OBV{_mode}_{fast}": maf, - f"OBV{_mode}_{slow}": mas, - f"AOBV_LR_{run_length}": obv_long, - f"AOBV_SR_{run_length}": obv_short - } - df = DataFrame(data, index=close.index) - - # Name and Category - df.name = f"AOBV{_mode}_{fast}_{slow}_{min_lookback}_{max_lookback}_{run_length}" - df.category = "volume" - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/cmf.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/cmf.py deleted file mode 100644 index 2c83b4b3..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/cmf.py +++ /dev/null @@ -1,79 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import non_zero_range, v_offset, v_pos_default, v_series - - - -def cmf( - high: Series, low: Series, close: Series, volume: Series, - open_: Series = None, length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Chaikin Money Flow - - This indicator attempts to quantify money flow. - - Sources: - * [stockcharts](https://stockcharts.com/school/doku.php?id=chart_school:technical_indicators:chaikin_money_flow_cmf) - * [tradingview](https://www.tradingview.com/wiki/Chaikin_Money_Flow_(CMF)) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - volume (Series): ```volume``` Series - length (int): The period. Default: ```20``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - open_ (Series): Optional ```open``` Series. Default: ```None``` - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - Commonly used with Accumulation/Distribution [ad](volume.md/#src.pandas_ta.volume.ad.ad) - """ - # Validate - length = v_pos_default(length, 20) - if "min_periods" in kwargs and kwargs["min_periods"] is not None: - min_periods = int(kwargs["min_periods"]) - else: - min_periods = length - _length = max(length, min_periods) - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - volume = v_series(volume, _length) - - if high is None or low is None or close is None or volume is None: - return - - offset = v_offset(offset) - - # Calculate - if open_ is not None: - open_ = v_series(open_) - ad = non_zero_range(close, open_) # AD with Open - else: - ad = 2 * close - (high + low) # AD with High, Low, Close - - ad *= volume / non_zero_range(high, low) - cmf = ad.rolling(length, min_periods=min_periods).sum() \ - / volume.rolling(length, min_periods=min_periods).sum() - - # Offset - if offset != 0: - cmf = cmf.shift(offset) - - # Fill - if "fillna" in kwargs: - cmf.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - cmf.name = f"CMF_{length}" - cmf.category = "volume" - - return cmf diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/efi.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/efi.py deleted file mode 100644 index 314007fe..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/efi.py +++ /dev/null @@ -1,71 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.utils import ( - v_drift, - v_mamode, - v_offset, - v_pos_default, - v_series -) - - - -def efi( - close: Series, volume: Series, length: Int = None, - mamode: str = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Elder's Force Index - - This indicator attempts to quantify movement magnitude as well as - potential reversals and price corrections. - - Sources: - * [motivewave](https://www.motivewave.com/studies/elders_force_index.htm) - * [tradingview](https://www.tradingview.com/wiki/Elder%27s_Force_Index_(EFI)) - - Parameters: - close (Series): ```close``` Series - volume (Series): ```volume``` Series - length (int): The period. Default: ```13``` - mamode (str): See ```help(ta.ma)```. Default: ```"ema"``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 13) - close = v_series(close, length) - volume = v_series(volume, length) - - if close is None or volume is None: - return - - mamode = v_mamode(mamode, "ema") - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - pv_diff = close.diff(drift) * volume - efi = ma(mamode, pv_diff, length=length) - - # Offset - if offset != 0: - efi = efi.shift(offset) - - # Fill - if "fillna" in kwargs: - efi.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - efi.name = f"EFI_{length}" - efi.category = "volume" - - return efi diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/eom.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/eom.py deleted file mode 100644 index 31dd49ed..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/eom.py +++ /dev/null @@ -1,82 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.overlap import hl2, sma -from pandas_ta.utils import ( - non_zero_range, - v_drift, - v_pos_default, - v_offset, - v_series -) - - - -def eom( - high: Series, low: Series, close: Series, volume: Series, - length: Int = None, divisor: IntFloat= None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Ease of Movement - - This indicator is an oscillator that attempts to quantify the relationship - with HLC and volume. - - Sources: - * [motivewave](https://www.motivewave.com/studies/ease_of_movement.htm) - * [stockcharts](https://stockcharts.com/school/doku.php?id=chart_school:technical_indicators:ease_of_movement_emv) - * [tradingview](https://www.tradingview.com/wiki/Ease_of_Movement_(EOM)) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - volume (Series): ```volume``` Series - length (int): The period. Default: ```14``` - divisor (float): Divisor. Default: ```100_000_000``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 14) - _length = length + 1 - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - volume = v_series(volume, _length) - - if high is None or low is None or close is None or volume is None: - return - - divisor = v_pos_default(divisor, 100_000_000) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - hl_range = non_zero_range(high, low) - distance = hl2(high=high, low=low) - distance -= hl2(high=high.shift(drift), low=low.shift(drift)) - box_ratio = volume / divisor - box_ratio /= hl_range - eom = distance / box_ratio - eom = sma(eom, length=length) - - # Offset - if offset != 0: - eom = eom.shift(offset) - - # Fill - if "fillna" in kwargs: - eom.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - eom.name = f"EOM_{length}_{divisor}" - eom.category = "volume" - - return eom diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/kvo.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/kvo.py deleted file mode 100644 index 83c41057..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/kvo.py +++ /dev/null @@ -1,100 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.overlap import hlc3 -from pandas_ta.utils import ( - signed_series, - v_drift, - v_mamode, - v_offset, - v_pos_default, - v_series -) - - - -def kvo( - high: Series, low: Series, close: Series, volume: Series, - fast: Int = None, slow: Int = None, signal: Int = None, - mamode: str = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Klinger Volume Oscillator - - This indicator, by Stephen J. Klinger., attempts to predict - price reversals. - - Sources: - * [daytrading](https://www.daytrading.com/klinger-volume-oscillator) - * [investopedia](https://www.investopedia.com/terms/k/klingeroscillator.asp) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - volume (Series): ```volume``` Series - fast (int): Fast MA period. Default: ```34``` - slow (int): Slow MA period. Default: ```55``` - signal (int): Signal period. Default: ```13``` - mamode (str): See ```help(ta.ma)```. Default: ```"ema"``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - """ - # Validate - fast = v_pos_default(fast, 34) - slow = v_pos_default(slow, 55) - signal = v_pos_default(signal, 13) - _length = max(fast, slow) + signal - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - volume = v_series(volume, _length) - - if high is None or low is None or close is None or volume is None: - return - - mamode = v_mamode(mamode, "ema") - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - signed_volume = volume * signed_series(hlc3(high, low, close), -1) - sv = signed_volume.loc[signed_volume.first_valid_index():, ] - - kvo = ma(mamode, sv, length=fast) - ma(mamode, sv, length=slow) - if kvo is None or all(isnan(kvo.to_numpy())): - return # Emergency Break - - kvo_signal = ma(mamode, kvo.loc[kvo.first_valid_index():, ], length=signal) - if kvo_signal is None or all(isnan(kvo_signal.to_numpy())): - return # Emergency Break - - # Offset - if offset != 0: - kvo = kvo.shift(offset) - kvo_signal = kvo_signal.shift(offset) - - # Fill - if "fillna" in kwargs: - kvo.fillna(kwargs["fillna"], inplace=True) - kvo_signal.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{fast}_{slow}_{signal}" - kvo.name = f"KVO{_props}" - kvo_signal.name = f"KVOs{_props}" - kvo.category = kvo_signal.category = "volume" - - data = {kvo.name: kvo, kvo_signal.name: kvo_signal} - df = DataFrame(data, index=close.index) - df.name = f"KVO{_props}" - df.category = kvo.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/mfi.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/mfi.py deleted file mode 100644 index 927943a2..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/mfi.py +++ /dev/null @@ -1,97 +0,0 @@ -# -*- coding: utf-8 -*- -from sys import float_info as sflt -from numpy import convolve, maximum, nan, ones, roll, where -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import ( - v_drift, - v_offset, - v_pos_default, - v_series, - v_talib -) - - - -def mfi( - high: Series, low: Series, close: Series, volume: Series, - length: Int = None, talib: bool = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Money Flow Index - - This indicator is an oscillator that attempts to quantify buying and - selling pressure. - - Sources: - * [tradingview](https://www.tradingview.com/wiki/Money_Flow_(MFI)) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - volume (Series): ```volume``` Series - length (int): The period. Default: ```14``` - talib (bool): If installed, use TA Lib. Default: ```True``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Warning: - TA-Lib Correlation: ```np.float64(0.9959302104966524)``` - - Tip: - Corrective contributions welcome! - """ - # Validate - length = v_pos_default(length, 14) - _length = length + 1 - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - volume = v_series(volume, _length) - - if high is None or low is None or close is None or volume is None: - return - - mode_tal = v_talib(talib) - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import MFI - mfi = MFI(high, low, close, volume, length) - else: - m, _ones = close.size, ones(length) - - tp = (high.to_numpy() + low.to_numpy() + close.to_numpy()) / 3.0 - smf = tp * volume.to_numpy() * where(tp > roll(tp, shift=drift), 1, -1) - - pos, neg = maximum(smf, 0), maximum(-smf, 0) - avg_gain, avg_loss = convolve(pos, _ones)[:m], convolve(neg, _ones)[:m] - - _mfi = (100.0 * avg_gain) / (avg_gain + avg_loss + sflt.epsilon) - _mfi[:length] = nan - - mfi = Series(_mfi, index=close.index) - - # Offset - if offset != 0: - mfi = mfi.shift(offset) - - # Fill - if "fillna" in kwargs: - mfi.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - mfi.name = f"MFI_{length}" - mfi.category = "volume" - - return mfi diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/nvi.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/nvi.py deleted file mode 100644 index 19678912..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/nvi.py +++ /dev/null @@ -1,68 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.momentum import roc -from pandas_ta.utils import signed_series, v_offset, v_pos_default, v_series - - - -def nvi( - close: Series, volume: Series, length: Int = None, initial: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Negative Volume Index - - This indicator attempts to identify where smart money is active. - - Sources: - * [motivewave](https://www.motivewave.com/studies/negative_volume_index.htm) - * [stockcharts](https://stockcharts.com/school/doku.php?id=chart_school:technical_indicators:negative_volume_inde) - - Parameters: - close (Series): ```close``` Series - volume (Series): ```volume``` Series - length (int): The period. Default: ```13``` - initial (int): Initial value. Default: ```1000``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: - Commonly paired with [pvi](volume.md/#src.pandas_ta.volume.pvi.pvi) - """ - # Validate - length = v_pos_default(length, 1) - close = v_series(close, length + 1) - volume = v_series(volume, length + 1) - - if close is None or volume is None: - return - - initial = v_pos_default(initial, 1000) - offset = v_offset(offset) - - # Calculate - roc_ = roc(close=close, length=length) - signed_volume = signed_series(volume, 1) - nvi = signed_volume[signed_volume < 0].abs() * roc_ - nvi.fillna(0, inplace=True) - nvi.iloc[0] = initial - nvi = nvi.cumsum() - - # Offset - if offset != 0: - nvi = nvi.shift(offset) - - # Fill - if "fillna" in kwargs: - nvi.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - nvi.name = f"NVI_{length}" - nvi.category = "volume" - - return nvi diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/obv.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/obv.py deleted file mode 100644 index 3f60057e..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/obv.py +++ /dev/null @@ -1,65 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.maps import Imports -from pandas_ta.utils import signed_series, v_offset, v_series, v_talib - - - -def obv( - close: Series, volume: Series, talib: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """On Balance Volume - - This indicator attempts to quantify buying and selling pressure. - - Sources: - * [motivewave](https://www.motivewave.com/studies/on_balance_volume.htm) - * [tradingtechnologies](https://www.tradingtechnologies.com/help/x-study/technical-indicator-definitions/on-balance-volume-obv/) - * [tradingview](https://www.tradingview.com/wiki/On_Balance_Volume_(OBV)) - - Parameters: - close (Series): ```close``` Series - volume (Series): ```volume``` Series - talib (bool): If installed, use TA Lib. Default: ```True``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - _length = 1 - close = v_series(close, _length) - volume = v_series(volume, _length) - - if close is None or volume is None: - return - - mode_tal = v_talib(talib) - offset = v_offset(offset) - - # Calculate - if Imports["talib"] and mode_tal: - from talib import OBV - obv = OBV(close, volume) - else: - sv = signed_series(close, initial=1) * volume - obv = sv.cumsum() - - # Offset - if offset != 0: - obv = obv.shift(offset) - - # Fill - if "fillna" in kwargs: - obv.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - obv.name = f"OBV" - obv.category = "volume" - - return obv diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvi.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvi.py deleted file mode 100644 index 522529b2..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvi.py +++ /dev/null @@ -1,111 +0,0 @@ -# -*- coding: utf-8 -*- -from numba import njit -from numpy import float64, zeros_like -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.utils import ( - v_bool, - v_mamode, - v_offset, - v_pos_default, - v_series -) - - -@njit(cache=True) -def nb_pvi(np_close, np_volume, initial): - result = zeros_like(np_close, dtype=float64) - result[0] = initial - - m = np_close.size - for i in range(1, m): - if np_volume[i] > np_volume[i - 1]: - result[i] = result[i - i] * (np_close[i] / np_close[i - 1]) - else: - result[i] = result[i - i] - - return result - - - -def pvi( - close: Series, volume: Series, length: Int = None, initial: Int = None, - mamode: str = None, overlay: bool = None, offset: Int = None, - **kwargs: DictLike -) -> DataFrame: - """Positive Volume Index - - This indicator attempts to identify where smart money is active. - - Sources: - * [investopedia](https://www.investopedia.com/terms/p/pvi.asp) - * [sierrachart](https://www.sierrachart.com/index.php?page=doc/StudiesReference.php&ID=101) - - Parameters: - close (Series): ```close``` Series - volume (Series): ```volume``` Series - length (int): The period. Default: ```255``` - initial (int): Initial value. Default: ```100``` - mamode (str): See ```help(ta.ma)```. Default: ```"ema"``` - overlay (bool): Overlay ```initial```. Default: ```False``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 2 columns - - Note: - Commonly paired with [nvi](volume.md/#src.pandas_ta.volume.nvi.nvi) - """ - # Validate - length = v_pos_default(length, 255) - close = v_series(close, length + 1) - volume = v_series(volume, length + 1) - - if close is None or volume is None: - return - - mamode = v_mamode(mamode, "ema") - overlay = v_bool(overlay, False) - if overlay: - initial = close.iloc[0] - initial = v_pos_default(initial, 100) - offset = v_offset(offset) - - # Calculate - np_close, np_volume = close.to_numpy(), volume.to_numpy() - _pvi = nb_pvi(np_close, np_volume, initial) - - pvi = Series(_pvi, index=close.index) - pvi_ma = ma(mamode, pvi, length=length) - - # Offset - if offset != 0: - pvi = pvi.shift(offset) - pvi_ma = pvi_ma.shift(offset) - - # Fill - if "fillna" in kwargs: - pvi.fillna(kwargs["fillna"], inplace=True) - pvi_ma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _mode = mamode.lower()[0] if len(mamode) else "" - _props = f"{_mode}_{length}" - pvi.name = f"PVI" - pvi_ma.name = f"PVI{_props}" - pvi.category = pvi_ma.category = "volume" - - data = { pvi.name: pvi} - if np_close.size > length + 1: - data[pvi_ma.name] = pvi_ma - df = DataFrame(data, index=close.index) - - # Name and Category - df.name = pvi.name - df.category = pvi.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvo.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvo.py deleted file mode 100644 index 52df1424..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvo.py +++ /dev/null @@ -1,81 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, IntFloat -from pandas_ta.overlap import ema -from pandas_ta.utils import v_offset, v_pos_default, v_scalar, v_series - - - -def pvo( - volume: Series, fast: Int = None, slow: Int = None, - signal: Int = None, scalar: IntFloat = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Percentage Volume Oscillator - - This indicator is a volume momentum oscillator. - - Sources: - * [fmlabs](https://www.fmlabs.com/reference/default.htm?url=PVO.htm) - - Parameters: - volume (Series): ```volume``` Series - fast (int): Fast MA period. Default: ```12``` - slow (int): Slow MA period. Default: ```26``` - signal (int): Signal period. Default: ```9``` - scalar (float): Scalar. Default: ```100``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3 columns - """ - # Validate - fast = v_pos_default(fast, 12) - slow = v_pos_default(slow, 26) - signal = v_pos_default(signal, 9) - if slow < fast: - fast, slow = slow, fast - volume = v_series(volume, max(fast, slow, signal)) - - if volume is None: - return - - scalar = v_scalar(scalar, 100) - offset = v_offset(offset) - - # Calculate - fastma = ema(volume, length=fast) - slowma = ema(volume, length=slow) - pvo = scalar * (fastma - slowma) / slowma - - signalma = ema(pvo, length=signal) - histogram = pvo - signalma - - # Offset - if offset != 0: - pvo = pvo.shift(offset) - histogram = histogram.shift(offset) - signalma = signalma.shift(offset) - - # Fill - if "fillna" in kwargs: - pvo.fillna(kwargs["fillna"], inplace=True) - histogram.fillna(kwargs["fillna"], inplace=True) - signalma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{fast}_{slow}_{signal}" - pvo.name = f"PVO{_props}" - histogram.name = f"PVOh{_props}" - signalma.name = f"PVOs{_props}" - pvo.category = histogram.category = signalma.category = "momentum" - - data = {pvo.name: pvo, histogram.name: histogram, signalma.name: signalma} - df = DataFrame(data, index=volume.index) - df.name = pvo.name - df.category = pvo.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvol.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvol.py deleted file mode 100644 index 87e65d7b..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvol.py +++ /dev/null @@ -1,51 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import signed_series, v_bool, v_offset, v_series - - - -def pvol( - close: Series, volume: Series, signed: bool = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Price-Volume - - This indicator returns the product of Price & Volume (Price * Volume). - - Parameters: - close (Series): ```close``` Series - volume (Series): ```volume``` Series - signed (bool): Return with signs. Default: ```False``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - close = v_series(close) - volume = v_series(volume) - signed = v_bool(signed, False) - offset = v_offset(offset) - - # Calculate - pvol = close * volume - if signed: - pvol *= signed_series(close, 1) - - # Offset - if offset != 0: - pvol = pvol.shift(offset) - - # Fill - if "fillna" in kwargs: - pvol.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - pvol.name = f"PVOL" - pvol.category = "volume" - - return pvol diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvr.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvr.py deleted file mode 100644 index 30060cb5..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvr.py +++ /dev/null @@ -1,58 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import nan -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import v_drift, v_series - - - -def pvr( - close: Series, volume: Series, - drift: Int = None, **kwargs: DictLike -) -> Series: - """Price Volume Rank - - This indicator, by Anthony J. Macek, is a simple rank computation with - close and volume values. - - Sources: - * Anthony J. Macek, June, 1994 issue of Technical Analysis of - Stocks & Commodities (TASC) Magazine - * [fmlabs](https://www.fmlabs.com/reference/default.htm?url=PVrank.htm) - - Parameters: - close (Series): ```close``` Series - volume (Series): ```volume``` Series - drift (int): Difference amount. Default: ```1``` - - Returns: - (Series): 1 column - - Note: Signals - - Buy < 2.5 - - Sell > 2.5 - """ - # Validate - drift = v_drift(drift) - close = v_series(close, drift) - volume = v_series(volume, drift) - - if close is None or volume is None: - return - - # Calculate - close_diff = close.diff(drift).fillna(0) - volume_diff = volume.diff(drift).fillna(0) - - pvr = Series(nan, index=close.index) - - pvr.loc[(close_diff >= 0) & (volume_diff >= 0)] = 1 - pvr.loc[(close_diff >= 0) & (volume_diff < 0)] = 2 - pvr.loc[(close_diff < 0) & (volume_diff >= 0)] = 3 - pvr.loc[(close_diff < 0) & (volume_diff < 0)] = 4 - - # Name and Category - pvr.name = f"PVR" - pvr.category = "volume" - - return pvr diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvt.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvt.py deleted file mode 100644 index 5eb43ed3..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/pvt.py +++ /dev/null @@ -1,59 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.momentum import roc -from pandas_ta.utils import v_drift, v_offset, v_series - - - -def pvt( - close: Series, volume: Series, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Price-Volume Trend - - This indicator attempts to quantify money flow. - - Sources: - * [tradingview](https://www.tradingview.com/wiki/Price_Volume_Trend_(PVT)) - - Parameters: - close (Series): ```close``` Series - volume (Series): ```volume``` Series - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - drift = v_drift(drift) - _drift = drift + 1 - close = v_series(close, _drift) - volume = v_series(volume, _drift) - - if close is None or volume is None: - return - - offset = v_offset(offset) - - # Calculate - pv = roc(close=close, length=drift) * volume - pvt = pv.cumsum() - - # Offset - if offset != 0: - pvt = pvt.shift(offset) - - # Fill - if "fillna" in kwargs: - pvt.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - pvt.name = f"PVT" - pvt.category = "volume" - - return pvt diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/tsv.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/tsv.py deleted file mode 100644 index 322ec695..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/tsv.py +++ /dev/null @@ -1,104 +0,0 @@ -# -*- coding: utf-8 -*- -from numpy import isnan -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.utils import ( - signed_series, - v_drift, - v_mamode, - v_pos_default, - v_offset, - v_series, - zero -) - - - -def tsv( - close: Series, volume: Series, - length: Int = None, signal: Int = None, - mamode: str = None, drift: Int = None, - offset: Int = None, **kwargs: DictLike -) -> DataFrame: - """Time Segmented Value - - This indicator, by Worden Brothers Inc., attempts to quantify the amount - of money flowing at various time segments of price and time; similar to - On Balance Volume. - - Sources: - * [tc2000](https://help.tc2000.com/m/69404/l/747088-time-segmented-volume) - * [tradingview](https://www.tradingview.com/script/6GR4ht9X-Time-Segmented-Volume/) - * [usethinkscript](https://usethinkscript.com/threads/time-segmented-volume-for-thinkorswim.519/) - - Parameters: - close (Series): ```close``` Series - volume (Series): ```volume``` Series - length (int): The period. Default: ```18``` - signal (int): Signal period. Default: ```10``` - mamode (str): See ```help(ta.ma)```. Default: ```"sma"``` - drift (int): Difference amount. Default: ```1``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 3 columns - - Note: - * The zero line is called the baseline. - * Entries and exits signals occur when crossing the baseline. - """ - # Validate - length = v_pos_default(length, 18) - signal = v_pos_default(signal, 10) - _length = max(length, signal) + 1 - close = v_series(close, _length) - - if close is None: - return - - mamode = v_mamode(mamode, "sma") - drift = v_drift(drift) - offset = v_offset(offset) - - # Calculate - signed_volume = volume * signed_series(close, 1) # > 0 - signed_volume[signed_volume < 0] = -signed_volume # < 0 - signed_volume.apply(zero) # ~ 0 - cvd = signed_volume * close.diff(drift) - - tsv = cvd.rolling(length).sum() - if all(isnan(tsv)): - return # Emergency Break - - signal_ = ma(mamode, tsv, length=signal) - ratio = tsv / signal_ - - # Offset - if offset != 0: - tsv = tsv.shift(offset) - signal_ = signal.shift(offset) - ratio = ratio.shift(offset) - - # Fill - if "fillna" in kwargs: - tsv.fillna(kwargs["fillna"], inplace=True) - signal_.fillna(kwargs["fillna"], inplace=True) - ratio.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"_{length}_{signal}" - tsv.name = f"TSV{_props}" - signal_.name = f"TSVs{_props}" - ratio.name = f"TSVr{_props}" - tsv.category = signal_.category = ratio.category = "volume" - - data = {tsv.name: tsv, signal_.name: signal_, ratio.name: ratio} - df = DataFrame(data, index=close.index) - df.name = f"TSV{_props}" - df.category = tsv.category - - return df diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/vhm.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/vhm.py deleted file mode 100644 index 1e039b5a..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/vhm.py +++ /dev/null @@ -1,76 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from statistics import pstdev -from pandas_ta._typing import DictLike, Int -from pandas_ta.ma import ma -from pandas_ta.utils import ( - v_mamode, - v_offset, - v_pos_default, - v_series -) - - - -def vhm( - volume: Series, length: Int = None, std_length = None, - mamode: str = None, offset: Int = None, **kwargs: DictLike - ) -> Series: - """Volume Heatmap - - This indicator attempts to quantify volume trend strength of - specified length. - - Sources: - * [tradingview](https://www.tradingview.com/script/unWex8N4-Heatmap-Volume-xdecow/) - - Parameters: - volume (Series): ```volume``` Series - length (int): The period. Default: ```610``` - std_length (int): Standard devation. Default: ```610``` - mamode (str): Mean MA. See ```help(ta.ma)```. Default: ```"sma"``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - - Note: Signals - - Extremely Cold: ```vhm <= -0.5``` - - Cold: ```-0.5 < vhm <= 1.0``` - - Medium: ```1.0 < vhm <= 2.5``` - - Hot: ```2.5 < vhm <= 4.0``` - - Extremely Hot: ```vhm >= 4``` - """ - # Validate - length = v_pos_default(length, 610) - std_length = v_pos_default(std_length, length) - _length = max(length, std_length) - volume = v_series(volume, _length) - - if volume is None: - return - - mamode = v_mamode(mamode, "sma") - offset = v_offset(offset) - - # Calculate - mu = ma(mamode, volume, length=length) - vhm = (volume - mu) / pstdev(volume, std_length) - - # Offset - if offset != 0: - vhm = vhm.shift(offset) - - # Fill - if "fillna" in kwargs: - vhm.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - _props = f"VHM_{length}" - vhm.name = _props if length == std_length else f"{_props}_{std_length}" - vhm.category = "volume" - - return vhm diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/vp.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/vp.py deleted file mode 100644 index 52083bb3..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/vp.py +++ /dev/null @@ -1,128 +0,0 @@ -# -*- coding: utf-8 -*- -from warnings import simplefilter -from numpy import array_split, mean, sum -from pandas import DataFrame, Series, concat, cut -from pandas_ta._typing import DictLike, Int -from pandas_ta.utils import signed_series, v_bool, v_pos_default, v_series - - - -def vp( - close: Series, volume: Series, - width: Int = None, sort: bool = None, - **kwargs: DictLike -) -> DataFrame: - """Volume Profile - - This indicator attempts to quantify volume across binned price ranges of - certain width. - - Sources: - * [ranchodinero](http://www.ranchodinero.com/volume-tpo-essentials/) - * [stockcharts](https://stockcharts.com/school/doku.php?id=chart_school:technical_indicators:volume_by_price) - * [tradingtechnologies](https://www.tradingtechnologies.com/blog/2013/05/15/volume-at-price/) - * [tradingview](https://www.tradingview.com/wiki/Volume_Profile) - - Parameters: - close (Series): ```close``` Series - volume (Series): ```volume``` Series - width (int): Source distrubution count. Default: ```10``` - sort (value): Sort ```close``` before splitting into ranges. - Default: ```False``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (DataFrame): 5 columns - - Note: - * By default, sorts by date index or chronological. - * Value Area is not calculated. - - Warning: - **Volume Profile** not a Time ```Series```. It is a volume distribution - snapshot for an arbitrary ```DateTime``` Index and thus can not be - concatenated onto the existing ```DataFrame```. - - """ - # Validate - width = v_pos_default(width, 10) - close = v_series(close, width) - volume = v_series(volume, width) - - if close is None or volume is None: - return - - sort = v_bool(sort, False) - - # Calculate - signed_price = signed_series(close, 1) - pos_volume = volume * signed_price[signed_price > 0] - pos_volume.name = volume.name - neg_volume = -volume * signed_price[signed_price < 0] - neg_volume.name = volume.name - neut_volume = volume + signed_price[signed_price == 0] - neut_volume.name = volume.name - vp = concat([close, pos_volume, neg_volume, neut_volume], axis=1) - - close_col = f"{vp.columns[0]}" - high_price_col = f"high_{close_col}" - low_price_col = f"low_{close_col}" - mean_price_col = f"mean_{close_col}" - - volume_col = f"{vp.columns[1]}" - pos_volume_col = f"pos_{volume_col}" - neg_volume_col = f"neg_{volume_col}" - neut_volume_col = f"neut_{volume_col}" - total_volume_col = f"total_{volume_col}" - vp.columns = [close_col, pos_volume_col, neg_volume_col, neut_volume_col] - - simplefilter(action="ignore", category=FutureWarning) - # sort: Sort by close before splitting into ranges. Default: False - # If False, it sorts by date index or chronological versus by price - if sort: - vp[mean_price_col] = vp[close_col] - - vpdf = vp.groupby( - cut(vp[close_col], width, include_lowest=True, precision=2), - observed=False - ).agg({ - mean_price_col: mean, - pos_volume_col: sum, - neg_volume_col: sum, - neut_volume_col: sum - }) - - vpdf[low_price_col] = [x.left for x in vpdf.index] - vpdf[high_price_col] = [x.right for x in vpdf.index] - vpdf = vpdf.reset_index(drop=True) - - vpdf = vpdf[[ - low_price_col, mean_price_col, high_price_col, - pos_volume_col, neg_volume_col, neut_volume_col - ]] - else: - vp_ranges = array_split(vp, width) - result = list({ - low_price_col: r[close_col].min(), - mean_price_col: r[close_col].mean(), - high_price_col: r[close_col].max(), - pos_volume_col: r[pos_volume_col].sum(), - neg_volume_col: r[neg_volume_col].sum(), - neut_volume_col: r[neut_volume_col].sum(), - } for r in vp_ranges) - - vpdf = DataFrame(result) - - vpdf[total_volume_col] = vpdf[pos_volume_col] + vpdf[neg_volume_col] - - # Fill - if "fillna" in kwargs: - vpdf.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - vpdf.name = f"VP_{width}" - vpdf.category = "volume" - - return vpdf diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/vwap.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/vwap.py deleted file mode 100644 index b6ca3d4c..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/vwap.py +++ /dev/null @@ -1,120 +0,0 @@ -# -*- coding: utf-8 -*- -from warnings import simplefilter -from pandas import DataFrame, Series -from pandas_ta._typing import DictLike, Int, List -from pandas_ta.overlap import hlc3 -from pandas_ta.utils import v_datetime_ordered, v_list, v_offset, v_series - - - -def vwap( - high: Series, low: Series, close: Series, volume: Series, - anchor: str = None, bands: List = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Volume Weighted Average Price - - This indicator computes the Volume Weighted Average Price. - - Sources: - * [tradingview](https://www.tradingview.com/wiki/Volume_Weighted_Average_Price_(VWAP)) - * [Trading Technologies](https://www.tradingtechnologies.com/help/x-study/technical-indicator-definitions/volume-weighted-average-price-vwap/) - * [Stockcharts](https://stockcharts.com/school/doku.php?id=chart_school:technical_indicators:vwap_intraday) - * [Sierra Chart](https://www.sierrachart.com/index.php?page=doc/StudiesReference.php&ID=108&Name=Volume_Weighted_Average_Price_-_VWAP_-_with_Standard_Deviation_Lines) - - Parameters: - high (Series): ```high``` Series - low (Series): ```low``` Series - close (Series): ```close``` Series - volume (Series): ```volume``` Series - anchor (str): VWAP Anchor. Default: ```"D"```. - bands (list): List of positive ```IntFloat``` deviations. - Default: ```[]``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series | pd.DataFrame): ```DataFrame``` when ```bands``` is set. - Default: ```Series``` - - Note: - * Commonly used with intraday charts to identify general direction. - * Depending on the index values, it will implement various - [Timeseries Offset Aliases](https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#timeseries-offset-aliases) - - Tip: - * Negative bands are computed automatically. - """ - # Validate - _length = 1 - high = v_series(high, _length) - low = v_series(low, _length) - close = v_series(close, _length) - volume = v_series(volume, _length) - - if high is None or low is None or close is None or volume is None: - return - - bands = v_list(bands) - offset = v_offset(offset) - - if anchor and isinstance(anchor, str) and len(anchor) >= 1: - anchor = anchor.upper() - else: - anchor = "D" - - typical_price = hlc3(high=high, low=low, close=close) - if not v_datetime_ordered(volume) or \ - not v_datetime_ordered(typical_price): - print("[!] VWAP requires an ordered DatetimeIndex.") - return - - # Calculate - _props = f"VWAP_{anchor}" - wp = typical_price * volume - simplefilter(action="ignore", category=UserWarning) - vwap = wp.groupby(wp.index.to_period(anchor)).cumsum() \ - / volume.groupby(volume.index.to_period(anchor)).cumsum() - - if bands and len(bands): - # Calculate vwap stdev bands - vwap_var = volume * (typical_price - vwap) ** 2 - vwap_var_sum = vwap_var \ - .groupby(vwap_var.index.to_period(anchor)).cumsum() - vwap_volume_sum = volume \ - .groupby(volume.index.to_period(anchor)).cumsum() - std_volume_weighted = (vwap_var_sum / vwap_volume_sum) ** 0.5 - - # Name and Category - vwap.name = _props - vwap.category = "overlap" - - if bands: - df = DataFrame({vwap.name: vwap}, index=close.index) - for i in bands: - df[f"{_props}_L_{i}"] = vwap - i * std_volume_weighted - df[f"{_props}_U_{i}"] = vwap + i * std_volume_weighted - df[f"{_props}_L_{i}"].name = df[f"{_props}_U_{i}"].name = _props - df[f"{_props}_L_{i}"].category = "overlap" - df[f"{_props}_U_{i}"].category = "overlap" - df.name = _props - df.category = "overlap" - - # Offset - if offset != 0: - if bands and not df.empty: - df = df.shift(offset) - vwap = vwap.shift(offset) - - # Fill - if "fillna" in kwargs: - if bands and not df.empty: - df.fillna(kwargs["fillna"], inplace=True) - else: - vwap.fillna(kwargs["fillna"], inplace=True) - - if bands and not df.empty: - return df - return vwap diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/vwma.py b/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/vwma.py deleted file mode 100644 index d1fad3c4..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/src/pandas_ta/volume/vwma.py +++ /dev/null @@ -1,58 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series -from pandas_ta._typing import DictLike, Int -from pandas_ta.overlap import sma -from pandas_ta.utils import v_offset, v_pos_default, v_series - - - -def vwma( - close: Series, volume: Series, length: Int = None, - offset: Int = None, **kwargs: DictLike -) -> Series: - """Volume Weighted Moving Average - - Computes a weighted average using price and volume. - - Sources: - * [motivewave](https://www.motivewave.com/studies/volume_weighted_moving_average.htm) - - Parameters: - close (Series): ```close``` Series - volume (Series): ```volume``` Series - length (int): The period. Default: ```10``` - offset (int): Post shift. Default: ```0``` - - Other Parameters: - fillna (value): ```pd.DataFrame.fillna(value)``` - - Returns: - (Series): 1 column - """ - # Validate - length = v_pos_default(length, 10) - close = v_series(close, length) - volume = v_series(volume, length) - - if close is None or volume is None: - return - - offset = v_offset(offset) - - # Calculate - pv = close * volume - vwma = sma(close=pv, length=length) / sma(close=volume, length=length) - - # Offset - if offset != 0: - vwma = vwma.shift(offset) - - # Fill - if "fillna" in kwargs: - vwma.fillna(kwargs["fillna"], inplace=True) - - # Name and Category - vwma.name = f"VWMA_{length}" - vwma.category = "overlap" - - return vwma diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/__init__.py b/temp_pandas_ta/pandas_ta-0.4.71b0/tests/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/config.py b/temp_pandas_ta/pandas_ta-0.4.71b0/tests/config.py deleted file mode 100644 index 893e14a3..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/config.py +++ /dev/null @@ -1,96 +0,0 @@ -# -*- coding: utf-8 -*- -import datetime -from pathlib import Path - -from numpy import array -from pandas import DataFrame, DatetimeIndex, read_csv - -import pandas_ta -from pandas_ta._typing import DictLike, IntFloat - - - -sample_adx_data = read_csv( - f"data/ADX_D.csv", index_col=0, - parse_dates=True, date_format="%f" -) - -ALERT: str = f"[!]" -INFO: str = f"[i]" -TEST: str = f"[T]" - -CORRELATION: str = "corr" # "sem" -CORRELATION_THRESHOLD: IntFloat = 0.99 # Less than 0.99 is undesirable -VERBOSE: bool = False - -welles_wilder_df = DataFrame({ - "open": array([50, 50.7, 51.7, 52.5, 53.6, 54.4, 52.9, 52]), - "high": array([51.2, 51.8, 52.9, 53.7, 54.8, 54.4, 53.2, 52.7]), - "low": array([49.8, 50.3, 51.7, 52.3, 53.5, 52.9, 52, 52]), - "close": array([50.9, 51.5, 52.8, 53.5, 54.7, 53, 52, 52.2]) -}) - - -def error_analysis( - df: DataFrame, kind: str, msg: str, - icon: str = INFO, newline: bool = True -): - if VERBOSE: - s = f"{icon} {df.name}['{kind}']: {msg}" - if newline: - s = f"\n{s}" - print(s) - - -def load(**kwargs: DictLike): - kwargs.setdefault("ticker", "SPY") - kwargs.setdefault("fpath", "data/TEST_D.csv") - kwargs.setdefault("interval", "d") - - kwargs.setdefault("index_col", 0) - kwargs.setdefault("parse_dates", True) - - kwargs.setdefault("verbose", False) - - print(f"\n{TEST} Pandas TA on {datetime.datetime.now()}") - fpath = Path(kwargs["fpath"]) - - df = read_csv( - fpath, - index_col=kwargs["index_col"], - parse_dates=kwargs["parse_dates"], - ) - - kwargs.setdefault("n", None) - if isinstance(kwargs["n"], int): - if kwargs["n"] > 0: - df = df[:kwargs["n"]] - elif kwargs['n'] < 0: - df = df[kwargs["n"]:] - - df.columns = df.columns.str.lower() - if kwargs["verbose"]: - print(f"{INFO} Loading {kwargs['ticker']}{df.shape} from {fpath}") - print(f"{INFO} From {df.index[0]} to {df.index[-1]}\n{df}\n") - return df - -_tdpy = pandas_ta.RATE["TRADING_DAYS_PER_YEAR"] -# At least 90 (88 with trix with default values) bars/rows/observations are -# needed to test All indicators individually and within the DataFrame -# extension. A larger sample may be required because of the Unstable Period -sample_data = load( - fpath="data/TEST_D.csv", - n = [ - -2 * _tdpy, -_tdpy, - -200, -89, 0, 89, 200, - _tdpy, 2 * _tdpy - ][4], - verbose=VERBOSE - ) - - -# Example multiindex download code -# _df = DataFrame() -# tickers =["spy", "mint"] -# data = {t:_df.ta.ticker(t, period="1y", timed=True) for t in tickers if len(t) > 1} -# assets = concat(data, names=["ticker", "datetime"], verify_integrity=True) diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/conftest.py b/temp_pandas_ta/pandas_ta-0.4.71b0/tests/conftest.py deleted file mode 100644 index de5bf5f7..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/conftest.py +++ /dev/null @@ -1,155 +0,0 @@ -# -*- coding: utf-8 -*- -import sys -sys.dont_write_bytecode = True - -from os import system as os_system - -import pytest -import pandas_ta as ta - -from pandas import read_csv - - - -TEST_ROWS = 200 -TEST_CSV = [f"data/TEST_D.csv", f"data/ALT_D.csv"][0] - -BEEP = False -PLAY_BEEP = f"osascript -e beep" - - - -@pytest.fixture(name="df", scope="function") -def testdf(): - """Yields a truncated df from TEST_CSV file""" - df = read_csv(TEST_CSV, index_col=0, parse_dates=True) - df.columns = df.columns.str.lower() - df.drop(columns=["dividends", "stock splits", "vwap"], errors="ignore", inplace=True) - df = df.iloc[:,:5] - # print(f"{df.columns=}") - - n = df.shape[0] - if n < TEST_ROWS: - print(f"{n=} {TEST_ROWS=}") - yield df.iloc[:TEST_ROWS] - - del df - if BEEP: os_system(PLAY_BEEP) - - -@pytest.fixture(scope="function") -def all_study(): - """Returns the All Study""" - return ta.AllStudy - - -@pytest.fixture(scope="function") -def common_study(): - """Returns the Common Study""" - return ta.CommonStudy - - -@pytest.fixture(scope="function") -def custom_study_a(): - """Returns a Custom Study with a chained/composed indicator: 'ema(CUMLOGRET_1, 5)'. - This Study only works when cores=0. When using mulptiprocessing (cores > 0), - the multiprocesser might miss the results of the indicator - 'CUMLOGRET_1 = log_return(cumulative=True)' - """ - _ta = [ - {"kind": "cdl_pattern", "name": "tristar"}, # 1 - {"kind": "rsi"}, # 1 - {"kind": "macd"}, # 3 - {"kind": "sma", "length": 50}, # 1 - {"kind": "trix"}, # 2 - {"kind": "bbands", "length": 20}, # 5 - {"kind": "log_return", "cumulative": True}, # 1 - {"kind": "ema", "close": "CUMLOGRET_1", "length": 5, "suffix": "CLR"} # 1 - ] - return ta.Study( - name="Commons with Cumulative Log Return EMA Chain", - ta=_ta, - # cores=0, - description="Common indicators with specific lengths and a chained indicator" - ) - - -@pytest.fixture(scope="function") -def custom_study_b(): - """Returns a Custom Study that allows setting indicator values by - parameter index as a tuple instead of using a named parameter""" - _ta = [ - {"kind": "ema", "params": (5,)}, # 1 - {"kind": "fisher", "params": (13, 7)} # 2 - ] - return ta.Study( - name="Custom Args Tuple", - ta=_ta, - description="Allow for easy filling in indicator arguments by argument placement" - ) - - -@pytest.fixture(scope="function") -def custom_study_c(): - """Returns a Custom Study that makes it easy to rename individual - indicator resultant column names""" - return ta.Study( - name="Custom Col Numbers Tuple", - ta=[{"kind": "bbands", "col_names": ("LB", "MB", "UB", "BW", "BP")}], - description="Allow for easy renaming of resultant columns" - ) - - -@pytest.fixture(scope="function") -def custom_study_d(): - """Returns a Custom Study that makes it easily return individual - indicator resultant columns by column number (col_numbers) as a tuple""" - return ta.Study( - name="Custom Col Numbers Tuple", - ta=[ - {"kind": "macd", "col_numbers": (1,)}, # macd histogram - {"kind": "bbands", "col_numbers": (0,2)} # bbands lower and upper - ], - description="Allow for easy selection of resultant columns" - ) - - -@pytest.fixture(scope="function") -def custom_study_e(): - """Returns a Custom Study that has non default indicator parameters and - an example of indicator composition/chaining: 'ema(CUMLOGRET_1, 5)'""" - _ta = [ - {"kind": "amat", "fast": 20, "slow": 50 }, # 2 - {"kind": "log_return", "cumulative": True}, # 1 - {"kind": "ema", "close": "CUMLOGRET_1", "length": 5} # 1 - ] - - return ta.Study( - name="AMAT Log Returns", - ta=_ta, - cores=0, - description="AMAT Log Returns" - ) - - -@pytest.fixture(scope="function") -def custom_study_f(): - """ - Scaling Study. Chained Indicators are unsupported. - """ - _ta = [ - {"kind": "ichimoku"}, - {"kind": "sma", "close": "volume", "length": 20, "prefix": "VOLUME"}, - {"kind": "sma", "length": 10}, - {"kind": "rsi"}, - {"kind": "macd"}, - {"kind": "bbands", "length": 20}, - {"kind": "cci"}, - {"kind": "uo"}, - ] - return ta.Study( - name="Scaling Study", - ta=_ta, - cores=0, - description="Example Scaling Group" - ) diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_candle.py b/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_candle.py deleted file mode 100644 index 88c1631b..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_candle.py +++ /dev/null @@ -1,87 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -import pandas.testing as pdt -import talib as tal - -import pandas_ta as ta - -from .config import CORRELATION, CORRELATION_THRESHOLD, error_analysis - - - -# TA Lib style Tests -def test_cdl_doji(df): - result = ta.cdl_doji(df.open, df.high, df.low, df.close) - assert isinstance(result, Series) - assert result.name == "CDL_DOJI_10_0.1" - - try: - expected = tal.CDLDOJI(df.open, df.high, df.low, df.close) - pdt.assert_series_equal(result, expected, check_names=False, check_dtype=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - -def test_cdl_inside(df): - result = ta.cdl_inside(df.open, df.high, df.low, df.close) - assert isinstance(result, Series) - assert result.name == "CDL_INSIDE" - - result = ta.cdl_inside(df.open, df.high, df.low, df.close, asbool=True) - assert isinstance(result, Series) - assert result.name == "CDL_INSIDE" - - -def test_cdl_pattern(df): - result = ta.cdl_pattern(df.open, df.high, df.low, df.close, name="all") - assert isinstance(result, DataFrame) - assert len(result.columns) == len(ta.CDL_PATTERN_NAMES) - - result = ta.cdl_pattern(df.open, df.high, df.low, df.close, name="doji") - assert isinstance(result, DataFrame) - - result = ta.cdl_pattern(df.open, df.high, df.low, df.close, name=["doji", "inside"]) - assert isinstance(result, DataFrame) - - -def test_cdl_z(df): - result = ta.cdl_z(df.open, df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "CDL_Z_30_1" - - -def test_ha(df): - result = ta.ha(df.open, df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "Heikin-Ashi" - - - -# DataFrame Extension Tests -def test_ext_cdl_doji(df): - df.ta.cdl_pattern("doji", append=True) - assert df.columns[-1] == "CDL_DOJI_10_0.1" - - -def test_ext_cdl_inside(df): - df.ta.cdl_pattern("inside", append=True) - assert df.columns[-1] == "CDL_INSIDE" - - -def test_ext_cdl_z(df): - df.ta.cdl_z(append=True) - assert list(df.columns[-4:]) == [ - "open_Z_30_1", "high_Z_30_1", "low_Z_30_1", "close_Z_30_1" - ] - - -def test_ext_ha(df): - df.ta.ha(append=True) - assert list(df.columns[-4:]) == [ - "HA_open", "HA_high", "HA_low", "HA_close" - ] diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_cycles.py b/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_cycles.py deleted file mode 100644 index 8f15fffd..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_cycles.py +++ /dev/null @@ -1,30 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import Series - -import pandas_ta as ta - - - -# TA Lib style Tests -def test_ebsw(df): - result = ta.ebsw(df.close) - assert isinstance(result, Series) - assert result.name == "EBSW_40_10" - - -def test_reflex(df): - result = ta.reflex(df.close) - assert isinstance(result, Series) - assert result.name == "REFLEX_20_20_0.04" - - - -# DataFrame Extension Tests -def test_ext_ebsw(df): - df.ta.ebsw(append=True) - assert df.columns[-1] == "EBSW_40_10" - - -def test_ext_reflex(df): - df.ta.reflex(append=True) - assert df.columns[-1] == "REFLEX_20_20_0.04" diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_momentum.py b/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_momentum.py deleted file mode 100644 index dde84698..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_momentum.py +++ /dev/null @@ -1,845 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series, concat -import pandas.testing as pdt -from pytest import mark -import talib as tal - -import pandas_ta as ta - -from .config import CORRELATION, CORRELATION_THRESHOLD, error_analysis - - - -# TA Lib style Tests -def test_ao(df): - result = ta.ao(df.high, df.low) - assert isinstance(result, Series) - assert result.name == "AO_5_34" - - -def test_apo(df): - result = ta.apo(df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "APO_12_26" - - try: - expected = tal.APO(df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - assert corr > CORRELATION_THRESHOLD - print(f"{corr=}") - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.apo(df.close) - assert isinstance(result, Series) - assert result.name == "APO_12_26" - - -def test_bias(df): - result = ta.bias(df.close) - assert isinstance(result, Series) - assert result.name == "BIAS_SMA_26" - - -def test_bop(df): - result = ta.bop(df.open, df.high, df.low, df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "BOP" - - try: - expected = tal.BOP(df.open, df.high, df.low, df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - assert corr > CORRELATION_THRESHOLD - print(f"{corr=}") - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.bop(df.open, df.high, df.low, df.close) - assert isinstance(result, Series) - assert result.name == "BOP" - - -def test_brar(df): - result = ta.brar(df.open, df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "BRAR_26" - - -def test_cci(df): - result = ta.cci(df.high, df.low, df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "CCI_14_0.015" - - try: - expected = tal.CCI(df.high, df.low, df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - assert corr > CORRELATION_THRESHOLD - print(f"{corr=}") - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.cci(df.high, df.low, df.close) - assert isinstance(result, Series) - assert result.name == "CCI_14_0.015" - - -def test_cfo(df): - result = ta.cfo(df.close) - assert isinstance(result, Series) - assert result.name == "CFO_9" - - -def test_cg(df): - result = ta.cg(df.close) - assert isinstance(result, Series) - assert result.name == "CG_10" - - -def test_cmo(df): - result = ta.cmo(df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "CMO_14" - - try: - expected = tal.CMO(df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - assert corr > CORRELATION_THRESHOLD - print(f"{corr=}") - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.cmo(df.close) - assert isinstance(result, Series) - assert result.name == "CMO_14" - - -def test_coppock(df): - result = ta.coppock(df.close) - assert isinstance(result, Series) - assert result.name == "COPC_11_14_10" - - -def test_crsi(df): - result = ta.crsi(df.close) - assert isinstance(result, Series) - assert result.name == "CRSI_3_2_100" - - -def test_cti(df): - result = ta.cti(df.close) - assert isinstance(result, Series) - assert result.name == "CTI_12" - - -def test_dm(df): - result = ta.dm(df.high, df.low, talib=False) - assert isinstance(result, DataFrame) - assert result.name == "DM_14" - - try: - expected_pos = tal.PLUS_DM(df.high, df.low) - expected_neg = tal.MINUS_DM(df.high, df.low) - expecteddf = DataFrame({"DMP_14": expected_pos, "DMN_14": expected_neg}) - pdt.assert_frame_equal(result, expecteddf) - except AssertionError: - try: - dmp_corr = ta.utils.df_error_analysis(result.iloc[:, 0], expecteddf.iloc[:, 0]) - assert dmp_corr > CORRELATION_THRESHOLD - print(f"{dmp_corr=}") - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - try: - dmn_corr = ta.utils.df_error_analysis(result.iloc[:, 1], expecteddf.iloc[:, 1]) - assert dmn_corr > CORRELATION_THRESHOLD - print(f"{dmn_corr=}") - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.dm(df.high, df.low) - assert isinstance(result, DataFrame) - assert result.name == "DM_14" - - -def test_er(df): - result = ta.er(df.close) - assert isinstance(result, Series) - assert result.name == "ER_10" - - -def test_eri(df): - result = ta.eri(df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "ERI_13" - - -def test_exhc(df): - result = ta.exhc(df.close) - assert isinstance(result, DataFrame) - assert result.name == "EXHCa" - - result = ta.exhc(df.close, show_all=False) - assert isinstance(result, DataFrame) - assert result.name == "EXHC" - - -def test_fisher(df): - result = ta.fisher(df.high, df.low) - assert isinstance(result, DataFrame) - assert result.name == "FISHERT_9_1" - - -def test_inertia(df): - result = ta.inertia(df.close) - assert isinstance(result, Series) - assert result.name == "INERTIA_20_14" - - result = ta.inertia(df.close, df.high, df.low, refined=True) - assert isinstance(result, Series) - assert result.name == "INERTIAr_20_14" - - result = ta.inertia(df.close, df.high, df.low, thirds=True) - assert isinstance(result, Series) - assert result.name == "INERTIAt_20_14" - - -def test_kdj(df): - result = ta.kdj(df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "KDJ_9_3" - - -def test_kst(df): - result = ta.kst(df.close) - assert isinstance(result, DataFrame) - assert result.name == "KST_10_15_20_30_10_10_10_15_9" - - -def test_macd(df): - result = ta.macd(df.close, talib=False) - assert isinstance(result, DataFrame) - assert result.name == "MACD_12_26_9" - - try: - expected = tal.MACD(df.close) - expecteddf = DataFrame({ - "MACDh_12_26_9": expected[2], - "MACDs_12_26_9": expected[1], - "MACD_12_26_9": expected[0] - }) - pdt.assert_frame_equal(result, expecteddf) - except AssertionError: - try: - macd_corr = ta.utils.df_error_analysis(result, expected) - print(f"{macd_corr=}") - assert macd_corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result.iloc[:, 0], CORRELATION, ex) - - try: - history_corr = ta.utils.df_error_analysis(result, expected) - print(f"{history_corr=}") - assert history_corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result.iloc[:, 1], CORRELATION, ex) - - try: - signal_corr = ta.utils.df_error_analysis(result, expected) - print(f"{signal_corr=}") - assert signal_corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result.iloc[:, 2], CORRELATION, ex) - - result = ta.macd(df.close) - assert isinstance(result, DataFrame) - assert result.name == "MACD_12_26_9" - - result = ta.macd(df.close, asmode=True) - assert isinstance(result, DataFrame) - assert result.name == "MACDAS_12_26_9" - - -def test_mom(df): - result = ta.mom(df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "MOM_10" - - try: - expected = tal.MOM(df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.mom(df.close) - assert isinstance(result, Series) - assert result.name == "MOM_10" - - -def test_pgo(df): - result = ta.pgo(df.high, df.low, df.close, asmode=True) - assert isinstance(result, Series) - assert result.name == "PGO_14" - - -def test_ppo(df): - result = ta.ppo(df.close, talib=False) - assert isinstance(result, DataFrame) - assert result.name == "PPO_12_26_9" - - try: - expected = tal.PPO(df.close) - pdt.assert_series_equal(result.iloc[:,0], expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.ppo(df.close) - assert isinstance(result, DataFrame) - assert result.name == "PPO_12_26_9" - - -def test_psl(df): - result = ta.psl(df.close, asmode=True) - assert isinstance(result, Series) - assert result.name == "PSL_12" - - -def test_qqe(df): - result = ta.qqe(df.close, asmode=True) - assert isinstance(result, DataFrame) - assert result.name == "QQE_14_5_4.236" - - -def test_roc(df): - result = ta.roc(df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "ROC_10" - - try: - expected = tal.ROC(df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.roc(df.close) - assert isinstance(result, Series) - assert result.name == "ROC_10" - - -def test_rsi(df): - result = ta.rsi(df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "RSI_14" - - try: - expected = tal.RSI(df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.rsi(df.close) - assert isinstance(result, Series) - assert result.name == "RSI_14" - - -def test_rsx(df): - result = ta.rsx(df.close) - assert isinstance(result, Series) - assert result.name == "RSX_14" - - -def test_rvgi(df): - result = ta.rvgi(df.open, df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "RVGI_14_4" - - -def test_slope(df): - result = ta.slope(df.close) - assert isinstance(result, Series) - assert result.name == "SLOPE_1" - - result = ta.slope(df.close, as_angle=True) - assert isinstance(result, Series) - assert result.name == "ANGLEr_1" - - result = ta.slope(df.close, as_angle=True, to_degrees=True) - assert isinstance(result, Series) - assert result.name == "ANGLEd_1" - - -def test_smc(df): - result = ta.smc(df.open, df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "SMC_14_50_20_5" - - -def test_smi(df): - result = ta.smi(df.close) - assert isinstance(result, DataFrame) - assert result.name == "SMI_5_20_5_1.0" - - result = ta.smi(df.close, scalar=10) - assert isinstance(result, DataFrame) - assert result.name == "SMI_5_20_5_10.0" - - -def test_squeeze(df): - result = ta.squeeze(df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "SQZ_20_2.0_20_1.5" - - result = ta.squeeze(df.high, df.low, df.close, tr=False) - assert isinstance(result, DataFrame) - assert result.name == "SQZhlr_20_2.0_20_1.5" - - result = ta.squeeze(df.high, df.low, df.close, lazybear=True) - assert isinstance(result, DataFrame) - assert result.name == "SQZ_20_2.0_20_1.5_LB" - - result = ta.squeeze(df.high, df.low, df.close, tr=False, lazybear=True) - assert isinstance(result, DataFrame) - assert result.name == "SQZhlr_20_2.0_20_1.5_LB" - - -def test_squeeze_pro(df): - result = ta.squeeze_pro(df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "SQZPRO_20_2.0_20_2.0_1.5_1.0" - - result = ta.squeeze_pro(df.high, df.low, df.close, tr=False) - assert isinstance(result, DataFrame) - assert result.name == "SQZPROhlr_20_2.0_20_2.0_1.5_1.0" - - result = ta.squeeze_pro(df.high, df.low, df.close, 20, 2, 20, 1, 2, 3) - assert isinstance(result, DataFrame) - assert result.name == "SQZPRO_20_2_20_3.0_2.0_1.0" - - result = ta.squeeze_pro(df.high, df.low, df.close, 20, 2, 20, 1, 2, 3, tr=False) - assert isinstance(result, DataFrame) - assert result.name == "SQZPROhlr_20_2_20_3.0_2.0_1.0" - - -def test_stc(df): - result = ta.stc(df.close) - assert isinstance(result, DataFrame) - assert result.name == "STC_10_12_26_0.5" - - -def test_stoch(df): - result = ta.stoch(df.high, df.low, df.close, talib=False) - assert isinstance(result, DataFrame) - assert result.name == "STOCH_14_3_3" - - try: - expected = tal.STOCH(df.high, df.low, df.close, 14, 3, 0, 3, 0) - expecteddf = DataFrame({"STOCHk_14_3_0_3_0": expected[0], "STOCHd_14_3_0_3": expected[1]}) - pdt.assert_frame_equal(result, expecteddf) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.stoch(df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "STOCH_14_3_3" - - -def test_stochf(df): - result = ta.stochf(df.high, df.low, df.close, talib=False) - assert isinstance(result, DataFrame) - assert result.name == "STOCHF_14_3" - - try: - expected = tal.STOCHF(df.high, df.low, df.close, 14, 3, 0) - expecteddf = DataFrame({"STOCHFk_14_3_0": expected[0], "STOCHFd_14_3_0": expected[1]}) - pdt.assert_frame_equal(result, expecteddf) - except AssertionError: - try: - stochk_corr = ta.utils.df_error_analysis(result.iloc[:, 0], expected.iloc[:, 0]) - print(f"{stochk_corr=}") - assert stochk_corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result.iloc[:, 0], CORRELATION, ex) - - try: - stochd_corr = ta.utils.df_error_analysis(result.iloc[:, 1], expected.iloc[:, 1]) - print(f"{stochd_corr=}") - assert stochd_corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result.iloc[:, 1], CORRELATION, ex) - - result = ta.stochf(df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "STOCHF_14_3" - - -def test_stochrsi(df): - # TV Correlation - result = ta.stochrsi(df.close, talib=False) - assert isinstance(result, DataFrame) - assert result.name == "STOCHRSI_14_14_3_3" - - try: - expected = tal.STOCHRSI(df.close, 14, 14, 3, 0) - expecteddf = DataFrame({ - "STOCHRSIk_14_14_0_3": expected[0], - "STOCHRSId_14_14_3_0": expected[1] - }) - pdt.assert_frame_equal(result, expecteddf) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result.iloc[:, 0], expecteddf.iloc[:, 1]) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result.iloc[:, 0], CORRELATION, ex, newline=False) - - -def test_tmo(df): - result = ta.tmo(df.open, df.close) - assert isinstance(result, DataFrame) - assert result.name == "TMO_14_5_3" - - result = ta.tmo(df.open, df.close, compute_momentum=True) - assert isinstance(result, DataFrame) - assert result.name == "TMO_14_5_3" - - -def test_trix(df): - result = ta.trix(df.close) - assert isinstance(result, DataFrame) - assert result.name == "TRIX_30_9" - - -def test_tsi(df): - result = ta.tsi(df.close) - assert isinstance(result, DataFrame) - assert result.name == "TSI_13_25_13" - - -def test_uo(df): - result = ta.uo(df.high, df.low, df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "UO_7_14_28" - - try: - expected = tal.ULTOSC(df.high, df.low, df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.uo(df.high, df.low, df.close) - assert isinstance(result, Series) - assert result.name == "UO_7_14_28" - - -def test_willr(df): - result = ta.willr(df.high, df.low, df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "WILLR_14" - - try: - expected = tal.WILLR(df.high, df.low, df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.willr(df.high, df.low, df.close) - assert isinstance(result, Series) - assert result.name == "WILLR_14" - - - -# DataFrame Extension Tests -def test_ext_ao(df): - df.ta.ao(append=True) - assert df.columns[-1] == "AO_5_34" - - -def test_ext_apo(df): - df.ta.apo(append=True) - assert df.columns[-1] == "APO_12_26" - - -def test_ext_bias(df): - df.ta.bias(append=True) - assert df.columns[-1] == "BIAS_SMA_26" - - -def test_ext_bop(df): - df.ta.bop(append=True) - assert df.columns[-1] == "BOP" - - -def test_ext_brar(df): - df.ta.brar(append=True) - assert df.columns[-1] == "BR_26" - - -def test_ext_cci(df): - df.ta.cci(append=True) - assert df.columns[-1] == "CCI_14_0.015" - - -def test_ext_cfo(df): - df.ta.cfo(append=True) - assert df.columns[-1] == "CFO_9" - - -def test_ext_cg(df): - df.ta.cg(append=True) - assert df.columns[-1] == "CG_10" - - -def test_ext_cmo(df): - df.ta.cmo(append=True) - assert df.columns[-1] == "CMO_14" - - -def test_ext_coppock(df): - df.ta.coppock(append=True) - assert df.columns[-1] == "COPC_11_14_10" - - -def test_ext_crsi(df): - df.ta.crsi(append=True) - assert df.columns[-1] == "CRSI_3_2_100" - - -def test_ext_crsi(df): - df.ta.crsi(append=True) - assert df.columns[-1] == "CRSI_3_2_100" - - -def test_ext_cti(df): - df.ta.cti(append=True) - assert df.columns[-1] == "CTI_12" - - -def test_ext_dm(df): - df.ta.dm(append=True) - assert list(df.columns[-2:]) == ["DMP_14", "DMN_14"] - - -def test_ext_er(df): - df.ta.er(append=True) - assert df.columns[-1] == "ER_10" - - -def test_ext_eri(df): - df.ta.eri(append=True) - assert list(df.columns[-2:]) == ["BULLP_13", "BEARP_13"] - - -def test_ext_exhc(df): - df.ta.exhc(append=True) - assert list(df.columns[-2:]) == ["EXHC_DNa", "EXHC_UPa"] - - -def test_ext_fisher(df): - df.ta.fisher(append=True) - assert list(df.columns[-2:]) == ["FISHERT_9_1", "FISHERTs_9_1"] - - -def test_ext_inertia(df): - df.ta.inertia(append=True) - assert df.columns[-1] == "INERTIA_20_14" - - -def test_ext_kdj(df): - df.ta.kdj(append=True) - assert list(df.columns[-3:]) == ["K_9_3", "D_9_3", "J_9_3"] - - -def test_ext_kst(df): - df.ta.kst(append=True) - assert list(df.columns[-2:]) == ["KST_10_15_20_30_10_10_10_15", "KSTs_9"] - - -def test_ext_macd(df): - df.ta.macd(append=True) - columns = ["MACD_12_26_9", "MACDh_12_26_9", "MACDs_12_26_9"] - assert list(df.columns[-3:]) == columns - - -def test_ext_mom(df): - df.ta.mom(append=True) - assert df.columns[-1] == "MOM_10" - - -def test_ext_pgo(df): - df.ta.pgo(append=True) - assert df.columns[-1] == "PGO_14" - - -def test_ext_ppo(df): - df.ta.ppo(append=True) - assert list(df.columns[-3:]) == [ - "PPO_12_26_9", "PPOh_12_26_9", "PPOs_12_26_9" - ] - - -def test_ext_psl(df): - df.ta.psl(append=True) - assert df.columns[-1] == "PSL_12" - - -def test_ext_qqe(df): - df.ta.qqe(append=True) - columns = [ - "QQE_14_5_4.236", "QQE_14_5_4.236_RSIMA", - "QQEl_14_5_4.236", "QQEs_14_5_4.236" - ] - assert list(df.columns[-4:]) == columns - - -def test_ext_roc(df): - df.ta.roc(append=True) - assert df.columns[-1] == "ROC_10" - - -def test_ext_rsi(df): - df.ta.rsi(append=True) - assert df.columns[-1] == "RSI_14" - - -def test_ext_rsx(df): - df.ta.rsx(append=True) - assert df.columns[-1] == "RSX_14" - - -def test_ext_rvgi(df): - df.ta.rvgi(append=True) - assert list(df.columns[-2:]) == ["RVGI_14_4", "RVGIs_14_4"] - - -def test_ext_slope(df): - df.ta.slope(append=True) - assert df.columns[-1] == "SLOPE_1" - - -def test_ext_smc(df): - df.ta.smc(append=True) - columns = [ - "SMChv_14_50_20_5", - "SMCbf_14_50_20_5", "SMCbi_14_50_20_5", "SMCbp_14_50_20_5", - "SMCtf_14_50_20_5", "SMCti_14_50_20_5", "SMCtp_14_50_20_5" - ] - assert list(df.columns[-7:]) == columns - - -def test_ext_smi(df): - df.ta.smi(append=True) - columns = ["SMI_5_20_5_1.0", "SMIs_5_20_5_1.0", "SMIo_5_20_5_1.0"] - assert list(df.columns[-3:]) == columns - - -def test_ext_squeeze(df): - df.ta.squeeze(append=True) - columns = ["SQZ_20_2.0_20_1.5", "SQZ_ON", "SQZ_OFF", "SQZ_NO"] - assert list(df.columns[-4:]) == columns - - -def test_ext_squeeze_pro(df): - df.ta.squeeze_pro(append=True) - columns = [ - "SQZPRO_ON_NORMAL", "SQZPRO_ON_NARROW", "SQZPRO_OFF", "SQZPRO_NO" - ] - assert list(df.columns[-4:]) == columns - - -def test_ext_stc(df): - df.ta.stc(append=True) - columns = [ - "STC_10_12_26_0.5", "STCmacd_10_12_26_0.5", "STCstoch_10_12_26_0.5" - ] - assert list(df.columns[-3:]) == columns - - -def test_ext_stoch(df): - df.ta.stoch(append=True) - columns = ["STOCHk_14_3_3", "STOCHd_14_3_3", "STOCHh_14_3_3"] - assert list(df.columns[-3:]) == columns - - -def test_ext_stochf(df): - df.ta.stochf(append=True) - assert list(df.columns[-2:]) == ["STOCHFk_14_3", "STOCHFd_14_3"] - - -def test_ext_stochrsi(df): - df.ta.stochrsi(append=True) - assert list(df.columns[-2:]) == [ - "STOCHRSIk_14_14_3_3", "STOCHRSId_14_14_3_3" - ] - - -def test_ext_tmo(df): - df.ta.tmo(append=True) - columns = ["TMO_14_5_3", "TMOs_14_5_3", "TMOM_14_5_3", "TMOMs_14_5_3"] - assert list(df.columns[-4:]) == columns - - -def test_ext_trix(df): - df.ta.trix(append=True) - assert list(df.columns[-2:]) == ["TRIX_30_9", "TRIXs_30_9"] - - -def test_ext_tsi(df): - df.ta.tsi(append=True) - assert list(df.columns[-2:]) == ["TSI_13_25_13", "TSIs_13_25_13"] - - -def test_ext_uo(df): - df.ta.uo(append=True) - assert df.columns[-1] == "UO_7_14_28" - - -def test_ext_willr(df): - df.ta.willr(append=True) - assert df.columns[-1] == "WILLR_14" diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_overlap.py b/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_overlap.py deleted file mode 100644 index 2077711c..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_overlap.py +++ /dev/null @@ -1,779 +0,0 @@ -# -*- coding: utf-8 -*- -import numpy as np -from pandas import DataFrame, Series -import pandas.testing as pdt -from pytest import mark -import talib as tal - -import pandas_ta as ta - -from .config import CORRELATION, CORRELATION_THRESHOLD, error_analysis - - - -# TA Lib style Tests -def test_alligator(df): - result = ta.alligator(df.high, df.low) - assert isinstance(result, DataFrame) - assert result.name == "AG_13_8_5" - - -def test_alma(df): - result = ta.alma(df.close) - assert isinstance(result, Series) - assert result.name == "ALMA_9_6.0_0.85" - - -def test_dema(df): - result = ta.dema(df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "DEMA_10" - - try: - expected = tal.DEMA(df.close, 10) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.dema(df.close) - assert isinstance(result, Series) - assert result.name == "DEMA_10" - - -def test_ema(df): - result = ta.ema(df.close, talib=False, presma=True) - assert isinstance(result, Series) - assert result.name == "EMA_10" - - try: - expected = tal.EMA(df.close, 10) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.ema(df.close, talib=True) - assert isinstance(result, Series) - assert result.name == "EMA_10" - - result = ta.ema(df.close, talib=True, presma=False, adjust=False) - assert isinstance(result, Series) - assert result.name == "EMA_10" - - result = ta.ema(df.close, talib=True, presma=False, adjust=True) - assert isinstance(result, Series) - assert result.name == "EMA_10" - - result = ta.ema(df.close, talib=True, presma=True, adjust=True) - assert isinstance(result, Series) - assert result.name == "EMA_10" - - -def test_fwma(df): - result = ta.fwma(df.close) - assert isinstance(result, Series) - assert result.name == "FWMA_10" - - -def test_hilo(df): - result = ta.hilo(df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "HILO_13_21" - - -def test_hl2(df): - result = ta.hl2(df.high, df.low) - assert isinstance(result, Series) - assert result.name == "HL2" - - -def test_hlc3(df): - result = ta.hlc3(df.high, df.low, df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "HLC3" - - try: - expected = tal.TYPPRICE(df.high, df.low, df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.hlc3(df.high, df.low, df.close) - assert isinstance(result, Series) - assert result.name == "HLC3" - - -def test_hma(df): - result = ta.hma(df.close) - assert isinstance(result, Series) - assert result.name == "HMA_10" - - result = ta.hma(df.close, mamode="ema") - assert isinstance(result, Series) - assert result.name == "HMAe_10" - - result = ta.hma(df.close, mamode="sma") - assert isinstance(result, Series) - assert result.name == "HMAs_10" - - -def test_hwma(df): - result = ta.hwma(df.close) - assert isinstance(result, Series) - assert result.name == "HWMA_0.2_0.1_0.1" - - -def test_ichimoku(df): - result_ichimoku, result_span = ta.ichimoku(df.high, df.low, df.close) - assert isinstance(result_ichimoku, DataFrame) - assert isinstance(result_span, DataFrame) - assert result_ichimoku.name == "ICHIMOKU_9_26_52" - assert result_span.name == "ICHISPAN_9_26" - - -def test_jma(df): - result = ta.jma(df.close) - assert isinstance(result, Series) - assert result.name == "JMA_7_0.0" - - -def test_kama(df): - result = ta.kama(df.close) - assert isinstance(result, Series) - assert result.name == "KAMA_10_2_30" - - -def test_linreg(df): - result = ta.linreg(df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "LINREG_14" - - try: - expected = tal.LINEARREG(df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.linreg(df.close, talib=True) - assert isinstance(result, Series) - assert result.name == "LINREG_14" - - -def test_linreg_angle(df): - result = ta.linreg(df.close, angle=True, talib=False) - assert isinstance(result, Series) - assert result.name == "LINREGa_14" - - try: - expected = tal.LINEARREG_ANGLE(df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.linreg(df.close, angle=True, talib=True) - assert isinstance(result, Series) - assert result.name == "LINREGa_14" - - -def test_linreg_intercept(df): - result = ta.linreg(df.close, intercept=True, talib=False) - assert isinstance(result, Series) - assert result.name == "LINREGb_14" - - try: - expected = tal.LINEARREG_INTERCEPT(df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.linreg(df.close, intercept=True, talib=True) - assert isinstance(result, Series) - assert result.name == "LINREGb_14" - - -def test_linreg_r(df): - result = ta.linreg(df.close, r=True) - assert isinstance(result, Series) - assert result.name == "LINREGr_14" - - -def test_linreg_slope(df): - result = ta.linreg(df.close, slope=True, talib=False) - assert isinstance(result, Series) - assert result.name == "LINREGm_14" - - try: - expected = tal.LINEARREG_SLOPE(df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.linreg(df.close, slope=True, talib=True) - assert isinstance(result, Series) - assert result.name == "LINREGm_14" - - -@mark.parametrize("kind,name", [ - ("dema", "DEMA_10"), ("ema", "EMA_10"), ("fwma", "FWMA_10"), - ("hma", "HMA_10"), ("linreg", "LINREG_14"), ("midpoint", "MIDPOINT_2"), - ("pwma", "PWMA_10"), ("rma", "RMA_10"), ("sinwma", "SINWMA_14"), - ("sma", "SMA_10"), ("ssf", "SSF_20"), ("swma", "SWMA_10"), - ("t3", "T3_10_0.7"), ("tema", "TEMA_10"), ("trima", "TRIMA_10"), - ("vidya", "VIDYA_14"), ("wma", "WMA_10") -]) -def test_ma(df, kind, name): -# def test_ma(df): - result = ta.ma() - assert isinstance(result, list) - assert len(result) > 0 - - result = ta.ma(kind, df.close) - assert isinstance(result, Series) - assert result.name == name - - -def test_mama(df): - result = ta.mama(df.close, talib=False) - assert isinstance(result, DataFrame) - assert result.name == "MAMA_0.5_0.05" - - try: - expected = tal.MAMA(df.close) - expecteddf = DataFrame({ - "MAMA_0.5_0.05": expected[0], - "FAMA_0.5_0.05": expected[1] - }) - pdt.assert_frame_equal(result, expecteddf) - except AssertionError: - try: - mama_corr = ta.utils.df_error_analysis(result.iloc[:, 0], expecteddf.iloc[:, 0]) - assert mama_corr > CORRELATION_THRESHOLD - print(f"{mama_corr=}") - except Exception as ex: - error_analysis(result.iloc[:, 0], CORRELATION, ex) - - try: - fama_corr = ta.utils.df_error_analysis(result.iloc[:, 1], expecteddf.iloc[:, 1]) - assert fama_corr > CORRELATION_THRESHOLD - print(f"{fama_corr=}") - except Exception as ex: - error_analysis(result.iloc[:, 1], CORRELATION, ex) - - result = ta.mama(df.close) - assert isinstance(result, DataFrame) - assert result.name == "MAMA_0.5_0.05" - - -def test_mcgd(df): - result = ta.mcgd(df.close) - assert isinstance(result, Series) - assert result.name == "MCGD_10" - - -def test_midpoint(df): - result = ta.midpoint(df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "MIDPOINT_2" - - try: - expected = tal.MIDPOINT(df.close, 2) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.midpoint(df.close) - assert isinstance(result, Series) - assert result.name == "MIDPOINT_2" - - -def test_midprice(df): - result = ta.midprice(df.high, df.low, talib=False) - assert isinstance(result, Series) - assert result.name == "MIDPRICE_2" - - try: - expected = tal.MIDPRICE(df.high, df.low, 2) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.midprice(df.high, df.low) - assert isinstance(result, Series) - assert result.name == "MIDPRICE_2" - - -def test_ohlc4(df): - result = ta.ohlc4(df.open, df.high, df.low, df.close) - assert isinstance(result, Series) - assert result.name == "OHLC4" - - -@mark.parametrize("method,name,columns", [ - (None, "PIVOTS_TRAD_D", 9), ("camarilla", "PIVOTS_CAMA_D", 9), - ("classic", "PIVOTS_CLAS_D", 9), ("demark", "PIVOTS_DEMA_D", 3), - ("fibonacci", "PIVOTS_FIBO_D", 7), ("traditional", "PIVOTS_TRAD_D", 9), - ("woodie", "PIVOTS_WOOD_D", 9) -]) -def test_pivots(df, method, name, columns): - result = ta.pivots(df.open, df.high, df.low, df.close, method=method) - assert isinstance(result, DataFrame) - assert result.name == name - assert result.columns.size == columns - - -def test_pwma(df): - result = ta.pwma(df.close) - assert isinstance(result, Series) - assert result.name == "PWMA_10" - - -def test_rma(df): - result = ta.rma(df.close) - assert isinstance(result, Series) - assert result.name == "RMA_10" - - -def test_sinwma(df): - result = ta.sinwma(df.close) - assert isinstance(result, Series) - assert result.name == "SINWMA_14" - - -def test_sma(df): - result = ta.sma(df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "SMA_10" - - try: - expected = tal.SMA(df.close, 10) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.sma(df.close, talib=True) - assert isinstance(result, Series) - assert result.name == "SMA_10" - - -def test_smma(df): - result = ta.smma(df.close) - assert isinstance(result, Series) - assert result.name == "SMMA_7" - - -def test_ssf(df): - result = ta.ssf(df.close) - assert isinstance(result, Series) - assert result.name == "SSF_20" - - result = ta.ssf(df.close, pi=np.pi, sqrt2=np.sqrt(2), everget=True) - assert isinstance(result, Series) - assert result.name == "SSFe_20" - - -def test_ssf3(df): - result = ta.ssf3(df.close) - assert isinstance(result, Series) - assert result.name == "SSF3_20" - - -def test_supertrend(df): - result = ta.supertrend(df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "SUPERT_7_3.0" - - -def test_swma(df): - result = ta.swma(df.close) - assert isinstance(result, Series) - assert result.name == "SWMA_10" - - -def test_t3(df): - result = ta.t3(df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "T3_10_0.7" - - try: - expected = tal.T3(df.close, 10) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.t3(df.close, talib=True) - assert isinstance(result, Series) - assert result.name == "T3_10_0.7" - - -def test_tema(df): - result = ta.tema(df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "TEMA_10" - - try: - expected = tal.TEMA(df.close, 10) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.tema(df.close, talib=True) - assert isinstance(result, Series) - assert result.name == "TEMA_10" - - -def test_trima(df): - result = ta.trima(df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "TRIMA_10" - - try: - expected = tal.TRIMA(df.close, 10) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.trima(df.close, talib=True) - assert isinstance(result, Series) - assert result.name == "TRIMA_10" - - -def test_tsf(df): - result = ta.linreg(df.close, tsf=True, talib=False) - assert isinstance(result, Series) - assert result.name == "LINREG_14" - - try: - expected = tal.TSF(df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.linreg(df.close, tsf=True, talib=True) - assert isinstance(result, Series) - assert result.name == "LINREG_14" - - -def test_vidya(df): - result = ta.vidya(df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "VIDYA_14" - - try: - expected = ta.vidya(df.close, talib=True) - assert isinstance(expected, Series) - assert expected.name == "VIDYA_14" - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - -def test_wcp(df): - result = ta.wcp(df.high, df.low, df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "WCP" - - try: - expected = tal.WCLPRICE(df.high, df.low, df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.wcp(df.high, df.low, df.close, talib=True) - assert isinstance(result, Series) - assert result.name == "WCP" - - -def test_wma(df): - result = ta.wma(df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "WMA_10" - - try: - expected = tal.WMA(df.close, 10) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.wma(df.close, talib=True) - assert isinstance(result, Series) - assert result.name == "WMA_10" - - -def test_zlma(df): - result = ta.zlma(df.close, df.volume) - assert isinstance(result, Series) - assert result.name == "ZL_EMA_10" - - - -# DataFrame Extension Tests -def test_ext_alligator(df): - df.ta.alligator(append=True) - assert list(df.columns[-3:]) == [ - "AGj_13_8_5", "AGt_13_8_5", "AGl_13_8_5" - ] - - -def test_ext_alma(df): - df.ta.alma(append=True) - assert df.columns[-1] == "ALMA_9_6.0_0.85" - - -def test_ext_dema(df): - df.ta.dema(append=True) - assert df.columns[-1] == "DEMA_10" - - -def test_ext_ema(df): - df.ta.ema(append=True) - assert df.columns[-1] == "EMA_10" - - -def test_ext_fwma(df): - df.ta.fwma(append=True) - assert df.columns[-1] == "FWMA_10" - - -def test_ext_hilo(df): - df.ta.hilo(append=True) - assert list(df.columns[-3:]) == [ - "HILO_13_21", "HILOl_13_21", "HILOs_13_21" - ] - - -def test_ext_hl2(df): - df.ta.hl2(append=True) - assert df.columns[-1] == "HL2" - - -def test_ext_hlc3(df): - df.ta.hlc3(append=True) - assert df.columns[-1] == "HLC3" - - -def test_ext_hma(df): - df.ta.hma(append=True) - assert df.columns[-1] == "HMA_10" - - -def test_ext_hwma(df): - df.ta.hwma(append=True) - assert df.columns[-1] == "HWMA_0.2_0.1_0.1" - - -def test_ext_ichimoku(df): - df.ta.ichimoku(append=True) - columns = ["ISA_9", "ISB_26", "ITS_9", "IKS_26", "ICS_26"] - assert list(df.columns[-5:]) == columns - - -def test_ext_jma(df): - df.ta.jma(append=True) - assert df.columns[-1] == "JMA_7_0.0" - - -def test_ext_kama(df): - df.ta.kama(append=True) - assert df.columns[-1] == "KAMA_10_2_30" - - -def test_ext_linreg(df): - df.ta.linreg(append=True) - assert df.columns[-1] == "LINREG_14" - - -def test_ext_mama(df): - df.ta.mama(append=True) - assert list(df.columns[-2:]) == ["MAMA_0.5_0.05", "FAMA_0.5_0.05"] - - -def test_ext_mcgd(df): - df.ta.mcgd(append=True) - assert df.columns[-1] == "MCGD_10" - - -def test_ext_midpoint(df): - df.ta.midpoint(append=True) - assert df.columns[-1] == "MIDPOINT_2" - - -def test_ext_midprice(df): - df.ta.midprice(append=True) - assert df.columns[-1] == "MIDPRICE_2" - - -def test_ext_ohlc4(df): - df.ta.ohlc4(append=True) - assert df.columns[-1] == "OHLC4" - - -def test_ext_pivots(df): - df.ta.pivots(append=True) - assert len(df.columns[-9:]) == 9 - - -def test_ext_pwma(df): - df.ta.pwma(append=True) - assert df.columns[-1] == "PWMA_10" - - -def test_ext_rma(df): - df.ta.rma(append=True) - assert df.columns[-1] == "RMA_10" - - -def test_ext_sinwma(df): - df.ta.sinwma(append=True) - assert df.columns[-1] == "SINWMA_14" - - -def test_ext_sma(df): - df.ta.sma(append=True) - assert df.columns[-1] == "SMA_10" - - -def test_ext_smma(df): - df.ta.smma(append=True) - assert df.columns[-1] == "SMMA_7" - - -def test_ext_ssf(df): - df.ta.ssf(append=True) - assert df.columns[-1] == "SSF_20" - - -def test_ext_ssf3(df): - df.ta.ssf3(append=True) - assert df.columns[-1] == "SSF3_20" - - -def test_ext_supertrend(df): - df.ta.supertrend(append=True) - columns = [ - "SUPERT_7_3.0", "SUPERTd_7_3.0", "SUPERTl_7_3.0", "SUPERTs_7_3.0" - ] - assert list(df.columns[-4:]) == columns - - -def test_ext_swma(df): - df.ta.swma(append=True) - assert df.columns[-1] == "SWMA_10" - - -def test_ext_t3(df): - df.ta.t3(append=True) - assert df.columns[-1] == "T3_10_0.7" - - -def test_ext_tema(df): - df.ta.tema(append=True) - assert df.columns[-1] == "TEMA_10" - - -def test_ext_trima(df): - df.ta.trima(append=True) - assert df.columns[-1] == "TRIMA_10" - - -def test_ext_vidya(df): - df.ta.vidya(append=True) - assert df.columns[-1] == "VIDYA_14" - - -def test_ext_wcp(df): - df.ta.wcp(append=True) - assert df.columns[-1] == "WCP" - - -def test_ext_wma(df): - df.ta.wma(append=True) - assert df.columns[-1] == "WMA_10" - - -def test_ext_zlma(df): - df.ta.zlma(append=True) - assert df.columns[-1] == "ZL_EMA_10" diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_performance.py b/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_performance.py deleted file mode 100644 index 6ee86a39..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_performance.py +++ /dev/null @@ -1,43 +0,0 @@ -# -*- coding: utf-8 -*- -import pandas_ta as ta - - - -# TA Lib style Tests -def test_drawdown(df): - result = ta.drawdown(df.close) - assert result.name == "DD" - - -def test_log_return(df): - result = ta.log_return(df.close) - assert result.name == "LOGRET_1" - - result = ta.log_return(df.close, cumulative=True) - assert result.name == "CUMLOGRET_1" - - -def test_percent_return(df): - result = ta.percent_return(df.close, cumulative=False) - assert result.name == "PCTRET_1" - - result = ta.percent_return(df.close, cumulative=True) - assert result.name == "CUMPCTRET_1" - - - -# DataFrame Extension Tests -def test_ext_log_return(df): - df.ta.log_return(append=True) - assert df.columns[-1] == "LOGRET_1" - - df.ta.log_return(cumulative=True, append=True) - assert df.columns[-1] == "CUMLOGRET_1" - - -def test_ext_percent_return(df): - df.ta.percent_return(append=True) - assert df.columns[-1] == "PCTRET_1" - - df.ta.percent_return(cumulative=True, append=True) - assert df.columns[-1] == "CUMPCTRET_1" diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_statistics.py b/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_statistics.py deleted file mode 100644 index 42b588b1..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_statistics.py +++ /dev/null @@ -1,161 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -import pandas.testing as pdt -from pytest import mark -import talib as tal - -import pandas_ta as ta - -from .config import CORRELATION, CORRELATION_THRESHOLD, error_analysis - - - -# TA Lib style Tests -def test_entropy(df): - result = ta.entropy(df.close) - assert isinstance(result, Series) - assert result.name == "ENTP_10" - - -def test_kurtosis(df): - result = ta.kurtosis(df.close) - assert isinstance(result, Series) - assert result.name == "KURT_30" - - -def test_mad(df): - result = ta.mad(df.close) - assert isinstance(result, Series) - assert result.name == "MAD_30" - - -def test_median(df): - result = ta.median(df.close) - assert isinstance(result, Series) - assert result.name == "MEDIAN_30" - - -def test_quantile(df): - result = ta.quantile(df.close) - assert isinstance(result, Series) - assert result.name == "QTL_30_0.5" - - -def test_skew(df): - result = ta.skew(df.close) - assert isinstance(result, Series) - assert result.name == "SKEW_30" - - -def test_stdev(df): - result = ta.stdev(df.close, talib=False, ddof=0) - assert isinstance(result, Series) - assert result.name == "STDEV_30" - - try: - expected = tal.STDDEV(df.close, 30) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - -@mark.parametrize("length,stds,name,columns", [ - (None, None, "TOS_STDEVALL", 7), - (30, None, "TOS_STDEVALL_30", 7), - (30, [1, 2], "TOS_STDEVALL_30", 5), -]) -def test_tos_stdevall(df, length, stds, name, columns): - result = ta.tos_stdevall(df.close, length=length, stds=stds) - assert isinstance(result, DataFrame) - assert result.name == name - assert len(result.columns) == columns - - -def test_variance(df): - result = ta.variance(df.close, talib=False, ddof=0) - assert isinstance(result, Series) - assert result.name == "VAR_30" - - try: - expected = tal.VAR(df.close, 30) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.variance(df.close) - assert isinstance(result, Series) - assert result.name == "VAR_30" - - -def test_zscore(df): - result = ta.zscore(df.close) - assert isinstance(result, Series) - assert result.name == "ZS_30" - - - -# DataFrame Extension Tests -def test_ext_entropy(df): - df.ta.entropy(append=True) - assert df.columns[-1] == "ENTP_10" - - -def test_ext_kurtosis(df): - df.ta.kurtosis(append=True) - assert df.columns[-1] == "KURT_30" - - -def test_ext_mad(df): - df.ta.mad(append=True) - assert df.columns[-1] == "MAD_30" - - -def test_ext_median(df): - df.ta.median(append=True) - assert df.columns[-1] == "MEDIAN_30" - - -def test_ext_quantile(df): - df.ta.quantile(append=True) - assert df.columns[-1] == "QTL_30_0.5" - - -def test_ext_skew(df): - df.ta.skew(append=True) - assert df.columns[-1] == "SKEW_30" - - -def test_ext_stdev(df): - df.ta.stdev(append=True) - assert df.columns[-1] == "STDEV_30" - - -def test_ext_tos_stdevall(df): - df.ta.tos_stdevall(append=True) - columns = [ - "TOS_STDEVALL_LR", - "TOS_STDEVALL_L_1", "TOS_STDEVALL_U_1", - "TOS_STDEVALL_L_2", "TOS_STDEVALL_U_2", - "TOS_STDEVALL_L_3", "TOS_STDEVALL_U_3" - ] - assert list(df.columns[-7:]) == columns - - -def test_ext_variance(df): - df.ta.variance(append=True) - assert df.columns[-1] == "VAR_30" - - -def test_ext_zscore(df): - df.ta.zscore(append=True) - assert df.columns[-1] == "ZS_30" diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_trend.py b/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_trend.py deleted file mode 100644 index 76660452..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_trend.py +++ /dev/null @@ -1,436 +0,0 @@ -# -*- coding: utf-8 -*- -import numpy as np -from pandas import DataFrame, Series, read_csv -import pandas.testing as pdt -import talib as tal - -import pandas_ta as ta - -from .config import CORRELATION, CORRELATION_THRESHOLD, error_analysis - - - -sample_adx_data = read_csv( - f"data/ADX_D.csv", - index_col=0, - parse_dates=True, - # date_format="%f" - date_format="%m/%d/%Y %I:%M:%S `%p" -) - -expected_tv_adx = DataFrame({ - "ADX_14": [ - None, None, None, None, None, None, - None, None, None, None, None, None, - None, None, 9.874338, 10.408195, 10.799274, - ], - "DMP_14": [ - None, 13.686598, 14.247809, 13.436449, 17.946530, 17.193874, - 19.214901, 17.860325, 16.899406, 16.207983, 15.998908, 15.202702, - 14.621306, 14.303707, 13.451093, 12.932243, 12.840198 - ], - "DMN_14": [ - None, 21.954010, 21.055379, 23.102292, 21.120552, 20.234781, - 18.827331, 19.298744, 19.029033, 18.250478, 17.414460, 16.772558, - 16.131126, 15.780731, 19.097781, 18.361121, 17.689287 - ] -}) - - -# TA Lib style Tests -def test_adx(df): - result = ta.adx(df.high, df.low, df.close, talib=False) - assert isinstance(result, DataFrame) - assert result.name == "ADX_14" - assert len(result.columns) == 4 - - try: - expected = tal.ADX(df.high, df.low, df.close) - pdt.assert_series_equal(result.iloc[0], expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.adx(df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "ADX_14" - - # TV Test - df = sample_adx_data - result = ta.adx(df.high, df.low, df.close, tvmode=True) - assert isinstance(result, DataFrame) - assert result.name == "ADX_14" - - result = result.iloc[13:] - result.drop(result.columns[1], axis=1, inplace=True) - result.reset_index(drop=True, inplace=True) - pdt.assert_frame_equal(result, expected_tv_adx) - - -def test_alphatrend(df): - result = ta.alphatrend(df.open, df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "ALPHAT_14_1_50" - - -def test_amat(df): - result = ta.amat(df.close) - assert isinstance(result, DataFrame) - assert result.name == "AMATe_8_21_2" - - -def test_aroon(df): - result = ta.aroon(df.high, df.low, talib=False) - assert isinstance(result, DataFrame) - assert result.name == "AROON_14" - - try: - expected = tal.AROON(df.high, df.low) - expecteddf = DataFrame({"AROOND_14": expected[0], "AROONU_14": expected[1]}) - pdt.assert_frame_equal(result, expecteddf) - except AssertionError: - try: - aroond_corr = ta.utils.df_error_analysis(result.iloc[:, 0], expected.iloc[:, 0]) - print(f"{aroond_corr=}") - assert aroond_corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result.iloc[:, 0], CORRELATION, ex) - - try: - aroonu_corr = ta.utils.df_error_analysis(result.iloc[:, 1], expected.iloc[:, 1]) - print(f"{aroonu_corr=}") - assert aroonu_corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result.iloc[:, 1], CORRELATION, ex) - - result = ta.aroon(df.high, df.low) - assert isinstance(result, DataFrame) - assert result.name == "AROON_14" - - -def test_aroon_osc(df): - result = ta.aroon(df.high, df.low, talib=False) - assert isinstance(result, DataFrame) - assert result.name == "AROON_14" - - try: - expected = tal.AROONOSC(df.high, df.low) - pdt.assert_series_equal(result.iloc[:, 2], expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected.iloc[:, 2]) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - -def test_chop(df): - result = ta.chop(df.high, df.low, df.close, ln=False) - assert isinstance(result, Series) - assert result.name == "CHOP_14_1_100.0" - - result = ta.chop(df.high, df.low, df.close, ln=True) - assert isinstance(result, Series) - assert result.name == "CHOPln_14_1_100.0" - - -def test_cksp(df): - result = ta.cksp(df.high, df.low, df.close, tvmode=False) - assert isinstance(result, DataFrame) - assert result.name == "CKSP_10_3_20" - - result = ta.cksp(df.high, df.low, df.close, tvmode=True) - assert isinstance(result, DataFrame) - assert result.name == "CKSP_10_1_9" - - -def test_decay(df): - result = ta.decay(df.close) - assert isinstance(result, Series) - assert result.name == "LDECAY_1" - - result = ta.decay(df.close, mode="exp") - assert isinstance(result, Series) - assert result.name == "EXPDECAY_1" - - tulip = Series([0, 0, 0, 1, 0, 0, 0, 1, 0, 0]) - expected = Series([0, 0, 0, 1, 0.75, 0.5, 0.25, 1, 0.75, 0.5]) - result = ta.decay(tulip, length=4, mode="linear") - assert isinstance(result, Series) - assert result.name == "LDECAY_4" - pdt.assert_series_equal(result, expected, check_names=False) - - -def test_decreasing(df): - result = ta.decreasing(df.close) - assert isinstance(result, Series) - assert result.name == "DEC_1" - - result = ta.decreasing(df.close, length=3, strict=True) - assert isinstance(result, Series) - assert result.name == "SDEC_3" - - -def test_dpo(df): - result = ta.dpo(df.close) - assert isinstance(result, Series) - assert result.name == "DPO_20" - - -def test_ht_trendline(df): - result = ta.ht_trendline(df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "HT_TL" - - try: - expected = tal.HT_TRENDLINE(df.close) - corr = ta.utils.df_error_analysis(result, expected) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.ht_trendline(df.close) - assert isinstance(result, Series) - assert result.name == "HT_TL" - - -def test_increasing(df): - result = ta.increasing(df.close) - assert isinstance(result, Series) - assert result.name == "INC_1" - - result = ta.increasing(df.close, length=3, strict=True) - assert isinstance(result, Series) - assert result.name == "SINC_3" - - -def test_long_run(df): - result = ta.long_run(df.open, df.close) - assert isinstance(result, Series) - assert result.name == "LR_2" - - -def test_psar(df): - result = ta.psar(df.high, df.low, talib=False) - assert isinstance(result, DataFrame) - assert result.name == "PSAR_0.02_0.2" - - # Combine Long and Short SAR"s into one SAR value - psar = result[result.columns[:2]].fillna(0) - psar = psar[psar.columns[0]] + psar[psar.columns[1]] - psar.iloc[0] = np.nan - psar.name = result.name - - try: - expected = tal.SAR(df.high, df.low) - pdt.assert_series_equal(psar, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(psar, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - -def test_qstick(df): - result = ta.qstick(df.open, df.close) - assert isinstance(result, Series) - assert result.name == "QS_10" - - -def test_rwi(df): - result = ta.rwi(df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "RWI_14" - - -def test_short_run(df): - result = ta.short_run(df.close, df.open) - assert isinstance(result, Series) - assert result.name == "SR_2" - - -def test_trendflex(df): - result = ta.trendflex(df.close) - assert isinstance(result, Series) - assert result.name == "TRENDFLEX_20_20_0.04" - - -def test_vhf(df): - result = ta.vhf(df.high, df.low, df.close) - assert isinstance(result, Series) - assert result.name == "VHF_28" - - -def test_vortex(df): - result = ta.vortex(df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "VTX_14" - - -def test_zigzag(df): - result = ta.zigzag(df.high, df.low) - assert isinstance(result, DataFrame) - assert result.name == "ZIGZAG_5.0%_10" - - result = ta.zigzag(df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "ZIGZAG_5.0%_10" - - notna = result.iloc[:,0].notna() - high_pivotsdf = result[notna & (result["ZIGZAGs_5.0%_10"]==1)] - assert isinstance(high_pivotsdf, DataFrame) - assert high_pivotsdf.shape[0] == 1 - - low_pivotsdf = result[notna & (result["ZIGZAGs_5.0%_10"]==-1)] - assert isinstance(low_pivotsdf, DataFrame) - assert low_pivotsdf.shape[0] == 1 - - all_pivotsdf = result[notna] - assert isinstance(all_pivotsdf, DataFrame) - total_length = low_pivotsdf.shape[0] + high_pivotsdf.shape[0] - assert all_pivotsdf.shape[0] == total_length - - - -# DataFrame Extension Tests -def test_ext_adx(df): - df.ta.adx(append=True) - assert list(df.columns[-4:]) == [ - "ADX_14", "ADXR_14_2", "DMP_14", "DMN_14" - ] - - -def test_ext_alphatrend(df): - df.ta.alphatrend(append=True) - assert list(df.columns[-2:]) == ["ALPHAT_14_1_50", "ALPHATl_14_1_50_2"] - - -def test_ext_amat(df): - df.ta.amat(append=True) - assert list(df.columns[-2:]) == ["AMATe_LR_8_21_2", "AMATe_SR_8_21_2"] - - -def test_ext_aroon(df): - df.ta.aroon(append=True) - assert list(df.columns[-3:]) == ["AROOND_14", "AROONU_14", "AROONOSC_14"] - - -def test_ext_chop(df): - df.ta.chop(ln=False, append=True) - assert df.columns[-1] == "CHOP_14_1_100.0" - - df.ta.chop(ln=True, append=True) - assert df.columns[-1] == "CHOPln_14_1_100.0" - - -def test_ext_cksp(df): - df.ta.cksp(tvmode=False, append=True) - assert list(df.columns[-2:]) == ["CKSPl_10_3_20", "CKSPs_10_3_20"] - - df.ta.cksp(tvmode=True, append=True) - assert list(df.columns[-2:]) == ["CKSPl_10_1_9", "CKSPs_10_1_9"] - - -def test_ext_decay(df): - df.ta.decay(append=True) - assert df.columns[-1] == "LDECAY_1" - - df.ta.decay(mode="exp", append=True) - assert df.columns[-1] == "EXPDECAY_1" - - -def test_ext_decreasing(df): - df.ta.decreasing(append=True) - assert df.columns[-1] == "DEC_1" - - df.ta.decreasing(length=3, strict=True, append=True) - assert df.columns[-1] == "SDEC_3" - - -def test_ext_dpo(df): - df.ta.dpo(append=True) - assert df.columns[-1] == "DPO_20" - - -def test_ext_ht_trendline(df): - df.ta.ht_trendline(append=True) - assert df.columns[-1] == "HT_TL" - - -def test_ext_increasing(df): - df.ta.increasing(append=True) - assert df.columns[-1] == "INC_1" - - df.ta.increasing(length=3, strict=True, append=True) - assert df.columns[-1] == "SINC_3" - - -def test_ext_long_run(df): - result = df.ta.long_run(append=True) - assert df.shape == result.shape - - fast, slow = df.ta.ema(8), df.ta.ema(21) - df.ta.long_run(fast, slow, append=True) - assert df.columns[-1] == "LR_2" - - -def test_ext_psar(df): - df.ta.psar(append=True) - expected = [ - "PSARl_0.02_0.2", "PSARs_0.02_0.2", - "PSARaf_0.02_0.2", "PSARr_0.02_0.2" - ] - assert list(df.columns[-4:]) == expected - - -def test_ext_qstick(df): - df.ta.qstick(append=True) - assert df.columns[-1] == "QS_10" - - -def test_ext_rwi(df): - df.ta.rwi(append=True) - assert list(df.columns[-2:]) == ["RWIh_14", "RWIl_14"] - - -def test_ext_short_run(df): - result = df.ta.short_run(append=True) - assert df.shape == result.shape - - fast, slow = df.ta.ema(8), df.ta.ema(21) - df.ta.short_run(fast, slow, append=True) - assert df.columns[-1] == "SR_2" - - -def test_ext_trendflex(df): - df.ta.trendflex(append=True) - assert df.columns[-1] == "TRENDFLEX_20_20_0.04" - - -def test_ext_vhf(df): - df.ta.vhf(append=True) - assert df.columns[-1] == "VHF_28" - - -def test_ext_vortex(df): - df.ta.vortex(append=True) - assert list(df.columns[-2:]) == ["VTXP_14", "VTXM_14"] - - -def test_ext_zigzag(df): - df.ta.zigzag(append=True) - assert list(df.columns[-3:]) == [ - "ZIGZAGs_5.0%_10", "ZIGZAGv_5.0%_10", "ZIGZAGd_5.0%_10" - ] diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_volatility.py b/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_volatility.py deleted file mode 100644 index af3b7f7e..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_volatility.py +++ /dev/null @@ -1,332 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -import pandas.testing as pdt -import talib as tal - -import pandas_ta as ta - -from .config import CORRELATION, CORRELATION_THRESHOLD, error_analysis - - - -# TA Lib style Tests -def test_aberration(df): - result = ta.aberration(df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "ABER_5_15" - - -def test_accbands(df): - result = ta.accbands(df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "ACCBANDS_20" - - -def test_atr(df): - result = ta.atr(df.high, df.low, df.close, talib=False, prenan=True) - assert isinstance(result, Series) - assert result.name == "ATRr_14" - - try: - expected = tal.ATR(df.high, df.low, df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.atr(df.high, df.low, df.close, df.volume) - assert isinstance(result, Series) - assert result.name == "ATRr_14" - - -def test_atrts(df): - result = ta.atrts(df.high, df.low, df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "ATRTSe_14_20_3.0" - - -def test_bbands(df): - result = ta.bbands(df.close, talib=False) - assert isinstance(result, DataFrame) - assert result.name == "BBANDS_5_2.0_2.0" - - try: - expected = tal.BBANDS(df.close) - expecteddf = DataFrame({ - "BBL_5_2.0_2.0": expected[2], - "BBM_5_2.0_2.0": expected[1], - "BBU_5_2.0_2.0": expected[0] - }) - pdt.assert_frame_equal(result, expecteddf) - except AssertionError: - try: - bbl_corr = ta.utils.df_error_analysis(result, expected) - print(f"{bbl_corr=}") - assert bbl_corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result.iloc[:, 0], CORRELATION, ex) - - try: - bbm_corr = ta.utils.df_error_analysis(result, expected) - print(f"{bbm_corr=}") - assert bbm_corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result.iloc[:, 1], CORRELATION, ex) - - try: - bbu_corr = ta.utils.df_error_analysis(result, expected) - print(f"{bbu_corr=}") - assert bbu_corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result.iloc[:, 2], CORRELATION, ex) - - result = ta.bbands(df.close, ddof=0) - assert isinstance(result, DataFrame) - assert result.name == "BBANDS_5_2.0_2.0" - - result = ta.bbands(df.close, ddof=1) - assert isinstance(result, DataFrame) - assert result.name == "BBANDS_5_2.0_2.0" - - result = ta.bbands(df.close, lower_std=3, upper_std=5) - assert isinstance(result, DataFrame) - assert result.name == "BBANDS_5_3_5" - - -def test_chandelier_exit(df): - result = ta.chandelier_exit(df.high, df.low, df.close, talib=False) - assert isinstance(result, DataFrame) - assert result.name == "CHDLREXT_22_22_14_2.0" - - -def test_donchian(df): - result = ta.donchian(df.high, df.low) - assert isinstance(result, DataFrame) - assert result.name == "DC_20_20" - - result = ta.donchian(df.high, df.low, lower_length=10, upper_length=5) - assert isinstance(result, DataFrame) - assert result.name == "DC_10_5" - - -def test_hwc(df): - result = ta.hwc(df.close, channels=True) - assert isinstance(result, DataFrame) - assert result.name == "HWC_1" - - result = ta.hwc(df.close, channels=False) - assert isinstance(result, DataFrame) - assert result.name == "HWC_1" - - -def test_kc(df): - result = ta.kc(df.high, df.low, df.close) - assert isinstance(result, DataFrame) - assert result.name == "KCe_20_2" - - result = ta.kc(df.high, df.low, df.close, mamode="sma") - assert isinstance(result, DataFrame) - assert result.name == "KCs_20_2" - - -def test_massi(df): - result = ta.massi(df.high, df.low) - assert isinstance(result, Series) - assert result.name == "MASSI_9_25" - - -def test_natr(df): - result = ta.natr(df.high, df.low, df.close, talib=False, prenan=True) - assert isinstance(result, Series) - assert result.name == "NATR_14" - - try: - expected = tal.NATR(df.high, df.low, df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.natr(df.high, df.low, df.close, df.volume) - assert isinstance(result, Series) - assert result.name == "NATR_14" - - -def test_pdist(df): - result = ta.pdist(df.open, df.high, df.low, df.close) - assert isinstance(result, Series) - assert result.name == "PDIST" - - -def test_rvi(df): - result = ta.rvi(df.close) - assert isinstance(result, Series) - assert result.name == "RVI_14" - - result = ta.rvi(df.close, df.high, df.low, refined=True) - assert isinstance(result, Series) - assert result.name == "RVIr_14" - - result = ta.rvi(df.close, df.high, df.low, thirds=True) - assert isinstance(result, Series) - assert result.name == "RVIt_14" - - -def test_thermo(df): - result = ta.thermo(df.high, df.low) - assert isinstance(result, DataFrame) - assert result.name == "THERMO_20_2_0.5" - - -def test_true_range(df): - result = ta.true_range(df.high, df.low, df.close, talib=False) - assert isinstance(result, Series) - assert result.name == "TRUERANGE_1" - - try: - expected = tal.TRANGE(df.high, df.low, df.close) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.true_range(df.high, df.low, df.close) - assert isinstance(result, Series) - assert result.name == "TRUERANGE_1" - - -def test_ui(df): - result = ta.ui(df.close) - assert isinstance(result, Series) - assert result.name == "UI_14" - - result = ta.ui(df.close, everget=True) - assert isinstance(result, Series) - assert result.name == "UIe_14" - - - -# DataFrame Extension Tests -def test_ext_aberration(df): - df.ta.aberration(append=True) - columns = [ - "ABER_ZG_5_15", "ABER_SG_5_15", "ABER_XG_5_15", "ABER_ATR_5_15" - ] - assert list(df.columns[-4:]) == columns - - -def test_ext_accbands(df): - df.ta.accbands(append=True) - assert list(df.columns[-3:]) == ["ACCBL_20", "ACCBM_20", "ACCBU_20"] - - -def test_ext_atr(df): - df.ta.atr(append=True) - assert df.columns[-1] == "ATRr_14" - - -def test_ext_atrts(df): - df.ta.atrts(append=True) - assert df.columns[-1] == "ATRTSe_14_20_3.0" - - -def test_ext_bbands(df): - df.ta.bbands(append=True) - columns = [ - "BBL_5_2.0_2.0", "BBM_5_2.0_2.0", - "BBU_5_2.0_2.0", "BBB_5_2.0_2.0", "BBP_5_2.0_2.0" - ] - assert list(df.columns[-5:]) == columns - - result = df.ta.bbands(lower_std=3, upper_std=5) - assert isinstance(result, DataFrame) - assert result.name == "BBANDS_5_3_5" - columns = ["BBL_5_3_5", "BBM_5_3_5", "BBU_5_3_5", "BBB_5_3_5", "BBP_5_3_5"] - assert list(result.columns) == columns - - -def test_ext_chandelier_exit(df): - df.ta.chandelier_exit(append=True) - columns = [ - "CHDLREXTl_22_22_14_2.0", - "CHDLREXTs_22_22_14_2.0", - "CHDLREXTd_22_22_14_2.0" - ] - assert list(df.columns[-3:]) == columns - - -def test_ext_donchian(df): - df.ta.donchian(append=True) - assert list(df.columns[-3:]) == ["DCL_20_20", "DCM_20_20", "DCU_20_20"] - - -def test_ext_hwc(df): - df.ta.hwc(append=True) - assert list(df.columns[-5:]) == [ - "HWM_1", "HWL_1", "HWU_1", "HWW_1", "HWPCT_1" - ] - - -def test_ext_kc(df): - df.ta.kc(append=True) - assert list(df.columns[-3:]) == ["KCLe_20_2", "KCBe_20_2", "KCUe_20_2"] - - -def test_ext_massi(df): - df.ta.massi(append=True) - assert df.columns[-1] == "MASSI_9_25" - - -def test_ext_natr(df): - df.ta.natr(append=True) - assert df.columns[-1] == "NATR_14" - - -def test_ext_pdist(df): - df.ta.pdist(append=True) - assert df.columns[-1] == "PDIST" - - -def test_ext_rvi(df): - df.ta.rvi(append=True) - assert df.columns[-1] == "RVI_14" - - df.ta.rvi(refined=True, append=True) - assert df.columns[-1] == "RVIr_14" - - df.ta.rvi(thirds=True, append=True) - assert df.columns[-1] == "RVIt_14" - - -def test_ext_thermo(df): - df.ta.thermo(append=True) - columns = [ - "THERMO_20_2_0.5", "THERMOma_20_2_0.5", - "THERMOl_20_2_0.5", "THERMOs_20_2_0.5" - ] - assert list(df.columns[-4:]) == columns - - -def test_ext_true_range(df): - df.ta.true_range(append=True) - assert df.columns[-1] == "TRUERANGE_1" - - -def test_ext_ui(df): - df.ta.ui(append=True) - assert df.columns[-1] == "UI_14" - - df.ta.ui(everget=True, append=True) - assert df.columns[-1] == "UIe_14" diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_volume.py b/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_volume.py deleted file mode 100644 index d239f344..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_indicator_volume.py +++ /dev/null @@ -1,324 +0,0 @@ -# -*- coding: utf-8 -*- -from pandas import DataFrame, Series -import pandas.testing as pdt -from pytest import mark -import talib as tal - -import pandas_ta as ta - -from .config import CORRELATION, CORRELATION_THRESHOLD, error_analysis - - - -# TA Lib style Tests -def test_ad(df): - result = ta.ad(df.high, df.low, df.close, df.volume, talib=False) - assert isinstance(result, Series) - assert result.name == "AD" - - try: - expected = tal.AD(df.high, df.low, df.close, df.volume) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.ad(df.high, df.low, df.close, df.volume) - assert isinstance(result, Series) - assert result.name == "AD" - - -def test_ad_open(df): - result = ta.ad(df.high, df.low, df.close, df.volume, df.open) - assert isinstance(result, Series) - assert result.name == "ADo" - - -def test_adosc(df): - result = ta.adosc(df.high, df.low, df.close, df.volume, talib=False) - assert isinstance(result, Series) - assert result.name == "ADOSC_3_10" - - try: - expected = tal.ADOSC(df.high, df.low, df.close, df.volume) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.adosc(df.high, df.low, df.close, df.volume) - assert isinstance(result, Series) - assert result.name == "ADOSC_3_10" - - -def test_aobv(df): - result = ta.aobv(df.close, df.volume) - assert isinstance(result, DataFrame) - assert result.name == "AOBVe_4_12_2_2_2" - - -def test_cmf(df): - result = ta.cmf(df.high, df.low, df.close, df.volume) - assert isinstance(result, Series) - assert result.name == "CMF_20" - - -def test_efi(df): - result = ta.efi(df.close, df.volume) - assert isinstance(result, Series) - assert result.name == "EFI_13" - - -def test_eom(df): - result = ta.eom(df.high, df.low, df.close, df.volume) - assert isinstance(result, Series) - assert result.name == "EOM_14_100000000" - - -def test_kvo(df): - result = ta.kvo(df.high, df.low, df.close, df.volume) - assert isinstance(result, DataFrame) - assert result.name == "KVO_34_55_13" - - -def test_mfi(df): - result = ta.mfi(df.high, df.low, df.close, df.volume, talib=False) - assert isinstance(result, Series) - assert result.name == "MFI_14" - - try: - expected = tal.MFI(df.high, df.low, df.close, df.volume) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.mfi(df.high, df.low, df.close, df.volume) - assert isinstance(result, Series) - assert result.name == "MFI_14" - - -def test_nvi(df): - result = ta.nvi(df.close, df.volume) - assert isinstance(result, Series) - assert result.name == "NVI_1" - - -def test_obv(df): - result = ta.obv(df.close, df.volume, talib=False) - assert isinstance(result, Series) - assert result.name == "OBV" - - try: - expected = tal.OBV(df.close, df.volume) - pdt.assert_series_equal(result, expected, check_names=False) - except AssertionError: - try: - corr = ta.utils.df_error_analysis(result, expected) - print(f"{corr=}") - assert corr > CORRELATION_THRESHOLD - except Exception as ex: - error_analysis(result, CORRELATION, ex) - - result = ta.obv(df.close, df.volume) - assert isinstance(result, Series) - assert result.name == "OBV" - - -def test_pvi(df): - result = ta.pvi(df.close, df.volume, length=10) - assert isinstance(result, DataFrame) - assert result.name == "PVI" - - result = ta.pvi(df.close, df.volume, length=10, overlay=True) - assert isinstance(result, DataFrame) - assert df.close.iloc[0] == result.iloc[0,0] - - -def test_pvo(df): - result = ta.pvo(df.volume) - assert isinstance(result, DataFrame) - assert result.name == "PVO_12_26_9" - - -def test_pvol(df): - result = ta.pvol(df.close, df.volume) - assert isinstance(result, Series) - assert result.name == "PVOL" - - -def test_pvr(df): - result = ta.pvr(df.close, df.volume) - assert isinstance(result, Series) - assert result.name == "PVR" - - -def test_pvt(df): - result = ta.pvt(df.close, df.volume) - assert isinstance(result, Series) - assert result.name == "PVT" - - -def test_tsv(df): - result = ta.tsv(df.close, df.volume) - assert isinstance(result, DataFrame) - assert result.name == "TSV_18_10" - - -def test_vhm(df): - result = ta.vhm(df.volume, 30, 30) - assert isinstance(result, Series) - assert result.name == "VHM_30" - - result = ta.vhm(df.volume, 10, 20) - assert isinstance(result, Series) - assert result.name == "VHM_10_20" - - -def test_vp(df): - result = ta.vp(df.close, df.volume) - assert isinstance(result, DataFrame) - assert result.name == "VP_10" - - result = ta.vp(df.close, df.volume, sort=True) - assert isinstance(result, DataFrame) - assert result.name == "VP_10" - - -@mark.parametrize("bands,dtype", [ - (None, Series), ([1], DataFrame), ([-1, 1], DataFrame), - ([1, 2, 4, 8], DataFrame), ([1, 2.5, 4.13], DataFrame), -]) -def test_vwap(df, bands, dtype): - result = ta.vwap(df.high, df.low, df.close, df.volume, bands=bands) - assert isinstance(result, dtype) - assert result.name == "VWAP_D" - - -def test_vwma(df): - result = ta.vwma(df.close, df.volume) - assert isinstance(result, Series) - assert result.name == "VWMA_10" - - - - -# DataFrame Extension Tests -def test_ext_ad(df): - df.ta.ad(talib=False, append=True) - assert df.columns[-1] == "AD" - - df.ta.ad(open_=df.open, append=True) - assert df.columns[-1] == "ADo" - - -def test_ext_adosc(df): - df.ta.adosc(append=True) - assert df.columns[-1] == "ADOSC_3_10" - - -def test_ext_aobv(df): - df.ta.aobv(append=True) - columns = [ - "OBV", "OBV_min_2", "OBV_max_2", "OBVe_4", - "OBVe_12", "AOBV_LR_2", "AOBV_SR_2" - ] - assert list(df.columns[-7:]) == columns - - -def test_ext_cmf(df): - df.ta.cmf(append=True) - assert df.columns[-1] == "CMF_20" - - -def test_ext_efi(df): - df.ta.efi(append=True) - assert df.columns[-1] == "EFI_13" - - -def test_ext_eom(df): - df.ta.eom(append=True) - assert df.columns[-1] == "EOM_14_100000000" - - -def test_ext_kvo(df): - df.ta.kvo(append=True) - assert list(df.columns[-2:]) == ["KVO_34_55_13", "KVOs_34_55_13"] - - -def test_ext_mfi(df): - df.ta.mfi(append=True) - assert df.columns[-1] == "MFI_14" - - -def test_ext_nvi(df): - df.ta.nvi(append=True) - assert df.columns[-1] == "NVI_1" - - -def test_ext_obv(df): - df.ta.obv(append=True) - assert df.columns[-1] == "OBV" - - -def test_ext_pvi(df): - df.ta.pvi(length=10, append=True) - assert list(df.columns[-2:]) == ["PVI", "PVIe_10"] - - -def test_ext_pvo(df): - df.ta.pvo(append=True) - assert list(df.columns[-3:]) == [ - "PVO_12_26_9", "PVOh_12_26_9", "PVOs_12_26_9" - ] - - -def test_ext_pvol(df): - df.ta.pvol(append=True) - assert df.columns[-1] == "PVOL" - - -def test_ext_pvr(df): - df.ta.pvr(append=True) - assert df.columns[-1] == "PVR" - - -def test_ext_pvt(df): - df.ta.pvt(append=True) - assert df.columns[-1] == "PVT" - - -def test_ext_tsv(df): - df.ta.tsv(append=True) - assert list(df.columns[-3:]) == ["TSV_18_10", "TSVs_18_10", "TSVr_18_10"] - - -def test_ext_vhm(df): - df.ta.vhm(length=30, slength=30, append=True) - assert df.columns[-1] == "VHM_30" - - -# Volume Profile can not be appended to the df - - -def test_ext_vwap(df): - df.ta.vwap(append=True) - assert df.columns[-1] == "VWAP_D" - - -def test_ext_vwma(df): - df.ta.vwma(append=True) - # print(f"\n{df.columns=}\n") - assert df.columns[-1] == "VWMA_10" diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_numba.py b/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_numba.py deleted file mode 100644 index ba7692eb..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_numba.py +++ /dev/null @@ -1,35 +0,0 @@ -# -*- coding: utf-8 -*- -import numpy as np -from pytest import mark - -import pandas_ta as ta - - - -@mark.parametrize("array,n,result", [ - (np.ones(5), 2, np.array([np.nan, 1.0, 1.0, 1.0, 1.0])), - (np.ones(5), -2, np.ones(5)) -]) -def test_nb_prenan(array, n, result): - np.testing.assert_array_equal(ta.nb_prenan(array, n), result) - - -@mark.parametrize("array,n,result", [ - (np.ones(5), 2, np.array([np.nan, np.nan, 1.0, 1.0, 1.0, 1.0, 1.0])), - (np.ones(5), -2, np.ones(5)) -]) -def test_nb_prepend(array, n, result): - np.testing.assert_array_equal(ta.nb_prepend(array, n), result) - - -@mark.parametrize("array,n,fn,result", [(np.ones(5), 2, None, np.ones(5))]) -def test_nb_rolling(array, n, fn, result): - np.testing.assert_array_equal(ta.nb_rolling(array, n, fn), result) - - -@mark.parametrize("array,n,result", [ - (np.ones(5), 2, np.array([np.nan, np.nan, 1.0, 1.0, 1.0])), - (np.ones(5), -2, np.array([1.0, 1.0, 1.0, np.nan, np.nan])) -]) -def test_nb_shift(array, n, result): - np.testing.assert_array_equal(ta.nb_shift(array, n), result) diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_studies.py b/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_studies.py deleted file mode 100644 index 17dbf544..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_studies.py +++ /dev/null @@ -1,125 +0,0 @@ -# -*- coding: utf-8 -*- -from multiprocessing import cpu_count - -from pandas import DataFrame -import pytest - -import pandas_ta as ta - -categories = DataFrame().ta.categories() + \ -[pytest.param(ta.CommonStudy, id="common"), pytest.param(ta.AllStudy, id="all")] - -# +/- when adding/removing indicators -ALL_COLUMNS = 329 - - - -def test_all_study_props(all_study): - s = all_study - assert s.name == "All" - assert isinstance(s.description, str) - assert s.total_ta() == 0 # Only 'study' that is None - assert len(s.created) > 0 - assert s.cores == cpu_count() - - -def test_common_study_props(common_study): - s = common_study - assert s.name == "Common Price and Volume SMAs" - assert isinstance(s.description, str) - assert s.total_ta() == 5 - assert len(s.created) > 0 - assert s.cores == 0 - - -@pytest.mark.parametrize("category,columns", [ - ("candle", 70), ("cycle", 2), ("momentum", 85), ("overlap", 56), - ("performance", 2), ("statistics", 16), ("trend", 33), - ("volatility", 38), ("volume", 27), - pytest.param(ta.AllStudy, ALL_COLUMNS, id=f"all-{ALL_COLUMNS}"), - pytest.param(ta.CommonStudy, 5, id="common-5"), -]) -def test_study_category_columns(df, category, columns): - initial_columns = df.shape[1] - df.ta.study(category, cores=0) - assert df.shape[1] == initial_columns + columns - - -@pytest.mark.parametrize("talib", [False, True]) -@pytest.mark.parametrize("category", categories) -def test_study_category_talib(df, category, talib): - initial_columns = df.shape[1] - df.ta.study(category, cores=0, talib=talib) - assert df.shape[1] > initial_columns - - -@pytest.mark.parametrize("talib", [False, True]) -def test_study_custom_a_talib(df, custom_study_a, talib): - initial_columns = df.shape[1] - df.ta.study(custom_study_a, cores=0, talib=talib) - assert df.shape[1] > initial_columns - - -@pytest.mark.parametrize("talib", [False, True]) -def test_study_custom_b_talib(df, custom_study_b, talib): - initial_columns = df.shape[1] - df.ta.study(custom_study_b, cores=0, talib=talib) - assert df.shape[1] - initial_columns == 3 - - -@pytest.mark.parametrize("talib", [False, True]) -def test_study_custom_c_talib(df, custom_study_c, talib): - initial_columns = df.shape[1] - df.ta.study(custom_study_c, cores=0, talib=talib) - assert df.shape[1] - initial_columns == 5 - - -@pytest.mark.parametrize("talib", [False, True]) -def test_study_custom_d_talib(df, custom_study_d, talib): - initial_columns = df.shape[1] - df.ta.study(custom_study_d, cores=0, talib=talib) - assert df.shape[1] - initial_columns == 3 - - -@pytest.mark.parametrize("talib", [False, True]) -def test_study_custom_e_talib(df, custom_study_e, talib): - initial_columns = df.shape[1] - df.ta.study(custom_study_e, cores=0, talib=talib) - df.ta.tsignals(trend=df["AMATe_LR_20_50_2"], append=True) - assert df.shape[1] - initial_columns == 8 - - -@pytest.mark.parametrize("talib", [False, True]) -def test_study_all_multirun_talib(df, all_study, talib): - new_columns = 617 # +/- when adding/removing indicators - initial_columns = df.shape[1] - df.ta.study(all_study, length=10, cores=0, talib=talib) - df.ta.study(all_study, length=50, cores=0, talib=talib) - df.ta.study(all_study, fast=5, slow=10, cores=0, talib=talib) - - assert df.shape[1] == new_columns + initial_columns - - -# Note: As expected, it will print a VWAP datetime ordered index warning -# when less than 2 rows -@pytest.mark.parametrize("talib", [False, True]) -def test_study_all_incremental_rows_talib(df, all_study, talib): - MAX_ROWS = 77 - df = df.iloc[:MAX_ROWS] # Trim for this test - - for i in range(0, MAX_ROWS): - _df = df.iloc[:i] - _df.ta.study(all_study, cores=0, talib=talib) - # Break when max columns reached - if _df.shape[1] - df.shape[1] == ALL_COLUMNS: - assert _df.shape[1] > df.shape[1] - break - - -@pytest.mark.parametrize("talib", [False, True]) -@pytest.mark.parametrize("category", categories) -def test_study_mp_category_talib(df, category, talib): - cores = cpu_count() - 2 - initial_columns = df.shape[1] - df.ta.study(category, cores=cores, talib=talib) - assert df.shape[1] > initial_columns diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_utils.py b/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_utils.py deleted file mode 100644 index dddc8d0b..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/tests/test_utils.py +++ /dev/null @@ -1,439 +0,0 @@ -# -*- coding: utf-8 -*- -from sys import platform as sys_platform - -import numpy as np -from pandas import DataFrame, Series -from pandas.api.types import is_datetime64_ns_dtype -from pytest import mark, param - -from tests.conftest import all_study, common_study - -import pandas_ta as ta - -CROSS_E1 = { - "zero": [0, 0], - "a": [0, 1], - "b": [1, 0], - "c": [1, 1], - "crossed": [0, 1], -} -crosseddf = DataFrame(CROSS_E1) - -SCALARS = [ - np.ones(0), np.ones(1), np.array([1, 2]), np.array([1.5, 2.5]), - np.array([2, 3, 4]), np.array([0.01, 0.1, 10, 100]), - np.array([-10, -1, 10]) -] - - -def test_above(): - result = ta.utils.above(crosseddf["a"], crosseddf["zero"]) - assert isinstance(result, Series) - assert result.name == "a_A_zero" - np.testing.assert_array_equal(result, crosseddf["c"]) - - result = ta.utils.above(crosseddf["zero"], crosseddf["a"]) - assert isinstance(result, Series) - assert result.name == "zero_A_a" - np.testing.assert_array_equal(result, crosseddf["b"]) - - - -def test_above_value(): - result = ta.utils.above_value(crosseddf["a"], 0) - assert isinstance(result, Series) - assert result.name == "a_A_0" - np.testing.assert_array_equal(result, crosseddf["c"]) - - result = ta.utils.above_value(crosseddf["a"], crosseddf["zero"]) - assert result is None - - - -def test_add_df_prefix(df): - result = df.ta.hl2(prefix="pre") - assert result.name == "pre_HL2" - - result = df.ta.hl2(suffix="suf") - assert result.name == "HL2_suf" - - result = df.ta.hl2(prefix="pre", suffix="suf") - assert result.name == "pre_HL2_suf" - - result = df.ta.hl2(prefix=1, suffix=2) - assert result.name == "1_HL2_2" - - result = df.ta.macd(prefix="pre", suffix="suf") - for col in result.columns: - assert col.startswith("pre_") and col.endswith("_suf") - - - -def test_baseline_ohlc(df): - result = df.ta.baseline() - print(f"\n{result}\n") - # assert result.name == "pre_HL2" - - - -def test_below(): - result = ta.utils.below(crosseddf["zero"], crosseddf["a"]) - assert isinstance(result, Series) - assert result.name == "zero_B_a" - np.testing.assert_array_equal(result, crosseddf["c"]) - - result = ta.utils.below(crosseddf["zero"], crosseddf["a"]) - assert isinstance(result, Series) - assert result.name == "zero_B_a" - np.testing.assert_array_equal(result, crosseddf["c"]) - - - -def test_below_value(): - result = ta.utils.below_value(crosseddf["a"], 0) - assert isinstance(result, Series) - assert result.name == "a_B_0" - np.testing.assert_array_equal(result, crosseddf["b"]) - - result = ta.utils.below_value(crosseddf["a"], crosseddf["zero"]) - assert result is None - - - -def test_combination(): - assert ta.utils.combination() != None - - assert ta.utils.combination() == 1 - assert ta.utils.combination(r=-1) == 1 - - assert ta.utils.combination(n=10, r=4, repetition=False) == 210 - assert ta.utils.combination(n=10, r=4, repetition=True) == 715 - - - -def test_cross_above(): - result = ta.utils.cross(crosseddf["a"], crosseddf["b"]) - assert isinstance(result, Series) - np.testing.assert_array_equal(result, crosseddf["crossed"]) - - result = ta.utils.cross(crosseddf["a"], crosseddf["b"], above=True) - assert isinstance(result, Series) - np.testing.assert_array_equal(result, crosseddf["crossed"]) - - result = ta.utils.cross(crosseddf["a"], crosseddf["b"], equal=False) - assert isinstance(result, Series) - np.testing.assert_array_equal(result, crosseddf["crossed"]) - - - -def test_cross_below(): - result = ta.utils.cross(crosseddf["b"], crosseddf["a"], above=False) - assert isinstance(result, Series) - np.testing.assert_array_equal(result, crosseddf["crossed"]) - - result = ta.utils.cross(crosseddf["b"], crosseddf["a"], above=False, equal=False) - assert isinstance(result, Series) - np.testing.assert_array_equal(result, crosseddf["crossed"]) - - # result = ta.utils.cross(crosseddf["a"], crosseddf["b"], above=False) - # assert result[0] == 0 - - - -def test_cube(df): - result = ta.cube(Series([100, 50, 0, 25, 0, 60])) - assert result.name == "CUBE_3.0_-1" - - - -def test_datetime_ordered(df): - # Test if datetime64 index and ordered - # result = df.ta.datetime_ordered() - # assert result is True - assert df.ta.datetime_ordered() is True - - # Test if not ordered - original = df.copy() - original.ta.reverse() - result = original.ta.datetime_ordered() - assert result is False - - # Test a non-datetime64 index - original = df.copy() - original.reset_index(inplace=True) - result = original.ta.datetime_ordered() - assert result is False - - - -def test_df_dates(df): - result = ta.utils.df_dates(df) - assert result is None - - - -def test_fibonacci(): - np.testing.assert_array_equal(ta.utils.fibonacci(0, False), np.array([1, 1])) - np.testing.assert_array_equal(ta.utils.fibonacci(5, False), np.array([1, 1, 2, 3, 5])) - - assert isinstance(ta.utils.fibonacci(2, False), np.ndarray) - - - -def test_fibonacci_weighted(): - np.testing.assert_array_equal(ta.utils.fibonacci(0, True), np.array([0.5, 0.5])) - np.testing.assert_allclose(ta.utils.fibonacci(5, True), np.array([1 / 12, 1 / 12, 1 / 6, 1 / 4, 5 / 12])) - - assert isinstance(ta.utils.fibonacci(2, True), np.ndarray) - - - -def test_geometric_mean(df): - returns = ta.percent_return(df.close) - result = ta.utils.geometric_mean(returns) - assert isinstance(result, (float, int)) - - result = ta.utils.geometric_mean(Series([12, 14, 11, 8])) - assert isinstance(result, float) - - result = ta.utils.geometric_mean(Series([100, 50, 0, 25, 0, 60])) - assert isinstance(result, float) - - series = Series([0, 1, 2, 3]) - result = ta.utils.geometric_mean(series) - assert isinstance(result, float) - - result = ta.utils.geometric_mean(-series) - assert isinstance(result, int) - assert result == 0 - - - -def test_ifisher(): - result = ta.ifisher(Series([1, 2, 3, 4, 5, 6, 7, 4, 2, 1, 3])) - assert result.name == "INVFISHER_1.0" - - - -# def test_linear_regression(): -# x = Series([1, 2, 3, 4, 5]) -# y = Series([1.8, 2.1, 2.7, 3.2, 4]) - -# result = ta.utils.linear_regression(x, y) -# assert isinstance(result, dict) -# assert isinstance(result["a"], float) -# assert isinstance(result["b"], float) -# assert isinstance(result["r"], float) -# assert isinstance(result["t"], float) -# assert isinstance(result["line"], Series) - - - -def test_log_geometric_mean(df): - returns = ta.percent_return(df.close) - result = ta.utils.log_geometric_mean(returns) - assert isinstance(result, float) - - result = ta.utils.log_geometric_mean(Series([12, 14, 11, 8])) - assert isinstance(result, float) - - result = ta.utils.log_geometric_mean(Series([100, 50, 0, 25, 0, 60])) - assert isinstance(result, float) - - series = Series([0, 1, 2, 3]) - result = ta.utils.log_geometric_mean(series) - assert isinstance(result, float) - - result = ta.utils.log_geometric_mean(-series) - assert isinstance(result, int) - assert result == 0 - - - -def test_reverse(df): - original = df.copy() - df.ta.reverse() - - # Check if first and last time are reversed - assert df.index[-1] == original.index[0] - assert df.index[0] == original.index[-1] - - - -def test_pascals_triangle(): - assert ta.utils.pascals_triangle(inverse=True) is None - - array = np.array([1]) - np.testing.assert_array_equal(ta.utils.pascals_triangle(), array) - np.testing.assert_array_equal(ta.utils.pascals_triangle(weighted=True), array) - np.testing.assert_array_equal(ta.utils.pascals_triangle(weighted=True, inverse=True), np.array([0])) - - - -@mark.parametrize("value", [-5, -1, 0, 1, 5]) -def test_pascals_triangle_n(value): - array = ta.utils.pascals_triangle(n=value) - array_w = array / np.sum(array) - array_iw = 1 - array_w - np.testing.assert_array_equal(ta.utils.pascals_triangle(n=value), array) - np.testing.assert_array_equal(ta.utils.pascals_triangle(n=value, weighted=True), array_w) - np.testing.assert_array_equal(ta.utils.pascals_triangle(n=value, weighted=True, inverse=True), array_iw) - - - -@mark.parametrize("value", [param(None, marks=mark.xfail), "NYSE", "NZSX", "SSE"]) -def test_get_time_(value): - print(f"{value=}") - result = ta.utils.get_time(value, to_string=True) - assert isinstance(result, str) - assert value in result - - - -@mark.parametrize("array,degree,result", [ - ([1], 1, 1), ([1, 1], 1, 2), ([1, 0, -1], 1, 0), - ([1, 0, 1], 1, 2), ([1, 1, 1], 1, 3) -]) -def test_hpoly(array, degree, result): - assert ta.utils.hpoly(array, degree) == result - - - -def test_remap(): - result = ta.remap(Series([100, 50, 0, 25, 0, 60])) - assert result.name == "REMAP_0.0_100.0_-1.0_1.0" - - - -def test_signals(df): - _ = df.ta.er(signal_indicators=True) - assert _.shape[1] > 0 - - _ = df.ta.macd(signal_indicators=True) - assert _.shape[1] > 0 - - _ = df.ta.rsi(signal_indicators=True) - assert _.shape[1] > 0 - - _ = df.ta.rsx(signal_indicators=True) - assert _.shape[1] > 0 - - - -def test_symmetric_triangle(): - np.testing.assert_array_equal(ta.utils.symmetric_triangle(), np.array([1,1])) - np.testing.assert_array_equal(ta.utils.symmetric_triangle(weighted=True), np.array([0.5, 0.5])) - - - -@mark.parametrize("value", [2, 3, 10]) -def test_symmetric_triangle_n(value): - array = ta.utils.symmetric_triangle(n=value) - array_w = array / np.sum(array) - np.testing.assert_array_equal(ta.utils.symmetric_triangle(n=value), array) - np.testing.assert_array_equal(ta.utils.symmetric_triangle(n=value, weighted=True), array_w) - - - -@mark.parametrize("value,result", [ - ("sma", 0), ("Sma", 0), ("ema", 1), ("wma", 2), ("dema", 3), ("tema", 4), - ("trima", 5), ("kama", 6), ("mama", 7), ("t3", 8) -]) -def test_tal_ma(value, result): - assert ta.utils.tal_ma(value) == result - - - -def test_to_utc(df): - result = ta.utils.to_utc(df) - assert is_datetime64_ns_dtype(result.index) - # assert is_datetime64tz_dtype(result.index) # Depreciation Warning but no mention in 2.2 docs - - - -def test_version(): - assert isinstance(ta.version, str) - print(f"{ta.version=}") - - - -def test_v_drift_type(): - _instances = [0, None, "", [], {}, np.int8(5), np.int16(5), np.int32(5), np.int64(5)] - for _ in _instances: - assert isinstance(ta.utils.v_drift(_), int) - - - -@mark.parametrize("value,result", [ - (-1.1, 1), (0, 1), (1.1, 1), (5, 5), - (np.int64(-1.1), -1), (np.int64(0), 1), - (np.int64(1.1), 1), (np.int64(5), 5) -]) -def test_v_drift_value(value, result): - assert ta.utils.v_drift(value) == result - - - -@mark.parametrize("value", [None, "", [], {}, -1.1, -1, 0.0, 0, 0.1, 1.0, 1]) -@mark.parametrize("strict", [False, True]) -def test_v_lowerbound_type(value, strict): - assert isinstance(ta.v_lowerbound(value, strict=strict), (float, int)) - - - -@mark.parametrize("value,result", [ - (-1.1, 0), (-1, 0), (0.0, 0), (0, 0), (0.1, 0.1), (1.0, 1.0), (1, 1), -]) -def test_v_lowerbound_value_strict(value, result): - assert ta.utils.v_lowerbound(value) == result - - - -@mark.parametrize("value,result", [ - (-1.1, 0), (-1, 0), (0.0, 0), (0, 0), (0.1, 0.1), (1.0, 1), (1, 1), -]) -def test_v_lowerbound_value_strict_false(value, result): - assert ta.utils.v_lowerbound(value, strict=False) == result - - - -@mark.parametrize("value", [ - 0, None, "", [], {}, np.int8(5), np.int16(5), np.int32(5), np.int64(5) -]) -def test_v_offset_types(value): - assert isinstance(ta.utils.v_offset(value), int) - - - -@mark.parametrize("value,result", [ - (None, 0), (-1.1, 0), (-1, -1), (0, 0), (1.1, 0), (1, 1), (2, 2), - (np.int64(-1), -1), (np.int64(0), 0), (np.int64(1.1), 1), - (np.int64(1), 1), (np.int64(2), 2), (np.int64(-1.1), -1), - (np.int64(1.1), 1), -]) -def test_v_offset_value(value,result): - assert ta.utils.v_offset(value) == result - - - -@mark.parametrize("value", [None, "", [], {}, -1.1, -1, 0.0, 0, 0.1, 1.0, 1]) -@mark.parametrize("strict", [False, True]) -def test_v_upperbound_value_strict(value, strict): - assert isinstance(ta.utils.v_upperbound(value, strict=strict), (float, int)) - - - -@mark.parametrize("value,result", [ - (-0.0000000000000001, 0), (0.0000000000000001, 0), (0, 0), (0.0, 0), - param(-0.000000000000001, 0, marks=mark.xfail), param(1, 0, marks=mark.xfail) -]) -def test_zero(value, result): - assert ta.utils.zero(value) == result - - - -@mark.parametrize("talib", [False, True]) -@mark.parametrize("verbose", [False, True]) -def test_indicator_speed_talib_verbose(df, talib, verbose): - resultdf = ta.speed_test(df, talib=talib, verbose=verbose) - assert isinstance(resultdf, DataFrame) diff --git a/temp_pandas_ta/pandas_ta-0.4.71b0/uv.lock b/temp_pandas_ta/pandas_ta-0.4.71b0/uv.lock deleted file mode 100644 index 37c26654..00000000 --- a/temp_pandas_ta/pandas_ta-0.4.71b0/uv.lock +++ /dev/null @@ -1,2591 +0,0 @@ -version = 1 -revision = 2 -requires-python = ">=3.12" -resolution-markers = [ - "python_full_version >= '3.14'", - "python_full_version < '3.14'", -] - -[[package]] -name = "anyio" -version = "4.10.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "idna" }, - { name = "sniffio" }, - { name = "typing-extensions", marker = "python_full_version < '3.13'" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/f1/b4/636b3b65173d3ce9a38ef5f0522789614e590dab6a8d505340a4efe4c567/anyio-4.10.0.tar.gz", hash = "sha256:3f3fae35c96039744587aa5b8371e7e8e603c0702999535961dd336026973ba6", size = 213252, upload-time = "2025-08-04T08:54:26.451Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/6f/12/e5e0282d673bb9746bacfb6e2dba8719989d3660cdb2ea79aee9a9651afb/anyio-4.10.0-py3-none-any.whl", hash = "sha256:60e474ac86736bbfd6f210f7a61218939c318f43f9972497381f1c5e930ed3d1", size = 107213, upload-time = "2025-08-04T08:54:24.882Z" }, -] - -[[package]] -name = "appnope" -version = "0.1.4" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/35/5d/752690df9ef5b76e169e68d6a129fa6d08a7100ca7f754c89495db3c6019/appnope-0.1.4.tar.gz", hash = "sha256:1de3860566df9caf38f01f86f65e0e13e379af54f9e4bee1e66b48f2efffd1ee", size = 4170, upload-time = "2024-02-06T09:43:11.258Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/81/29/5ecc3a15d5a33e31b26c11426c45c501e439cb865d0bff96315d86443b78/appnope-0.1.4-py2.py3-none-any.whl", hash = "sha256:502575ee11cd7a28c0205f379b525beefebab9d161b7c964670864014ed7213c", size = 4321, upload-time = "2024-02-06T09:43:09.663Z" }, -] - -[[package]] -name = "argon2-cffi" -version = "25.1.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "argon2-cffi-bindings", version = "21.2.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.14'" }, - { name = "argon2-cffi-bindings", version = "25.1.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.14'" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/0e/89/ce5af8a7d472a67cc819d5d998aa8c82c5d860608c4db9f46f1162d7dab9/argon2_cffi-25.1.0.tar.gz", hash = "sha256:694ae5cc8a42f4c4e2bf2ca0e64e51e23a040c6a517a85074683d3959e1346c1", size = 45706, upload-time = "2025-06-03T06:55:32.073Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl", hash = "sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741", size = 14657, upload-time = "2025-06-03T06:55:30.804Z" }, -] - -[[package]] -name = "argon2-cffi-bindings" -version = "21.2.0" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14'", -] -dependencies = [ - { name = "cffi", marker = "python_full_version >= '3.14'" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/b9/e9/184b8ccce6683b0aa2fbb7ba5683ea4b9c5763f1356347f1312c32e3c66e/argon2-cffi-bindings-21.2.0.tar.gz", hash = "sha256:bb89ceffa6c791807d1305ceb77dbfacc5aa499891d2c55661c6459651fc39e3", size = 1779911, upload-time = "2021-12-01T08:52:55.68Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/d4/13/838ce2620025e9666aa8f686431f67a29052241692a3dd1ae9d3692a89d3/argon2_cffi_bindings-21.2.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:ccb949252cb2ab3a08c02024acb77cfb179492d5701c7cbdbfd776124d4d2367", size = 29658, upload-time = "2021-12-01T09:09:17.016Z" }, - { url = "https://files.pythonhosted.org/packages/b3/02/f7f7bb6b6af6031edb11037639c697b912e1dea2db94d436e681aea2f495/argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9524464572e12979364b7d600abf96181d3541da11e23ddf565a32e70bd4dc0d", size = 80583, upload-time = "2021-12-01T09:09:19.546Z" }, - { url = "https://files.pythonhosted.org/packages/ec/f7/378254e6dd7ae6f31fe40c8649eea7d4832a42243acaf0f1fff9083b2bed/argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b746dba803a79238e925d9046a63aa26bf86ab2a2fe74ce6b009a1c3f5c8f2ae", size = 86168, upload-time = "2021-12-01T09:09:21.445Z" }, - { url = "https://files.pythonhosted.org/packages/74/f6/4a34a37a98311ed73bb80efe422fed95f2ac25a4cacc5ae1d7ae6a144505/argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:58ed19212051f49a523abb1dbe954337dc82d947fb6e5a0da60f7c8471a8476c", size = 82709, upload-time = "2021-12-01T09:09:18.182Z" }, - { url = "https://files.pythonhosted.org/packages/74/2b/73d767bfdaab25484f7e7901379d5f8793cccbb86c6e0cbc4c1b96f63896/argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:bd46088725ef7f58b5a1ef7ca06647ebaf0eb4baff7d1d0d177c6cc8744abd86", size = 83613, upload-time = "2021-12-01T09:09:22.741Z" }, - { url = "https://files.pythonhosted.org/packages/4f/fd/37f86deef67ff57c76f137a67181949c2d408077e2e3dd70c6c42912c9bf/argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_i686.whl", hash = "sha256:8cd69c07dd875537a824deec19f978e0f2078fdda07fd5c42ac29668dda5f40f", size = 84583, upload-time = "2021-12-01T09:09:24.177Z" }, - { url = "https://files.pythonhosted.org/packages/6f/52/5a60085a3dae8fded8327a4f564223029f5f54b0cb0455a31131b5363a01/argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:f1152ac548bd5b8bcecfb0b0371f082037e47128653df2e8ba6e914d384f3c3e", size = 88475, upload-time = "2021-12-01T09:09:26.673Z" }, - { url = "https://files.pythonhosted.org/packages/8b/95/143cd64feb24a15fa4b189a3e1e7efbaeeb00f39a51e99b26fc62fbacabd/argon2_cffi_bindings-21.2.0-cp36-abi3-win32.whl", hash = "sha256:603ca0aba86b1349b147cab91ae970c63118a0f30444d4bc80355937c950c082", size = 27698, upload-time = "2021-12-01T09:09:27.87Z" }, - { url = "https://files.pythonhosted.org/packages/37/2c/e34e47c7dee97ba6f01a6203e0383e15b60fb85d78ac9a15cd066f6fe28b/argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl", hash = "sha256:b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f", size = 30817, upload-time = "2021-12-01T09:09:30.267Z" }, - { url = "https://files.pythonhosted.org/packages/5a/e4/bf8034d25edaa495da3c8a3405627d2e35758e44ff6eaa7948092646fdcc/argon2_cffi_bindings-21.2.0-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:e415e3f62c8d124ee16018e491a009937f8cf7ebf5eb430ffc5de21b900dad93", size = 53104, upload-time = "2021-12-01T09:09:31.335Z" }, -] - -[[package]] -name = "argon2-cffi-bindings" -version = "25.1.0" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version < '3.14'", -] -dependencies = [ - { name = "cffi", marker = "python_full_version < '3.14'" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/5c/2d/db8af0df73c1cf454f71b2bbe5e356b8c1f8041c979f505b3d3186e520a9/argon2_cffi_bindings-25.1.0.tar.gz", hash = "sha256:b957f3e6ea4d55d820e40ff76f450952807013d361a65d7f28acc0acbf29229d", size = 1783441, upload-time = "2025-07-30T10:02:05.147Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/60/97/3c0a35f46e52108d4707c44b95cfe2afcafc50800b5450c197454569b776/argon2_cffi_bindings-25.1.0-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:3d3f05610594151994ca9ccb3c771115bdb4daef161976a266f0dd8aa9996b8f", size = 54393, upload-time = "2025-07-30T10:01:40.97Z" }, - { url = "https://files.pythonhosted.org/packages/9d/f4/98bbd6ee89febd4f212696f13c03ca302b8552e7dbf9c8efa11ea4a388c3/argon2_cffi_bindings-25.1.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:8b8efee945193e667a396cbc7b4fb7d357297d6234d30a489905d96caabde56b", size = 29328, upload-time = "2025-07-30T10:01:41.916Z" }, - { url = "https://files.pythonhosted.org/packages/43/24/90a01c0ef12ac91a6be05969f29944643bc1e5e461155ae6559befa8f00b/argon2_cffi_bindings-25.1.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:3c6702abc36bf3ccba3f802b799505def420a1b7039862014a65db3205967f5a", size = 31269, upload-time = "2025-07-30T10:01:42.716Z" }, - { url = "https://files.pythonhosted.org/packages/d4/d3/942aa10782b2697eee7af5e12eeff5ebb325ccfb86dd8abda54174e377e4/argon2_cffi_bindings-25.1.0-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a1c70058c6ab1e352304ac7e3b52554daadacd8d453c1752e547c76e9c99ac44", size = 86558, upload-time = "2025-07-30T10:01:43.943Z" }, - { url = "https://files.pythonhosted.org/packages/0d/82/b484f702fec5536e71836fc2dbc8c5267b3f6e78d2d539b4eaa6f0db8bf8/argon2_cffi_bindings-25.1.0-cp314-cp314t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e2fd3bfbff3c5d74fef31a722f729bf93500910db650c925c2d6ef879a7e51cb", size = 92364, upload-time = "2025-07-30T10:01:44.887Z" }, - { url = "https://files.pythonhosted.org/packages/c9/c1/a606ff83b3f1735f3759ad0f2cd9e038a0ad11a3de3b6c673aa41c24bb7b/argon2_cffi_bindings-25.1.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:c4f9665de60b1b0e99bcd6be4f17d90339698ce954cfd8d9cf4f91c995165a92", size = 85637, upload-time = "2025-07-30T10:01:46.225Z" }, - { url = "https://files.pythonhosted.org/packages/44/b4/678503f12aceb0262f84fa201f6027ed77d71c5019ae03b399b97caa2f19/argon2_cffi_bindings-25.1.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:ba92837e4a9aa6a508c8d2d7883ed5a8f6c308c89a4790e1e447a220deb79a85", size = 91934, upload-time = "2025-07-30T10:01:47.203Z" }, - { url = "https://files.pythonhosted.org/packages/f0/c7/f36bd08ef9bd9f0a9cff9428406651f5937ce27b6c5b07b92d41f91ae541/argon2_cffi_bindings-25.1.0-cp314-cp314t-win32.whl", hash = "sha256:84a461d4d84ae1295871329b346a97f68eade8c53b6ed9a7ca2d7467f3c8ff6f", size = 28158, upload-time = "2025-07-30T10:01:48.341Z" }, - { url = "https://files.pythonhosted.org/packages/b3/80/0106a7448abb24a2c467bf7d527fe5413b7fdfa4ad6d6a96a43a62ef3988/argon2_cffi_bindings-25.1.0-cp314-cp314t-win_amd64.whl", hash = "sha256:b55aec3565b65f56455eebc9b9f34130440404f27fe21c3b375bf1ea4d8fbae6", size = 32597, upload-time = "2025-07-30T10:01:49.112Z" }, - { url = "https://files.pythonhosted.org/packages/05/b8/d663c9caea07e9180b2cb662772865230715cbd573ba3b5e81793d580316/argon2_cffi_bindings-25.1.0-cp314-cp314t-win_arm64.whl", hash = "sha256:87c33a52407e4c41f3b70a9c2d3f6056d88b10dad7695be708c5021673f55623", size = 28231, upload-time = "2025-07-30T10:01:49.92Z" }, - { url = "https://files.pythonhosted.org/packages/1d/57/96b8b9f93166147826da5f90376e784a10582dd39a393c99bb62cfcf52f0/argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:aecba1723ae35330a008418a91ea6cfcedf6d31e5fbaa056a166462ff066d500", size = 54121, upload-time = "2025-07-30T10:01:50.815Z" }, - { url = "https://files.pythonhosted.org/packages/0a/08/a9bebdb2e0e602dde230bdde8021b29f71f7841bd54801bcfd514acb5dcf/argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_10_9_x86_64.whl", hash = "sha256:2630b6240b495dfab90aebe159ff784d08ea999aa4b0d17efa734055a07d2f44", size = 29177, upload-time = "2025-07-30T10:01:51.681Z" }, - { url = "https://files.pythonhosted.org/packages/b6/02/d297943bcacf05e4f2a94ab6f462831dc20158614e5d067c35d4e63b9acb/argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_11_0_arm64.whl", hash = "sha256:7aef0c91e2c0fbca6fc68e7555aa60ef7008a739cbe045541e438373bc54d2b0", size = 31090, upload-time = "2025-07-30T10:01:53.184Z" }, - { url = "https://files.pythonhosted.org/packages/c1/93/44365f3d75053e53893ec6d733e4a5e3147502663554b4d864587c7828a7/argon2_cffi_bindings-25.1.0-cp39-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1e021e87faa76ae0d413b619fe2b65ab9a037f24c60a1e6cc43457ae20de6dc6", size = 81246, upload-time = "2025-07-30T10:01:54.145Z" }, - { url = "https://files.pythonhosted.org/packages/09/52/94108adfdd6e2ddf58be64f959a0b9c7d4ef2fa71086c38356d22dc501ea/argon2_cffi_bindings-25.1.0-cp39-abi3-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d3e924cfc503018a714f94a49a149fdc0b644eaead5d1f089330399134fa028a", size = 87126, upload-time = "2025-07-30T10:01:55.074Z" }, - { url = "https://files.pythonhosted.org/packages/72/70/7a2993a12b0ffa2a9271259b79cc616e2389ed1a4d93842fac5a1f923ffd/argon2_cffi_bindings-25.1.0-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:c87b72589133f0346a1cb8d5ecca4b933e3c9b64656c9d175270a000e73b288d", size = 80343, upload-time = "2025-07-30T10:01:56.007Z" }, - { url = "https://files.pythonhosted.org/packages/78/9a/4e5157d893ffc712b74dbd868c7f62365618266982b64accab26bab01edc/argon2_cffi_bindings-25.1.0-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:1db89609c06afa1a214a69a462ea741cf735b29a57530478c06eb81dd403de99", size = 86777, upload-time = "2025-07-30T10:01:56.943Z" }, - { url = "https://files.pythonhosted.org/packages/74/cd/15777dfde1c29d96de7f18edf4cc94c385646852e7c7b0320aa91ccca583/argon2_cffi_bindings-25.1.0-cp39-abi3-win32.whl", hash = "sha256:473bcb5f82924b1becbb637b63303ec8d10e84c8d241119419897a26116515d2", size = 27180, upload-time = "2025-07-30T10:01:57.759Z" }, - { url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl", hash = "sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98", size = 31715, upload-time = "2025-07-30T10:01:58.56Z" }, - { url = "https://files.pythonhosted.org/packages/42/b9/f8d6fa329ab25128b7e98fd83a3cb34d9db5b059a9847eddb840a0af45dd/argon2_cffi_bindings-25.1.0-cp39-abi3-win_arm64.whl", hash = "sha256:b0fdbcf513833809c882823f98dc2f931cf659d9a1429616ac3adebb49f5db94", size = 27149, upload-time = "2025-07-30T10:01:59.329Z" }, -] - -[[package]] -name = "arrow" -version = "1.3.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "python-dateutil" }, - { name = "types-python-dateutil" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/2e/00/0f6e8fcdb23ea632c866620cc872729ff43ed91d284c866b515c6342b173/arrow-1.3.0.tar.gz", hash = "sha256:d4540617648cb5f895730f1ad8c82a65f2dad0166f57b75f3ca54759c4d67a85", size = 131960, upload-time = "2023-09-30T22:11:18.25Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl", hash = "sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80", size = 66419, upload-time = "2023-09-30T22:11:16.072Z" }, -] - -[[package]] -name = "asttokens" -version = "3.0.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/4a/e7/82da0a03e7ba5141f05cce0d302e6eed121ae055e0456ca228bf693984bc/asttokens-3.0.0.tar.gz", hash = "sha256:0dcd8baa8d62b0c1d118b399b2ddba3c4aff271d0d7a9e0d4c1681c79035bbc7", size = 61978, upload-time = "2024-11-30T04:30:14.439Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl", hash = "sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2", size = 26918, upload-time = "2024-11-30T04:30:10.946Z" }, -] - -[[package]] -name = "async-lru" -version = "2.0.5" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/b2/4d/71ec4d3939dc755264f680f6c2b4906423a304c3d18e96853f0a595dfe97/async_lru-2.0.5.tar.gz", hash = "sha256:481d52ccdd27275f42c43a928b4a50c3bfb2d67af4e78b170e3e0bb39c66e5bb", size = 10380, upload-time = "2025-03-16T17:25:36.919Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/03/49/d10027df9fce941cb8184e78a02857af36360d33e1721df81c5ed2179a1a/async_lru-2.0.5-py3-none-any.whl", hash = "sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943", size = 6069, upload-time = "2025-03-16T17:25:35.422Z" }, -] - -[[package]] -name = "attrs" -version = "25.3.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/5a/b0/1367933a8532ee6ff8d63537de4f1177af4bff9f3e829baf7331f595bb24/attrs-25.3.0.tar.gz", hash = "sha256:75d7cefc7fb576747b2c81b4442d4d4a1ce0900973527c011d1030fd3bf4af1b", size = 812032, upload-time = "2025-03-13T11:10:22.779Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/77/06/bb80f5f86020c4551da315d78b3ab75e8228f89f0162f2c3a819e407941a/attrs-25.3.0-py3-none-any.whl", hash = "sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3", size = 63815, upload-time = "2025-03-13T11:10:21.14Z" }, -] - -[[package]] -name = "babel" -version = "2.17.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/7d/6b/d52e42361e1aa00709585ecc30b3f9684b3ab62530771402248b1b1d6240/babel-2.17.0.tar.gz", hash = "sha256:0c54cffb19f690cdcc52a3b50bcbf71e07a808d1c80d549f2459b9d2cf0afb9d", size = 9951852, upload-time = "2025-02-01T15:17:41.026Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl", hash = "sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2", size = 10182537, upload-time = "2025-02-01T15:17:37.39Z" }, -] - -[[package]] -name = "backrefs" -version = "5.9" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/eb/a7/312f673df6a79003279e1f55619abbe7daebbb87c17c976ddc0345c04c7b/backrefs-5.9.tar.gz", hash = "sha256:808548cb708d66b82ee231f962cb36faaf4f2baab032f2fbb783e9c2fdddaa59", size = 5765857, upload-time = "2025-06-22T19:34:13.97Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/19/4d/798dc1f30468134906575156c089c492cf79b5a5fd373f07fe26c4d046bf/backrefs-5.9-py310-none-any.whl", hash = "sha256:db8e8ba0e9de81fcd635f440deab5ae5f2591b54ac1ebe0550a2ca063488cd9f", size = 380267, upload-time = "2025-06-22T19:34:05.252Z" }, - { url = "https://files.pythonhosted.org/packages/55/07/f0b3375bf0d06014e9787797e6b7cc02b38ac9ff9726ccfe834d94e9991e/backrefs-5.9-py311-none-any.whl", hash = "sha256:6907635edebbe9b2dc3de3a2befff44d74f30a4562adbb8b36f21252ea19c5cf", size = 392072, upload-time = "2025-06-22T19:34:06.743Z" }, - { url = "https://files.pythonhosted.org/packages/9d/12/4f345407259dd60a0997107758ba3f221cf89a9b5a0f8ed5b961aef97253/backrefs-5.9-py312-none-any.whl", hash = "sha256:7fdf9771f63e6028d7fee7e0c497c81abda597ea45d6b8f89e8ad76994f5befa", size = 397947, upload-time = "2025-06-22T19:34:08.172Z" }, - { url = "https://files.pythonhosted.org/packages/10/bf/fa31834dc27a7f05e5290eae47c82690edc3a7b37d58f7fb35a1bdbf355b/backrefs-5.9-py313-none-any.whl", hash = "sha256:cc37b19fa219e93ff825ed1fed8879e47b4d89aa7a1884860e2db64ccd7c676b", size = 399843, upload-time = "2025-06-22T19:34:09.68Z" }, - { url = "https://files.pythonhosted.org/packages/fc/24/b29af34b2c9c41645a9f4ff117bae860291780d73880f449e0b5d948c070/backrefs-5.9-py314-none-any.whl", hash = "sha256:df5e169836cc8acb5e440ebae9aad4bf9d15e226d3bad049cf3f6a5c20cc8dc9", size = 411762, upload-time = "2025-06-22T19:34:11.037Z" }, - { url = "https://files.pythonhosted.org/packages/41/ff/392bff89415399a979be4a65357a41d92729ae8580a66073d8ec8d810f98/backrefs-5.9-py39-none-any.whl", hash = "sha256:f48ee18f6252b8f5777a22a00a09a85de0ca931658f1dd96d4406a34f3748c60", size = 380265, upload-time = "2025-06-22T19:34:12.405Z" }, -] - -[[package]] -name = "beautifulsoup4" -version = "4.13.5" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "soupsieve" }, - { name = "typing-extensions" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/85/2e/3e5079847e653b1f6dc647aa24549d68c6addb4c595cc0d902d1b19308ad/beautifulsoup4-4.13.5.tar.gz", hash = "sha256:5e70131382930e7c3de33450a2f54a63d5e4b19386eab43a5b34d594268f3695", size = 622954, upload-time = "2025-08-24T14:06:13.168Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/04/eb/f4151e0c7377a6e08a38108609ba5cede57986802757848688aeedd1b9e8/beautifulsoup4-4.13.5-py3-none-any.whl", hash = "sha256:642085eaa22233aceadff9c69651bc51e8bf3f874fb6d7104ece2beb24b47c4a", size = 105113, upload-time = "2025-08-24T14:06:14.884Z" }, -] - -[[package]] -name = "bleach" -version = "6.2.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "webencodings" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/76/9a/0e33f5054c54d349ea62c277191c020c2d6ef1d65ab2cb1993f91ec846d1/bleach-6.2.0.tar.gz", hash = "sha256:123e894118b8a599fd80d3ec1a6d4cc7ce4e5882b1317a7e1ba69b56e95f991f", size = 203083, upload-time = "2024-10-29T18:30:40.477Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl", hash = "sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e", size = 163406, upload-time = "2024-10-29T18:30:38.186Z" }, -] - -[package.optional-dependencies] -css = [ - { name = "tinycss2" }, -] - -[[package]] -name = "bokeh" -version = "3.7.3" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "contourpy" }, - { name = "jinja2" }, - { name = "narwhals" }, - { name = "numpy" }, - { name = "packaging" }, - { name = "pandas" }, - { name = "pillow" }, - { name = "pyyaml" }, - { name = "tornado", marker = "sys_platform != 'emscripten'" }, - { name = "xyzservices" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/75/18/12d0d6024177ad18ba65deffc363046d0cbafe116f8b964a9efa85d2800f/bokeh-3.7.3.tar.gz", hash = "sha256:70a89a9f797b103d5ee6ad15fb7944adda115cf0da996ed0b75cfba61cb12f2b", size = 6366610, upload-time = "2025-05-12T12:13:29.318Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/91/48/08b2382e739236aa3360b7976360ba3e0c043b6234e25951c18c1eb6fa06/bokeh-3.7.3-py3-none-any.whl", hash = "sha256:b0e79dd737f088865212e4fdcb0f3b95d087f0f088bf8ca186a300ab1641e2c7", size = 7031447, upload-time = "2025-05-12T12:13:27.47Z" }, -] - -[[package]] -name = "bracex" -version = "2.6" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/63/9a/fec38644694abfaaeca2798b58e276a8e61de49e2e37494ace423395febc/bracex-2.6.tar.gz", hash = "sha256:98f1347cd77e22ee8d967a30ad4e310b233f7754dbf31ff3fceb76145ba47dc7", size = 26642, upload-time = "2025-06-22T19:12:31.254Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/9d/2a/9186535ce58db529927f6cf5990a849aa9e052eea3e2cfefe20b9e1802da/bracex-2.6-py3-none-any.whl", hash = "sha256:0b0049264e7340b3ec782b5cb99beb325f36c3782a32e36e876452fd49a09952", size = 11508, upload-time = "2025-06-22T19:12:29.781Z" }, -] - -[[package]] -name = "certifi" -version = "2025.8.3" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/dc/67/960ebe6bf230a96cda2e0abcf73af550ec4f090005363542f0765df162e0/certifi-2025.8.3.tar.gz", hash = "sha256:e564105f78ded564e3ae7c923924435e1daa7463faeab5bb932bc53ffae63407", size = 162386, upload-time = "2025-08-03T03:07:47.08Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/e5/48/1549795ba7742c948d2ad169c1c8cdbae65bc450d6cd753d124b17c8cd32/certifi-2025.8.3-py3-none-any.whl", hash = "sha256:f6c12493cfb1b06ba2ff328595af9350c65d6644968e5d3a2ffd78699af217a5", size = 161216, upload-time = "2025-08-03T03:07:45.777Z" }, -] - -[[package]] -name = "cffi" -version = "1.17.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "pycparser" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/fc/97/c783634659c2920c3fc70419e3af40972dbaf758daa229a7d6ea6135c90d/cffi-1.17.1.tar.gz", hash = "sha256:1c39c6016c32bc48dd54561950ebd6836e1670f2ae46128f67cf49e789c52824", size = 516621, upload-time = "2024-09-04T20:45:21.852Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/5a/84/e94227139ee5fb4d600a7a4927f322e1d4aea6fdc50bd3fca8493caba23f/cffi-1.17.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:805b4371bf7197c329fcb3ead37e710d1bca9da5d583f5073b799d5c5bd1eee4", size = 183178, upload-time = "2024-09-04T20:44:12.232Z" }, - { url = "https://files.pythonhosted.org/packages/da/ee/fb72c2b48656111c4ef27f0f91da355e130a923473bf5ee75c5643d00cca/cffi-1.17.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:733e99bc2df47476e3848417c5a4540522f234dfd4ef3ab7fafdf555b082ec0c", size = 178840, upload-time = "2024-09-04T20:44:13.739Z" }, - { url = "https://files.pythonhosted.org/packages/cc/b6/db007700f67d151abadf508cbfd6a1884f57eab90b1bb985c4c8c02b0f28/cffi-1.17.1-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1257bdabf294dceb59f5e70c64a3e2f462c30c7ad68092d01bbbfb1c16b1ba36", size = 454803, upload-time = "2024-09-04T20:44:15.231Z" }, - { url = "https://files.pythonhosted.org/packages/1a/df/f8d151540d8c200eb1c6fba8cd0dfd40904f1b0682ea705c36e6c2e97ab3/cffi-1.17.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:da95af8214998d77a98cc14e3a3bd00aa191526343078b530ceb0bd710fb48a5", size = 478850, upload-time = "2024-09-04T20:44:17.188Z" }, - { url = "https://files.pythonhosted.org/packages/28/c0/b31116332a547fd2677ae5b78a2ef662dfc8023d67f41b2a83f7c2aa78b1/cffi-1.17.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d63afe322132c194cf832bfec0dc69a99fb9bb6bbd550f161a49e9e855cc78ff", size = 485729, upload-time = "2024-09-04T20:44:18.688Z" }, - { url = "https://files.pythonhosted.org/packages/91/2b/9a1ddfa5c7f13cab007a2c9cc295b70fbbda7cb10a286aa6810338e60ea1/cffi-1.17.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f79fc4fc25f1c8698ff97788206bb3c2598949bfe0fef03d299eb1b5356ada99", size = 471256, upload-time = "2024-09-04T20:44:20.248Z" }, - { url = "https://files.pythonhosted.org/packages/b2/d5/da47df7004cb17e4955df6a43d14b3b4ae77737dff8bf7f8f333196717bf/cffi-1.17.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b62ce867176a75d03a665bad002af8e6d54644fad99a3c70905c543130e39d93", size = 479424, upload-time = "2024-09-04T20:44:21.673Z" }, - { url = "https://files.pythonhosted.org/packages/0b/ac/2a28bcf513e93a219c8a4e8e125534f4f6db03e3179ba1c45e949b76212c/cffi-1.17.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:386c8bf53c502fff58903061338ce4f4950cbdcb23e2902d86c0f722b786bbe3", size = 484568, upload-time = "2024-09-04T20:44:23.245Z" }, - { url = "https://files.pythonhosted.org/packages/d4/38/ca8a4f639065f14ae0f1d9751e70447a261f1a30fa7547a828ae08142465/cffi-1.17.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4ceb10419a9adf4460ea14cfd6bc43d08701f0835e979bf821052f1805850fe8", size = 488736, upload-time = "2024-09-04T20:44:24.757Z" }, - { url = "https://files.pythonhosted.org/packages/86/c5/28b2d6f799ec0bdecf44dced2ec5ed43e0eb63097b0f58c293583b406582/cffi-1.17.1-cp312-cp312-win32.whl", hash = "sha256:a08d7e755f8ed21095a310a693525137cfe756ce62d066e53f502a83dc550f65", size = 172448, upload-time = "2024-09-04T20:44:26.208Z" }, - { url = "https://files.pythonhosted.org/packages/50/b9/db34c4755a7bd1cb2d1603ac3863f22bcecbd1ba29e5ee841a4bc510b294/cffi-1.17.1-cp312-cp312-win_amd64.whl", hash = "sha256:51392eae71afec0d0c8fb1a53b204dbb3bcabcb3c9b807eedf3e1e6ccf2de903", size = 181976, upload-time = "2024-09-04T20:44:27.578Z" }, - { url = "https://files.pythonhosted.org/packages/8d/f8/dd6c246b148639254dad4d6803eb6a54e8c85c6e11ec9df2cffa87571dbe/cffi-1.17.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f3a2b4222ce6b60e2e8b337bb9596923045681d71e5a082783484d845390938e", size = 182989, upload-time = "2024-09-04T20:44:28.956Z" }, - { url = "https://files.pythonhosted.org/packages/8b/f1/672d303ddf17c24fc83afd712316fda78dc6fce1cd53011b839483e1ecc8/cffi-1.17.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0984a4925a435b1da406122d4d7968dd861c1385afe3b45ba82b750f229811e2", size = 178802, upload-time = "2024-09-04T20:44:30.289Z" }, - { url = "https://files.pythonhosted.org/packages/0e/2d/eab2e858a91fdff70533cab61dcff4a1f55ec60425832ddfdc9cd36bc8af/cffi-1.17.1-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d01b12eeeb4427d3110de311e1774046ad344f5b1a7403101878976ecd7a10f3", size = 454792, upload-time = "2024-09-04T20:44:32.01Z" }, - { url = "https://files.pythonhosted.org/packages/75/b2/fbaec7c4455c604e29388d55599b99ebcc250a60050610fadde58932b7ee/cffi-1.17.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:706510fe141c86a69c8ddc029c7910003a17353970cff3b904ff0686a5927683", size = 478893, upload-time = "2024-09-04T20:44:33.606Z" }, - { url = "https://files.pythonhosted.org/packages/4f/b7/6e4a2162178bf1935c336d4da8a9352cccab4d3a5d7914065490f08c0690/cffi-1.17.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:de55b766c7aa2e2a3092c51e0483d700341182f08e67c63630d5b6f200bb28e5", size = 485810, upload-time = "2024-09-04T20:44:35.191Z" }, - { url = "https://files.pythonhosted.org/packages/c7/8a/1d0e4a9c26e54746dc08c2c6c037889124d4f59dffd853a659fa545f1b40/cffi-1.17.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c59d6e989d07460165cc5ad3c61f9fd8f1b4796eacbd81cee78957842b834af4", size = 471200, upload-time = "2024-09-04T20:44:36.743Z" }, - { url = "https://files.pythonhosted.org/packages/26/9f/1aab65a6c0db35f43c4d1b4f580e8df53914310afc10ae0397d29d697af4/cffi-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd398dbc6773384a17fe0d3e7eeb8d1a21c2200473ee6806bb5e6a8e62bb73dd", size = 479447, upload-time = "2024-09-04T20:44:38.492Z" }, - { url = "https://files.pythonhosted.org/packages/5f/e4/fb8b3dd8dc0e98edf1135ff067ae070bb32ef9d509d6cb0f538cd6f7483f/cffi-1.17.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:3edc8d958eb099c634dace3c7e16560ae474aa3803a5df240542b305d14e14ed", size = 484358, upload-time = "2024-09-04T20:44:40.046Z" }, - { url = "https://files.pythonhosted.org/packages/f1/47/d7145bf2dc04684935d57d67dff9d6d795b2ba2796806bb109864be3a151/cffi-1.17.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:72e72408cad3d5419375fc87d289076ee319835bdfa2caad331e377589aebba9", size = 488469, upload-time = "2024-09-04T20:44:41.616Z" }, - { url = "https://files.pythonhosted.org/packages/bf/ee/f94057fa6426481d663b88637a9a10e859e492c73d0384514a17d78ee205/cffi-1.17.1-cp313-cp313-win32.whl", hash = "sha256:e03eab0a8677fa80d646b5ddece1cbeaf556c313dcfac435ba11f107ba117b5d", size = 172475, upload-time = "2024-09-04T20:44:43.733Z" }, - { url = "https://files.pythonhosted.org/packages/7c/fc/6a8cb64e5f0324877d503c854da15d76c1e50eb722e320b15345c4d0c6de/cffi-1.17.1-cp313-cp313-win_amd64.whl", hash = "sha256:f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a", size = 182009, upload-time = "2024-09-04T20:44:45.309Z" }, -] - -[[package]] -name = "charset-normalizer" -version = "3.4.3" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/83/2d/5fd176ceb9b2fc619e63405525573493ca23441330fcdaee6bef9460e924/charset_normalizer-3.4.3.tar.gz", hash = "sha256:6fce4b8500244f6fcb71465d4a4930d132ba9ab8e71a7859e6a5d59851068d14", size = 122371, upload-time = "2025-08-09T07:57:28.46Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/e9/5e/14c94999e418d9b87682734589404a25854d5f5d0408df68bc15b6ff54bb/charset_normalizer-3.4.3-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:e28e334d3ff134e88989d90ba04b47d84382a828c061d0d1027b1b12a62b39b1", size = 205655, upload-time = "2025-08-09T07:56:08.475Z" }, - { url = "https://files.pythonhosted.org/packages/7d/a8/c6ec5d389672521f644505a257f50544c074cf5fc292d5390331cd6fc9c3/charset_normalizer-3.4.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0cacf8f7297b0c4fcb74227692ca46b4a5852f8f4f24b3c766dd94a1075c4884", size = 146223, upload-time = "2025-08-09T07:56:09.708Z" }, - { url = "https://files.pythonhosted.org/packages/fc/eb/a2ffb08547f4e1e5415fb69eb7db25932c52a52bed371429648db4d84fb1/charset_normalizer-3.4.3-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:c6fd51128a41297f5409deab284fecbe5305ebd7e5a1f959bee1c054622b7018", size = 159366, upload-time = "2025-08-09T07:56:11.326Z" }, - { url = "https://files.pythonhosted.org/packages/82/10/0fd19f20c624b278dddaf83b8464dcddc2456cb4b02bb902a6da126b87a1/charset_normalizer-3.4.3-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:3cfb2aad70f2c6debfbcb717f23b7eb55febc0bb23dcffc0f076009da10c6392", size = 157104, upload-time = "2025-08-09T07:56:13.014Z" }, - { url = "https://files.pythonhosted.org/packages/16/ab/0233c3231af734f5dfcf0844aa9582d5a1466c985bbed6cedab85af9bfe3/charset_normalizer-3.4.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1606f4a55c0fd363d754049cdf400175ee96c992b1f8018b993941f221221c5f", size = 151830, upload-time = "2025-08-09T07:56:14.428Z" }, - { url = "https://files.pythonhosted.org/packages/ae/02/e29e22b4e02839a0e4a06557b1999d0a47db3567e82989b5bb21f3fbbd9f/charset_normalizer-3.4.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:027b776c26d38b7f15b26a5da1044f376455fb3766df8fc38563b4efbc515154", size = 148854, upload-time = "2025-08-09T07:56:16.051Z" }, - { url = "https://files.pythonhosted.org/packages/05/6b/e2539a0a4be302b481e8cafb5af8792da8093b486885a1ae4d15d452bcec/charset_normalizer-3.4.3-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:42e5088973e56e31e4fa58eb6bd709e42fc03799c11c42929592889a2e54c491", size = 160670, upload-time = "2025-08-09T07:56:17.314Z" }, - { url = "https://files.pythonhosted.org/packages/31/e7/883ee5676a2ef217a40ce0bffcc3d0dfbf9e64cbcfbdf822c52981c3304b/charset_normalizer-3.4.3-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:cc34f233c9e71701040d772aa7490318673aa7164a0efe3172b2981218c26d93", size = 158501, upload-time = "2025-08-09T07:56:18.641Z" }, - { url = "https://files.pythonhosted.org/packages/c1/35/6525b21aa0db614cf8b5792d232021dca3df7f90a1944db934efa5d20bb1/charset_normalizer-3.4.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:320e8e66157cc4e247d9ddca8e21f427efc7a04bbd0ac8a9faf56583fa543f9f", size = 153173, upload-time = "2025-08-09T07:56:20.289Z" }, - { url = "https://files.pythonhosted.org/packages/50/ee/f4704bad8201de513fdc8aac1cabc87e38c5818c93857140e06e772b5892/charset_normalizer-3.4.3-cp312-cp312-win32.whl", hash = "sha256:fb6fecfd65564f208cbf0fba07f107fb661bcd1a7c389edbced3f7a493f70e37", size = 99822, upload-time = "2025-08-09T07:56:21.551Z" }, - { url = "https://files.pythonhosted.org/packages/39/f5/3b3836ca6064d0992c58c7561c6b6eee1b3892e9665d650c803bd5614522/charset_normalizer-3.4.3-cp312-cp312-win_amd64.whl", hash = "sha256:86df271bf921c2ee3818f0522e9a5b8092ca2ad8b065ece5d7d9d0e9f4849bcc", size = 107543, upload-time = "2025-08-09T07:56:23.115Z" }, - { url = "https://files.pythonhosted.org/packages/65/ca/2135ac97709b400c7654b4b764daf5c5567c2da45a30cdd20f9eefe2d658/charset_normalizer-3.4.3-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:14c2a87c65b351109f6abfc424cab3927b3bdece6f706e4d12faaf3d52ee5efe", size = 205326, upload-time = "2025-08-09T07:56:24.721Z" }, - { url = "https://files.pythonhosted.org/packages/71/11/98a04c3c97dd34e49c7d247083af03645ca3730809a5509443f3c37f7c99/charset_normalizer-3.4.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:41d1fc408ff5fdfb910200ec0e74abc40387bccb3252f3f27c0676731df2b2c8", size = 146008, upload-time = "2025-08-09T07:56:26.004Z" }, - { url = "https://files.pythonhosted.org/packages/60/f5/4659a4cb3c4ec146bec80c32d8bb16033752574c20b1252ee842a95d1a1e/charset_normalizer-3.4.3-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:1bb60174149316da1c35fa5233681f7c0f9f514509b8e399ab70fea5f17e45c9", size = 159196, upload-time = "2025-08-09T07:56:27.25Z" }, - { url = "https://files.pythonhosted.org/packages/86/9e/f552f7a00611f168b9a5865a1414179b2c6de8235a4fa40189f6f79a1753/charset_normalizer-3.4.3-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:30d006f98569de3459c2fc1f2acde170b7b2bd265dc1943e87e1a4efe1b67c31", size = 156819, upload-time = "2025-08-09T07:56:28.515Z" }, - { url = "https://files.pythonhosted.org/packages/7e/95/42aa2156235cbc8fa61208aded06ef46111c4d3f0de233107b3f38631803/charset_normalizer-3.4.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:416175faf02e4b0810f1f38bcb54682878a4af94059a1cd63b8747244420801f", size = 151350, upload-time = "2025-08-09T07:56:29.716Z" }, - { url = "https://files.pythonhosted.org/packages/c2/a9/3865b02c56f300a6f94fc631ef54f0a8a29da74fb45a773dfd3dcd380af7/charset_normalizer-3.4.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:6aab0f181c486f973bc7262a97f5aca3ee7e1437011ef0c2ec04b5a11d16c927", size = 148644, upload-time = "2025-08-09T07:56:30.984Z" }, - { url = "https://files.pythonhosted.org/packages/77/d9/cbcf1a2a5c7d7856f11e7ac2d782aec12bdfea60d104e60e0aa1c97849dc/charset_normalizer-3.4.3-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:fdabf8315679312cfa71302f9bd509ded4f2f263fb5b765cf1433b39106c3cc9", size = 160468, upload-time = "2025-08-09T07:56:32.252Z" }, - { url = "https://files.pythonhosted.org/packages/f6/42/6f45efee8697b89fda4d50580f292b8f7f9306cb2971d4b53f8914e4d890/charset_normalizer-3.4.3-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:bd28b817ea8c70215401f657edef3a8aa83c29d447fb0b622c35403780ba11d5", size = 158187, upload-time = "2025-08-09T07:56:33.481Z" }, - { url = "https://files.pythonhosted.org/packages/70/99/f1c3bdcfaa9c45b3ce96f70b14f070411366fa19549c1d4832c935d8e2c3/charset_normalizer-3.4.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:18343b2d246dc6761a249ba1fb13f9ee9a2bcd95decc767319506056ea4ad4dc", size = 152699, upload-time = "2025-08-09T07:56:34.739Z" }, - { url = "https://files.pythonhosted.org/packages/a3/ad/b0081f2f99a4b194bcbb1934ef3b12aa4d9702ced80a37026b7607c72e58/charset_normalizer-3.4.3-cp313-cp313-win32.whl", hash = "sha256:6fb70de56f1859a3f71261cbe41005f56a7842cc348d3aeb26237560bfa5e0ce", size = 99580, upload-time = "2025-08-09T07:56:35.981Z" }, - { url = "https://files.pythonhosted.org/packages/9a/8f/ae790790c7b64f925e5c953b924aaa42a243fb778fed9e41f147b2a5715a/charset_normalizer-3.4.3-cp313-cp313-win_amd64.whl", hash = "sha256:cf1ebb7d78e1ad8ec2a8c4732c7be2e736f6e5123a4146c5b89c9d1f585f8cef", size = 107366, upload-time = "2025-08-09T07:56:37.339Z" }, - { url = "https://files.pythonhosted.org/packages/8e/91/b5a06ad970ddc7a0e513112d40113e834638f4ca1120eb727a249fb2715e/charset_normalizer-3.4.3-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:3cd35b7e8aedeb9e34c41385fda4f73ba609e561faedfae0a9e75e44ac558a15", size = 204342, upload-time = "2025-08-09T07:56:38.687Z" }, - { url = "https://files.pythonhosted.org/packages/ce/ec/1edc30a377f0a02689342f214455c3f6c2fbedd896a1d2f856c002fc3062/charset_normalizer-3.4.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b89bc04de1d83006373429975f8ef9e7932534b8cc9ca582e4db7d20d91816db", size = 145995, upload-time = "2025-08-09T07:56:40.048Z" }, - { url = "https://files.pythonhosted.org/packages/17/e5/5e67ab85e6d22b04641acb5399c8684f4d37caf7558a53859f0283a650e9/charset_normalizer-3.4.3-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:2001a39612b241dae17b4687898843f254f8748b796a2e16f1051a17078d991d", size = 158640, upload-time = "2025-08-09T07:56:41.311Z" }, - { url = "https://files.pythonhosted.org/packages/f1/e5/38421987f6c697ee3722981289d554957c4be652f963d71c5e46a262e135/charset_normalizer-3.4.3-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:8dcfc373f888e4fb39a7bc57e93e3b845e7f462dacc008d9749568b1c4ece096", size = 156636, upload-time = "2025-08-09T07:56:43.195Z" }, - { url = "https://files.pythonhosted.org/packages/a0/e4/5a075de8daa3ec0745a9a3b54467e0c2967daaaf2cec04c845f73493e9a1/charset_normalizer-3.4.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:18b97b8404387b96cdbd30ad660f6407799126d26a39ca65729162fd810a99aa", size = 150939, upload-time = "2025-08-09T07:56:44.819Z" }, - { url = "https://files.pythonhosted.org/packages/02/f7/3611b32318b30974131db62b4043f335861d4d9b49adc6d57c1149cc49d4/charset_normalizer-3.4.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:ccf600859c183d70eb47e05a44cd80a4ce77394d1ac0f79dbd2dd90a69a3a049", size = 148580, upload-time = "2025-08-09T07:56:46.684Z" }, - { url = "https://files.pythonhosted.org/packages/7e/61/19b36f4bd67f2793ab6a99b979b4e4f3d8fc754cbdffb805335df4337126/charset_normalizer-3.4.3-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:53cd68b185d98dde4ad8990e56a58dea83a4162161b1ea9272e5c9182ce415e0", size = 159870, upload-time = "2025-08-09T07:56:47.941Z" }, - { url = "https://files.pythonhosted.org/packages/06/57/84722eefdd338c04cf3030ada66889298eaedf3e7a30a624201e0cbe424a/charset_normalizer-3.4.3-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:30a96e1e1f865f78b030d65241c1ee850cdf422d869e9028e2fc1d5e4db73b92", size = 157797, upload-time = "2025-08-09T07:56:49.756Z" }, - { url = "https://files.pythonhosted.org/packages/72/2a/aff5dd112b2f14bcc3462c312dce5445806bfc8ab3a7328555da95330e4b/charset_normalizer-3.4.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:d716a916938e03231e86e43782ca7878fb602a125a91e7acb8b5112e2e96ac16", size = 152224, upload-time = "2025-08-09T07:56:51.369Z" }, - { url = "https://files.pythonhosted.org/packages/b7/8c/9839225320046ed279c6e839d51f028342eb77c91c89b8ef2549f951f3ec/charset_normalizer-3.4.3-cp314-cp314-win32.whl", hash = "sha256:c6dbd0ccdda3a2ba7c2ecd9d77b37f3b5831687d8dc1b6ca5f56a4880cc7b7ce", size = 100086, upload-time = "2025-08-09T07:56:52.722Z" }, - { url = "https://files.pythonhosted.org/packages/ee/7a/36fbcf646e41f710ce0a563c1c9a343c6edf9be80786edeb15b6f62e17db/charset_normalizer-3.4.3-cp314-cp314-win_amd64.whl", hash = "sha256:73dc19b562516fc9bcf6e5d6e596df0b4eb98d87e4f79f3ae71840e6ed21361c", size = 107400, upload-time = "2025-08-09T07:56:55.172Z" }, - { url = "https://files.pythonhosted.org/packages/8a/1f/f041989e93b001bc4e44bb1669ccdcf54d3f00e628229a85b08d330615c5/charset_normalizer-3.4.3-py3-none-any.whl", hash = "sha256:ce571ab16d890d23b5c278547ba694193a45011ff86a9162a71307ed9f86759a", size = 53175, upload-time = "2025-08-09T07:57:26.864Z" }, -] - -[[package]] -name = "click" -version = "8.2.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "colorama", marker = "sys_platform == 'win32'" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/60/6c/8ca2efa64cf75a977a0d7fac081354553ebe483345c734fb6b6515d96bbc/click-8.2.1.tar.gz", hash = "sha256:27c491cc05d968d271d5a1db13e3b5a184636d9d930f148c50b038f0d0646202", size = 286342, upload-time = "2025-05-20T23:19:49.832Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/85/32/10bb5764d90a8eee674e9dc6f4db6a0ab47c8c4d0d83c27f7c39ac415a4d/click-8.2.1-py3-none-any.whl", hash = "sha256:61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b", size = 102215, upload-time = "2025-05-20T23:19:47.796Z" }, -] - -[[package]] -name = "colorama" -version = "0.4.6" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44", size = 27697, upload-time = "2022-10-25T02:36:22.414Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335, upload-time = "2022-10-25T02:36:20.889Z" }, -] - -[[package]] -name = "comm" -version = "0.2.3" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/4c/13/7d740c5849255756bc17888787313b61fd38a0a8304fc4f073dfc46122aa/comm-0.2.3.tar.gz", hash = "sha256:2dc8048c10962d55d7ad693be1e7045d891b7ce8d999c97963a5e3e99c055971", size = 6319, upload-time = "2025-07-25T14:02:04.452Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl", hash = "sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417", size = 7294, upload-time = "2025-07-25T14:02:02.896Z" }, -] - -[[package]] -name = "contourpy" -version = "1.3.3" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "numpy" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/58/01/1253e6698a07380cd31a736d248a3f2a50a7c88779a1813da27503cadc2a/contourpy-1.3.3.tar.gz", hash = "sha256:083e12155b210502d0bca491432bb04d56dc3432f95a979b429f2848c3dbe880", size = 13466174, upload-time = "2025-07-26T12:03:12.549Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/be/45/adfee365d9ea3d853550b2e735f9d66366701c65db7855cd07621732ccfc/contourpy-1.3.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:b08a32ea2f8e42cf1d4be3169a98dd4be32bafe4f22b6c4cb4ba810fa9e5d2cb", size = 293419, upload-time = "2025-07-26T12:01:21.16Z" }, - { url = "https://files.pythonhosted.org/packages/53/3e/405b59cfa13021a56bba395a6b3aca8cec012b45bf177b0eaf7a202cde2c/contourpy-1.3.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:556dba8fb6f5d8742f2923fe9457dbdd51e1049c4a43fd3986a0b14a1d815fc6", size = 273979, upload-time = "2025-07-26T12:01:22.448Z" }, - { url = "https://files.pythonhosted.org/packages/d4/1c/a12359b9b2ca3a845e8f7f9ac08bdf776114eb931392fcad91743e2ea17b/contourpy-1.3.3-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:92d9abc807cf7d0e047b95ca5d957cf4792fcd04e920ca70d48add15c1a90ea7", size = 332653, upload-time = "2025-07-26T12:01:24.155Z" }, - { url = "https://files.pythonhosted.org/packages/63/12/897aeebfb475b7748ea67b61e045accdfcf0d971f8a588b67108ed7f5512/contourpy-1.3.3-cp312-cp312-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:b2e8faa0ed68cb29af51edd8e24798bb661eac3bd9f65420c1887b6ca89987c8", size = 379536, upload-time = "2025-07-26T12:01:25.91Z" }, - { url = "https://files.pythonhosted.org/packages/43/8a/a8c584b82deb248930ce069e71576fc09bd7174bbd35183b7943fb1064fd/contourpy-1.3.3-cp312-cp312-manylinux_2_26_s390x.manylinux_2_28_s390x.whl", hash = "sha256:626d60935cf668e70a5ce6ff184fd713e9683fb458898e4249b63be9e28286ea", size = 384397, upload-time = "2025-07-26T12:01:27.152Z" }, - { url = "https://files.pythonhosted.org/packages/cc/8f/ec6289987824b29529d0dfda0d74a07cec60e54b9c92f3c9da4c0ac732de/contourpy-1.3.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4d00e655fcef08aba35ec9610536bfe90267d7ab5ba944f7032549c55a146da1", size = 362601, upload-time = "2025-07-26T12:01:28.808Z" }, - { url = "https://files.pythonhosted.org/packages/05/0a/a3fe3be3ee2dceb3e615ebb4df97ae6f3828aa915d3e10549ce016302bd1/contourpy-1.3.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:451e71b5a7d597379ef572de31eeb909a87246974d960049a9848c3bc6c41bf7", size = 1331288, upload-time = "2025-07-26T12:01:31.198Z" }, - { url = "https://files.pythonhosted.org/packages/33/1d/acad9bd4e97f13f3e2b18a3977fe1b4a37ecf3d38d815333980c6c72e963/contourpy-1.3.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:459c1f020cd59fcfe6650180678a9993932d80d44ccde1fa1868977438f0b411", size = 1403386, upload-time = "2025-07-26T12:01:33.947Z" }, - { url = "https://files.pythonhosted.org/packages/cf/8f/5847f44a7fddf859704217a99a23a4f6417b10e5ab1256a179264561540e/contourpy-1.3.3-cp312-cp312-win32.whl", hash = "sha256:023b44101dfe49d7d53932be418477dba359649246075c996866106da069af69", size = 185018, upload-time = "2025-07-26T12:01:35.64Z" }, - { url = "https://files.pythonhosted.org/packages/19/e8/6026ed58a64563186a9ee3f29f41261fd1828f527dd93d33b60feca63352/contourpy-1.3.3-cp312-cp312-win_amd64.whl", hash = "sha256:8153b8bfc11e1e4d75bcb0bff1db232f9e10b274e0929de9d608027e0d34ff8b", size = 226567, upload-time = "2025-07-26T12:01:36.804Z" }, - { url = "https://files.pythonhosted.org/packages/d1/e2/f05240d2c39a1ed228d8328a78b6f44cd695f7ef47beb3e684cf93604f86/contourpy-1.3.3-cp312-cp312-win_arm64.whl", hash = "sha256:07ce5ed73ecdc4a03ffe3e1b3e3c1166db35ae7584be76f65dbbe28a7791b0cc", size = 193655, upload-time = "2025-07-26T12:01:37.999Z" }, - { url = "https://files.pythonhosted.org/packages/68/35/0167aad910bbdb9599272bd96d01a9ec6852f36b9455cf2ca67bd4cc2d23/contourpy-1.3.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:177fb367556747a686509d6fef71d221a4b198a3905fe824430e5ea0fda54eb5", size = 293257, upload-time = "2025-07-26T12:01:39.367Z" }, - { url = "https://files.pythonhosted.org/packages/96/e4/7adcd9c8362745b2210728f209bfbcf7d91ba868a2c5f40d8b58f54c509b/contourpy-1.3.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:d002b6f00d73d69333dac9d0b8d5e84d9724ff9ef044fd63c5986e62b7c9e1b1", size = 274034, upload-time = "2025-07-26T12:01:40.645Z" }, - { url = "https://files.pythonhosted.org/packages/73/23/90e31ceeed1de63058a02cb04b12f2de4b40e3bef5e082a7c18d9c8ae281/contourpy-1.3.3-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:348ac1f5d4f1d66d3322420f01d42e43122f43616e0f194fc1c9f5d830c5b286", size = 334672, upload-time = "2025-07-26T12:01:41.942Z" }, - { url = "https://files.pythonhosted.org/packages/ed/93/b43d8acbe67392e659e1d984700e79eb67e2acb2bd7f62012b583a7f1b55/contourpy-1.3.3-cp313-cp313-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:655456777ff65c2c548b7c454af9c6f33f16c8884f11083244b5819cc214f1b5", size = 381234, upload-time = "2025-07-26T12:01:43.499Z" }, - { url = "https://files.pythonhosted.org/packages/46/3b/bec82a3ea06f66711520f75a40c8fc0b113b2a75edb36aa633eb11c4f50f/contourpy-1.3.3-cp313-cp313-manylinux_2_26_s390x.manylinux_2_28_s390x.whl", hash = "sha256:644a6853d15b2512d67881586bd03f462c7ab755db95f16f14d7e238f2852c67", size = 385169, upload-time = "2025-07-26T12:01:45.219Z" }, - { url = "https://files.pythonhosted.org/packages/4b/32/e0f13a1c5b0f8572d0ec6ae2f6c677b7991fafd95da523159c19eff0696a/contourpy-1.3.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4debd64f124ca62069f313a9cb86656ff087786016d76927ae2cf37846b006c9", size = 362859, upload-time = "2025-07-26T12:01:46.519Z" }, - { url = "https://files.pythonhosted.org/packages/33/71/e2a7945b7de4e58af42d708a219f3b2f4cff7386e6b6ab0a0fa0033c49a9/contourpy-1.3.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a15459b0f4615b00bbd1e91f1b9e19b7e63aea7483d03d804186f278c0af2659", size = 1332062, upload-time = "2025-07-26T12:01:48.964Z" }, - { url = "https://files.pythonhosted.org/packages/12/fc/4e87ac754220ccc0e807284f88e943d6d43b43843614f0a8afa469801db0/contourpy-1.3.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:ca0fdcd73925568ca027e0b17ab07aad764be4706d0a925b89227e447d9737b7", size = 1403932, upload-time = "2025-07-26T12:01:51.979Z" }, - { url = "https://files.pythonhosted.org/packages/a6/2e/adc197a37443f934594112222ac1aa7dc9a98faf9c3842884df9a9d8751d/contourpy-1.3.3-cp313-cp313-win32.whl", hash = "sha256:b20c7c9a3bf701366556e1b1984ed2d0cedf999903c51311417cf5f591d8c78d", size = 185024, upload-time = "2025-07-26T12:01:53.245Z" }, - { url = "https://files.pythonhosted.org/packages/18/0b/0098c214843213759692cc638fce7de5c289200a830e5035d1791d7a2338/contourpy-1.3.3-cp313-cp313-win_amd64.whl", hash = "sha256:1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263", size = 226578, upload-time = "2025-07-26T12:01:54.422Z" }, - { url = "https://files.pythonhosted.org/packages/8a/9a/2f6024a0c5995243cd63afdeb3651c984f0d2bc727fd98066d40e141ad73/contourpy-1.3.3-cp313-cp313-win_arm64.whl", hash = "sha256:fd914713266421b7536de2bfa8181aa8c699432b6763a0ea64195ebe28bff6a9", size = 193524, upload-time = "2025-07-26T12:01:55.73Z" }, - { url = "https://files.pythonhosted.org/packages/c0/b3/f8a1a86bd3298513f500e5b1f5fd92b69896449f6cab6a146a5d52715479/contourpy-1.3.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:88df9880d507169449d434c293467418b9f6cbe82edd19284aa0409e7fdb933d", size = 306730, upload-time = "2025-07-26T12:01:57.051Z" }, - { url = "https://files.pythonhosted.org/packages/3f/11/4780db94ae62fc0c2053909b65dc3246bd7cecfc4f8a20d957ad43aa4ad8/contourpy-1.3.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:d06bb1f751ba5d417047db62bca3c8fde202b8c11fb50742ab3ab962c81e8216", size = 287897, upload-time = "2025-07-26T12:01:58.663Z" }, - { url = "https://files.pythonhosted.org/packages/ae/15/e59f5f3ffdd6f3d4daa3e47114c53daabcb18574a26c21f03dc9e4e42ff0/contourpy-1.3.3-cp313-cp313t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e4e6b05a45525357e382909a4c1600444e2a45b4795163d3b22669285591c1ae", size = 326751, upload-time = "2025-07-26T12:02:00.343Z" }, - { url = "https://files.pythonhosted.org/packages/0f/81/03b45cfad088e4770b1dcf72ea78d3802d04200009fb364d18a493857210/contourpy-1.3.3-cp313-cp313t-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:ab3074b48c4e2cf1a960e6bbeb7f04566bf36b1861d5c9d4d8ac04b82e38ba20", size = 375486, upload-time = "2025-07-26T12:02:02.128Z" }, - { url = "https://files.pythonhosted.org/packages/0c/ba/49923366492ffbdd4486e970d421b289a670ae8cf539c1ea9a09822b371a/contourpy-1.3.3-cp313-cp313t-manylinux_2_26_s390x.manylinux_2_28_s390x.whl", hash = "sha256:6c3d53c796f8647d6deb1abe867daeb66dcc8a97e8455efa729516b997b8ed99", size = 388106, upload-time = "2025-07-26T12:02:03.615Z" }, - { url = "https://files.pythonhosted.org/packages/9f/52/5b00ea89525f8f143651f9f03a0df371d3cbd2fccd21ca9b768c7a6500c2/contourpy-1.3.3-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:50ed930df7289ff2a8d7afeb9603f8289e5704755c7e5c3bbd929c90c817164b", size = 352548, upload-time = "2025-07-26T12:02:05.165Z" }, - { url = "https://files.pythonhosted.org/packages/32/1d/a209ec1a3a3452d490f6b14dd92e72280c99ae3d1e73da74f8277d4ee08f/contourpy-1.3.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:4feffb6537d64b84877da813a5c30f1422ea5739566abf0bd18065ac040e120a", size = 1322297, upload-time = "2025-07-26T12:02:07.379Z" }, - { url = "https://files.pythonhosted.org/packages/bc/9e/46f0e8ebdd884ca0e8877e46a3f4e633f6c9c8c4f3f6e72be3fe075994aa/contourpy-1.3.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:2b7e9480ffe2b0cd2e787e4df64270e3a0440d9db8dc823312e2c940c167df7e", size = 1391023, upload-time = "2025-07-26T12:02:10.171Z" }, - { url = "https://files.pythonhosted.org/packages/b9/70/f308384a3ae9cd2209e0849f33c913f658d3326900d0ff5d378d6a1422d2/contourpy-1.3.3-cp313-cp313t-win32.whl", hash = "sha256:283edd842a01e3dcd435b1c5116798d661378d83d36d337b8dde1d16a5fc9ba3", size = 196157, upload-time = "2025-07-26T12:02:11.488Z" }, - { url = "https://files.pythonhosted.org/packages/b2/dd/880f890a6663b84d9e34a6f88cded89d78f0091e0045a284427cb6b18521/contourpy-1.3.3-cp313-cp313t-win_amd64.whl", hash = "sha256:87acf5963fc2b34825e5b6b048f40e3635dd547f590b04d2ab317c2619ef7ae8", size = 240570, upload-time = "2025-07-26T12:02:12.754Z" }, - { url = "https://files.pythonhosted.org/packages/80/99/2adc7d8ffead633234817ef8e9a87115c8a11927a94478f6bb3d3f4d4f7d/contourpy-1.3.3-cp313-cp313t-win_arm64.whl", hash = "sha256:3c30273eb2a55024ff31ba7d052dde990d7d8e5450f4bbb6e913558b3d6c2301", size = 199713, upload-time = "2025-07-26T12:02:14.4Z" }, - { url = "https://files.pythonhosted.org/packages/72/8b/4546f3ab60f78c514ffb7d01a0bd743f90de36f0019d1be84d0a708a580a/contourpy-1.3.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:fde6c716d51c04b1c25d0b90364d0be954624a0ee9d60e23e850e8d48353d07a", size = 292189, upload-time = "2025-07-26T12:02:16.095Z" }, - { url = "https://files.pythonhosted.org/packages/fd/e1/3542a9cb596cadd76fcef413f19c79216e002623158befe6daa03dbfa88c/contourpy-1.3.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:cbedb772ed74ff5be440fa8eee9bd49f64f6e3fc09436d9c7d8f1c287b121d77", size = 273251, upload-time = "2025-07-26T12:02:17.524Z" }, - { url = "https://files.pythonhosted.org/packages/b1/71/f93e1e9471d189f79d0ce2497007731c1e6bf9ef6d1d61b911430c3db4e5/contourpy-1.3.3-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:22e9b1bd7a9b1d652cd77388465dc358dafcd2e217d35552424aa4f996f524f5", size = 335810, upload-time = "2025-07-26T12:02:18.9Z" }, - { url = "https://files.pythonhosted.org/packages/91/f9/e35f4c1c93f9275d4e38681a80506b5510e9327350c51f8d4a5a724d178c/contourpy-1.3.3-cp314-cp314-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:a22738912262aa3e254e4f3cb079a95a67132fc5a063890e224393596902f5a4", size = 382871, upload-time = "2025-07-26T12:02:20.418Z" }, - { url = "https://files.pythonhosted.org/packages/b5/71/47b512f936f66a0a900d81c396a7e60d73419868fba959c61efed7a8ab46/contourpy-1.3.3-cp314-cp314-manylinux_2_26_s390x.manylinux_2_28_s390x.whl", hash = "sha256:afe5a512f31ee6bd7d0dda52ec9864c984ca3d66664444f2d72e0dc4eb832e36", size = 386264, upload-time = "2025-07-26T12:02:21.916Z" }, - { url = "https://files.pythonhosted.org/packages/04/5f/9ff93450ba96b09c7c2b3f81c94de31c89f92292f1380261bd7195bea4ea/contourpy-1.3.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f64836de09927cba6f79dcd00fdd7d5329f3fccc633468507079c829ca4db4e3", size = 363819, upload-time = "2025-07-26T12:02:23.759Z" }, - { url = "https://files.pythonhosted.org/packages/3e/a6/0b185d4cc480ee494945cde102cb0149ae830b5fa17bf855b95f2e70ad13/contourpy-1.3.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:1fd43c3be4c8e5fd6e4f2baeae35ae18176cf2e5cced681cca908addf1cdd53b", size = 1333650, upload-time = "2025-07-26T12:02:26.181Z" }, - { url = "https://files.pythonhosted.org/packages/43/d7/afdc95580ca56f30fbcd3060250f66cedbde69b4547028863abd8aa3b47e/contourpy-1.3.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:6afc576f7b33cf00996e5c1102dc2a8f7cc89e39c0b55df93a0b78c1bd992b36", size = 1404833, upload-time = "2025-07-26T12:02:28.782Z" }, - { url = "https://files.pythonhosted.org/packages/e2/e2/366af18a6d386f41132a48f033cbd2102e9b0cf6345d35ff0826cd984566/contourpy-1.3.3-cp314-cp314-win32.whl", hash = "sha256:66c8a43a4f7b8df8b71ee1840e4211a3c8d93b214b213f590e18a1beca458f7d", size = 189692, upload-time = "2025-07-26T12:02:30.128Z" }, - { url = "https://files.pythonhosted.org/packages/7d/c2/57f54b03d0f22d4044b8afb9ca0e184f8b1afd57b4f735c2fa70883dc601/contourpy-1.3.3-cp314-cp314-win_amd64.whl", hash = "sha256:cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd", size = 232424, upload-time = "2025-07-26T12:02:31.395Z" }, - { url = "https://files.pythonhosted.org/packages/18/79/a9416650df9b525737ab521aa181ccc42d56016d2123ddcb7b58e926a42c/contourpy-1.3.3-cp314-cp314-win_arm64.whl", hash = "sha256:95b181891b4c71de4bb404c6621e7e2390745f887f2a026b2d99e92c17892339", size = 198300, upload-time = "2025-07-26T12:02:32.956Z" }, - { url = "https://files.pythonhosted.org/packages/1f/42/38c159a7d0f2b7b9c04c64ab317042bb6952b713ba875c1681529a2932fe/contourpy-1.3.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:33c82d0138c0a062380332c861387650c82e4cf1747aaa6938b9b6516762e772", size = 306769, upload-time = "2025-07-26T12:02:34.2Z" }, - { url = "https://files.pythonhosted.org/packages/c3/6c/26a8205f24bca10974e77460de68d3d7c63e282e23782f1239f226fcae6f/contourpy-1.3.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:ea37e7b45949df430fe649e5de8351c423430046a2af20b1c1961cae3afcda77", size = 287892, upload-time = "2025-07-26T12:02:35.807Z" }, - { url = "https://files.pythonhosted.org/packages/66/06/8a475c8ab718ebfd7925661747dbb3c3ee9c82ac834ccb3570be49d129f4/contourpy-1.3.3-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d304906ecc71672e9c89e87c4675dc5c2645e1f4269a5063b99b0bb29f232d13", size = 326748, upload-time = "2025-07-26T12:02:37.193Z" }, - { url = "https://files.pythonhosted.org/packages/b4/a3/c5ca9f010a44c223f098fccd8b158bb1cb287378a31ac141f04730dc49be/contourpy-1.3.3-cp314-cp314t-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:ca658cd1a680a5c9ea96dc61cdbae1e85c8f25849843aa799dfd3cb370ad4fbe", size = 375554, upload-time = "2025-07-26T12:02:38.894Z" }, - { url = "https://files.pythonhosted.org/packages/80/5b/68bd33ae63fac658a4145088c1e894405e07584a316738710b636c6d0333/contourpy-1.3.3-cp314-cp314t-manylinux_2_26_s390x.manylinux_2_28_s390x.whl", hash = "sha256:ab2fd90904c503739a75b7c8c5c01160130ba67944a7b77bbf36ef8054576e7f", size = 388118, upload-time = "2025-07-26T12:02:40.642Z" }, - { url = "https://files.pythonhosted.org/packages/40/52/4c285a6435940ae25d7410a6c36bda5145839bc3f0beb20c707cda18b9d2/contourpy-1.3.3-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b7301b89040075c30e5768810bc96a8e8d78085b47d8be6e4c3f5a0b4ed478a0", size = 352555, upload-time = "2025-07-26T12:02:42.25Z" }, - { url = "https://files.pythonhosted.org/packages/24/ee/3e81e1dd174f5c7fefe50e85d0892de05ca4e26ef1c9a59c2a57e43b865a/contourpy-1.3.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:2a2a8b627d5cc6b7c41a4beff6c5ad5eb848c88255fda4a8745f7e901b32d8e4", size = 1322295, upload-time = "2025-07-26T12:02:44.668Z" }, - { url = "https://files.pythonhosted.org/packages/3c/b2/6d913d4d04e14379de429057cd169e5e00f6c2af3bb13e1710bcbdb5da12/contourpy-1.3.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:fd6ec6be509c787f1caf6b247f0b1ca598bef13f4ddeaa126b7658215529ba0f", size = 1391027, upload-time = "2025-07-26T12:02:47.09Z" }, - { url = "https://files.pythonhosted.org/packages/93/8a/68a4ec5c55a2971213d29a9374913f7e9f18581945a7a31d1a39b5d2dfe5/contourpy-1.3.3-cp314-cp314t-win32.whl", hash = "sha256:e74a9a0f5e3fff48fb5a7f2fd2b9b70a3fe014a67522f79b7cca4c0c7e43c9ae", size = 202428, upload-time = "2025-07-26T12:02:48.691Z" }, - { url = "https://files.pythonhosted.org/packages/fa/96/fd9f641ffedc4fa3ace923af73b9d07e869496c9cc7a459103e6e978992f/contourpy-1.3.3-cp314-cp314t-win_amd64.whl", hash = "sha256:13b68d6a62db8eafaebb8039218921399baf6e47bf85006fd8529f2a08ef33fc", size = 250331, upload-time = "2025-07-26T12:02:50.137Z" }, - { url = "https://files.pythonhosted.org/packages/ae/8c/469afb6465b853afff216f9528ffda78a915ff880ed58813ba4faf4ba0b6/contourpy-1.3.3-cp314-cp314t-win_arm64.whl", hash = "sha256:b7448cb5a725bb1e35ce88771b86fba35ef418952474492cf7c764059933ff8b", size = 203831, upload-time = "2025-07-26T12:02:51.449Z" }, -] - -[[package]] -name = "cryptography" -version = "45.0.6" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "cffi", marker = "platform_python_implementation != 'PyPy'" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/d6/0d/d13399c94234ee8f3df384819dc67e0c5ce215fb751d567a55a1f4b028c7/cryptography-45.0.6.tar.gz", hash = "sha256:5c966c732cf6e4a276ce83b6e4c729edda2df6929083a952cc7da973c539c719", size = 744949, upload-time = "2025-08-05T23:59:27.93Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/8c/29/2793d178d0eda1ca4a09a7c4e09a5185e75738cc6d526433e8663b460ea6/cryptography-45.0.6-cp311-abi3-macosx_10_9_universal2.whl", hash = "sha256:048e7ad9e08cf4c0ab07ff7f36cc3115924e22e2266e034450a890d9e312dd74", size = 7042702, upload-time = "2025-08-05T23:58:23.464Z" }, - { url = "https://files.pythonhosted.org/packages/b3/b6/cabd07410f222f32c8d55486c464f432808abaa1f12af9afcbe8f2f19030/cryptography-45.0.6-cp311-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:44647c5d796f5fc042bbc6d61307d04bf29bccb74d188f18051b635f20a9c75f", size = 4206483, upload-time = "2025-08-05T23:58:27.132Z" }, - { url = "https://files.pythonhosted.org/packages/8b/9e/f9c7d36a38b1cfeb1cc74849aabe9bf817990f7603ff6eb485e0d70e0b27/cryptography-45.0.6-cp311-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:e40b80ecf35ec265c452eea0ba94c9587ca763e739b8e559c128d23bff7ebbbf", size = 4429679, upload-time = "2025-08-05T23:58:29.152Z" }, - { url = "https://files.pythonhosted.org/packages/9c/2a/4434c17eb32ef30b254b9e8b9830cee4e516f08b47fdd291c5b1255b8101/cryptography-45.0.6-cp311-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:00e8724bdad672d75e6f069b27970883179bd472cd24a63f6e620ca7e41cc0c5", size = 4210553, upload-time = "2025-08-05T23:58:30.596Z" }, - { url = "https://files.pythonhosted.org/packages/ef/1d/09a5df8e0c4b7970f5d1f3aff1b640df6d4be28a64cae970d56c6cf1c772/cryptography-45.0.6-cp311-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:7a3085d1b319d35296176af31c90338eeb2ddac8104661df79f80e1d9787b8b2", size = 3894499, upload-time = "2025-08-05T23:58:32.03Z" }, - { url = "https://files.pythonhosted.org/packages/79/62/120842ab20d9150a9d3a6bdc07fe2870384e82f5266d41c53b08a3a96b34/cryptography-45.0.6-cp311-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:1b7fa6a1c1188c7ee32e47590d16a5a0646270921f8020efc9a511648e1b2e08", size = 4458484, upload-time = "2025-08-05T23:58:33.526Z" }, - { url = "https://files.pythonhosted.org/packages/fd/80/1bc3634d45ddfed0871bfba52cf8f1ad724761662a0c792b97a951fb1b30/cryptography-45.0.6-cp311-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:275ba5cc0d9e320cd70f8e7b96d9e59903c815ca579ab96c1e37278d231fc402", size = 4210281, upload-time = "2025-08-05T23:58:35.445Z" }, - { url = "https://files.pythonhosted.org/packages/7d/fe/ffb12c2d83d0ee625f124880a1f023b5878f79da92e64c37962bbbe35f3f/cryptography-45.0.6-cp311-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:f4028f29a9f38a2025abedb2e409973709c660d44319c61762202206ed577c42", size = 4456890, upload-time = "2025-08-05T23:58:36.923Z" }, - { url = "https://files.pythonhosted.org/packages/8c/8e/b3f3fe0dc82c77a0deb5f493b23311e09193f2268b77196ec0f7a36e3f3e/cryptography-45.0.6-cp311-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:ee411a1b977f40bd075392c80c10b58025ee5c6b47a822a33c1198598a7a5f05", size = 4333247, upload-time = "2025-08-05T23:58:38.781Z" }, - { url = "https://files.pythonhosted.org/packages/b3/a6/c3ef2ab9e334da27a1d7b56af4a2417d77e7806b2e0f90d6267ce120d2e4/cryptography-45.0.6-cp311-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:e2a21a8eda2d86bb604934b6b37691585bd095c1f788530c1fcefc53a82b3453", size = 4565045, upload-time = "2025-08-05T23:58:40.415Z" }, - { url = "https://files.pythonhosted.org/packages/31/c3/77722446b13fa71dddd820a5faab4ce6db49e7e0bf8312ef4192a3f78e2f/cryptography-45.0.6-cp311-abi3-win32.whl", hash = "sha256:d063341378d7ee9c91f9d23b431a3502fc8bfacd54ef0a27baa72a0843b29159", size = 2928923, upload-time = "2025-08-05T23:58:41.919Z" }, - { url = "https://files.pythonhosted.org/packages/38/63/a025c3225188a811b82932a4dcc8457a26c3729d81578ccecbcce2cb784e/cryptography-45.0.6-cp311-abi3-win_amd64.whl", hash = "sha256:833dc32dfc1e39b7376a87b9a6a4288a10aae234631268486558920029b086ec", size = 3403805, upload-time = "2025-08-05T23:58:43.792Z" }, - { url = "https://files.pythonhosted.org/packages/5b/af/bcfbea93a30809f126d51c074ee0fac5bd9d57d068edf56c2a73abedbea4/cryptography-45.0.6-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:3436128a60a5e5490603ab2adbabc8763613f638513ffa7d311c900a8349a2a0", size = 7020111, upload-time = "2025-08-05T23:58:45.316Z" }, - { url = "https://files.pythonhosted.org/packages/98/c6/ea5173689e014f1a8470899cd5beeb358e22bb3cf5a876060f9d1ca78af4/cryptography-45.0.6-cp37-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:0d9ef57b6768d9fa58e92f4947cea96ade1233c0e236db22ba44748ffedca394", size = 4198169, upload-time = "2025-08-05T23:58:47.121Z" }, - { url = "https://files.pythonhosted.org/packages/ba/73/b12995edc0c7e2311ffb57ebd3b351f6b268fed37d93bfc6f9856e01c473/cryptography-45.0.6-cp37-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:ea3c42f2016a5bbf71825537c2ad753f2870191134933196bee408aac397b3d9", size = 4421273, upload-time = "2025-08-05T23:58:48.557Z" }, - { url = "https://files.pythonhosted.org/packages/f7/6e/286894f6f71926bc0da67408c853dd9ba953f662dcb70993a59fd499f111/cryptography-45.0.6-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:20ae4906a13716139d6d762ceb3e0e7e110f7955f3bc3876e3a07f5daadec5f3", size = 4199211, upload-time = "2025-08-05T23:58:50.139Z" }, - { url = "https://files.pythonhosted.org/packages/de/34/a7f55e39b9623c5cb571d77a6a90387fe557908ffc44f6872f26ca8ae270/cryptography-45.0.6-cp37-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:2dac5ec199038b8e131365e2324c03d20e97fe214af051d20c49db129844e8b3", size = 3883732, upload-time = "2025-08-05T23:58:52.253Z" }, - { url = "https://files.pythonhosted.org/packages/f9/b9/c6d32edbcba0cd9f5df90f29ed46a65c4631c4fbe11187feb9169c6ff506/cryptography-45.0.6-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:18f878a34b90d688982e43f4b700408b478102dd58b3e39de21b5ebf6509c301", size = 4450655, upload-time = "2025-08-05T23:58:53.848Z" }, - { url = "https://files.pythonhosted.org/packages/77/2d/09b097adfdee0227cfd4c699b3375a842080f065bab9014248933497c3f9/cryptography-45.0.6-cp37-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:5bd6020c80c5b2b2242d6c48487d7b85700f5e0038e67b29d706f98440d66eb5", size = 4198956, upload-time = "2025-08-05T23:58:55.209Z" }, - { url = "https://files.pythonhosted.org/packages/55/66/061ec6689207d54effdff535bbdf85cc380d32dd5377173085812565cf38/cryptography-45.0.6-cp37-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:eccddbd986e43014263eda489abbddfbc287af5cddfd690477993dbb31e31016", size = 4449859, upload-time = "2025-08-05T23:58:56.639Z" }, - { url = "https://files.pythonhosted.org/packages/41/ff/e7d5a2ad2d035e5a2af116e1a3adb4d8fcd0be92a18032917a089c6e5028/cryptography-45.0.6-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:550ae02148206beb722cfe4ef0933f9352bab26b087af00e48fdfb9ade35c5b3", size = 4320254, upload-time = "2025-08-05T23:58:58.833Z" }, - { url = "https://files.pythonhosted.org/packages/82/27/092d311af22095d288f4db89fcaebadfb2f28944f3d790a4cf51fe5ddaeb/cryptography-45.0.6-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:5b64e668fc3528e77efa51ca70fadcd6610e8ab231e3e06ae2bab3b31c2b8ed9", size = 4554815, upload-time = "2025-08-05T23:59:00.283Z" }, - { url = "https://files.pythonhosted.org/packages/7e/01/aa2f4940262d588a8fdf4edabe4cda45854d00ebc6eaac12568b3a491a16/cryptography-45.0.6-cp37-abi3-win32.whl", hash = "sha256:780c40fb751c7d2b0c6786ceee6b6f871e86e8718a8ff4bc35073ac353c7cd02", size = 2912147, upload-time = "2025-08-05T23:59:01.716Z" }, - { url = "https://files.pythonhosted.org/packages/0a/bc/16e0276078c2de3ceef6b5a34b965f4436215efac45313df90d55f0ba2d2/cryptography-45.0.6-cp37-abi3-win_amd64.whl", hash = "sha256:20d15aed3ee522faac1a39fbfdfee25d17b1284bafd808e1640a74846d7c4d1b", size = 3390459, upload-time = "2025-08-05T23:59:03.358Z" }, -] - -[[package]] -name = "csscompressor" -version = "0.9.5" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/f1/2a/8c3ac3d8bc94e6de8d7ae270bb5bc437b210bb9d6d9e46630c98f4abd20c/csscompressor-0.9.5.tar.gz", hash = "sha256:afa22badbcf3120a4f392e4d22f9fff485c044a1feda4a950ecc5eba9dd31a05", size = 237808, upload-time = "2017-11-26T21:13:08.238Z" } - -[[package]] -name = "curl-cffi" -version = "0.13.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "certifi" }, - { name = "cffi" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/4e/3d/f39ca1f8fdf14408888e7c25e15eed63eac5f47926e206fb93300d28378c/curl_cffi-0.13.0.tar.gz", hash = "sha256:62ecd90a382bd5023750e3606e0aa7cb1a3a8ba41c14270b8e5e149ebf72c5ca", size = 151303, upload-time = "2025-08-06T13:05:42.988Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/19/d1/acabfd460f1de26cad882e5ef344d9adde1507034528cb6f5698a2e6a2f1/curl_cffi-0.13.0-cp39-abi3-macosx_10_9_x86_64.whl", hash = "sha256:434cadbe8df2f08b2fc2c16dff2779fb40b984af99c06aa700af898e185bb9db", size = 5686337, upload-time = "2025-08-06T13:05:28.985Z" }, - { url = "https://files.pythonhosted.org/packages/2c/1c/cdb4fb2d16a0e9de068e0e5bc02094e105ce58a687ff30b4c6f88e25a057/curl_cffi-0.13.0-cp39-abi3-macosx_11_0_arm64.whl", hash = "sha256:59afa877a9ae09efa04646a7d068eeea48915a95d9add0a29854e7781679fcd7", size = 2994613, upload-time = "2025-08-06T13:05:31.027Z" }, - { url = "https://files.pythonhosted.org/packages/04/3e/fdf617c1ec18c3038b77065d484d7517bb30f8fb8847224eb1f601a4e8bc/curl_cffi-0.13.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d06ed389e45a7ca97b17c275dbedd3d6524560270e675c720e93a2018a766076", size = 7931353, upload-time = "2025-08-06T13:05:32.273Z" }, - { url = "https://files.pythonhosted.org/packages/3d/10/6f30c05d251cf03ddc2b9fd19880f3cab8c193255e733444a2df03b18944/curl_cffi-0.13.0-cp39-abi3-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b4e0de45ab3b7a835c72bd53640c2347415111b43421b5c7a1a0b18deae2e541", size = 7486378, upload-time = "2025-08-06T13:05:33.672Z" }, - { url = "https://files.pythonhosted.org/packages/77/81/5bdb7dd0d669a817397b2e92193559bf66c3807f5848a48ad10cf02bf6c7/curl_cffi-0.13.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8eb4083371bbb94e9470d782de235fb5268bf43520de020c9e5e6be8f395443f", size = 8328585, upload-time = "2025-08-06T13:05:35.28Z" }, - { url = "https://files.pythonhosted.org/packages/ce/c1/df5c6b4cfad41c08442e0f727e449f4fb5a05f8aa564d1acac29062e9e8e/curl_cffi-0.13.0-cp39-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:28911b526e8cd4aa0e5e38401bfe6887e8093907272f1f67ca22e6beb2933a51", size = 8739831, upload-time = "2025-08-06T13:05:37.078Z" }, - { url = "https://files.pythonhosted.org/packages/1a/91/6dd1910a212f2e8eafe57877bcf97748eb24849e1511a266687546066b8a/curl_cffi-0.13.0-cp39-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:6d433ffcb455ab01dd0d7bde47109083aa38b59863aa183d29c668ae4c96bf8e", size = 8711908, upload-time = "2025-08-06T13:05:38.741Z" }, - { url = "https://files.pythonhosted.org/packages/6d/e4/15a253f9b4bf8d008c31e176c162d2704a7e0c5e24d35942f759df107b68/curl_cffi-0.13.0-cp39-abi3-win_amd64.whl", hash = "sha256:66a6b75ce971de9af64f1b6812e275f60b88880577bac47ef1fa19694fa21cd3", size = 1614510, upload-time = "2025-08-06T13:05:40.451Z" }, - { url = "https://files.pythonhosted.org/packages/f9/0f/9c5275f17ad6ff5be70edb8e0120fdc184a658c9577ca426d4230f654beb/curl_cffi-0.13.0-cp39-abi3-win_arm64.whl", hash = "sha256:d438a3b45244e874794bc4081dc1e356d2bb926dcc7021e5a8fef2e2105ef1d8", size = 1365753, upload-time = "2025-08-06T13:05:41.879Z" }, -] - -[[package]] -name = "cycler" -version = "0.12.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/a9/95/a3dbbb5028f35eafb79008e7522a75244477d2838f38cbb722248dabc2a8/cycler-0.12.1.tar.gz", hash = "sha256:88bb128f02ba341da8ef447245a9e138fae777f6a23943da4540077d3601eb1c", size = 7615, upload-time = "2023-10-07T05:32:18.335Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl", hash = "sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30", size = 8321, upload-time = "2023-10-07T05:32:16.783Z" }, -] - -[[package]] -name = "debugpy" -version = "1.8.16" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/ca/d4/722d0bcc7986172ac2ef3c979ad56a1030e3afd44ced136d45f8142b1f4a/debugpy-1.8.16.tar.gz", hash = "sha256:31e69a1feb1cf6b51efbed3f6c9b0ef03bc46ff050679c4be7ea6d2e23540870", size = 1643809, upload-time = "2025-08-06T18:00:02.647Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/61/fb/0387c0e108d842c902801bc65ccc53e5b91d8c169702a9bbf4f7efcedf0c/debugpy-1.8.16-cp312-cp312-macosx_14_0_universal2.whl", hash = "sha256:b202e2843e32e80b3b584bcebfe0e65e0392920dc70df11b2bfe1afcb7a085e4", size = 2511822, upload-time = "2025-08-06T18:00:18.526Z" }, - { url = "https://files.pythonhosted.org/packages/37/44/19e02745cae22bf96440141f94e15a69a1afaa3a64ddfc38004668fcdebf/debugpy-1.8.16-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:64473c4a306ba11a99fe0bb14622ba4fbd943eb004847d9b69b107bde45aa9ea", size = 4230135, upload-time = "2025-08-06T18:00:19.997Z" }, - { url = "https://files.pythonhosted.org/packages/f3/0b/19b1ba5ee4412f303475a2c7ad5858efb99c90eae5ec627aa6275c439957/debugpy-1.8.16-cp312-cp312-win32.whl", hash = "sha256:833a61ed446426e38b0dd8be3e9d45ae285d424f5bf6cd5b2b559c8f12305508", size = 5281271, upload-time = "2025-08-06T18:00:21.281Z" }, - { url = "https://files.pythonhosted.org/packages/b1/e0/bc62e2dc141de53bd03e2c7cb9d7011de2e65e8bdcdaa26703e4d28656ba/debugpy-1.8.16-cp312-cp312-win_amd64.whl", hash = "sha256:75f204684581e9ef3dc2f67687c3c8c183fde2d6675ab131d94084baf8084121", size = 5323149, upload-time = "2025-08-06T18:00:23.033Z" }, - { url = "https://files.pythonhosted.org/packages/62/66/607ab45cc79e60624df386e233ab64a6d8d39ea02e7f80e19c1d451345bb/debugpy-1.8.16-cp313-cp313-macosx_14_0_universal2.whl", hash = "sha256:85df3adb1de5258dca910ae0bb185e48c98801ec15018a263a92bb06be1c8787", size = 2496157, upload-time = "2025-08-06T18:00:24.361Z" }, - { url = "https://files.pythonhosted.org/packages/4d/a0/c95baae08a75bceabb79868d663a0736655e427ab9c81fb848da29edaeac/debugpy-1.8.16-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bee89e948bc236a5c43c4214ac62d28b29388453f5fd328d739035e205365f0b", size = 4222491, upload-time = "2025-08-06T18:00:25.806Z" }, - { url = "https://files.pythonhosted.org/packages/5b/2f/1c8db6ddd8a257c3cd2c46413b267f1d5fa3df910401c899513ce30392d6/debugpy-1.8.16-cp313-cp313-win32.whl", hash = "sha256:cf358066650439847ec5ff3dae1da98b5461ea5da0173d93d5e10f477c94609a", size = 5281126, upload-time = "2025-08-06T18:00:27.207Z" }, - { url = "https://files.pythonhosted.org/packages/d3/ba/c3e154ab307366d6c5a9c1b68de04914e2ce7fa2f50d578311d8cc5074b2/debugpy-1.8.16-cp313-cp313-win_amd64.whl", hash = "sha256:b5aea1083f6f50023e8509399d7dc6535a351cc9f2e8827d1e093175e4d9fa4c", size = 5323094, upload-time = "2025-08-06T18:00:29.03Z" }, - { url = "https://files.pythonhosted.org/packages/52/57/ecc9ae29fa5b2d90107cd1d9bf8ed19aacb74b2264d986ae9d44fe9bdf87/debugpy-1.8.16-py2.py3-none-any.whl", hash = "sha256:19c9521962475b87da6f673514f7fd610328757ec993bf7ec0d8c96f9a325f9e", size = 5287700, upload-time = "2025-08-06T18:00:42.333Z" }, -] - -[[package]] -name = "decorator" -version = "5.2.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/43/fa/6d96a0978d19e17b68d634497769987b16c8f4cd0a7a05048bec693caa6b/decorator-5.2.1.tar.gz", hash = "sha256:65f266143752f734b0a7cc83c46f4618af75b8c5911b00ccb61d0ac9b6da0360", size = 56711, upload-time = "2025-02-24T04:41:34.073Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl", hash = "sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a", size = 9190, upload-time = "2025-02-24T04:41:32.565Z" }, -] - -[[package]] -name = "defusedxml" -version = "0.7.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/0f/d5/c66da9b79e5bdb124974bfe172b4daf3c984ebd9c2a06e2b8a4dc7331c72/defusedxml-0.7.1.tar.gz", hash = "sha256:1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69", size = 75520, upload-time = "2021-03-08T10:59:26.269Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl", hash = "sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61", size = 25604, upload-time = "2021-03-08T10:59:24.45Z" }, -] - -[[package]] -name = "executing" -version = "2.2.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/91/50/a9d80c47ff289c611ff12e63f7c5d13942c65d68125160cefd768c73e6e4/executing-2.2.0.tar.gz", hash = "sha256:5d108c028108fe2551d1a7b2e8b713341e2cb4fc0aa7dcf966fa4327a5226755", size = 978693, upload-time = "2025-01-22T15:41:29.403Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/7b/8f/c4d9bafc34ad7ad5d8dc16dd1347ee0e507a52c3adb6bfa8887e1c6a26ba/executing-2.2.0-py2.py3-none-any.whl", hash = "sha256:11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa", size = 26702, upload-time = "2025-01-22T15:41:25.929Z" }, -] - -[[package]] -name = "fastjsonschema" -version = "2.21.2" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/20/b5/23b216d9d985a956623b6bd12d4086b60f0059b27799f23016af04a74ea1/fastjsonschema-2.21.2.tar.gz", hash = "sha256:b1eb43748041c880796cd077f1a07c3d94e93ae84bba5ed36800a33554ae05de", size = 374130, upload-time = "2025-08-14T18:49:36.666Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl", hash = "sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463", size = 24024, upload-time = "2025-08-14T18:49:34.776Z" }, -] - -[[package]] -name = "flatten-dict" -version = "0.4.2" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "six" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/89/c6/5fe21639369f2ea609c964e20870b5c6c98a134ef12af848a7776ddbabe3/flatten-dict-0.4.2.tar.gz", hash = "sha256:506a96b6e6f805b81ae46a0f9f31290beb5fa79ded9d80dbe1b7fa236ab43076", size = 10362, upload-time = "2021-08-08T09:56:51.455Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/43/f5/ee39c6e92acc742c052f137b47c210cd0a1b72dcd3f98495528bb4d27761/flatten_dict-0.4.2-py2.py3-none-any.whl", hash = "sha256:7e245b20c4c718981212210eec4284a330c9f713e632e98765560e05421e48ad", size = 9656, upload-time = "2021-08-08T09:56:54.313Z" }, -] - -[[package]] -name = "fonttools" -version = "4.59.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/11/7f/29c9c3fe4246f6ad96fee52b88d0dc3a863c7563b0afc959e36d78b965dc/fonttools-4.59.1.tar.gz", hash = "sha256:74995b402ad09822a4c8002438e54940d9f1ecda898d2bb057729d7da983e4cb", size = 3534394, upload-time = "2025-08-14T16:28:14.266Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/ac/fe/6e069cc4cb8881d164a9bd956e9df555bc62d3eb36f6282e43440200009c/fonttools-4.59.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:43ab814bbba5f02a93a152ee61a04182bb5809bd2bc3609f7822e12c53ae2c91", size = 2769172, upload-time = "2025-08-14T16:26:45.729Z" }, - { url = "https://files.pythonhosted.org/packages/b9/98/ec4e03f748fefa0dd72d9d95235aff6fef16601267f4a2340f0e16b9330f/fonttools-4.59.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:4f04c3ffbfa0baafcbc550657cf83657034eb63304d27b05cff1653b448ccff6", size = 2337281, upload-time = "2025-08-14T16:26:47.921Z" }, - { url = "https://files.pythonhosted.org/packages/8b/b1/890360a7e3d04a30ba50b267aca2783f4c1364363797e892e78a4f036076/fonttools-4.59.1-cp312-cp312-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:d601b153e51a5a6221f0d4ec077b6bfc6ac35bfe6c19aeaa233d8990b2b71726", size = 4909215, upload-time = "2025-08-14T16:26:49.682Z" }, - { url = "https://files.pythonhosted.org/packages/8a/ec/2490599550d6c9c97a44c1e36ef4de52d6acf742359eaa385735e30c05c4/fonttools-4.59.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c735e385e30278c54f43a0d056736942023c9043f84ee1021eff9fd616d17693", size = 4951958, upload-time = "2025-08-14T16:26:51.616Z" }, - { url = "https://files.pythonhosted.org/packages/d1/40/bd053f6f7634234a9b9805ff8ae4f32df4f2168bee23cafd1271ba9915a9/fonttools-4.59.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:1017413cdc8555dce7ee23720da490282ab7ec1cf022af90a241f33f9a49afc4", size = 4894738, upload-time = "2025-08-14T16:26:53.836Z" }, - { url = "https://files.pythonhosted.org/packages/ac/a1/3cd12a010d288325a7cfcf298a84825f0f9c29b01dee1baba64edfe89257/fonttools-4.59.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:5c6d8d773470a5107052874341ed3c487c16ecd179976d81afed89dea5cd7406", size = 5045983, upload-time = "2025-08-14T16:26:56.153Z" }, - { url = "https://files.pythonhosted.org/packages/a2/af/8a2c3f6619cc43cf87951405337cc8460d08a4e717bb05eaa94b335d11dc/fonttools-4.59.1-cp312-cp312-win32.whl", hash = "sha256:2a2d0d33307f6ad3a2086a95dd607c202ea8852fa9fb52af9b48811154d1428a", size = 2203407, upload-time = "2025-08-14T16:26:58.165Z" }, - { url = "https://files.pythonhosted.org/packages/8e/f2/a19b874ddbd3ebcf11d7e25188ef9ac3f68b9219c62263acb34aca8cde05/fonttools-4.59.1-cp312-cp312-win_amd64.whl", hash = "sha256:0b9e4fa7eaf046ed6ac470f6033d52c052481ff7a6e0a92373d14f556f298dc0", size = 2251561, upload-time = "2025-08-14T16:27:00.646Z" }, - { url = "https://files.pythonhosted.org/packages/19/5e/94a4d7f36c36e82f6a81e0064d148542e0ad3e6cf51fc5461ca128f3658d/fonttools-4.59.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:89d9957b54246c6251345297dddf77a84d2c19df96af30d2de24093bbdf0528b", size = 2760192, upload-time = "2025-08-14T16:27:03.024Z" }, - { url = "https://files.pythonhosted.org/packages/ee/a5/f50712fc33ef9d06953c660cefaf8c8fe4b8bc74fa21f44ee5e4f9739439/fonttools-4.59.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:8156b11c0d5405810d216f53907bd0f8b982aa5f1e7e3127ab3be1a4062154ff", size = 2332694, upload-time = "2025-08-14T16:27:04.883Z" }, - { url = "https://files.pythonhosted.org/packages/e9/a2/5a9fc21c354bf8613215ce233ab0d933bd17d5ff4c29693636551adbc7b3/fonttools-4.59.1-cp313-cp313-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:8387876a8011caec52d327d5e5bca705d9399ec4b17afb8b431ec50d47c17d23", size = 4889254, upload-time = "2025-08-14T16:27:07.02Z" }, - { url = "https://files.pythonhosted.org/packages/2d/e5/54a6dc811eba018d022ca2e8bd6f2969291f9586ccf9a22a05fc55f91250/fonttools-4.59.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:fb13823a74b3a9204a8ed76d3d6d5ec12e64cc5bc44914eb9ff1cdac04facd43", size = 4949109, upload-time = "2025-08-14T16:27:09.3Z" }, - { url = "https://files.pythonhosted.org/packages/db/15/b05c72a248a95bea0fd05fbd95acdf0742945942143fcf961343b7a3663a/fonttools-4.59.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:e1ca10da138c300f768bb68e40e5b20b6ecfbd95f91aac4cc15010b6b9d65455", size = 4888428, upload-time = "2025-08-14T16:27:11.514Z" }, - { url = "https://files.pythonhosted.org/packages/63/71/c7d6840f858d695adc0c4371ec45e3fb1c8e060b276ba944e2800495aca4/fonttools-4.59.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:2beb5bfc4887a3130f8625349605a3a45fe345655ce6031d1bac11017454b943", size = 5032668, upload-time = "2025-08-14T16:27:13.872Z" }, - { url = "https://files.pythonhosted.org/packages/90/54/57be4aca6f1312e2bc4d811200dd822325794e05bdb26eeff0976edca651/fonttools-4.59.1-cp313-cp313-win32.whl", hash = "sha256:419f16d750d78e6d704bfe97b48bba2f73b15c9418f817d0cb8a9ca87a5b94bf", size = 2201832, upload-time = "2025-08-14T16:27:16.126Z" }, - { url = "https://files.pythonhosted.org/packages/fc/1f/1899a6175a5f900ed8730a0d64f53ca1b596ed7609bfda033cf659114258/fonttools-4.59.1-cp313-cp313-win_amd64.whl", hash = "sha256:c536f8a852e8d3fa71dde1ec03892aee50be59f7154b533f0bf3c1174cfd5126", size = 2250673, upload-time = "2025-08-14T16:27:18.033Z" }, - { url = "https://files.pythonhosted.org/packages/15/07/f6ba82c22f118d9985c37fea65d8d715ca71300d78b6c6e90874dc59f11d/fonttools-4.59.1-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:d5c3bfdc9663f3d4b565f9cb3b8c1efb3e178186435b45105bde7328cfddd7fe", size = 2758606, upload-time = "2025-08-14T16:27:20.064Z" }, - { url = "https://files.pythonhosted.org/packages/3a/81/84aa3d0ce27b0112c28b67b637ff7a47cf401cf5fbfee6476e4bc9777580/fonttools-4.59.1-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:ea03f1da0d722fe3c2278a05957e6550175571a4894fbf9d178ceef4a3783d2b", size = 2330187, upload-time = "2025-08-14T16:27:22.42Z" }, - { url = "https://files.pythonhosted.org/packages/17/41/b3ba43f78afb321e2e50232c87304c8d0f5ab39b64389b8286cc39cdb824/fonttools-4.59.1-cp314-cp314-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:57a3708ca6bfccb790f585fa6d8f29432ec329618a09ff94c16bcb3c55994643", size = 4832020, upload-time = "2025-08-14T16:27:24.214Z" }, - { url = "https://files.pythonhosted.org/packages/67/b1/3af871c7fb325a68938e7ce544ca48bfd2c6bb7b357f3c8252933b29100a/fonttools-4.59.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:729367c91eb1ee84e61a733acc485065a00590618ca31c438e7dd4d600c01486", size = 4930687, upload-time = "2025-08-14T16:27:26.484Z" }, - { url = "https://files.pythonhosted.org/packages/c5/4f/299fc44646b30d9ef03ffaa78b109c7bd32121f0d8f10009ee73ac4514bc/fonttools-4.59.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:8f8ef66ac6db450193ed150e10b3b45dde7aded10c5d279968bc63368027f62b", size = 4875794, upload-time = "2025-08-14T16:27:28.887Z" }, - { url = "https://files.pythonhosted.org/packages/90/cf/a0a3d763ab58f5f81ceff104ddb662fd9da94248694862b9c6cbd509fdd5/fonttools-4.59.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:075f745d539a998cd92cb84c339a82e53e49114ec62aaea8307c80d3ad3aef3a", size = 4985780, upload-time = "2025-08-14T16:27:30.858Z" }, - { url = "https://files.pythonhosted.org/packages/72/c5/ba76511aaae143d89c29cd32ce30bafb61c477e8759a1590b8483f8065f8/fonttools-4.59.1-cp314-cp314-win32.whl", hash = "sha256:c2b0597522d4c5bb18aa5cf258746a2d4a90f25878cbe865e4d35526abd1b9fc", size = 2205610, upload-time = "2025-08-14T16:27:32.578Z" }, - { url = "https://files.pythonhosted.org/packages/a9/65/b250e69d6caf35bc65cddbf608be0662d741c248f2e7503ab01081fc267e/fonttools-4.59.1-cp314-cp314-win_amd64.whl", hash = "sha256:e9ad4ce044e3236f0814c906ccce8647046cc557539661e35211faadf76f283b", size = 2255376, upload-time = "2025-08-14T16:27:34.653Z" }, - { url = "https://files.pythonhosted.org/packages/11/f3/0bc63a23ac0f8175e23d82f85d6ee693fbd849de7ad739f0a3622182ad29/fonttools-4.59.1-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:652159e8214eb4856e8387ebcd6b6bd336ee258cbeb639c8be52005b122b9609", size = 2826546, upload-time = "2025-08-14T16:27:36.783Z" }, - { url = "https://files.pythonhosted.org/packages/e9/46/a3968205590e068fdf60e926be329a207782576cb584d3b7dcd2d2844957/fonttools-4.59.1-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:43d177cd0e847ea026fedd9f099dc917da136ed8792d142298a252836390c478", size = 2359771, upload-time = "2025-08-14T16:27:39.678Z" }, - { url = "https://files.pythonhosted.org/packages/b8/ff/d14b4c283879e8cb57862d9624a34fe6522b6fcdd46ccbfc58900958794a/fonttools-4.59.1-cp314-cp314t-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:e54437651e1440ee53a95e6ceb6ee440b67a3d348c76f45f4f48de1a5ecab019", size = 4831575, upload-time = "2025-08-14T16:27:41.885Z" }, - { url = "https://files.pythonhosted.org/packages/9c/04/a277d9a584a49d98ca12d3b2c6663bdf333ae97aaa83bd0cdabf7c5a6c84/fonttools-4.59.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6065fdec8ff44c32a483fd44abe5bcdb40dd5e2571a5034b555348f2b3a52cea", size = 5069962, upload-time = "2025-08-14T16:27:44.284Z" }, - { url = "https://files.pythonhosted.org/packages/16/6f/3d2ae69d96c4cdee6dfe7598ca5519a1514487700ca3d7c49c5a1ad65308/fonttools-4.59.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:42052b56d176f8b315fbc09259439c013c0cb2109df72447148aeda677599612", size = 4942926, upload-time = "2025-08-14T16:27:46.523Z" }, - { url = "https://files.pythonhosted.org/packages/0c/d3/c17379e0048d03ce26b38e4ab0e9a98280395b00529e093fe2d663ac0658/fonttools-4.59.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:bcd52eaa5c4c593ae9f447c1d13e7e4a00ca21d755645efa660b6999425b3c88", size = 4958678, upload-time = "2025-08-14T16:27:48.555Z" }, - { url = "https://files.pythonhosted.org/packages/8c/3f/c5543a1540abdfb4d375e3ebeb84de365ab9b153ec14cb7db05f537dd1e7/fonttools-4.59.1-cp314-cp314t-win32.whl", hash = "sha256:02e4fdf27c550dded10fe038a5981c29f81cb9bc649ff2eaa48e80dab8998f97", size = 2266706, upload-time = "2025-08-14T16:27:50.556Z" }, - { url = "https://files.pythonhosted.org/packages/3e/99/85bff6e674226bc8402f983e365f07e76d990e7220ba72bcc738fef52391/fonttools-4.59.1-cp314-cp314t-win_amd64.whl", hash = "sha256:412a5fd6345872a7c249dac5bcce380393f40c1c316ac07f447bc17d51900922", size = 2329994, upload-time = "2025-08-14T16:27:52.36Z" }, - { url = "https://files.pythonhosted.org/packages/0f/64/9d606e66d498917cd7a2ff24f558010d42d6fd4576d9dd57f0bd98333f5a/fonttools-4.59.1-py3-none-any.whl", hash = "sha256:647db657073672a8330608970a984d51573557f328030566521bc03415535042", size = 1130094, upload-time = "2025-08-14T16:28:12.048Z" }, -] - -[[package]] -name = "fqdn" -version = "1.5.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/30/3e/a80a8c077fd798951169626cde3e239adeba7dab75deb3555716415bd9b0/fqdn-1.5.1.tar.gz", hash = "sha256:105ed3677e767fb5ca086a0c1f4bb66ebc3c100be518f0e0d755d9eae164d89f", size = 6015, upload-time = "2021-03-11T07:16:29.08Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl", hash = "sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014", size = 9121, upload-time = "2021-03-11T07:16:28.351Z" }, -] - -[[package]] -name = "frozendict" -version = "2.4.6" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/bb/59/19eb300ba28e7547538bdf603f1c6c34793240a90e1a7b61b65d8517e35e/frozendict-2.4.6.tar.gz", hash = "sha256:df7cd16470fbd26fc4969a208efadc46319334eb97def1ddf48919b351192b8e", size = 316416, upload-time = "2024-10-13T12:15:32.449Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/04/13/d9839089b900fa7b479cce495d62110cddc4bd5630a04d8469916c0e79c5/frozendict-2.4.6-py311-none-any.whl", hash = "sha256:d065db6a44db2e2375c23eac816f1a022feb2fa98cbb50df44a9e83700accbea", size = 16148, upload-time = "2024-10-13T12:15:26.839Z" }, - { url = "https://files.pythonhosted.org/packages/ba/d0/d482c39cee2ab2978a892558cf130681d4574ea208e162da8958b31e9250/frozendict-2.4.6-py312-none-any.whl", hash = "sha256:49344abe90fb75f0f9fdefe6d4ef6d4894e640fadab71f11009d52ad97f370b9", size = 16146, upload-time = "2024-10-13T12:15:28.16Z" }, - { url = "https://files.pythonhosted.org/packages/a5/8e/b6bf6a0de482d7d7d7a2aaac8fdc4a4d0bb24a809f5ddd422aa7060eb3d2/frozendict-2.4.6-py313-none-any.whl", hash = "sha256:7134a2bb95d4a16556bb5f2b9736dceb6ea848fa5b6f3f6c2d6dba93b44b4757", size = 16146, upload-time = "2024-10-13T12:15:29.495Z" }, -] - -[[package]] -name = "ghp-import" -version = "2.1.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "python-dateutil" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/d9/29/d40217cbe2f6b1359e00c6c307bb3fc876ba74068cbab3dde77f03ca0dc4/ghp-import-2.1.0.tar.gz", hash = "sha256:9c535c4c61193c2df8871222567d7fd7e5014d835f97dc7b7439069e2413d343", size = 10943, upload-time = "2022-05-02T15:47:16.11Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/f7/ec/67fbef5d497f86283db54c22eec6f6140243aae73265799baaaa19cd17fb/ghp_import-2.1.0-py3-none-any.whl", hash = "sha256:8337dd7b50877f163d4c0289bc1f1c7f127550241988d568c1db512c4324a619", size = 11034, upload-time = "2022-05-02T15:47:14.552Z" }, -] - -[[package]] -name = "griffe" -version = "1.12.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "colorama" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/81/ca/29f36e00c74844ae50d139cf5a8b1751887b2f4d5023af65d460268ad7aa/griffe-1.12.1.tar.gz", hash = "sha256:29f5a6114c0aeda7d9c86a570f736883f8a2c5b38b57323d56b3d1c000565567", size = 411863, upload-time = "2025-08-14T21:08:15.38Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/13/f2/4fab6c3e5bcaf38a44cc8a974d2752eaad4c129e45d6533d926a30edd133/griffe-1.12.1-py3-none-any.whl", hash = "sha256:2d7c12334de00089c31905424a00abcfd931b45b8b516967f224133903d302cc", size = 138940, upload-time = "2025-08-14T21:08:13.382Z" }, -] - -[[package]] -name = "h11" -version = "0.16.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/01/ee/02a2c011bdab74c6fb3c75474d40b3052059d95df7e73351460c8588d963/h11-0.16.0.tar.gz", hash = "sha256:4e35b956cf45792e4caa5885e69fba00bdbc6ffafbfa020300e549b208ee5ff1", size = 101250, upload-time = "2025-04-24T03:35:25.427Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl", hash = "sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86", size = 37515, upload-time = "2025-04-24T03:35:24.344Z" }, -] - -[[package]] -name = "hjson" -version = "3.1.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/82/e5/0b56d723a76ca67abadbf7fb71609fb0ea7e6926e94fcca6c65a85b36a0e/hjson-3.1.0.tar.gz", hash = "sha256:55af475a27cf83a7969c808399d7bccdec8fb836a07ddbd574587593b9cdcf75", size = 40541, upload-time = "2022-08-13T02:53:01.919Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/1f/7f/13cd798d180af4bf4c0ceddeefba2b864a63c71645abc0308b768d67bb81/hjson-3.1.0-py3-none-any.whl", hash = "sha256:65713cdcf13214fb554eb8b4ef803419733f4f5e551047c9b711098ab7186b89", size = 54018, upload-time = "2022-08-13T02:52:59.899Z" }, -] - -[[package]] -name = "htmlmin2" -version = "0.1.13" -source = { registry = "https://pypi.org/simple" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/be/31/a76f4bfa885f93b8167cb4c85cf32b54d1f64384d0b897d45bc6d19b7b45/htmlmin2-0.1.13-py3-none-any.whl", hash = "sha256:75609f2a42e64f7ce57dbff28a39890363bde9e7e5885db633317efbdf8c79a2", size = 34486, upload-time = "2023-03-14T21:28:30.388Z" }, -] - -[[package]] -name = "httpcore" -version = "1.0.9" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "certifi" }, - { name = "h11" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/06/94/82699a10bca87a5556c9c59b5963f2d039dbd239f25bc2a63907a05a14cb/httpcore-1.0.9.tar.gz", hash = "sha256:6e34463af53fd2ab5d807f399a9b45ea31c3dfa2276f15a2c3f00afff6e176e8", size = 85484, upload-time = "2025-04-24T22:06:22.219Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl", hash = "sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55", size = 78784, upload-time = "2025-04-24T22:06:20.566Z" }, -] - -[[package]] -name = "httpx" -version = "0.28.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "anyio" }, - { name = "certifi" }, - { name = "httpcore" }, - { name = "idna" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/b1/df/48c586a5fe32a0f01324ee087459e112ebb7224f646c0b5023f5e79e9956/httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc", size = 141406, upload-time = "2024-12-06T15:37:23.222Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad", size = 73517, upload-time = "2024-12-06T15:37:21.509Z" }, -] - -[[package]] -name = "idna" -version = "3.10" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/f1/70/7703c29685631f5a7590aa73f1f1d3fa9a380e654b86af429e0934a32f7d/idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9", size = 190490, upload-time = "2024-09-15T18:07:39.745Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl", hash = "sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3", size = 70442, upload-time = "2024-09-15T18:07:37.964Z" }, -] - -[[package]] -name = "iniconfig" -version = "2.1.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/f2/97/ebf4da567aa6827c909642694d71c9fcf53e5b504f2d96afea02718862f3/iniconfig-2.1.0.tar.gz", hash = "sha256:3abbd2e30b36733fee78f9c7f7308f2d0050e88f0087fd25c2645f63c773e1c7", size = 4793, upload-time = "2025-03-19T20:09:59.721Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl", hash = "sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760", size = 6050, upload-time = "2025-03-19T20:10:01.071Z" }, -] - -[[package]] -name = "ipykernel" -version = "6.30.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "appnope", marker = "sys_platform == 'darwin'" }, - { name = "comm" }, - { name = "debugpy" }, - { name = "ipython" }, - { name = "jupyter-client" }, - { name = "jupyter-core" }, - { name = "matplotlib-inline" }, - { name = "nest-asyncio" }, - { name = "packaging" }, - { name = "psutil" }, - { name = "pyzmq" }, - { name = "tornado" }, - { name = "traitlets" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/bb/76/11082e338e0daadc89c8ff866185de11daf67d181901038f9e139d109761/ipykernel-6.30.1.tar.gz", hash = "sha256:6abb270161896402e76b91394fcdce5d1be5d45f456671e5080572f8505be39b", size = 166260, upload-time = "2025-08-04T15:47:35.018Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/fc/c7/b445faca8deb954fe536abebff4ece5b097b923de482b26e78448c89d1dd/ipykernel-6.30.1-py3-none-any.whl", hash = "sha256:aa6b9fb93dca949069d8b85b6c79b2518e32ac583ae9c7d37c51d119e18b3fb4", size = 117484, upload-time = "2025-08-04T15:47:32.622Z" }, -] - -[[package]] -name = "ipython" -version = "9.4.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "colorama", marker = "sys_platform == 'win32'" }, - { name = "decorator" }, - { name = "ipython-pygments-lexers" }, - { name = "jedi" }, - { name = "matplotlib-inline" }, - { name = "pexpect", marker = "sys_platform != 'emscripten' and sys_platform != 'win32'" }, - { name = "prompt-toolkit" }, - { name = "pygments" }, - { name = "stack-data" }, - { name = "traitlets" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/54/80/406f9e3bde1c1fd9bf5a0be9d090f8ae623e401b7670d8f6fdf2ab679891/ipython-9.4.0.tar.gz", hash = "sha256:c033c6d4e7914c3d9768aabe76bbe87ba1dc66a92a05db6bfa1125d81f2ee270", size = 4385338, upload-time = "2025-07-01T11:11:30.606Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/63/f8/0031ee2b906a15a33d6bfc12dd09c3dfa966b3cb5b284ecfb7549e6ac3c4/ipython-9.4.0-py3-none-any.whl", hash = "sha256:25850f025a446d9b359e8d296ba175a36aedd32e83ca9b5060430fe16801f066", size = 611021, upload-time = "2025-07-01T11:11:27.85Z" }, -] - -[[package]] -name = "ipython-pygments-lexers" -version = "1.1.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "pygments" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/ef/4c/5dd1d8af08107f88c7f741ead7a40854b8ac24ddf9ae850afbcf698aa552/ipython_pygments_lexers-1.1.1.tar.gz", hash = "sha256:09c0138009e56b6854f9535736f4171d855c8c08a563a0dcd8022f78355c7e81", size = 8393, upload-time = "2025-01-17T11:24:34.505Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl", hash = "sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c", size = 8074, upload-time = "2025-01-17T11:24:33.271Z" }, -] - -[[package]] -name = "isoduration" -version = "20.11.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "arrow" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/7c/1a/3c8edc664e06e6bd06cce40c6b22da5f1429aa4224d0c590f3be21c91ead/isoduration-20.11.0.tar.gz", hash = "sha256:ac2f9015137935279eac671f94f89eb00584f940f5dc49462a0c4ee692ba1bd9", size = 11649, upload-time = "2020-11-01T11:00:00.312Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl", hash = "sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042", size = 11321, upload-time = "2020-11-01T10:59:58.02Z" }, -] - -[[package]] -name = "jedi" -version = "0.19.2" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "parso" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/72/3a/79a912fbd4d8dd6fbb02bf69afd3bb72cf0c729bb3063c6f4498603db17a/jedi-0.19.2.tar.gz", hash = "sha256:4770dc3de41bde3966b02eb84fbcf557fb33cce26ad23da12c742fb50ecb11f0", size = 1231287, upload-time = "2024-11-11T01:41:42.873Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/c0/5a/9cac0c82afec3d09ccd97c8b6502d48f165f9124db81b4bcb90b4af974ee/jedi-0.19.2-py2.py3-none-any.whl", hash = "sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9", size = 1572278, upload-time = "2024-11-11T01:41:40.175Z" }, -] - -[[package]] -name = "jinja2" -version = "3.1.6" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "markupsafe" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/df/bf/f7da0350254c0ed7c72f3e33cef02e048281fec7ecec5f032d4aac52226b/jinja2-3.1.6.tar.gz", hash = "sha256:0137fb05990d35f1275a587e9aee6d56da821fc83491a0fb838183be43f66d6d", size = 245115, upload-time = "2025-03-05T20:05:02.478Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl", hash = "sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67", size = 134899, upload-time = "2025-03-05T20:05:00.369Z" }, -] - -[[package]] -name = "jsmin" -version = "3.0.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/5e/73/e01e4c5e11ad0494f4407a3f623ad4d87714909f50b17a06ed121034ff6e/jsmin-3.0.1.tar.gz", hash = "sha256:c0959a121ef94542e807a674142606f7e90214a2b3d1eb17300244bbb5cc2bfc", size = 13925, upload-time = "2022-01-16T20:35:59.13Z" } - -[[package]] -name = "json5" -version = "0.12.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/12/ae/929aee9619e9eba9015207a9d2c1c54db18311da7eb4dcf6d41ad6f0eb67/json5-0.12.1.tar.gz", hash = "sha256:b2743e77b3242f8d03c143dd975a6ec7c52e2f2afe76ed934e53503dd4ad4990", size = 52191, upload-time = "2025-08-12T19:47:42.583Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/85/e2/05328bd2621be49a6fed9e3030b1e51a2d04537d3f816d211b9cc53c5262/json5-0.12.1-py3-none-any.whl", hash = "sha256:d9c9b3bc34a5f54d43c35e11ef7cb87d8bdd098c6ace87117a7b7e83e705c1d5", size = 36119, upload-time = "2025-08-12T19:47:41.131Z" }, -] - -[[package]] -name = "jsonpointer" -version = "3.0.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/6a/0a/eebeb1fa92507ea94016a2a790b93c2ae41a7e18778f85471dc54475ed25/jsonpointer-3.0.0.tar.gz", hash = "sha256:2b2d729f2091522d61c3b31f82e11870f60b68f43fbc705cb76bf4b832af59ef", size = 9114, upload-time = "2024-06-10T19:24:42.462Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl", hash = "sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942", size = 7595, upload-time = "2024-06-10T19:24:40.698Z" }, -] - -[[package]] -name = "jsonschema" -version = "4.25.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "attrs" }, - { name = "jsonschema-specifications" }, - { name = "referencing" }, - { name = "rpds-py" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/74/69/f7185de793a29082a9f3c7728268ffb31cb5095131a9c139a74078e27336/jsonschema-4.25.1.tar.gz", hash = "sha256:e4a9655ce0da0c0b67a085847e00a3a51449e1157f4f75e9fb5aa545e122eb85", size = 357342, upload-time = "2025-08-18T17:03:50.038Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/bf/9c/8c95d856233c1f82500c2450b8c68576b4cf1c871db3afac5c34ff84e6fd/jsonschema-4.25.1-py3-none-any.whl", hash = "sha256:3fba0169e345c7175110351d456342c364814cfcf3b964ba4587f22915230a63", size = 90040, upload-time = "2025-08-18T17:03:48.373Z" }, -] - -[package.optional-dependencies] -format-nongpl = [ - { name = "fqdn" }, - { name = "idna" }, - { name = "isoduration" }, - { name = "jsonpointer" }, - { name = "rfc3339-validator" }, - { name = "rfc3986-validator" }, - { name = "rfc3987-syntax" }, - { name = "uri-template" }, - { name = "webcolors" }, -] - -[[package]] -name = "jsonschema-specifications" -version = "2025.4.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "referencing" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/bf/ce/46fbd9c8119cfc3581ee5643ea49464d168028cfb5caff5fc0596d0cf914/jsonschema_specifications-2025.4.1.tar.gz", hash = "sha256:630159c9f4dbea161a6a2205c3011cc4f18ff381b189fff48bb39b9bf26ae608", size = 15513, upload-time = "2025-04-23T12:34:07.418Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/01/0e/b27cdbaccf30b890c40ed1da9fd4a3593a5cf94dae54fb34f8a4b74fcd3f/jsonschema_specifications-2025.4.1-py3-none-any.whl", hash = "sha256:4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af", size = 18437, upload-time = "2025-04-23T12:34:05.422Z" }, -] - -[[package]] -name = "jupyter-client" -version = "8.6.3" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "jupyter-core" }, - { name = "python-dateutil" }, - { name = "pyzmq" }, - { name = "tornado" }, - { name = "traitlets" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/71/22/bf9f12fdaeae18019a468b68952a60fe6dbab5d67cd2a103cac7659b41ca/jupyter_client-8.6.3.tar.gz", hash = "sha256:35b3a0947c4a6e9d589eb97d7d4cd5e90f910ee73101611f01283732bd6d9419", size = 342019, upload-time = "2024-09-17T10:44:17.613Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/11/85/b0394e0b6fcccd2c1eeefc230978a6f8cb0c5df1e4cd3e7625735a0d7d1e/jupyter_client-8.6.3-py3-none-any.whl", hash = "sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f", size = 106105, upload-time = "2024-09-17T10:44:15.218Z" }, -] - -[[package]] -name = "jupyter-core" -version = "5.8.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "platformdirs" }, - { name = "pywin32", marker = "platform_python_implementation != 'PyPy' and sys_platform == 'win32'" }, - { name = "traitlets" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/99/1b/72906d554acfeb588332eaaa6f61577705e9ec752ddb486f302dafa292d9/jupyter_core-5.8.1.tar.gz", hash = "sha256:0a5f9706f70e64786b75acba995988915ebd4601c8a52e534a40b51c95f59941", size = 88923, upload-time = "2025-05-27T07:38:16.655Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/2f/57/6bffd4b20b88da3800c5d691e0337761576ee688eb01299eae865689d2df/jupyter_core-5.8.1-py3-none-any.whl", hash = "sha256:c28d268fc90fb53f1338ded2eb410704c5449a358406e8a948b75706e24863d0", size = 28880, upload-time = "2025-05-27T07:38:15.137Z" }, -] - -[[package]] -name = "jupyter-events" -version = "0.12.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "jsonschema", extra = ["format-nongpl"] }, - { name = "packaging" }, - { name = "python-json-logger" }, - { name = "pyyaml" }, - { name = "referencing" }, - { name = "rfc3339-validator" }, - { name = "rfc3986-validator" }, - { name = "traitlets" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/9d/c3/306d090461e4cf3cd91eceaff84bede12a8e52cd821c2d20c9a4fd728385/jupyter_events-0.12.0.tar.gz", hash = "sha256:fc3fce98865f6784c9cd0a56a20644fc6098f21c8c33834a8d9fe383c17e554b", size = 62196, upload-time = "2025-02-03T17:23:41.485Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/e2/48/577993f1f99c552f18a0428731a755e06171f9902fa118c379eb7c04ea22/jupyter_events-0.12.0-py3-none-any.whl", hash = "sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb", size = 19430, upload-time = "2025-02-03T17:23:38.643Z" }, -] - -[[package]] -name = "jupyter-lsp" -version = "2.2.6" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "jupyter-server" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/28/3d/40bdb41b665d3302390ed1356cebd5917c10769d1f190ee4ca595900840e/jupyter_lsp-2.2.6.tar.gz", hash = "sha256:0566bd9bb04fd9e6774a937ed01522b555ba78be37bebef787c8ab22de4c0361", size = 48948, upload-time = "2025-07-18T21:35:19.885Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/47/7c/12f68daf85b469b4896d5e4a629baa33c806d61de75ac5b39d8ef27ec4a2/jupyter_lsp-2.2.6-py3-none-any.whl", hash = "sha256:283783752bf0b459ee7fa88effa72104d87dd343b82d5c06cf113ef755b15b6d", size = 69371, upload-time = "2025-07-18T21:35:16.585Z" }, -] - -[[package]] -name = "jupyter-server" -version = "2.17.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "anyio" }, - { name = "argon2-cffi" }, - { name = "jinja2" }, - { name = "jupyter-client" }, - { name = "jupyter-core" }, - { name = "jupyter-events" }, - { name = "jupyter-server-terminals" }, - { name = "nbconvert" }, - { name = "nbformat" }, - { name = "packaging" }, - { name = "prometheus-client" }, - { name = "pywinpty", marker = "os_name == 'nt'" }, - { name = "pyzmq" }, - { name = "send2trash" }, - { name = "terminado" }, - { name = "tornado" }, - { name = "traitlets" }, - { name = "websocket-client" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/5b/ac/e040ec363d7b6b1f11304cc9f209dac4517ece5d5e01821366b924a64a50/jupyter_server-2.17.0.tar.gz", hash = "sha256:c38ea898566964c888b4772ae1ed58eca84592e88251d2cfc4d171f81f7e99d5", size = 731949, upload-time = "2025-08-21T14:42:54.042Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/92/80/a24767e6ca280f5a49525d987bf3e4d7552bf67c8be07e8ccf20271f8568/jupyter_server-2.17.0-py3-none-any.whl", hash = "sha256:e8cb9c7db4251f51ed307e329b81b72ccf2056ff82d50524debde1ee1870e13f", size = 388221, upload-time = "2025-08-21T14:42:52.034Z" }, -] - -[[package]] -name = "jupyter-server-terminals" -version = "0.5.3" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "pywinpty", marker = "os_name == 'nt'" }, - { name = "terminado" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/fc/d5/562469734f476159e99a55426d697cbf8e7eb5efe89fb0e0b4f83a3d3459/jupyter_server_terminals-0.5.3.tar.gz", hash = "sha256:5ae0295167220e9ace0edcfdb212afd2b01ee8d179fe6f23c899590e9b8a5269", size = 31430, upload-time = "2024-03-12T14:37:03.049Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl", hash = "sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa", size = 13656, upload-time = "2024-03-12T14:37:00.708Z" }, -] - -[[package]] -name = "jupyterlab" -version = "4.4.6" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "async-lru" }, - { name = "httpx" }, - { name = "ipykernel" }, - { name = "jinja2" }, - { name = "jupyter-core" }, - { name = "jupyter-lsp" }, - { name = "jupyter-server" }, - { name = "jupyterlab-server" }, - { name = "notebook-shim" }, - { name = "packaging" }, - { name = "setuptools" }, - { name = "tornado" }, - { name = "traitlets" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/1e/5c/14f0852233d60d30bf0f22a817d6c20ac555d73526cc915274f97c07a2b9/jupyterlab-4.4.6.tar.gz", hash = "sha256:e0b720ff5392846bdbc01745f32f29f4d001c071a4bff94d8b516ba89b5a4157", size = 23040936, upload-time = "2025-08-15T11:44:15.915Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/53/38/6182d63f39428821e705e86fba61704fc69769a24ca5a9578c2c04986c9a/jupyterlab-4.4.6-py3-none-any.whl", hash = "sha256:e877e930f46dde2e3ee9da36a935c6cd4fdb15aa7440519d0fde696f9fadb833", size = 12268564, upload-time = "2025-08-15T11:44:11.42Z" }, -] - -[[package]] -name = "jupyterlab-pygments" -version = "0.3.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/90/51/9187be60d989df97f5f0aba133fa54e7300f17616e065d1ada7d7646b6d6/jupyterlab_pygments-0.3.0.tar.gz", hash = "sha256:721aca4d9029252b11cfa9d185e5b5af4d54772bb8072f9b7036f4170054d35d", size = 512900, upload-time = "2023-11-23T09:26:37.44Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl", hash = "sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780", size = 15884, upload-time = "2023-11-23T09:26:34.325Z" }, -] - -[[package]] -name = "jupyterlab-server" -version = "2.27.3" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "babel" }, - { name = "jinja2" }, - { name = "json5" }, - { name = "jsonschema" }, - { name = "jupyter-server" }, - { name = "packaging" }, - { name = "requests" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/0a/c9/a883ce65eb27905ce77ace410d83587c82ea64dc85a48d1f7ed52bcfa68d/jupyterlab_server-2.27.3.tar.gz", hash = "sha256:eb36caca59e74471988f0ae25c77945610b887f777255aa21f8065def9e51ed4", size = 76173, upload-time = "2024-07-16T17:02:04.149Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl", hash = "sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4", size = 59700, upload-time = "2024-07-16T17:02:01.115Z" }, -] - -[[package]] -name = "kiwisolver" -version = "1.4.9" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/5c/3c/85844f1b0feb11ee581ac23fe5fce65cd049a200c1446708cc1b7f922875/kiwisolver-1.4.9.tar.gz", hash = "sha256:c3b22c26c6fd6811b0ae8363b95ca8ce4ea3c202d3d0975b2914310ceb1bcc4d", size = 97564, upload-time = "2025-08-10T21:27:49.279Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/86/c9/13573a747838aeb1c76e3267620daa054f4152444d1f3d1a2324b78255b5/kiwisolver-1.4.9-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:ac5a486ac389dddcc5bef4f365b6ae3ffff2c433324fb38dd35e3fab7c957999", size = 123686, upload-time = "2025-08-10T21:26:10.034Z" }, - { url = "https://files.pythonhosted.org/packages/51/ea/2ecf727927f103ffd1739271ca19c424d0e65ea473fbaeea1c014aea93f6/kiwisolver-1.4.9-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:f2ba92255faa7309d06fe44c3a4a97efe1c8d640c2a79a5ef728b685762a6fd2", size = 66460, upload-time = "2025-08-10T21:26:11.083Z" }, - { url = "https://files.pythonhosted.org/packages/5b/5a/51f5464373ce2aeb5194508298a508b6f21d3867f499556263c64c621914/kiwisolver-1.4.9-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4a2899935e724dd1074cb568ce7ac0dce28b2cd6ab539c8e001a8578eb106d14", size = 64952, upload-time = "2025-08-10T21:26:12.058Z" }, - { url = "https://files.pythonhosted.org/packages/70/90/6d240beb0f24b74371762873e9b7f499f1e02166a2d9c5801f4dbf8fa12e/kiwisolver-1.4.9-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:f6008a4919fdbc0b0097089f67a1eb55d950ed7e90ce2cc3e640abadd2757a04", size = 1474756, upload-time = "2025-08-10T21:26:13.096Z" }, - { url = "https://files.pythonhosted.org/packages/12/42/f36816eaf465220f683fb711efdd1bbf7a7005a2473d0e4ed421389bd26c/kiwisolver-1.4.9-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:67bb8b474b4181770f926f7b7d2f8c0248cbcb78b660fdd41a47054b28d2a752", size = 1276404, upload-time = "2025-08-10T21:26:14.457Z" }, - { url = "https://files.pythonhosted.org/packages/2e/64/bc2de94800adc830c476dce44e9b40fd0809cddeef1fde9fcf0f73da301f/kiwisolver-1.4.9-cp312-cp312-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:2327a4a30d3ee07d2fbe2e7933e8a37c591663b96ce42a00bc67461a87d7df77", size = 1294410, upload-time = "2025-08-10T21:26:15.73Z" }, - { url = "https://files.pythonhosted.org/packages/5f/42/2dc82330a70aa8e55b6d395b11018045e58d0bb00834502bf11509f79091/kiwisolver-1.4.9-cp312-cp312-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:7a08b491ec91b1d5053ac177afe5290adacf1f0f6307d771ccac5de30592d198", size = 1343631, upload-time = "2025-08-10T21:26:17.045Z" }, - { url = "https://files.pythonhosted.org/packages/22/fd/f4c67a6ed1aab149ec5a8a401c323cee7a1cbe364381bb6c9c0d564e0e20/kiwisolver-1.4.9-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:d8fc5c867c22b828001b6a38d2eaeb88160bf5783c6cb4a5e440efc981ce286d", size = 2224963, upload-time = "2025-08-10T21:26:18.737Z" }, - { url = "https://files.pythonhosted.org/packages/45/aa/76720bd4cb3713314677d9ec94dcc21ced3f1baf4830adde5bb9b2430a5f/kiwisolver-1.4.9-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:3b3115b2581ea35bb6d1f24a4c90af37e5d9b49dcff267eeed14c3893c5b86ab", size = 2321295, upload-time = "2025-08-10T21:26:20.11Z" }, - { url = "https://files.pythonhosted.org/packages/80/19/d3ec0d9ab711242f56ae0dc2fc5d70e298bb4a1f9dfab44c027668c673a1/kiwisolver-1.4.9-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:858e4c22fb075920b96a291928cb7dea5644e94c0ee4fcd5af7e865655e4ccf2", size = 2487987, upload-time = "2025-08-10T21:26:21.49Z" }, - { url = "https://files.pythonhosted.org/packages/39/e9/61e4813b2c97e86b6fdbd4dd824bf72d28bcd8d4849b8084a357bc0dd64d/kiwisolver-1.4.9-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ed0fecd28cc62c54b262e3736f8bb2512d8dcfdc2bcf08be5f47f96bf405b145", size = 2291817, upload-time = "2025-08-10T21:26:22.812Z" }, - { url = "https://files.pythonhosted.org/packages/a0/41/85d82b0291db7504da3c2defe35c9a8a5c9803a730f297bd823d11d5fb77/kiwisolver-1.4.9-cp312-cp312-win_amd64.whl", hash = "sha256:f68208a520c3d86ea51acf688a3e3002615a7f0238002cccc17affecc86a8a54", size = 73895, upload-time = "2025-08-10T21:26:24.37Z" }, - { url = "https://files.pythonhosted.org/packages/e2/92/5f3068cf15ee5cb624a0c7596e67e2a0bb2adee33f71c379054a491d07da/kiwisolver-1.4.9-cp312-cp312-win_arm64.whl", hash = "sha256:2c1a4f57df73965f3f14df20b80ee29e6a7930a57d2d9e8491a25f676e197c60", size = 64992, upload-time = "2025-08-10T21:26:25.732Z" }, - { url = "https://files.pythonhosted.org/packages/31/c1/c2686cda909742ab66c7388e9a1a8521a59eb89f8bcfbee28fc980d07e24/kiwisolver-1.4.9-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:a5d0432ccf1c7ab14f9949eec60c5d1f924f17c037e9f8b33352fa05799359b8", size = 123681, upload-time = "2025-08-10T21:26:26.725Z" }, - { url = "https://files.pythonhosted.org/packages/ca/f0/f44f50c9f5b1a1860261092e3bc91ecdc9acda848a8b8c6abfda4a24dd5c/kiwisolver-1.4.9-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:efb3a45b35622bb6c16dbfab491a8f5a391fe0e9d45ef32f4df85658232ca0e2", size = 66464, upload-time = "2025-08-10T21:26:27.733Z" }, - { url = "https://files.pythonhosted.org/packages/2d/7a/9d90a151f558e29c3936b8a47ac770235f436f2120aca41a6d5f3d62ae8d/kiwisolver-1.4.9-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:1a12cf6398e8a0a001a059747a1cbf24705e18fe413bc22de7b3d15c67cffe3f", size = 64961, upload-time = "2025-08-10T21:26:28.729Z" }, - { url = "https://files.pythonhosted.org/packages/e9/e9/f218a2cb3a9ffbe324ca29a9e399fa2d2866d7f348ec3a88df87fc248fc5/kiwisolver-1.4.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:b67e6efbf68e077dd71d1a6b37e43e1a99d0bff1a3d51867d45ee8908b931098", size = 1474607, upload-time = "2025-08-10T21:26:29.798Z" }, - { url = "https://files.pythonhosted.org/packages/d9/28/aac26d4c882f14de59041636292bc838db8961373825df23b8eeb807e198/kiwisolver-1.4.9-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5656aa670507437af0207645273ccdfee4f14bacd7f7c67a4306d0dcaeaf6eed", size = 1276546, upload-time = "2025-08-10T21:26:31.401Z" }, - { url = "https://files.pythonhosted.org/packages/8b/ad/8bfc1c93d4cc565e5069162f610ba2f48ff39b7de4b5b8d93f69f30c4bed/kiwisolver-1.4.9-cp313-cp313-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:bfc08add558155345129c7803b3671cf195e6a56e7a12f3dde7c57d9b417f525", size = 1294482, upload-time = "2025-08-10T21:26:32.721Z" }, - { url = "https://files.pythonhosted.org/packages/da/f1/6aca55ff798901d8ce403206d00e033191f63d82dd708a186e0ed2067e9c/kiwisolver-1.4.9-cp313-cp313-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:40092754720b174e6ccf9e845d0d8c7d8e12c3d71e7fc35f55f3813e96376f78", size = 1343720, upload-time = "2025-08-10T21:26:34.032Z" }, - { url = "https://files.pythonhosted.org/packages/d1/91/eed031876c595c81d90d0f6fc681ece250e14bf6998c3d7c419466b523b7/kiwisolver-1.4.9-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:497d05f29a1300d14e02e6441cf0f5ee81c1ff5a304b0d9fb77423974684e08b", size = 2224907, upload-time = "2025-08-10T21:26:35.824Z" }, - { url = "https://files.pythonhosted.org/packages/e9/ec/4d1925f2e49617b9cca9c34bfa11adefad49d00db038e692a559454dfb2e/kiwisolver-1.4.9-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:bdd1a81a1860476eb41ac4bc1e07b3f07259e6d55bbf739b79c8aaedcf512799", size = 2321334, upload-time = "2025-08-10T21:26:37.534Z" }, - { url = "https://files.pythonhosted.org/packages/43/cb/450cd4499356f68802750c6ddc18647b8ea01ffa28f50d20598e0befe6e9/kiwisolver-1.4.9-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:e6b93f13371d341afee3be9f7c5964e3fe61d5fa30f6a30eb49856935dfe4fc3", size = 2488313, upload-time = "2025-08-10T21:26:39.191Z" }, - { url = "https://files.pythonhosted.org/packages/71/67/fc76242bd99f885651128a5d4fa6083e5524694b7c88b489b1b55fdc491d/kiwisolver-1.4.9-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:d75aa530ccfaa593da12834b86a0724f58bff12706659baa9227c2ccaa06264c", size = 2291970, upload-time = "2025-08-10T21:26:40.828Z" }, - { url = "https://files.pythonhosted.org/packages/75/bd/f1a5d894000941739f2ae1b65a32892349423ad49c2e6d0771d0bad3fae4/kiwisolver-1.4.9-cp313-cp313-win_amd64.whl", hash = "sha256:dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d", size = 73894, upload-time = "2025-08-10T21:26:42.33Z" }, - { url = "https://files.pythonhosted.org/packages/95/38/dce480814d25b99a391abbddadc78f7c117c6da34be68ca8b02d5848b424/kiwisolver-1.4.9-cp313-cp313-win_arm64.whl", hash = "sha256:d4188e73af84ca82468f09cadc5ac4db578109e52acb4518d8154698d3a87ca2", size = 64995, upload-time = "2025-08-10T21:26:43.889Z" }, - { url = "https://files.pythonhosted.org/packages/e2/37/7d218ce5d92dadc5ebdd9070d903e0c7cf7edfe03f179433ac4d13ce659c/kiwisolver-1.4.9-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:5a0f2724dfd4e3b3ac5a82436a8e6fd16baa7d507117e4279b660fe8ca38a3a1", size = 126510, upload-time = "2025-08-10T21:26:44.915Z" }, - { url = "https://files.pythonhosted.org/packages/23/b0/e85a2b48233daef4b648fb657ebbb6f8367696a2d9548a00b4ee0eb67803/kiwisolver-1.4.9-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:1b11d6a633e4ed84fc0ddafd4ebfd8ea49b3f25082c04ad12b8315c11d504dc1", size = 67903, upload-time = "2025-08-10T21:26:45.934Z" }, - { url = "https://files.pythonhosted.org/packages/44/98/f2425bc0113ad7de24da6bb4dae1343476e95e1d738be7c04d31a5d037fd/kiwisolver-1.4.9-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:61874cdb0a36016354853593cffc38e56fc9ca5aa97d2c05d3dcf6922cd55a11", size = 66402, upload-time = "2025-08-10T21:26:47.101Z" }, - { url = "https://files.pythonhosted.org/packages/98/d8/594657886df9f34c4177cc353cc28ca7e6e5eb562d37ccc233bff43bbe2a/kiwisolver-1.4.9-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:60c439763a969a6af93b4881db0eed8fadf93ee98e18cbc35bc8da868d0c4f0c", size = 1582135, upload-time = "2025-08-10T21:26:48.665Z" }, - { url = "https://files.pythonhosted.org/packages/5c/c6/38a115b7170f8b306fc929e166340c24958347308ea3012c2b44e7e295db/kiwisolver-1.4.9-cp313-cp313t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:92a2f997387a1b79a75e7803aa7ded2cfbe2823852ccf1ba3bcf613b62ae3197", size = 1389409, upload-time = "2025-08-10T21:26:50.335Z" }, - { url = "https://files.pythonhosted.org/packages/bf/3b/e04883dace81f24a568bcee6eb3001da4ba05114afa622ec9b6fafdc1f5e/kiwisolver-1.4.9-cp313-cp313t-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:a31d512c812daea6d8b3be3b2bfcbeb091dbb09177706569bcfc6240dcf8b41c", size = 1401763, upload-time = "2025-08-10T21:26:51.867Z" }, - { url = "https://files.pythonhosted.org/packages/9f/80/20ace48e33408947af49d7d15c341eaee69e4e0304aab4b7660e234d6288/kiwisolver-1.4.9-cp313-cp313t-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:52a15b0f35dad39862d376df10c5230155243a2c1a436e39eb55623ccbd68185", size = 1453643, upload-time = "2025-08-10T21:26:53.592Z" }, - { url = "https://files.pythonhosted.org/packages/64/31/6ce4380a4cd1f515bdda976a1e90e547ccd47b67a1546d63884463c92ca9/kiwisolver-1.4.9-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:a30fd6fdef1430fd9e1ba7b3398b5ee4e2887783917a687d86ba69985fb08748", size = 2330818, upload-time = "2025-08-10T21:26:55.051Z" }, - { url = "https://files.pythonhosted.org/packages/fa/e9/3f3fcba3bcc7432c795b82646306e822f3fd74df0ee81f0fa067a1f95668/kiwisolver-1.4.9-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:cc9617b46837c6468197b5945e196ee9ca43057bb7d9d1ae688101e4e1dddf64", size = 2419963, upload-time = "2025-08-10T21:26:56.421Z" }, - { url = "https://files.pythonhosted.org/packages/99/43/7320c50e4133575c66e9f7dadead35ab22d7c012a3b09bb35647792b2a6d/kiwisolver-1.4.9-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:0ab74e19f6a2b027ea4f845a78827969af45ce790e6cb3e1ebab71bdf9f215ff", size = 2594639, upload-time = "2025-08-10T21:26:57.882Z" }, - { url = "https://files.pythonhosted.org/packages/65/d6/17ae4a270d4a987ef8a385b906d2bdfc9fce502d6dc0d3aea865b47f548c/kiwisolver-1.4.9-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:dba5ee5d3981160c28d5490f0d1b7ed730c22470ff7f6cc26cfcfaacb9896a07", size = 2391741, upload-time = "2025-08-10T21:26:59.237Z" }, - { url = "https://files.pythonhosted.org/packages/2a/8f/8f6f491d595a9e5912971f3f863d81baddccc8a4d0c3749d6a0dd9ffc9df/kiwisolver-1.4.9-cp313-cp313t-win_arm64.whl", hash = "sha256:0749fd8f4218ad2e851e11cc4dc05c7cbc0cbc4267bdfdb31782e65aace4ee9c", size = 68646, upload-time = "2025-08-10T21:27:00.52Z" }, - { url = "https://files.pythonhosted.org/packages/6b/32/6cc0fbc9c54d06c2969faa9c1d29f5751a2e51809dd55c69055e62d9b426/kiwisolver-1.4.9-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:9928fe1eb816d11ae170885a74d074f57af3a0d65777ca47e9aeb854a1fba386", size = 123806, upload-time = "2025-08-10T21:27:01.537Z" }, - { url = "https://files.pythonhosted.org/packages/b2/dd/2bfb1d4a4823d92e8cbb420fe024b8d2167f72079b3bb941207c42570bdf/kiwisolver-1.4.9-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:d0005b053977e7b43388ddec89fa567f43d4f6d5c2c0affe57de5ebf290dc552", size = 66605, upload-time = "2025-08-10T21:27:03.335Z" }, - { url = "https://files.pythonhosted.org/packages/f7/69/00aafdb4e4509c2ca6064646cba9cd4b37933898f426756adb2cb92ebbed/kiwisolver-1.4.9-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:2635d352d67458b66fd0667c14cb1d4145e9560d503219034a18a87e971ce4f3", size = 64925, upload-time = "2025-08-10T21:27:04.339Z" }, - { url = "https://files.pythonhosted.org/packages/43/dc/51acc6791aa14e5cb6d8a2e28cefb0dc2886d8862795449d021334c0df20/kiwisolver-1.4.9-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:767c23ad1c58c9e827b649a9ab7809fd5fd9db266a9cf02b0e926ddc2c680d58", size = 1472414, upload-time = "2025-08-10T21:27:05.437Z" }, - { url = "https://files.pythonhosted.org/packages/3d/bb/93fa64a81db304ac8a246f834d5094fae4b13baf53c839d6bb6e81177129/kiwisolver-1.4.9-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:72d0eb9fba308b8311685c2268cf7d0a0639a6cd027d8128659f72bdd8a024b4", size = 1281272, upload-time = "2025-08-10T21:27:07.063Z" }, - { url = "https://files.pythonhosted.org/packages/70/e6/6df102916960fb8d05069d4bd92d6d9a8202d5a3e2444494e7cd50f65b7a/kiwisolver-1.4.9-cp314-cp314-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:f68e4f3eeca8fb22cc3d731f9715a13b652795ef657a13df1ad0c7dc0e9731df", size = 1298578, upload-time = "2025-08-10T21:27:08.452Z" }, - { url = "https://files.pythonhosted.org/packages/7c/47/e142aaa612f5343736b087864dbaebc53ea8831453fb47e7521fa8658f30/kiwisolver-1.4.9-cp314-cp314-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d84cd4061ae292d8ac367b2c3fa3aad11cb8625a95d135fe93f286f914f3f5a6", size = 1345607, upload-time = "2025-08-10T21:27:10.125Z" }, - { url = "https://files.pythonhosted.org/packages/54/89/d641a746194a0f4d1a3670fb900d0dbaa786fb98341056814bc3f058fa52/kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:a60ea74330b91bd22a29638940d115df9dc00af5035a9a2a6ad9399ffb4ceca5", size = 2230150, upload-time = "2025-08-10T21:27:11.484Z" }, - { url = "https://files.pythonhosted.org/packages/aa/6b/5ee1207198febdf16ac11f78c5ae40861b809cbe0e6d2a8d5b0b3044b199/kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:ce6a3a4e106cf35c2d9c4fa17c05ce0b180db622736845d4315519397a77beaf", size = 2325979, upload-time = "2025-08-10T21:27:12.917Z" }, - { url = "https://files.pythonhosted.org/packages/fc/ff/b269eefd90f4ae14dcc74973d5a0f6d28d3b9bb1afd8c0340513afe6b39a/kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:77937e5e2a38a7b48eef0585114fe7930346993a88060d0bf886086d2aa49ef5", size = 2491456, upload-time = "2025-08-10T21:27:14.353Z" }, - { url = "https://files.pythonhosted.org/packages/fc/d4/10303190bd4d30de547534601e259a4fbf014eed94aae3e5521129215086/kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:24c175051354f4a28c5d6a31c93906dc653e2bf234e8a4bbfb964892078898ce", size = 2294621, upload-time = "2025-08-10T21:27:15.808Z" }, - { url = "https://files.pythonhosted.org/packages/28/e0/a9a90416fce5c0be25742729c2ea52105d62eda6c4be4d803c2a7be1fa50/kiwisolver-1.4.9-cp314-cp314-win_amd64.whl", hash = "sha256:0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7", size = 75417, upload-time = "2025-08-10T21:27:17.436Z" }, - { url = "https://files.pythonhosted.org/packages/1f/10/6949958215b7a9a264299a7db195564e87900f709db9245e4ebdd3c70779/kiwisolver-1.4.9-cp314-cp314-win_arm64.whl", hash = "sha256:0e4e2bf29574a6a7b7f6cb5fa69293b9f96c928949ac4a53ba3f525dffb87f9c", size = 66582, upload-time = "2025-08-10T21:27:18.436Z" }, - { url = "https://files.pythonhosted.org/packages/ec/79/60e53067903d3bc5469b369fe0dfc6b3482e2133e85dae9daa9527535991/kiwisolver-1.4.9-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:d976bbb382b202f71c67f77b0ac11244021cfa3f7dfd9e562eefcea2df711548", size = 126514, upload-time = "2025-08-10T21:27:19.465Z" }, - { url = "https://files.pythonhosted.org/packages/25/d1/4843d3e8d46b072c12a38c97c57fab4608d36e13fe47d47ee96b4d61ba6f/kiwisolver-1.4.9-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:2489e4e5d7ef9a1c300a5e0196e43d9c739f066ef23270607d45aba368b91f2d", size = 67905, upload-time = "2025-08-10T21:27:20.51Z" }, - { url = "https://files.pythonhosted.org/packages/8c/ae/29ffcbd239aea8b93108de1278271ae764dfc0d803a5693914975f200596/kiwisolver-1.4.9-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:e2ea9f7ab7fbf18fffb1b5434ce7c69a07582f7acc7717720f1d69f3e806f90c", size = 66399, upload-time = "2025-08-10T21:27:21.496Z" }, - { url = "https://files.pythonhosted.org/packages/a1/ae/d7ba902aa604152c2ceba5d352d7b62106bedbccc8e95c3934d94472bfa3/kiwisolver-1.4.9-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:b34e51affded8faee0dfdb705416153819d8ea9250bbbf7ea1b249bdeb5f1122", size = 1582197, upload-time = "2025-08-10T21:27:22.604Z" }, - { url = "https://files.pythonhosted.org/packages/f2/41/27c70d427eddb8bc7e4f16420a20fefc6f480312122a59a959fdfe0445ad/kiwisolver-1.4.9-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d8aacd3d4b33b772542b2e01beb50187536967b514b00003bdda7589722d2a64", size = 1390125, upload-time = "2025-08-10T21:27:24.036Z" }, - { url = "https://files.pythonhosted.org/packages/41/42/b3799a12bafc76d962ad69083f8b43b12bf4fe78b097b12e105d75c9b8f1/kiwisolver-1.4.9-cp314-cp314t-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:7cf974dd4e35fa315563ac99d6287a1024e4dc2077b8a7d7cd3d2fb65d283134", size = 1402612, upload-time = "2025-08-10T21:27:25.773Z" }, - { url = "https://files.pythonhosted.org/packages/d2/b5/a210ea073ea1cfaca1bb5c55a62307d8252f531beb364e18aa1e0888b5a0/kiwisolver-1.4.9-cp314-cp314t-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:85bd218b5ecfbee8c8a82e121802dcb519a86044c9c3b2e4aef02fa05c6da370", size = 1453990, upload-time = "2025-08-10T21:27:27.089Z" }, - { url = "https://files.pythonhosted.org/packages/5f/ce/a829eb8c033e977d7ea03ed32fb3c1781b4fa0433fbadfff29e39c676f32/kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:0856e241c2d3df4efef7c04a1e46b1936b6120c9bcf36dd216e3acd84bc4fb21", size = 2331601, upload-time = "2025-08-10T21:27:29.343Z" }, - { url = "https://files.pythonhosted.org/packages/e0/4b/b5e97eb142eb9cd0072dacfcdcd31b1c66dc7352b0f7c7255d339c0edf00/kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:9af39d6551f97d31a4deebeac6f45b156f9755ddc59c07b402c148f5dbb6482a", size = 2422041, upload-time = "2025-08-10T21:27:30.754Z" }, - { url = "https://files.pythonhosted.org/packages/40/be/8eb4cd53e1b85ba4edc3a9321666f12b83113a178845593307a3e7891f44/kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:bb4ae2b57fc1d8cbd1cf7b1d9913803681ffa903e7488012be5b76dedf49297f", size = 2594897, upload-time = "2025-08-10T21:27:32.803Z" }, - { url = "https://files.pythonhosted.org/packages/99/dd/841e9a66c4715477ea0abc78da039832fbb09dac5c35c58dc4c41a407b8a/kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:aedff62918805fb62d43a4aa2ecd4482c380dc76cd31bd7c8878588a61bd0369", size = 2391835, upload-time = "2025-08-10T21:27:34.23Z" }, - { url = "https://files.pythonhosted.org/packages/0c/28/4b2e5c47a0da96896fdfdb006340ade064afa1e63675d01ea5ac222b6d52/kiwisolver-1.4.9-cp314-cp314t-win_amd64.whl", hash = "sha256:1fa333e8b2ce4d9660f2cda9c0e1b6bafcfb2457a9d259faa82289e73ec24891", size = 79988, upload-time = "2025-08-10T21:27:35.587Z" }, - { url = "https://files.pythonhosted.org/packages/80/be/3578e8afd18c88cdf9cb4cffde75a96d2be38c5a903f1ed0ceec061bd09e/kiwisolver-1.4.9-cp314-cp314t-win_arm64.whl", hash = "sha256:4a48a2ce79d65d363597ef7b567ce3d14d68783d2b2263d98db3d9477805ba32", size = 70260, upload-time = "2025-08-10T21:27:36.606Z" }, -] - -[[package]] -name = "lark" -version = "1.2.2" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/af/60/bc7622aefb2aee1c0b4ba23c1446d3e30225c8770b38d7aedbfb65ca9d5a/lark-1.2.2.tar.gz", hash = "sha256:ca807d0162cd16cef15a8feecb862d7319e7a09bdb13aef927968e45040fed80", size = 252132, upload-time = "2024-08-13T19:49:00.652Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/2d/00/d90b10b962b4277f5e64a78b6609968859ff86889f5b898c1a778c06ec00/lark-1.2.2-py3-none-any.whl", hash = "sha256:c2276486b02f0f1b90be155f2c8ba4a8e194d42775786db622faccd652d8e80c", size = 111036, upload-time = "2024-08-13T19:48:58.603Z" }, -] - -[[package]] -name = "llvmlite" -version = "0.44.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/89/6a/95a3d3610d5c75293d5dbbb2a76480d5d4eeba641557b69fe90af6c5b84e/llvmlite-0.44.0.tar.gz", hash = "sha256:07667d66a5d150abed9157ab6c0b9393c9356f229784a4385c02f99e94fc94d4", size = 171880, upload-time = "2025-01-20T11:14:41.342Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/15/86/e3c3195b92e6e492458f16d233e58a1a812aa2bfbef9bdd0fbafcec85c60/llvmlite-0.44.0-cp312-cp312-macosx_10_14_x86_64.whl", hash = "sha256:1d671a56acf725bf1b531d5ef76b86660a5ab8ef19bb6a46064a705c6ca80aad", size = 28132297, upload-time = "2025-01-20T11:13:32.57Z" }, - { url = "https://files.pythonhosted.org/packages/d6/53/373b6b8be67b9221d12b24125fd0ec56b1078b660eeae266ec388a6ac9a0/llvmlite-0.44.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:5f79a728e0435493611c9f405168682bb75ffd1fbe6fc360733b850c80a026db", size = 26201105, upload-time = "2025-01-20T11:13:38.744Z" }, - { url = "https://files.pythonhosted.org/packages/cb/da/8341fd3056419441286c8e26bf436923021005ece0bff5f41906476ae514/llvmlite-0.44.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0143a5ef336da14deaa8ec26c5449ad5b6a2b564df82fcef4be040b9cacfea9", size = 42361901, upload-time = "2025-01-20T11:13:46.711Z" }, - { url = "https://files.pythonhosted.org/packages/53/ad/d79349dc07b8a395a99153d7ce8b01d6fcdc9f8231355a5df55ded649b61/llvmlite-0.44.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d752f89e31b66db6f8da06df8b39f9b91e78c5feea1bf9e8c1fba1d1c24c065d", size = 41184247, upload-time = "2025-01-20T11:13:56.159Z" }, - { url = "https://files.pythonhosted.org/packages/e2/3b/a9a17366af80127bd09decbe2a54d8974b6d8b274b39bf47fbaedeec6307/llvmlite-0.44.0-cp312-cp312-win_amd64.whl", hash = "sha256:eae7e2d4ca8f88f89d315b48c6b741dcb925d6a1042da694aa16ab3dd4cbd3a1", size = 30332380, upload-time = "2025-01-20T11:14:02.442Z" }, - { url = "https://files.pythonhosted.org/packages/89/24/4c0ca705a717514c2092b18476e7a12c74d34d875e05e4d742618ebbf449/llvmlite-0.44.0-cp313-cp313-macosx_10_14_x86_64.whl", hash = "sha256:319bddd44e5f71ae2689859b7203080716448a3cd1128fb144fe5c055219d516", size = 28132306, upload-time = "2025-01-20T11:14:09.035Z" }, - { url = "https://files.pythonhosted.org/packages/01/cf/1dd5a60ba6aee7122ab9243fd614abcf22f36b0437cbbe1ccf1e3391461c/llvmlite-0.44.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:9c58867118bad04a0bb22a2e0068c693719658105e40009ffe95c7000fcde88e", size = 26201090, upload-time = "2025-01-20T11:14:15.401Z" }, - { url = "https://files.pythonhosted.org/packages/d2/1b/656f5a357de7135a3777bd735cc7c9b8f23b4d37465505bd0eaf4be9befe/llvmlite-0.44.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:46224058b13c96af1365290bdfebe9a6264ae62fb79b2b55693deed11657a8bf", size = 42361904, upload-time = "2025-01-20T11:14:22.949Z" }, - { url = "https://files.pythonhosted.org/packages/d8/e1/12c5f20cb9168fb3464a34310411d5ad86e4163c8ff2d14a2b57e5cc6bac/llvmlite-0.44.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:aa0097052c32bf721a4efc03bd109d335dfa57d9bffb3d4c24cc680711b8b4fc", size = 41184245, upload-time = "2025-01-20T11:14:31.731Z" }, - { url = "https://files.pythonhosted.org/packages/d0/81/e66fc86539293282fd9cb7c9417438e897f369e79ffb62e1ae5e5154d4dd/llvmlite-0.44.0-cp313-cp313-win_amd64.whl", hash = "sha256:2fb7c4f2fb86cbae6dca3db9ab203eeea0e22d73b99bc2341cdf9de93612e930", size = 30331193, upload-time = "2025-01-20T11:14:38.578Z" }, -] - -[[package]] -name = "markdown" -version = "3.8.2" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/d7/c2/4ab49206c17f75cb08d6311171f2d65798988db4360c4d1485bd0eedd67c/markdown-3.8.2.tar.gz", hash = "sha256:247b9a70dd12e27f67431ce62523e675b866d254f900c4fe75ce3dda62237c45", size = 362071, upload-time = "2025-06-19T17:12:44.483Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/96/2b/34cc11786bc00d0f04d0f5fdc3a2b1ae0b6239eef72d3d345805f9ad92a1/markdown-3.8.2-py3-none-any.whl", hash = "sha256:5c83764dbd4e00bdd94d85a19b8d55ccca20fe35b2e678a1422b380324dd5f24", size = 106827, upload-time = "2025-06-19T17:12:42.994Z" }, -] - -[[package]] -name = "markupsafe" -version = "3.0.2" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/b2/97/5d42485e71dfc078108a86d6de8fa46db44a1a9295e89c5d6d4a06e23a62/markupsafe-3.0.2.tar.gz", hash = "sha256:ee55d3edf80167e48ea11a923c7386f4669df67d7994554387f84e7d8b0a2bf0", size = 20537, upload-time = "2024-10-18T15:21:54.129Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/22/09/d1f21434c97fc42f09d290cbb6350d44eb12f09cc62c9476effdb33a18aa/MarkupSafe-3.0.2-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:9778bd8ab0a994ebf6f84c2b949e65736d5575320a17ae8984a77fab08db94cf", size = 14274, upload-time = "2024-10-18T15:21:13.777Z" }, - { url = "https://files.pythonhosted.org/packages/6b/b0/18f76bba336fa5aecf79d45dcd6c806c280ec44538b3c13671d49099fdd0/MarkupSafe-3.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:846ade7b71e3536c4e56b386c2a47adf5741d2d8b94ec9dc3e92e5e1ee1e2225", size = 12348, upload-time = "2024-10-18T15:21:14.822Z" }, - { url = "https://files.pythonhosted.org/packages/e0/25/dd5c0f6ac1311e9b40f4af06c78efde0f3b5cbf02502f8ef9501294c425b/MarkupSafe-3.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1c99d261bd2d5f6b59325c92c73df481e05e57f19837bdca8413b9eac4bd8028", size = 24149, upload-time = "2024-10-18T15:21:15.642Z" }, - { url = "https://files.pythonhosted.org/packages/f3/f0/89e7aadfb3749d0f52234a0c8c7867877876e0a20b60e2188e9850794c17/MarkupSafe-3.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e17c96c14e19278594aa4841ec148115f9c7615a47382ecb6b82bd8fea3ab0c8", size = 23118, upload-time = "2024-10-18T15:21:17.133Z" }, - { url = "https://files.pythonhosted.org/packages/d5/da/f2eeb64c723f5e3777bc081da884b414671982008c47dcc1873d81f625b6/MarkupSafe-3.0.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:88416bd1e65dcea10bc7569faacb2c20ce071dd1f87539ca2ab364bf6231393c", size = 22993, upload-time = "2024-10-18T15:21:18.064Z" }, - { url = "https://files.pythonhosted.org/packages/da/0e/1f32af846df486dce7c227fe0f2398dc7e2e51d4a370508281f3c1c5cddc/MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:2181e67807fc2fa785d0592dc2d6206c019b9502410671cc905d132a92866557", size = 24178, upload-time = "2024-10-18T15:21:18.859Z" }, - { url = "https://files.pythonhosted.org/packages/c4/f6/bb3ca0532de8086cbff5f06d137064c8410d10779c4c127e0e47d17c0b71/MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:52305740fe773d09cffb16f8ed0427942901f00adedac82ec8b67752f58a1b22", size = 23319, upload-time = "2024-10-18T15:21:19.671Z" }, - { url = "https://files.pythonhosted.org/packages/a2/82/8be4c96ffee03c5b4a034e60a31294daf481e12c7c43ab8e34a1453ee48b/MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ad10d3ded218f1039f11a75f8091880239651b52e9bb592ca27de44eed242a48", size = 23352, upload-time = "2024-10-18T15:21:20.971Z" }, - { url = "https://files.pythonhosted.org/packages/51/ae/97827349d3fcffee7e184bdf7f41cd6b88d9919c80f0263ba7acd1bbcb18/MarkupSafe-3.0.2-cp312-cp312-win32.whl", hash = "sha256:0f4ca02bea9a23221c0182836703cbf8930c5e9454bacce27e767509fa286a30", size = 15097, upload-time = "2024-10-18T15:21:22.646Z" }, - { url = "https://files.pythonhosted.org/packages/c1/80/a61f99dc3a936413c3ee4e1eecac96c0da5ed07ad56fd975f1a9da5bc630/MarkupSafe-3.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:8e06879fc22a25ca47312fbe7c8264eb0b662f6db27cb2d3bbbc74b1df4b9b87", size = 15601, upload-time = "2024-10-18T15:21:23.499Z" }, - { url = "https://files.pythonhosted.org/packages/83/0e/67eb10a7ecc77a0c2bbe2b0235765b98d164d81600746914bebada795e97/MarkupSafe-3.0.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ba9527cdd4c926ed0760bc301f6728ef34d841f405abf9d4f959c478421e4efd", size = 14274, upload-time = "2024-10-18T15:21:24.577Z" }, - { url = "https://files.pythonhosted.org/packages/2b/6d/9409f3684d3335375d04e5f05744dfe7e9f120062c9857df4ab490a1031a/MarkupSafe-3.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f8b3d067f2e40fe93e1ccdd6b2e1d16c43140e76f02fb1319a05cf2b79d99430", size = 12352, upload-time = "2024-10-18T15:21:25.382Z" }, - { url = "https://files.pythonhosted.org/packages/d2/f5/6eadfcd3885ea85fe2a7c128315cc1bb7241e1987443d78c8fe712d03091/MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:569511d3b58c8791ab4c2e1285575265991e6d8f8700c7be0e88f86cb0672094", size = 24122, upload-time = "2024-10-18T15:21:26.199Z" }, - { url = "https://files.pythonhosted.org/packages/0c/91/96cf928db8236f1bfab6ce15ad070dfdd02ed88261c2afafd4b43575e9e9/MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:15ab75ef81add55874e7ab7055e9c397312385bd9ced94920f2802310c930396", size = 23085, upload-time = "2024-10-18T15:21:27.029Z" }, - { url = "https://files.pythonhosted.org/packages/c2/cf/c9d56af24d56ea04daae7ac0940232d31d5a8354f2b457c6d856b2057d69/MarkupSafe-3.0.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f3818cb119498c0678015754eba762e0d61e5b52d34c8b13d770f0719f7b1d79", size = 22978, upload-time = "2024-10-18T15:21:27.846Z" }, - { url = "https://files.pythonhosted.org/packages/2a/9f/8619835cd6a711d6272d62abb78c033bda638fdc54c4e7f4272cf1c0962b/MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:cdb82a876c47801bb54a690c5ae105a46b392ac6099881cdfb9f6e95e4014c6a", size = 24208, upload-time = "2024-10-18T15:21:28.744Z" }, - { url = "https://files.pythonhosted.org/packages/f9/bf/176950a1792b2cd2102b8ffeb5133e1ed984547b75db47c25a67d3359f77/MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:cabc348d87e913db6ab4aa100f01b08f481097838bdddf7c7a84b7575b7309ca", size = 23357, upload-time = "2024-10-18T15:21:29.545Z" }, - { url = "https://files.pythonhosted.org/packages/ce/4f/9a02c1d335caabe5c4efb90e1b6e8ee944aa245c1aaaab8e8a618987d816/MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:444dcda765c8a838eaae23112db52f1efaf750daddb2d9ca300bcae1039adc5c", size = 23344, upload-time = "2024-10-18T15:21:30.366Z" }, - { url = "https://files.pythonhosted.org/packages/ee/55/c271b57db36f748f0e04a759ace9f8f759ccf22b4960c270c78a394f58be/MarkupSafe-3.0.2-cp313-cp313-win32.whl", hash = "sha256:bcf3e58998965654fdaff38e58584d8937aa3096ab5354d493c77d1fdd66d7a1", size = 15101, upload-time = "2024-10-18T15:21:31.207Z" }, - { url = "https://files.pythonhosted.org/packages/29/88/07df22d2dd4df40aba9f3e402e6dc1b8ee86297dddbad4872bd5e7b0094f/MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f", size = 15603, upload-time = "2024-10-18T15:21:32.032Z" }, - { url = "https://files.pythonhosted.org/packages/62/6a/8b89d24db2d32d433dffcd6a8779159da109842434f1dd2f6e71f32f738c/MarkupSafe-3.0.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:b5a6b3ada725cea8a5e634536b1b01c30bcdcd7f9c6fff4151548d5bf6b3a36c", size = 14510, upload-time = "2024-10-18T15:21:33.625Z" }, - { url = "https://files.pythonhosted.org/packages/7a/06/a10f955f70a2e5a9bf78d11a161029d278eeacbd35ef806c3fd17b13060d/MarkupSafe-3.0.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:a904af0a6162c73e3edcb969eeeb53a63ceeb5d8cf642fade7d39e7963a22ddb", size = 12486, upload-time = "2024-10-18T15:21:34.611Z" }, - { url = "https://files.pythonhosted.org/packages/34/cf/65d4a571869a1a9078198ca28f39fba5fbb910f952f9dbc5220afff9f5e6/MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4aa4e5faecf353ed117801a068ebab7b7e09ffb6e1d5e412dc852e0da018126c", size = 25480, upload-time = "2024-10-18T15:21:35.398Z" }, - { url = "https://files.pythonhosted.org/packages/0c/e3/90e9651924c430b885468b56b3d597cabf6d72be4b24a0acd1fa0e12af67/MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0ef13eaeee5b615fb07c9a7dadb38eac06a0608b41570d8ade51c56539e509d", size = 23914, upload-time = "2024-10-18T15:21:36.231Z" }, - { url = "https://files.pythonhosted.org/packages/66/8c/6c7cf61f95d63bb866db39085150df1f2a5bd3335298f14a66b48e92659c/MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d16a81a06776313e817c951135cf7340a3e91e8c1ff2fac444cfd75fffa04afe", size = 23796, upload-time = "2024-10-18T15:21:37.073Z" }, - { url = "https://files.pythonhosted.org/packages/bb/35/cbe9238ec3f47ac9a7c8b3df7a808e7cb50fe149dc7039f5f454b3fba218/MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:6381026f158fdb7c72a168278597a5e3a5222e83ea18f543112b2662a9b699c5", size = 25473, upload-time = "2024-10-18T15:21:37.932Z" }, - { url = "https://files.pythonhosted.org/packages/e6/32/7621a4382488aa283cc05e8984a9c219abad3bca087be9ec77e89939ded9/MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:3d79d162e7be8f996986c064d1c7c817f6df3a77fe3d6859f6f9e7be4b8c213a", size = 24114, upload-time = "2024-10-18T15:21:39.799Z" }, - { url = "https://files.pythonhosted.org/packages/0d/80/0985960e4b89922cb5a0bac0ed39c5b96cbc1a536a99f30e8c220a996ed9/MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:131a3c7689c85f5ad20f9f6fb1b866f402c445b220c19fe4308c0b147ccd2ad9", size = 24098, upload-time = "2024-10-18T15:21:40.813Z" }, - { url = "https://files.pythonhosted.org/packages/82/78/fedb03c7d5380df2427038ec8d973587e90561b2d90cd472ce9254cf348b/MarkupSafe-3.0.2-cp313-cp313t-win32.whl", hash = "sha256:ba8062ed2cf21c07a9e295d5b8a2a5ce678b913b45fdf68c32d95d6c1291e0b6", size = 15208, upload-time = "2024-10-18T15:21:41.814Z" }, - { url = "https://files.pythonhosted.org/packages/4f/65/6079a46068dfceaeabb5dcad6d674f5f5c61a6fa5673746f42a9f4c233b3/MarkupSafe-3.0.2-cp313-cp313t-win_amd64.whl", hash = "sha256:e444a31f8db13eb18ada366ab3cf45fd4b31e4db1236a4448f68778c1d1a5a2f", size = 15739, upload-time = "2024-10-18T15:21:42.784Z" }, -] - -[[package]] -name = "matplotlib" -version = "3.10.5" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "contourpy" }, - { name = "cycler" }, - { name = "fonttools" }, - { name = "kiwisolver" }, - { name = "numpy" }, - { name = "packaging" }, - { name = "pillow" }, - { name = "pyparsing" }, - { name = "python-dateutil" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/43/91/f2939bb60b7ebf12478b030e0d7f340247390f402b3b189616aad790c366/matplotlib-3.10.5.tar.gz", hash = "sha256:352ed6ccfb7998a00881692f38b4ca083c691d3e275b4145423704c34c909076", size = 34804044, upload-time = "2025-07-31T18:09:33.805Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/66/1e/c6f6bcd882d589410b475ca1fc22e34e34c82adff519caf18f3e6dd9d682/matplotlib-3.10.5-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:00b6feadc28a08bd3c65b2894f56cf3c94fc8f7adcbc6ab4516ae1e8ed8f62e2", size = 8253056, upload-time = "2025-07-31T18:08:05.385Z" }, - { url = "https://files.pythonhosted.org/packages/53/e6/d6f7d1b59413f233793dda14419776f5f443bcccb2dfc84b09f09fe05dbe/matplotlib-3.10.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ee98a5c5344dc7f48dc261b6ba5d9900c008fc12beb3fa6ebda81273602cc389", size = 8110131, upload-time = "2025-07-31T18:08:07.293Z" }, - { url = "https://files.pythonhosted.org/packages/66/2b/bed8a45e74957549197a2ac2e1259671cd80b55ed9e1fe2b5c94d88a9202/matplotlib-3.10.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:a17e57e33de901d221a07af32c08870ed4528db0b6059dce7d7e65c1122d4bea", size = 8669603, upload-time = "2025-07-31T18:08:09.064Z" }, - { url = "https://files.pythonhosted.org/packages/7e/a7/315e9435b10d057f5e52dfc603cd353167ae28bb1a4e033d41540c0067a4/matplotlib-3.10.5-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:97b9d6443419085950ee4a5b1ee08c363e5c43d7176e55513479e53669e88468", size = 9508127, upload-time = "2025-07-31T18:08:10.845Z" }, - { url = "https://files.pythonhosted.org/packages/7f/d9/edcbb1f02ca99165365d2768d517898c22c6040187e2ae2ce7294437c413/matplotlib-3.10.5-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ceefe5d40807d29a66ae916c6a3915d60ef9f028ce1927b84e727be91d884369", size = 9566926, upload-time = "2025-07-31T18:08:13.186Z" }, - { url = "https://files.pythonhosted.org/packages/3b/d9/6dd924ad5616c97b7308e6320cf392c466237a82a2040381163b7500510a/matplotlib-3.10.5-cp312-cp312-win_amd64.whl", hash = "sha256:c04cba0f93d40e45b3c187c6c52c17f24535b27d545f757a2fffebc06c12b98b", size = 8107599, upload-time = "2025-07-31T18:08:15.116Z" }, - { url = "https://files.pythonhosted.org/packages/0e/f3/522dc319a50f7b0279fbe74f86f7a3506ce414bc23172098e8d2bdf21894/matplotlib-3.10.5-cp312-cp312-win_arm64.whl", hash = "sha256:a41bcb6e2c8e79dc99c5511ae6f7787d2fb52efd3d805fff06d5d4f667db16b2", size = 7978173, upload-time = "2025-07-31T18:08:21.518Z" }, - { url = "https://files.pythonhosted.org/packages/8d/05/4f3c1f396075f108515e45cb8d334aff011a922350e502a7472e24c52d77/matplotlib-3.10.5-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:354204db3f7d5caaa10e5de74549ef6a05a4550fdd1c8f831ab9bca81efd39ed", size = 8253586, upload-time = "2025-07-31T18:08:23.107Z" }, - { url = "https://files.pythonhosted.org/packages/2f/2c/e084415775aac7016c3719fe7006cdb462582c6c99ac142f27303c56e243/matplotlib-3.10.5-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b072aac0c3ad563a2b3318124756cb6112157017f7431626600ecbe890df57a1", size = 8110715, upload-time = "2025-07-31T18:08:24.675Z" }, - { url = "https://files.pythonhosted.org/packages/52/1b/233e3094b749df16e3e6cd5a44849fd33852e692ad009cf7de00cf58ddf6/matplotlib-3.10.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:d52fd5b684d541b5a51fb276b2b97b010c75bee9aa392f96b4a07aeb491e33c7", size = 8669397, upload-time = "2025-07-31T18:08:26.778Z" }, - { url = "https://files.pythonhosted.org/packages/e8/ec/03f9e003a798f907d9f772eed9b7c6a9775d5bd00648b643ebfb88e25414/matplotlib-3.10.5-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ee7a09ae2f4676276f5a65bd9f2bd91b4f9fbaedf49f40267ce3f9b448de501f", size = 9508646, upload-time = "2025-07-31T18:08:28.848Z" }, - { url = "https://files.pythonhosted.org/packages/91/e7/c051a7a386680c28487bca27d23b02d84f63e3d2a9b4d2fc478e6a42e37e/matplotlib-3.10.5-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:ba6c3c9c067b83481d647af88b4e441d532acdb5ef22178a14935b0b881188f4", size = 9567424, upload-time = "2025-07-31T18:08:30.726Z" }, - { url = "https://files.pythonhosted.org/packages/36/c2/24302e93ff431b8f4173ee1dd88976c8d80483cadbc5d3d777cef47b3a1c/matplotlib-3.10.5-cp313-cp313-win_amd64.whl", hash = "sha256:07442d2692c9bd1cceaa4afb4bbe5b57b98a7599de4dabfcca92d3eea70f9ebe", size = 8107809, upload-time = "2025-07-31T18:08:33.928Z" }, - { url = "https://files.pythonhosted.org/packages/0b/33/423ec6a668d375dad825197557ed8fbdb74d62b432c1ed8235465945475f/matplotlib-3.10.5-cp313-cp313-win_arm64.whl", hash = "sha256:48fe6d47380b68a37ccfcc94f009530e84d41f71f5dae7eda7c4a5a84aa0a674", size = 7978078, upload-time = "2025-07-31T18:08:36.764Z" }, - { url = "https://files.pythonhosted.org/packages/51/17/521fc16ec766455c7bb52cc046550cf7652f6765ca8650ff120aa2d197b6/matplotlib-3.10.5-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:3b80eb8621331449fc519541a7461987f10afa4f9cfd91afcd2276ebe19bd56c", size = 8295590, upload-time = "2025-07-31T18:08:38.521Z" }, - { url = "https://files.pythonhosted.org/packages/f8/12/23c28b2c21114c63999bae129fce7fd34515641c517ae48ce7b7dcd33458/matplotlib-3.10.5-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:47a388908e469d6ca2a6015858fa924e0e8a2345a37125948d8e93a91c47933e", size = 8158518, upload-time = "2025-07-31T18:08:40.195Z" }, - { url = "https://files.pythonhosted.org/packages/81/f8/aae4eb25e8e7190759f3cb91cbeaa344128159ac92bb6b409e24f8711f78/matplotlib-3.10.5-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:8b6b49167d208358983ce26e43aa4196073b4702858670f2eb111f9a10652b4b", size = 8691815, upload-time = "2025-07-31T18:08:42.238Z" }, - { url = "https://files.pythonhosted.org/packages/d0/ba/450c39ebdd486bd33a359fc17365ade46c6a96bf637bbb0df7824de2886c/matplotlib-3.10.5-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8a8da0453a7fd8e3da114234ba70c5ba9ef0e98f190309ddfde0f089accd46ea", size = 9522814, upload-time = "2025-07-31T18:08:44.914Z" }, - { url = "https://files.pythonhosted.org/packages/89/11/9c66f6a990e27bb9aa023f7988d2d5809cb98aa39c09cbf20fba75a542ef/matplotlib-3.10.5-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:52c6573dfcb7726a9907b482cd5b92e6b5499b284ffacb04ffbfe06b3e568124", size = 9573917, upload-time = "2025-07-31T18:08:47.038Z" }, - { url = "https://files.pythonhosted.org/packages/b3/69/8b49394de92569419e5e05e82e83df9b749a0ff550d07631ea96ed2eb35a/matplotlib-3.10.5-cp313-cp313t-win_amd64.whl", hash = "sha256:a23193db2e9d64ece69cac0c8231849db7dd77ce59c7b89948cf9d0ce655a3ce", size = 8181034, upload-time = "2025-07-31T18:08:48.943Z" }, - { url = "https://files.pythonhosted.org/packages/47/23/82dc435bb98a2fc5c20dffcac8f0b083935ac28286413ed8835df40d0baa/matplotlib-3.10.5-cp313-cp313t-win_arm64.whl", hash = "sha256:56da3b102cf6da2776fef3e71cd96fcf22103a13594a18ac9a9b31314e0be154", size = 8023337, upload-time = "2025-07-31T18:08:50.791Z" }, - { url = "https://files.pythonhosted.org/packages/ac/e0/26b6cfde31f5383503ee45dcb7e691d45dadf0b3f54639332b59316a97f8/matplotlib-3.10.5-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:96ef8f5a3696f20f55597ffa91c28e2e73088df25c555f8d4754931515512715", size = 8253591, upload-time = "2025-07-31T18:08:53.254Z" }, - { url = "https://files.pythonhosted.org/packages/c1/89/98488c7ef7ea20ea659af7499628c240a608b337af4be2066d644cfd0a0f/matplotlib-3.10.5-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:77fab633e94b9da60512d4fa0213daeb76d5a7b05156840c4fd0399b4b818837", size = 8112566, upload-time = "2025-07-31T18:08:55.116Z" }, - { url = "https://files.pythonhosted.org/packages/52/67/42294dfedc82aea55e1a767daf3263aacfb5a125f44ba189e685bab41b6f/matplotlib-3.10.5-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:27f52634315e96b1debbfdc5c416592edcd9c4221bc2f520fd39c33db5d9f202", size = 9513281, upload-time = "2025-07-31T18:08:56.885Z" }, - { url = "https://files.pythonhosted.org/packages/e7/68/f258239e0cf34c2cbc816781c7ab6fca768452e6bf1119aedd2bd4a882a3/matplotlib-3.10.5-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:525f6e28c485c769d1f07935b660c864de41c37fd716bfa64158ea646f7084bb", size = 9780873, upload-time = "2025-07-31T18:08:59.241Z" }, - { url = "https://files.pythonhosted.org/packages/89/64/f4881554006bd12e4558bd66778bdd15d47b00a1f6c6e8b50f6208eda4b3/matplotlib-3.10.5-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:1f5f3ec4c191253c5f2b7c07096a142c6a1c024d9f738247bfc8e3f9643fc975", size = 9568954, upload-time = "2025-07-31T18:09:01.244Z" }, - { url = "https://files.pythonhosted.org/packages/06/f8/42779d39c3f757e1f012f2dda3319a89fb602bd2ef98ce8faf0281f4febd/matplotlib-3.10.5-cp314-cp314-win_amd64.whl", hash = "sha256:707f9c292c4cd4716f19ab8a1f93f26598222cd931e0cd98fbbb1c5994bf7667", size = 8237465, upload-time = "2025-07-31T18:09:03.206Z" }, - { url = "https://files.pythonhosted.org/packages/cf/f8/153fd06b5160f0cd27c8b9dd797fcc9fb56ac6a0ebf3c1f765b6b68d3c8a/matplotlib-3.10.5-cp314-cp314-win_arm64.whl", hash = "sha256:21a95b9bf408178d372814de7baacd61c712a62cae560b5e6f35d791776f6516", size = 8108898, upload-time = "2025-07-31T18:09:05.231Z" }, - { url = "https://files.pythonhosted.org/packages/9a/ee/c4b082a382a225fe0d2a73f1f57cf6f6f132308805b493a54c8641006238/matplotlib-3.10.5-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:a6b310f95e1102a8c7c817ef17b60ee5d1851b8c71b63d9286b66b177963039e", size = 8295636, upload-time = "2025-07-31T18:09:07.306Z" }, - { url = "https://files.pythonhosted.org/packages/30/73/2195fa2099718b21a20da82dfc753bf2af58d596b51aefe93e359dd5915a/matplotlib-3.10.5-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:94986a242747a0605cb3ff1cb98691c736f28a59f8ffe5175acaeb7397c49a5a", size = 8158575, upload-time = "2025-07-31T18:09:09.083Z" }, - { url = "https://files.pythonhosted.org/packages/f6/e9/a08cdb34618a91fa08f75e6738541da5cacde7c307cea18ff10f0d03fcff/matplotlib-3.10.5-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1ff10ea43288f0c8bab608a305dc6c918cc729d429c31dcbbecde3b9f4d5b569", size = 9522815, upload-time = "2025-07-31T18:09:11.191Z" }, - { url = "https://files.pythonhosted.org/packages/4e/bb/34d8b7e0d1bb6d06ef45db01dfa560d5a67b1c40c0b998ce9ccde934bb09/matplotlib-3.10.5-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f6adb644c9d040ffb0d3434e440490a66cf73dbfa118a6f79cd7568431f7a012", size = 9783514, upload-time = "2025-07-31T18:09:13.307Z" }, - { url = "https://files.pythonhosted.org/packages/12/09/d330d1e55dcca2e11b4d304cc5227f52e2512e46828d6249b88e0694176e/matplotlib-3.10.5-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:4fa40a8f98428f789a9dcacd625f59b7bc4e3ef6c8c7c80187a7a709475cf592", size = 9573932, upload-time = "2025-07-31T18:09:15.335Z" }, - { url = "https://files.pythonhosted.org/packages/eb/3b/f70258ac729aa004aca673800a53a2b0a26d49ca1df2eaa03289a1c40f81/matplotlib-3.10.5-cp314-cp314t-win_amd64.whl", hash = "sha256:95672a5d628b44207aab91ec20bf59c26da99de12b88f7e0b1fb0a84a86ff959", size = 8322003, upload-time = "2025-07-31T18:09:17.416Z" }, - { url = "https://files.pythonhosted.org/packages/5b/60/3601f8ce6d76a7c81c7f25a0e15fde0d6b66226dd187aa6d2838e6374161/matplotlib-3.10.5-cp314-cp314t-win_arm64.whl", hash = "sha256:2efaf97d72629e74252e0b5e3c46813e9eeaa94e011ecf8084a971a31a97f40b", size = 8153849, upload-time = "2025-07-31T18:09:19.673Z" }, -] - -[[package]] -name = "matplotlib-inline" -version = "0.1.7" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "traitlets" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/99/5b/a36a337438a14116b16480db471ad061c36c3694df7c2084a0da7ba538b7/matplotlib_inline-0.1.7.tar.gz", hash = "sha256:8423b23ec666be3d16e16b60bdd8ac4e86e840ebd1dd11a30b9f117f2fa0ab90", size = 8159, upload-time = "2024-04-15T13:44:44.803Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/8f/8e/9ad090d3553c280a8060fbf6e24dc1c0c29704ee7d1c372f0c174aa59285/matplotlib_inline-0.1.7-py3-none-any.whl", hash = "sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca", size = 9899, upload-time = "2024-04-15T13:44:43.265Z" }, -] - -[[package]] -name = "mergedeep" -version = "1.3.4" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/3a/41/580bb4006e3ed0361b8151a01d324fb03f420815446c7def45d02f74c270/mergedeep-1.3.4.tar.gz", hash = "sha256:0096d52e9dad9939c3d975a774666af186eda617e6ca84df4c94dec30004f2a8", size = 4661, upload-time = "2021-02-05T18:55:30.623Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl", hash = "sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307", size = 6354, upload-time = "2021-02-05T18:55:29.583Z" }, -] - -[[package]] -name = "mistune" -version = "3.1.3" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/c4/79/bda47f7dd7c3c55770478d6d02c9960c430b0cf1773b72366ff89126ea31/mistune-3.1.3.tar.gz", hash = "sha256:a7035c21782b2becb6be62f8f25d3df81ccb4d6fa477a6525b15af06539f02a0", size = 94347, upload-time = "2025-03-19T14:27:24.955Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/01/4d/23c4e4f09da849e127e9f123241946c23c1e30f45a88366879e064211815/mistune-3.1.3-py3-none-any.whl", hash = "sha256:1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9", size = 53410, upload-time = "2025-03-19T14:27:23.451Z" }, -] - -[[package]] -name = "mkdocs" -version = "1.6.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "click" }, - { name = "colorama", marker = "sys_platform == 'win32'" }, - { name = "ghp-import" }, - { name = "jinja2" }, - { name = "markdown" }, - { name = "markupsafe" }, - { name = "mergedeep" }, - { name = "mkdocs-get-deps" }, - { name = "packaging" }, - { name = "pathspec" }, - { name = "pyyaml" }, - { name = "pyyaml-env-tag" }, - { name = "watchdog" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/bc/c6/bbd4f061bd16b378247f12953ffcb04786a618ce5e904b8c5a01a0309061/mkdocs-1.6.1.tar.gz", hash = "sha256:7b432f01d928c084353ab39c57282f29f92136665bdd6abf7c1ec8d822ef86f2", size = 3889159, upload-time = "2024-08-30T12:24:06.899Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/22/5b/dbc6a8cddc9cfa9c4971d59fb12bb8d42e161b7e7f8cc89e49137c5b279c/mkdocs-1.6.1-py3-none-any.whl", hash = "sha256:db91759624d1647f3f34aa0c3f327dd2601beae39a366d6e064c03468d35c20e", size = 3864451, upload-time = "2024-08-30T12:24:05.054Z" }, -] - -[[package]] -name = "mkdocs-autorefs" -version = "1.4.2" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "markdown" }, - { name = "markupsafe" }, - { name = "mkdocs" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/47/0c/c9826f35b99c67fa3a7cddfa094c1a6c43fafde558c309c6e4403e5b37dc/mkdocs_autorefs-1.4.2.tar.gz", hash = "sha256:e2ebe1abd2b67d597ed19378c0fff84d73d1dbce411fce7a7cc6f161888b6749", size = 54961, upload-time = "2025-05-20T13:09:09.886Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/87/dc/fc063b78f4b769d1956319351704e23ebeba1e9e1d6a41b4b602325fd7e4/mkdocs_autorefs-1.4.2-py3-none-any.whl", hash = "sha256:83d6d777b66ec3c372a1aad4ae0cf77c243ba5bcda5bf0c6b8a2c5e7a3d89f13", size = 24969, upload-time = "2025-05-20T13:09:08.237Z" }, -] - -[[package]] -name = "mkdocs-get-deps" -version = "0.2.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "mergedeep" }, - { name = "platformdirs" }, - { name = "pyyaml" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/98/f5/ed29cd50067784976f25ed0ed6fcd3c2ce9eb90650aa3b2796ddf7b6870b/mkdocs_get_deps-0.2.0.tar.gz", hash = "sha256:162b3d129c7fad9b19abfdcb9c1458a651628e4b1dea628ac68790fb3061c60c", size = 10239, upload-time = "2023-11-20T17:51:09.981Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/9f/d4/029f984e8d3f3b6b726bd33cafc473b75e9e44c0f7e80a5b29abc466bdea/mkdocs_get_deps-0.2.0-py3-none-any.whl", hash = "sha256:2bf11d0b133e77a0dd036abeeb06dec8775e46efa526dc70667d8863eefc6134", size = 9521, upload-time = "2023-11-20T17:51:08.587Z" }, -] - -[[package]] -name = "mkdocs-include-markdown-plugin" -version = "7.1.6" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "mkdocs" }, - { name = "wcmatch" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/2c/17/988d97ac6849b196f54d45ca9c60ca894880c160a512785f03834704b3d9/mkdocs_include_markdown_plugin-7.1.6.tar.gz", hash = "sha256:a0753cb82704c10a287f1e789fc9848f82b6beb8749814b24b03dd9f67816677", size = 23391, upload-time = "2025-06-13T18:25:51.193Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/e2/a1/6cf1667a05e5f468e1263fcf848772bca8cc9e358cd57ae19a01f92c9f6f/mkdocs_include_markdown_plugin-7.1.6-py3-none-any.whl", hash = "sha256:7975a593514887c18ecb68e11e35c074c5499cfa3e51b18cd16323862e1f7345", size = 27161, upload-time = "2025-06-13T18:25:49.847Z" }, -] - -[[package]] -name = "mkdocs-macros-plugin" -version = "1.3.9" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "hjson" }, - { name = "jinja2" }, - { name = "mkdocs" }, - { name = "packaging" }, - { name = "pathspec" }, - { name = "python-dateutil" }, - { name = "pyyaml" }, - { name = "super-collections" }, - { name = "termcolor" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/f0/4f/c1c0b258d39739d25d9259d7379fdd016a893e4370734b1843cef6c90f2d/mkdocs_macros_plugin-1.3.9.tar.gz", hash = "sha256:01b6003fbe9b55fdc97c0abb66f811d65abfd291dcf70f277990165553faa99a", size = 33990, upload-time = "2025-08-12T13:08:02.116Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/75/d6/18f19261f44813be207c46fb80da9ca13cb397aae5944b2b30c9eb1ebe3f/mkdocs_macros_plugin-1.3.9-py3-none-any.whl", hash = "sha256:c52351295efdbdbb37a9f0ea639719055ddb64a00115457289940e85696a81d9", size = 38219, upload-time = "2025-08-12T13:08:00.676Z" }, -] - -[[package]] -name = "mkdocs-material" -version = "9.6.18" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "babel" }, - { name = "backrefs" }, - { name = "click" }, - { name = "colorama" }, - { name = "jinja2" }, - { name = "markdown" }, - { name = "mkdocs" }, - { name = "mkdocs-material-extensions" }, - { name = "paginate" }, - { name = "pygments" }, - { name = "pymdown-extensions" }, - { name = "requests" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/e6/46/db0d78add5aac29dfcd0a593bcc6049c86c77ba8a25b3a5b681c190d5e99/mkdocs_material-9.6.18.tar.gz", hash = "sha256:a2eb253bcc8b66f8c6eaf8379c10ed6e9644090c2e2e9d0971c7722dc7211c05", size = 4034856, upload-time = "2025-08-22T08:21:47.575Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/22/0b/545a4f8d4f9057e77f1d99640eb09aaae40c4f9034707f25636caf716ff9/mkdocs_material-9.6.18-py3-none-any.whl", hash = "sha256:dbc1e146a0ecce951a4d84f97b816a54936cdc9e1edd1667fc6868878ac06701", size = 9232642, upload-time = "2025-08-22T08:21:44.52Z" }, -] - -[[package]] -name = "mkdocs-material-extensions" -version = "1.3.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/79/9b/9b4c96d6593b2a541e1cb8b34899a6d021d208bb357042823d4d2cabdbe7/mkdocs_material_extensions-1.3.1.tar.gz", hash = "sha256:10c9511cea88f568257f960358a467d12b970e1f7b2c0e5fb2bb48cab1928443", size = 11847, upload-time = "2023-11-22T19:09:45.208Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/5b/54/662a4743aa81d9582ee9339d4ffa3c8fd40a4965e033d77b9da9774d3960/mkdocs_material_extensions-1.3.1-py3-none-any.whl", hash = "sha256:adff8b62700b25cb77b53358dad940f3ef973dd6db797907c49e3c2ef3ab4e31", size = 8728, upload-time = "2023-11-22T19:09:43.465Z" }, -] - -[[package]] -name = "mkdocs-minify-plugin" -version = "0.8.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "csscompressor" }, - { name = "htmlmin2" }, - { name = "jsmin" }, - { name = "mkdocs" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/52/67/fe4b77e7a8ae7628392e28b14122588beaf6078b53eb91c7ed000fd158ac/mkdocs-minify-plugin-0.8.0.tar.gz", hash = "sha256:bc11b78b8120d79e817308e2b11539d790d21445eb63df831e393f76e52e753d", size = 8366, upload-time = "2024-01-29T16:11:32.982Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/1b/cd/2e8d0d92421916e2ea4ff97f10a544a9bd5588eb747556701c983581df13/mkdocs_minify_plugin-0.8.0-py3-none-any.whl", hash = "sha256:5fba1a3f7bd9a2142c9954a6559a57e946587b21f133165ece30ea145c66aee6", size = 6723, upload-time = "2024-01-29T16:11:31.851Z" }, -] - -[[package]] -name = "mkdocs-plotly-plugin" -version = "0.1.3" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "beautifulsoup4" }, - { name = "flatten-dict" }, - { name = "mkdocs" }, - { name = "pymdown-extensions" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/df/21/01431251720764246970a0bb9359fd8734007b518773a5102b089c46aec2/mkdocs-plotly-plugin-0.1.3.tar.gz", hash = "sha256:86a133ecef92da2d41045cfa6f143fd77f7e064d7a1558d7fb764e1efb82dbca", size = 10686, upload-time = "2023-07-24T15:09:42.418Z" } - -[[package]] -name = "mkdocs-redirects" -version = "1.2.2" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "mkdocs" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/f1/a8/6d44a6cf07e969c7420cb36ab287b0669da636a2044de38a7d2208d5a758/mkdocs_redirects-1.2.2.tar.gz", hash = "sha256:3094981b42ffab29313c2c1b8ac3969861109f58b2dd58c45fc81cd44bfa0095", size = 7162, upload-time = "2024-11-07T14:57:21.109Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/c4/ec/38443b1f2a3821bbcb24e46cd8ba979154417794d54baf949fefde1c2146/mkdocs_redirects-1.2.2-py3-none-any.whl", hash = "sha256:7dbfa5647b79a3589da4401403d69494bd1f4ad03b9c15136720367e1f340ed5", size = 6142, upload-time = "2024-11-07T14:57:19.143Z" }, -] - -[[package]] -name = "mkdocstrings" -version = "0.30.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "jinja2" }, - { name = "markdown" }, - { name = "markupsafe" }, - { name = "mkdocs" }, - { name = "mkdocs-autorefs" }, - { name = "pymdown-extensions" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/e2/0a/7e4776217d4802009c8238c75c5345e23014a4706a8414a62c0498858183/mkdocstrings-0.30.0.tar.gz", hash = "sha256:5d8019b9c31ddacd780b6784ffcdd6f21c408f34c0bd1103b5351d609d5b4444", size = 106597, upload-time = "2025-07-22T23:48:45.998Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/de/b4/3c5eac68f31e124a55d255d318c7445840fa1be55e013f507556d6481913/mkdocstrings-0.30.0-py3-none-any.whl", hash = "sha256:ae9e4a0d8c1789697ac776f2e034e2ddd71054ae1cf2c2bb1433ccfd07c226f2", size = 36579, upload-time = "2025-07-22T23:48:44.152Z" }, -] - -[[package]] -name = "mkdocstrings-python" -version = "1.17.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "griffe" }, - { name = "mkdocs-autorefs" }, - { name = "mkdocstrings" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/39/7c/6dfd8ad59c0eebae167168528ed6cad00116f58ef2327686149f7b25d175/mkdocstrings_python-1.17.0.tar.gz", hash = "sha256:c6295962b60542a9c7468a3b515ce8524616ca9f8c1a38c790db4286340ba501", size = 200408, upload-time = "2025-08-14T21:18:14.568Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/bd/ac/b1fcc937f4ecd372f3e857162dea67c45c1e2eedbac80447be516e3372bb/mkdocstrings_python-1.17.0-py3-none-any.whl", hash = "sha256:49903fa355dfecc5ad0b891e78ff5d25d30ffd00846952801bbe8331e123d4b0", size = 124778, upload-time = "2025-08-14T21:18:12.821Z" }, -] - -[[package]] -name = "multitasking" -version = "0.0.12" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/17/0d/74f0293dfd7dcc3837746d0138cbedd60b31701ecc75caec7d3f281feba0/multitasking-0.0.12.tar.gz", hash = "sha256:2fba2fa8ed8c4b85e227c5dd7dc41c7d658de3b6f247927316175a57349b84d1", size = 19984, upload-time = "2025-07-20T21:27:51.636Z" } - -[[package]] -name = "narwhals" -version = "2.2.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/01/8f/6b3d8c19540eaaa50778a8bbbe54e025d3f93aca6cdd5a4de3044c36f83c/narwhals-2.2.0.tar.gz", hash = "sha256:f6a34f2699acabe2c17339c104f0bec28b9f7a55fbc7f8d485d49bea72d12b8a", size = 547070, upload-time = "2025-08-25T07:51:58.904Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/dd/54/1ecca75e51d7da8ca53d1ffa8636ef9077a6eaa31f43ade71360b3e6449a/narwhals-2.2.0-py3-none-any.whl", hash = "sha256:2b5e3d61a486fa4328c286b0c8018b3e781a964947ff725d66ba12f6d5ca3d2a", size = 401021, upload-time = "2025-08-25T07:51:56.97Z" }, -] - -[[package]] -name = "nbclient" -version = "0.10.2" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "jupyter-client" }, - { name = "jupyter-core" }, - { name = "nbformat" }, - { name = "traitlets" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/87/66/7ffd18d58eae90d5721f9f39212327695b749e23ad44b3881744eaf4d9e8/nbclient-0.10.2.tar.gz", hash = "sha256:90b7fc6b810630db87a6d0c2250b1f0ab4cf4d3c27a299b0cde78a4ed3fd9193", size = 62424, upload-time = "2024-12-19T10:32:27.164Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl", hash = "sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d", size = 25434, upload-time = "2024-12-19T10:32:24.139Z" }, -] - -[[package]] -name = "nbconvert" -version = "7.16.6" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "beautifulsoup4" }, - { name = "bleach", extra = ["css"] }, - { name = "defusedxml" }, - { name = "jinja2" }, - { name = "jupyter-core" }, - { name = "jupyterlab-pygments" }, - { name = "markupsafe" }, - { name = "mistune" }, - { name = "nbclient" }, - { name = "nbformat" }, - { name = "packaging" }, - { name = "pandocfilters" }, - { name = "pygments" }, - { name = "traitlets" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/a3/59/f28e15fc47ffb73af68a8d9b47367a8630d76e97ae85ad18271b9db96fdf/nbconvert-7.16.6.tar.gz", hash = "sha256:576a7e37c6480da7b8465eefa66c17844243816ce1ccc372633c6b71c3c0f582", size = 857715, upload-time = "2025-01-28T09:29:14.724Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/cc/9a/cd673b2f773a12c992f41309ef81b99da1690426bd2f96957a7ade0d3ed7/nbconvert-7.16.6-py3-none-any.whl", hash = "sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b", size = 258525, upload-time = "2025-01-28T09:29:12.551Z" }, -] - -[[package]] -name = "nbformat" -version = "5.10.4" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "fastjsonschema" }, - { name = "jsonschema" }, - { name = "jupyter-core" }, - { name = "traitlets" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/6d/fd/91545e604bc3dad7dca9ed03284086039b294c6b3d75c0d2fa45f9e9caf3/nbformat-5.10.4.tar.gz", hash = "sha256:322168b14f937a5d11362988ecac2a4952d3d8e3a2cbeb2319584631226d5b3a", size = 142749, upload-time = "2024-04-04T11:20:37.371Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl", hash = "sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b", size = 78454, upload-time = "2024-04-04T11:20:34.895Z" }, -] - -[[package]] -name = "nest-asyncio" -version = "1.6.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/83/f8/51569ac65d696c8ecbee95938f89d4abf00f47d58d48f6fbabfe8f0baefe/nest_asyncio-1.6.0.tar.gz", hash = "sha256:6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe", size = 7418, upload-time = "2024-01-21T14:25:19.227Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl", hash = "sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c", size = 5195, upload-time = "2024-01-21T14:25:17.223Z" }, -] - -[[package]] -name = "notebook-shim" -version = "0.2.4" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "jupyter-server" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/54/d2/92fa3243712b9a3e8bafaf60aac366da1cada3639ca767ff4b5b3654ec28/notebook_shim-0.2.4.tar.gz", hash = "sha256:b4b2cfa1b65d98307ca24361f5b30fe785b53c3fd07b7a47e89acb5e6ac638cb", size = 13167, upload-time = "2024-02-14T23:35:18.353Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl", hash = "sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef", size = 13307, upload-time = "2024-02-14T23:35:16.286Z" }, -] - -[[package]] -name = "numba" -version = "0.61.2" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "llvmlite" }, - { name = "numpy" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/1c/a0/e21f57604304aa03ebb8e098429222722ad99176a4f979d34af1d1ee80da/numba-0.61.2.tar.gz", hash = "sha256:8750ee147940a6637b80ecf7f95062185ad8726c8c28a2295b8ec1160a196f7d", size = 2820615, upload-time = "2025-04-09T02:58:07.659Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/b4/a0/c6b7b9c615cfa3b98c4c63f4316e3f6b3bbe2387740277006551784218cd/numba-0.61.2-cp312-cp312-macosx_10_14_x86_64.whl", hash = "sha256:34fba9406078bac7ab052efbf0d13939426c753ad72946baaa5bf9ae0ebb8dd2", size = 2776626, upload-time = "2025-04-09T02:57:51.857Z" }, - { url = "https://files.pythonhosted.org/packages/92/4a/fe4e3c2ecad72d88f5f8cd04e7f7cff49e718398a2fac02d2947480a00ca/numba-0.61.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4ddce10009bc097b080fc96876d14c051cc0c7679e99de3e0af59014dab7dfe8", size = 2779287, upload-time = "2025-04-09T02:57:53.658Z" }, - { url = "https://files.pythonhosted.org/packages/9a/2d/e518df036feab381c23a624dac47f8445ac55686ec7f11083655eb707da3/numba-0.61.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:5b1bb509d01f23d70325d3a5a0e237cbc9544dd50e50588bc581ba860c213546", size = 3885928, upload-time = "2025-04-09T02:57:55.206Z" }, - { url = "https://files.pythonhosted.org/packages/10/0f/23cced68ead67b75d77cfcca3df4991d1855c897ee0ff3fe25a56ed82108/numba-0.61.2-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:48a53a3de8f8793526cbe330f2a39fe9a6638efcbf11bd63f3d2f9757ae345cd", size = 3577115, upload-time = "2025-04-09T02:57:56.818Z" }, - { url = "https://files.pythonhosted.org/packages/68/1d/ddb3e704c5a8fb90142bf9dc195c27db02a08a99f037395503bfbc1d14b3/numba-0.61.2-cp312-cp312-win_amd64.whl", hash = "sha256:97cf4f12c728cf77c9c1d7c23707e4d8fb4632b46275f8f3397de33e5877af18", size = 2831929, upload-time = "2025-04-09T02:57:58.45Z" }, - { url = "https://files.pythonhosted.org/packages/0b/f3/0fe4c1b1f2569e8a18ad90c159298d862f96c3964392a20d74fc628aee44/numba-0.61.2-cp313-cp313-macosx_10_14_x86_64.whl", hash = "sha256:3a10a8fc9afac40b1eac55717cece1b8b1ac0b946f5065c89e00bde646b5b154", size = 2771785, upload-time = "2025-04-09T02:57:59.96Z" }, - { url = "https://files.pythonhosted.org/packages/e9/71/91b277d712e46bd5059f8a5866862ed1116091a7cb03bd2704ba8ebe015f/numba-0.61.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:7d3bcada3c9afba3bed413fba45845f2fb9cd0d2b27dd58a1be90257e293d140", size = 2773289, upload-time = "2025-04-09T02:58:01.435Z" }, - { url = "https://files.pythonhosted.org/packages/0d/e0/5ea04e7ad2c39288c0f0f9e8d47638ad70f28e275d092733b5817cf243c9/numba-0.61.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:bdbca73ad81fa196bd53dc12e3aaf1564ae036e0c125f237c7644fe64a4928ab", size = 3893918, upload-time = "2025-04-09T02:58:02.933Z" }, - { url = "https://files.pythonhosted.org/packages/17/58/064f4dcb7d7e9412f16ecf80ed753f92297e39f399c905389688cf950b81/numba-0.61.2-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:5f154aaea625fb32cfbe3b80c5456d514d416fcdf79733dd69c0df3a11348e9e", size = 3584056, upload-time = "2025-04-09T02:58:04.538Z" }, - { url = "https://files.pythonhosted.org/packages/af/a4/6d3a0f2d3989e62a18749e1e9913d5fa4910bbb3e3311a035baea6caf26d/numba-0.61.2-cp313-cp313-win_amd64.whl", hash = "sha256:59321215e2e0ac5fa928a8020ab00b8e57cda8a97384963ac0dfa4d4e6aa54e7", size = 2831846, upload-time = "2025-04-09T02:58:06.125Z" }, -] - -[[package]] -name = "numpy" -version = "2.2.6" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/76/21/7d2a95e4bba9dc13d043ee156a356c0a8f0c6309dff6b21b4d71a073b8a8/numpy-2.2.6.tar.gz", hash = "sha256:e29554e2bef54a90aa5cc07da6ce955accb83f21ab5de01a62c8478897b264fd", size = 20276440, upload-time = "2025-05-17T22:38:04.611Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/82/5d/c00588b6cf18e1da539b45d3598d3557084990dcc4331960c15ee776ee41/numpy-2.2.6-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:41c5a21f4a04fa86436124d388f6ed60a9343a6f767fced1a8a71c3fbca038ff", size = 20875348, upload-time = "2025-05-17T21:34:39.648Z" }, - { url = "https://files.pythonhosted.org/packages/66/ee/560deadcdde6c2f90200450d5938f63a34b37e27ebff162810f716f6a230/numpy-2.2.6-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:de749064336d37e340f640b05f24e9e3dd678c57318c7289d222a8a2f543e90c", size = 14119362, upload-time = "2025-05-17T21:35:01.241Z" }, - { url = "https://files.pythonhosted.org/packages/3c/65/4baa99f1c53b30adf0acd9a5519078871ddde8d2339dc5a7fde80d9d87da/numpy-2.2.6-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:894b3a42502226a1cac872f840030665f33326fc3dac8e57c607905773cdcde3", size = 5084103, upload-time = "2025-05-17T21:35:10.622Z" }, - { url = "https://files.pythonhosted.org/packages/cc/89/e5a34c071a0570cc40c9a54eb472d113eea6d002e9ae12bb3a8407fb912e/numpy-2.2.6-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:71594f7c51a18e728451bb50cc60a3ce4e6538822731b2933209a1f3614e9282", size = 6625382, upload-time = "2025-05-17T21:35:21.414Z" }, - { url = "https://files.pythonhosted.org/packages/f8/35/8c80729f1ff76b3921d5c9487c7ac3de9b2a103b1cd05e905b3090513510/numpy-2.2.6-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f2618db89be1b4e05f7a1a847a9c1c0abd63e63a1607d892dd54668dd92faf87", size = 14018462, upload-time = "2025-05-17T21:35:42.174Z" }, - { url = "https://files.pythonhosted.org/packages/8c/3d/1e1db36cfd41f895d266b103df00ca5b3cbe965184df824dec5c08c6b803/numpy-2.2.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fd83c01228a688733f1ded5201c678f0c53ecc1006ffbc404db9f7a899ac6249", size = 16527618, upload-time = "2025-05-17T21:36:06.711Z" }, - { url = "https://files.pythonhosted.org/packages/61/c6/03ed30992602c85aa3cd95b9070a514f8b3c33e31124694438d88809ae36/numpy-2.2.6-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:37c0ca431f82cd5fa716eca9506aefcabc247fb27ba69c5062a6d3ade8cf8f49", size = 15505511, upload-time = "2025-05-17T21:36:29.965Z" }, - { url = "https://files.pythonhosted.org/packages/b7/25/5761d832a81df431e260719ec45de696414266613c9ee268394dd5ad8236/numpy-2.2.6-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:fe27749d33bb772c80dcd84ae7e8df2adc920ae8297400dabec45f0dedb3f6de", size = 18313783, upload-time = "2025-05-17T21:36:56.883Z" }, - { url = "https://files.pythonhosted.org/packages/57/0a/72d5a3527c5ebffcd47bde9162c39fae1f90138c961e5296491ce778e682/numpy-2.2.6-cp312-cp312-win32.whl", hash = "sha256:4eeaae00d789f66c7a25ac5f34b71a7035bb474e679f410e5e1a94deb24cf2d4", size = 6246506, upload-time = "2025-05-17T21:37:07.368Z" }, - { url = "https://files.pythonhosted.org/packages/36/fa/8c9210162ca1b88529ab76b41ba02d433fd54fecaf6feb70ef9f124683f1/numpy-2.2.6-cp312-cp312-win_amd64.whl", hash = "sha256:c1f9540be57940698ed329904db803cf7a402f3fc200bfe599334c9bd84a40b2", size = 12614190, upload-time = "2025-05-17T21:37:26.213Z" }, - { url = "https://files.pythonhosted.org/packages/f9/5c/6657823f4f594f72b5471f1db1ab12e26e890bb2e41897522d134d2a3e81/numpy-2.2.6-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:0811bb762109d9708cca4d0b13c4f67146e3c3b7cf8d34018c722adb2d957c84", size = 20867828, upload-time = "2025-05-17T21:37:56.699Z" }, - { url = "https://files.pythonhosted.org/packages/dc/9e/14520dc3dadf3c803473bd07e9b2bd1b69bc583cb2497b47000fed2fa92f/numpy-2.2.6-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:287cc3162b6f01463ccd86be154f284d0893d2b3ed7292439ea97eafa8170e0b", size = 14143006, upload-time = "2025-05-17T21:38:18.291Z" }, - { url = "https://files.pythonhosted.org/packages/4f/06/7e96c57d90bebdce9918412087fc22ca9851cceaf5567a45c1f404480e9e/numpy-2.2.6-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:f1372f041402e37e5e633e586f62aa53de2eac8d98cbfb822806ce4bbefcb74d", size = 5076765, upload-time = "2025-05-17T21:38:27.319Z" }, - { url = "https://files.pythonhosted.org/packages/73/ed/63d920c23b4289fdac96ddbdd6132e9427790977d5457cd132f18e76eae0/numpy-2.2.6-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:55a4d33fa519660d69614a9fad433be87e5252f4b03850642f88993f7b2ca566", size = 6617736, upload-time = "2025-05-17T21:38:38.141Z" }, - { url = "https://files.pythonhosted.org/packages/85/c5/e19c8f99d83fd377ec8c7e0cf627a8049746da54afc24ef0a0cb73d5dfb5/numpy-2.2.6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f92729c95468a2f4f15e9bb94c432a9229d0d50de67304399627a943201baa2f", size = 14010719, upload-time = "2025-05-17T21:38:58.433Z" }, - { url = "https://files.pythonhosted.org/packages/19/49/4df9123aafa7b539317bf6d342cb6d227e49f7a35b99c287a6109b13dd93/numpy-2.2.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1bc23a79bfabc5d056d106f9befb8d50c31ced2fbc70eedb8155aec74a45798f", size = 16526072, upload-time = "2025-05-17T21:39:22.638Z" }, - { url = "https://files.pythonhosted.org/packages/b2/6c/04b5f47f4f32f7c2b0e7260442a8cbcf8168b0e1a41ff1495da42f42a14f/numpy-2.2.6-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:e3143e4451880bed956e706a3220b4e5cf6172ef05fcc397f6f36a550b1dd868", size = 15503213, upload-time = "2025-05-17T21:39:45.865Z" }, - { url = "https://files.pythonhosted.org/packages/17/0a/5cd92e352c1307640d5b6fec1b2ffb06cd0dabe7d7b8227f97933d378422/numpy-2.2.6-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:b4f13750ce79751586ae2eb824ba7e1e8dba64784086c98cdbbcc6a42112ce0d", size = 18316632, upload-time = "2025-05-17T21:40:13.331Z" }, - { url = "https://files.pythonhosted.org/packages/f0/3b/5cba2b1d88760ef86596ad0f3d484b1cbff7c115ae2429678465057c5155/numpy-2.2.6-cp313-cp313-win32.whl", hash = "sha256:5beb72339d9d4fa36522fc63802f469b13cdbe4fdab4a288f0c441b74272ebfd", size = 6244532, upload-time = "2025-05-17T21:43:46.099Z" }, - { url = "https://files.pythonhosted.org/packages/cb/3b/d58c12eafcb298d4e6d0d40216866ab15f59e55d148a5658bb3132311fcf/numpy-2.2.6-cp313-cp313-win_amd64.whl", hash = "sha256:b0544343a702fa80c95ad5d3d608ea3599dd54d4632df855e4c8d24eb6ecfa1c", size = 12610885, upload-time = "2025-05-17T21:44:05.145Z" }, - { url = "https://files.pythonhosted.org/packages/6b/9e/4bf918b818e516322db999ac25d00c75788ddfd2d2ade4fa66f1f38097e1/numpy-2.2.6-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:0bca768cd85ae743b2affdc762d617eddf3bcf8724435498a1e80132d04879e6", size = 20963467, upload-time = "2025-05-17T21:40:44Z" }, - { url = "https://files.pythonhosted.org/packages/61/66/d2de6b291507517ff2e438e13ff7b1e2cdbdb7cb40b3ed475377aece69f9/numpy-2.2.6-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:fc0c5673685c508a142ca65209b4e79ed6740a4ed6b2267dbba90f34b0b3cfda", size = 14225144, upload-time = "2025-05-17T21:41:05.695Z" }, - { url = "https://files.pythonhosted.org/packages/e4/25/480387655407ead912e28ba3a820bc69af9adf13bcbe40b299d454ec011f/numpy-2.2.6-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:5bd4fc3ac8926b3819797a7c0e2631eb889b4118a9898c84f585a54d475b7e40", size = 5200217, upload-time = "2025-05-17T21:41:15.903Z" }, - { url = "https://files.pythonhosted.org/packages/aa/4a/6e313b5108f53dcbf3aca0c0f3e9c92f4c10ce57a0a721851f9785872895/numpy-2.2.6-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:fee4236c876c4e8369388054d02d0e9bb84821feb1a64dd59e137e6511a551f8", size = 6712014, upload-time = "2025-05-17T21:41:27.321Z" }, - { url = "https://files.pythonhosted.org/packages/b7/30/172c2d5c4be71fdf476e9de553443cf8e25feddbe185e0bd88b096915bcc/numpy-2.2.6-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e1dda9c7e08dc141e0247a5b8f49cf05984955246a327d4c48bda16821947b2f", size = 14077935, upload-time = "2025-05-17T21:41:49.738Z" }, - { url = "https://files.pythonhosted.org/packages/12/fb/9e743f8d4e4d3c710902cf87af3512082ae3d43b945d5d16563f26ec251d/numpy-2.2.6-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f447e6acb680fd307f40d3da4852208af94afdfab89cf850986c3ca00562f4fa", size = 16600122, upload-time = "2025-05-17T21:42:14.046Z" }, - { url = "https://files.pythonhosted.org/packages/12/75/ee20da0e58d3a66f204f38916757e01e33a9737d0b22373b3eb5a27358f9/numpy-2.2.6-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:389d771b1623ec92636b0786bc4ae56abafad4a4c513d36a55dce14bd9ce8571", size = 15586143, upload-time = "2025-05-17T21:42:37.464Z" }, - { url = "https://files.pythonhosted.org/packages/76/95/bef5b37f29fc5e739947e9ce5179ad402875633308504a52d188302319c8/numpy-2.2.6-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:8e9ace4a37db23421249ed236fdcdd457d671e25146786dfc96835cd951aa7c1", size = 18385260, upload-time = "2025-05-17T21:43:05.189Z" }, - { url = "https://files.pythonhosted.org/packages/09/04/f2f83279d287407cf36a7a8053a5abe7be3622a4363337338f2585e4afda/numpy-2.2.6-cp313-cp313t-win32.whl", hash = "sha256:038613e9fb8c72b0a41f025a7e4c3f0b7a1b5d768ece4796b674c8f3fe13efff", size = 6377225, upload-time = "2025-05-17T21:43:16.254Z" }, - { url = "https://files.pythonhosted.org/packages/67/0e/35082d13c09c02c011cf21570543d202ad929d961c02a147493cb0c2bdf5/numpy-2.2.6-cp313-cp313t-win_amd64.whl", hash = "sha256:6031dd6dfecc0cf9f668681a37648373bddd6421fff6c66ec1624eed0180ee06", size = 12771374, upload-time = "2025-05-17T21:43:35.479Z" }, -] - -[[package]] -name = "packaging" -version = "25.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/a1/d4/1fc4078c65507b51b96ca8f8c3ba19e6a61c8253c72794544580a7b6c24d/packaging-25.0.tar.gz", hash = "sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f", size = 165727, upload-time = "2025-04-19T11:48:59.673Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl", hash = "sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484", size = 66469, upload-time = "2025-04-19T11:48:57.875Z" }, -] - -[[package]] -name = "paginate" -version = "0.5.7" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/ec/46/68dde5b6bc00c1296ec6466ab27dddede6aec9af1b99090e1107091b3b84/paginate-0.5.7.tar.gz", hash = "sha256:22bd083ab41e1a8b4f3690544afb2c60c25e5c9a63a30fa2f483f6c60c8e5945", size = 19252, upload-time = "2024-08-25T14:17:24.139Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/90/96/04b8e52da071d28f5e21a805b19cb9390aa17a47462ac87f5e2696b9566d/paginate-0.5.7-py2.py3-none-any.whl", hash = "sha256:b885e2af73abcf01d9559fd5216b57ef722f8c42affbb63942377668e35c7591", size = 13746, upload-time = "2024-08-25T14:17:22.55Z" }, -] - -[[package]] -name = "pandas" -version = "2.3.2" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "numpy" }, - { name = "python-dateutil" }, - { name = "pytz" }, - { name = "tzdata" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/79/8e/0e90233ac205ad182bd6b422532695d2b9414944a280488105d598c70023/pandas-2.3.2.tar.gz", hash = "sha256:ab7b58f8f82706890924ccdfb5f48002b83d2b5a3845976a9fb705d36c34dcdb", size = 4488684, upload-time = "2025-08-21T10:28:29.257Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/ec/db/614c20fb7a85a14828edd23f1c02db58a30abf3ce76f38806155d160313c/pandas-2.3.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:3fbb977f802156e7a3f829e9d1d5398f6192375a3e2d1a9ee0803e35fe70a2b9", size = 11587652, upload-time = "2025-08-21T10:27:15.888Z" }, - { url = "https://files.pythonhosted.org/packages/99/b0/756e52f6582cade5e746f19bad0517ff27ba9c73404607c0306585c201b3/pandas-2.3.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:1b9b52693123dd234b7c985c68b709b0b009f4521000d0525f2b95c22f15944b", size = 10717686, upload-time = "2025-08-21T10:27:18.486Z" }, - { url = "https://files.pythonhosted.org/packages/37/4c/dd5ccc1e357abfeee8353123282de17997f90ff67855f86154e5a13b81e5/pandas-2.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0bd281310d4f412733f319a5bc552f86d62cddc5f51d2e392c8787335c994175", size = 11278722, upload-time = "2025-08-21T10:27:21.149Z" }, - { url = "https://files.pythonhosted.org/packages/d3/a4/f7edcfa47e0a88cda0be8b068a5bae710bf264f867edfdf7b71584ace362/pandas-2.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:96d31a6b4354e3b9b8a2c848af75d31da390657e3ac6f30c05c82068b9ed79b9", size = 11987803, upload-time = "2025-08-21T10:27:23.767Z" }, - { url = "https://files.pythonhosted.org/packages/f6/61/1bce4129f93ab66f1c68b7ed1c12bac6a70b1b56c5dab359c6bbcd480b52/pandas-2.3.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:df4df0b9d02bb873a106971bb85d448378ef14b86ba96f035f50bbd3688456b4", size = 12766345, upload-time = "2025-08-21T10:27:26.6Z" }, - { url = "https://files.pythonhosted.org/packages/8e/46/80d53de70fee835531da3a1dae827a1e76e77a43ad22a8cd0f8142b61587/pandas-2.3.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:213a5adf93d020b74327cb2c1b842884dbdd37f895f42dcc2f09d451d949f811", size = 13439314, upload-time = "2025-08-21T10:27:29.213Z" }, - { url = "https://files.pythonhosted.org/packages/28/30/8114832daff7489f179971dbc1d854109b7f4365a546e3ea75b6516cea95/pandas-2.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:8c13b81a9347eb8c7548f53fd9a4f08d4dfe996836543f805c987bafa03317ae", size = 10983326, upload-time = "2025-08-21T10:27:31.901Z" }, - { url = "https://files.pythonhosted.org/packages/27/64/a2f7bf678af502e16b472527735d168b22b7824e45a4d7e96a4fbb634b59/pandas-2.3.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:0c6ecbac99a354a051ef21c5307601093cb9e0f4b1855984a084bfec9302699e", size = 11531061, upload-time = "2025-08-21T10:27:34.647Z" }, - { url = "https://files.pythonhosted.org/packages/54/4c/c3d21b2b7769ef2f4c2b9299fcadd601efa6729f1357a8dbce8dd949ed70/pandas-2.3.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:c6f048aa0fd080d6a06cc7e7537c09b53be6642d330ac6f54a600c3ace857ee9", size = 10668666, upload-time = "2025-08-21T10:27:37.203Z" }, - { url = "https://files.pythonhosted.org/packages/50/e2/f775ba76ecfb3424d7f5862620841cf0edb592e9abd2d2a5387d305fe7a8/pandas-2.3.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0064187b80a5be6f2f9c9d6bdde29372468751dfa89f4211a3c5871854cfbf7a", size = 11332835, upload-time = "2025-08-21T10:27:40.188Z" }, - { url = "https://files.pythonhosted.org/packages/8f/52/0634adaace9be2d8cac9ef78f05c47f3a675882e068438b9d7ec7ef0c13f/pandas-2.3.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4ac8c320bded4718b298281339c1a50fb00a6ba78cb2a63521c39bec95b0209b", size = 12057211, upload-time = "2025-08-21T10:27:43.117Z" }, - { url = "https://files.pythonhosted.org/packages/0b/9d/2df913f14b2deb9c748975fdb2491da1a78773debb25abbc7cbc67c6b549/pandas-2.3.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:114c2fe4f4328cf98ce5716d1532f3ab79c5919f95a9cfee81d9140064a2e4d6", size = 12749277, upload-time = "2025-08-21T10:27:45.474Z" }, - { url = "https://files.pythonhosted.org/packages/87/af/da1a2417026bd14d98c236dba88e39837182459d29dcfcea510b2ac9e8a1/pandas-2.3.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:48fa91c4dfb3b2b9bfdb5c24cd3567575f4e13f9636810462ffed8925352be5a", size = 13415256, upload-time = "2025-08-21T10:27:49.885Z" }, - { url = "https://files.pythonhosted.org/packages/22/3c/f2af1ce8840ef648584a6156489636b5692c162771918aa95707c165ad2b/pandas-2.3.2-cp313-cp313-win_amd64.whl", hash = "sha256:12d039facec710f7ba305786837d0225a3444af7bbd9c15c32ca2d40d157ed8b", size = 10982579, upload-time = "2025-08-21T10:28:08.435Z" }, - { url = "https://files.pythonhosted.org/packages/f3/98/8df69c4097a6719e357dc249bf437b8efbde808038268e584421696cbddf/pandas-2.3.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:c624b615ce97864eb588779ed4046186f967374185c047070545253a52ab2d57", size = 12028163, upload-time = "2025-08-21T10:27:52.232Z" }, - { url = "https://files.pythonhosted.org/packages/0e/23/f95cbcbea319f349e10ff90db488b905c6883f03cbabd34f6b03cbc3c044/pandas-2.3.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:0cee69d583b9b128823d9514171cabb6861e09409af805b54459bd0c821a35c2", size = 11391860, upload-time = "2025-08-21T10:27:54.673Z" }, - { url = "https://files.pythonhosted.org/packages/ad/1b/6a984e98c4abee22058aa75bfb8eb90dce58cf8d7296f8bc56c14bc330b0/pandas-2.3.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2319656ed81124982900b4c37f0e0c58c015af9a7bbc62342ba5ad07ace82ba9", size = 11309830, upload-time = "2025-08-21T10:27:56.957Z" }, - { url = "https://files.pythonhosted.org/packages/15/d5/f0486090eb18dd8710bf60afeaf638ba6817047c0c8ae5c6a25598665609/pandas-2.3.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b37205ad6f00d52f16b6d09f406434ba928c1a1966e2771006a9033c736d30d2", size = 11883216, upload-time = "2025-08-21T10:27:59.302Z" }, - { url = "https://files.pythonhosted.org/packages/10/86/692050c119696da19e20245bbd650d8dfca6ceb577da027c3a73c62a047e/pandas-2.3.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:837248b4fc3a9b83b9c6214699a13f069dc13510a6a6d7f9ba33145d2841a012", size = 12699743, upload-time = "2025-08-21T10:28:02.447Z" }, - { url = "https://files.pythonhosted.org/packages/cd/d7/612123674d7b17cf345aad0a10289b2a384bff404e0463a83c4a3a59d205/pandas-2.3.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:d2c3554bd31b731cd6490d94a28f3abb8dd770634a9e06eb6d2911b9827db370", size = 13186141, upload-time = "2025-08-21T10:28:05.377Z" }, -] - -[[package]] -name = "pandas-ta" -version = "0.4.71b0" -source = { editable = "." } -dependencies = [ - { name = "numba" }, - { name = "numpy" }, - { name = "pandas" }, - { name = "tqdm" }, -] - -[package.dev-dependencies] -dev = [ - { name = "bokeh" }, - { name = "cryptography" }, - { name = "ipython" }, - { name = "jupyterlab" }, - { name = "matplotlib" }, - { name = "pytest" }, - { name = "requests" }, - { name = "ta-lib" }, - { name = "yfinance" }, -] -docs = [ - { name = "mkdocs" }, - { name = "mkdocs-include-markdown-plugin" }, - { name = "mkdocs-macros-plugin" }, - { name = "mkdocs-material" }, - { name = "mkdocs-minify-plugin" }, - { name = "mkdocs-plotly-plugin" }, - { name = "mkdocs-redirects" }, - { name = "mkdocstrings-python" }, - { name = "ruff" }, -] - -[package.metadata] -requires-dist = [ - { name = "numba", specifier = "==0.61.2" }, - { name = "numpy", specifier = ">=2.2.6" }, - { name = "pandas", specifier = ">=2.3.2" }, - { name = "tqdm", specifier = ">=4.67.1" }, -] - -[package.metadata.requires-dev] -dev = [ - { name = "bokeh", specifier = ">=3.7.3" }, - { name = "cryptography", specifier = ">=45.0.6" }, - { name = "ipython", specifier = ">=9.4.0" }, - { name = "jupyterlab", specifier = ">=4.4.6" }, - { name = "matplotlib", specifier = ">=3.10.5" }, - { name = "pytest", specifier = ">=8.4.1" }, - { name = "requests", specifier = ">=2.32.5" }, - { name = "ta-lib", specifier = "==0.6.4" }, - { name = "yfinance", specifier = ">=0.2.65" }, -] -docs = [ - { name = "mkdocs", specifier = ">=1.6.1" }, - { name = "mkdocs-include-markdown-plugin", specifier = ">=7.1.6" }, - { name = "mkdocs-macros-plugin", specifier = ">=1.3.9" }, - { name = "mkdocs-material", specifier = ">=9.6.18" }, - { name = "mkdocs-minify-plugin", specifier = ">=0.8.0" }, - { name = "mkdocs-plotly-plugin", specifier = ">=0.1.3" }, - { name = "mkdocs-redirects", specifier = ">=1.2.2" }, - { name = "mkdocstrings-python", specifier = ">=1.17.0" }, - { name = "ruff", specifier = ">=0.12.10" }, -] - -[[package]] -name = "pandocfilters" -version = "1.5.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/70/6f/3dd4940bbe001c06a65f88e36bad298bc7a0de5036115639926b0c5c0458/pandocfilters-1.5.1.tar.gz", hash = "sha256:002b4a555ee4ebc03f8b66307e287fa492e4a77b4ea14d3f934328297bb4939e", size = 8454, upload-time = "2024-01-18T20:08:13.726Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl", hash = "sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc", size = 8663, upload-time = "2024-01-18T20:08:11.28Z" }, -] - -[[package]] -name = "parso" -version = "0.8.5" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/d4/de/53e0bcf53d13e005bd8c92e7855142494f41171b34c2536b86187474184d/parso-0.8.5.tar.gz", hash = "sha256:034d7354a9a018bdce352f48b2a8a450f05e9d6ee85db84764e9b6bd96dafe5a", size = 401205, upload-time = "2025-08-23T15:15:28.028Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/16/32/f8e3c85d1d5250232a5d3477a2a28cc291968ff175caeadaf3cc19ce0e4a/parso-0.8.5-py2.py3-none-any.whl", hash = "sha256:646204b5ee239c396d040b90f9e272e9a8017c630092bf59980beb62fd033887", size = 106668, upload-time = "2025-08-23T15:15:25.663Z" }, -] - -[[package]] -name = "pathspec" -version = "0.12.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/ca/bc/f35b8446f4531a7cb215605d100cd88b7ac6f44ab3fc94870c120ab3adbf/pathspec-0.12.1.tar.gz", hash = "sha256:a482d51503a1ab33b1c67a6c3813a26953dbdc71c31dacaef9a838c4e29f5712", size = 51043, upload-time = "2023-12-10T22:30:45Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl", hash = "sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08", size = 31191, upload-time = "2023-12-10T22:30:43.14Z" }, -] - -[[package]] -name = "peewee" -version = "3.18.2" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/04/89/76f6f1b744c8608e0d416b588b9d63c2a500ff800065ae610f7c80f532d6/peewee-3.18.2.tar.gz", hash = "sha256:77a54263eb61aff2ea72f63d2eeb91b140c25c1884148e28e4c0f7c4f64996a0", size = 949220, upload-time = "2025-07-08T12:52:03.941Z" } - -[[package]] -name = "pexpect" -version = "4.9.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "ptyprocess" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/42/92/cc564bf6381ff43ce1f4d06852fc19a2f11d180f23dc32d9588bee2f149d/pexpect-4.9.0.tar.gz", hash = "sha256:ee7d41123f3c9911050ea2c2dac107568dc43b2d3b0c7557a33212c398ead30f", size = 166450, upload-time = "2023-11-25T09:07:26.339Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl", hash = "sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523", size = 63772, upload-time = "2023-11-25T06:56:14.81Z" }, -] - -[[package]] -name = "pillow" -version = "11.3.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/f3/0d/d0d6dea55cd152ce3d6767bb38a8fc10e33796ba4ba210cbab9354b6d238/pillow-11.3.0.tar.gz", hash = "sha256:3828ee7586cd0b2091b6209e5ad53e20d0649bbe87164a459d0676e035e8f523", size = 47113069, upload-time = "2025-07-01T09:16:30.666Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/40/fe/1bc9b3ee13f68487a99ac9529968035cca2f0a51ec36892060edcc51d06a/pillow-11.3.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:fdae223722da47b024b867c1ea0be64e0df702c5e0a60e27daad39bf960dd1e4", size = 5278800, upload-time = "2025-07-01T09:14:17.648Z" }, - { url = "https://files.pythonhosted.org/packages/2c/32/7e2ac19b5713657384cec55f89065fb306b06af008cfd87e572035b27119/pillow-11.3.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:921bd305b10e82b4d1f5e802b6850677f965d8394203d182f078873851dada69", size = 4686296, upload-time = "2025-07-01T09:14:19.828Z" }, - { url = "https://files.pythonhosted.org/packages/8e/1e/b9e12bbe6e4c2220effebc09ea0923a07a6da1e1f1bfbc8d7d29a01ce32b/pillow-11.3.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:eb76541cba2f958032d79d143b98a3a6b3ea87f0959bbe256c0b5e416599fd5d", size = 5871726, upload-time = "2025-07-03T13:10:04.448Z" }, - { url = "https://files.pythonhosted.org/packages/8d/33/e9200d2bd7ba00dc3ddb78df1198a6e80d7669cce6c2bdbeb2530a74ec58/pillow-11.3.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:67172f2944ebba3d4a7b54f2e95c786a3a50c21b88456329314caaa28cda70f6", size = 7644652, upload-time = "2025-07-03T13:10:10.391Z" }, - { url = "https://files.pythonhosted.org/packages/41/f1/6f2427a26fc683e00d985bc391bdd76d8dd4e92fac33d841127eb8fb2313/pillow-11.3.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:97f07ed9f56a3b9b5f49d3661dc9607484e85c67e27f3e8be2c7d28ca032fec7", size = 5977787, upload-time = "2025-07-01T09:14:21.63Z" }, - { url = "https://files.pythonhosted.org/packages/e4/c9/06dd4a38974e24f932ff5f98ea3c546ce3f8c995d3f0985f8e5ba48bba19/pillow-11.3.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:676b2815362456b5b3216b4fd5bd89d362100dc6f4945154ff172e206a22c024", size = 6645236, upload-time = "2025-07-01T09:14:23.321Z" }, - { url = "https://files.pythonhosted.org/packages/40/e7/848f69fb79843b3d91241bad658e9c14f39a32f71a301bcd1d139416d1be/pillow-11.3.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:3e184b2f26ff146363dd07bde8b711833d7b0202e27d13540bfe2e35a323a809", size = 6086950, upload-time = "2025-07-01T09:14:25.237Z" }, - { url = "https://files.pythonhosted.org/packages/0b/1a/7cff92e695a2a29ac1958c2a0fe4c0b2393b60aac13b04a4fe2735cad52d/pillow-11.3.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:6be31e3fc9a621e071bc17bb7de63b85cbe0bfae91bb0363c893cbe67247780d", size = 6723358, upload-time = "2025-07-01T09:14:27.053Z" }, - { url = "https://files.pythonhosted.org/packages/26/7d/73699ad77895f69edff76b0f332acc3d497f22f5d75e5360f78cbcaff248/pillow-11.3.0-cp312-cp312-win32.whl", hash = "sha256:7b161756381f0918e05e7cb8a371fff367e807770f8fe92ecb20d905d0e1c149", size = 6275079, upload-time = "2025-07-01T09:14:30.104Z" }, - { url = "https://files.pythonhosted.org/packages/8c/ce/e7dfc873bdd9828f3b6e5c2bbb74e47a98ec23cc5c74fc4e54462f0d9204/pillow-11.3.0-cp312-cp312-win_amd64.whl", hash = "sha256:a6444696fce635783440b7f7a9fc24b3ad10a9ea3f0ab66c5905be1c19ccf17d", size = 6986324, upload-time = "2025-07-01T09:14:31.899Z" }, - { url = "https://files.pythonhosted.org/packages/16/8f/b13447d1bf0b1f7467ce7d86f6e6edf66c0ad7cf44cf5c87a37f9bed9936/pillow-11.3.0-cp312-cp312-win_arm64.whl", hash = "sha256:2aceea54f957dd4448264f9bf40875da0415c83eb85f55069d89c0ed436e3542", size = 2423067, upload-time = "2025-07-01T09:14:33.709Z" }, - { url = "https://files.pythonhosted.org/packages/1e/93/0952f2ed8db3a5a4c7a11f91965d6184ebc8cd7cbb7941a260d5f018cd2d/pillow-11.3.0-cp313-cp313-ios_13_0_arm64_iphoneos.whl", hash = "sha256:1c627742b539bba4309df89171356fcb3cc5a9178355b2727d1b74a6cf155fbd", size = 2128328, upload-time = "2025-07-01T09:14:35.276Z" }, - { url = "https://files.pythonhosted.org/packages/4b/e8/100c3d114b1a0bf4042f27e0f87d2f25e857e838034e98ca98fe7b8c0a9c/pillow-11.3.0-cp313-cp313-ios_13_0_arm64_iphonesimulator.whl", hash = "sha256:30b7c02f3899d10f13d7a48163c8969e4e653f8b43416d23d13d1bbfdc93b9f8", size = 2170652, upload-time = "2025-07-01T09:14:37.203Z" }, - { url = "https://files.pythonhosted.org/packages/aa/86/3f758a28a6e381758545f7cdb4942e1cb79abd271bea932998fc0db93cb6/pillow-11.3.0-cp313-cp313-ios_13_0_x86_64_iphonesimulator.whl", hash = "sha256:7859a4cc7c9295f5838015d8cc0a9c215b77e43d07a25e460f35cf516df8626f", size = 2227443, upload-time = "2025-07-01T09:14:39.344Z" }, - { url = "https://files.pythonhosted.org/packages/01/f4/91d5b3ffa718df2f53b0dc109877993e511f4fd055d7e9508682e8aba092/pillow-11.3.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:ec1ee50470b0d050984394423d96325b744d55c701a439d2bd66089bff963d3c", size = 5278474, upload-time = "2025-07-01T09:14:41.843Z" }, - { url = "https://files.pythonhosted.org/packages/f9/0e/37d7d3eca6c879fbd9dba21268427dffda1ab00d4eb05b32923d4fbe3b12/pillow-11.3.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:7db51d222548ccfd274e4572fdbf3e810a5e66b00608862f947b163e613b67dd", size = 4686038, upload-time = "2025-07-01T09:14:44.008Z" }, - { url = "https://files.pythonhosted.org/packages/ff/b0/3426e5c7f6565e752d81221af9d3676fdbb4f352317ceafd42899aaf5d8a/pillow-11.3.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:2d6fcc902a24ac74495df63faad1884282239265c6839a0a6416d33faedfae7e", size = 5864407, upload-time = "2025-07-03T13:10:15.628Z" }, - { url = "https://files.pythonhosted.org/packages/fc/c1/c6c423134229f2a221ee53f838d4be9d82bab86f7e2f8e75e47b6bf6cd77/pillow-11.3.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:f0f5d8f4a08090c6d6d578351a2b91acf519a54986c055af27e7a93feae6d3f1", size = 7639094, upload-time = "2025-07-03T13:10:21.857Z" }, - { url = "https://files.pythonhosted.org/packages/ba/c9/09e6746630fe6372c67c648ff9deae52a2bc20897d51fa293571977ceb5d/pillow-11.3.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c37d8ba9411d6003bba9e518db0db0c58a680ab9fe5179f040b0463644bc9805", size = 5973503, upload-time = "2025-07-01T09:14:45.698Z" }, - { url = "https://files.pythonhosted.org/packages/d5/1c/a2a29649c0b1983d3ef57ee87a66487fdeb45132df66ab30dd37f7dbe162/pillow-11.3.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:13f87d581e71d9189ab21fe0efb5a23e9f28552d5be6979e84001d3b8505abe8", size = 6642574, upload-time = "2025-07-01T09:14:47.415Z" }, - { url = "https://files.pythonhosted.org/packages/36/de/d5cc31cc4b055b6c6fd990e3e7f0f8aaf36229a2698501bcb0cdf67c7146/pillow-11.3.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:023f6d2d11784a465f09fd09a34b150ea4672e85fb3d05931d89f373ab14abb2", size = 6084060, upload-time = "2025-07-01T09:14:49.636Z" }, - { url = "https://files.pythonhosted.org/packages/d5/ea/502d938cbaeec836ac28a9b730193716f0114c41325db428e6b280513f09/pillow-11.3.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:45dfc51ac5975b938e9809451c51734124e73b04d0f0ac621649821a63852e7b", size = 6721407, upload-time = "2025-07-01T09:14:51.962Z" }, - { url = "https://files.pythonhosted.org/packages/45/9c/9c5e2a73f125f6cbc59cc7087c8f2d649a7ae453f83bd0362ff7c9e2aee2/pillow-11.3.0-cp313-cp313-win32.whl", hash = "sha256:a4d336baed65d50d37b88ca5b60c0fa9d81e3a87d4a7930d3880d1624d5b31f3", size = 6273841, upload-time = "2025-07-01T09:14:54.142Z" }, - { url = "https://files.pythonhosted.org/packages/23/85/397c73524e0cd212067e0c969aa245b01d50183439550d24d9f55781b776/pillow-11.3.0-cp313-cp313-win_amd64.whl", hash = "sha256:0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51", size = 6978450, upload-time = "2025-07-01T09:14:56.436Z" }, - { url = "https://files.pythonhosted.org/packages/17/d2/622f4547f69cd173955194b78e4d19ca4935a1b0f03a302d655c9f6aae65/pillow-11.3.0-cp313-cp313-win_arm64.whl", hash = "sha256:1904e1264881f682f02b7f8167935cce37bc97db457f8e7849dc3a6a52b99580", size = 2423055, upload-time = "2025-07-01T09:14:58.072Z" }, - { url = "https://files.pythonhosted.org/packages/dd/80/a8a2ac21dda2e82480852978416cfacd439a4b490a501a288ecf4fe2532d/pillow-11.3.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:4c834a3921375c48ee6b9624061076bc0a32a60b5532b322cc0ea64e639dd50e", size = 5281110, upload-time = "2025-07-01T09:14:59.79Z" }, - { url = "https://files.pythonhosted.org/packages/44/d6/b79754ca790f315918732e18f82a8146d33bcd7f4494380457ea89eb883d/pillow-11.3.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:5e05688ccef30ea69b9317a9ead994b93975104a677a36a8ed8106be9260aa6d", size = 4689547, upload-time = "2025-07-01T09:15:01.648Z" }, - { url = "https://files.pythonhosted.org/packages/49/20/716b8717d331150cb00f7fdd78169c01e8e0c219732a78b0e59b6bdb2fd6/pillow-11.3.0-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:1019b04af07fc0163e2810167918cb5add8d74674b6267616021ab558dc98ced", size = 5901554, upload-time = "2025-07-03T13:10:27.018Z" }, - { url = "https://files.pythonhosted.org/packages/74/cf/a9f3a2514a65bb071075063a96f0a5cf949c2f2fce683c15ccc83b1c1cab/pillow-11.3.0-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:f944255db153ebb2b19c51fe85dd99ef0ce494123f21b9db4877ffdfc5590c7c", size = 7669132, upload-time = "2025-07-03T13:10:33.01Z" }, - { url = "https://files.pythonhosted.org/packages/98/3c/da78805cbdbee9cb43efe8261dd7cc0b4b93f2ac79b676c03159e9db2187/pillow-11.3.0-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1f85acb69adf2aaee8b7da124efebbdb959a104db34d3a2cb0f3793dbae422a8", size = 6005001, upload-time = "2025-07-01T09:15:03.365Z" }, - { url = "https://files.pythonhosted.org/packages/6c/fa/ce044b91faecf30e635321351bba32bab5a7e034c60187fe9698191aef4f/pillow-11.3.0-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:05f6ecbeff5005399bb48d198f098a9b4b6bdf27b8487c7f38ca16eeb070cd59", size = 6668814, upload-time = "2025-07-01T09:15:05.655Z" }, - { url = "https://files.pythonhosted.org/packages/7b/51/90f9291406d09bf93686434f9183aba27b831c10c87746ff49f127ee80cb/pillow-11.3.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:a7bc6e6fd0395bc052f16b1a8670859964dbd7003bd0af2ff08342eb6e442cfe", size = 6113124, upload-time = "2025-07-01T09:15:07.358Z" }, - { url = "https://files.pythonhosted.org/packages/cd/5a/6fec59b1dfb619234f7636d4157d11fb4e196caeee220232a8d2ec48488d/pillow-11.3.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:83e1b0161c9d148125083a35c1c5a89db5b7054834fd4387499e06552035236c", size = 6747186, upload-time = "2025-07-01T09:15:09.317Z" }, - { url = "https://files.pythonhosted.org/packages/49/6b/00187a044f98255225f172de653941e61da37104a9ea60e4f6887717e2b5/pillow-11.3.0-cp313-cp313t-win32.whl", hash = "sha256:2a3117c06b8fb646639dce83694f2f9eac405472713fcb1ae887469c0d4f6788", size = 6277546, upload-time = "2025-07-01T09:15:11.311Z" }, - { url = "https://files.pythonhosted.org/packages/e8/5c/6caaba7e261c0d75bab23be79f1d06b5ad2a2ae49f028ccec801b0e853d6/pillow-11.3.0-cp313-cp313t-win_amd64.whl", hash = "sha256:857844335c95bea93fb39e0fa2726b4d9d758850b34075a7e3ff4f4fa3aa3b31", size = 6985102, upload-time = "2025-07-01T09:15:13.164Z" }, - { url = "https://files.pythonhosted.org/packages/f3/7e/b623008460c09a0cb38263c93b828c666493caee2eb34ff67f778b87e58c/pillow-11.3.0-cp313-cp313t-win_arm64.whl", hash = "sha256:8797edc41f3e8536ae4b10897ee2f637235c94f27404cac7297f7b607dd0716e", size = 2424803, upload-time = "2025-07-01T09:15:15.695Z" }, - { url = "https://files.pythonhosted.org/packages/73/f4/04905af42837292ed86cb1b1dabe03dce1edc008ef14c473c5c7e1443c5d/pillow-11.3.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:d9da3df5f9ea2a89b81bb6087177fb1f4d1c7146d583a3fe5c672c0d94e55e12", size = 5278520, upload-time = "2025-07-01T09:15:17.429Z" }, - { url = "https://files.pythonhosted.org/packages/41/b0/33d79e377a336247df6348a54e6d2a2b85d644ca202555e3faa0cf811ecc/pillow-11.3.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:0b275ff9b04df7b640c59ec5a3cb113eefd3795a8df80bac69646ef699c6981a", size = 4686116, upload-time = "2025-07-01T09:15:19.423Z" }, - { url = "https://files.pythonhosted.org/packages/49/2d/ed8bc0ab219ae8768f529597d9509d184fe8a6c4741a6864fea334d25f3f/pillow-11.3.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:0743841cabd3dba6a83f38a92672cccbd69af56e3e91777b0ee7f4dba4385632", size = 5864597, upload-time = "2025-07-03T13:10:38.404Z" }, - { url = "https://files.pythonhosted.org/packages/b5/3d/b932bb4225c80b58dfadaca9d42d08d0b7064d2d1791b6a237f87f661834/pillow-11.3.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:2465a69cf967b8b49ee1b96d76718cd98c4e925414ead59fdf75cf0fd07df673", size = 7638246, upload-time = "2025-07-03T13:10:44.987Z" }, - { url = "https://files.pythonhosted.org/packages/09/b5/0487044b7c096f1b48f0d7ad416472c02e0e4bf6919541b111efd3cae690/pillow-11.3.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:41742638139424703b4d01665b807c6468e23e699e8e90cffefe291c5832b027", size = 5973336, upload-time = "2025-07-01T09:15:21.237Z" }, - { url = "https://files.pythonhosted.org/packages/a8/2d/524f9318f6cbfcc79fbc004801ea6b607ec3f843977652fdee4857a7568b/pillow-11.3.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:93efb0b4de7e340d99057415c749175e24c8864302369e05914682ba642e5d77", size = 6642699, upload-time = "2025-07-01T09:15:23.186Z" }, - { url = "https://files.pythonhosted.org/packages/6f/d2/a9a4f280c6aefedce1e8f615baaa5474e0701d86dd6f1dede66726462bbd/pillow-11.3.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:7966e38dcd0fa11ca390aed7c6f20454443581d758242023cf36fcb319b1a874", size = 6083789, upload-time = "2025-07-01T09:15:25.1Z" }, - { url = "https://files.pythonhosted.org/packages/fe/54/86b0cd9dbb683a9d5e960b66c7379e821a19be4ac5810e2e5a715c09a0c0/pillow-11.3.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:98a9afa7b9007c67ed84c57c9e0ad86a6000da96eaa638e4f8abe5b65ff83f0a", size = 6720386, upload-time = "2025-07-01T09:15:27.378Z" }, - { url = "https://files.pythonhosted.org/packages/e7/95/88efcaf384c3588e24259c4203b909cbe3e3c2d887af9e938c2022c9dd48/pillow-11.3.0-cp314-cp314-win32.whl", hash = "sha256:02a723e6bf909e7cea0dac1b0e0310be9d7650cd66222a5f1c571455c0a45214", size = 6370911, upload-time = "2025-07-01T09:15:29.294Z" }, - { url = "https://files.pythonhosted.org/packages/2e/cc/934e5820850ec5eb107e7b1a72dd278140731c669f396110ebc326f2a503/pillow-11.3.0-cp314-cp314-win_amd64.whl", hash = "sha256:a418486160228f64dd9e9efcd132679b7a02a5f22c982c78b6fc7dab3fefb635", size = 7117383, upload-time = "2025-07-01T09:15:31.128Z" }, - { url = "https://files.pythonhosted.org/packages/d6/e9/9c0a616a71da2a5d163aa37405e8aced9a906d574b4a214bede134e731bc/pillow-11.3.0-cp314-cp314-win_arm64.whl", hash = "sha256:155658efb5e044669c08896c0c44231c5e9abcaadbc5cd3648df2f7c0b96b9a6", size = 2511385, upload-time = "2025-07-01T09:15:33.328Z" }, - { url = "https://files.pythonhosted.org/packages/1a/33/c88376898aff369658b225262cd4f2659b13e8178e7534df9e6e1fa289f6/pillow-11.3.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:59a03cdf019efbfeeed910bf79c7c93255c3d54bc45898ac2a4140071b02b4ae", size = 5281129, upload-time = "2025-07-01T09:15:35.194Z" }, - { url = "https://files.pythonhosted.org/packages/1f/70/d376247fb36f1844b42910911c83a02d5544ebd2a8bad9efcc0f707ea774/pillow-11.3.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:f8a5827f84d973d8636e9dc5764af4f0cf2318d26744b3d902931701b0d46653", size = 4689580, upload-time = "2025-07-01T09:15:37.114Z" }, - { url = "https://files.pythonhosted.org/packages/eb/1c/537e930496149fbac69efd2fc4329035bbe2e5475b4165439e3be9cb183b/pillow-11.3.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:ee92f2fd10f4adc4b43d07ec5e779932b4eb3dbfbc34790ada5a6669bc095aa6", size = 5902860, upload-time = "2025-07-03T13:10:50.248Z" }, - { url = "https://files.pythonhosted.org/packages/bd/57/80f53264954dcefeebcf9dae6e3eb1daea1b488f0be8b8fef12f79a3eb10/pillow-11.3.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:c96d333dcf42d01f47b37e0979b6bd73ec91eae18614864622d9b87bbd5bbf36", size = 7670694, upload-time = "2025-07-03T13:10:56.432Z" }, - { url = "https://files.pythonhosted.org/packages/70/ff/4727d3b71a8578b4587d9c276e90efad2d6fe0335fd76742a6da08132e8c/pillow-11.3.0-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4c96f993ab8c98460cd0c001447bff6194403e8b1d7e149ade5f00594918128b", size = 6005888, upload-time = "2025-07-01T09:15:39.436Z" }, - { url = "https://files.pythonhosted.org/packages/05/ae/716592277934f85d3be51d7256f3636672d7b1abfafdc42cf3f8cbd4b4c8/pillow-11.3.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:41342b64afeba938edb034d122b2dda5db2139b9a4af999729ba8818e0056477", size = 6670330, upload-time = "2025-07-01T09:15:41.269Z" }, - { url = "https://files.pythonhosted.org/packages/e7/bb/7fe6cddcc8827b01b1a9766f5fdeb7418680744f9082035bdbabecf1d57f/pillow-11.3.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:068d9c39a2d1b358eb9f245ce7ab1b5c3246c7c8c7d9ba58cfa5b43146c06e50", size = 6114089, upload-time = "2025-07-01T09:15:43.13Z" }, - { url = "https://files.pythonhosted.org/packages/8b/f5/06bfaa444c8e80f1a8e4bff98da9c83b37b5be3b1deaa43d27a0db37ef84/pillow-11.3.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:a1bc6ba083b145187f648b667e05a2534ecc4b9f2784c2cbe3089e44868f2b9b", size = 6748206, upload-time = "2025-07-01T09:15:44.937Z" }, - { url = "https://files.pythonhosted.org/packages/f0/77/bc6f92a3e8e6e46c0ca78abfffec0037845800ea38c73483760362804c41/pillow-11.3.0-cp314-cp314t-win32.whl", hash = "sha256:118ca10c0d60b06d006be10a501fd6bbdfef559251ed31b794668ed569c87e12", size = 6377370, upload-time = "2025-07-01T09:15:46.673Z" }, - { url = "https://files.pythonhosted.org/packages/4a/82/3a721f7d69dca802befb8af08b7c79ebcab461007ce1c18bd91a5d5896f9/pillow-11.3.0-cp314-cp314t-win_amd64.whl", hash = "sha256:8924748b688aa210d79883357d102cd64690e56b923a186f35a82cbc10f997db", size = 7121500, upload-time = "2025-07-01T09:15:48.512Z" }, - { url = "https://files.pythonhosted.org/packages/89/c7/5572fa4a3f45740eaab6ae86fcdf7195b55beac1371ac8c619d880cfe948/pillow-11.3.0-cp314-cp314t-win_arm64.whl", hash = "sha256:79ea0d14d3ebad43ec77ad5272e6ff9bba5b679ef73375ea760261207fa8e0aa", size = 2512835, upload-time = "2025-07-01T09:15:50.399Z" }, -] - -[[package]] -name = "platformdirs" -version = "4.3.8" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/fe/8b/3c73abc9c759ecd3f1f7ceff6685840859e8070c4d947c93fae71f6a0bf2/platformdirs-4.3.8.tar.gz", hash = "sha256:3d512d96e16bcb959a814c9f348431070822a6496326a4be0911c40b5a74c2bc", size = 21362, upload-time = "2025-05-07T22:47:42.121Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/fe/39/979e8e21520d4e47a0bbe349e2713c0aac6f3d853d0e5b34d76206c439aa/platformdirs-4.3.8-py3-none-any.whl", hash = "sha256:ff7059bb7eb1179e2685604f4aaf157cfd9535242bd23742eadc3c13542139b4", size = 18567, upload-time = "2025-05-07T22:47:40.376Z" }, -] - -[[package]] -name = "pluggy" -version = "1.6.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/f9/e2/3e91f31a7d2b083fe6ef3fa267035b518369d9511ffab804f839851d2779/pluggy-1.6.0.tar.gz", hash = "sha256:7dcc130b76258d33b90f61b658791dede3486c3e6bfb003ee5c9bfb396dd22f3", size = 69412, upload-time = "2025-05-15T12:30:07.975Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl", hash = "sha256:e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746", size = 20538, upload-time = "2025-05-15T12:30:06.134Z" }, -] - -[[package]] -name = "prometheus-client" -version = "0.22.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/5e/cf/40dde0a2be27cc1eb41e333d1a674a74ce8b8b0457269cc640fd42b07cf7/prometheus_client-0.22.1.tar.gz", hash = "sha256:190f1331e783cf21eb60bca559354e0a4d4378facecf78f5428c39b675d20d28", size = 69746, upload-time = "2025-06-02T14:29:01.152Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/32/ae/ec06af4fe3ee72d16973474f122541746196aaa16cea6f66d18b963c6177/prometheus_client-0.22.1-py3-none-any.whl", hash = "sha256:cca895342e308174341b2cbf99a56bef291fbc0ef7b9e5412a0f26d653ba7094", size = 58694, upload-time = "2025-06-02T14:29:00.068Z" }, -] - -[[package]] -name = "prompt-toolkit" -version = "3.0.51" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "wcwidth" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/bb/6e/9d084c929dfe9e3bfe0c6a47e31f78a25c54627d64a66e884a8bf5474f1c/prompt_toolkit-3.0.51.tar.gz", hash = "sha256:931a162e3b27fc90c86f1b48bb1fb2c528c2761475e57c9c06de13311c7b54ed", size = 428940, upload-time = "2025-04-15T09:18:47.731Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/ce/4f/5249960887b1fbe561d9ff265496d170b55a735b76724f10ef19f9e40716/prompt_toolkit-3.0.51-py3-none-any.whl", hash = "sha256:52742911fde84e2d423e2f9a4cf1de7d7ac4e51958f648d9540e0fb8db077b07", size = 387810, upload-time = "2025-04-15T09:18:44.753Z" }, -] - -[[package]] -name = "protobuf" -version = "6.32.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/c0/df/fb4a8eeea482eca989b51cffd274aac2ee24e825f0bf3cbce5281fa1567b/protobuf-6.32.0.tar.gz", hash = "sha256:a81439049127067fc49ec1d36e25c6ee1d1a2b7be930675f919258d03c04e7d2", size = 440614, upload-time = "2025-08-14T21:21:25.015Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/33/18/df8c87da2e47f4f1dcc5153a81cd6bca4e429803f4069a299e236e4dd510/protobuf-6.32.0-cp310-abi3-win32.whl", hash = "sha256:84f9e3c1ff6fb0308dbacb0950d8aa90694b0d0ee68e75719cb044b7078fe741", size = 424409, upload-time = "2025-08-14T21:21:12.366Z" }, - { url = "https://files.pythonhosted.org/packages/e1/59/0a820b7310f8139bd8d5a9388e6a38e1786d179d6f33998448609296c229/protobuf-6.32.0-cp310-abi3-win_amd64.whl", hash = "sha256:a8bdbb2f009cfc22a36d031f22a625a38b615b5e19e558a7b756b3279723e68e", size = 435735, upload-time = "2025-08-14T21:21:15.046Z" }, - { url = "https://files.pythonhosted.org/packages/cc/5b/0d421533c59c789e9c9894683efac582c06246bf24bb26b753b149bd88e4/protobuf-6.32.0-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:d52691e5bee6c860fff9a1c86ad26a13afbeb4b168cd4445c922b7e2cf85aaf0", size = 426449, upload-time = "2025-08-14T21:21:16.687Z" }, - { url = "https://files.pythonhosted.org/packages/ec/7b/607764ebe6c7a23dcee06e054fd1de3d5841b7648a90fd6def9a3bb58c5e/protobuf-6.32.0-cp39-abi3-manylinux2014_aarch64.whl", hash = "sha256:501fe6372fd1c8ea2a30b4d9be8f87955a64d6be9c88a973996cef5ef6f0abf1", size = 322869, upload-time = "2025-08-14T21:21:18.282Z" }, - { url = "https://files.pythonhosted.org/packages/40/01/2e730bd1c25392fc32e3268e02446f0d77cb51a2c3a8486b1798e34d5805/protobuf-6.32.0-cp39-abi3-manylinux2014_x86_64.whl", hash = "sha256:75a2aab2bd1aeb1f5dc7c5f33bcb11d82ea8c055c9becbb41c26a8c43fd7092c", size = 322009, upload-time = "2025-08-14T21:21:19.893Z" }, - { url = "https://files.pythonhosted.org/packages/9c/f2/80ffc4677aac1bc3519b26bc7f7f5de7fce0ee2f7e36e59e27d8beb32dd1/protobuf-6.32.0-py3-none-any.whl", hash = "sha256:ba377e5b67b908c8f3072a57b63e2c6a4cbd18aea4ed98d2584350dbf46f2783", size = 169287, upload-time = "2025-08-14T21:21:23.515Z" }, -] - -[[package]] -name = "psutil" -version = "7.0.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/2a/80/336820c1ad9286a4ded7e845b2eccfcb27851ab8ac6abece774a6ff4d3de/psutil-7.0.0.tar.gz", hash = "sha256:7be9c3eba38beccb6495ea33afd982a44074b78f28c434a1f51cc07fd315c456", size = 497003, upload-time = "2025-02-13T21:54:07.946Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/ed/e6/2d26234410f8b8abdbf891c9da62bee396583f713fb9f3325a4760875d22/psutil-7.0.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:101d71dc322e3cffd7cea0650b09b3d08b8e7c4109dd6809fe452dfd00e58b25", size = 238051, upload-time = "2025-02-13T21:54:12.36Z" }, - { url = "https://files.pythonhosted.org/packages/04/8b/30f930733afe425e3cbfc0e1468a30a18942350c1a8816acfade80c005c4/psutil-7.0.0-cp36-abi3-macosx_11_0_arm64.whl", hash = "sha256:39db632f6bb862eeccf56660871433e111b6ea58f2caea825571951d4b6aa3da", size = 239535, upload-time = "2025-02-13T21:54:16.07Z" }, - { url = "https://files.pythonhosted.org/packages/2a/ed/d362e84620dd22876b55389248e522338ed1bf134a5edd3b8231d7207f6d/psutil-7.0.0-cp36-abi3-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1fcee592b4c6f146991ca55919ea3d1f8926497a713ed7faaf8225e174581e91", size = 275004, upload-time = "2025-02-13T21:54:18.662Z" }, - { url = "https://files.pythonhosted.org/packages/bf/b9/b0eb3f3cbcb734d930fdf839431606844a825b23eaf9a6ab371edac8162c/psutil-7.0.0-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b1388a4f6875d7e2aff5c4ca1cc16c545ed41dd8bb596cefea80111db353a34", size = 277986, upload-time = "2025-02-13T21:54:21.811Z" }, - { url = "https://files.pythonhosted.org/packages/eb/a2/709e0fe2f093556c17fbafda93ac032257242cabcc7ff3369e2cb76a97aa/psutil-7.0.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a5f098451abc2828f7dc6b58d44b532b22f2088f4999a937557b603ce72b1993", size = 279544, upload-time = "2025-02-13T21:54:24.68Z" }, - { url = "https://files.pythonhosted.org/packages/50/e6/eecf58810b9d12e6427369784efe814a1eec0f492084ce8eb8f4d89d6d61/psutil-7.0.0-cp37-abi3-win32.whl", hash = "sha256:ba3fcef7523064a6c9da440fc4d6bd07da93ac726b5733c29027d7dc95b39d99", size = 241053, upload-time = "2025-02-13T21:54:34.31Z" }, - { url = "https://files.pythonhosted.org/packages/50/1b/6921afe68c74868b4c9fa424dad3be35b095e16687989ebbb50ce4fceb7c/psutil-7.0.0-cp37-abi3-win_amd64.whl", hash = "sha256:4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553", size = 244885, upload-time = "2025-02-13T21:54:37.486Z" }, -] - -[[package]] -name = "ptyprocess" -version = "0.7.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/20/e5/16ff212c1e452235a90aeb09066144d0c5a6a8c0834397e03f5224495c4e/ptyprocess-0.7.0.tar.gz", hash = "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220", size = 70762, upload-time = "2020-12-28T15:15:30.155Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35", size = 13993, upload-time = "2020-12-28T15:15:28.35Z" }, -] - -[[package]] -name = "pure-eval" -version = "0.2.3" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/cd/05/0a34433a064256a578f1783a10da6df098ceaa4a57bbeaa96a6c0352786b/pure_eval-0.2.3.tar.gz", hash = "sha256:5f4e983f40564c576c7c8635ae88db5956bb2229d7e9237d03b3c0b0190eaf42", size = 19752, upload-time = "2024-07-21T12:58:21.801Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl", hash = "sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0", size = 11842, upload-time = "2024-07-21T12:58:20.04Z" }, -] - -[[package]] -name = "pycparser" -version = "2.22" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/1d/b2/31537cf4b1ca988837256c910a668b553fceb8f069bedc4b1c826024b52c/pycparser-2.22.tar.gz", hash = "sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6", size = 172736, upload-time = "2024-03-30T13:22:22.564Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl", hash = "sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc", size = 117552, upload-time = "2024-03-30T13:22:20.476Z" }, -] - -[[package]] -name = "pygments" -version = "2.19.2" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/b0/77/a5b8c569bf593b0140bde72ea885a803b82086995367bf2037de0159d924/pygments-2.19.2.tar.gz", hash = "sha256:636cb2477cec7f8952536970bc533bc43743542f70392ae026374600add5b887", size = 4968631, upload-time = "2025-06-21T13:39:12.283Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/c7/21/705964c7812476f378728bdf590ca4b771ec72385c533964653c68e86bdc/pygments-2.19.2-py3-none-any.whl", hash = "sha256:86540386c03d588bb81d44bc3928634ff26449851e99741617ecb9037ee5ec0b", size = 1225217, upload-time = "2025-06-21T13:39:07.939Z" }, -] - -[[package]] -name = "pymdown-extensions" -version = "10.16.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "markdown" }, - { name = "pyyaml" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/55/b3/6d2b3f149bc5413b0a29761c2c5832d8ce904a1d7f621e86616d96f505cc/pymdown_extensions-10.16.1.tar.gz", hash = "sha256:aace82bcccba3efc03e25d584e6a22d27a8e17caa3f4dd9f207e49b787aa9a91", size = 853277, upload-time = "2025-07-28T16:19:34.167Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/e4/06/43084e6cbd4b3bc0e80f6be743b2e79fbc6eed8de9ad8c629939fa55d972/pymdown_extensions-10.16.1-py3-none-any.whl", hash = "sha256:d6ba157a6c03146a7fb122b2b9a121300056384eafeec9c9f9e584adfdb2a32d", size = 266178, upload-time = "2025-07-28T16:19:31.401Z" }, -] - -[[package]] -name = "pyparsing" -version = "3.2.3" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/bb/22/f1129e69d94ffff626bdb5c835506b3a5b4f3d070f17ea295e12c2c6f60f/pyparsing-3.2.3.tar.gz", hash = "sha256:b9c13f1ab8b3b542f72e28f634bad4de758ab3ce4546e4301970ad6fa77c38be", size = 1088608, upload-time = "2025-03-25T05:01:28.114Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/05/e7/df2285f3d08fee213f2d041540fa4fc9ca6c2d44cf36d3a035bf2a8d2bcc/pyparsing-3.2.3-py3-none-any.whl", hash = "sha256:a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf", size = 111120, upload-time = "2025-03-25T05:01:24.908Z" }, -] - -[[package]] -name = "pytest" -version = "8.4.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "colorama", marker = "sys_platform == 'win32'" }, - { name = "iniconfig" }, - { name = "packaging" }, - { name = "pluggy" }, - { name = "pygments" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/08/ba/45911d754e8eba3d5a841a5ce61a65a685ff1798421ac054f85aa8747dfb/pytest-8.4.1.tar.gz", hash = "sha256:7c67fd69174877359ed9371ec3af8a3d2b04741818c51e5e99cc1742251fa93c", size = 1517714, upload-time = "2025-06-18T05:48:06.109Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl", hash = "sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7", size = 365474, upload-time = "2025-06-18T05:48:03.955Z" }, -] - -[[package]] -name = "python-dateutil" -version = "2.9.0.post0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "six" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3", size = 342432, upload-time = "2024-03-01T18:36:20.211Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427", size = 229892, upload-time = "2024-03-01T18:36:18.57Z" }, -] - -[[package]] -name = "python-json-logger" -version = "3.3.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/9e/de/d3144a0bceede957f961e975f3752760fbe390d57fbe194baf709d8f1f7b/python_json_logger-3.3.0.tar.gz", hash = "sha256:12b7e74b17775e7d565129296105bbe3910842d9d0eb083fc83a6a617aa8df84", size = 16642, upload-time = "2025-03-07T07:08:27.301Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/08/20/0f2523b9e50a8052bc6a8b732dfc8568abbdc42010aef03a2d750bdab3b2/python_json_logger-3.3.0-py3-none-any.whl", hash = "sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7", size = 15163, upload-time = "2025-03-07T07:08:25.627Z" }, -] - -[[package]] -name = "pytz" -version = "2025.2" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/f8/bf/abbd3cdfb8fbc7fb3d4d38d320f2441b1e7cbe29be4f23797b4a2b5d8aac/pytz-2025.2.tar.gz", hash = "sha256:360b9e3dbb49a209c21ad61809c7fb453643e048b38924c765813546746e81c3", size = 320884, upload-time = "2025-03-25T02:25:00.538Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl", hash = "sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00", size = 509225, upload-time = "2025-03-25T02:24:58.468Z" }, -] - -[[package]] -name = "pywin32" -version = "311" -source = { registry = "https://pypi.org/simple" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/e7/ab/01ea1943d4eba0f850c3c61e78e8dd59757ff815ff3ccd0a84de5f541f42/pywin32-311-cp312-cp312-win32.whl", hash = "sha256:750ec6e621af2b948540032557b10a2d43b0cee2ae9758c54154d711cc852d31", size = 8706543, upload-time = "2025-07-14T20:13:20.765Z" }, - { url = "https://files.pythonhosted.org/packages/d1/a8/a0e8d07d4d051ec7502cd58b291ec98dcc0c3fff027caad0470b72cfcc2f/pywin32-311-cp312-cp312-win_amd64.whl", hash = "sha256:b8c095edad5c211ff31c05223658e71bf7116daa0ecf3ad85f3201ea3190d067", size = 9495040, upload-time = "2025-07-14T20:13:22.543Z" }, - { url = "https://files.pythonhosted.org/packages/ba/3a/2ae996277b4b50f17d61f0603efd8253cb2d79cc7ae159468007b586396d/pywin32-311-cp312-cp312-win_arm64.whl", hash = "sha256:e286f46a9a39c4a18b319c28f59b61de793654af2f395c102b4f819e584b5852", size = 8710102, upload-time = "2025-07-14T20:13:24.682Z" }, - { url = "https://files.pythonhosted.org/packages/a5/be/3fd5de0979fcb3994bfee0d65ed8ca9506a8a1260651b86174f6a86f52b3/pywin32-311-cp313-cp313-win32.whl", hash = "sha256:f95ba5a847cba10dd8c4d8fefa9f2a6cf283b8b88ed6178fa8a6c1ab16054d0d", size = 8705700, upload-time = "2025-07-14T20:13:26.471Z" }, - { url = "https://files.pythonhosted.org/packages/e3/28/e0a1909523c6890208295a29e05c2adb2126364e289826c0a8bc7297bd5c/pywin32-311-cp313-cp313-win_amd64.whl", hash = "sha256:718a38f7e5b058e76aee1c56ddd06908116d35147e133427e59a3983f703a20d", size = 9494700, upload-time = "2025-07-14T20:13:28.243Z" }, - { url = "https://files.pythonhosted.org/packages/04/bf/90339ac0f55726dce7d794e6d79a18a91265bdf3aa70b6b9ca52f35e022a/pywin32-311-cp313-cp313-win_arm64.whl", hash = "sha256:7b4075d959648406202d92a2310cb990fea19b535c7f4a78d3f5e10b926eeb8a", size = 8709318, upload-time = "2025-07-14T20:13:30.348Z" }, - { url = "https://files.pythonhosted.org/packages/c9/31/097f2e132c4f16d99a22bfb777e0fd88bd8e1c634304e102f313af69ace5/pywin32-311-cp314-cp314-win32.whl", hash = "sha256:b7a2c10b93f8986666d0c803ee19b5990885872a7de910fc460f9b0c2fbf92ee", size = 8840714, upload-time = "2025-07-14T20:13:32.449Z" }, - { url = "https://files.pythonhosted.org/packages/90/4b/07c77d8ba0e01349358082713400435347df8426208171ce297da32c313d/pywin32-311-cp314-cp314-win_amd64.whl", hash = "sha256:3aca44c046bd2ed8c90de9cb8427f581c479e594e99b5c0bb19b29c10fd6cb87", size = 9656800, upload-time = "2025-07-14T20:13:34.312Z" }, - { url = "https://files.pythonhosted.org/packages/c0/d2/21af5c535501a7233e734b8af901574572da66fcc254cb35d0609c9080dd/pywin32-311-cp314-cp314-win_arm64.whl", hash = "sha256:a508e2d9025764a8270f93111a970e1d0fbfc33f4153b388bb649b7eec4f9b42", size = 8932540, upload-time = "2025-07-14T20:13:36.379Z" }, -] - -[[package]] -name = "pywinpty" -version = "3.0.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/06/df/429cc505dc5f77ab0612c4b60bca2e3dcc81f6c321844ee017d6dc0f4a95/pywinpty-3.0.0.tar.gz", hash = "sha256:68f70e68a9f0766ffdea3fc500351cb7b9b012bcb8239a411f7ff0fc8f86dcb1", size = 28551, upload-time = "2025-08-12T20:33:46.506Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/76/d9/bd2249815c305ef8f879b326db1fe1effc8e5f22bd88e522b4b55231aa6f/pywinpty-3.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:1e0c4b01e5b03b1531d7c5d0e044b8c66dd0288c6d2b661820849f2a8d91aec3", size = 2051564, upload-time = "2025-08-12T20:37:09.128Z" }, - { url = "https://files.pythonhosted.org/packages/e2/77/358b1a97c1d0714f288949372ec64a70884a7eceb3f887042b9ae0bea388/pywinpty-3.0.0-cp313-cp313-win_amd64.whl", hash = "sha256:828cbe756b7e3d25d886fbd5691a1d523cd59c5fb79286bb32bb75c5221e7ba1", size = 2050856, upload-time = "2025-08-12T20:36:09.117Z" }, - { url = "https://files.pythonhosted.org/packages/8f/6c/4249cfb4eb4fdad2c76bc96db0642a40111847c375b92e5b9f4bf289ddd6/pywinpty-3.0.0-cp313-cp313t-win_amd64.whl", hash = "sha256:de0cbe27b96e5a2cebd86c4a6b8b4139f978d9c169d44a8edc7e30e88e5d7a69", size = 2050082, upload-time = "2025-08-12T20:36:28.591Z" }, -] - -[[package]] -name = "pyyaml" -version = "6.0.2" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/54/ed/79a089b6be93607fa5cdaedf301d7dfb23af5f25c398d5ead2525b063e17/pyyaml-6.0.2.tar.gz", hash = "sha256:d584d9ec91ad65861cc08d42e834324ef890a082e591037abe114850ff7bbc3e", size = 130631, upload-time = "2024-08-06T20:33:50.674Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/86/0c/c581167fc46d6d6d7ddcfb8c843a4de25bdd27e4466938109ca68492292c/PyYAML-6.0.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:c70c95198c015b85feafc136515252a261a84561b7b1d51e3384e0655ddf25ab", size = 183873, upload-time = "2024-08-06T20:32:25.131Z" }, - { url = "https://files.pythonhosted.org/packages/a8/0c/38374f5bb272c051e2a69281d71cba6fdb983413e6758b84482905e29a5d/PyYAML-6.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ce826d6ef20b1bc864f0a68340c8b3287705cae2f8b4b1d932177dcc76721725", size = 173302, upload-time = "2024-08-06T20:32:26.511Z" }, - { url = "https://files.pythonhosted.org/packages/c3/93/9916574aa8c00aa06bbac729972eb1071d002b8e158bd0e83a3b9a20a1f7/PyYAML-6.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f71ea527786de97d1a0cc0eacd1defc0985dcf6b3f17bb77dcfc8c34bec4dc5", size = 739154, upload-time = "2024-08-06T20:32:28.363Z" }, - { url = "https://files.pythonhosted.org/packages/95/0f/b8938f1cbd09739c6da569d172531567dbcc9789e0029aa070856f123984/PyYAML-6.0.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9b22676e8097e9e22e36d6b7bda33190d0d400f345f23d4065d48f4ca7ae0425", size = 766223, upload-time = "2024-08-06T20:32:30.058Z" }, - { url = "https://files.pythonhosted.org/packages/b9/2b/614b4752f2e127db5cc206abc23a8c19678e92b23c3db30fc86ab731d3bd/PyYAML-6.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80bab7bfc629882493af4aa31a4cfa43a4c57c83813253626916b8c7ada83476", size = 767542, upload-time = "2024-08-06T20:32:31.881Z" }, - { url = "https://files.pythonhosted.org/packages/d4/00/dd137d5bcc7efea1836d6264f049359861cf548469d18da90cd8216cf05f/PyYAML-6.0.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:0833f8694549e586547b576dcfaba4a6b55b9e96098b36cdc7ebefe667dfed48", size = 731164, upload-time = "2024-08-06T20:32:37.083Z" }, - { url = "https://files.pythonhosted.org/packages/c9/1f/4f998c900485e5c0ef43838363ba4a9723ac0ad73a9dc42068b12aaba4e4/PyYAML-6.0.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8b9c7197f7cb2738065c481a0461e50ad02f18c78cd75775628afb4d7137fb3b", size = 756611, upload-time = "2024-08-06T20:32:38.898Z" }, - { url = "https://files.pythonhosted.org/packages/df/d1/f5a275fdb252768b7a11ec63585bc38d0e87c9e05668a139fea92b80634c/PyYAML-6.0.2-cp312-cp312-win32.whl", hash = "sha256:ef6107725bd54b262d6dedcc2af448a266975032bc85ef0172c5f059da6325b4", size = 140591, upload-time = "2024-08-06T20:32:40.241Z" }, - { url = "https://files.pythonhosted.org/packages/0c/e8/4f648c598b17c3d06e8753d7d13d57542b30d56e6c2dedf9c331ae56312e/PyYAML-6.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8", size = 156338, upload-time = "2024-08-06T20:32:41.93Z" }, - { url = "https://files.pythonhosted.org/packages/ef/e3/3af305b830494fa85d95f6d95ef7fa73f2ee1cc8ef5b495c7c3269fb835f/PyYAML-6.0.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba", size = 181309, upload-time = "2024-08-06T20:32:43.4Z" }, - { url = "https://files.pythonhosted.org/packages/45/9f/3b1c20a0b7a3200524eb0076cc027a970d320bd3a6592873c85c92a08731/PyYAML-6.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1", size = 171679, upload-time = "2024-08-06T20:32:44.801Z" }, - { url = "https://files.pythonhosted.org/packages/7c/9a/337322f27005c33bcb656c655fa78325b730324c78620e8328ae28b64d0c/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133", size = 733428, upload-time = "2024-08-06T20:32:46.432Z" }, - { url = "https://files.pythonhosted.org/packages/a3/69/864fbe19e6c18ea3cc196cbe5d392175b4cf3d5d0ac1403ec3f2d237ebb5/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484", size = 763361, upload-time = "2024-08-06T20:32:51.188Z" }, - { url = "https://files.pythonhosted.org/packages/04/24/b7721e4845c2f162d26f50521b825fb061bc0a5afcf9a386840f23ea19fa/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5", size = 759523, upload-time = "2024-08-06T20:32:53.019Z" }, - { url = "https://files.pythonhosted.org/packages/2b/b2/e3234f59ba06559c6ff63c4e10baea10e5e7df868092bf9ab40e5b9c56b6/PyYAML-6.0.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc", size = 726660, upload-time = "2024-08-06T20:32:54.708Z" }, - { url = "https://files.pythonhosted.org/packages/fe/0f/25911a9f080464c59fab9027482f822b86bf0608957a5fcc6eaac85aa515/PyYAML-6.0.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652", size = 751597, upload-time = "2024-08-06T20:32:56.985Z" }, - { url = "https://files.pythonhosted.org/packages/14/0d/e2c3b43bbce3cf6bd97c840b46088a3031085179e596d4929729d8d68270/PyYAML-6.0.2-cp313-cp313-win32.whl", hash = "sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183", size = 140527, upload-time = "2024-08-06T20:33:03.001Z" }, - { url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563", size = 156446, upload-time = "2024-08-06T20:33:04.33Z" }, -] - -[[package]] -name = "pyyaml-env-tag" -version = "1.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "pyyaml" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/eb/2e/79c822141bfd05a853236b504869ebc6b70159afc570e1d5a20641782eaa/pyyaml_env_tag-1.1.tar.gz", hash = "sha256:2eb38b75a2d21ee0475d6d97ec19c63287a7e140231e4214969d0eac923cd7ff", size = 5737, upload-time = "2025-05-13T15:24:01.64Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/04/11/432f32f8097b03e3cd5fe57e88efb685d964e2e5178a48ed61e841f7fdce/pyyaml_env_tag-1.1-py3-none-any.whl", hash = "sha256:17109e1a528561e32f026364712fee1264bc2ea6715120891174ed1b980d2e04", size = 4722, upload-time = "2025-05-13T15:23:59.629Z" }, -] - -[[package]] -name = "pyzmq" -version = "27.0.2" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "cffi", marker = "implementation_name == 'pypy'" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/f8/66/159f38d184f08b5f971b467f87b1ab142ab1320d5200825c824b32b84b66/pyzmq-27.0.2.tar.gz", hash = "sha256:b398dd713b18de89730447347e96a0240225e154db56e35b6bb8447ffdb07798", size = 281440, upload-time = "2025-08-21T04:23:26.334Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/68/69/b3a729e7b03e412bee2b1823ab8d22e20a92593634f664afd04c6c9d9ac0/pyzmq-27.0.2-cp312-abi3-macosx_10_15_universal2.whl", hash = "sha256:5da05e3c22c95e23bfc4afeee6ff7d4be9ff2233ad6cb171a0e8257cd46b169a", size = 1305910, upload-time = "2025-08-21T04:21:27.609Z" }, - { url = "https://files.pythonhosted.org/packages/15/b7/f6a6a285193d489b223c340b38ee03a673467cb54914da21c3d7849f1b10/pyzmq-27.0.2-cp312-abi3-manylinux2014_i686.manylinux_2_17_i686.whl", hash = "sha256:4e4520577971d01d47e2559bb3175fce1be9103b18621bf0b241abe0a933d040", size = 895507, upload-time = "2025-08-21T04:21:29.005Z" }, - { url = "https://files.pythonhosted.org/packages/17/e6/c4ed2da5ef9182cde1b1f5d0051a986e76339d71720ec1a00be0b49275ad/pyzmq-27.0.2-cp312-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:56d7de7bf73165b90bd25a8668659ccb134dd28449116bf3c7e9bab5cf8a8ec9", size = 652670, upload-time = "2025-08-21T04:21:30.71Z" }, - { url = "https://files.pythonhosted.org/packages/0e/66/d781ab0636570d32c745c4e389b1c6b713115905cca69ab6233508622edd/pyzmq-27.0.2-cp312-abi3-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:340e7cddc32f147c6c00d116a3f284ab07ee63dbd26c52be13b590520434533c", size = 840581, upload-time = "2025-08-21T04:21:32.008Z" }, - { url = "https://files.pythonhosted.org/packages/a6/df/f24790caf565d72544f5c8d8500960b9562c1dc848d6f22f3c7e122e73d4/pyzmq-27.0.2-cp312-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:ba95693f9df8bb4a9826464fb0fe89033936f35fd4a8ff1edff09a473570afa0", size = 1641931, upload-time = "2025-08-21T04:21:33.371Z" }, - { url = "https://files.pythonhosted.org/packages/65/65/77d27b19fc5e845367f9100db90b9fce924f611b14770db480615944c9c9/pyzmq-27.0.2-cp312-abi3-musllinux_1_2_i686.whl", hash = "sha256:ca42a6ce2d697537da34f77a1960d21476c6a4af3e539eddb2b114c3cf65a78c", size = 2021226, upload-time = "2025-08-21T04:21:35.301Z" }, - { url = "https://files.pythonhosted.org/packages/5b/65/1ed14421ba27a4207fa694772003a311d1142b7f543179e4d1099b7eb746/pyzmq-27.0.2-cp312-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:3e44e665d78a07214b2772ccbd4b9bcc6d848d7895f1b2d7653f047b6318a4f6", size = 1878047, upload-time = "2025-08-21T04:21:36.749Z" }, - { url = "https://files.pythonhosted.org/packages/dd/dc/e578549b89b40dc78a387ec471c2a360766690c0a045cd8d1877d401012d/pyzmq-27.0.2-cp312-abi3-win32.whl", hash = "sha256:272d772d116615397d2be2b1417b3b8c8bc8671f93728c2f2c25002a4530e8f6", size = 558757, upload-time = "2025-08-21T04:21:38.2Z" }, - { url = "https://files.pythonhosted.org/packages/b5/89/06600980aefcc535c758414da969f37a5194ea4cdb73b745223f6af3acfb/pyzmq-27.0.2-cp312-abi3-win_amd64.whl", hash = "sha256:734be4f44efba0aa69bf5f015ed13eb69ff29bf0d17ea1e21588b095a3147b8e", size = 619281, upload-time = "2025-08-21T04:21:39.909Z" }, - { url = "https://files.pythonhosted.org/packages/30/84/df8a5c089552d17c9941d1aea4314b606edf1b1622361dae89aacedc6467/pyzmq-27.0.2-cp312-abi3-win_arm64.whl", hash = "sha256:41f0bd56d9279392810950feb2785a419c2920bbf007fdaaa7f4a07332ae492d", size = 552680, upload-time = "2025-08-21T04:21:41.571Z" }, - { url = "https://files.pythonhosted.org/packages/b4/7b/b79e976508517ab80dc800f7021ef1fb602a6d55e4caa2d47fb3dca5d8b6/pyzmq-27.0.2-cp313-cp313-android_24_arm64_v8a.whl", hash = "sha256:7f01118133427cd7f34ee133b5098e2af5f70303fa7519785c007bca5aa6f96a", size = 1122259, upload-time = "2025-08-21T04:21:43.063Z" }, - { url = "https://files.pythonhosted.org/packages/2b/1c/777217b9940ebcb7e71c924184ca5f31e410580a58d9fd93798589f0d31c/pyzmq-27.0.2-cp313-cp313-android_24_x86_64.whl", hash = "sha256:e4b860edf6379a7234ccbb19b4ed2c57e3ff569c3414fadfb49ae72b61a8ef07", size = 1156113, upload-time = "2025-08-21T04:21:44.566Z" }, - { url = "https://files.pythonhosted.org/packages/59/7d/654657a4c6435f41538182e71b61eac386a789a2bbb6f30171915253a9a7/pyzmq-27.0.2-cp313-cp313t-macosx_10_15_universal2.whl", hash = "sha256:cb77923ea163156da14295c941930bd525df0d29c96c1ec2fe3c3806b1e17cb3", size = 1341437, upload-time = "2025-08-21T04:21:46.019Z" }, - { url = "https://files.pythonhosted.org/packages/20/a0/5ed7710037f9c096017adc748bcb1698674a2d297f8b9422d38816f7b56a/pyzmq-27.0.2-cp313-cp313t-manylinux2014_i686.manylinux_2_17_i686.whl", hash = "sha256:61678b7407b04df8f9423f188156355dc94d0fb52d360ae79d02ed7e0d431eea", size = 897888, upload-time = "2025-08-21T04:21:47.362Z" }, - { url = "https://files.pythonhosted.org/packages/2c/8a/6e4699a60931c17e7406641d201d7f2c121e2a38979bc83226a6d8f1ba32/pyzmq-27.0.2-cp313-cp313t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e3c824b70925963bdc8e39a642672c15ffaa67e7d4b491f64662dd56d6271263", size = 660727, upload-time = "2025-08-21T04:21:48.734Z" }, - { url = "https://files.pythonhosted.org/packages/7b/d8/d761e438c186451bd89ce63a665cde5690c084b61cd8f5d7b51e966e875a/pyzmq-27.0.2-cp313-cp313t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c4833e02fcf2751975457be1dfa2f744d4d09901a8cc106acaa519d868232175", size = 848136, upload-time = "2025-08-21T04:21:50.416Z" }, - { url = "https://files.pythonhosted.org/packages/43/f1/a0f31684efdf3eb92f46b7dd2117e752208115e89d278f8ca5f413c5bb85/pyzmq-27.0.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:b18045668d09cf0faa44918af2a67f0dbbef738c96f61c2f1b975b1ddb92ccfc", size = 1650402, upload-time = "2025-08-21T04:21:52.235Z" }, - { url = "https://files.pythonhosted.org/packages/41/fd/0d7f2a1732812df02c85002770da4a7864c79b210084bcdab01ea57e8d92/pyzmq-27.0.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:bbbb7e2f3ac5a22901324e7b086f398b8e16d343879a77b15ca3312e8cd8e6d5", size = 2024587, upload-time = "2025-08-21T04:21:54.07Z" }, - { url = "https://files.pythonhosted.org/packages/f1/73/358be69e279a382dd09e46dda29df8446365cddee4f79ef214e71e5b2b5a/pyzmq-27.0.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:b751914a73604d40d88a061bab042a11d4511b3ddbb7624cd83c39c8a498564c", size = 1885493, upload-time = "2025-08-21T04:21:55.588Z" }, - { url = "https://files.pythonhosted.org/packages/c5/7b/e9951ad53b3dfed8cfb4c2cfd6e0097c9b454e5c0d0e6df5f2b60d7c8c3d/pyzmq-27.0.2-cp313-cp313t-win32.whl", hash = "sha256:3e8f833dd82af11db5321c414638045c70f61009f72dd61c88db4a713c1fb1d2", size = 574934, upload-time = "2025-08-21T04:21:57.52Z" }, - { url = "https://files.pythonhosted.org/packages/55/33/1a7fc3a92f2124a63e6e2a6afa0af471a5c0c713e776b476d4eda5111b13/pyzmq-27.0.2-cp313-cp313t-win_amd64.whl", hash = "sha256:5b45153cb8eadcab14139970643a84f7a7b08dda541fbc1f6f4855c49334b549", size = 640932, upload-time = "2025-08-21T04:21:59.527Z" }, - { url = "https://files.pythonhosted.org/packages/2a/52/2598a94ac251a7c83f3887866225eea1952b0d4463a68df5032eb00ff052/pyzmq-27.0.2-cp313-cp313t-win_arm64.whl", hash = "sha256:86898f5c9730df23427c1ee0097d8aa41aa5f89539a79e48cd0d2c22d059f1b7", size = 561315, upload-time = "2025-08-21T04:22:01.295Z" }, - { url = "https://files.pythonhosted.org/packages/42/7d/10ef02ea36590b29d48ef88eb0831f0af3eb240cccca2752556faec55f59/pyzmq-27.0.2-cp314-cp314t-macosx_10_15_universal2.whl", hash = "sha256:d2b4b261dce10762be5c116b6ad1f267a9429765b493c454f049f33791dd8b8a", size = 1341463, upload-time = "2025-08-21T04:22:02.712Z" }, - { url = "https://files.pythonhosted.org/packages/94/36/115d18dade9a3d4d3d08dd8bfe5459561b8e02815f99df040555fdd7768e/pyzmq-27.0.2-cp314-cp314t-manylinux2014_i686.manylinux_2_17_i686.whl", hash = "sha256:4e4d88b6cff156fed468903006b24bbd85322612f9c2f7b96e72d5016fd3f543", size = 897840, upload-time = "2025-08-21T04:22:04.845Z" }, - { url = "https://files.pythonhosted.org/packages/39/66/083b37839b95c386a95f1537bb41bdbf0c002b7c55b75ee737949cecb11f/pyzmq-27.0.2-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8426c0ebbc11ed8416a6e9409c194142d677c2c5c688595f2743664e356d9e9b", size = 660704, upload-time = "2025-08-21T04:22:06.389Z" }, - { url = "https://files.pythonhosted.org/packages/76/5a/196ab46e549ba35bf3268f575e10cfac0dc86b78dcaa7a3e36407ecda752/pyzmq-27.0.2-cp314-cp314t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:565bee96a155fe6452caed5fb5f60c9862038e6b51a59f4f632562081cdb4004", size = 848037, upload-time = "2025-08-21T04:22:07.817Z" }, - { url = "https://files.pythonhosted.org/packages/70/ea/a27b9eb44b2e615a9ecb8510ebb023cc1d2d251181e4a1e50366bfbf94d6/pyzmq-27.0.2-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:5de735c745ca5cefe9c2d1547d8f28cfe1b1926aecb7483ab1102fd0a746c093", size = 1650278, upload-time = "2025-08-21T04:22:09.269Z" }, - { url = "https://files.pythonhosted.org/packages/62/ac/3e9af036bfaf718ab5e69ded8f6332da392c5450ad43e8e3ca66797f145a/pyzmq-27.0.2-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:ea4f498f8115fd90d7bf03a3e83ae3e9898e43362f8e8e8faec93597206e15cc", size = 2024504, upload-time = "2025-08-21T04:22:10.778Z" }, - { url = "https://files.pythonhosted.org/packages/ae/e9/3202d31788df8ebaa176b23d846335eb9c768d8b43c0506bbd6265ad36a0/pyzmq-27.0.2-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:d00e81cb0afd672915257a3927124ee2ad117ace3c256d39cd97ca3f190152ad", size = 1885381, upload-time = "2025-08-21T04:22:12.718Z" }, - { url = "https://files.pythonhosted.org/packages/4b/ed/42de80b7ab4e8fcf13376f81206cf8041740672ac1fd2e1c598d63f595bf/pyzmq-27.0.2-cp314-cp314t-win32.whl", hash = "sha256:0f6e9b00d81b58f859fffc112365d50413954e02aefe36c5b4c8fb4af79f8cc3", size = 587526, upload-time = "2025-08-21T04:22:14.18Z" }, - { url = "https://files.pythonhosted.org/packages/ed/c8/8f3c72d6f0bfbf090aa5e283576073ca5c59839b85a5cc8c66ddb9b59801/pyzmq-27.0.2-cp314-cp314t-win_amd64.whl", hash = "sha256:2e73cf3b127a437fef4100eb3ac2ebe6b49e655bb721329f667f59eca0a26221", size = 661368, upload-time = "2025-08-21T04:22:15.677Z" }, - { url = "https://files.pythonhosted.org/packages/69/a4/7ee652ea1c77d872f5d99ed937fa8bbd1f6f4b7a39a6d3a0076c286e0c3e/pyzmq-27.0.2-cp314-cp314t-win_arm64.whl", hash = "sha256:4108785f2e5ac865d06f678a07a1901e3465611356df21a545eeea8b45f56265", size = 574901, upload-time = "2025-08-21T04:22:17.423Z" }, -] - -[[package]] -name = "referencing" -version = "0.36.2" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "attrs" }, - { name = "rpds-py" }, - { name = "typing-extensions", marker = "python_full_version < '3.13'" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/2f/db/98b5c277be99dd18bfd91dd04e1b759cad18d1a338188c936e92f921c7e2/referencing-0.36.2.tar.gz", hash = "sha256:df2e89862cd09deabbdba16944cc3f10feb6b3e6f18e902f7cc25609a34775aa", size = 74744, upload-time = "2025-01-25T08:48:16.138Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl", hash = "sha256:e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0", size = 26775, upload-time = "2025-01-25T08:48:14.241Z" }, -] - -[[package]] -name = "requests" -version = "2.32.5" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "certifi" }, - { name = "charset-normalizer" }, - { name = "idna" }, - { name = "urllib3" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/c9/74/b3ff8e6c8446842c3f5c837e9c3dfcfe2018ea6ecef224c710c85ef728f4/requests-2.32.5.tar.gz", hash = "sha256:dbba0bac56e100853db0ea71b82b4dfd5fe2bf6d3754a8893c3af500cec7d7cf", size = 134517, upload-time = "2025-08-18T20:46:02.573Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl", hash = "sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6", size = 64738, upload-time = "2025-08-18T20:46:00.542Z" }, -] - -[[package]] -name = "rfc3339-validator" -version = "0.1.4" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "six" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/28/ea/a9387748e2d111c3c2b275ba970b735e04e15cdb1eb30693b6b5708c4dbd/rfc3339_validator-0.1.4.tar.gz", hash = "sha256:138a2abdf93304ad60530167e51d2dfb9549521a836871b88d7f4695d0022f6b", size = 5513, upload-time = "2021-05-12T16:37:54.178Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl", hash = "sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa", size = 3490, upload-time = "2021-05-12T16:37:52.536Z" }, -] - -[[package]] -name = "rfc3986-validator" -version = "0.1.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/da/88/f270de456dd7d11dcc808abfa291ecdd3f45ff44e3b549ffa01b126464d0/rfc3986_validator-0.1.1.tar.gz", hash = "sha256:3d44bde7921b3b9ec3ae4e3adca370438eccebc676456449b145d533b240d055", size = 6760, upload-time = "2019-10-28T16:00:19.144Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl", hash = "sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9", size = 4242, upload-time = "2019-10-28T16:00:13.976Z" }, -] - -[[package]] -name = "rfc3987-syntax" -version = "1.1.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "lark" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/2c/06/37c1a5557acf449e8e406a830a05bf885ac47d33270aec454ef78675008d/rfc3987_syntax-1.1.0.tar.gz", hash = "sha256:717a62cbf33cffdd16dfa3a497d81ce48a660ea691b1ddd7be710c22f00b4a0d", size = 14239, upload-time = "2025-07-18T01:05:05.015Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/7e/71/44ce230e1b7fadd372515a97e32a83011f906ddded8d03e3c6aafbdedbb7/rfc3987_syntax-1.1.0-py3-none-any.whl", hash = "sha256:6c3d97604e4c5ce9f714898e05401a0445a641cfa276432b0a648c80856f6a3f", size = 8046, upload-time = "2025-07-18T01:05:03.843Z" }, -] - -[[package]] -name = "rpds-py" -version = "0.27.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/1e/d9/991a0dee12d9fc53ed027e26a26a64b151d77252ac477e22666b9688bc16/rpds_py-0.27.0.tar.gz", hash = "sha256:8b23cf252f180cda89220b378d917180f29d313cd6a07b2431c0d3b776aae86f", size = 27420, upload-time = "2025-08-07T08:26:39.624Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/cd/17/e67309ca1ac993fa1888a0d9b2f5ccc1f67196ace32e76c9f8e1dbbbd50c/rpds_py-0.27.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:19c990fdf5acecbf0623e906ae2e09ce1c58947197f9bced6bbd7482662231c4", size = 362611, upload-time = "2025-08-07T08:23:44.773Z" }, - { url = "https://files.pythonhosted.org/packages/93/2e/28c2fb84aa7aa5d75933d1862d0f7de6198ea22dfd9a0cca06e8a4e7509e/rpds_py-0.27.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6c27a7054b5224710fcfb1a626ec3ff4f28bcb89b899148c72873b18210e446b", size = 347680, upload-time = "2025-08-07T08:23:46.014Z" }, - { url = "https://files.pythonhosted.org/packages/44/3e/9834b4c8f4f5fe936b479e623832468aa4bd6beb8d014fecaee9eac6cdb1/rpds_py-0.27.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:09965b314091829b378b60607022048953e25f0b396c2b70e7c4c81bcecf932e", size = 384600, upload-time = "2025-08-07T08:23:48Z" }, - { url = "https://files.pythonhosted.org/packages/19/78/744123c7b38865a965cd9e6f691fde7ef989a00a256fa8bf15b75240d12f/rpds_py-0.27.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:14f028eb47f59e9169bfdf9f7ceafd29dd64902141840633683d0bad5b04ff34", size = 400697, upload-time = "2025-08-07T08:23:49.407Z" }, - { url = "https://files.pythonhosted.org/packages/32/97/3c3d32fe7daee0a1f1a678b6d4dfb8c4dcf88197fa2441f9da7cb54a8466/rpds_py-0.27.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6168af0be75bba990a39f9431cdfae5f0ad501f4af32ae62e8856307200517b8", size = 517781, upload-time = "2025-08-07T08:23:50.557Z" }, - { url = "https://files.pythonhosted.org/packages/b2/be/28f0e3e733680aa13ecec1212fc0f585928a206292f14f89c0b8a684cad1/rpds_py-0.27.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ab47fe727c13c09d0e6f508e3a49e545008e23bf762a245b020391b621f5b726", size = 406449, upload-time = "2025-08-07T08:23:51.732Z" }, - { url = "https://files.pythonhosted.org/packages/95/ae/5d15c83e337c082d0367053baeb40bfba683f42459f6ebff63a2fd7e5518/rpds_py-0.27.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5fa01b3d5e3b7d97efab65bd3d88f164e289ec323a8c033c5c38e53ee25c007e", size = 386150, upload-time = "2025-08-07T08:23:52.822Z" }, - { url = "https://files.pythonhosted.org/packages/bf/65/944e95f95d5931112829e040912b25a77b2e7ed913ea5fe5746aa5c1ce75/rpds_py-0.27.0-cp312-cp312-manylinux_2_31_riscv64.whl", hash = "sha256:6c135708e987f46053e0a1246a206f53717f9fadfba27174a9769ad4befba5c3", size = 406100, upload-time = "2025-08-07T08:23:54.339Z" }, - { url = "https://files.pythonhosted.org/packages/21/a4/1664b83fae02894533cd11dc0b9f91d673797c2185b7be0f7496107ed6c5/rpds_py-0.27.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:fc327f4497b7087d06204235199daf208fd01c82d80465dc5efa4ec9df1c5b4e", size = 421345, upload-time = "2025-08-07T08:23:55.832Z" }, - { url = "https://files.pythonhosted.org/packages/7c/26/b7303941c2b0823bfb34c71378249f8beedce57301f400acb04bb345d025/rpds_py-0.27.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:7e57906e38583a2cba67046a09c2637e23297618dc1f3caddbc493f2be97c93f", size = 561891, upload-time = "2025-08-07T08:23:56.951Z" }, - { url = "https://files.pythonhosted.org/packages/9b/c8/48623d64d4a5a028fa99576c768a6159db49ab907230edddc0b8468b998b/rpds_py-0.27.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:0f4f69d7a4300fbf91efb1fb4916421bd57804c01ab938ab50ac9c4aa2212f03", size = 591756, upload-time = "2025-08-07T08:23:58.146Z" }, - { url = "https://files.pythonhosted.org/packages/b3/51/18f62617e8e61cc66334c9fb44b1ad7baae3438662098efbc55fb3fda453/rpds_py-0.27.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:b4c4fbbcff474e1e5f38be1bf04511c03d492d42eec0babda5d03af3b5589374", size = 557088, upload-time = "2025-08-07T08:23:59.6Z" }, - { url = "https://files.pythonhosted.org/packages/bd/4c/e84c3a276e2496a93d245516be6b49e20499aa8ca1c94d59fada0d79addc/rpds_py-0.27.0-cp312-cp312-win32.whl", hash = "sha256:27bac29bbbf39601b2aab474daf99dbc8e7176ca3389237a23944b17f8913d97", size = 221926, upload-time = "2025-08-07T08:24:00.695Z" }, - { url = "https://files.pythonhosted.org/packages/83/89/9d0fbcef64340db0605eb0a0044f258076f3ae0a3b108983b2c614d96212/rpds_py-0.27.0-cp312-cp312-win_amd64.whl", hash = "sha256:8a06aa1197ec0281eb1d7daf6073e199eb832fe591ffa329b88bae28f25f5fe5", size = 233235, upload-time = "2025-08-07T08:24:01.846Z" }, - { url = "https://files.pythonhosted.org/packages/c9/b0/e177aa9f39cbab060f96de4a09df77d494f0279604dc2f509263e21b05f9/rpds_py-0.27.0-cp312-cp312-win_arm64.whl", hash = "sha256:e14aab02258cb776a108107bd15f5b5e4a1bbaa61ef33b36693dfab6f89d54f9", size = 223315, upload-time = "2025-08-07T08:24:03.337Z" }, - { url = "https://files.pythonhosted.org/packages/81/d2/dfdfd42565a923b9e5a29f93501664f5b984a802967d48d49200ad71be36/rpds_py-0.27.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:443d239d02d9ae55b74015234f2cd8eb09e59fbba30bf60baeb3123ad4c6d5ff", size = 362133, upload-time = "2025-08-07T08:24:04.508Z" }, - { url = "https://files.pythonhosted.org/packages/ac/4a/0a2e2460c4b66021d349ce9f6331df1d6c75d7eea90df9785d333a49df04/rpds_py-0.27.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b8a7acf04fda1f30f1007f3cc96d29d8cf0a53e626e4e1655fdf4eabc082d367", size = 347128, upload-time = "2025-08-07T08:24:05.695Z" }, - { url = "https://files.pythonhosted.org/packages/35/8d/7d1e4390dfe09d4213b3175a3f5a817514355cb3524593380733204f20b9/rpds_py-0.27.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9d0f92b78cfc3b74a42239fdd8c1266f4715b573204c234d2f9fc3fc7a24f185", size = 384027, upload-time = "2025-08-07T08:24:06.841Z" }, - { url = "https://files.pythonhosted.org/packages/c1/65/78499d1a62172891c8cd45de737b2a4b84a414b6ad8315ab3ac4945a5b61/rpds_py-0.27.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ce4ed8e0c7dbc5b19352b9c2c6131dd23b95fa8698b5cdd076307a33626b72dc", size = 399973, upload-time = "2025-08-07T08:24:08.143Z" }, - { url = "https://files.pythonhosted.org/packages/10/a1/1c67c1d8cc889107b19570bb01f75cf49852068e95e6aee80d22915406fc/rpds_py-0.27.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fde355b02934cc6b07200cc3b27ab0c15870a757d1a72fd401aa92e2ea3c6bfe", size = 515295, upload-time = "2025-08-07T08:24:09.711Z" }, - { url = "https://files.pythonhosted.org/packages/df/27/700ec88e748436b6c7c4a2262d66e80f8c21ab585d5e98c45e02f13f21c0/rpds_py-0.27.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:13bbc4846ae4c993f07c93feb21a24d8ec637573d567a924b1001e81c8ae80f9", size = 406737, upload-time = "2025-08-07T08:24:11.182Z" }, - { url = "https://files.pythonhosted.org/packages/33/cc/6b0ee8f0ba3f2df2daac1beda17fde5cf10897a7d466f252bd184ef20162/rpds_py-0.27.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:be0744661afbc4099fef7f4e604e7f1ea1be1dd7284f357924af12a705cc7d5c", size = 385898, upload-time = "2025-08-07T08:24:12.798Z" }, - { url = "https://files.pythonhosted.org/packages/e8/7e/c927b37d7d33c0a0ebf249cc268dc2fcec52864c1b6309ecb960497f2285/rpds_py-0.27.0-cp313-cp313-manylinux_2_31_riscv64.whl", hash = "sha256:069e0384a54f427bd65d7fda83b68a90606a3835901aaff42185fcd94f5a9295", size = 405785, upload-time = "2025-08-07T08:24:14.906Z" }, - { url = "https://files.pythonhosted.org/packages/5b/d2/8ed50746d909dcf402af3fa58b83d5a590ed43e07251d6b08fad1a535ba6/rpds_py-0.27.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:4bc262ace5a1a7dc3e2eac2fa97b8257ae795389f688b5adf22c5db1e2431c43", size = 419760, upload-time = "2025-08-07T08:24:16.129Z" }, - { url = "https://files.pythonhosted.org/packages/d3/60/2b2071aee781cb3bd49f94d5d35686990b925e9b9f3e3d149235a6f5d5c1/rpds_py-0.27.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:2fe6e18e5c8581f0361b35ae575043c7029d0a92cb3429e6e596c2cdde251432", size = 561201, upload-time = "2025-08-07T08:24:17.645Z" }, - { url = "https://files.pythonhosted.org/packages/98/1f/27b67304272521aaea02be293fecedce13fa351a4e41cdb9290576fc6d81/rpds_py-0.27.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:d93ebdb82363d2e7bec64eecdc3632b59e84bd270d74fe5be1659f7787052f9b", size = 591021, upload-time = "2025-08-07T08:24:18.999Z" }, - { url = "https://files.pythonhosted.org/packages/db/9b/a2fadf823164dd085b1f894be6443b0762a54a7af6f36e98e8fcda69ee50/rpds_py-0.27.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:0954e3a92e1d62e83a54ea7b3fdc9efa5d61acef8488a8a3d31fdafbfb00460d", size = 556368, upload-time = "2025-08-07T08:24:20.54Z" }, - { url = "https://files.pythonhosted.org/packages/24/f3/6d135d46a129cda2e3e6d4c5e91e2cc26ea0428c6cf152763f3f10b6dd05/rpds_py-0.27.0-cp313-cp313-win32.whl", hash = "sha256:2cff9bdd6c7b906cc562a505c04a57d92e82d37200027e8d362518df427f96cd", size = 221236, upload-time = "2025-08-07T08:24:22.144Z" }, - { url = "https://files.pythonhosted.org/packages/c5/44/65d7494f5448ecc755b545d78b188440f81da98b50ea0447ab5ebfdf9bd6/rpds_py-0.27.0-cp313-cp313-win_amd64.whl", hash = "sha256:dc79d192fb76fc0c84f2c58672c17bbbc383fd26c3cdc29daae16ce3d927e8b2", size = 232634, upload-time = "2025-08-07T08:24:23.642Z" }, - { url = "https://files.pythonhosted.org/packages/70/d9/23852410fadab2abb611733933401de42a1964ce6600a3badae35fbd573e/rpds_py-0.27.0-cp313-cp313-win_arm64.whl", hash = "sha256:5b3a5c8089eed498a3af23ce87a80805ff98f6ef8f7bdb70bd1b7dae5105f6ac", size = 222783, upload-time = "2025-08-07T08:24:25.098Z" }, - { url = "https://files.pythonhosted.org/packages/15/75/03447917f78512b34463f4ef11066516067099a0c466545655503bed0c77/rpds_py-0.27.0-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:90fb790138c1a89a2e58c9282fe1089638401f2f3b8dddd758499041bc6e0774", size = 359154, upload-time = "2025-08-07T08:24:26.249Z" }, - { url = "https://files.pythonhosted.org/packages/6b/fc/4dac4fa756451f2122ddaf136e2c6aeb758dc6fdbe9ccc4bc95c98451d50/rpds_py-0.27.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:010c4843a3b92b54373e3d2291a7447d6c3fc29f591772cc2ea0e9f5c1da434b", size = 343909, upload-time = "2025-08-07T08:24:27.405Z" }, - { url = "https://files.pythonhosted.org/packages/7b/81/723c1ed8e6f57ed9d8c0c07578747a2d3d554aaefc1ab89f4e42cfeefa07/rpds_py-0.27.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c9ce7a9e967afc0a2af7caa0d15a3e9c1054815f73d6a8cb9225b61921b419bd", size = 379340, upload-time = "2025-08-07T08:24:28.714Z" }, - { url = "https://files.pythonhosted.org/packages/98/16/7e3740413de71818ce1997df82ba5f94bae9fff90c0a578c0e24658e6201/rpds_py-0.27.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:aa0bf113d15e8abdfee92aa4db86761b709a09954083afcb5bf0f952d6065fdb", size = 391655, upload-time = "2025-08-07T08:24:30.223Z" }, - { url = "https://files.pythonhosted.org/packages/e0/63/2a9f510e124d80660f60ecce07953f3f2d5f0b96192c1365443859b9c87f/rpds_py-0.27.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:eb91d252b35004a84670dfeafadb042528b19842a0080d8b53e5ec1128e8f433", size = 513017, upload-time = "2025-08-07T08:24:31.446Z" }, - { url = "https://files.pythonhosted.org/packages/2c/4e/cf6ff311d09776c53ea1b4f2e6700b9d43bb4e99551006817ade4bbd6f78/rpds_py-0.27.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:db8a6313dbac934193fc17fe7610f70cd8181c542a91382531bef5ed785e5615", size = 402058, upload-time = "2025-08-07T08:24:32.613Z" }, - { url = "https://files.pythonhosted.org/packages/88/11/5e36096d474cb10f2a2d68b22af60a3bc4164fd8db15078769a568d9d3ac/rpds_py-0.27.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ce96ab0bdfcef1b8c371ada2100767ace6804ea35aacce0aef3aeb4f3f499ca8", size = 383474, upload-time = "2025-08-07T08:24:33.767Z" }, - { url = "https://files.pythonhosted.org/packages/db/a2/3dff02805b06058760b5eaa6d8cb8db3eb3e46c9e452453ad5fc5b5ad9fe/rpds_py-0.27.0-cp313-cp313t-manylinux_2_31_riscv64.whl", hash = "sha256:7451ede3560086abe1aa27dcdcf55cd15c96b56f543fb12e5826eee6f721f858", size = 400067, upload-time = "2025-08-07T08:24:35.021Z" }, - { url = "https://files.pythonhosted.org/packages/67/87/eed7369b0b265518e21ea836456a4ed4a6744c8c12422ce05bce760bb3cf/rpds_py-0.27.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:32196b5a99821476537b3f7732432d64d93a58d680a52c5e12a190ee0135d8b5", size = 412085, upload-time = "2025-08-07T08:24:36.267Z" }, - { url = "https://files.pythonhosted.org/packages/8b/48/f50b2ab2fbb422fbb389fe296e70b7a6b5ea31b263ada5c61377e710a924/rpds_py-0.27.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:a029be818059870664157194e46ce0e995082ac49926f1423c1f058534d2aaa9", size = 555928, upload-time = "2025-08-07T08:24:37.573Z" }, - { url = "https://files.pythonhosted.org/packages/98/41/b18eb51045d06887666c3560cd4bbb6819127b43d758f5adb82b5f56f7d1/rpds_py-0.27.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:3841f66c1ffdc6cebce8aed64e36db71466f1dc23c0d9a5592e2a782a3042c79", size = 585527, upload-time = "2025-08-07T08:24:39.391Z" }, - { url = "https://files.pythonhosted.org/packages/be/03/a3dd6470fc76499959b00ae56295b76b4bdf7c6ffc60d62006b1217567e1/rpds_py-0.27.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:42894616da0fc0dcb2ec08a77896c3f56e9cb2f4b66acd76fc8992c3557ceb1c", size = 554211, upload-time = "2025-08-07T08:24:40.6Z" }, - { url = "https://files.pythonhosted.org/packages/bf/d1/ee5fd1be395a07423ac4ca0bcc05280bf95db2b155d03adefeb47d5ebf7e/rpds_py-0.27.0-cp313-cp313t-win32.whl", hash = "sha256:b1fef1f13c842a39a03409e30ca0bf87b39a1e2a305a9924deadb75a43105d23", size = 216624, upload-time = "2025-08-07T08:24:42.204Z" }, - { url = "https://files.pythonhosted.org/packages/1c/94/4814c4c858833bf46706f87349c37ca45e154da7dbbec9ff09f1abeb08cc/rpds_py-0.27.0-cp313-cp313t-win_amd64.whl", hash = "sha256:183f5e221ba3e283cd36fdfbe311d95cd87699a083330b4f792543987167eff1", size = 230007, upload-time = "2025-08-07T08:24:43.329Z" }, - { url = "https://files.pythonhosted.org/packages/0e/a5/8fffe1c7dc7c055aa02df310f9fb71cfc693a4d5ccc5de2d3456ea5fb022/rpds_py-0.27.0-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:f3cd110e02c5bf17d8fb562f6c9df5c20e73029d587cf8602a2da6c5ef1e32cb", size = 362595, upload-time = "2025-08-07T08:24:44.478Z" }, - { url = "https://files.pythonhosted.org/packages/bc/c7/4e4253fd2d4bb0edbc0b0b10d9f280612ca4f0f990e3c04c599000fe7d71/rpds_py-0.27.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:8d0e09cf4863c74106b5265c2c310f36146e2b445ff7b3018a56799f28f39f6f", size = 347252, upload-time = "2025-08-07T08:24:45.678Z" }, - { url = "https://files.pythonhosted.org/packages/f3/c8/3d1a954d30f0174dd6baf18b57c215da03cf7846a9d6e0143304e784cddc/rpds_py-0.27.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:64f689ab822f9b5eb6dfc69893b4b9366db1d2420f7db1f6a2adf2a9ca15ad64", size = 384886, upload-time = "2025-08-07T08:24:46.86Z" }, - { url = "https://files.pythonhosted.org/packages/e0/52/3c5835f2df389832b28f9276dd5395b5a965cea34226e7c88c8fbec2093c/rpds_py-0.27.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e36c80c49853b3ffda7aa1831bf175c13356b210c73128c861f3aa93c3cc4015", size = 399716, upload-time = "2025-08-07T08:24:48.174Z" }, - { url = "https://files.pythonhosted.org/packages/40/73/176e46992461a1749686a2a441e24df51ff86b99c2d34bf39f2a5273b987/rpds_py-0.27.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6de6a7f622860af0146cb9ee148682ff4d0cea0b8fd3ad51ce4d40efb2f061d0", size = 517030, upload-time = "2025-08-07T08:24:49.52Z" }, - { url = "https://files.pythonhosted.org/packages/79/2a/7266c75840e8c6e70effeb0d38922a45720904f2cd695e68a0150e5407e2/rpds_py-0.27.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4045e2fc4b37ec4b48e8907a5819bdd3380708c139d7cc358f03a3653abedb89", size = 408448, upload-time = "2025-08-07T08:24:50.727Z" }, - { url = "https://files.pythonhosted.org/packages/e6/5f/a7efc572b8e235093dc6cf39f4dbc8a7f08e65fdbcec7ff4daeb3585eef1/rpds_py-0.27.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9da162b718b12c4219eeeeb68a5b7552fbc7aadedf2efee440f88b9c0e54b45d", size = 387320, upload-time = "2025-08-07T08:24:52.004Z" }, - { url = "https://files.pythonhosted.org/packages/a2/eb/9ff6bc92efe57cf5a2cb74dee20453ba444b6fdc85275d8c99e0d27239d1/rpds_py-0.27.0-cp314-cp314-manylinux_2_31_riscv64.whl", hash = "sha256:0665be515767dc727ffa5f74bd2ef60b0ff85dad6bb8f50d91eaa6b5fb226f51", size = 407414, upload-time = "2025-08-07T08:24:53.664Z" }, - { url = "https://files.pythonhosted.org/packages/fb/bd/3b9b19b00d5c6e1bd0f418c229ab0f8d3b110ddf7ec5d9d689ef783d0268/rpds_py-0.27.0-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:203f581accef67300a942e49a37d74c12ceeef4514874c7cede21b012613ca2c", size = 420766, upload-time = "2025-08-07T08:24:55.917Z" }, - { url = "https://files.pythonhosted.org/packages/17/6b/521a7b1079ce16258c70805166e3ac6ec4ee2139d023fe07954dc9b2d568/rpds_py-0.27.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:7873b65686a6471c0037139aa000d23fe94628e0daaa27b6e40607c90e3f5ec4", size = 562409, upload-time = "2025-08-07T08:24:57.17Z" }, - { url = "https://files.pythonhosted.org/packages/8b/bf/65db5bfb14ccc55e39de8419a659d05a2a9cd232f0a699a516bb0991da7b/rpds_py-0.27.0-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:249ab91ceaa6b41abc5f19513cb95b45c6f956f6b89f1fe3d99c81255a849f9e", size = 590793, upload-time = "2025-08-07T08:24:58.388Z" }, - { url = "https://files.pythonhosted.org/packages/db/b8/82d368b378325191ba7aae8f40f009b78057b598d4394d1f2cdabaf67b3f/rpds_py-0.27.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:d2f184336bc1d6abfaaa1262ed42739c3789b1e3a65a29916a615307d22ffd2e", size = 558178, upload-time = "2025-08-07T08:24:59.756Z" }, - { url = "https://files.pythonhosted.org/packages/f6/ff/f270bddbfbc3812500f8131b1ebbd97afd014cd554b604a3f73f03133a36/rpds_py-0.27.0-cp314-cp314-win32.whl", hash = "sha256:d3c622c39f04d5751408f5b801ecb527e6e0a471b367f420a877f7a660d583f6", size = 222355, upload-time = "2025-08-07T08:25:01.027Z" }, - { url = "https://files.pythonhosted.org/packages/bf/20/fdab055b1460c02ed356a0e0b0a78c1dd32dc64e82a544f7b31c9ac643dc/rpds_py-0.27.0-cp314-cp314-win_amd64.whl", hash = "sha256:cf824aceaeffff029ccfba0da637d432ca71ab21f13e7f6f5179cd88ebc77a8a", size = 234007, upload-time = "2025-08-07T08:25:02.268Z" }, - { url = "https://files.pythonhosted.org/packages/4d/a8/694c060005421797a3be4943dab8347c76c2b429a9bef68fb2c87c9e70c7/rpds_py-0.27.0-cp314-cp314-win_arm64.whl", hash = "sha256:86aca1616922b40d8ac1b3073a1ead4255a2f13405e5700c01f7c8d29a03972d", size = 223527, upload-time = "2025-08-07T08:25:03.45Z" }, - { url = "https://files.pythonhosted.org/packages/1e/f9/77f4c90f79d2c5ca8ce6ec6a76cb4734ee247de6b3a4f337e289e1f00372/rpds_py-0.27.0-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:341d8acb6724c0c17bdf714319c393bb27f6d23d39bc74f94221b3e59fc31828", size = 359469, upload-time = "2025-08-07T08:25:04.648Z" }, - { url = "https://files.pythonhosted.org/packages/c0/22/b97878d2f1284286fef4172069e84b0b42b546ea7d053e5fb7adb9ac6494/rpds_py-0.27.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:6b96b0b784fe5fd03beffff2b1533dc0d85e92bab8d1b2c24ef3a5dc8fac5669", size = 343960, upload-time = "2025-08-07T08:25:05.863Z" }, - { url = "https://files.pythonhosted.org/packages/b1/b0/dfd55b5bb480eda0578ae94ef256d3061d20b19a0f5e18c482f03e65464f/rpds_py-0.27.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0c431bfb91478d7cbe368d0a699978050d3b112d7f1d440a41e90faa325557fd", size = 380201, upload-time = "2025-08-07T08:25:07.513Z" }, - { url = "https://files.pythonhosted.org/packages/28/22/e1fa64e50d58ad2b2053077e3ec81a979147c43428de9e6de68ddf6aff4e/rpds_py-0.27.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:20e222a44ae9f507d0f2678ee3dd0c45ec1e930f6875d99b8459631c24058aec", size = 392111, upload-time = "2025-08-07T08:25:09.149Z" }, - { url = "https://files.pythonhosted.org/packages/49/f9/43ab7a43e97aedf6cea6af70fdcbe18abbbc41d4ae6cdec1bfc23bbad403/rpds_py-0.27.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:184f0d7b342967f6cda94a07d0e1fae177d11d0b8f17d73e06e36ac02889f303", size = 515863, upload-time = "2025-08-07T08:25:10.431Z" }, - { url = "https://files.pythonhosted.org/packages/38/9b/9bd59dcc636cd04d86a2d20ad967770bf348f5eb5922a8f29b547c074243/rpds_py-0.27.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a00c91104c173c9043bc46f7b30ee5e6d2f6b1149f11f545580f5d6fdff42c0b", size = 402398, upload-time = "2025-08-07T08:25:11.819Z" }, - { url = "https://files.pythonhosted.org/packages/71/bf/f099328c6c85667aba6b66fa5c35a8882db06dcd462ea214be72813a0dd2/rpds_py-0.27.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f7a37dd208f0d658e0487522078b1ed68cd6bce20ef4b5a915d2809b9094b410", size = 384665, upload-time = "2025-08-07T08:25:13.194Z" }, - { url = "https://files.pythonhosted.org/packages/a9/c5/9c1f03121ece6634818490bd3c8be2c82a70928a19de03467fb25a3ae2a8/rpds_py-0.27.0-cp314-cp314t-manylinux_2_31_riscv64.whl", hash = "sha256:92f3b3ec3e6008a1fe00b7c0946a170f161ac00645cde35e3c9a68c2475e8156", size = 400405, upload-time = "2025-08-07T08:25:14.417Z" }, - { url = "https://files.pythonhosted.org/packages/b5/b8/e25d54af3e63ac94f0c16d8fe143779fe71ff209445a0c00d0f6984b6b2c/rpds_py-0.27.0-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a1b3db5fae5cbce2131b7420a3f83553d4d89514c03d67804ced36161fe8b6b2", size = 413179, upload-time = "2025-08-07T08:25:15.664Z" }, - { url = "https://files.pythonhosted.org/packages/f9/d1/406b3316433fe49c3021546293a04bc33f1478e3ec7950215a7fce1a1208/rpds_py-0.27.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:5355527adaa713ab693cbce7c1e0ec71682f599f61b128cf19d07e5c13c9b1f1", size = 556895, upload-time = "2025-08-07T08:25:17.061Z" }, - { url = "https://files.pythonhosted.org/packages/5f/bc/3697c0c21fcb9a54d46ae3b735eb2365eea0c2be076b8f770f98e07998de/rpds_py-0.27.0-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:fcc01c57ce6e70b728af02b2401c5bc853a9e14eb07deda30624374f0aebfe42", size = 585464, upload-time = "2025-08-07T08:25:18.406Z" }, - { url = "https://files.pythonhosted.org/packages/63/09/ee1bb5536f99f42c839b177d552f6114aa3142d82f49cef49261ed28dbe0/rpds_py-0.27.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:3001013dae10f806380ba739d40dee11db1ecb91684febb8406a87c2ded23dae", size = 555090, upload-time = "2025-08-07T08:25:20.461Z" }, - { url = "https://files.pythonhosted.org/packages/7d/2c/363eada9e89f7059199d3724135a86c47082cbf72790d6ba2f336d146ddb/rpds_py-0.27.0-cp314-cp314t-win32.whl", hash = "sha256:0f401c369186a5743694dd9fc08cba66cf70908757552e1f714bfc5219c655b5", size = 218001, upload-time = "2025-08-07T08:25:21.761Z" }, - { url = "https://files.pythonhosted.org/packages/e2/3f/d6c216ed5199c9ef79e2a33955601f454ed1e7420a93b89670133bca5ace/rpds_py-0.27.0-cp314-cp314t-win_amd64.whl", hash = "sha256:8a1dca5507fa1337f75dcd5070218b20bc68cf8844271c923c1b79dfcbc20391", size = 230993, upload-time = "2025-08-07T08:25:23.34Z" }, -] - -[[package]] -name = "ruff" -version = "0.12.10" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/3b/eb/8c073deb376e46ae767f4961390d17545e8535921d2f65101720ed8bd434/ruff-0.12.10.tar.gz", hash = "sha256:189ab65149d11ea69a2d775343adf5f49bb2426fc4780f65ee33b423ad2e47f9", size = 5310076, upload-time = "2025-08-21T18:23:22.595Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/24/e7/560d049d15585d6c201f9eeacd2fd130def3741323e5ccf123786e0e3c95/ruff-0.12.10-py3-none-linux_armv6l.whl", hash = "sha256:8b593cb0fb55cc8692dac7b06deb29afda78c721c7ccfed22db941201b7b8f7b", size = 11935161, upload-time = "2025-08-21T18:22:26.965Z" }, - { url = "https://files.pythonhosted.org/packages/d1/b0/ad2464922a1113c365d12b8f80ed70fcfb39764288ac77c995156080488d/ruff-0.12.10-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:ebb7333a45d56efc7c110a46a69a1b32365d5c5161e7244aaf3aa20ce62399c1", size = 12660884, upload-time = "2025-08-21T18:22:30.925Z" }, - { url = "https://files.pythonhosted.org/packages/d7/f1/97f509b4108d7bae16c48389f54f005b62ce86712120fd8b2d8e88a7cb49/ruff-0.12.10-py3-none-macosx_11_0_arm64.whl", hash = "sha256:d59e58586829f8e4a9920788f6efba97a13d1fa320b047814e8afede381c6839", size = 11872754, upload-time = "2025-08-21T18:22:34.035Z" }, - { url = "https://files.pythonhosted.org/packages/12/ad/44f606d243f744a75adc432275217296095101f83f966842063d78eee2d3/ruff-0.12.10-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:822d9677b560f1fdeab69b89d1f444bf5459da4aa04e06e766cf0121771ab844", size = 12092276, upload-time = "2025-08-21T18:22:36.764Z" }, - { url = "https://files.pythonhosted.org/packages/06/1f/ed6c265e199568010197909b25c896d66e4ef2c5e1c3808caf461f6f3579/ruff-0.12.10-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:37b4a64f4062a50c75019c61c7017ff598cb444984b638511f48539d3a1c98db", size = 11734700, upload-time = "2025-08-21T18:22:39.822Z" }, - { url = "https://files.pythonhosted.org/packages/63/c5/b21cde720f54a1d1db71538c0bc9b73dee4b563a7dd7d2e404914904d7f5/ruff-0.12.10-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2c6f4064c69d2542029b2a61d39920c85240c39837599d7f2e32e80d36401d6e", size = 13468783, upload-time = "2025-08-21T18:22:42.559Z" }, - { url = "https://files.pythonhosted.org/packages/02/9e/39369e6ac7f2a1848f22fb0b00b690492f20811a1ac5c1fd1d2798329263/ruff-0.12.10-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:059e863ea3a9ade41407ad71c1de2badfbe01539117f38f763ba42a1206f7559", size = 14436642, upload-time = "2025-08-21T18:22:45.612Z" }, - { url = "https://files.pythonhosted.org/packages/e3/03/5da8cad4b0d5242a936eb203b58318016db44f5c5d351b07e3f5e211bb89/ruff-0.12.10-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1bef6161e297c68908b7218fa6e0e93e99a286e5ed9653d4be71e687dff101cf", size = 13859107, upload-time = "2025-08-21T18:22:48.886Z" }, - { url = "https://files.pythonhosted.org/packages/19/19/dd7273b69bf7f93a070c9cec9494a94048325ad18fdcf50114f07e6bf417/ruff-0.12.10-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4f1345fbf8fb0531cd722285b5f15af49b2932742fc96b633e883da8d841896b", size = 12886521, upload-time = "2025-08-21T18:22:51.567Z" }, - { url = "https://files.pythonhosted.org/packages/c0/1d/b4207ec35e7babaee62c462769e77457e26eb853fbdc877af29417033333/ruff-0.12.10-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1f68433c4fbc63efbfa3ba5db31727db229fa4e61000f452c540474b03de52a9", size = 13097528, upload-time = "2025-08-21T18:22:54.609Z" }, - { url = "https://files.pythonhosted.org/packages/ff/00/58f7b873b21114456e880b75176af3490d7a2836033779ca42f50de3b47a/ruff-0.12.10-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:141ce3d88803c625257b8a6debf4a0473eb6eed9643a6189b68838b43e78165a", size = 13080443, upload-time = "2025-08-21T18:22:57.413Z" }, - { url = "https://files.pythonhosted.org/packages/12/8c/9e6660007fb10189ccb78a02b41691288038e51e4788bf49b0a60f740604/ruff-0.12.10-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:f3fc21178cd44c98142ae7590f42ddcb587b8e09a3b849cbc84edb62ee95de60", size = 11896759, upload-time = "2025-08-21T18:23:00.473Z" }, - { url = "https://files.pythonhosted.org/packages/67/4c/6d092bb99ea9ea6ebda817a0e7ad886f42a58b4501a7e27cd97371d0ba54/ruff-0.12.10-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:7d1a4e0bdfafcd2e3e235ecf50bf0176f74dd37902f241588ae1f6c827a36c56", size = 11701463, upload-time = "2025-08-21T18:23:03.211Z" }, - { url = "https://files.pythonhosted.org/packages/59/80/d982c55e91df981f3ab62559371380616c57ffd0172d96850280c2b04fa8/ruff-0.12.10-py3-none-musllinux_1_2_i686.whl", hash = "sha256:e67d96827854f50b9e3e8327b031647e7bcc090dbe7bb11101a81a3a2cbf1cc9", size = 12691603, upload-time = "2025-08-21T18:23:06.935Z" }, - { url = "https://files.pythonhosted.org/packages/ad/37/63a9c788bbe0b0850611669ec6b8589838faf2f4f959647f2d3e320383ae/ruff-0.12.10-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:ae479e1a18b439c59138f066ae79cc0f3ee250712a873d00dbafadaad9481e5b", size = 13164356, upload-time = "2025-08-21T18:23:10.225Z" }, - { url = "https://files.pythonhosted.org/packages/47/d4/1aaa7fb201a74181989970ebccd12f88c0fc074777027e2a21de5a90657e/ruff-0.12.10-py3-none-win32.whl", hash = "sha256:9de785e95dc2f09846c5e6e1d3a3d32ecd0b283a979898ad427a9be7be22b266", size = 11896089, upload-time = "2025-08-21T18:23:14.232Z" }, - { url = "https://files.pythonhosted.org/packages/ad/14/2ad38fd4037daab9e023456a4a40ed0154e9971f8d6aed41bdea390aabd9/ruff-0.12.10-py3-none-win_amd64.whl", hash = "sha256:7837eca8787f076f67aba2ca559cefd9c5cbc3a9852fd66186f4201b87c1563e", size = 13004616, upload-time = "2025-08-21T18:23:17.422Z" }, - { url = "https://files.pythonhosted.org/packages/24/3c/21cf283d67af33a8e6ed242396863af195a8a6134ec581524fd22b9811b6/ruff-0.12.10-py3-none-win_arm64.whl", hash = "sha256:cc138cc06ed9d4bfa9d667a65af7172b47840e1a98b02ce7011c391e54635ffc", size = 12074225, upload-time = "2025-08-21T18:23:20.137Z" }, -] - -[[package]] -name = "send2trash" -version = "1.8.3" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/fd/3a/aec9b02217bb79b87bbc1a21bc6abc51e3d5dcf65c30487ac96c0908c722/Send2Trash-1.8.3.tar.gz", hash = "sha256:b18e7a3966d99871aefeb00cfbcfdced55ce4871194810fc71f4aa484b953abf", size = 17394, upload-time = "2024-04-07T00:01:09.267Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl", hash = "sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9", size = 18072, upload-time = "2024-04-07T00:01:07.438Z" }, -] - -[[package]] -name = "setuptools" -version = "80.9.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/18/5d/3bf57dcd21979b887f014ea83c24ae194cfcd12b9e0fda66b957c69d1fca/setuptools-80.9.0.tar.gz", hash = "sha256:f36b47402ecde768dbfafc46e8e4207b4360c654f1f3bb84475f0a28628fb19c", size = 1319958, upload-time = "2025-05-27T00:56:51.443Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl", hash = "sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922", size = 1201486, upload-time = "2025-05-27T00:56:49.664Z" }, -] - -[[package]] -name = "six" -version = "1.17.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/94/e7/b2c673351809dca68a0e064b6af791aa332cf192da575fd474ed7d6f16a2/six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81", size = 34031, upload-time = "2024-12-04T17:35:28.174Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274", size = 11050, upload-time = "2024-12-04T17:35:26.475Z" }, -] - -[[package]] -name = "sniffio" -version = "1.3.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/a2/87/a6771e1546d97e7e041b6ae58d80074f81b7d5121207425c964ddf5cfdbd/sniffio-1.3.1.tar.gz", hash = "sha256:f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc", size = 20372, upload-time = "2024-02-25T23:20:04.057Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl", hash = "sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2", size = 10235, upload-time = "2024-02-25T23:20:01.196Z" }, -] - -[[package]] -name = "soupsieve" -version = "2.7" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/3f/f4/4a80cd6ef364b2e8b65b15816a843c0980f7a5a2b4dc701fc574952aa19f/soupsieve-2.7.tar.gz", hash = "sha256:ad282f9b6926286d2ead4750552c8a6142bc4c783fd66b0293547c8fe6ae126a", size = 103418, upload-time = "2025-04-20T18:50:08.518Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/e7/9c/0e6afc12c269578be5c0c1c9f4b49a8d32770a080260c333ac04cc1c832d/soupsieve-2.7-py3-none-any.whl", hash = "sha256:6e60cc5c1ffaf1cebcc12e8188320b72071e922c2e897f737cadce79ad5d30c4", size = 36677, upload-time = "2025-04-20T18:50:07.196Z" }, -] - -[[package]] -name = "stack-data" -version = "0.6.3" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "asttokens" }, - { name = "executing" }, - { name = "pure-eval" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/28/e3/55dcc2cfbc3ca9c29519eb6884dd1415ecb53b0e934862d3559ddcb7e20b/stack_data-0.6.3.tar.gz", hash = "sha256:836a778de4fec4dcd1dcd89ed8abff8a221f58308462e1c4aa2a3cf30148f0b9", size = 44707, upload-time = "2023-09-30T13:58:05.479Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl", hash = "sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695", size = 24521, upload-time = "2023-09-30T13:58:03.53Z" }, -] - -[[package]] -name = "super-collections" -version = "0.5.3" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "hjson" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/b8/05/d1b50919a0d206d77255217d96dea9ab34bd1eb965a21559380c48f9517e/super_collections-0.5.3.tar.gz", hash = "sha256:94c1ec96c0a0d5e8e7d389ed8cde6882ac246940507c5e6b86e91945c2968d46", size = 10178, upload-time = "2024-10-12T05:11:19.888Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/07/6d/58de58c521e7fb79bceb4da90d55250070bb4adfa3c870b82519a561c79d/super_collections-0.5.3-py3-none-any.whl", hash = "sha256:907d35b25dc4070910e8254bf2f5c928348af1cf8a1f1e8259e06c666e902cff", size = 8436, upload-time = "2024-10-12T05:11:18.626Z" }, -] - -[[package]] -name = "ta-lib" -version = "0.6.4" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "numpy" }, - { name = "setuptools" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/ba/97/a49816dd468a18ee080cf3a04640772a9f6321790d4049cece2490c4b7ad/ta_lib-0.6.4.tar.gz", hash = "sha256:08f55bc5771a6d1ceb1a2b713aad7b05f04eb0061e980c9113571c532d32e9cb", size = 381774, upload-time = "2025-06-08T15:28:15.452Z" } - -[[package]] -name = "termcolor" -version = "3.1.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/ca/6c/3d75c196ac07ac8749600b60b03f4f6094d54e132c4d94ebac6ee0e0add0/termcolor-3.1.0.tar.gz", hash = "sha256:6a6dd7fbee581909eeec6a756cff1d7f7c376063b14e4a298dc4980309e55970", size = 14324, upload-time = "2025-04-30T11:37:53.791Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl", hash = "sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa", size = 7684, upload-time = "2025-04-30T11:37:52.382Z" }, -] - -[[package]] -name = "terminado" -version = "0.18.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "ptyprocess", marker = "os_name != 'nt'" }, - { name = "pywinpty", marker = "os_name == 'nt'" }, - { name = "tornado" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/8a/11/965c6fd8e5cc254f1fe142d547387da17a8ebfd75a3455f637c663fb38a0/terminado-0.18.1.tar.gz", hash = "sha256:de09f2c4b85de4765f7714688fff57d3e75bad1f909b589fde880460c753fd2e", size = 32701, upload-time = "2024-03-12T14:34:39.026Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl", hash = "sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0", size = 14154, upload-time = "2024-03-12T14:34:36.569Z" }, -] - -[[package]] -name = "tinycss2" -version = "1.4.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "webencodings" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/7a/fd/7a5ee21fd08ff70d3d33a5781c255cbe779659bd03278feb98b19ee550f4/tinycss2-1.4.0.tar.gz", hash = "sha256:10c0972f6fc0fbee87c3edb76549357415e94548c1ae10ebccdea16fb404a9b7", size = 87085, upload-time = "2024-10-24T14:58:29.895Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl", hash = "sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289", size = 26610, upload-time = "2024-10-24T14:58:28.029Z" }, -] - -[[package]] -name = "tornado" -version = "6.5.2" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/09/ce/1eb500eae19f4648281bb2186927bb062d2438c2e5093d1360391afd2f90/tornado-6.5.2.tar.gz", hash = "sha256:ab53c8f9a0fa351e2c0741284e06c7a45da86afb544133201c5cc8578eb076a0", size = 510821, upload-time = "2025-08-08T18:27:00.78Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/f6/48/6a7529df2c9cc12efd2e8f5dd219516184d703b34c06786809670df5b3bd/tornado-6.5.2-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:2436822940d37cde62771cff8774f4f00b3c8024fe482e16ca8387b8a2724db6", size = 442563, upload-time = "2025-08-08T18:26:42.945Z" }, - { url = "https://files.pythonhosted.org/packages/f2/b5/9b575a0ed3e50b00c40b08cbce82eb618229091d09f6d14bce80fc01cb0b/tornado-6.5.2-cp39-abi3-macosx_10_9_x86_64.whl", hash = "sha256:583a52c7aa94ee046854ba81d9ebb6c81ec0fd30386d96f7640c96dad45a03ef", size = 440729, upload-time = "2025-08-08T18:26:44.473Z" }, - { url = "https://files.pythonhosted.org/packages/1b/4e/619174f52b120efcf23633c817fd3fed867c30bff785e2cd5a53a70e483c/tornado-6.5.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b0fe179f28d597deab2842b86ed4060deec7388f1fd9c1b4a41adf8af058907e", size = 444295, upload-time = "2025-08-08T18:26:46.021Z" }, - { url = "https://files.pythonhosted.org/packages/95/fa/87b41709552bbd393c85dd18e4e3499dcd8983f66e7972926db8d96aa065/tornado-6.5.2-cp39-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b186e85d1e3536d69583d2298423744740986018e393d0321df7340e71898882", size = 443644, upload-time = "2025-08-08T18:26:47.625Z" }, - { url = "https://files.pythonhosted.org/packages/f9/41/fb15f06e33d7430ca89420283a8762a4e6b8025b800ea51796ab5e6d9559/tornado-6.5.2-cp39-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e792706668c87709709c18b353da1f7662317b563ff69f00bab83595940c7108", size = 443878, upload-time = "2025-08-08T18:26:50.599Z" }, - { url = "https://files.pythonhosted.org/packages/11/92/fe6d57da897776ad2e01e279170ea8ae726755b045fe5ac73b75357a5a3f/tornado-6.5.2-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:06ceb1300fd70cb20e43b1ad8aaee0266e69e7ced38fa910ad2e03285009ce7c", size = 444549, upload-time = "2025-08-08T18:26:51.864Z" }, - { url = "https://files.pythonhosted.org/packages/9b/02/c8f4f6c9204526daf3d760f4aa555a7a33ad0e60843eac025ccfd6ff4a93/tornado-6.5.2-cp39-abi3-musllinux_1_2_i686.whl", hash = "sha256:74db443e0f5251be86cbf37929f84d8c20c27a355dd452a5cfa2aada0d001ec4", size = 443973, upload-time = "2025-08-08T18:26:53.625Z" }, - { url = "https://files.pythonhosted.org/packages/ae/2d/f5f5707b655ce2317190183868cd0f6822a1121b4baeae509ceb9590d0bd/tornado-6.5.2-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:b5e735ab2889d7ed33b32a459cac490eda71a1ba6857b0118de476ab6c366c04", size = 443954, upload-time = "2025-08-08T18:26:55.072Z" }, - { url = "https://files.pythonhosted.org/packages/e8/59/593bd0f40f7355806bf6573b47b8c22f8e1374c9b6fd03114bd6b7a3dcfd/tornado-6.5.2-cp39-abi3-win32.whl", hash = "sha256:c6f29e94d9b37a95013bb669616352ddb82e3bfe8326fccee50583caebc8a5f0", size = 445023, upload-time = "2025-08-08T18:26:56.677Z" }, - { url = "https://files.pythonhosted.org/packages/c7/2a/f609b420c2f564a748a2d80ebfb2ee02a73ca80223af712fca591386cafb/tornado-6.5.2-cp39-abi3-win_amd64.whl", hash = "sha256:e56a5af51cc30dd2cae649429af65ca2f6571da29504a07995175df14c18f35f", size = 445427, upload-time = "2025-08-08T18:26:57.91Z" }, - { url = "https://files.pythonhosted.org/packages/5e/4f/e1f65e8f8c76d73658b33d33b81eed4322fb5085350e4328d5c956f0c8f9/tornado-6.5.2-cp39-abi3-win_arm64.whl", hash = "sha256:d6c33dc3672e3a1f3618eb63b7ef4683a7688e7b9e6e8f0d9aa5726360a004af", size = 444456, upload-time = "2025-08-08T18:26:59.207Z" }, -] - -[[package]] -name = "tqdm" -version = "4.67.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "colorama", marker = "sys_platform == 'win32'" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/a8/4b/29b4ef32e036bb34e4ab51796dd745cdba7ed47ad142a9f4a1eb8e0c744d/tqdm-4.67.1.tar.gz", hash = "sha256:f8aef9c52c08c13a65f30ea34f4e5aac3fd1a34959879d7e59e63027286627f2", size = 169737, upload-time = "2024-11-24T20:12:22.481Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl", hash = "sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2", size = 78540, upload-time = "2024-11-24T20:12:19.698Z" }, -] - -[[package]] -name = "traitlets" -version = "5.14.3" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/eb/79/72064e6a701c2183016abbbfedaba506d81e30e232a68c9f0d6f6fcd1574/traitlets-5.14.3.tar.gz", hash = "sha256:9ed0579d3502c94b4b3732ac120375cda96f923114522847de4b3bb98b96b6b7", size = 161621, upload-time = "2024-04-19T11:11:49.746Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl", hash = "sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f", size = 85359, upload-time = "2024-04-19T11:11:46.763Z" }, -] - -[[package]] -name = "types-python-dateutil" -version = "2.9.0.20250822" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/0c/0a/775f8551665992204c756be326f3575abba58c4a3a52eef9909ef4536428/types_python_dateutil-2.9.0.20250822.tar.gz", hash = "sha256:84c92c34bd8e68b117bff742bc00b692a1e8531262d4507b33afcc9f7716cd53", size = 16084, upload-time = "2025-08-22T03:02:00.613Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/ab/d9/a29dfa84363e88b053bf85a8b7f212a04f0d7343a4d24933baa45c06e08b/types_python_dateutil-2.9.0.20250822-py3-none-any.whl", hash = "sha256:849d52b737e10a6dc6621d2bd7940ec7c65fcb69e6aa2882acf4e56b2b508ddc", size = 17892, upload-time = "2025-08-22T03:01:59.436Z" }, -] - -[[package]] -name = "typing-extensions" -version = "4.15.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/72/94/1a15dd82efb362ac84269196e94cf00f187f7ed21c242792a923cdb1c61f/typing_extensions-4.15.0.tar.gz", hash = "sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466", size = 109391, upload-time = "2025-08-25T13:49:26.313Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl", hash = "sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548", size = 44614, upload-time = "2025-08-25T13:49:24.86Z" }, -] - -[[package]] -name = "tzdata" -version = "2025.2" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/95/32/1a225d6164441be760d75c2c42e2780dc0873fe382da3e98a2e1e48361e5/tzdata-2025.2.tar.gz", hash = "sha256:b60a638fcc0daffadf82fe0f57e53d06bdec2f36c4df66280ae79bce6bd6f2b9", size = 196380, upload-time = "2025-03-23T13:54:43.652Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl", hash = "sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8", size = 347839, upload-time = "2025-03-23T13:54:41.845Z" }, -] - -[[package]] -name = "uri-template" -version = "1.3.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/31/c7/0336f2bd0bcbada6ccef7aaa25e443c118a704f828a0620c6fa0207c1b64/uri-template-1.3.0.tar.gz", hash = "sha256:0e00f8eb65e18c7de20d595a14336e9f337ead580c70934141624b6d1ffdacc7", size = 21678, upload-time = "2023-06-21T01:49:05.374Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl", hash = "sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363", size = 11140, upload-time = "2023-06-21T01:49:03.467Z" }, -] - -[[package]] -name = "urllib3" -version = "2.5.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/15/22/9ee70a2574a4f4599c47dd506532914ce044817c7752a79b6a51286319bc/urllib3-2.5.0.tar.gz", hash = "sha256:3fc47733c7e419d4bc3f6b3dc2b4f890bb743906a30d56ba4a5bfa4bbff92760", size = 393185, upload-time = "2025-06-18T14:07:41.644Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl", hash = "sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc", size = 129795, upload-time = "2025-06-18T14:07:40.39Z" }, -] - -[[package]] -name = "watchdog" -version = "6.0.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/db/7d/7f3d619e951c88ed75c6037b246ddcf2d322812ee8ea189be89511721d54/watchdog-6.0.0.tar.gz", hash = "sha256:9ddf7c82fda3ae8e24decda1338ede66e1c99883db93711d8fb941eaa2d8c282", size = 131220, upload-time = "2024-11-01T14:07:13.037Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/39/ea/3930d07dafc9e286ed356a679aa02d777c06e9bfd1164fa7c19c288a5483/watchdog-6.0.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:bdd4e6f14b8b18c334febb9c4425a878a2ac20efd1e0b231978e7b150f92a948", size = 96471, upload-time = "2024-11-01T14:06:37.745Z" }, - { url = "https://files.pythonhosted.org/packages/12/87/48361531f70b1f87928b045df868a9fd4e253d9ae087fa4cf3f7113be363/watchdog-6.0.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:c7c15dda13c4eb00d6fb6fc508b3c0ed88b9d5d374056b239c4ad1611125c860", size = 88449, upload-time = "2024-11-01T14:06:39.748Z" }, - { url = "https://files.pythonhosted.org/packages/5b/7e/8f322f5e600812e6f9a31b75d242631068ca8f4ef0582dd3ae6e72daecc8/watchdog-6.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6f10cb2d5902447c7d0da897e2c6768bca89174d0c6e1e30abec5421af97a5b0", size = 89054, upload-time = "2024-11-01T14:06:41.009Z" }, - { url = "https://files.pythonhosted.org/packages/68/98/b0345cabdce2041a01293ba483333582891a3bd5769b08eceb0d406056ef/watchdog-6.0.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:490ab2ef84f11129844c23fb14ecf30ef3d8a6abafd3754a6f75ca1e6654136c", size = 96480, upload-time = "2024-11-01T14:06:42.952Z" }, - { url = "https://files.pythonhosted.org/packages/85/83/cdf13902c626b28eedef7ec4f10745c52aad8a8fe7eb04ed7b1f111ca20e/watchdog-6.0.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:76aae96b00ae814b181bb25b1b98076d5fc84e8a53cd8885a318b42b6d3a5134", size = 88451, upload-time = "2024-11-01T14:06:45.084Z" }, - { url = "https://files.pythonhosted.org/packages/fe/c4/225c87bae08c8b9ec99030cd48ae9c4eca050a59bf5c2255853e18c87b50/watchdog-6.0.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a175f755fc2279e0b7312c0035d52e27211a5bc39719dd529625b1930917345b", size = 89057, upload-time = "2024-11-01T14:06:47.324Z" }, - { url = "https://files.pythonhosted.org/packages/a9/c7/ca4bf3e518cb57a686b2feb4f55a1892fd9a3dd13f470fca14e00f80ea36/watchdog-6.0.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:7607498efa04a3542ae3e05e64da8202e58159aa1fa4acddf7678d34a35d4f13", size = 79079, upload-time = "2024-11-01T14:06:59.472Z" }, - { url = "https://files.pythonhosted.org/packages/5c/51/d46dc9332f9a647593c947b4b88e2381c8dfc0942d15b8edc0310fa4abb1/watchdog-6.0.0-py3-none-manylinux2014_armv7l.whl", hash = "sha256:9041567ee8953024c83343288ccc458fd0a2d811d6a0fd68c4c22609e3490379", size = 79078, upload-time = "2024-11-01T14:07:01.431Z" }, - { url = "https://files.pythonhosted.org/packages/d4/57/04edbf5e169cd318d5f07b4766fee38e825d64b6913ca157ca32d1a42267/watchdog-6.0.0-py3-none-manylinux2014_i686.whl", hash = "sha256:82dc3e3143c7e38ec49d61af98d6558288c415eac98486a5c581726e0737c00e", size = 79076, upload-time = "2024-11-01T14:07:02.568Z" }, - { url = "https://files.pythonhosted.org/packages/ab/cc/da8422b300e13cb187d2203f20b9253e91058aaf7db65b74142013478e66/watchdog-6.0.0-py3-none-manylinux2014_ppc64.whl", hash = "sha256:212ac9b8bf1161dc91bd09c048048a95ca3a4c4f5e5d4a7d1b1a7d5752a7f96f", size = 79077, upload-time = "2024-11-01T14:07:03.893Z" }, - { url = "https://files.pythonhosted.org/packages/2c/3b/b8964e04ae1a025c44ba8e4291f86e97fac443bca31de8bd98d3263d2fcf/watchdog-6.0.0-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:e3df4cbb9a450c6d49318f6d14f4bbc80d763fa587ba46ec86f99f9e6876bb26", size = 79078, upload-time = "2024-11-01T14:07:05.189Z" }, - { url = "https://files.pythonhosted.org/packages/62/ae/a696eb424bedff7407801c257d4b1afda455fe40821a2be430e173660e81/watchdog-6.0.0-py3-none-manylinux2014_s390x.whl", hash = "sha256:2cce7cfc2008eb51feb6aab51251fd79b85d9894e98ba847408f662b3395ca3c", size = 79077, upload-time = "2024-11-01T14:07:06.376Z" }, - { url = "https://files.pythonhosted.org/packages/b5/e8/dbf020b4d98251a9860752a094d09a65e1b436ad181faf929983f697048f/watchdog-6.0.0-py3-none-manylinux2014_x86_64.whl", hash = "sha256:20ffe5b202af80ab4266dcd3e91aae72bf2da48c0d33bdb15c66658e685e94e2", size = 79078, upload-time = "2024-11-01T14:07:07.547Z" }, - { url = "https://files.pythonhosted.org/packages/07/f6/d0e5b343768e8bcb4cda79f0f2f55051bf26177ecd5651f84c07567461cf/watchdog-6.0.0-py3-none-win32.whl", hash = "sha256:07df1fdd701c5d4c8e55ef6cf55b8f0120fe1aef7ef39a1c6fc6bc2e606d517a", size = 79065, upload-time = "2024-11-01T14:07:09.525Z" }, - { url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl", hash = "sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680", size = 79070, upload-time = "2024-11-01T14:07:10.686Z" }, - { url = "https://files.pythonhosted.org/packages/33/e8/e40370e6d74ddba47f002a32919d91310d6074130fe4e17dabcafc15cbf1/watchdog-6.0.0-py3-none-win_ia64.whl", hash = "sha256:a1914259fa9e1454315171103c6a30961236f508b9b623eae470268bbcc6a22f", size = 79067, upload-time = "2024-11-01T14:07:11.845Z" }, -] - -[[package]] -name = "wcmatch" -version = "10.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "bracex" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/79/3e/c0bdc27cf06f4e47680bd5803a07cb3dfd17de84cde92dd217dcb9e05253/wcmatch-10.1.tar.gz", hash = "sha256:f11f94208c8c8484a16f4f48638a85d771d9513f4ab3f37595978801cb9465af", size = 117421, upload-time = "2025-06-22T19:14:02.49Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/eb/d8/0d1d2e9d3fabcf5d6840362adcf05f8cf3cd06a73358140c3a97189238ae/wcmatch-10.1-py3-none-any.whl", hash = "sha256:5848ace7dbb0476e5e55ab63c6bbd529745089343427caa5537f230cc01beb8a", size = 39854, upload-time = "2025-06-22T19:14:00.978Z" }, -] - -[[package]] -name = "wcwidth" -version = "0.2.13" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/6c/63/53559446a878410fc5a5974feb13d31d78d752eb18aeba59c7fef1af7598/wcwidth-0.2.13.tar.gz", hash = "sha256:72ea0c06399eb286d978fdedb6923a9eb47e1c486ce63e9b4e64fc18303972b5", size = 101301, upload-time = "2024-01-06T02:10:57.829Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl", hash = "sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859", size = 34166, upload-time = "2024-01-06T02:10:55.763Z" }, -] - -[[package]] -name = "webcolors" -version = "24.11.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/7b/29/061ec845fb58521848f3739e466efd8250b4b7b98c1b6c5bf4d40b419b7e/webcolors-24.11.1.tar.gz", hash = "sha256:ecb3d768f32202af770477b8b65f318fa4f566c22948673a977b00d589dd80f6", size = 45064, upload-time = "2024-11-11T07:43:24.224Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl", hash = "sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9", size = 14934, upload-time = "2024-11-11T07:43:22.529Z" }, -] - -[[package]] -name = "webencodings" -version = "0.5.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/0b/02/ae6ceac1baeda530866a85075641cec12989bd8d31af6d5ab4a3e8c92f47/webencodings-0.5.1.tar.gz", hash = "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923", size = 9721, upload-time = "2017-04-05T20:21:34.189Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl", hash = "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78", size = 11774, upload-time = "2017-04-05T20:21:32.581Z" }, -] - -[[package]] -name = "websocket-client" -version = "1.8.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/e6/30/fba0d96b4b5fbf5948ed3f4681f7da2f9f64512e1d303f94b4cc174c24a5/websocket_client-1.8.0.tar.gz", hash = "sha256:3239df9f44da632f96012472805d40a23281a991027ce11d2f45a6f24ac4c3da", size = 54648, upload-time = "2024-04-23T22:16:16.976Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/5a/84/44687a29792a70e111c5c477230a72c4b957d88d16141199bf9acb7537a3/websocket_client-1.8.0-py3-none-any.whl", hash = "sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526", size = 58826, upload-time = "2024-04-23T22:16:14.422Z" }, -] - -[[package]] -name = "websockets" -version = "15.0.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/21/e6/26d09fab466b7ca9c7737474c52be4f76a40301b08362eb2dbc19dcc16c1/websockets-15.0.1.tar.gz", hash = "sha256:82544de02076bafba038ce055ee6412d68da13ab47f0c60cab827346de828dee", size = 177016, upload-time = "2025-03-05T20:03:41.606Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/51/6b/4545a0d843594f5d0771e86463606a3988b5a09ca5123136f8a76580dd63/websockets-15.0.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:3e90baa811a5d73f3ca0bcbf32064d663ed81318ab225ee4f427ad4e26e5aff3", size = 175437, upload-time = "2025-03-05T20:02:16.706Z" }, - { url = "https://files.pythonhosted.org/packages/f4/71/809a0f5f6a06522af902e0f2ea2757f71ead94610010cf570ab5c98e99ed/websockets-15.0.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:592f1a9fe869c778694f0aa806ba0374e97648ab57936f092fd9d87f8bc03665", size = 173096, upload-time = "2025-03-05T20:02:18.832Z" }, - { url = "https://files.pythonhosted.org/packages/3d/69/1a681dd6f02180916f116894181eab8b2e25b31e484c5d0eae637ec01f7c/websockets-15.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0701bc3cfcb9164d04a14b149fd74be7347a530ad3bbf15ab2c678a2cd3dd9a2", size = 173332, upload-time = "2025-03-05T20:02:20.187Z" }, - { url = "https://files.pythonhosted.org/packages/a6/02/0073b3952f5bce97eafbb35757f8d0d54812b6174ed8dd952aa08429bcc3/websockets-15.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8b56bdcdb4505c8078cb6c7157d9811a85790f2f2b3632c7d1462ab5783d215", size = 183152, upload-time = "2025-03-05T20:02:22.286Z" }, - { url = "https://files.pythonhosted.org/packages/74/45/c205c8480eafd114b428284840da0b1be9ffd0e4f87338dc95dc6ff961a1/websockets-15.0.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0af68c55afbd5f07986df82831c7bff04846928ea8d1fd7f30052638788bc9b5", size = 182096, upload-time = "2025-03-05T20:02:24.368Z" }, - { url = "https://files.pythonhosted.org/packages/14/8f/aa61f528fba38578ec553c145857a181384c72b98156f858ca5c8e82d9d3/websockets-15.0.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:64dee438fed052b52e4f98f76c5790513235efaa1ef7f3f2192c392cd7c91b65", size = 182523, upload-time = "2025-03-05T20:02:25.669Z" }, - { url = "https://files.pythonhosted.org/packages/ec/6d/0267396610add5bc0d0d3e77f546d4cd287200804fe02323797de77dbce9/websockets-15.0.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:d5f6b181bb38171a8ad1d6aa58a67a6aa9d4b38d0f8c5f496b9e42561dfc62fe", size = 182790, upload-time = "2025-03-05T20:02:26.99Z" }, - { url = "https://files.pythonhosted.org/packages/02/05/c68c5adbf679cf610ae2f74a9b871ae84564462955d991178f95a1ddb7dd/websockets-15.0.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:5d54b09eba2bada6011aea5375542a157637b91029687eb4fdb2dab11059c1b4", size = 182165, upload-time = "2025-03-05T20:02:30.291Z" }, - { url = "https://files.pythonhosted.org/packages/29/93/bb672df7b2f5faac89761cb5fa34f5cec45a4026c383a4b5761c6cea5c16/websockets-15.0.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3be571a8b5afed347da347bfcf27ba12b069d9d7f42cb8c7028b5e98bbb12597", size = 182160, upload-time = "2025-03-05T20:02:31.634Z" }, - { url = "https://files.pythonhosted.org/packages/ff/83/de1f7709376dc3ca9b7eeb4b9a07b4526b14876b6d372a4dc62312bebee0/websockets-15.0.1-cp312-cp312-win32.whl", hash = "sha256:c338ffa0520bdb12fbc527265235639fb76e7bc7faafbb93f6ba80d9c06578a9", size = 176395, upload-time = "2025-03-05T20:02:33.017Z" }, - { url = "https://files.pythonhosted.org/packages/7d/71/abf2ebc3bbfa40f391ce1428c7168fb20582d0ff57019b69ea20fa698043/websockets-15.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:fcd5cf9e305d7b8338754470cf69cf81f420459dbae8a3b40cee57417f4614a7", size = 176841, upload-time = "2025-03-05T20:02:34.498Z" }, - { url = "https://files.pythonhosted.org/packages/cb/9f/51f0cf64471a9d2b4d0fc6c534f323b664e7095640c34562f5182e5a7195/websockets-15.0.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ee443ef070bb3b6ed74514f5efaa37a252af57c90eb33b956d35c8e9c10a1931", size = 175440, upload-time = "2025-03-05T20:02:36.695Z" }, - { url = "https://files.pythonhosted.org/packages/8a/05/aa116ec9943c718905997412c5989f7ed671bc0188ee2ba89520e8765d7b/websockets-15.0.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:5a939de6b7b4e18ca683218320fc67ea886038265fd1ed30173f5ce3f8e85675", size = 173098, upload-time = "2025-03-05T20:02:37.985Z" }, - { url = "https://files.pythonhosted.org/packages/ff/0b/33cef55ff24f2d92924923c99926dcce78e7bd922d649467f0eda8368923/websockets-15.0.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:746ee8dba912cd6fc889a8147168991d50ed70447bf18bcda7039f7d2e3d9151", size = 173329, upload-time = "2025-03-05T20:02:39.298Z" }, - { url = "https://files.pythonhosted.org/packages/31/1d/063b25dcc01faa8fada1469bdf769de3768b7044eac9d41f734fd7b6ad6d/websockets-15.0.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:595b6c3969023ecf9041b2936ac3827e4623bfa3ccf007575f04c5a6aa318c22", size = 183111, upload-time = "2025-03-05T20:02:40.595Z" }, - { url = "https://files.pythonhosted.org/packages/93/53/9a87ee494a51bf63e4ec9241c1ccc4f7c2f45fff85d5bde2ff74fcb68b9e/websockets-15.0.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c714d2fc58b5ca3e285461a4cc0c9a66bd0e24c5da9911e30158286c9b5be7f", size = 182054, upload-time = "2025-03-05T20:02:41.926Z" }, - { url = "https://files.pythonhosted.org/packages/ff/b2/83a6ddf56cdcbad4e3d841fcc55d6ba7d19aeb89c50f24dd7e859ec0805f/websockets-15.0.1-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0f3c1e2ab208db911594ae5b4f79addeb3501604a165019dd221c0bdcabe4db8", size = 182496, upload-time = "2025-03-05T20:02:43.304Z" }, - { url = "https://files.pythonhosted.org/packages/98/41/e7038944ed0abf34c45aa4635ba28136f06052e08fc2168520bb8b25149f/websockets-15.0.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:229cf1d3ca6c1804400b0a9790dc66528e08a6a1feec0d5040e8b9eb14422375", size = 182829, upload-time = "2025-03-05T20:02:48.812Z" }, - { url = "https://files.pythonhosted.org/packages/e0/17/de15b6158680c7623c6ef0db361da965ab25d813ae54fcfeae2e5b9ef910/websockets-15.0.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:756c56e867a90fb00177d530dca4b097dd753cde348448a1012ed6c5131f8b7d", size = 182217, upload-time = "2025-03-05T20:02:50.14Z" }, - { url = "https://files.pythonhosted.org/packages/33/2b/1f168cb6041853eef0362fb9554c3824367c5560cbdaad89ac40f8c2edfc/websockets-15.0.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:558d023b3df0bffe50a04e710bc87742de35060580a293c2a984299ed83bc4e4", size = 182195, upload-time = "2025-03-05T20:02:51.561Z" }, - { url = "https://files.pythonhosted.org/packages/86/eb/20b6cdf273913d0ad05a6a14aed4b9a85591c18a987a3d47f20fa13dcc47/websockets-15.0.1-cp313-cp313-win32.whl", hash = "sha256:ba9e56e8ceeeedb2e080147ba85ffcd5cd0711b89576b83784d8605a7df455fa", size = 176393, upload-time = "2025-03-05T20:02:53.814Z" }, - { url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl", hash = "sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561", size = 176837, upload-time = "2025-03-05T20:02:55.237Z" }, - { url = "https://files.pythonhosted.org/packages/fa/a8/5b41e0da817d64113292ab1f8247140aac61cbf6cfd085d6a0fa77f4984f/websockets-15.0.1-py3-none-any.whl", hash = "sha256:f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f", size = 169743, upload-time = "2025-03-05T20:03:39.41Z" }, -] - -[[package]] -name = "xyzservices" -version = "2025.4.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/00/af/c0f7f97bb320d14c089476f487b81f733238cc5603e0914f2e409f49d589/xyzservices-2025.4.0.tar.gz", hash = "sha256:6fe764713648fac53450fbc61a3c366cb6ae5335a1b2ae0c3796b495de3709d8", size = 1134722, upload-time = "2025-04-25T10:38:09.669Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/d6/7d/b77455d7c7c51255b2992b429107fab811b2e36ceaf76da1e55a045dc568/xyzservices-2025.4.0-py3-none-any.whl", hash = "sha256:8d4db9a59213ccb4ce1cf70210584f30b10795bff47627cdfb862b39ff6e10c9", size = 90391, upload-time = "2025-04-25T10:38:08.468Z" }, -] - -[[package]] -name = "yfinance" -version = "0.2.65" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "beautifulsoup4" }, - { name = "curl-cffi" }, - { name = "frozendict" }, - { name = "multitasking" }, - { name = "numpy" }, - { name = "pandas" }, - { name = "peewee" }, - { name = "platformdirs" }, - { name = "protobuf" }, - { name = "pytz" }, - { name = "requests" }, - { name = "websockets" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/a3/c1/2ef5acda45a71297f4be22e205359e0f93b0171f2b6ebdd681362e725686/yfinance-0.2.65.tar.gz", hash = "sha256:3d465e58c49be9d61f9862829de3e00bef6b623809f32f4efb5197b62fc60485", size = 128666, upload-time = "2025-07-06T16:20:12.769Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/c9/1e/631c80e0f97aef46eb73549b9b0f60d94057294e040740f4cad0cb1f48e4/yfinance-0.2.65-py2.py3-none-any.whl", hash = "sha256:7be13abb0d80a17230bf798e9c6a324fa2bef0846684a6d4f7fa2abd21938963", size = 119438, upload-time = "2025-07-06T16:20:11.251Z" }, -] diff --git a/temp_pandas_ta/pandas_ta.tar.gz b/temp_pandas_ta/pandas_ta.tar.gz deleted file mode 100644 index ec1922aa35b6e3d7afdb7575988a23e1a633423a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1310317 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�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
Ko-4i`5vhDZ4~3U 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 z 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�D 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⪚Zh^Qbr6&n) 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 `dp?fklZR(mkpbWj8K|ebR81@)XMu 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%0AR7e?%Gt(ii4=pu0zm&p=A|7!Pi;Tmx( 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%0AZ*2;ZiYF4QBYcgz;3Y~C$*+Z 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

    qBWn05^Jq&$v?mT5@QsA7*E0( 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
    L&NJy`qQPGK7% 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

    I~ygWyf~dz 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

    88W@&)L&VAUXnVAE&)Vwf0~KLu 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