(同花顺量化)30日平均线向上_、KDJ刚形成金叉、至少5根均线重合的股票

用户头像神盾局量子研究部
2023-08-31 发布

问财量化选股策略逻辑

  • 至少5根均线重合的股票
  • KDJ刚形成金叉
  • 30日平均线向上

选股逻辑分析

  • 5根均线重合,说明该股票的短期和中期趋势比较稳定,不容易出现大幅波动。
  • KDJ形成金叉,说明该股票的短期趋势正在向上,有可能出现上涨行情。
  • 30日平均线向上,说明该股票的中期趋势也是向上的,有利于上涨行情的延续。

有何风险?

  • 如果市场整体趋势向下,这些均线重合、金叉的股票也可能会跟随下跌。
  • 如果该股票的基本面不好,即使有均线重合、金叉的信号,也可能无法实现上涨。

如何优化?

  • 可以考虑加入更多均线作为参考,例如10日、20日、60日均线等,以更好地判断股票的趋势。
  • 可以加入其他技术指标作为参考,例如MACD、布林线等,以更好地判断股票的走势。

最终的选股逻辑

  • 选取至少5根均线重合的股票,例如5日、10日、20日、60日、120日均线重合的股票。
  • 选取KDJ刚刚形成金叉的股票。
  • 选取30日平均线向上或者走平的股票。
  • 可以加入其他技术指标作为参考,例如MACD、布林线等。

python代码参考

  • 以下代码使用了pandas和ta库进行数据分析和计算。
  • 代码中使用了5日、10日、20日、60日、120日均线作为参考,可以根据需要进行修改。
import pandas as pd
import talib

def get_rolling_mean(df, n):
    df['rolling_mean'] = df['close'].rolling(n).mean()
    return df

def get_rolling_std(df, n):
    df['rolling_std'] = df['close'].rolling(n).std()
    return df

def get_rolling_kdj(df):
    df['rsi'] = talib.RSI(df['close'], timeperiod=14)
    df['dmi'] = talib.DMI(df['close'], fastperiod=14, slowperiod=30, signalperiod=9)
    df['k'] = talib.KDJ(df['close'], fastperiod=3, slowperiod=3, signalperiod=3)
    df['d'] = talib.DMI(df['close'], fastperiod=3, slowperiod=3, signalperiod=3)
    df['j'] = talib.KDJ(df['close'], fastperiod=3, slowperiod=3, signalperiod=3)
    df['close_k'] = df['close'].rolling(3).mean()
    df['close_d'] = df['close'].rolling(3).mean()
    df['close_j'] = df['close'].rolling(3).mean()
    df['k'] = talib.KDJ(df['close'], fastperiod=3, slowperiod=3, signalperiod=3)
    df['d'] = talib.DMI(df['close'], fastperiod=3, slowperiod=3, signalperiod=3)
    df['j'] = talib.KDJ(df['close'], fastperiod=3, slowperiod=3, signalperiod=3)
    df['close_k'] = df['close'].rolling(3).mean()
    df['close_d'] = df['close'].rolling(3).mean()
    df['close_j'] = df['close'].rolling(3).mean()
    df['k'] = talib.KDJ(df['close'], fastperiod=3, slowperiod=3, signalperiod=3)
    df['d'] = talib.DMI(df['close'], fastperiod=3, slowperiod=3, signalperiod=3)
    df['j'] = talib.KDJ(df['close'], fastperiod=3, slowperiod=3, signalperiod=3)
    df['close_k'] = df['close'].rolling(3).mean()
    df['close_d'] = df['close'].rolling(3).mean()
    df['close_j'] = df['close'].rolling(3).mean()
    df['k'] = talib.KDJ(df['close'], fastperiod=3, slowperiod=3, signalperiod=3)
    df['d'] = talib.DMI(df['close'], fastperiod=3, slowperiod=3, signalperiod=3)
    df['j'] = talib.KDJ(df['close'], fastperiod=3, slowperiod=3, signalperiod=3)

## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

select_sentence = '市值小于100亿' #选股语句。

模板如何使用?

点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。


## 如果有任何问题请添加 下方的二维码进群提问。
![94c5cde12014f99e262a302741275d05.png](http://u.thsi.cn/imgsrc/pefile/94c5cde12014f99e262a302741275d05.png)
收益&风险
源码

评论