问财量化选股策略逻辑
选股逻辑为MACD零轴以上、今日均线向上发散、KDJ刚形成金叉。
选股逻辑分析
该选股逻辑主要关注以下几个方面:
- MACD零轴以上:表示当前股票处于上涨状态;
- 今日均线向上发散:表示当前股票的趋势向上;
- KDJ刚形成金叉:表示当前股票处于强势状态,有望继续上涨。
有何风险?
- 选股条件过于简单,可能会忽略其他重要的指标和因素;
- KDJ指标容易出现虚假信号,需要结合其他指标进行综合分析,避免错误选股;
- 经济、政策等外部因素对选股结果的影响可能不可预测,风险较高。
如何优化?
- 选股条件应该结合其他的技术指标、基本面信息以及市场热度等多方面因素进行选股,避免引入过多的噪音;
- KDJ指标的虚假信号输入少,可以结合其他指标进行筛选,如RSI等;
- 可以对选定的股票进行更加严格的筛选和分析,确保选中的股票风险控制在可承受范围内。
最终的选股逻辑
选股逻辑为:MACD零轴以上、今日均线向上发散、KDJ刚形成金叉。
同花顺指标公式代码参考
MACD指标:
DIF:EMA(CLOSE,12)-EMA(CLOSE,26)
DEA:EMA(DIF,9)
MACD:(DIF-DEA)*2
均线指标:
MA10:MA(CLOSE,10)
KDJ指标:
RSV:(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100
K:SMA(RSV,3,1)
D:SMA(K,3,1)
J:3*K-2*D
选股筛选公式:
MACD > 0 AND MA(CLOSE,1) > MA(CLOSE,2) AND KDJ_K> KDJ_D AND REF(KDJ_K,1) < REF(KDJ_D,1)
排序公式:
SORTBY((CLOSE-REF(CLOSE,1))/REF(CLOSE,1),1)
python代码参考
以下为python的选股筛选代码和排序代码,仅供参考:
import akshare as ak
import talib
# 获取股票列表并计算选股筛选条件
stock_list = ak.stock_zh_a_spot_em().reset_index()
stock_list['macd'], stock_list['macd_signal'], stock_list['macd_hist'] = talib.MACD(stock_list['close'], fastperiod=12, slowperiod=26, signalperiod=9)
stock_list['ma10'] = talib.SMA(stock_list['close'], timeperiod=10)
stock_list['KDJ_K'], stock_list['KDJ_D'], stock_list['KDJ_J'] = talib.STOCH(stock_list['high'], stock_list['low'], stock_list['close'], fastk_period=9, slowk_period=3, slowk_matype=0, slowd_period=3, slowd_matype=0)
condition1 = (stock_list['macd'] > 0) & (stock_list['ma5'] > stock_list['ma10'])
condition2 = (stock_list['KDJ_K'] > stock_list['KDJ_D']) & (stock_list['KDJ_K'].shift(1) < stock_list['KDJ_D'].shift(1))
stock_list = stock_list[condition1 & condition2]
# 按涨幅从小到大排序
result_sorted = stock_list.sort_values(by=['pct_chg'], ascending=True)
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


