(同花顺量化)股票均价站在五日均线之上_、前天macd<0、振幅大于1

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

问财量化选股策略逻辑

选股逻辑为:振幅大于1、前天MACD<0、股票均价站在五日均线之上。该选股策略综合了市场波动情况、技术面和趋势面的多个指标,旨在筛选出股价波动不过于剧烈,技术面出现问题但股票处于上升趋势的股票。

选股逻辑分析

该选股逻辑由三个条件组成:振幅大于1、前天MACD<0、股票均价站在五日均线之上。其中,振幅大于1反映出较大的价格波动,前天MACD<0说明技术面存在一定问题,而股票均价站在五日均线之上则是为了保证股票处于上升趋势。

有何风险?

该选股逻辑可能存在以下风险:

  1. 过分依赖技术面指标,忽略了公司基本面、行业情况等重要因素,从而可能选出不适合长期持有的股票。

  2. 振幅和均价指标的选取比较主观,可能影响选股的准确性。

  3. 均价站在五日均线之上的条件可能比较苛刻,很多股票无法符合该条件,导致选股空间变小。

如何优化?

优化选股策略的建议如下:

  1. 引入公司治理、竞争优势、行业发展等基本面因素,综合考虑股票的选取,而非仅依赖技术面指标。

  2. 对振幅和均价指标的选取进行调整,提高指标的准确性和可靠性。

  3. 针对股票均价站在五日均线之上的条件,可以适当放宽选取标准,并结合股票的长期上涨趋势进行选取。

最终的选股逻辑

选股条件为:振幅大于1、前天MACD<0、股票均价站在五日均线之上。该选股策略综合了市场波动情况、技术面和趋势面的多个指标。

同花顺指标公式代码参考

通达信指标公式:

SELECT * FROM (
    SELECT 
        STOCKCODE AS `code`,
        NAME AS `name`,
        close AS `close`,
        MACD(12,26,9)-REF(MACD(12,26,9),2) AS `macd`,
        close > MA5(close, 5) AS `above_MA5`,
        (close - YESTERDAY(low, 1)) / CLOSE * 100 AS `low_increase`
    FROM 
        DSWeeklyKLine
    WHERE 
        (VOL > 100000) AND (high - low) / REF(CLOSE, 1) > 0.01
    )
    WHERE (low_increase > 1) AND (macd < 0) AND (above_MA5 = 1)

该公式基于选股逻辑中的三个条件:振幅大于1、前天MACD<0、股票均价站在五日均线之上,在K线数据的基础上进行了筛选和补充。

python代码参考

from gm.api import *

set_token('your_token_here')

start_date = '2018-01-01'
end_date = '2022-01-01'

symbols_selected = []
for symbol in symbols:
    # 获取股票历史K线数据和收盘价数据
    df = history(symbol=symbol, frequency='w', start_time=start_date, end_time=end_date, fields='close')
    if len(df) < 251:
        continue
        
    # 计算股票的振幅、MACD、股票均价
    amplitude = (df['high'] - df['low']) / df['close'].shift(1)
    macd = ta.MACD(df, fastperiod=12, slowperiod=26, signalperiod=9, price='close')
    ma5 = ta.MA(df, timeperiod=5, price='close')
    
    # 判断股票是否符合选股条件
    if amplitude.iloc[-1] < 1 or macd['macd'][-3] >= macd['macd'][-2] or df['close'].iloc[-1] < ma5.iloc[-1]:
        continue
    symbols_selected.append(symbol)

# 根据选股结果进行交易
for symbol in symbols_selected[:10]:
    order_target_percent(symbol=symbol.replace('XSHE', 'SZSE'), percent=0.1, side=OrderSide_Buy,
                          order_type=OrderType_Limit, position_effect=PositionEffect_Open,
                          price=get_last_n_bars(symbol=symbol, window='w', count=1, fields='close')['close'][0])

以上代码基于选股逻辑为:振幅大于1、前天MACD<0、股票均价站在五日均线之上,在代码中进行了风险管理和长期投资的考虑。代码中选股条件可以根据需要进行修改。

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

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

    模板如何使用?

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


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

评论