stefan-jansen / zipline-reloaded

Zipline, a Pythonic Algorithmic Trading Library
https://zipline.ml4trading.io
Apache License 2.0
1.12k stars 208 forks source link

AttributeError: 'DataFrame' object has no attribute 'amin' #203

Closed fdjutant closed 1 year ago

fdjutant commented 1 year ago

Dear Zipline Maintainers,

Before I tell you about my issue, let me describe my environment:

Environment

* Operating System: Windows 10 Pro version 10.0.22621 N/A Build 22621 * Python Version: 3.9.16 * Python Bitness: 64 * How did you install Zipline: `conda -c conda-forge zipline-reloaded -y` or `mamba -c conda-forge zipline-reloaded -y` * Python packages: ``` # Name Version Build Channel alembic 1.11.1 pyhd8ed1ab_0 conda-forge appdirs 1.4.4 pyh9f0ad1d_0 conda-forge bcolz-zipline 1.2.6 py39hc266a54_0 conda-forge beautifulsoup4 4.12.2 pyha770c72_0 conda-forge blosc 1.21.4 hdccc3a2_0 conda-forge bottleneck 1.3.7 py39hc266a54_0 conda-forge brotli-python 1.0.9 py39h99910a6_9 conda-forge bzip2 1.0.8 h8ffe710_4 conda-forge c-blosc2 2.10.0 h183a6f4_0 conda-forge ca-certificates 2023.5.7 h56e8100_0 conda-forge cached-property 1.5.2 hd8ed1ab_1 conda-forge cached_property 1.5.2 pyha770c72_1 conda-forge certifi 2023.5.7 pyhd8ed1ab_0 conda-forge cffi 1.15.1 py39h68f70e3_3 conda-forge charset-normalizer 3.1.0 pyhd8ed1ab_0 conda-forge click 8.1.3 win_pyhd8ed1ab_2 conda-forge colorama 0.4.6 pyhd8ed1ab_0 conda-forge cryptography 41.0.1 py39hb6bd5e6_0 conda-forge empyrical-reloaded 0.5.9 pyhd8ed1ab_0 conda-forge exchange-calendars 4.2.6 pyhd8ed1ab_1 conda-forge frozendict 2.3.8 py39ha55989b_0 conda-forge greenlet 2.0.2 py39h99910a6_1 conda-forge h5py 3.9.0 nompi_py39hde1a6dc_101 conda-forge hdf5 1.14.1 nompi_h73e8ff5_100 conda-forge html5lib 1.1 pyh9f0ad1d_0 conda-forge idna 3.4 pyhd8ed1ab_0 conda-forge importlib-metadata 6.7.0 pyha770c72_0 conda-forge importlib_resources 5.12.0 pyhd8ed1ab_0 conda-forge intervaltree 3.1.0 pyhd8ed1ab_1 conda-forge iso3166 2.1.1 pyhd8ed1ab_0 conda-forge iso4217 1.9.20220401 pyhd8ed1ab_0 conda-forge korean_lunar_calendar 0.3.1 pyhd8ed1ab_0 conda-forge krb5 1.20.1 heb0366b_0 conda-forge libaec 1.0.6 h63175ca_1 conda-forge libblas 3.9.0 17_win64_openblas conda-forge libcblas 3.9.0 17_win64_openblas conda-forge libcurl 8.1.2 h68f0423_0 conda-forge libffi 3.4.2 h8ffe710_5 conda-forge libflang 5.0.0 h6538335_20180525 conda-forge libiconv 1.17 h8ffe710_0 conda-forge liblapack 3.9.0 17_win64_openblas conda-forge libopenblas 0.3.23 pthreads_hc140b1d_0 conda-forge libsqlite 3.42.0 hcfcfb64_0 conda-forge libssh2 1.11.0 h7dfc565_0 conda-forge libta-lib 0.4.0 hcfcfb64_1 conda-forge libxml2 2.11.4 hc3477c8_0 conda-forge libxslt 1.1.37 h6070c61_1 conda-forge libzlib 1.2.13 hcfcfb64_5 conda-forge llvm-meta 5.0.0 0 conda-forge lru-dict 1.2.0 py39ha55989b_0 conda-forge lxml 4.9.3 py39hbae3653_0 conda-forge lz4-c 1.9.4 hcfcfb64_0 conda-forge m2w64-gcc-libgfortran 5.3.0 6 conda-forge m2w64-gcc-libs 5.3.0 7 conda-forge m2w64-gcc-libs-core 5.3.0 7 conda-forge m2w64-gmp 6.1.0 2 conda-forge m2w64-libwinpthread-git 5.0.0.4634.697f757 2 conda-forge mako 1.2.4 pyhd8ed1ab_0 conda-forge markupsafe 2.1.3 py39ha55989b_0 conda-forge msys2-conda-epoch 20160418 1 conda-forge multipledispatch 0.6.0 py_0 conda-forge multitasking 0.0.9 pyhd8ed1ab_0 conda-forge networkx 3.1 pyhd8ed1ab_0 conda-forge nomkl 1.0 h5ca1d4c_0 conda-forge numexpr 2.8.4 py39hd9d57a3_100 conda-forge numpy 1.25.0 py39h816b6a6_0 conda-forge openmp 5.0.0 vc14_1 conda-forge openssl 3.1.1 hcfcfb64_1 conda-forge packaging 23.1 pyhd8ed1ab_0 conda-forge pandas 1.5.3 py39h2ba5b7c_1 conda-forge pandas-datareader 0.10.0 pyh6c4a22f_0 conda-forge patsy 0.5.3 pyhd8ed1ab_0 conda-forge pip 23.1.2 pyhd8ed1ab_0 conda-forge platformdirs 3.8.0 pyhd8ed1ab_0 conda-forge pooch 1.7.0 pyha770c72_3 conda-forge py-cpuinfo 9.0.0 pyhd8ed1ab_0 conda-forge pycparser 2.21 pyhd8ed1ab_0 conda-forge pyluach 2.2.0 pyhd8ed1ab_0 conda-forge pysocks 1.7.1 pyh0701188_6 conda-forge pytables 3.8.0 py39hf7d678f_2 conda-forge python 3.9.16 h4de0772_0_cpython conda-forge python-dateutil 2.8.2 pyhd8ed1ab_0 conda-forge python-interface 1.6.0 py_0 conda-forge python_abi 3.9 3_cp39 conda-forge pytz 2023.3 pyhd8ed1ab_0 conda-forge requests 2.31.0 pyhd8ed1ab_0 conda-forge scipy 1.11.1 py39hde5eda1_0 conda-forge setuptools 68.0.0 pyhd8ed1ab_0 conda-forge six 1.16.0 pyh6c4a22f_0 conda-forge snappy 1.1.10 hfb803bf_0 conda-forge sortedcontainers 2.4.0 pyhd8ed1ab_0 conda-forge soupsieve 2.3.2.post1 pyhd8ed1ab_0 conda-forge sqlalchemy 1.4.48 py39ha55989b_0 conda-forge statsmodels 0.14.0 py39hbaa61f9_1 conda-forge ta-lib 0.4.19 py39hbaa61f9_4 conda-forge tk 8.6.12 h8ffe710_0 conda-forge toolz 0.12.0 pyhd8ed1ab_0 conda-forge typing-extensions 4.7.1 hd8ed1ab_0 conda-forge typing_extensions 4.7.1 pyha770c72_0 conda-forge tzdata 2023c h71feb2d_0 conda-forge ucrt 10.0.22621.0 h57928b3_0 conda-forge urllib3 2.0.3 pyhd8ed1ab_1 conda-forge vc 14.3 h64f974e_17 conda-forge vc14_runtime 14.36.32532 hfdfe4a8_17 conda-forge vs2015_runtime 14.36.32532 h05e6639_17 conda-forge webencodings 0.5.1 py_1 conda-forge wheel 0.40.0 pyhd8ed1ab_0 conda-forge win_inet_pton 1.1.0 pyhd8ed1ab_6 conda-forge xz 5.2.6 h8d14728_0 conda-forge yfinance 0.2.22 pyhd8ed1ab_0 conda-forge zipline-reloaded 2.4 py39hc266a54_1 conda-forge zipp 3.15.0 pyhd8ed1ab_0 conda-forge zlib-ng 2.0.7 hcfcfb64_0 conda-forge zstd 1.5.2 h12be248_6 conda-forge ```

Description of Issue

Executing zipline ingest -b quandl produces the following

(zipline39) PS > zipline ingest -b quandl 
[2023-07-06T00:05:45+0100-INFO][zipline.data.bundles.core]
 Ingesting quandl
[2023-07-06T00:05:45+0100-INFO][zipline.data.bundles.quandl]
 Downloading WIKI metadata.
Downloading WIKI Prices table from Quandl  [####################################]  100%
[2023-07-06T00:06:57+0100-INFO][zipline.data.bundles.quandl]
 Parsing raw data.
[2023-07-06T00:07:36+0100-INFO][zipline.data.bundles.quandl]
 Generating asset metadata.
Traceback (most recent call last):
  File "C:\Users\username\miniconda3\envs\zipline39\Scripts\zipline-script.py", line 10, in <module>
    sys.exit(main())
  File "C:\Users\username\miniconda3\envs\zipline39\lib\site-packages\click\core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "C:\Users\username\miniconda3\envs\zipline39\lib\site-packages\click\core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "C:\Users\username\miniconda3\envs\zipline39\lib\site-packages\click\core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "C:\Users\username\miniconda3\envs\zipline39\lib\site-packages\click\core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Users\username\miniconda3\envs\zipline39\lib\site-packages\click\core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "C:\Users\username\miniconda3\envs\zipline39\lib\site-packages\zipline\__main__.py", line 397, in ingest
    bundles_module.ingest(
  File "C:\Users\username\miniconda3\envs\zipline39\lib\site-packages\zipline\data\bundles\core.py", line 445, in ingest
    bundle.ingest(
  File "C:\Users\username\miniconda3\envs\zipline39\lib\site-packages\zipline\data\bundles\quandl.py", line 187, in quandl_bundle 
    asset_metadata = gen_asset_metadata(raw_data[["symbol", "date"]], show_progress)
  File "C:\Users\username\miniconda3\envs\zipline39\lib\site-packages\zipline\data\bundles\quandl.py", line 108, in gen_asset_metadata
    data["start_date"] = data.date.amin
  File "C:\Users\username\miniconda3\envs\zipline39\lib\site-packages\pandas\core\generic.py", line 5902, in __getattr__
    return object.__getattribute__(self, name)
AttributeError: 'DataFrame' object has no attribute 'amin'

What steps have you taken to resolve this already?

I tried creating a fresh environment, then installing with either conda -c conda-forge zipline-reloaded -y or mamba -c conda-forge zipline-reloaded -y

Sincerely, Franky

MBounouar commented 1 year ago

You need to downgrade numpy to version 'numpy >=1.14.5, <1.24'

fdjutant commented 1 year ago

Thanks! I can confirm numpy==1.23 solved the issue and worked with Python 3.9. mamba install numpy==1.23