问财量化选股策略逻辑
选股逻辑:选择RSI小于65的股票,企业性质优秀,30日平均线向上的股票作为选择范围。
选股逻辑分析
该选股策略结合了技术指标和企业基本面数据进行选股。选股条件为RSI小于65、企业性质优秀以及30日平均线向上,通过技术指标和基本面数据的综合筛选,可以筛选出低估值的且具有增长潜力的股票,可以有效降低选股波动性。
有何风险?
该选股策略可能忽略市场整体风险指标,只是单一的关注技术指标和企业基本面数据。当市场整体风险较高时,可能会忽略股票的整体风险性,导致选股偏差。
如何优化?
可以进一步加入EPS、负债率等基本面数据进行筛选,同时,结合主力资金等资金流向指标对股票进行筛选,避免市场流动性不足导致股票表现不稳定的风险。同时,可以考虑加入更多的技术指标进行筛选,如MACD、均线等辅助指标,提高选股的有效性。
最终的选股逻辑
选股逻辑:RSI小于65,企业性质优秀,30日平均线向上的股票作为选择范围。
同花顺指标公式代码参考
- RSI小于65:RSI(CLOSE,14)<65
- 企业性质:需要根据具体情况进行筛选。
- 30日平均线向上:MA(CLOSE,30)>REF(MA(CLOSE,30),1)
python代码参考
通过聚宽等股票API获取数据,代码示例:
import jqdatasdk as jq
jq.auth('username', 'password') # 连接凭证
# 定义股票筛选条件
cond1 = jq.query(jq.valuation).filter(
jq.valuation.code.like('*SH%'), # 上交所股票
jq.valuation.code.not_like('*ST%'), # 过滤掉ST股票
jq.finance.STK_EXCHANGE == 'SSE', # 所属交易所为沪交所
jq.RSI(CLOSE, 14) < 65, # RSI小于65
)
cond2 = jq.query(jq.finance.STK_LISTED_INFO).filter(
jq.finance.STK_LISTED_INFO.exchange == 'SSE', # 上交所上市
)
cond3 = MA(CLOSE, 30) > REF(MA(CLOSE, 30), 1) # 30日平均线向上
# 筛选出有交易数据的股票
q1 = jq.query(
jq.valuation, # valuation 表格
jq.balance_sheet.long_term_liability, # 长期负债
jq.balance_sheet.total_assets, # 总资产
jq.finance.STK_EXCHANGE, # 所属交易所
jq.finance.STK_JC.close, # 收盘价
jq.MA(jq.finance.STK_JC.close, 30) # 30日平均线
)
# 筛选选股条件
selected_stocks = jq.query(
q1, # 交易数据
jq.valuation.code.in_(
cond1.join(
cond2,
on=jq.valuation.code==jq.finance.STK_LISTED_INFO.code
).join(
cond3,
on=jq.finance.STK_XR_XD_PRICE.code==jq.valuation.code
).order_by(
-jq.valuation.market_cap,
).limit(2000).code.values.tolist()
),
)
# 策略选股,仅选取前30条股票(按市值排序)
selected_stocks = sorted(selected_stocks, key=lambda x: x.valuation.market_cap)[-30:]
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


