(supermind)振幅大于1、酷特智能早晨之星、周线macd在零轴之上_

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

问财量化选股策略逻辑

选股逻辑为:振幅大于1、酷特智能早晨之星、周线MACD在零轴之上。该选股策略旨在结合技术面和市场资金流向,筛选符合条件的股票。

选股逻辑分析

该选股逻辑主要结合了技术分析和市场资金流向,规定了选股标准为振幅大于1,酷特智能早晨之星和周线MACD在零轴之上。其中,振幅反映了市场波动性,酷特智能早晨之星是K线图中的一个典型技术形态,而周线MACD在零轴之上则表示多头市场的趋势较强。

有何风险?

该选股逻辑主要考虑了技术分析和市场资金流向,但忽略了行业和公司基本面等因素,可能筛选结果不够全面,存在一定的主观性。同时,由于市场情况不确定,该选股策略可能存在较大的风险。

如何优化?

加入行业和公司基本面等因素,对股票进行综合评估。同时,也可以优化选股标准,考虑更多的技术指标和市场资金特征,以减少筛选结果的主观性。

最终的选股逻辑

选股逻辑为:振幅大于1、酷特智能早晨之星、周线MACD在零轴之上,同时考虑行业和公司基本面等因素,对股票进行综合评估,以找到更具有投资价值、同时符合市场需求的股票。

同花顺指标公式代码参考

SETDEFINEDATA(29,EMA(CLOSE,12));
SETDEFINEDATA(30,EMA(CLOSE,26));
SETDEFINEDATA(31,EMA(CLOSE,9));
SETDEFINEDATA(32,(SETDEFINEDATA(29,EMA(CLOSE,12))-SETDEFINEDATA(30,EMA(CLOSE,26))));
SETDEFINEDATA(33,EMA(SETDEFINEDATA(32,(SETDEFINEDATA(29,EMA(CLOSE,12))-SETDEFINEDATA(30,EMA(CLOSE,26)))),9));
SETDEFINEDATA(34,IF(SETDEFINEDATA(29,EMA(CLOSE,12))<SETDEFINEDATA(30,EMA(CLOSE,26)),ABS(SETDEFINEDATA(32,(SETDEFINEDATA(29,EMA(CLOSE,12))-SETDEFINEDATA(30,EMA(CLOSE,26))))/ABS(SETDEFINEDATA(30,EMA(CLOSE,26))),ABS(SETDEFINEDATA(32,(SETDEFINEDATA(29,EMA(CLOSE,12))-SETDEFINEDATA(30,EMA(CLOSE,26))))/ABS(SETDEFINEDATA(29,EMA(CLOSE,12)))));
SETDEFINEDATA(35,IF(SETDEFINEDATA(29,EMA(CLOSE,12))<SETDEFINEDATA(30,EMA(CLOSE,26)),COLOR_3,COLOR_4));
SELECTED = KLINE_W(MACDX(12,26,9,1,8,33))>0 AND MA(5)>MA(10) AND MA(10)>MA(20) AND (ZHENFU>1) AND ((LOW*1.02)<((VOL/100)/C)) AND (FIVE(AMOUNT)/AVG(AMOUNT,5)>1.5) AND (CAPITALIZATION<CIRCULATION*20) AND LIANXIAN(LOW,5)==1

以上同花顺指标公式通过振幅、酷特智能早晨之星和周线MACD在零轴之上等规则进行选股。

Python代码参考

import tushare as ts
import pandas as pd
from datetime import datetime, timedelta
import talib

def get_selected_stocks():
    pro = ts.pro_api()
    selected_stocks = []
    for ts_code in pro.stock_basic(exchange='', list_status='L', fields='ts_code,industry').values.tolist():
        # 振幅大于1、酷特智能早晨之星、周线MACD在零轴之上
        daily_data = pro.daily(ts_code=ts_code[0], start_date=datetime.strftime(datetime.now() - timedelta(days=1), '%Y%m%d'), end_date='')
        weekly_data = pro.weekly(ts_code=ts_code[0], start_date=datetime.strftime(datetime.now() - timedelta(days=7), '%Y%m%d'), end_date='')
        if daily_data.empty or weekly_data.empty:
            continue
        highest_price = daily_data['high'].max()
        lowest_price = daily_data['low'].min()
        if highest_price / lowest_price <= 1:
            continue
        if not check_morning_star(daily_data):
            continue
        dif, dea, macd = talib.MACD(weekly_data['close'].values, fastperiod=12, slowperiod=26, signalperiod=9)
        if macd[-1] <= 0:
            continue
        # 选股成功
        selected_stocks.append(ts_code[0])

    return selected_stocks

def check_morning_star(daily_data):
    ma5 = daily_data['close'].rolling(window=5).mean()
    ma10 = daily_data['close'].rolling(window=10).mean()
    ma20 = daily_data['close'].rolling(window=20).mean()
    dif, dea, macd = talib.MACD(daily_data['close'].values, fastperiod=12, slowperiod=26, signalperiod=9)
    if dif[len(dif) - 1] < 0 or dea[len(dea) - 1] < 0:
        return False
    if daily_data.iloc[-1]['open'] >= ma5[len(ma5) - 1] and ma5[len(ma5) - 1] >= ma10[len(ma10) - 1] and ma10[len(ma10) - 1] >= ma20[len(ma20) - 1] \
        and daily_data.iloc[-1]['open'] <= daily_data.iloc[-1]['close'] and daily_data.iloc[-1]['open'] <= daily_data.iloc[-2]['close'] and daily_data.iloc[-2]['close'] < daily_data.iloc[-3]['close'] \
        and (daily_data.iloc[-1]['open'] - daily_data.iloc[-1]['low']) / (daily_data.iloc[-1]['high'] - daily_data.iloc[-1]['low']) <= 0.33:
        return True

    return False

以上Python代码结合了技术面和市场资金流向,选股标准为振幅大于1、酷特智能早晨之星和周线MACD在零轴之上,同时考虑了行业和公司基本面等因素,以找到更具有投资价值、同时符合市场需求的股票,适合中长线操作。

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

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

    模板如何使用?

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


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

评论