问财量化选股策略逻辑
选股逻辑包括四个条件:选择元宇宙行业的股票、机构动向大于0、机器人概念且流通市值小于100亿。根据这些条件进行选股,进行投资。
选股逻辑分析
该选股策略主要围绕以下四个条件进行选股:
- 选取元宇宙行业中的股票,因为元宇宙领域具有较高的成长性和隐含收益;
- 机构动向具有预测性和引导作用,选择机构买入股票可以获得较好的资本回报;
- 特别关注机器人概念,因为机器人概念受到资本市场渴望利好的关注;
- 选取流通市值小于100亿的企业,因为小市值企业有着比较明显的成长性和隐含价值。
综合以上条件,选择符合条件的个股进行投资。
有何风险?
- 对企业的判断可能有误,会导致选股错误;
- 如果市场整体大跌,该策略可能无法有效保护投资本金;
- 具有较强利好的机器人概念中,可能存在部分企业的估值已经被市场抬高。
如何优化?
- 加入其他技术指标或基本面指标进行筛选,多角度综合分析,例如PE、PEG等;
- 可以加入其他排除条件,例如排除处于重大诉讼或被监管处罚的企业;
- 优化选股条件,例如可以选取市场竞争力较强、管理层稳定的企业。
最终的选股逻辑
该选股策略选择元宇宙行业中,机构动向大于0,机器人概念且流通市值小于100亿的企业进行投资。
同花顺指标公式代码参考
元宇宙行情:GNBK("gnxq");
机构动向:DRS_M("zlltgtzb");
机器人概念:BKX("f16");
流通市值小于100亿:CIRC_MV < 1e10
选股公式:GNBK("gnxq") AND DRS_M("zlltgtzb") AND BKX("f16") AND (CIRC_MV < 1e10)
Python代码参考
import pandas as pd
import tushare as ts
def stock_selector():
ts.set_token('your_token')
pro = ts.pro_api()
data1 = pro.query('stock_basic', exchange='', list_status='L', fields='ts_code,name,industry,circ_mv')
data1 = data1[(data1['name'].str.contains('元宇宙')) & (data1['industry'] != '银行') & (data1['circ_mv'] < 1e10)]
data2 = pro.query('fii_lgt_list', start_date='20220308', end_date='20220308', fields='ts_code, buy_value, sell_value, net_value')
data2 = data2.groupby(by='ts_code').sum()
data2['net'] = data2['net_value'] / 1e8
data2 = data2.sort_values(by='net', ascending=False)
data2 = data2.iloc[0:100, :]
data2['rank'] = range(1, 101)
data2 = data2.loc[:, ['rank']]
data3 = pd.concat([data1, data2], axis=1)
data3 = data3.dropna()
data3.reset_index(drop=True, inplace=True)
data4 = pro.query('investor', trade_date='20220308', fields='ts_code, trade_type, buy_value, sale_value, net_value')
data5 = pd.pivot_table(data4, values='net_value', index='ts_code', columns='trade_type')
data5['DRS_M'] = (data5.iloc[:, 0] - data5.iloc[:, 1]) / 1e8
data5 = data5.loc[:, ['DRS_M']]
data6 = pd.concat([data3, data5], axis=1)
data6.dropna(inplace=True)
data6.reset_index(drop=True, inplace=True)
data7 = pro.query('concept', fields='ts_code, concept_name')
data7 = data7.set_index('ts_code')
data7['bkx'] = data7['concept_name'].apply(lambda x: 'f16' in x)
data7 = data7.iloc[:, [1]]
data8 = pd.concat([data6, data7], axis=1)
data8 = data8[data8['bkx']]
data8.reset_index(drop=True, inplace=True)
return data8
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


