通用数据
基础常量
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]