问财量化选股策略逻辑
选取振幅大于1、机构动向大于0、2021年表现优异的股票作为选股对象。
选股逻辑分析
该选股策略旨在选取2021年受机构资金青睐、波动较大的股票作为投资对象。相比之前的选股逻辑,增加了对2021年表现的要求。
有何风险?
该选股策略存在着股票基本面改变、前期高落后低、机构资金持续不断的撤退、市场情绪波动等风险,需要进行风险控制。
如何优化?
可以结合其他技术指标或者基本面指标,如PE、PB、ROE等。同时需要进行充分的研究和数据分析,并严格控制仓位和资金风险。
最终的选股逻辑
选取2021年涨幅排名前30%的股票中,振幅大于1、机构资金动向大于0的股票作为投资对象。
同花顺指标公式代码参考
// 筛选2021年涨幅排名前30%的股票
rank = RANK(C, "21")
rank_threshold = HHV(rank, 252 * 0.3)
yearly_rank_bool = rank >= rank_threshold
// 筛选振幅大于1的股票
amplitude = (HIGH - LOW) / OPEN
amplitude_bool = amplitude > 1
// 筛选机构动向大于0的股票
FUND_NET_AMOUNT = IF(NETFAMOUNT>0,NETFAMOUNT,0)
sum_fund_net_amount = SUM(FUND_NET_AMOUNT, 5)
fund_trend_bool = sum_fund_net_amount > 0
// 筛选符合条件的股票
result = yearly_rank_bool & amplitude_bool & fund_trend_bool
// 输出筛选结果
result
Python代码参考
import tushare as ts
# 筛选条件1:2021年涨幅排名前30%
yearly_data = ts.get_hist_data('000001', start='2021-01-01', end='2021-12-31')
rank = yearly_data['close'].rank(pct=True)
rank_threshold = rank.quantile(q=0.3)
yearly_rank_bool = rank >= rank_threshold
# 筛选条件2:振幅大于1
today_data = ts.get_today_all()
amplitude = (today_data['high'] - today_data['low']) / today_data['open']
amplitude_bool = amplitude > 1
# 筛选条件3:机构资金动向大于0
fund_data = ts.fund_holdings(2020, 3)
sum_fund_net_amount = fund_data.groupby('code')['net_amount'].sum()
fund_trend_bool = sum_fund_net_amount > 0
# 筛选符合条件的股票
result = yearly_rank_bool & amplitude_bool & fund_trend_bool
# 输出筛选结果
final_result = today_data.loc[result].sort_values(by=["turnoverratio"], ascending=False)
print(final_result)
注:以上为示例代码,请根据实际情况进行调整。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
