import numpy as np
import pandas as pd
import pandas.io.sql as sql
import cx_Oracle as co
# <editor-fold desc="数据提取">
# 取用数据
dsn = co.makedsn('220.248.233.27', 1521, 'zywinddb')
conn = co.connect('wind', 'w1i2n3d4a5', dsn)
c = conn.cursor()
s_a = (
"""select trade_dt,s_info_windcode,s_dq_adjclose
from ashareeodprices where trade_dt=20181228 order by s_info_windcode""")
s_b = (
"""select trade_dt,s_info_windcode,s_dq_adjclose
from ashareeodprices where trade_dt=20190628 order by s_info_windcode""")
data_a = sql.read_sql(s_a, conn)
data_b = sql.read_sql(s_b, conn)
c.close()
conn.close()
# </editor-fold>
pl = []
for i in range(len(data_b)):
try:
loc = data_a[data_a.S_INFO_WINDCODE ==
data_b.S_INFO_WINDCODE[i]].index.tolist()[-1]
pl.append(data_b.S_DQ_ADJCLOSE[i] / data_a.S_DQ_ADJCLOSE[loc] - 1)
except BaseException:
pass
continue
pl = np.array(pl)
result = pd.DataFrame([{'项目': '内容',
'平均数': np.mean(pl),
'中位数': np.median(pl),
'25%分位点': np.percentile(pl,
75),
'股票数量': len(pl),
'正收益数量': sum(i > 0 for i in pl)}],
columns=['项目',
'平均数',
'中位数',
'25%分位点',
'股票数量',
'正收益数量'])
统计市场总体表现
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 企业如果在定位的市场中运作得不理想,其原因有两个:可能是定位超前了,也可能是定位滞后了。因此,我们要具体问题具体分...
- 前言 公司业务需要,react、vue、angular都有接触[\无奈脸]。虽然说可以拓展知识广度,但是在深度上很...