问财量化选股策略逻辑
选股逻辑为:振幅大于1、流通市值大于100亿元、收益大于0的股票。该选股策略综合考虑了股票波动性、市值规模以及股票收益情况,以期挑选出较为优质的个股。
选股逻辑分析
该选股逻辑的选股条件相对简单明了,选出振幅较大、流通市值较大,且具有一定收益表现的个股,能够筛出当前市场中表现较好的个股。
有何风险?
该选股逻辑存在以下风险:一是选股条件过于简单,筛选出的个股不够精细,有可能漏选一些真正优秀的企业;二是忽略了基本面因素的作用,如公司经营业绩、盈利情况等,选股精度不够高,并容易受市场短期波动的影响;三是收益作为单一的选股条件,对于长线投资者来说不够全面,容易带来投资的盲目性。
如何优化?
为优化该选股逻辑,可以从以下方面进行优化:一是引入基本面指标,如市盈率、每股收益等,加强对公司盈利情况的评估;二是引入技术指标,如MACD、RSI等,对股票的趋势、强度等进行评估;三是考虑引入量化数据,如资金流向、机构交易等,更全面、准确地评估股票的波动性和风险。综上,优化后的选股策略能够更好地发掘优质个股,降低投资风险。
最终的选股逻辑
选股逻辑为:振幅大于1、流通市值大于100亿元、收益大于0的股票。该选股策略综合考虑了股票波动性、市值规模以及股票收益情况,以期挑选出较为优质的个股。
同花顺指标公式代码参考
CIRC_MARKET_CAP>=100 AND Ref(HIGH/LOW, 1)>1 AND Ref(CLOSE/OPEN, 1)>1
其中,CIRC_MARKET_CAP表示流通市值,Ref(HIGH/LOW, 1)表示昨日的振幅,Ref(CLOSE/OPEN, 1)表示昨日的收益率。
Python代码参考
import tushare as ts
def get_selected_stocks():
pro = ts.pro_api()
selected_stocks = []
for ts_code in pro.stock_basic(exchange='', list_status='L', fields='ts_code, circ_mv').ts_code:
stock_data = pro.query('stock_basic', ts_code=ts_code)
if stock_data.iloc[0]['circulating_market_cap'] < 100:
continue
# 判断振幅是否符合条件
daily_data = pro.daily(ts_code=ts_code, start_date='', end_date='', fields='trade_date, open, high, low, close, volume, pct_chg')
if len(daily_data) == 0:
continue
amplitude = max(daily_data['close'] / daily_data['pre_close'] - 1, daily_data['pre_close'] / daily_data['close'] - 1)
if amplitude <= 1:
continue
# 判断收益是否符合条件
if daily_data.iloc[-2]['close'] <= daily_data.iloc[-2]['open']:
continue
selected_stocks.append(ts_code)
return selected_stocks
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
