问财量化选股策略逻辑
选股逻辑为:振幅大于1、酷特智能早晨之星,按个股热度从大到小排序名。该选股策略通过技术面和市场情绪相结合,选出符合条件且市场热度较高的个股。
选股逻辑分析
该选股逻辑主要考虑了技术面和市场情绪,规定了选股标准为振幅大于1、酷特智能早晨之星和按个股热度从大到小排序。振幅大于1可以较好地反映股票波动的幅度,酷特智能早晨之星可以更好地反映股票短期的趋势,按个股热度排序可以过滤出市场情绪热度较高的个股。
有何风险?
该选股逻辑主要以市场情绪热度为重点,但可能存在市场热度未持续的情况,导致选出的个股收益下降。同时,选股标准比较单一,可能存在较大的策略风险。
如何优化?
可以加入更多的市场情绪指标,如市场资金流入流出、市场交易情绪指数等,全面评估市场情绪的变化情况;同时也可以考虑技术指标的综合运用,以较为全面地筛选股票。
最终的选股逻辑
选股逻辑为:振幅大于1、酷特智能早晨之星,考虑市场情绪指数等指标,以找到市场热度较高的个股,并按个股热度从大到小排序名。耐心等待市场出现较好的投资机会,以长期持有为主。
同花顺指标公式代码参考
SELECTED = LIANXIAN(LOW,1)==1 AND HSTOP(1) AND (ZHENFU>1) AND (RSI(CLOSE,14)>50)
以上同花顺指标公式通过振幅、酷特智能早晨之星、RSI等规则进行选股,并按热度从大到小排序。
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 in pro.stock_basic(exchange='', list_status='L', fields='ts_code,industry,pe,name').values.tolist():
# 振幅大于1、酷特智能早晨之星
daily_data = pro.daily(ts_code=ts_code[0], 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
# 考虑市场情绪,并按热度排序
market_data = pro.moneyflow(ts_code=ts_code[0], start_date=datetime.strftime(datetime.now() - timedelta(days=30), '%Y%m%d'), end_date=datetime.strftime(datetime.now(), '%Y%m%d'))
if market_data['share_money'].sum() < market_data['buy_smoney'].sum():
continue
if market_data['net_mf_vol'].iloc[-1] <= 0 or market_data['net_mf_vol'].iloc[-1] / market_data['net_mf_vol'].iloc[-2] <= 1:
continue
# 选股成功
selected_stocks.append((ts_code[3], ts_code[0]))
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代码结合了技术面和市场情绪,选股标准为振幅大于1、酷特智能早晨之星和按个股热度从大到小排序,适合长期持有。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
