问财量化选股策略逻辑
- 至少5根均线重合的股票
- 流通盘小于等于55亿股
- 15分钟周期MACD绿柱变短
选股逻辑分析
- 这个策略基于技术分析,通过观察股票的均线和MACD指标来筛选股票。
- 首先,要求至少5根均线重合,这可能意味着股票价格趋势比较稳定,同时也表明股票价格在短期内比较容易受到支撑和阻力。
- 其次,要求流通盘小于等于55亿股,这可能意味着股票的流动性比较低,但也可能意味着股票的价格波动比较小。
- 最后,要求15分钟周期MACD绿柱变短,这可能意味着股票价格即将出现反弹。
有何风险?
- 这个策略基于技术分析,可能会受到市场情绪和投资者心理的影响,因此并不是100%准确。
- 如果股票的价格趋势不稳定,均线可能会失去意义,从而导致策略失效。
- 如果股票的流动性太低,可能会导致交易不活跃,从而影响策略的效果。
- 如果股票的价格波动太大,可能会导致MACD指标的准确性受到影响,从而影响策略的效果。
如何优化?
- 可以考虑加入更多的技术指标,例如布林线、RSI等,以提高策略的准确性。
- 可以考虑加入更多的过滤条件,例如股价是否处于上升趋势、是否已经出现了反弹等,以减少策略的误判。
- 可以考虑加入更多的市场因素,例如政策、经济等,以更好地理解股票的价格走势。
最终的选股逻辑
- 筛选出至少5根均线重合的股票
- 筛选出流通盘小于等于55亿股的股票
- 筛选出15分钟周期MACD绿柱变短的股票
- 在以上三个条件都满足的情况下,加入布林线、RSI等其他技术指标进行过滤
- 在以上四个条件都满足的情况下,加入股价是否处于上升趋势、是否已经出现了反弹等过滤条件
- 在以上五个条件都满足的情况下,加入政策、经济等市场因素进行过滤
python代码参考
import talib
import numpy as np
def macd策略(c, fastPeriod, slowPeriod, signalPeriod):
emaFast = talib.EMA(c, fastPeriod)
emaSlow = talib.EMA(c, slowPeriod)
emaSignal = talib.EMA(c, signalPeriod)
return emaFast - emaSlow
def filter策略(c, fastPeriod, slowPeriod, signalPeriod, upperBand, lowerBand):
macd = macd_strategy(c, fastPeriod, slowPeriod, signalPeriod)
emaFast = talib.EMA(c, fastPeriod)
emaSlow = talib.EMA(c, slowPeriod)
emaSignal = talib.EMA(c, signalPeriod)
upperBand = talib.BBANDS(c, timeperiod=upperBand)
lowerBand = talib.BBANDS(c, timeperiod=lowerBand)
return macd > emaFast and macd > emaSlow and macd > emaSignal and upperBand[1] > lowerBand[1]
def selectStocks(c, fastPeriod, slowPeriod, signalPeriod, upperBand, lowerBand):
stocks = []
for i in range(len(c)):
if filter策略(c[i], fastPeriod, slowPeriod, signalPeriod, upperBand, lowerBand):
stocks.append(c[i])
return stocks
如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
如果有任何问题请添加 下方的二维码进群提问。


