SKD初始化使用
jqdatasdk在使用之前需要进行账号密码的初始化,通过auth来进行权限校验。
# need to pip install jqdatasdk
from jqdatasdk import *
import pandas as pd
auth("username", "password")
data_root = '需要存储DATA的地址'
# set pandas max_rows and pandas max_columns
pd.set_option("display.max_rows", 10000)
pd.set_option("display.max_columns", 1000)
获取股票列表
通过封装get_all_stock_list方法来获取所有上市A股的股票列表信息。
def get_all_stock_list():
    """
    获取所有A股股票列表
    :return: stock_list
    """
    stock_list = list(get_all_securities(["stock"]).index)
    return stock_list
获取单个股票价格行情
使用get_security_info来获取股票价格行情价格,可以通过不同的参数进行获取不同的时间不同维度的股票的价格。
def get_single_price(code, time_freq, start_date, end_date):
    """
    获取单个股票行情数据
    :param code: 
    :param time_freq: 
    :param start_date: 
    :param end_date: 
    :return: 
    """
    # 如果start_date == None,默认为上市日期
    if start_date is None:
        start_date = get_security_info(code).start_date
    data = get_price(code, start_date=start_date, end_date=end_date,
                   frequency=time_freq, panel=False)
    return data
导出CSV数据
可以使用to_csv将dataframe数据转换成csv数据,存储在本地文件中。
def export_data(data, filename, type):
    """
    导出股票行情数据
    :param data: 
    :param filename:
    :param data: 
    :return: 
    """
    file_root = data_root +type+"/"+filename+".csv"
    data.index.names = ['date']
    data.to_csv(file_root)
    print("已成功存储至:", file_root)
获取CSV数据
根据文件名称和路径获取CSV的数据。
def get_csv_data(code, type):
    file_root = data_root + type + "/" + code + ".csv"
    return pd.read_csv(file_root)