问财量化选股策略逻辑
选股逻辑为振幅大于1,100亿市值以内的无亏损企业,周K线上穿30周线。
选股逻辑分析
- 振幅大于1可以筛选出短期内波动较大的股票,有较大的盈利机会。
- 100亿市值以内可筛选出市值较小的股票,可能具有较好的成长潜力。
- 无亏损企业可以筛选质量较高的企业。
- 周K线上穿30周线可以体现当前股票整体走势向上。
有何风险?
- 过于依赖技术指标,容易忽略基本面因素的影响。
- 筛选条件较为宽松,可能会选出质量不过关的股票。
- 基于周K线数据,难以及时捕捉短期内的价格波动。
如何优化?
- 结合定量和定性指标进行选股,如同时考虑企业的财务数据和产业背景等。
- 设置适当的排除条件,如排除连续亏损的企业等。
- 加入其他技术指标进行筛选,如成交量等指标,综合考虑。
最终的选股逻辑
选股逻辑为振幅大于1,100亿市值以内的无亏损企业,周K线上穿30周线。同时结合基本面和其他技术指标,以筛选具有较好成长潜力且风险可控的个股。
同花顺指标公式代码参考
(HIGH-MA(HIGH,30))/MA(HIGH,30)>=0
AND ABS(HIGH-REF(HIGH,1))/REF(HIGH,1)>=0.01
AND MktValue<=100 AND MktValue>0
AND IF(net_profit>0, 1, 0)
AND (IF(BELONG>50,1,0))
AND (IF(INDUSTRY LIKE '%主板%',1,0))
python代码参考
import akshare as ak
def select():
data = ak.stock_zh_a_spot()
data = data.loc[(data['market_capitalization']>0)&(data['market_capitalization']<=100)]
data = data.loc[data['current_price']!=data['last_close_price']]
data = data.loc[data['net_profit'].astype(float)>0]
data = data.loc[(data['high'].astype(float)-data['high'].rolling(30).mean().shift(1).fillna(method='bfill').astype(float))/data['high'].rolling(30).mean().fillna(method='bfill').astype(float)>=0]
data = data.loc[(data['negotiable_mv'].astype(float)>=50)]
data = data.loc[(data['industry'].str.contains('主板')==True)]
return data
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
