原帖:
這一節 我們學習如何把得到的資料寫入資料庫。
雖然也可以寫入excel或者json,不過考慮到後面用的的排序和其他python指令碼的呼叫,最後選擇了輕量級的資料庫sqliite作為首選。
# -*-coding=utf-8-*-
#資料庫的操作
import sqlite3, time, datetime
__author__ = 'rocchen'
class sqlitedb():
def __init__(self,dbtable):
'''self.today = time.strftime("%y-%m-%d")
self.dbname = self.today + '.db'
self.conn = sqlite3.connect(self.dbname)
'''today = time.strftime("%y-%m-%d")
dbname = today + '.db'
self.conn = sqlite3.connect(dbname)
self.dbtable=dbtable
create_tb = "create table %s (date varchar(10),id varchar(6), name varchar(30), p_change real,turnover real);" %self.dbtable
self.conn.execute(create_tb)
self.conn.commit()
def store_break_high(self,price_high_data):
#data 是創新高的**資訊 dataframe
#print today
#create_tb = 'create table stock (date text,id text primary key, p_change real,turnover real);'
#conn.commit()
#print "(%s,%s,%f,%f)" %(price_high_data[0], price_high_data[1], price_high_data[2], price_high_data[3])
insert_data_cmd = "insert into %s(date,id,name,p_change,turnover) values(\"%s\",\"%s\",\"%s\",%f,%f);" %(self.dbtable,price_high_data[0], price_high_data[1], price_high_data[2], price_high_data[3],price_high_data[4])
self.conn.execute(insert_data_cmd)
#self.conn.execute('insert into stock(date,id,name,p_change,turnover) values(?,?,?,?,?)',(price_high_data[0], price_high_data[1], price_high_data[2], price_high_data[3],price_high_data[4]))
self.conn.commit()
def close(self):
self.conn.close()
上面建立的表名是 以日期為命名的(前面的下劃線是因為資料庫的命名規則不能以數字為首)
Tushare金融大資料入門
tushare金融大資料社群,是乙個免費提供各類金融資料和區塊鏈資料的平台 旨在助力智慧型投資與創新型投資。資料千萬條,積分第一條 目前,提供的資料報含 債券 外匯 行業大資料,以及數字貨幣 等區塊鏈資料的全資料品類的金融大資料平台,這些資料在使用者積分滿足的情況下,統統都免費。因為,積分極度容易獲...
python金融工程 tushare資料入庫
1 日線 獲取,並展示 import tushare as ts 連線 tushare,獲取 資料 2.引用pandas.to sql入庫 以下是pandas裡的to sql事務 實戰如下 目標 將1中的 資料插入到資料庫 engine create engine mysql pymysql tus...
通過tushare獲取k線資料
tushare中get k date介面主要目的是獲取 資料,該介面融合了get hist data和get h data兩個介面的功能,即能方便獲取日周月的低頻資料,也可以獲取5 15 30和60分鐘相對高頻的資料,同時,上市以來的前後復權資料也能在一行 中輕鬆獲得。介面原型及引數 def get...