问财量化选股策略逻辑
- 至少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亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
