(supermind量化-)振幅大于1、周线MA5金叉MA10、kdj(k)增长值_

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

问财量化选股策略逻辑

本选股策略选取符合以下条件的股票:振幅大于1,周线MA5金叉MA10,KDJ(K)增长值为正数。结合技术面和基本面的因素,筛选出有潜力的优质股票。

选股逻辑分析

本选股策略主要考虑了技术面的指标。振幅大于1可以筛选出波动较大的股票,周线MA5金叉MA10表明股票已经出现了明显的上涨趋势。KDJ指标可以帮助判断当前股票的强度和趋势方向。增长值为正数则表明股票继续上涨的概率较大。综合考虑以上的指标和因素,筛选出优秀的股票。

有何风险?

本选股策略仅考虑了技术面的因素,没有考虑到股票的基本面因素。虽然技术面指标能够提供一些参考信息,但是单纯依赖技术面筛选出的股票,可能会忽略公司的财务和经营情况等基本面因素,仍需进行进一步的基本面分析和判断。

如何优化?

本选股策略应该对基本面和技术面两个方面进行综合考虑。在技术面的指标基础上,应加上一些基本面的指标来进行股票的筛选。同时,应该对不同行业的股票进行比较,以更好地展示不同股票间的相对价值。此外,可以在选股后对股票进行风险控制和投资组合配置。

最终的选股逻辑

本选股策略选取符合以下条件的股票:

  1. 振幅大于1;
  2. 周线MA5金叉MA10;
  3. KDJ指标的K值增长值为正数。

通过考虑技术面的因素,筛选出优秀的股票,并进行后续的投资操作。

同花顺指标公式代码参考

以下是本选股策略的通达信指标代码:

C1: V>1
C2: WEEK:MA(CLOSE,5)>REF(MA(CLOSE,10),1) AND MA(CLOSE,5)<REF(MA(CLOSE,10),1)
C3: (KDJ(J) - REF(KDJ(J), 1)) > 0 AND (KDJ(K) - REF(KDJ(K), 1)) > 0
C4: C1 AND C2 AND C3
C5: COUNTC(C4, 1)>0
SEL_STOCK:SELECTC(C5 AND C, 0, 1)

其中,C1表示振幅大于1,C2表示周线MA5金叉MA10,C3表示KDJ指标上涨。C4为三个条件的组合。COUNTC 函数用于计算符合条件的股票数量,SELECTC 用于选出符合条件的股票,进行投资操作。

python代码参考

import tushare as ts
import talib

# 判断当日是否符合筛选条件
def check_today(code):
    k_data = ts.get_hist_data(code)
    if k_data is None or 'ST' in k_data.name.values[0] or '退' in k_data.name.values[0]:
        return False
    v = k_data.iloc[-1]['volume']
    ma5 = talib.MA(k_data['close'], timeperiod=5)[-1]
    ma10 = talib.MA(k_data['close'], timeperiod=10)[-1]
    kdj_j, kdj_k, _ = talib.STOCH(k_data['high'].values, k_data['low'].values, k_data['close'].values)
    kdj_k_growth = kdj_k[-1] - kdj_k[-2]
    kdj_j_growth = kdj_j[-1] - kdj_j[-2]
    return v>1 and ma5>ma10 and kdj_k_growth>0 and kdj_j_growth>0

# 按市值排序
def sort_by_market_value(data):
    return data.sort_values(by='circulating_market_cap', ascending=False)

# 选取符合条件的股票
def select_stock():
    results = []
    all_stocks = ts.get_stock_basics()
    for code in all_stocks.index:
        if check_today(code):
            results.append(code)
    selected_data = all_stocks.loc[results]
    return sort_by_market_value(selected_data).index.tolist()

print(select_stock())

以上代码仅供参考,具体实现应根据实际情况进行调整。其中,使用了 tusharetalib 库进行了股票数据获取和技术指标计算,sort_by_market_valuecheck_today 分别用于基本面和技术面的筛选。

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

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

    模板如何使用?

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


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

评论