问财量化选股策略逻辑
选股逻辑为:振幅大于1、酷特智能早晨之星、集中度70<20%的股票。该选股策略主要从技术面出发,选出振幅较大、买入机会比较明显的股票,同时加入了集中度的考虑。
选股逻辑分析
该选股逻辑主要从技术面考虑,选取振幅较大、酷特智能早晨之星出现的股票。同时加入集中度的考虑,避免过于集中的股票,降低投资风险。
有何风险?
该选股逻辑侧重于技术面的选股,缺乏基本面的考虑。在市场整体走势不好或行业走势不好的情况下,该选股策略可能出现较大回撤。同时,选股标准较单一,可能存在选股偏差。另外,集中度的判断标准过于死板,可能规避了一些本身应该被选中的股票。
如何优化?
可以加入更多技术指标,如MACD、KDJ等,综合考虑股票走势的多个方面。同时,可以适当考虑股票的基本面指标,如盈利能力、成长性等,结合技术面进行综合评估。在选择集中度的标准时,可以根据不同行业或不同市场阶段设置不同标准,以更好地反映市场情况。
最终的选股逻辑
选股逻辑为:振幅大于1、酷特智能早晨之星、集中度70<20%的股票。主要从技术面考虑,通过振幅、酷特智能早晨之星等技术指标选出有买入机会的股票,同时加入集中度的考虑。适合短期投资。
同花顺指标公式代码参考
SELECTED = LIANXIAN(LOW,1)==1 AND HSTOP(1) AND (ZHENFU>1) AND HUANSHOULV>SUM(HUANSHOULV,20,20)/100
以上同花顺指标公式根据振幅、酷特智能早晨之星、集中度规则进行选股。
Python代码参考
import tushare as ts
import pandas as pd
from datetime import datetime, timedelta
import talib
def get_selected_stocks():
pro = ts.pro_api()
selected_stocks = []
for ts_code, name, market in pro.stock_basic(exchange='', list_status='L', fields='ts_code,name,market').values.tolist():
if market == '创业板':
continue
# 技术面
daily_data = pro.daily(ts_code=ts_code, start_date=datetime.strftime(datetime.now() - timedelta(days=1), '%Y%m%d'), end_date=datetime.strftime(datetime.now(), '%Y%m%d'))
if daily_data.empty or daily_data.iloc[-1]['turnover_rate'] <= 5:
continue
if not check_morning_star(daily_data):
continue
# 集中度
stk_hold = pd.DataFrame(pro.top10_holders(ts_code=ts_code, start_date=datetime.strftime(datetime.now() - timedelta(days=120), '%Y%m%d'), end_date=datetime.strftime(datetime.now(), '%Y%m%d')))
if stk_hold.empty or float(stk_hold.iloc[0]['hold_ratio']) >= 0.7:
continue
# 选股成功
selected_stocks.append((name, ts_code))
return sorted(selected_stocks, reverse=True)
def check_morning_star(daily_data):
ma5 = daily_data['close'].rolling(window=5).mean()
ma10 = daily_data['close'].rolling(window=10).mean()
dif, dea, macd = talib.MACD(daily_data['close'].values, fastperiod=12, slowperiod=26, signalperiod=9)
if dif[len(dif) - 1] < 0 or dea[len(dea) - 1] < 0:
return False
if daily_data.iloc[-1]['open'] >= ma5[len(ma5) - 1] and ma5[len(ma5) - 1] >= ma10[len(ma10) - 1] \
and daily_data.iloc[-1]['open'] <= daily_data.iloc[-1]['close'] and daily_data.iloc[-1]['open'] <= daily_data.iloc[-2]['close'] and daily_data.iloc[-2]['close'] < daily_data.iloc[-3]['close'] \
and (daily_data.iloc[-1]['open'] - daily_data.iloc[-1]['low']) / (daily_data.iloc[-1]['high'] - daily_data.iloc[-1]['low']) <= 0.33:
return True
return False
以上Python代码结合了技术面和集中度的考虑,选取振幅较大、酷特智能早晨之星出现、集中度70<20%的股票,适合短期投资。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
