导航:首页 > 数据行情 > 建立股票数据库

建立股票数据库

发布时间:2024-11-01 05:11:02

① 量化投研基础设施:股票日频数据库的搭建

搭建本地股票日频数据库,为量化投研提供坚实基础

背景与需求

本文旨在手搓一个股票日频数据库,以满足量化投资书籍编写与本地数据接口实现的需求。使用tushare作为数据源,提供稳定可靠的数据,同时,通过代码实现数据库搭建,便于后续章节的深入探讨与因子计算。

准备工作

选用tushare作为数据来源,安装库并获取token。考虑数据储存方式,推荐使用交易日为单位的文件夹结构,结合feather文件提高读取速度,确保高效数据接口的实现。复权数据处理也纳入考量,为量化分析提供完整数据集。

数据库搭建与优化

采用交易日为更新单位,简化数据库维护流程。选择feather文件格式,利用pandas的高效性能,实现数据的快速读写。在数据接口设计上,支持按股票代码、日期、复权方式与字段查询,确保研究需求的灵活满足。复权操作确保数据的准确性和分析的可靠性。

Python实现与功能

代码实现包括数据提取、数据接口设计与数据更新功能。数据提取部分遍历交易日,合并股票日度行情与复权因子,保存至feather文件。数据接口提供按参数查询所需数据的能力,数据更新功能确保数据库的及时更新,满足研究与分析需求。

测试与应用

通过示例展示了如何调用接口获取特定股票的后复权数据与全市场数据,验证了数据接口的灵活性与高效性。量化研究应聚焦于核心问题,而非基础设施层面的细节,确保在这些基础上深入研究,实现真正意义上的价值。

② 怎么做实时的股票数据库

如果主站提供有相关的接口的话,可以调主站的接口.如果主站不提供相关接口.那就不不断抓取.获取最新的信息了.

③ mysql怎么做股票数据库

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import tushare as ts
from sqlalchemy import create_engine

code_list = []

#数据库链接参数
host = '10.0.0.5'
port = 3306
user = 'root'
password = 'qweqwe'
database = 'stock'
charset = "utf8"
table = "stock_data"

# create table stock_data(id int auto_increment,code int(6) zerofill,date date not null,open decimal(10,2) not null,high decimal(10,2) not null,close decimal(10,2) not null,low decimal(10,2) not null,volume decimal(10,2),turnover decimal(10,2),primary key (id),index(code),index(date),index(open),index(high),index(close),index(low));

def get_data (code):
df = ts.get_hist_data(code)
data = df.iloc[::-1, [0, 1, 2, 3, 4, 13]]
data["code"] = code
return data

def save_data_to_mysql (data,user = 'root',password = 'qweqwe',database = 'stock',charset = "utf8",table = "stock_data"):
engine = create_engine('mysql://' + user + ':' + password + '@' + host + '/' + database + '?charset=' + charset)
data.to_sql(table, engine, if_exists='append')
return

for code in code_list:
try:
data = get_data(code)
save_data_to_mysql(data)
print str(code) + "导入mysql成功"
except:
print str(code) + "获取数据失败"

④ 【手把手教你】搭建自己的量化分析数据库

量化交易的分析根基在于数据,包括股票历史交易数据、上市公司基本面数据、宏观和行业数据等。面对信息流量的持续增长,掌握如何获取、查询和处理数据信息变得不可或缺。对于涉足量化交易的个体而言,对数据库操作的掌握更是基本技能。目前,MySQL、Postgresql、Mongodb、SQLite等开源数据库因其高使用量和受欢迎程度,位列2018-2019年DB-Engines排行榜前十。这几个数据库各有特点和适用场景。本文以Python操作Postgresql数据库为例,借助psycopg2和sqlalchemy实现与pandas dataframe的交互,一步步构建个人量化分析数据库。

首先,安装PostgreSQL。通过其官网下载适合操作系统的版本,按照默认设置完成安装。安装完成后,可以在安装目录中找到pgAdmin4,这是一个图形化工具,用于查看和管理PostgreSQL数据库,其最新版为Web应用程序。

接着,利用Python安装psycopg2和sqlalchemy库。psycopg2是连接PostgreSQL数据库的接口,sqlalchemy则适用于多种数据库,特别是与pandas dataframe的交互更为便捷。通过pip安装这两个库即可。

实践操作中,使用tushare获取股票行情数据并保存至本地PostgreSQL数据库。通过psycopg2和sqlalchemy接口,实现数据的存储和管理。由于数据量庞大,通常分阶段下载,比如先下载特定时间段的数据,后续不断更新。

构建数据查询和可视化函数,用于分析和展示股价变化。比如查询股价日涨幅超过9.5%或跌幅超过-9.5%的个股数据分布,结合选股策略进行数据查询和提取。此外,使用20日均线策略,开发数据查询和可视化函数,对选出的股票进行日K线、20日均线、成交量、买入和卖出信号的可视化分析。

数据库操作涉及众多内容,本文着重介绍使用Python与PostgreSQL数据库的交互方式,逐步搭建个人量化分析数据库。虽然文中使用的数据量仅为百万条左右,使用Excel的csv文件读写速度较快且直观,但随着数据量的增长,建立完善的量化分析系统时,数据库学习变得尤为重要。重要的是,文中所展示的选股方式和股票代码仅作为示例应用,不构成任何投资建议。

对于Python金融量化感兴趣的读者,可以关注Python金融量化领域,通过知识星球获取更多资源,包括量化投资视频资料、公众号文章源码、量化投资分析框架,与博主直接交流,结识圈内朋友。

阅读全文

与建立股票数据库相关的资料

热点内容
推荐股票和大盘不涉及盈利违法吗 浏览:847
哪些股票有价值可投资 浏览:210
影响股票价值的市场因素有哪些 浏览:396
st天润股票还可以吃吗 浏览:247
邮储银行股票是中国邮政银行吗 浏览:806
中兴通信股票走势图 浏览:364
筛选好的股票看什么数据 浏览:659
股票盈利3个点 浏览:535
高瓴资本有没有投资国瓷材料股票 浏览:630
股票上涨赚钱下跌赚股票 浏览:473
这次流感对股票有影响吗 浏览:589
政治因素对股票变化影响 浏览:103
五菱股票最新 浏览:804
选出当日涨停股票 浏览:418
2018股票科技新蓝筹 浏览:273
天阳科技股票有限公司 浏览:269
通达信股票精准指标 浏览:999
中信证券股票资金流量 浏览:424
美国软件股票有哪些龙头股 浏览:821
长期投资基金和股票哪个 浏览:86