iT邦幫忙

2021 iThome 鐵人賽

DAY 7
0
永豐金融APIs

永豐證API X Python系列 第 7

【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]
)

後記

歷史資料感覺可以玩很多,就繼續挖看看可以看到啥。


上一篇
【D6】試用廚具:合約資料(Contracts)
下一篇
【D8】重新磨刀:重看Stocks
系列文
永豐證API X Python30

尚未有邦友留言

立即登入留言