快速入門
只需像使用其他流行的 Python 套件一樣,導入我們的應用程式介面並新建實例即可開始使用我們的應用程式介面。
登入並啟用憑證¶
import shioaji as sj
api = sj.Shioaji()
accounts = api.login("YOUR_API_KEY", "YOUR_SECRET_KEY")
api.activate_ca(
ca_path="/c/your/ca/path/Sinopac.pfx",
ca_passwd="YOUR_CA_PASSWORD",
person_id="Person of this Ca",
)
import shioaji as sj
api = sj.Shioaji()
accounts = api.login("YOUR_PERSON_ID", "YOUR_PASSWORD")
api.activate_ca(
ca_path="/c/your/ca/path/Sinopac.pfx",
ca_passwd="YOUR_CA_PASSWORD",
person_id="Person of this Ca",
)
認證路徑
Windows環境下複製文件路徑時用\
分隔文件,需要用/
替換。
訂閱行情¶
訂閱行情需將合約帶入 subscribe
功能,並指定行情類型,就可以接收資料。
api.quote.subscribe(api.Contracts.Stocks["2330"], quote_type="tick")
api.quote.subscribe(api.Contracts.Stocks["2330"], quote_type="bidask")
api.quote.subscribe(api.Contracts.Futures["TXFC0"], quote_type="tick")
行情類型
目前我們支持 shioaji.constent.QuoteType
中的兩種行情類型。最好的使用方法是直接將這個枚舉類型傳入 subscribe
函數。
下單¶
與上面訂閱行情的方法雷同,需將合約及定義下單資訊帶入 place_order
函數,然後它將返回描述您交易狀態。
contract = api.Contracts.Stocks["2890"]
order = api.Order(
price=12,
quantity=5,
action=sj.constant.Action.Buy,
price_type=sj.constant.StockPriceType.LMT,
order_type=sj.constant.OrderType.ROD,
)
trade = api.place_order(contract, order)
總結¶
這個快速入門演示了我們使用原生 Python 的套件是有多簡單,與許多其他交易應用程式介面不同。我們致力於為用戶提供更具有 Python 特色的交易應用程式介面。