iT邦幫忙

2021 iThome 鐵人賽

DAY 13
0
永豐金融APIs

永豐證API X Python系列 第 13

【D13】發現新book:Account Data- Position

前言

看了一些交易資料,現在來看看一些帳務相關的資料吧。

參考網站:Position

本日程式碼使用:d13_account_position.ipynb


查資料的方法

  1. 首先當然要登入帳號囉,這邊就跳過

  2. 接著我們來看看這個「部位」(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參數,並且預設值會是取得我們股票帳戶的資訊。

取得庫存資料

  1. 先取得的是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)]
    

    可以看得出來庫存的商品、數量、價格、和作量等等資訊。

  2. 再來取得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股。

這樣就可以查庫存囉~


上一篇
【D12】發現新廚具:Snapshot
下一篇
【D14】熟悉廚具:訂閱Subscribe
系列文
永豐證API X Python31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言