问财量化选股策略逻辑
选股逻辑包括三个条件:元宇宙板块中的股票、昨日股价大于250日均线、前天的MACD小于0。根据这些条件筛选符合条件的股票,进行投资。
选股逻辑分析
该选股策略主要考虑以下三个条件进行选股:
- 元宇宙板块中的股票:选择热门板块中的个股;
- 昨日股价大于250日均线:判断个股目前的价格是否相对稳定且接近长期均线;
- 前天的MACD小于0:判断个股之前的趋势是否偏空,避免市场当前热度掩盖了个股的实际风险。
综合以上条件,选择合适的个股进行投资。
有何风险?
- 该选股策略主要关注个股的长期趋势,可能忽视短期涨幅;
- 元宇宙板块属于新兴行业,选择的个股存在较大的风险;
- MACD指标具有滞后性,可能忽视市场热度的变化。
如何优化?
- 加大对市场热度的实时监测和分析,避免滞后选择的风险;
- 实时关注整个板块的变化趋势,优化选股策略并及时调整;
- 在选股时加入基本面指标的分析,综合判断个股的长期价值。
最终的选股逻辑
该选股策略选择元宇宙板块中,符合昨日股价大于250日均线且前天的MACD小于0的个股进行投资。
同花顺指标公式代码参考
元宇宙板块:GNBK("gnxq")
昨日收盘价大于250日均线:C>=MA(250)
前天MACD小于0:REF(MACD(),2)<0
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_all = pd.DataFrame()
for trade_date in trade_dates:
data = pro.query(
'stock_basic',
exchange='',
is_hs='H'
)
data = data[data['name'].str.contains('元宇宙')]
codes = data['ts_code'].tolist()
data_macd = pro.query('daily_basic', ts_code=','.join(codes), start_date='20210101', end_date=trade_date, fields='ts_code,trade_date,macd')
data_macd['is_negative_macd'] = data_macd['macd'] < 0
data_macd = data_macd.loc[data_macd['is_negative_macd'] == True, ['ts_code', 'trade_date']]
selected_tics = data_macd['ts_code'].tolist()
data_today = pro.daily(ts_code=','.join(selected_tics), trade_date=trade_date)
data_today = data_today.loc[data_today['trade_date'] == trade_date, ['ts_code', 'close', 'pre_close']]
data_today['is_zt'] = (data_today['close'] / data_today['pre_close'] - 1) >= 0.099
data_today = data_today.loc[data_today['is_zt'] == False, ['ts_code', 'close']]
data_today.rename(columns={'close': 'current_price'}, inplace=True)
data_selected = data_today.loc[data_today['current_price'] >= MA(250), :]
data_all = pd.concat([data_all, data_selected[['ts_code', 'name', 'industry']]])
return data_all
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


