0
点赞
收藏
分享

微信扫一扫

【python量化交易学习】从tushare获取A股交易数据,并计算当日振幅,使用pyecharts画出柱状图

君心浅语 2022-03-16 阅读 25

统计某日A股市场,不同振幅分布。按照1%振幅进行统计

import tushare as ts
import pandas as pd
from pyecharts.charts import Bar
from pyecharts import options as opts

# 初始化pro接口
pro = ts.pro_api('d437******72')

tradedate = "20220315"

# 拉取数据
df = pro.daily(**{
    "ts_code": "",
    "trade_date": tradedate,
    "start_date": "",
    "end_date": "",
    "offset": "",
    "limit": ""
}, fields=[
    "ts_code",
    "trade_date",
    "open",
    "high",
    "low",
    "close",
    "pre_close",
    "change",
    "pct_chg",
    "vol",
    "amount"
])

df.loc[:, "updown_pct_chg"] = (df["high"] - df["low"]) / df["pre_close"] * 100


# 按统计振幅0-30%
bins = [i for i in range(0, 30)]
cuts = pd.cut(df['updown_pct_chg'], bins=bins)
share_amount = df.groupby(cuts)['updown_pct_chg'].count().tolist()


c = (
    Bar()
        .add_xaxis(bins)
        .add_yaxis("", share_amount)
        .set_global_opts(
        xaxis_opts=opts.AxisOpts(name='振幅( %)'),
        yaxis_opts=opts.AxisOpts(name='股票数'),
        title_opts=opts.TitleOpts(title=tradedate + 'A股振幅分布', pos_left='middle')
    )
        .render("振幅分布.html")
)

生成柱状图:

在这里插入图片描述

举报

相关推荐

0 条评论