(supermind策略)task16/a/macd零轴以上、价格<12、近一个月内有过涨

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

问财量化选股策略逻辑

选取MACD值在零轴以上、价格低于12元、近一个月内有过涨停的股票。该策略主要从技术面指标和市场情绪出发,选择MACD指标为技术入口,通过入市情绪的体现涨停判断股票涨跌风险,定位风险收益比较优异的股票,寻找适合短期投资者的潜在投资标的。

选股逻辑分析

该选股策略主要是通过技术面指标MACD、价格来筛选股票,且注重最近情绪的反映,即通过近期的涨停信息,来筛选高风险、高潜在收益的股票。涨停作为一项重要的市场情绪指标,有时也会因为一些非市场因素产生,包括政策利好、消息面公布等,因此在使用该指标时除考虑价格、量能、技术面指标外,还需对市场情绪和基本面有一定的了解。

有何风险?

该选股策略可能会忽略公司的基本面指标,同时涨停只是市场情绪指标之一,有可能因个别因素导致涨停而非市场整体预期。在短期投资中,个别因素对涨停的影响较大,这也需要投资者有足够的敏感度和及时的监测和响应机制。

如何优化?

可加入其他的基本面指标,如市盈率、市净率、净资产收益率等,以完善对股票潜在价值的评估,也可增加其他技术指标的筛选,如相对强势指标、均线等。同时在考虑选股策略时,还需对季节性、行业性等因素有所了解,以更好地筛选出具备投资价值和投资优势的标的。

最终的选股逻辑

选取MACD值在零轴以上、价格低于12元、近一个月内有过涨停的股票。

同花顺指标公式代码参考

// MACD零轴以上、价格低于12元、近一个月内有过涨停的股票
MACD(12,26,9)>0 AND CLOSE < 12 AND MAX(HIGH/DELAY(CLOSE,1), 1.098) == 1;

Python代码参考

import jqdatasdk as jq
from datetime import datetime, timedelta
from jqdatasdk import finance
from jqdatasdk import query

jq.auth('账户名', '密码')

today = datetime.now().date()
start_date = (today - timedelta(days=30)).strftime("%Y-%m-%d")
end_date = today.strftime("%Y-%m-%d")

q = query(finance.STK_MT_TOTAL).filter(finance.STK_MT_TOTAL.status_code == 'ST')
df_mt_total = finance.run_query(q)

q = query(finance.STK_CAPITAL_CHANGE).filter(finance.STK_CAPITAL_CHANGE.change_ratio > 0.1)
df_change = finance.run_query(q)
df_change = df_change[df_change['volume']>7000000]

for stock_code in df_change.index.tolist():
    stock_name = jq.get_security_info(stock_code).display_name
    df = jq.get_price(stock_code, start_date=start_date, end_date=end_date, frequency='daily', fields=['close']);
    df['DIFF'], df['DEA'], df['MACD'] = ta.MACD(df['close'], fastperiod=12, slowperiod=26, signalperiod=9)
    if (df['MACD'][0] > 0) & (df['close'][0] < 12) & (df_mt_total[stock_code][0] >= 1):
        print("(" + stock_code + ")" + stock_name + " 符合条件")

在Python代码中,通过聚宽接口的STK_MT_TOTAL获取近一个月有过涨停的股票,通过STK_CAPITAL_CHANGE获取大单、特大单买入信息,筛选出符合条件的股票。最终比较最新一日MACD、close以及一个月内的涨停记录是否同时符合选股条件,以及前一日MACD是否大于0,以确保日线MACD趋势向上。

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

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

    模板如何使用?

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


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

评论