日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

Python量化交易09——使用证券宝获取金融行情数据(baostock)

發(fā)布時間:2024/1/18 python 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python量化交易09——使用证券宝获取金融行情数据(baostock) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

接上一篇文章介紹怎么用Tushare獲取日k數(shù)據(jù)后,本章教大家怎么用證券寶獲取數(shù)據(jù).

baostock 的官網(wǎng)鏈接:A股K線數(shù)據(jù) - www.baostock.com

這是免費(fèi)的一個庫,數(shù)據(jù)種類也很很豐富,挺好用的。


日K?

導(dǎo)入包:

import baostock as bs import pandas as pd import numpy as np

自定義一個獲取K線數(shù)據(jù)的函數(shù):

def get_stocks_daily(stocks=['sh.601318'],start_date='2022-04-01',end_date='2023-03-29'):lg = bs.login()df_results=pd.DataFrame()for stock in stocks:rs_result = bs.query_history_k_data_plus(stock,fields="date,code,open,high,low,close,preclose,volume,amount,adjustflag,turn,tradestatus,pctChg,isST"\, start_date=start_date,end_date=end_date, frequency="d", adjustflag="3")df_result = rs_result.get_data()#df_result=df_result.set_index('date')df_results=pd.concat([df_results,df_result],ignore_index=True)print(f"{stock}獲取完成")bs.logout()cols_to_convert = [col for col in df_results.columns if col != 'code' and col!='date']df_results['date']=pd.to_datetime(df_results['date'])df_results[cols_to_convert] = df_results[cols_to_convert].astype('float64')return df_results

我這里的時間是從2022-07-01到2023-03-01的,可以改,

假設(shè)我們要獲取的股票列表為:

stocks_lst=['sh.601318', 'sz.001696', 'sz.000002', 'sz.000063', 'sz.002415', 'sz.000001', 'sh.601888', 'sh.601166', 'sh.601668', 'sh.601628', 'sh.600547', 'sh.601688', 'sh.600030', 'sh.603259', 'sh.600585', 'sh.601211']

傳入上面的函數(shù),就可以得到數(shù)據(jù)表了

get_stocks_daily(stocks=stocks_lst,start_date='2022-07-01',end_date='2023-03-01')

?想獲取周K或者月K怎么辦呢,很簡單,改一下frequency參數(shù)就行了:

  • frequency:數(shù)據(jù)類型,默認(rèn)為d,日k線;d=日k線、w=周、m=月、5=5分鐘、15=15分鐘、30=30分鐘、60=60分鐘k線數(shù)據(jù),不區(qū)分大小寫;指數(shù)沒有分鐘線數(shù)據(jù);周線每周最后一個交易日才可以獲取,月線每月最后一個交易日才可以獲取。


指數(shù)?

還可以獲取一些指數(shù)的數(shù)據(jù):

通過API接口獲取指數(shù)(綜合指數(shù)、規(guī)模指數(shù)、一級行業(yè)指數(shù)、二級行業(yè)指數(shù)、策略指數(shù)、成長指數(shù)、價值指數(shù)、主題指數(shù))K線數(shù)據(jù)。

  • 綜合指數(shù),例如:sh.000001 上證指數(shù),sz.399106 深證綜指 等;
  • 規(guī)模指數(shù),例如:sh.000016 上證50,sh.000300 滬深300,sh.000905 中證500,sz.399001 深證成指等;
  • index_lst=['sh.000001', 'sz.399106', 'sh.000016', 'sh.000300', 'sh.000905', 'sz.399001']

    ?獲取

    index_dfs=get_stocks_daily(stocks=index_lst)

    查看前五行

    index_dfs.head()

    ?

    查看數(shù)據(jù)信息:

    index_dfs.info()

    ?

    每個變量對應(yīng)的意思,可以看官網(wǎng)的講解:


    證券寶的數(shù)據(jù)種類也是很多的:

    ?官網(wǎng)上的代碼樣例都很清楚,就不多說了。

    總結(jié)

    以上是生活随笔為你收集整理的Python量化交易09——使用证券宝获取金融行情数据(baostock)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。