{"id":13739483,"url":"https://github.com/GriffinAustin/pynance","last_synced_at":"2025-05-08T19:34:19.972Z","repository":{"id":22895700,"uuid":"26244108","full_name":"GriffinAustin/pynance","owner":"GriffinAustin","description":"Lightweight Python library for assembling and analysing financial data","archived":false,"fork":false,"pushed_at":"2021-02-03T06:17:51.000Z","size":1500,"stargazers_count":349,"open_issues_count":8,"forks_count":46,"subscribers_count":13,"default_branch":"develop","last_synced_at":"2025-04-19T16:41:52.843Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GriffinAustin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-11-05T23:11:23.000Z","updated_at":"2025-04-13T12:09:30.000Z","dependencies_parsed_at":"2022-08-07T10:16:22.913Z","dependency_job_id":null,"html_url":"https://github.com/GriffinAustin/pynance","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GriffinAustin%2Fpynance","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GriffinAustin%2Fpynance/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GriffinAustin%2Fpynance/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GriffinAustin%2Fpynance/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GriffinAustin","download_url":"https://codeload.github.com/GriffinAustin/pynance/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253135499,"owners_count":21859656,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-03T04:00:34.435Z","updated_at":"2025-05-08T19:34:17.756Z","avatar_url":"https://github.com/GriffinAustin.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":["Financial Instruments and Pricing","金融工具与定价"],"readme":"PyNance\n===\nLightweight Python library for assembling and analysing\nfinancial data. Wraps `pandas` and `matplotlib` for maximum\nease of use. Included are tools for generating features\nand labels for machine learning algorithms.\n\nDependencies\n---\nTested on:\n* [Python](https://www.python.org/) 3.9.1\n* [matplotlib](http://matplotlib.org/index.html) 3.3.3\n* [NumPy](http://www.numpy.org/) 1.19.5\n* [Pandas](http://pandas.pydata.org/) 1.2.1\n* [pandas-datareader](https://github.com/pydata/pandas-datareader) 0.9.0\n* [mplfinance](https://github.com/matplotlib/mplfinance) 0.12.7a5\n\nPyNance will also work with other versions of Python\nand Python packages. To verify that it works with yours,\nsimply run the unit tests for data retrieval, then try\nmaking some charts with sample data you retrieve.\n\nAdditional dependencies for the `pynance.options` module:\n* [lxml](http://lxml.de/) 3.4.2\n* [html5lib](https://pypi.python.org/pypi/html5lib) 0.999\n* [BeautifulSoup4](https://pypi.python.org/pypi/beautifulsoup4/4.3.2) 4.3.2\n\nBuilding the docs\n---\nTo build the documentation using Sphinx outside of a virtual Python environment,\ngo to `./doc` and type `make html`. If you are using a virtual environment for any\ndependencies, you will need to add `sphinx` and `numpydoc` to the virtual\nenvironment before building the documentation. Explanation \n[here](http://stackoverflow.com/questions/4122040/how-to-make-sphinx-look-for-modules-in-virtualenv-while-building-html).\nIn other words, from within your virtual environment:\n\n    $ pip install sphinx\n    $ pip install numpydoc\n\nThen build the documentation using `make html`.\n\nDevelopment environment\n---\nTo set up your virtual environment for development:\n\n    $ mkvirtualenv -p /usr/local/bin/python pn-dev\n    $ python setup.py develop\n\nRelease a new version\n---\nWhen branch `develop` has all desired substantive changes, it is\ntime to release the next version. This involves:\n\n- create the new version and push it to Pypi\n- reorganize the documentation in the `develop` branch\n\n### Note on building the documentation\nA note applying to both steps: The environment in which you\nbuild the documentation must include the external dependencies\n(`numpy`, `pandas`, etc.) mentioned above. Sphinx actually checks\nfor the presence of dependencies and will fail to build the\ndocumentation if they are missing.\n\n### Create the new version\nOverview [here](http://peterdowns.com/posts/first-time-with-pypi.html).\n\nIn branch `develop` verify that all desired changes have been merged and that \nthe documentation is up to date. Then:\n\n1. Change the release version in `.setup.py` and in `./doc/source/conf.py` to the numbers desired for the\n   version you are about to publish.\n1. Build the documentation:\n\n        $ cd ./doc\n        $ make html\n1. Merge to master.\n1. Tag the release in GitHub.\n1. Publish to PyPi.\n1. Push the documentation to [pynance.net](http://pynance.net/):\n\nBranches `develop` and `master` should now be the same. In preparation for the next\nrelease (in the more distant future), you should now re-organize the \ndocumentation so that what was just committed\nis archived and new documentation can be generated, as described in the following section.\n\n### Reorganize the documentation\nAs example, let's say the version just committed is version `3.1.4`.\n\n1. Move current *public* html to an archive directory:\n\n        $ cd ./doc\n        $ make archhtml ARCHDIR=\"3.1.4\"\n1. Add a link to version `3.1.4` in `./doc/source/index.rst` under 'Prior Versions'\n1. Change version number in `./doc/source/conf.py` to `3.1.5`.\n1. Rebuild current documentation:\n\n        $ make html\n1. Write new documentation to public directory:\n    \n        $ make pubhtml\n1. Commit changes.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FGriffinAustin%2Fpynance","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FGriffinAustin%2Fpynance","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FGriffinAustin%2Fpynance/lists"}