问财量化选股策略逻辑
- 今日增仓占比>5%
- 涨跌幅×超大单净量
- 30日平均线向上
选股逻辑分析
这三个条件分别代表了股票的市场表现、资金流入情况和趋势。其中,今日增仓占比表示股票近期的买入力度,涨跌幅×超大单净量表示股票的市场情绪和资金关注度,30日平均线向上表示股票的趋势向上。
有何风险?
这个策略的局限性在于它只考虑了股票的短期表现和市场情绪,而忽略了股票的基本面和长期价值。因此,如果股票的基本面不佳或者市场情绪过度悲观或乐观,这个策略可能会产生错误的买入或卖出决策。
如何优化?
为了减少策略的局限性,我们可以考虑加入一些基本面指标,例如市盈率、市净率等,来评估股票的基本面价值。此外,我们还可以考虑加入一些长期趋势指标,例如移动平均线、布林线等,来评估股票的长期趋势。
最终的选股逻辑
我们最终的选股逻辑如下:
def select_stock():
# 获取所有A股股票
stocks = get_stocks()
# 初始化三个指标
today_buy_percent = 0
price_change_x_momentum = 0
moving_average_direction = 0
# 遍历所有股票
for stock in stocks:
# 获取今日增仓占比
today_buy_percent = get_buy_percent(stock)
# 获取涨跌幅和超大单净量
price_change = get_price_change(stock)
momentum = get_momentum(stock)
# 计算涨跌幅×超大单净量
price_change_x_momentum = price_change * momentum
# 判断股票是否符合策略要求
if today_buy_percent > 0.05 and price_change_x_momentum > 0 and moving_average_direction == 1:
# 如果符合策略要求,返回该股票
return stock
python代码参考
import talib
def get_buy_percent(stock):
# 获取今日买入金额占总成交额的比例
return talib.BUY_RATE(stock, 1)
def get_price_change(stock):
# 获取股票的涨跌幅
return stock['close'].pct_change()
def get_momentum(stock):
# 获取股票的超大单净量
return stock['turnover'].rolling(window=30).mean()
def moving_average_direction(stock):
# 计算股票的移动平均线方向
ma = stock['close'].rolling(window=30).mean()
if ma[-1] > ma[-2]:
return 1
elif ma[-1] < ma[-2]:
return -1
else:
return 0
如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
如果有任何问题请添加 下方的二维码进群提问。


