问财量化选股策略逻辑
选股逻辑包括四个条件:选择元宇宙行业的股票、机构动向大于0、量比大于1.5、量比小于6。根据这些条件进行选股,进行投资。
选股逻辑分析
该选股策略主要围绕以下四个条件进行选股:
- 选取元宇宙行业中的股票,因为元宇宙领域具有较高的成长性和隐含收益;
- 机构动向具有预测性和引导作用,选择机构买入股票可以获得较好的资本回报;
- 选择量比大于1.5、量比小于6的股票,选取成交量相对较大的热门股票;
- 满足以上条件的股票进行投资。
综合以上条件,选择符合条件的个股进行投资。
有何风险?
- 行业投资的风险因素较大,选股策略难以捕捉行业整体动向;
- 只考虑机构动向和量比可能会忽略一些重要指标;
- 热门股票往往比较冷门或中小市值股票风险更高;
- 如果市场整体大跌,该策略可能无法有效保护投资本金。
如何优化?
- 加入行业板块轮动因素,进行相对强势的行业和个股选择;
- 综合考虑不同时间段的股票表现情况,并结合基本面指标等多个维度进行分析;
- 加入风险控制指标,有效保护投资本金。
最终的选股逻辑
该选股策略选择元宇宙行业中,机构动向大于0,量比大于1.5、量比小于6的股票进行投资。
同花顺指标公式代码参考
元宇宙行业:GNBK("gnxq");
机构动向:DRS_M("zlltgtzb");
量比大于1.5:VOL() > REF(MA(VOL(), 5), 1) * 1.5;
量比小于6:VOL() < REF(MA(VOL(), 5), 1) * 6;
选股公式:GNBK("gnxq") AND DRS_M("zlltgtzb") AND VOL() > REF(MA(VOL(), 5), 1) * 1.5 AND VOL() < REF(MA(VOL(), 5), 1) * 6;
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')
data1 = data1[(data1['name'].str.contains('元宇宙')) & (data1['industry'] != '银行')]
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 = pro.query('daily_basic', trade_date='20220307',
fields='ts_code, pct_chg',
filters='pct_chg>0')
data4 = pro.query('daily_basic', start_date='20220307', end_date='20220307', fields='ts_code, vol')
vol_ma = pro.query('mkt_equd', ts_code='000001.SH', start_date='20220307', end_date='20220307', fields='vol')
vol_ma = vol_ma.values[0][0] / 5
data4 = data4[(data4['vol'] > vol_ma * 1.5) & (data4['vol'] < vol_ma * 6)]
data5 = pro.query('daily_basic', trade_date='20220307', fields='ts_code, float_share')
data5_rank = data5.groupby(by='ts_code').sum()
data5_rank = data5_rank.sort_values(by='float_share', ascending=False)
data5_rank = data5_rank.iloc[0:100, :]
data5_rank['rank'] = range(1, 101)
data5_rank = data5_rank.loc[:, ['rank']]
data6 = pro.query('moneyflow_hsgt', start_date='20220308', end_date='20220308',
fields='ts_code,trade_date,net_amount_mainland')
data6 = data6.groupby(by='ts_code').sum()
data6 = data6[data6['net_amount_mainland'] > 0]
data7 = pd.concat([data1.loc[:, 'ts_code'], data2, data3.loc[:, 'pct_chg'], data4.loc[:, 'vol'], \
data5_rank.loc[:, 'rank']], axis=1)
data7.columns = ['ts_code', 'ddjlr_rank', 'pct_chg', 'vol', 'float_share_rank']
data7 = pd.merge(data7, data6, on='ts_code')
data7 = data7.sort_values(by='ddjlr_rank', ascending=True)
data7 = data7.iloc[0:50, :]
return data7
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


