当熟悉了历史资料,发现有更厉害的K线,这时候就要善用工具,好好的料理资料一番,这次我们来用K线制作20MA图吧!
本日程序码使用:d9_kbar.ipynb
直接看Kbars
的Class资料,可以看到他的类别属性(Class attribute)有ts
、Open
、High
、Low
、Close
、Volumn
,分别表示k线时间、开、高、低、收、量。
class Kbars(BaseMapping):
ts: typing.List[int]
Open: typing.List[float]
High: typing.List[float]
Low: typing.List[float]
Close: typing.List[float]
Volume: typing.List[int]
看到这些後,直接拿资料看最准,这次也是拿台积电(2330)的来看:
kbars = api.kbars(api.Contracts.Stocks["2330"], start="2021-09-15", end="2021-09-23")
df = pandas.DataFrame({**kbars})
df.ts = pandas.to_datetime(df.ts)
print(df.tail())
可以看到结果是:
ts High Close Low Volume Open
1329 2021-09-23 13:26:00 589.0 589.0 589.0 0 589.0
1330 2021-09-23 13:27:00 589.0 589.0 589.0 0 589.0
1331 2021-09-23 13:28:00 589.0 589.0 589.0 0 589.0
1332 2021-09-23 13:29:00 589.0 589.0 589.0 0 589.0
1333 2021-09-23 13:30:00 588.0 588.0 588.0 3606 588.0
所以永丰证的API提供的是一分钟的k线。
运用1分K线来画图,看看呈现的结果如何。
首先别忘记安装matplotlib、ipykernel
pipenv install matplotlib
pipenv install ipykernel --dev
先来看看我们的图片,如果只接画出来会变成怎样。
df.plot(x="ts", y="Close")
做线图,我们用rolling()
,这代表滚动的值,然後给予要滚动的资料长度-20笔资料-以及区间单位-1单位-,然後再用mean()
算平均,这样就可以得到一个值罗,之後串在一起就可以画成一张趋势线图(详细可参考之前系列的文章)。
# 近20分收盘价图
close_price_20 = df["Close"].rolling(20, min_periods=1).mean()
close_price_20.plot()
虽然是分K,但是也可以制作成日K、周K等等。他们提供还满完整的资料,除了tick,连K线都准备好,真的还满方便的!
第六天,星期一,打起精神fighting~ 参考的资料来源一样是 day 4 的「Our World...
前言 今天加权指数开低,维持一个大跌,来观察讯号灯和大盘、个股的关系,来验证我们的讯号灯能不能参考。...
这边我是打API爬的,所以先写了序列化: class IgCommentsSerializer(se...
On the way from an engineer to transfer to a Busin...
资讯安全管理制度运行会产出一系列的文件化纪录,着也是稽核程序中可能会发现的不合理之处。 其中,在风险...