问财量化选股策略逻辑
选股策略为:在元宇宙行业中选取KDJ刚形成金叉,并且30日平均线向上的股票。
选股逻辑分析
本选股策略综合考虑了技术面和市场情绪,选取了KDJ指标和30日平均线指标。KDJ指标主要关注技术面上的趋势翻转,而30日平均线则主要关注股票走势的长期趋势。当30日平均线向上时,意味着股票价格可能会继续上涨,市场情绪相对积极。
有何风险?
本选股策略存在以下风险:
- 只考虑了两个技术面指标和市场情绪,未考虑其他重要指标的影响;
- 选股逻辑较为简单,未必适用于各种复杂市场情况;
- 30日移动平均线可能会迟滞较长,难以反映短期的市场状况。
如何优化?
为提高本选股策略的准确性和鲁棒性,可以:
- 引入其他技术指标,如MACD、RSI等,进行综合分析;
- 引入其他形态指标,如头肩顶、双底等,进行综合分析,提高选股标的全面性;
- 引入其他市场情绪指标,如资金流入和市场热度等,进行综合分析。
最终的选股逻辑
在元宇宙行业中选取KDJ刚形成金叉,并且30日平均线向上的股票。
同花顺指标公式代码参考
# 选股条件: 在元宇宙行业中选取KDJ金叉,30日平均线向上的股票
INDUSTRY == '元宇宙' AND KDJ(9,3,3)上穿KDJ(9,3,3)的DEA AND MA(CLOSE, 30) > REF(MA(CLOSE, 30), 1);
# 选股结果
选股条件:INDUSTRY == '元宇宙' AND KDJ(9,3,3)上穿KDJ(9,3,3)的DEA AND MA(CLOSE, 30) > REF(MA(CLOSE, 30), 1);
python代码参考
import numpy as np
import pandas as pd
from typing import List
def select_stocks(data: pd.DataFrame, industry: str) -> List[str]:
df = data[data['INDUSTRY'] == industry]
# 选取KDJ刚形成金叉的股票
df['KDJ_K'], df['KDJ_D'], df['KDJ_J'] = talib.STOCH(df['HIGH'].values, df['LOW'].values, df['CLOSE'].values, fastk_period=9, slowk_period=3, slowd_period=3)
df['KDJ_金叉'] = (df['KDJ_K'] > df['KDJ_D']) & (df['KDJ_K'].shift() < df['KDJ_D'].shift())
df = df[df['KDJ_金叉']]
# 选取30日平均线向上的股票
df['MA30'] = df['CLOSE'].rolling(window=30).mean()
df['MA30_向上'] = df['MA30'] > df['MA30'].shift()
df = df[df['MA30_向上']]
select_df = df.index.tolist()
return select_df
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


