嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 2 元微信扫码支付:2 元
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
通过baostock.com网站的股票数据获取方法
=====baostock.com==股票数据获取=====
import baostock as bs
import pandas as pd
#### 登陆系统 ####
lg = bs.login(user_id="anonymous", password="123456")
#### 获取历史K线数据 ####
# 详细指标参数,参见“历史行情指标参数”章节
rs = bs.query_history_k_data("sz.000001",
"date,code,open,high,low,close,preclose,volume,amount,adjustflag,turn,tradestatus,pctChg,peTTM,pbMRQ,psTTM,pcfNcfTTM,isST",
start_date='2000-06-01', end_date='2021-7-30',
frequency="d", adjustflag="3") # frequency="d"取日k线,adjustflag="3"默认不复权
print('query_history_k_data respond error_code:' rs.error_code)
print('query_history_k_data respond error_msg:' rs.error_msg)
#### 打印结果集 ####
data_list = []
while (rs.error_code == '0') & rs.next():
# 获取一条记录,将记录合并在一起
data_list.append(rs.get_row_data())
result = pd.DataFrame(data_list, columns=rs.fields)
#### 结果集输出到csv文件 ####
# result.to_csv("D:/history_k_data.csv", encoding="gbk", index=False)
print(result)
===============================、
import pandas as pd
import numpy as np
from pandas_datareader import data, wb
import matplotlib.pyplot as plt
# 导入数据
df=pd.read_csv('E:\EURUSD1440.csv',parse_dates=True)
# 设置列名
df.columns = ['date', 'time', 'open', 'high', 'low', 'close', 'volumn']
# 把 date 和 time 合并起来作为 index
df['datetime'] = df['date'] ' ' df['time']
df.datetime = pd.to_datetime(df.datetime)
df = df.set_index('datetime')
startDate = '2021-06-01'
endDate = '2021-07-30'
df = df.loc[startDate: endDate]
sp500=df
sp500['42d'] = np.round(sp500['close'].rolling(window=10, center=False).mean(), 2)
sp500['252d'] = np.round(sp500['close'].rolling(window=20, center=False).mean(), 2)
sp500[['close', '42d', '252d']].plot(grid=True, figsize=(8,5))
sp500['42-252'] = sp500['42d'] - sp500['252d']
# 生成投资体制 Regime
SD = 50
sp500['Regime'] = np.where(sp500['42-252'] > SD, 1, 0)
sp500['Regime'] = np.where(sp500['42-252'] < -SD, -1, sp500['Regime'])
sp500['Regime'].plot(lw=1.5)
plt.ylim([-1.1, 1.1])
sp500['Market'] = np.log(sp500['close']/sp500['close'].shift(1))
sp500['Stragety'] = sp500['Regime'].shift(1) * sp500['Market']
sp500[['Market', 'Stragety']].cumsum().apply(np.exp).plot(grid=True, figsize=(8, 5))
plt.show()