看了一些交易資料,現在來看看一些帳務相關的資料吧。
參考網站:Position
本日程式碼使用:d13_account_position.ipynb
首先當然要登入帳號囉,這邊就跳過
接著我們來看看這個「部位」(position)的格式資料
# 取得Position格式說明
api.list_positions?
得到了:
Signature:
api.list_positions(
account: shioaji.account.Account = None,
unit: shioaji.constant.Unit = <Unit.Common: 'Common'>,
timeout: int = 5000,
cb: Callable[[List[shioaji.position.Position]], NoneType] = None,
) -> List[shioaji.position.Position]
Docstring:
query account of unrealized gain or loss
Args:
account (:obj:Account):
choice the account from listing account (Default: stock account)
File: ~/.local/share/virtualenvs/shioaji-sjfdYAfV/lib/python3.8/site-packages/shioaji/shioaji.py
Type: method
可以看得出來,我們要提供account
參數,並且預設值會是取得我們股票帳戶的資訊。
先取得的是stock,也就是股票資料:
# 取得Position 資料:Stock
api.list_positions(api.stock_account)
結果是...[]
,居然是空的!?原來我沒有買股票XD
如果是用範例:
[Position(code='2890', direction=<Action.Buy: 'Buy'>, quantity=10, price=10.1, pnl=1234.0, yd_quantity=10)]
可以看得出來庫存的商品、數量、價格、和作量等等資訊。
再來取得share,應該是股的部分(這個需要再double check)
# 取得Position 資料:Share
api.list_positions(api.stock_account, unit=sj.constant.Unit.Share)
結果也是[]
,也是空的,因為我也沒有買XD
這時候就要看範例:
Position(code='2890', direction=<Action.Buy: 'Buy'>, quantity=10000, price=10.1, pnl=1234.0, yd_quantity=10000)]
如果兩個範例是相同的,這邊顯示的quantity就是股數,所以就是上面例子的10張轉乘10000股。
這樣就可以查庫存囉~