通用数据
基础常量
K线频率
class BarFreq:
"""K线频率
"""
Min1 = 1 # 1分钟k线
Min5 = 5 # 5分钟k线
Min15 = 15 # 15分钟k线
Min30 = 30 # 30分钟k线
Min60 = 60 # 60分钟k线
Daily = 101 # 日线
Weekly = 102 # 周线
Monthly = 103 # 月线
LooseDaily = 1010 # 日线,在交易日没结束前,显示的是最新值,交易日结束后,同Daily
交易市场:
class Market:
"""交易市场
"""
SZ = 0
SH = 1
BJ = 2
交易类型:
class MarketType:
"""交易类型
"""
Bond = 0 # 可转债
Fund = 1 # ETF基金
Stock = 2 # 股票
交易日数据
async def fetch_trade_date(*, to_frame=True) -> Union[Set[int], pd.DataFrame]
输入:
| 名称 | 类型 | 描述 |
|---|---|---|
| to_frame | bool | 是否转DataFrame格式 |
输出(仅描述DataFrame):
| 名称 | 类型 | 描述 |
|---|---|---|
| trade_date | int | 交易日 |
示例:
In [1]: import qfetch as fetch
In [2]: await fetch.fetch_trade_date()
Out[2]:
trade_date
0 20120104
1 20120105
2 20120106
3 20120109
4 20120110
... ...
8306 20021225
8307 20021226
8308 20021227
8309 20021230
8310 20021231
[8311 rows x 1 columns]
下一个交易日
async def fetch_next_trade_date(*, date: Union[date, datetime, str]) -> date
输入:
| 名称 | 类型 | 描述 |
|---|---|---|
| date |
- | 如str类型,格式为yyyy-mm-dd/yyyymmdd |
输出:
| 名称 | 类型 | 描述 |
|---|---|---|
| - | date | 交易日 |
示例:
In [1]: import qfetch as fetch
In [2]: from datetime import datetime
In [3]: now = datetime.now()
In [4]: await fetch.fetch_next_trade_date(date=now)
Out[4]: datetime.date(2024, 8, 26)
上一个交易日
async def fetch_prev_trade_date(*, date: Union[date, datetime, str]) -> date
输入:
| 名称 | 类型 | 描述 |
|---|---|---|
| date |
- | 如str类型,格式为yyyy-mm-dd/yyyymmdd |
输出:
| 名称 | 类型 | 描述 |
|---|---|---|
| - | date | 交易日 |
示例:
In [1]: import qfetch as fetch
In [2]: from datetime import datetime
In [3]: now = datetime.now()
In [4]: await fetch.fetch_prev_trade_date(date=now)
Out[4]: datetime.date(2024, 8, 22)
是否交易日
async def fetch_is_trade_date(date: Union[date, datetime, str]) -> bool
输入:
| 名称 | 类型 | 描述 |
|---|---|---|
| date | - | 如str类型,格式为yyyy-mm-dd/yyyymmdd |
输出:
| 名称 | 类型 | 描述 |
|---|---|---|
| - | bool | 是否交易日 |
示例:
In [6]: await fetch.fetch_is_trade_date(date=now)
Out[6]: True
实时行情
async def fetch_rt_quot(self, *, code: List[str], to_frame=True) -> Union[Dict[str, Dict], pd.DataFrame]:
注意,该接口是准实时,有几秒的延迟,切勿高频,可以用与股票/可转债/ETF基金/行业/概念等等。
输入:
| 名称 | 类型 | 描述 |
|---|---|---|
| code | List[str] | 代码列表 |
| to_frame | bool | 是否转DataFrame格式 |
输出:
| 名称 | 类型 | 描述 |
|---|---|---|
| code | str | 代码 |
| name | str | 名称 |
| time | datetime | 行情时间 |
| last_close | float | 昨收价 |
| now | float | 现价 |
| open | float | 开盘价 |
| high | float | 最高价 |
| low | float | 最低价 |
| buy | float | 买价 |
| sell | float | 卖价 |
| bid | tuple | 买5:((量,价),.., ...) |
| ask | tuple | 卖5:((量,价),.., ...) |
| chg | float | 涨跌额 |
| chg_pct | float | 涨跌% |
| volume | int | 成交量 |
| amount | float | 成交额 |
| turnover | float | 换手率%,可转债等没有该值 |
| total_value | float | 总市值,可转债等没有该值 |
| currency_value | float | 流通市值,可转债等没有该值 |
| is_trading | bool | 是否交易中 |
| freq_open | float | 周期内开盘价,不一定有值 |
| freq_high | float | 周期内最高价,不一定有值 |
| freq_low | float | 周期内最低价,不一定有值 |
| freq_chg | float | 周期内涨跌额,不一定有值 |
| freq_chg_pct | float | 周期内涨跌%,不一定有值 |
| freq_time | datetime | 周期内频率时间,不一定有值 |
示例:
In [22]: await fetch.fetch_rt_quot(code=['sz000001'])
Out[22]:
code name open last_close ... freq_low freq_chg freq_chg_pct freq_time
0 sz000001 平安银行 10.39 10.38 ... 0.0 0.0 0.0 19700101000000
[1 rows x 26 columns]