问财量化选股策略逻辑
选股逻辑包括四个条件:元宇宙板块中的股票、昨日股价大于250日均线、竞价时涨跌幅买入大单、特大单共计买入量大于0.7千万的股票。根据这些条件筛选符合条件的股票,进行投资。
选股逻辑分析
该选股策略主要考虑以下四个条件进行选股:
- 元宇宙板块中的股票:选择热门板块中的个股。
- 昨日股价大于250日均线:判断个股目前的价格是否相对稳定且接近长期均线。
- 竞价时涨跌幅买入大单:根据当天竞价价格计算其涨跌幅,选取竞价时买入的大单,以此筛选涨势强劲的股票。
- 特大单共计买入量大于0.7千万的股票:选取当天特大单的买入量,大于等于0.7千万的股票。
综合以上条件,选择合适的个股进行投资。
有何风险?
- 该选股策略过于关注个股价格变化和当天的交易数据,可能会忽视企业的基本面因素,如业绩、估值等,容易出现“被套”的风险。
- 元宇宙板块属于新兴行业,选股风险较高,容易形成市场热点行为导致投资热度过高。
- 涨跌幅和买入量是动态变化的,数据波动幅度可能会对选股结果造成一定影响。
- 市场中大单和特大单的成交量并非一定反映机构投资意向,选取该类数据作为选股依据存在数据噪声的风险。
如何优化?
- 建立更为严密和稳健的选股体系,多关注企业的基本面因素,如业绩、估值等,加强技术分析方法的过程管控。
- 稳健和适度的仓位管理,避免持有股票过多而导致风险过度集中。
- 选股策略中的各个因素影响力度可以根据实际市场情况进行调整,如加大基本面因素的影响力度。
- 考虑研究更多的高质量、可信的指标,以降低噪声数据的影响,提高选股策略的精度和可靠性。
最终的选股逻辑
该选股策略选择元宇宙板块中,昨日股价大于250日均线,在竞价时涨跌幅买入大单,特大单共计买入量大于0.7千万的个股进行投资。
同花顺指标公式代码参考
元宇宙板块:GNBK("gnxq")
昨日收盘价大于250日均线:C>=MA(250)
竞价时涨跌幅:(OPEN - PRECLOSE)/PRECLOSE * 100
当天特大单的买入量:LARGE_VOL_T
Python代码参考
import pandas as pd
import tushare as ts
def stock_selector():
ts.set_token('your_token')
pro = ts.pro_api()
t = pro.trade_cal(start_date='20210101')
trade_dates = t[t['is_open'] == 1]['cal_date'].tolist()
data_selected = pd.DataFrame()
for trade_date in trade_dates:
print(trade_date)
data = pro.query(
'market_trade',
exchange='SSE',
date=trade_date
)
data = data.loc[(data['type'] == 'B') & (data['flag'] == 'B')]
big_buy = data.loc[data['change_rate'] > 0.05]
total_large_buy = big_buy['vol'].sum() + big_buy['large_vol'].sum()
stock_codes = data_selected['ts_code'].unique().tolist()
data_today = pd.DataFrame()
for code in stock_codes:
df = pro.query(
'daily',
ts_code=code,
trade_date=trade_date,
fields='close'
)
if len(df) != 1 or df['close'].values[0] < data_selected.loc[data_selected['ts_code'] == code, 'vwap'].values[0]:
continue
if data.loc[(data['ts_code'] == code) & (data['change_rate'] > 0.05),
['vol', 'large_vol']].sum().sum() >= 7000000:
data_today = data_today.append(data_selected.loc[data_selected['ts_code'] == code])
if len(data_today) == 0:
continue
data_selected = data_selected.merge(
data_today[['ts_code', 'vwap']],
on='ts_code',
suffixes=('', '_y')
)
data_selected = data_selected.loc[
(data_selected['close'] >= data_selected['ma250']) & (data_selected['close'] >= data_selected['vwap'])]
data_selected = data_selected.merge(
big_buy[['ts_code', 'vol', 'large_vol']].groupby('ts_code').sum().reset_index(),
on='ts_code',
how='left'
)
data_selected = data_selected.loc[data_selected['large_vol'].notnull() & (data_selected['large_vol'] >= 7000000)]
return data_selected[['ts_code', 'name', 'industry']]
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
