(同花顺量化)10日涨幅大于0小于35_、rsi小于65、高点为两日最高

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

问财量化选股策略逻辑

高点为两日最高,rsi小于65,10日涨幅大于0小于35

选股逻辑分析

这个策略的逻辑是基于技术分析和趋势跟踪。首先,它选择在两天内达到最高点的股票,这表明这些股票已经经历了短期的上涨。然后,它选择RSI小于65的股票,这表明这些股票的短期趋势可能已经超买。最后,它选择10日涨幅大于0小于35的股票,这表明这些股票在最近的10天内有上涨的趋势,但还没有达到过高的水平。

有何风险?

这个策略的潜在风险是它可能过于依赖技术分析和趋势跟踪,而忽略了其他重要的基本面因素。此外,如果市场出现极端情况,这个策略可能无法正确地识别股票的走势。

如何优化?

为了优化这个策略,可以考虑加入一些基本面因素,例如公司的财务状况、盈利能力、市场份额等。此外,可以考虑使用更复杂的RSI指标来更好地识别股票的超买和超卖情况。最后,可以考虑使用更多的数据来更好地预测股票的走势。

最终的选股逻辑

以下是最终的选股逻辑:

def select_stock():
    # 获取所有A股股票
    stocks = get_stocks()

    # 筛选出两天内达到最高点的股票
    high_points = [stock['high'] for stock in stocks if stock['high'] > stock['high'].shift(1)]

    # 筛选出RSI小于65的股票
    rsi = stocks['rsi'].rolling(window=14).mean()
    rsi = rsi.where(rsi < 65, np.nan)
    filtered_stocks = stocks[~np.isnan(rsi)]

    # 筛选出10日涨幅大于0小于35的股票
    gains = filtered_stocks['close'].pct_change()
    gains = gains.where(gains > 0, np.nan)
    filtered_stocks = filtered_stocks[~np.isnan(gains)]

    # 返回符合条件的股票
    return filtered_stocks

python代码参考

import pandas as pd

def get_stocks():
    # 获取所有A股股票
    stocks = pd.read_csv('stock_data.csv')
    return stocks

def calculate_rsi(stocks):
    # 计算RS

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

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

    模板如何使用?

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


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

评论