iT邦幫忙

2021 iThome 鐵人賽

DAY 24
0

上篇大概介紹一下我們所運用的js與方法,
今天我們要先來寫python api的部分。

(1)首先新增需要的庫

from shioaji.data import Kbars

(2)新增一個kbars的方法,
date_start = request.args.get('date_start')
取得url開始的時間,
date_end = request.args.get('date_end')
取得url結束的時間,
stock_code = request.args.get('stock_code')
取得url股票代碼,
將以上三個參數帶入shioaji api取得kbars的方法,
最後將資料傳回client。

@app.route('/kbars', methods=['GET'])
def test_kbar():
    api = sj.Shioaji(simulation=True)

    api.login(
        person_id="PAPIUSER01", 
        passwd="2222",
        contracts_cb=lambda security_type: print(f"{repr(security_type)} fetch done.")
    )

    date_start = request.args.get('date_start')
    date_end = request.args.get('date_end')
    stock_code = request.args.get('stock_code')

    kbars = api.kbars(api.Contracts.Stocks[stock_code], start=date_start, end=date_end)

    j = {'ts': kbars['ts'], 'Open': kbars['Open'], 'High': kbars['High'], 'Low': kbars['Low'], 'Close': kbars['Close'], 'Volume': kbars['Volume']}

    return json5.dumps(j)

回傳json後,明天要做資料的處理。


上一篇
視覺化KBARS(1)
下一篇
視覺化KBARS(3)-service、serviceImpl
系列文
視覺化跨平台Client與永豐金融證券APIs30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言