cli从binance api下载k-line(candlestick/ohlc)数据
binance-downloader的Python项目详细描述
二进制下载程序
从rest api下载binance烛台(k-line)数据的python工具
最初从bullsignals/binance-downloader分叉, 那个项目似乎不再需要维护了,我想真正利用它 并允许其他人参与。在这一点上,我几乎重写了 所有的代码都是从头开始的,但是我要感谢原始作者的想法 这让我开始了。
安装
先决条件
要安装此软件包并从命令行运行,需要安装poetry。 poetry是一个python包和依赖关系管理器,用于进行安装和分发 真的很容易。安装说明can be found here 对于MacOS/Linux/Windows
- 验证诗歌安装
$ poetry --version Poetry 0.12.10
下载并安装
克隆存储库
$ git clone https://github.com/anson-vandoren/binance-downloader.git
$cd binance-downloader
激活虚拟环境
poetry将尝试自动为您启用一个虚拟环境,如果它检测到 你还没用呢。
If you already use virtualenvwrapper (or similar), go ahead and make (or switch to) your working environment beforehand:
$ mkvirtualenv binance-downloader
or
$ workon binance-downloader
安装依赖项
$ poetry install
Installing dependencies from lock filePackage operations: 12 installs, 0 updates, 0 removals - Installing six (1.12.0) - Installing certifi (2008.11.29) - Installing chardet (3.0.4) - Installing idna (2.8) - Installing numpy (1.15.4) - Installing python-dateutil (2.7.5) - Installing pytz (2018.7) - Installing urllib3 (1.22) - Installing logbook (1.4.1) - Installing pandas (0.23.4) - Installing requests (2.21.0) - Installing tqdm (4.28.1) - Installing binance-downloader (0.2.0)
使用命令行界面
显示可用选项
$ kline-binance --help
usage: kline-binance [-h] [--start START] [--end END] [--dtfmt DATE_FORMAT] symbol intervalCLI for downloading Binance Candlestick (k-line) data in bulkpositional arguments: symbol (Required) Binance symbol pair, e.g. ETHBTC interval (Required) Frequency interval in minutes(m); hours(h); days(d); weeks(w); months(M); All possibles values: 1m 3m 5m 15m 30m 1h 2h 4h 6h 8h 12h 1d 3d 1w 1Moptional arguments: -h, --help show this help message and exit --start START Start date to get data (inclusive). Format: yyyy/mm/dd --end END End date to get data (exclusive). Format: yyyy/mm/dd --dtfmt DATE_FORMAT Format to use for dates (DMY, MDY, YMD, etc). Default: YMD
下载数据
$ kline-binance XRPBTC 1m --start 2016-01-01 --end now
[2019-01-02 05:12:40.941301] NOTICE: api: First available kline starts on {from_ms_utc(period_start)}[2019-01-02 05:12:40.941867] NOTICE: api: Downloading 620 chunks...Download : 100%|█████████████████████████████████████████████████| 620/620 [00:48<00:00, 12.73 chunk/s]Write CSV: 100%|███████████████████████████████████████████████████| 100/100 [00:14<00:00, 7.04 pct/s][2019-01-02 05:13:44.784379] NOTICE: db: Done writing ./downloaded/2019-01-01_211330_XRPBTC_1m.csv for 612794 lines
许可证
$ kline-binance --help usage: kline-binance [-h] [--start START] [--end END] [--dtfmt DATE_FORMAT] symbol intervalCLI for downloading Binance Candlestick (k-line) data in bulkpositional arguments: symbol (Required) Binance symbol pair, e.g. ETHBTC interval (Required) Frequency interval in minutes(m); hours(h); days(d); weeks(w); months(M); All possibles values: 1m 3m 5m 15m 30m 1h 2h 4h 6h 8h 12h 1d 3d 1w 1Moptional arguments: -h, --help show this help message and exit --start START Start date to get data (inclusive). Format: yyyy/mm/dd --end END End date to get data (exclusive). Format: yyyy/mm/dd --dtfmt DATE_FORMAT Format to use for dates (DMY, MDY, YMD, etc). Default: YMD
下载数据
$ kline-binance XRPBTC 1m --start 2016-01-01 --end now
[2019-01-02 05:12:40.941301] NOTICE: api: First available kline starts on {from_ms_utc(period_start)}[2019-01-02 05:12:40.941867] NOTICE: api: Downloading 620 chunks...Download : 100%|█████████████████████████████████████████████████| 620/620 [00:48<00:00, 12.73 chunk/s]Write CSV: 100%|███████████████████████████████████████████████████| 100/100 [00:14<00:00, 7.04 pct/s][2019-01-02 05:13:44.784379] NOTICE: db: Done writing ./downloaded/2019-01-01_211330_XRPBTC_1m.csv for 612794 lines
许可证
此代码在麻省理工学院许可证下提供。有关详细信息,请参见许可证文件。