{ "info": { "author": "Mehdi Ghodsizadeh", "author_email": "mehdi.ghodsizadeh@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "# Tehran Stock Market\n\n[![made-with-python](https://img.shields.io/badge/Made%20with-Python-1f425f.svg)](https://www.python.org/)\n![PyPI - Downloads](https://img.shields.io/pypi/dw/tehran_stocks.svg?color=blue)\n[![PyPI version](https://badge.fury.io/py/tehran-stocks.svg)](https://badge.fury.io/py/tehran-stocks)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/python/black)\n\n\n\nA python package that helps to access TCCIM stock price history, Using OOP Interface\n\n## Features\n\n- Download All stocks prices\n- Download prices from a group (i.e ETFs or cars, etc.)\n- Download Price history of one specific Stock\n- After first setup available offline.\n- CommandLine Interface\n- Export data to csv, excel or Stata(dta)\n- Compatible with `sqlalchemy`\n- Compatible with `PANDAS`\n- Based on light `sqlite`\n\n## 0 - Install\n\n```bash\npip install tehran_stocks\n```\n\n## 1- Initialization\n\nFor first use you need initialize the database\n\n### 1-1 Command line\n\n```bash\nts-get init # Set up to sqlite database\n```\n\n### 1-2 Python\n\n```python\nimport tehran_stocks\n# On first import package initialize itself\n```\n\nDuring initialization you will prompt for downloading all prices. if you answer yes it will download all prices, otherwise you can download data\n\n## 2- Download and Update prices\n\n### 2-1 Command line\n\n```bash\nts-get update # update all price , or download all if no price exist\nts-get group 34 ## 34 is the code for car's group.\nts-get get_groups ## get group name and group codes\n```\n\n### 2-2 Python\n\n```python\nfrom tehran_stocks import get_all_price, Stocks, update_group\n\nget_all_price() # download and(or) update all prices\n\nupdate_group(34) #download and(or) update Stocks in groupCode = 34 (Cars)\n\nStocks.get_group() # to see list of group codes\n```\n\n## 3- Access Data\n\nTo access data you can use `Stocks` which is an customized `sqlalchemy` object, which helps you to find prices on an easy way.\n\n### 3-1 Search Stocks\n\n```python\nfrom tehran_stocks import Stocks, db\n\n# You can use query to find stocks\nstock = Stocks.query.filter_by(name='\u0643\u06af\u0644').first() #find by symbol(\u0646\u0645\u0627\u062f)\n\nstock = Stocks.query.filter_by(code='35700344742885862').first() # find by code on tsetmc url\n\nstock = Stocks.query.filter(Stocks.title.like('%\u06af\u0644 \u06af\u0647\u0631%')).first() # Search by title\n\nstock_list = Stocks.query.filter_by(group_code =34).all() # find all Stocks in Khodro\n\nstock_list = Stocks.query.filter(Stocks.group_code.in_([13,34])).all() # all stocks in khodro and felezat\n\n\n## (Advanced)or run sql query using orm or raw sql\ndb.session.query(Stocks.group_code, Stocks.group_name).group_by(Stocks.group_code).all()\n\ndb.session.execute('select group_code , group_name from stocks group by group_name').fetchall()\n```\n\nNow easily access stock price and do whatever you want with `pandas` dataframes:\n\n```python\n# use data as a pandas dataframe\n>>> stock.df #\n id code ticker dtyyyymmdd first high low close value vol openint per open last date\n0 22491 35700344742885862 Gol-E-Gohar. 20040829 12000.0 12021.0 12000.0 12000.0 18841605000 1570000 2708 D 12000.0 12000.0 2004-08-29\n\n>>> stock.summary()\nStart date: 20040829\nEnd date: 20190714\nTotal days: 2987\n\n>>> stock.update()\n# update stock price history\n\n# Export to your preferred format\n>>> stock.df.to_csv('price.csv')\n>>> stock.df.to_excel('price.xlsx')\n>>> stock.df.to_stata('price.dta')\n\n```\n\n## Todo\n\n- [x] Create Database\n- [x] Download Data\n- [x] CommandLine Support\n- [ ] Jalali Support\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/ghodsizadeh/tehran-stocks", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "tehran-stocks", "package_url": "https://pypi.org/project/tehran-stocks/", "platform": "", "project_url": "https://pypi.org/project/tehran-stocks/", "project_urls": { "Homepage": "http://github.com/ghodsizadeh/tehran-stocks" }, "release_url": "https://pypi.org/project/tehran-stocks/0.5.9/", "requires_dist": [ "pandas", "sqlalchemy" ], "requires_python": ">=3.6", "summary": "DataDownloader for Tehran stock market", "version": "0.5.9" }, "last_serial": 5613385, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "9bdf286c40407e4eee28ba0c61261c88", "sha256": "2dac75cb9f33b6be4fc8551fed79fc1279ac054dabb0cf9e8c897302a2e791bd" }, "downloads": -1, "filename": "tehran_stocks-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "9bdf286c40407e4eee28ba0c61261c88", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 2119, "upload_time": "2019-07-05T11:10:16", "url": "https://files.pythonhosted.org/packages/81/24/eeaafc8cb8f33c0aca2c43f9b805dc13bbd46d0e26fa06b0fcfea8e6e58f/tehran_stocks-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b4d4cce359a9b450712c7b01d8baa157", "sha256": "a5bf0768da87e0ca09e0eb98ebe0b5afb25c9f68ee8053cc77562c1ad4079b80" }, "downloads": -1, "filename": "tehran-stocks-0.0.1.tar.gz", "has_sig": false, "md5_digest": "b4d4cce359a9b450712c7b01d8baa157", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1183, "upload_time": "2019-07-05T11:10:19", "url": "https://files.pythonhosted.org/packages/54/75/5a895763da25a0d5c1f2158cdb116ec29e08d966823bd9bde151136b8367/tehran-stocks-0.0.1.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "b4180a05b52b0d2ce88f71c5246c0709", "sha256": "3d23bfedf3eefa49f07e98ee4b87ba0a3f90f1b89bef92553c372b44a921dedf" }, "downloads": -1, "filename": "tehran_stocks-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "b4180a05b52b0d2ce88f71c5246c0709", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 2979, "upload_time": "2019-07-06T13:02:21", "url": "https://files.pythonhosted.org/packages/db/3f/b6fdd06358672c0e71fa2ab4f64f4fbd87639e48c7f782ac8e970b11bb3b/tehran_stocks-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3e2b9253ba8f75fc615d26546a588ccd", "sha256": "77edd64f8d2c7bec3d49897c4c184ff6c2837ff8827a20ee04124abc0afeb1e3" }, "downloads": -1, "filename": "tehran-stocks-0.0.3.tar.gz", "has_sig": false, "md5_digest": "3e2b9253ba8f75fc615d26546a588ccd", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 1721, "upload_time": "2019-07-06T13:02:23", "url": "https://files.pythonhosted.org/packages/32/61/e305b1bc70d7156e9cba25868fcb3fe60a4ef84df78f6647ca106e0f2cff/tehran-stocks-0.0.3.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "332daceb696886c621ef60ac59ab17fb", "sha256": "b3a525c545ecf799af885ab19bdd47505d092c8a9637eb78de2be811115cffc7" }, "downloads": -1, "filename": "tehran_stocks-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "332daceb696886c621ef60ac59ab17fb", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 3094, "upload_time": "2019-07-09T12:09:48", "url": "https://files.pythonhosted.org/packages/20/82/946549ee8ed97d0c95f62a86db86361cb9aced0258e57f6cb96cdb0c9fa7/tehran_stocks-0.4.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d1241d08ad6436507b9208970833e579", "sha256": "b57d9119f22a289107766a23fdaae9f8f39779dbcb7d93fad96f38f1c7fd6b74" }, "downloads": -1, "filename": "tehran-stocks-0.4.0.tar.gz", "has_sig": false, "md5_digest": "d1241d08ad6436507b9208970833e579", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 1842, "upload_time": "2019-07-09T12:09:52", "url": "https://files.pythonhosted.org/packages/6e/dc/6850247d09667b92e9b92214ffea4d1033b9e462efdb4600f668028815a7/tehran-stocks-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "6541962f809176ceae3bcd20de3ed196", "sha256": "477b3d842d30c4a8baa0cbb6e2c0a3dfc91b86e778921e9ae7e123da0bf783fb" }, "downloads": -1, "filename": "tehran_stocks-0.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "6541962f809176ceae3bcd20de3ed196", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 3091, "upload_time": "2019-07-09T12:30:30", "url": "https://files.pythonhosted.org/packages/cc/85/5cbf461cda772a2c9077ec28187a2b724a2259e5b486295edf8a0570d469/tehran_stocks-0.4.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6219f3189dbf331b7d12ec4b539e983e", "sha256": "2bce8a0c0b81bea9689d5726896ffbafa2bcbac2c628347685caedfe3ee0a306" }, "downloads": -1, "filename": "tehran-stocks-0.4.1.tar.gz", "has_sig": false, "md5_digest": "6219f3189dbf331b7d12ec4b539e983e", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 1841, "upload_time": "2019-07-09T12:30:35", "url": "https://files.pythonhosted.org/packages/9e/f3/b8762d56999c9d381c8d45bf50550b429921cd95e404155c73549707c437/tehran-stocks-0.4.1.tar.gz" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "cde59255fe63e81eebf5cd3301ba271a", "sha256": "333b713fe40a5fd4bed37f5ad31178c830e8df2d00d8b53ecc7c2e5fa407625e" }, "downloads": -1, "filename": "tehran_stocks-0.4.2-py3-none-any.whl", "has_sig": false, "md5_digest": "cde59255fe63e81eebf5cd3301ba271a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 3095, "upload_time": "2019-07-09T12:53:09", "url": "https://files.pythonhosted.org/packages/09/87/b064d5e41eaf7f81641d6fec8662b9ff3cbb200cd994ebf45752deae7daf/tehran_stocks-0.4.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bf06c3aeb03e0969d1a21bc1ffb11c53", "sha256": "7050b1e5940dae078c79938ab768256339f2dfedcf811dd7cbe7c57cddcebb48" }, "downloads": -1, "filename": "tehran-stocks-0.4.2.tar.gz", "has_sig": false, "md5_digest": "bf06c3aeb03e0969d1a21bc1ffb11c53", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 1848, "upload_time": "2019-07-09T12:53:18", "url": "https://files.pythonhosted.org/packages/37/94/57a2e1680d9dc185e04970e5372334d51044d8a71a99d156ae7e95676a2d/tehran-stocks-0.4.2.tar.gz" } ], "0.5.3": [ { "comment_text": "", "digests": { "md5": "0fcc0d6ebf968f08097b30d65f2c9661", "sha256": "c7847ff1563176b73f5602c2b16f9cc1cbccde1d7498af075f4460f21cbaf3cb" }, "downloads": -1, "filename": "tehran_stocks-0.5.3-py3-none-any.whl", "has_sig": false, "md5_digest": "0fcc0d6ebf968f08097b30d65f2c9661", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 5161, "upload_time": "2019-07-15T07:31:26", "url": "https://files.pythonhosted.org/packages/13/35/f5694e2fdf560c005b7028dc55015e1a03d9ecdcaf2eb859dcd598312c7f/tehran_stocks-0.5.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "153a4fa428ab2e6b8697ebfbae16cbde", "sha256": "1e1d53d5669d2527974ebbbc31f64d913292f89b3c25dcd7a9f28163f2087bae" }, "downloads": -1, "filename": "tehran-stocks-0.5.3.tar.gz", "has_sig": false, "md5_digest": "153a4fa428ab2e6b8697ebfbae16cbde", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 3899, "upload_time": "2019-07-15T07:31:32", "url": "https://files.pythonhosted.org/packages/e2/b1/0e4ffc9879715b6b505c38114684d1b04a110ced0ecc866066e8a6862814/tehran-stocks-0.5.3.tar.gz" } ], "0.5.4": [ { "comment_text": "", "digests": { "md5": "dc2b6073a71c1f2de39d4465b1ff16cf", "sha256": "e873dc7bc086f9f417109d8dd098ca6149571e769003f3b68501e844167f7fad" }, "downloads": -1, "filename": "tehran_stocks-0.5.4-py3-none-any.whl", "has_sig": false, "md5_digest": "dc2b6073a71c1f2de39d4465b1ff16cf", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 5225, "upload_time": "2019-07-15T07:55:44", "url": "https://files.pythonhosted.org/packages/bc/ad/906f6a1730d2f6874decdd988defcf60f49faddf0067e19a0d77241f4eeb/tehran_stocks-0.5.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6530b2f0699940dc77afe6dd813ee2ca", "sha256": "2bc32e7b87896cffd9cb8fbd324e5b3b5f93ce7f130076b45e9e3c1e3caa5605" }, "downloads": -1, "filename": "tehran-stocks-0.5.4.tar.gz", "has_sig": false, "md5_digest": "6530b2f0699940dc77afe6dd813ee2ca", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 3964, "upload_time": "2019-07-15T07:55:50", "url": "https://files.pythonhosted.org/packages/17/86/9a706c96599a8627dd6a0fb87932a615b83020caf42543a91c05f939fe85/tehran-stocks-0.5.4.tar.gz" } ], "0.5.6": [ { "comment_text": "", "digests": { "md5": "77fbbd4570ea25a9a1fd45519d60172d", "sha256": "f84d82410811555f7897e41a0bad3e8b723898d289f6fe023a20ff98a2e9d42e" }, "downloads": -1, "filename": "tehran_stocks-0.5.6-py3-none-any.whl", "has_sig": false, "md5_digest": "77fbbd4570ea25a9a1fd45519d60172d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 4122, "upload_time": "2019-07-20T11:18:11", "url": "https://files.pythonhosted.org/packages/f7/55/b5965e517d1a67ec1746dee710884438bb05fb33f5c789d52a6d6eb31e70/tehran_stocks-0.5.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b24001a14338bf654237cff61ad59563", "sha256": "9248ec1ba329a1ead02c50cde69753564151342a54246c31b0108a1aba43d150" }, "downloads": -1, "filename": "tehran-stocks-0.5.6.tar.gz", "has_sig": false, "md5_digest": "b24001a14338bf654237cff61ad59563", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 3973, "upload_time": "2019-07-20T11:18:18", "url": "https://files.pythonhosted.org/packages/a1/4d/2f5db7165cd2e05497ea64f7beecc71f5480d616fc0ca7359d327742518a/tehran-stocks-0.5.6.tar.gz" } ], "0.5.9": [ { "comment_text": "", "digests": { "md5": "1f1d3fd21fb029dda291182caa27149e", "sha256": "35c98ddf516e03c656068398005070a05667cfe7aac2a4dc50629560a71de4dc" }, "downloads": -1, "filename": "tehran_stocks-0.5.9-py3-none-any.whl", "has_sig": false, "md5_digest": "1f1d3fd21fb029dda291182caa27149e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 15622, "upload_time": "2019-07-31T13:08:35", "url": "https://files.pythonhosted.org/packages/fc/4d/380bfc91094fc9916ecc297a3d7318ce9b3b3d8e3cf77601dfdff61ba4b9/tehran_stocks-0.5.9-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "79458efd80cd0b4d9f5a4c9d305bc3b8", "sha256": "54e2d0640c9fcf52513d52e74ac27019dca564c1674ee94e4b2ba8f6baabd652" }, "downloads": -1, "filename": "tehran-stocks-0.5.9.tar.gz", "has_sig": false, "md5_digest": "79458efd80cd0b4d9f5a4c9d305bc3b8", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 7110, "upload_time": "2019-07-31T13:08:37", "url": "https://files.pythonhosted.org/packages/ed/3c/1f9afef4dcf9048e1f434a553b97bde65e24eaee3f206aea3a9b908638d1/tehran-stocks-0.5.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "1f1d3fd21fb029dda291182caa27149e", "sha256": "35c98ddf516e03c656068398005070a05667cfe7aac2a4dc50629560a71de4dc" }, "downloads": -1, "filename": "tehran_stocks-0.5.9-py3-none-any.whl", "has_sig": false, "md5_digest": "1f1d3fd21fb029dda291182caa27149e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 15622, "upload_time": "2019-07-31T13:08:35", "url": "https://files.pythonhosted.org/packages/fc/4d/380bfc91094fc9916ecc297a3d7318ce9b3b3d8e3cf77601dfdff61ba4b9/tehran_stocks-0.5.9-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "79458efd80cd0b4d9f5a4c9d305bc3b8", "sha256": "54e2d0640c9fcf52513d52e74ac27019dca564c1674ee94e4b2ba8f6baabd652" }, "downloads": -1, "filename": "tehran-stocks-0.5.9.tar.gz", "has_sig": false, "md5_digest": "79458efd80cd0b4d9f5a4c9d305bc3b8", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 7110, "upload_time": "2019-07-31T13:08:37", "url": "https://files.pythonhosted.org/packages/ed/3c/1f9afef4dcf9048e1f434a553b97bde65e24eaee3f206aea3a9b908638d1/tehran-stocks-0.5.9.tar.gz" } ] }