对涨停板进行了研究,提供数据分析那个板概率比较高
涨停板市场情绪20231207

可以看历史的比如20231206

龙头进阶

可以看历史的比如昨天,前天


涨停板数合并分析源代码,代码来自网站框架
<pre class="public-DraftStyleDefault-pre" data-offset-key="9c2tf-0-0"><pre class="Editable-styled" data-block="true" data-editor="h4qc" data-offset-key="9c2tf-0-0"><div data-offset-key="9c2tf-0-0" class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr"><span data-offset-key="9c2tf-0-0"><span data-text="true">def get_ztbjj**aysis_models(self):
'''
涨停板进级分析
'''
trader_time_list=self.stock_data.get_trader_date_list()
import numpy as np
def select_data(x):
x=str(x)
if x=='首板':
return 1
else:
try:
return int(x.split('天')[-1].split('板')[0])
except:
return 0
path_list=os.listdir(path='{}\当日涨停'.format(self.path))
trader_time_list=trader_time_list[-len(path_list):]
data_list=[]
now_date=trader_time_list[-1]
date2=''.join(str(now_date).split('-'))
for date in trader_time_list[2:]:
select_list=[]
date1=date
date=''.join(str(date).split('-'))
pre_date=trader_time_list[trader_time_list.index(date1)-1]
pre_date=''.join((pre_date).split('-'))
pre_df=pd.read_excel(r'{}\当日涨停{}当日涨停.xlsx'.format(self.path,pre_date))
pre_df['几板']=pre_df['几天几板'].apply(select_data)
now_df=pd.read_excel(r'{}\当日涨停{}当日涨停.xlsx'.format(self.path,date))
now_df['几板']=now_df['几天几板'].apply(select_data)
限制的最高板
now_high=max(now_df['几板'].tolist())
#昨天的最高板
pre_high=max(pre_df['几板'].tolist())
for i in range(1,12):
df1=now_df[now_df['几板']==i]
select_list.append(df1.shape[0])
data_list.append(select_list)
data=pd.DataFrame(data_list)
columns_list=[]
for i in data.columns.to_list():
columns_list.append('{}板数量'.format(str(i+1)))
data.columns=columns_list
for i in data.columns.tolist()[:-2]:
data['{}板进阶比'.format(i.split('板')[0])]=round((data['{}板数量'.format(str(int(i.split('板')[0])+1))]/data['{}'.format(str(i))] .shift(1))*100,2)
data['日期']=trader_time_list[-data.shape[0]:]
data=data.fillna(0)
data=data.replace(np.inf,0)
data.to_excel(r'{}\涨停板进阶统计\{}涨停板进阶统计.xlsx'.format(self.path,date2))
return data
</span></span></div></pre></pre>
合并出来数据

网页展示的分析结果


分析的展示结果读取数据
<pre class="public-DraftStyleDefault-pre" data-offset-key="ivdr-0-0"><pre class="Editable-styled" data-block="true" data-editor="h4qc" data-offset-key="ivdr-0-0"><div data-offset-key="ivdr-0-0" class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr"><span data-offset-key="ivdr-0-0"><span data-text="true">import pandas as pd
import matplotlib.pyplot as plt
import matplotlib.pyplot as plt
支持中文
plt.rcParams['font.sans-serif'] = ['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号
df=pd.readexcel(r'C:\Users\Admin\Desktop\小果量化网页\apps\maker**ysis\涨停板进阶统计\20231207涨停板进阶统计.xlsx')
del df['Unnamed: 0']
df</span></span></div></pre></pre>

<pre class="public-DraftStyleDefault-pre" data-offset-key="fmmct-0-0"><pre class="Editable-styled" data-block="true" data-editor="h4qc" data-offset-key="fmmct-0-0"><div data-offset-key="fmmct-0-0" class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr"><span data-offset-key="fmmct-0-0"><span data-text="true">#数量
columns_amount=['日期']
for i in range(1,10):
columns_amount.append('{}板数量'.format(i))
df1=df[columns_amount]
df1.plot(x='日期',figsize=(20,8))
plt.show()</span></span></div></pre></pre>

<pre class="public-DraftStyleDefault-pre" data-offset-key="bm6ho-0-0"><pre class="Editable-styled" data-block="true" data-editor="h4qc" data-offset-key="bm6ho-0-0"><div data-offset-key="bm6ho-0-0" class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr"><span data-offset-key="bm6ho-0-0"><span data-text="true">#进板
columns_amount=['日期']
for i in range(1,10):
columns_amount.append('{}板进阶比'.format(i))
df1=df[columns_amount]
df1.plot(x='日期',figsize=(20,8))
plt.show()</span></span></div></pre></pre>

<pre class="public-DraftStyleDefault-pre" data-offset-key="1ar2l-0-0"><pre class="Editable-styled" data-block="true" data-editor="h4qc" data-offset-key="1ar2l-0-0"><div data-offset-key="1ar2l-0-0" class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr"><span data-offset-key="1ar2l-0-0"><span data-text="true">count=df1[columns_amount[1:]]
count
count_des=count.describe()
count_des
count_t=count_des.T
count_t</span></span></div></pre></pre>

<pre class="public-DraftStyleDefault-pre" data-offset-key="egq3e-0-0"><pre class="Editable-styled" data-block="true" data-editor="h4qc" data-offset-key="egq3e-0-0"><div data-offset-key="egq3e-0-0" class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr"><span data-offset-key="egq3e-0-0"><span data-text="true">fig=plt.figure(figsize=(16,8))
plt.bar(count_t.index,count_t['mean'])
plt.show()</span></span></div></pre></pre>

我们发现2进3,3进4概率比较高
源代码+交易模型领取、QMT开通、策略分享、问题答疑,评论区留言或私信。
<pre class="public-DraftStyleDefault-pre" data-offset-key="8965c-0-0"><pre class="Editable-styled" data-block="true" data-editor="h4qc" data-offset-key="8965c-0-0"><div data-offset-key="8965c-0-0" class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr"><span data-offset-key="8965c-0-0"><span data-text="true">#把等于0的去掉
columns=count.columns.to_list()
data_list=[]
for i in columns:
df2=count[count[i]>0]
mean=df2[i].mean()
print(mean)
data_list.append(mean)
df3=pd.DataFrame()
df3['名称']=columns
df3['平均分']=data_list
fig=plt.figure(figsize=(16,8))
plt.bar(df3['名称'],df3['平均分'])
plt.show()</span></span></div></pre></pre>
