{ "info": { "author": "Daybit Developers", "author_email": "", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3" ], "description": "# Pydaybit\n[![CircleCI](https://circleci.com/gh/daybit-exchange/pydaybit.svg?shield=svg&circle-token=b7d9eaa9d871c3421f8ca3583be4a379f9b6b856)](https://circleci.com/gh/daybit-exchange/pydaybit)\n[![pypi](https://img.shields.io/pypi/v/pydaybit.svg)](https://pypi.org/project/pydaybit/)\n[![Downloads](https://pepy.tech/badge/pydaybit)](https://pypi.org/project/pydaybit/)\n[![License](https://img.shields.io/github/license/daybit-exchange/pydaybit.svg)](https://github.com/daybit-exchange/pydaybit/blob/master/LICENSE)\n\n**Pydaybit** is an API wrapper for [**DAYBIT**](https://www.daybit.com) exchange written in Python.\nIt supports python 3.5 or newer.\n\n## Disclaimer\n\nUSE THE SOFTWARE AT YOUR OWN RISK. THE AUTHORS AND ALL AFFILIATES ASSUME NO RESPONSIBILITY FOR YOUR TRADING RESULTS.\n\n## Installation\n\n $ pip install --upgrade pydaybit\n\n## Environment Variables\n* `DAYBIT_API_KEY`\n* `DAYBIT_API_SECRET`\n\n## Examples\n\n\n#### Server Timestamp\n```python\nimport asyncio\n\nfrom pydaybit import Daybit\n\n\nasync def daybit_get_server_time():\n async with Daybit() as daybit:\n server_timestamp = await daybit.get_server_time()\n print('Daybit: {}'.format(server_timestamp))\n\n\nasyncio.get_event_loop().run_until_complete(daybit_get_server_time())\n```\n\n#### Without Enviroment Variables\n```python\nimport asyncio\nfrom pprint import pprint\n\nfrom pydaybit import Daybit, PARAM_API_KEY, PARAM_API_SECRET\n\n\nasync def daybit_trades():\n async with Daybit(params={PARAM_API_KEY: \"YOUR_API_KEY\",\n PARAM_API_SECRET: \"YOUR_API_SECRET\"}) as daybit:\n pprint(await daybit.trades(quote='USDT',\n base='BTC',\n num_trades=5), indent=2)\n\n\nasyncio.get_event_loop().run_until_complete(daybit_markets())\n```\n\n#### Without Asynchronous Context Manager\n```python\nimport asyncio\nfrom pprint import pprint\n\nfrom pydaybit import Daybit\n\n\nasync def daybit_markets():\n daybit = Daybit()\n await daybit.connect()\n pprint(await daybit.markets(), indent=2)\n await daybit.disconnect()\n\n\nasyncio.get_event_loop().run_until_complete(daybit_markets())\n```\n\n#### Subscriptons\nAll Subscription APIs are updated in real time. Following `daybit_without_await()` will print coin prices as same as `daybit_coin_prices()`.\n```python\nimport asyncio\nfrom pprint import pprint\n\nfrom pydaybit import Daybit\n\n\nasync def daybit_coin_prices():\n async with Daybit() as daybit:\n for _ in range(5):\n pprint(await daybit.coin_prices(), indent=2)\n await asyncio.sleep(1)\n\n\nasync def daybit_without_await():\n async with Daybit() as daybit:\n await daybit.coin_prices()\n for _ in range(5):\n pprint(daybit.channel('/subscription:coin_prices').data, indent=2)\n await asyncio.sleep(1)\n\n\nasyncio.get_event_loop().run_until_complete(daybit_coin_prices())\n# asyncio.get_event_loop().run_until_complete(daybit_without_await())\n```\n\n#### Subscription Args\nChannel Arguments can be described with `/` operators.\n```python\nimport asyncio\nimport time\n\nfrom pydaybit import Daybit\n\n\nasync def get_candles(from_time, to_time, interval, quote, base):\n async with Daybit() as daybit:\n channel = daybit.price_histories / quote / base / interval\n candles = await channel(from_time=from_time,\n to_time=to_time)\n print(candles)\n\n\nasyncio.get_event_loop().run_until_complete(get_candles(from_time=int((time.time() - 1000) * 1000),\n to_time=int(time.time() * 1000),\n interval=60,\n quote='USDT',\n base='BTC'))\n```\n\n#### Reset Cached Data\nA channel have local cached data in `channel.data`. If want to remove cached data, use `channel.reset_data()`. \nFor example, see `examples/candles.py`.\n\n```python\nasync def get_candles(start_time, end_time, interval, quote, base, max_size=100, candle_type=float):\n...\n async with Daybit() as daybit:\n ...\n channel = daybit.price_histories / quote / base / interval\n for to_time in range(end_time, start_time, -(max_size * interval * 1000)):\n from_time = max(start_time, to_time - ((max_size - 1) * interval * 1000))\n\n channel.reset_data()\n candles = await channel(from_time=from_time,\n to_time=to_time)\n...\n```\n\n\n## TEST\n\n $ python -m pytest\nor \n\n $ pytest\n\n\n## License\n\nApache License 2.0\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/daybit-exchange/pydaybit", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "pydaybit", "package_url": "https://pypi.org/project/pydaybit/", "platform": "", "project_url": "https://pypi.org/project/pydaybit/", "project_urls": { "Homepage": "https://github.com/daybit-exchange/pydaybit" }, "release_url": "https://pypi.org/project/pydaybit/0.0.3.4/", "requires_dist": [ "async-timeout", "dateparser", "furl", "numpy", "pandas", "pytz", "tabulate", "websockets" ], "requires_python": "", "summary": "an API wrapper for DAYBIT-exchange", "version": "0.0.3.4" }, "last_serial": 4655739, "releases": { "0.0.2": [ { "comment_text": "", "digests": { "md5": "095a6f2362209f10b0471a88db2af80b", "sha256": "9587260d6755f972f37de51e07001f238ac1bc5c10656c1b3a1d9215e5d80da6" }, "downloads": -1, "filename": "pydaybit-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "095a6f2362209f10b0471a88db2af80b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10873, "upload_time": "2018-10-26T09:53:48", "url": "https://files.pythonhosted.org/packages/73/e7/4a1689d8e56b252e075ae8b57ab159b37f776ef93d2518f65352b54ac9aa/pydaybit-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0b3ab3b4eecd17a7449167a8425eb7cf", "sha256": "30ae92b0facf57952e249804f74aa974e0143ba22bcd40d2855a4380f5dc16ab" }, "downloads": -1, "filename": "pydaybit-0.0.2.tar.gz", "has_sig": false, "md5_digest": "0b3ab3b4eecd17a7449167a8425eb7cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9557, "upload_time": "2018-10-26T09:53:50", "url": "https://files.pythonhosted.org/packages/83/71/b835b6e9033c323207b244058de6d5164c40bb2646c14a32925ba90c46b3/pydaybit-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "6d2f5b99b25e19709d495521c225a40f", "sha256": "a7fd2ce371e91f6d291616dd9ff410fcfcad7fc0c898da3ed07c0fc07aeb352e" }, "downloads": -1, "filename": "pydaybit-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "6d2f5b99b25e19709d495521c225a40f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17569, "upload_time": "2018-10-27T14:02:47", "url": "https://files.pythonhosted.org/packages/b0/4f/80181079768acebdba1691e0d37b14e56561d46ee47ff95b004c1a130b5d/pydaybit-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "244a7bd3ecfd3853a7b6d86459098e1c", "sha256": "a7b0929f383ecb6cff3700a5565cb7b2b5ff3e06008aa0c1d8fa80a097e4e720" }, "downloads": -1, "filename": "pydaybit-0.0.3.tar.gz", "has_sig": false, "md5_digest": "244a7bd3ecfd3853a7b6d86459098e1c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13632, "upload_time": "2018-10-27T14:02:49", "url": "https://files.pythonhosted.org/packages/97/86/5a8c40502fbb8ad59424d209a8afbe40ae4515452a33eeed27d26c6181bf/pydaybit-0.0.3.tar.gz" } ], "0.0.3.1": [ { "comment_text": "", "digests": { "md5": "e9ecb0d139a8465fb7989625de80c424", "sha256": "6495dcdf595be671551eb03fb3b59f315ad902ca319cbff91c67ea1a39a31ce7" }, "downloads": -1, "filename": "pydaybit-0.0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "e9ecb0d139a8465fb7989625de80c424", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17980, "upload_time": "2018-11-27T04:02:10", "url": "https://files.pythonhosted.org/packages/67/1f/d442703f906de7efc4547122abe31cfb89f18c20a18b8ec92acc3bd89bb2/pydaybit-0.0.3.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "59fee2cff9883be59af2f64912ef9b9e", "sha256": "3d72f120ea8735e7f9146545fb477937cf6cbc0678304d2740cdf5129dfa8a2e" }, "downloads": -1, "filename": "pydaybit-0.0.3.1.tar.gz", "has_sig": false, "md5_digest": "59fee2cff9883be59af2f64912ef9b9e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14111, "upload_time": "2018-11-27T04:02:12", "url": "https://files.pythonhosted.org/packages/bf/b0/8e63fcf8ee2f1f0257b16545d655704d292d8b3d623e8814ab2f466b361b/pydaybit-0.0.3.1.tar.gz" } ], "0.0.3.2": [ { "comment_text": "", "digests": { "md5": "f12488fba70701ec0695518d7f8e07b0", "sha256": "1df9bf438218416753481daf60db184ee694d25afdd5f47fab15978358f1be09" }, "downloads": -1, "filename": "pydaybit-0.0.3.2-py3-none-any.whl", "has_sig": false, "md5_digest": "f12488fba70701ec0695518d7f8e07b0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17952, "upload_time": "2018-12-26T06:28:56", "url": "https://files.pythonhosted.org/packages/ad/a4/21c296892bedf2c095495b4a0c6c94d67aefb6c404093b025ed861668d76/pydaybit-0.0.3.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ae878ab3c44a6a6ac0fff5081e451e9d", "sha256": "eb28b178ac4eb39fbcb45f6d6498b7950f8b11f4232b234162f17b79a1105804" }, "downloads": -1, "filename": "pydaybit-0.0.3.2.tar.gz", "has_sig": false, "md5_digest": "ae878ab3c44a6a6ac0fff5081e451e9d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14113, "upload_time": "2018-12-26T06:28:59", "url": "https://files.pythonhosted.org/packages/05/f2/c77a9f5e663679345fd5956ef7fb0df5bcd6da43d115907d268448ec4562/pydaybit-0.0.3.2.tar.gz" } ], "0.0.3.3": [ { "comment_text": "", "digests": { "md5": "f9b984573bfb671e2d092c3f15d0813e", "sha256": "f5ac283fa8f6dee33b1afc68788c84a7f535d6d5f3e4edb5cdcd068dbbaa6576" }, "downloads": -1, "filename": "pydaybit-0.0.3.3-py3-none-any.whl", "has_sig": false, "md5_digest": "f9b984573bfb671e2d092c3f15d0813e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17951, "upload_time": "2019-01-03T05:32:06", "url": "https://files.pythonhosted.org/packages/4f/ea/b94805fadd0e29911980f17fb9ccebbfa79c339a83c622dc4c8a66e729ac/pydaybit-0.0.3.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f7649d056193ec8e0db15fc1f8919215", "sha256": "6371d9385522c76ebff021e8e23b41d290ab76d37ea3fd2fd9b353c1b9764659" }, "downloads": -1, "filename": "pydaybit-0.0.3.3.tar.gz", "has_sig": false, "md5_digest": "f7649d056193ec8e0db15fc1f8919215", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14117, "upload_time": "2019-01-03T05:32:08", "url": "https://files.pythonhosted.org/packages/b8/2f/766c73be2285dd6b6cdb805ee93841399b34cf494b00a12b44192d195e66/pydaybit-0.0.3.3.tar.gz" } ], "0.0.3.4": [ { "comment_text": "", "digests": { "md5": "2d0d63c15e1f398ed572c8fb04f86e11", "sha256": "57dafe9590e83fc357a1c87b5e512f400f9354f45c0c07eb80af487bec642b1b" }, "downloads": -1, "filename": "pydaybit-0.0.3.4-py3-none-any.whl", "has_sig": false, "md5_digest": "2d0d63c15e1f398ed572c8fb04f86e11", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17958, "upload_time": "2019-01-03T09:02:49", "url": "https://files.pythonhosted.org/packages/e5/3b/2074f2612a6dae5a3e33937766f0be6d4991748455ce13ff9d2e54743e7f/pydaybit-0.0.3.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8f7f55fe396785a89132f3b30047c905", "sha256": "9db938c0a0e499f07e26d9de963f0605c7c7cc1de6223e82ebdc061090917db7" }, "downloads": -1, "filename": "pydaybit-0.0.3.4.tar.gz", "has_sig": false, "md5_digest": "8f7f55fe396785a89132f3b30047c905", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14118, "upload_time": "2019-01-03T09:02:51", "url": "https://files.pythonhosted.org/packages/45/6a/ceca8a5060de222e1b8747b8b80050bb9695dfd0443bf3be382f7f4f4659/pydaybit-0.0.3.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "2d0d63c15e1f398ed572c8fb04f86e11", "sha256": "57dafe9590e83fc357a1c87b5e512f400f9354f45c0c07eb80af487bec642b1b" }, "downloads": -1, "filename": "pydaybit-0.0.3.4-py3-none-any.whl", "has_sig": false, "md5_digest": "2d0d63c15e1f398ed572c8fb04f86e11", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17958, "upload_time": "2019-01-03T09:02:49", "url": "https://files.pythonhosted.org/packages/e5/3b/2074f2612a6dae5a3e33937766f0be6d4991748455ce13ff9d2e54743e7f/pydaybit-0.0.3.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8f7f55fe396785a89132f3b30047c905", "sha256": "9db938c0a0e499f07e26d9de963f0605c7c7cc1de6223e82ebdc061090917db7" }, "downloads": -1, "filename": "pydaybit-0.0.3.4.tar.gz", "has_sig": false, "md5_digest": "8f7f55fe396785a89132f3b30047c905", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14118, "upload_time": "2019-01-03T09:02:51", "url": "https://files.pythonhosted.org/packages/45/6a/ceca8a5060de222e1b8747b8b80050bb9695dfd0443bf3be382f7f4f4659/pydaybit-0.0.3.4.tar.gz" } ] }