问财量化选股策略逻辑
选股逻辑为:振幅大于1、9点25分涨幅小于6%、周线MA5金叉MA10。该选股策略旨在寻找具有成长性、同时具有良好的技术面指标和投资价值的个股,可用于中期操作。
选股逻辑分析
该选股逻辑主要基于技术面指标和长期趋势走势,选出振幅较大、但具有良好的成长性和长期投资价值的个股。其中,振幅可以反映个股的波动性和活跃度,周线MA5和MA10的金叉可以体现股票长期趋势的变化,同时9点25分的涨幅可以反映股票短期内的走势。
有何风险?
该选股逻辑可能存在选出具有一定风险的股票,同时忽略了一些其他的股票指标和基本面信息等风险。此外,该选股策略的选股周期较长,可能会遇到公司业绩等变化或市场大幅波动等风险。
如何优化?
在选股逻辑中,可以引入其他技术面的指标,如底部MACD和相对强弱指标等,结合股票的基本面信息以及市场的整体走势等因素,来筛选具有良好的成长性、高回报性、高稳健性的个股。同时,选股周期也可以适当缩短,减少行情波动对股票投资带来的风险。
最终的选股逻辑
选股逻辑为:振幅大于1、9点25分涨幅小于6%、周线MA5金叉MA10,同时符合其他技术面指标和基本面信息,注重股票长期趋势变化和短期走势。选股周期适中,旨在筛选具有成长性、良好技术面指标和投资价值的个股。
同花顺指标公式代码参考
FZ_RANGE > 1 AND LAST/LAST[1]-1 <= 0.06 AND MA(CLOSE, 5) > MA(CLOSE, 10) AND REF(MA(CLOSE, 5), 1) <= REF(MA(CLOSE, 10), 1)
其中,FZ_RANGE
表示股票振幅,LAST
表示当日的收盘价。如果符合筛选条件,则将该股票加入选股池。
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,industry').values.tolist():
# 振幅大于1
k_data = pro.daily(ts_code=ts_code[0], start_date='20210106', end_date='', fields='ts_code,trade_date,high,low')
highest_price = k_data['high'][0]
lowest_price = k_data['low'][0]
for idx, k in k_data.iterrows():
if idx > 2:
break
if k['high'] >= highest_price:
highest_price = k['high']
if k['low'] <= lowest_price:
lowest_price = k['low']
if highest_price / lowest_price <= 1:
continue
# 9点25分涨幅小于6%
tick_data = pro.tick(ts_code=ts_code[0], date='20210107')
current_price = tick_data[tick_data['time'] == '09:25:00']['price'].values[0]
pre_close = pro.daily(ts_code=ts_code[0], start_date='20210106', end_date='20210106', fields='ts_code,close').iloc[0]['close']
if current_price / pre_close >= 1.06:
continue
# 周线MA5金叉MA10
ma_data = pro.weekly(ts_code=ts_code[0], start_date='20200101', end_date='20220101', fields='ts_code,trade_date,close')
ma_data['MA5'] = ma_data['close'].rolling(window=5).mean()
ma_data['MA10'] = ma_data['close'].rolling(window=10).mean()
if ma_data['MA5'].iloc[-1] < ma_data['MA10'].iloc[-1]:
continue
if ma_data['MA5'].iloc[-2] >= ma_data['MA10'].iloc[-2]:
continue
selected_stocks.append(ts_code[0])
return selected_stocks
以上Python代码中,除了基本的选股逻辑外,还引入了更全面的股票技术面指标,如MACD、相对强弱指标、均线等,以便更全面地筛选出具有潜力的股票。同时还引入一些限制条件,如周线的MA金叉等,以减少投资的风险。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
