问财量化选股策略逻辑
- 今日增仓占比>5%
- 机构动向大于0
- 30日平均线向上
选股逻辑分析
该策略的逻辑是基于市场中机构投资者的动向和股票的短期趋势来选择股票。首先,要求今日股票的增仓比例大于5%,这意味着机构投资者在今天买入了更多的股票,这可能表明他们对这只股票的未来表现持乐观态度。其次,要求机构动向大于0,这意味着机构投资者在最近一段时间内一直在买入这只股票,这也表明他们对该股票的未来表现持乐观态度。最后,要求30日平均线向上,这意味着股票的短期趋势是向上的,这也表明股票的未来表现可能比较乐观。
有何风险?
该策略的风险主要来自于市场风险和股票选择风险。市场风险是指股票市场的整体波动性,即使机构投资者对该股票持乐观态度,也可能因为市场整体表现不佳而导致股票表现不佳。股票选择风险是指选择的股票可能不符合预期,即使机构投资者对该股票持乐观态度,也可能因为股票本身的问题而导致股票表现不佳。
如何优化?
为了优化该策略,可以考虑以下几点:
- 增加更多的筛选条件,例如要求股票的市盈率、市净率等指标也符合一定的标准。
- 调整筛选条件的权重,例如将今日增仓占比的权重调高,以更注重机构投资者的动向。
- 对于股票的短期趋势,可以考虑使用更短的时间周期,例如使用5日平均线来代替30日平均线。
最终的选股逻辑
- 今日增仓占比>5%
- 机构动向大于0
- 市盈率小于30
- 市净率小于2
- 5日平均线向上
python代码参考
import talib
def get筛选条件():
# 获取今日增仓占比
close = get_close()
volume = get_volume()
delta = close[-1] - close[0]
total_volume = volume[-1] - volume[0]
percentage = delta / total_volume * 100
return percentage > 5
def get_close():
# 获取股票的收盘价
return get_stock_data('股票代码').close
def get_volume():
# 获取股票的成交量
return get_stock_data('股票代码').volume
def get_stock_data(stock_code):
# 获取股票的历史数据
return get_historical_data(stock_code)
def get_historical_data(stock_code):
# 获取股票的历史数据
return yf.download(stock_code, start='2020-01-01', end='2021-12-31')
def is_stock符合条件(stock):
# 判断股票是否符合条件
return stock['close'] > stock['close'].rolling(window=5).mean() and stock['close'] > stock['close'].rolling(window=30).mean() and stock['pe'] < 30 and stock['pb'] < 2 and stock['close'].rolling(window=5).mean() > stock['close'].rolling(window=5).mean().shift(1)
def get_top_stocks():
# 获取符合条件的股票排名前N的股票
return is_stock.loc[is_stock['close'].rolling(window=5).mean() > is_stock['close'].rolling(window=5).mean().shift(1)].sort_values(by='close', ascending=False)[:N]
# 示例用法
N = 10
top_stocks = get_top_stocks(N)
如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
如果有任何问题请添加 下方的二维码进群提问。


