问财量化选股策略逻辑
选股逻辑为振幅大于1、圆弧形、前天MACD<0的股票。
选股逻辑分析
- 振幅大于1可以筛选出波动较大但有短期交易潜力的股票。
- 圆弧形可以筛选出波动较缓和的股票,降低交易风险。
- 前天MACD<0意味着市场情绪趋于低迷,并且股票可能会有一定的下跌压力。
有何风险?
- 过于依赖技术面指标,无法全面考虑股票的基本面因素。
- 前天MACD<0可能只是临时的技术面指标,不一定能够反映股票真实的情况。
如何优化?
- 结合基本分析与技术指标分析,综合考虑股票走势与前景。
- 考虑加入能够反映市场风险与情绪的指标,如市场波动率等。
- 适当增加时间序列的长度,减少一些短暂的技术面影响。
最终的选股逻辑
选股逻辑为振幅大于1、圆弧形、前天MACD<0的股票,并结合基本面分析与其他市场风险指标进行综合分析。
同花顺指标公式代码参考
MACD<0的指标公式:REF(MACD(12, 26) - MACD(9, 12), 2) < 0,其中MACD(12, 26)为12日、26日指数平均线之差,MACD(9, 12)为9日、12日指数平均线之差,REF为引用函数。
Python代码参考
import talib
# 获取振幅大于1
high = close = low = [] # 分别为列表类型,存储股票的最高价、收盘价和最低价
amplitude = 100 * (high - low) / close
picks_amplitude = [i for i in range(len(amplitude)) if amplitude[i] > 1]
# 获取圆弧形
arc_filter = talib.CDLMARUBOZU(open, high, low, close)
# 获取前天MACD<0
macd = talib.MACD(close, fastperiod=12, slowperiod=26, signalperiod=9)
picks_macd = []
for i in range(len(macd[0])):
if i < 2:
continue
if macd[2][i-2] < 0:
picks_macd.append(i)
# 取交集
picks = list(set(picks_amplitude).intersection(set(arc_filter)).intersection(set(picks_macd)))
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
