问财量化选股策略逻辑
该选股策略包括三个条件:元宇宙、昨日股价大于250日均线、收盘价在布林带(upper值, mid值)之间。通过筛选出符合条件的股票进行投资。
选股逻辑分析
该选股策略主要通过以下三个条件进行选股:
- 元宇宙:选择热门板块中的个股。
- 昨日股价大于250日均线:判断个股目前的价格是否较稳定且接近长期均线。
- 收盘价在布林带(upper值, mid值)之间:判断个股当前的价格波动是否较小,为后续投资提供参考依据。
综合以上三个条件,选择符合要求的个股进行投资。
有何风险?
- 过度依赖历史价格数据,未能及时反映股票的最新变化,对投资收益造成影响。
- 布林带判断方式较为单一,未考虑其他技术指标的综合运用,对投资决策带来不确定性。
如何优化?
- 不仅考虑股票当前的价格波动,还应关注其他技术指标的变化趋势,以更加全面、准确地评估股票风险。
- 增加其他财务和业绩指标的考核,以确保选出的股票价值稳定,风险较小。
- 科学制定投资策略和风控方案,及时调整和优化。
最终的选股逻辑
该选股策略选择元宇宙板块中,股票均价站在250日均线之上,且当天收盘价在布林带(upper值, mid值)之间的股票进行投资。
同花顺指标公式代码参考
元宇宙:GNBK("gnxq")
昨日股价大于250日均线:C >= MA(250)
收盘价在布林带(upper值, mid值)之间:REF(CLOSE,BAR) < BOLL_UP(BAR,20,2) AND REF(CLOSE,BAR) > BOLL_MB(BAR,20,2)
Python代码参考
import pandas as pd
import tushare as ts
def stock_selector():
ts.set_token('your_token')
pro = ts.pro_api()
# 获取所有元宇宙板块中的个股
gnxq = pro.index_basic(
fields='category',
identifying_code='9650',
market='SSE'
)
gnxq_stocks = gnxq.loc[gnxq['category'] == 'GN023']
data_selected = pd.DataFrame()
for code in gnxq_stocks['con_code']:
df = pro.query('daily', ts_code=code, fields='trade_date, close')
if len(df) >= 250 and df.iloc[-1]['close'] >= df['close'].rolling(250).mean()[249] and \
df.iloc[-1]['close'] < df.tail(20)[['close']].apply(lambda x: ts.Boll(x, 20)[0][0], axis=1).iloc[-1] and \
df.iloc[-1]['close'] > df.tail(20)[['close']].apply(lambda x: ts.Boll(x, 20)[1][0], axis=1).iloc[-1]:
_basic = pro.query(
'stock_basic',
ts_code=code,
fields=['name', 'industry', 'exchange', 'list_date']
)
if ('ST' not in _basic['name'].values[0]) and (_basic['exchange'].values[0] != 'SZSE') and \
(_basic['list_date'].values[0] <= '20220101'):
data_selected = data_selected.append(
df.tail(1).assign(name=_basic['name'].values[0], industry=_basic['industry'].values[0])
)
data_selected = data_selected.sort_values(by=['close'], ascending=False)
return data_selected[['name', 'industry']]
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


