安装依赖

  • binance
  • 发布于 2022-08-11 12:51
  • 阅读 3

本文档介绍了用于从币安交易所下载历史K线数据、交易数据和聚合交易数据的Python脚本。它详细说明了如何安装依赖项、运行脚本以及使用各种参数来定制数据下载过程,包括指定市场类型、交易对、时间范围和数据频率。

pip install -r requirements.txt


## 运行脚本

export STORE_DIRECTORY=<你想要的路径>



这将配置下载数据的默认存储目录。这可以被
覆盖 &lt;br/> 通过设置一个参数(如下面的例子)。

### 下载 K 线
`python3 download-kline.py -t &lt;市场类型>` &lt;br/>

运行此命令将下载自 **2020-01-01** 起所有可用月份和每日的 **现货**、**USD-M 合约** 或 **COIN-M 合约** K 线数据,适用于所有交易对和时间间隔。

#### 带参数运行

以下是运行 `download-kline.py` 时可用的参数&lt;br>
如果未声明某些参数,则会使用默认值。

| 参数        | 说明 | 默认值 | 是否强制 |
| :---------------: | ---------------- | :----------------: | :----------------: |
| -t              | 市场类型:**spot**, **um** (USD-M 合约), **cm** (COIN-M 合约) | spot | 是 |
| -s              | 单个 **交易对** 或多个以空格分隔的 **交易对** | 所有交易对 | 否 |
| -i              | 单个 K 线 **时间间隔** 或多个以空格分隔的 **时间间隔** | 所有时间间隔 | 否 |
| -y              | 单个 **年份** 或多个以空格分隔的 **年份** | 从 2020 年到当前年份的所有可用年份 | 否 |
| -m              | 单个 **月份** 或多个以空格分隔的 **月份** | 所有可用月份 | 否 |
| -d              | 单个 **日期** 或多个以空格分隔的 **日期** | 自 2020-01-01 起的所有可用日期 | 否 |
| -startDate      | 下载的 **开始日期**,格式为 [YYYY-MM-DD] | 2020-01-01 | 否 |
| -endDate        | 下载的 **结束日期**,格式为 [YYYY-MM-DD] | 当前日期 | 否 |
| -skip-monthly   | 1 表示跳过下载每月数据 | 0 | 否 |
| -skip-daily     | 1 表示跳过下载每日数据 | 0 | 否 |
| -folder         | 存储下载数据的 **目录** | 当前目录 | 否 |
| -c              | 1 表示下载 **校验和文件** | 0 | 否 |
| -h              | 显示帮助信息 | - | 否 |

#### 例子

例如,从 2020 年的 2 月和 12 月下载 ETHUSDT BTCUSDT BNBBUSD 现货 K 线,时间间隔为 1 周,并带有校验和文件:&lt;br/>
`python3 download-kline.py -t spot -s ETHUSDT BTCUSDT BNBBUSD -i 1w -y 2020 -m 02 12 -c 1`

例如,从 2021-01-01 到 2021-02-02 下载所有交易对的每日 USD-M 合约 K 线,时间间隔为 1 分钟:
`python3 download-kline.py -t um -i 1m -skip-monthly 1 -startDate 2021-01-01 -endDate 2021-02-02`

### 下载交易记录

`python3 download-trade.py -t &lt;市场类型>` &lt;br/>

运行此命令将下载自 **2020-01-01** 起所有可用月份和每日的 **现货**、**USD-M 合约** 或 **COIN-M 合约** 交易数据,适用于所有交易对。

#### 带参数运行

以下是运行 `download-trade.py` 时可用的参数&lt;br>
如果未声明某些参数,则会使用默认值。

| 参数        | 说明 | 默认值 | 是否强制 |
| :---------------: | ---------------- | :----------------: | :----------------: |
| -t              | 市场类型:**spot**, **um** (USD-M 合约), **cm** (COIN-M 合约) | spot | 是 |
| -s              | 单个 **交易对** 或多个以空格分隔的 **交易对** | 所有交易对 | 否 |
| -y              | 单个 **年份** 或多个以空格分隔的 **年份** | 从 2020 年到当前年份的所有可用年份 | 否 |
| -m              | 单个 **月份** 或多个以空格分隔的 **月份** | 所有可用月份 | 否 |
| -d              | 单个 **日期** 或多个以空格分隔的 **日期** | 自 2020-01-01 起的所有可用日期 | 否 |
| -startDate      | 下载的 **开始日期**,格式为 [YYYY-MM-DD] | 2020-01-01 | 否 |
| -endDate        | 下载的 **结束日期**,格式为 [YYYY-MM-DD] | 当前日期 | 否 |
| -skip-monthly   | 1 表示跳过下载每月数据 | 0 | 否 |
| -skip-daily     | 1 表示跳过下载每日数据 | 0 | 否 |
| -folder         | 存储下载数据的 **目录** | 当前目录 | 否 |
| -c              | 1 表示下载 **校验和文件** | 0 | 否 |
| -h              | 显示帮助信息 | - | 否 |

#### 例子

例如,从 2020 年的 2 月和 12 月下载 ETHUSDT BTCUSDT BNBBUSD 现货交易记录,并带有校验和文件:&lt;br/>
`python3 download-trade.py -t spot -s ETHUSDT BTCUSDT BNBBUSD -y 2020 -m 02 12 -c 1`

例如,从 2021-01-01 到 2021-02-02 下载所有交易对的每日 USD-M 合约交易记录:
`python3 download-trade.py -t um -skip-monthly 1 -startDate 2021-01-01 -endDate 2021-02-02`

### 下载聚合交易记录

`python3 download-aggTrade.py -t &lt;市场类型>` &lt;br/>

运行此命令将下载自 **2020-01-01** 起所有可用月份和每日的 **现货**、**USD-M 合约** 或 **COIN-M 合约** 聚合交易数据,适用于所有交易对。

#### 带参数运行

以下是运行 `download-aggTrade.py` 时可用的参数&lt;br>
如果未声明某些参数,则会使用默认值。

| 参数        | 说明 | 默认值 | 是否强制 |
| :---------------: | ---------------- | :----------------: | :----------------: |
| -t              | 市场类型:**spot**, **um** (USD-M 合约), **cm** (COIN-M 合约) | spot | 是 |
| -s              | 单个 **交易对** 或多个以空格分隔的 **交易对** | 所有交易对 | 否 |
| -y              | 单个 **年份** 或多个以空格分隔的 **年份** | 从 2020 年到当前年份的所有可用年份 | 否 |
| -m              | 单个 **月份** 或多个以空格分隔的 **月份** | 所有可用月份 | 否 |
| -d              | 单个 **日期** 或多个以空格分隔的 **日期** | 自 2020-01-01 起的所有可用日期 | 否 |
| -startDate      | 下载的 **开始日期**,格式为 [YYYY-MM-DD] | 2020-01-01 | 否 |
| -endDate        | 下载的 **结束日期**,格式为 [YYYY-MM-DD] | 当前日期 | 否 |
| -skip-monthly   | 1 表示跳过下载每月数据 | 0 | 否 |
| -skip-daily     | 1 表示跳过下载每日数据 | 0 | 否 |
| -folder         | 存储下载数据的 **目录** | 当前目录 | 否 |
| -c              | 1 表示下载 **校验和文件** | 0 | 否 |
| -h              | 显示帮助信息 | - | 否 |

#### 例子

例如,从 2020 年的 2 月和 12 月下载 ETHUSDT BTCUSDT BNBBUSD 现货 aggTrades,并带有校验和文件:&lt;br/>
`python3 download-aggTrade.py -t spot -s ETHUSDT BTCUSDT BNBBUSD -y 2020 -m 02 12 -c 1`

例如,从 2021-01-01 到 2021-02-02 下载所有交易对的每日 USD-M 合约 aggTrades:
`python3 download-aggTrade.py -t um -skip-monthly 1 -startDate 2021-01-01 -endDate 2021-02-02`

### 仅限合约数据

以下 3 个脚本仅用于合约 K 线数据。
运行此命令将下载自 **2020-01-01** 起所有可用月份和每日的 **USD-M 合约** 或 **COIN-M 合约**
indexPriceKlines, markPriceKlines 或 premiumPriceKlines,适用于所有交易对。

`python3 download-futures-indexPriceKlines.py -t &lt;市场类型>` &lt;br/>
`python3 download-futures-markPriceKlines.py -t &lt;市场类型>` &lt;br/>
`python3 download-futures-premiumPriceKlines.py -t &lt;市场类型>`

#### 带参数运行

以下是运行脚本时可用的参数。&lt;br>
**`-t`, type,是一个强制性参数,包含 2 种不同的合约类型:`um`,`cm`**。如果未声明某些参数,则会使用默认值。

| 参数        | 说明 | 默认值 | 是否强制 |
| :---------------: | ---------------- | :----------------: | :----------------: |
| -t              | 市场类型:**um** (USD-M 合约), **cm** (COIN-M 合约) | - | 是 |
| -s              | 单个 **交易对** 或多个以空格分隔的 **交易对** | 所有交易对 | 否 |
| -i              | 单个 K 线 **时间间隔** 或多个以空格分隔的 **时间间隔** | 所有时间间隔 | 否 |
| -y              | 单个 **年份** 或多个以空格分隔的 **年份** | 从 2020 年到当前年份的所有可用年份 | 否 |
| -m              | 单个 **月份** 或多个以空格分隔的 **月份** | 所有可用月份 | 否 |
| -d              | 单个 **日期** 或多个以空格分隔的 **日期** | 自 2020-01-01 起的所有可用日期 | 否 |
| -startDate      | 下载的 **开始日期**,格式为 [YYYY-MM-DD] | 2020-01-01 | 否 |
| -endDate        | 下载的 **结束日期**,格式为 [YYYY-MM-DD] | 当前日期 | 否 |
| -skip-monthly   | 1 表示跳过下载每月数据 | 0 | 否 |
| -skip-daily     | 1 表示跳过下载每日数据 | 0 | 否 |
| -folder         | 存储下载数据的 **目录** | 当前目录 | 否 |
| -c              | 1 表示下载 **校验和文件** | 0 | 否 |
| -h              | 显示帮助信息 | - | 否 |

例如,下载合约 BTCUSDT USD-M indexPriceKlines
`python3 download-futures-indexPriceKlines.py -t um -s BTCUSDT`

例如,从 2020 年的 2 月和 12 月下载 ETHUSDT BTCUSDT BNBUSDT USD-M markPriceKlines,时间间隔为 1 周,并带有校验和文件:&lt;br/>
`python3 download-futures-markPriceKlines.py -t um -s ETHUSDT BTCUSDT BNBUSDT -i 1w -y 2020 -m 02 12 -c 1`

例如,从 2021-01-01 到 2021-02-02 下载所有交易对的每日 COIN-M premiumPriceKlines,时间间隔为 1 分钟:
`python3 download-futures-premiumPriceKlines.py -t cm -skip-monthly 1 -i 1m  -startDate 2021-01-01 -endDate 2021-02-02`

>- 原文链接: [github.com/binance/binan...](https://github.com/binance/binance-public-data/blob/master/python/README.md)
>- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
binance
binance
江湖只有他的大名,没有他的介绍。