使用Python連結資料庫MongoDB實作理財機器人Mx.Ada提供股票交易資訊及下單功能,以下是一個以臺股臺積電(股票代號2330)為例的實作步驟。
你可以從MongoDB官方網站下載安裝程式,並按照官方檔案進行安裝和配置。
pip install pymongo
from pymongo import MongoClient
# 連線到MongoDB
client = MongoClient('mongodb://localhost:27017/')
# 選擇資料庫
db = client['your_database_name']
# 選擇集合
collection = db['your_collection_name']
import requests
# 取得臺積電股票資訊
response = requests.get('https://mis.twse.com.tw/stock/api/getStockInfo.jsp?ex_ch=tse_2330.tw')
data = response.json()
# 提取所需資訊
stock_name = data['msgArray'][0]['n']
price = data['msgArray'][0]['z']
volume = data['msgArray'][0]['tv']
# 將股票資訊插入到MongoDB集合中
collection.insert_one({
'stock_name': stock_name,
'price': price,
'volume': volume
})
pip install shioaji
(2) 設定證券商帳號:在程式碼中,設定使用的證券商帳號。你需要提供帳號、密碼、以及證券商的交易所別。以下是一個設定帳號的範例程式碼。
from shioaji import Shioaji
# 設定證券商帳號
api = Shioaji()
api.login(user_id="your_user_id", password="your_password")
(3) 檢查證券商帳號狀態:你可以檢查證券商帳號的狀態,確認是否已成功連線到證券商的伺服器。以下是一個檢查帳號狀態的範例程式碼。
# 檢查帳號狀態
print(api.Account)
(4) 下單:使用Shioaji API下單買入或賣出臺積電股票。以下是一個以市價單買入臺積電股票的範例程式碼。
from shioaji.constant import FuturePriceType
from shioaji import Stock
# 建立股票物件
stock = Stock(api)
# 下市價單買入臺積電股票
stock_order = stock.order(
action=stock.Action.Buy,
symbol="2330",
price=0,
quantity=1,
order_type=FuturePriceType.Market
(5) 下單並確認結果:
```python
order = api.order_stock(
action=Shioaji.const.Action.Buy,
symbol='2330',
price=0,
quantity=1,
price_type=Shioaji.const.TFTPriceType.LMT,
)
print(order)
我們使用order_stock
函式來下單。action
引數指定買進(Buy),symbol
引數指定股票代號為2330(臺積電),price
引數指定價格為0,quantity
引數指定數量為1。price_type
引數指定下單價格型態為限價單(LMT)。
執行上述程式碼後,會返回下單結果,可以透過print
函式來顯示在控制檯上。