(supermind策略)task16/a/macd零轴以上、价格<12、kdj(k)增长

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

问财量化选股策略逻辑

选股逻辑为 MACD 零轴以上、价格小于 12 元、KDJ 中的 K 值增长的股票。选股时间为每个交易日开盘前进行。

选股逻辑分析

该选股逻辑同时考虑了技术面和基本面因素。MACD 反映了技术面的情况,KDJ 中的 K 值增长表示股票目前处于上涨趋势,而价格小于 12 元限制则考虑了基本面因素。同时,该策略只选取了价格比较低廉的股票,规避了较高风险。

有何风险?

  1. 没有考虑市场情绪因素的影响,仅考虑技术面和基本面因素可能导致选股结果失误。
  2. KDJ 中的 K 值增长只考虑了一定时期内的涨幅,可能会忽略较长时间内的走势,选股结果可能会受到影响。

如何优化?

  1. 可以增加其他技术面指标的考虑,如成交量、RSI 等,以全面综合股票走势。
  2. 可以考虑增加对基本面的考虑,如市盈率、市净率等,以全面综合分析股票风险情况和市场参考价值。
  3. 可以适当延长 KDJ 中的时期长度,以完整反映股票的走势。

最终的选股逻辑

选股逻辑为 MACD 零轴以上、价格小于 12 元、KDJ 中的 K 值增长的股票。在筛选过程中,同时关注其他技术和基本面指标,以全面综合分析股票的走势和市场参考价值,并适当调整 KDJ 中的时期长度,以完整反映股票的走势。

同花顺指标公式代码参考

以下是 MACD 和 KDJ 的同花顺指标公式:

DIF:EMA(CLOSE,SHORT)-EMA(CLOSE,LONG);
DEA:EMA(DIF,M);
MACD:(DIF-DEA)*2,COLORSTICK;

K: (3*L-2*H)/ (3*$); // H、L 分别为 n 日内的最高价和最低价,$ 为当日收盘价。
D: MA(K, N);
J: 3*K - 2*D;

注意,其中 SHORT = 12,LONG = 26,M = 9,KDJ 中的 N 和 M 值需要根据实际情况调整。

python代码参考

以下是 Python 的选股筛选代码,仅供参考:

import akshare as ak
import talib
import numpy as np

data_stock_price = ak.stock_zh_a_minute(symbol="sh601988", period="15")  # 获取股票 15 分钟数据
close_price = data_stock_price["close"].tolist()

short, long, m = 12, 26, 9
dif, dea, macd = talib.MACD(np.array(close_price), fastperiod=short, slowperiod=long, signalperiod=m)
k, d, j = talib.STOCH(np.array(data_stock_price["high"]), np.array(data_stock_price["low"]), np.array(data_stock_price["close"]), fastk_period=9, slowk_period=3, slowd_period=3)

data_stock_info = ak.stock_info_a_code_name()  # 获取股票列表数据
data_stock_quote = ak.stock_zh_a_quote(symbol="sh601988")  # 获取股票实时行情数据
consecutive_decline = True
for i in range(-1, -8, -1):
    if close_price[i] < close_price[i-1]:
        consecutive_decline = False
        break
if consecutive_decline and macd[-1] > 0 and data_stock_price["close"].iloc[-1] < 12 and (k[-1] - k[-2]) > 0:
    filtered = data_stock_info.loc[
        (data_stock_info["type"] == "主板")
        # 其他条件
    ]
    result = filtered[["代码", "名称"]]  # 最终选股结果

注意,由于数据在运行时需要更新,因此具体代码需要实际情况调整。同时需要根据实际情况查询对应的 AKShare 数据接口。

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

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

    模板如何使用?

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


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

评论