你還在看,真有心,來吧! 我們一起牽手向前行!
讀取委託回報,通常下單(raplace order)的時候,就會有一個回覆了。
下單後,有下列這幾種回覆情況。
例如這個範例(執行前可以先改一個芭樂價例如0.1元,避免意外?):
import shioaji as sj
api = sj.Shioaji()
accounts = api.login("YOUR_PERSON_ID", "YOUR_PASSWORD", contracts_timeout=10000)
api.activate_ca(
ca_path="/c/your/ca/path/Sinopac.pfx",
ca_passwd="YOUR_CA_PASSWORD",
person_id="Person of this Ca",
)
contract = api.Contracts.Stocks.TSE.TSE2890
order = api.Order(
price=14,
quantity=1,
action=sj.constant.Action.Sell,
price_type=sj.constant.StockPriceType.LMT,
order_type=sj.constant.TFTOrderType.ROD,
first_sell=sj.constant.StockFirstSell.Yes,
account=api.stock_account
)
trade = api.place_order(contract, order)
trade
正常後,執行下單後會看到回覆(當然訊息不一定相同啦,要看有沒有成交之類不同情況嘛)。例如長這樣:
紅色框框就是這個order當時狀態。對照我們上面的說明,得知狀態是"傳送中"。
如果下單執行後就成交了,應該會看到類似下列回傳訊息:
如果要查詢下單訊息,請呼叫api.update_status,就會看到了。範例如下:
api.update_status(api.stock_account)
好了,連假剛結束。今天這樣就好了,我們認真點,只要再16天就可以放國慶假了,YA~