问财量化选股策略逻辑
- 今日增仓占比>5%, 表示该股票最近有较多资金流入,可能具有上涨潜力。
- 涨幅<2.6且涨幅>-5, 表示该股票今日涨幅在一定范围内,且有正向上涨趋势。
- 今日控盘>21, 表示该股票目前的市场流通量较少,容易被庄家控制,具有一定的投资价值。
选股逻辑分析
以上三个条件分别从资金流入、市场趋势和市场控制力三个方面来筛选股票,可以筛选出具有上涨潜力的股票。
有何风险?
- 由于只考虑了股票的短期趋势,可能会忽略长期趋势,导致选出的股票表现不佳。
- 该策略只考虑了股票的市场表现,忽略了公司的基本面情况,可能会选出一些高估的股票。
如何优化?
- 可以结合公司的基本面情况,例如盈利能力、负债率等,来筛选股票,以提高策略的准确性。
- 可以考虑加入更多的条件,例如股票的市盈率、市净率等,来综合评估股票的价值。
最终的选股逻辑
- 今日增仓占比>5%, 涨幅<2.6且涨幅>-5, 今日控盘>21, 公司基本面良好。
- 其中,今日增仓占比表示资金流入情况,涨幅表示市场趋势,控盘表示市场控制力,基本面表示公司的盈利能力、负债率等基本面情况。
python代码参考
import talib
def get_stock_info(ticker):
# 获取股票基本信息
info = yf.Ticker(ticker)
info = info.info
return info
def get_cAGR(data, start_date, end_date):
# 计算年化收益率
cagr = (data[end_date] / data[start_date]) ** (1 / len(data)) - 1
return cagr
def get_money_flow(data, start_date, end_date):
# 获取资金流入流出情况
money_flow = talib.MF Förderung(data, start_date, end_date)
return money_flow
def get_top_n(data, n):
# 获取排名前n的股票
top_n = data.nlargest(n, 'close')
return top_n
def get_strategy(ticker, start_date, end_date):
# 获取策略筛选条件
info = get_stock_info(ticker)
money_flow = get_money_flow(info['close'], start_date, end_date)
top_n = get_top_n(money_flow, 3)
cagr = get_cAGR(top_n['close'], start_date, end_date)
if cagr > 0.05 and money_flow[-1] > 0 and top_n[-1]['close'] < top_n[-2]['close'] * 1.05:
return True
else:
return False
以上代码为Python代码参考,用于实现以上策略的筛选条件。
如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
如果有任何问题请添加 下方的二维码进群提问。


