【D7】试用厨具:历史资料(Historical Market Data)

前言

当我们要使用交易,或是做策略的时候,历史资料是不可或缺的,这边就使用Shioaji的历史资料功能。

参考网站:Historical Market Data


初步使用

根据教学,我们简单的import进入,并且观察他

from shioaji.data import Ticks

Ticks??

会有这样的资讯:

Init signature: Ticks(**data:Any) -> None
Docstring:      <no docstring>
Source:        
class Ticks(BaseModel):
    ts: typing.List[int]
    close: typing.List[float]
    volume: typing.List[int]
    bid_price: typing.List[float]
    bid_volume: typing.List[int]
    ask_price: typing.List[float]
    ask_volume: typing.List[int]

File:           shioaji/data.py
Type:           ModelMetaclass

可以看到他的资料结构,还有最佳五档的买卖价格与数量资讯。

取得某日的历史交易资讯

使用ticks()功能,并且用我们昨天Contracts.Stocks["代码"]功能,取得Shioaji中的合约物件,并且指定日期date,就可得到该股票特定日期的交易资讯

ticks = api.ticks(
    contract=api.Contracts.Stocks["2330"], 
    date="2020-03-04"
)
ticks

就会出来这样的资料:

Ticks(
    ts=[1583312400821000000, 1583312405836000000, 1583312410849000000, 1583312415864000000, 1583312420877000000], 
    close=[322.0, 321.5, 321.0, 321.0, 321.0],
    volume=[5098, 91, 126, 59, 90],
    bid_price=[321.5, 321.0, 321.0, 321.0, 321.0],
    bid_volume=[5, 100, 94, 78, 20],
    ask_price=[322.0, 321.5, 321.5, 321.5, 321.5],
    ask_volume=[646, 13, 31, 86, 199]
)

後记

历史资料感觉可以玩很多,就继续挖看看可以看到啥。


<<:  使用Google api查询书本资讯 Day 17

>>:  Day06:跨部门沟通

#8 NumPy教学

NumPy操作 安装 请在终端机底下输入这个,谢谢 pip install numpy 载入NumP...

自动化测试,让你上班拥有一杯咖啡的时间 | Day 23 - 避免使用 cy.wait

此系列文章会同步发文到个人部落格,有兴趣的读者可以前往观看喔。 语法 cy.wait(time) ...

[Day 48] 留言板後台及前台(四) - 处理留言板内容

我们之前的web.php没有考虑到编辑留言板的部分, 所以我们在留言板的後面再加上一列 //编辑留言...

You can't always get what you want

其实今天是想延续昨天继续讨论「每个专案的程序码都该这样开始」,为什麽会变成这个标题? 因为我写的每篇...

LEAP(轻量级可扩展认证协议)

-EAP和802.1X 以下是维基百科的摘录: EAP不是有线协议;相反,它仅定义消息格式。每个使...