(iwencai量化)反包_、10日涨幅大于0小于35、至少5根均线重合的股票

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

问财量化选股策略逻辑

  • 至少5根均线重合的股票
  • 10日涨幅大于0小于35
  • 反包

选股逻辑分析

  • 这个策略首先选择至少5根均线重合的股票,这可能意味着这些股票的走势比较稳定,而且有可能形成支撑或阻力位。
  • 然后,策略选择10日涨幅大于0小于35的股票,这可能意味着这些股票最近有比较明显的上涨趋势,但还没有达到过高的程度。
  • 最后,策略选择反包的股票,这可能意味着这些股票在之前的下跌行情中被严重打压,但最近出现了一定的反弹,表明市场对该股票的看涨情绪正在增强。

有何风险?

  • 这个策略可能无法准确预测股票的未来走势,因为市场是不可预测的。
  • 这个策略可能无法准确预测哪些股票符合这些条件,因为市场上的股票数量众多,而且条件也比较宽松。
  • 这个策略可能无法准确预测哪些股票符合这些条件后会继续上涨,因为股票的走势是受到多种因素影响的。

如何优化?

  • 可以尝试调整均线的数量和时间周期,以更好地反映股票的走势。
  • 可以尝试调整涨幅的条件,以更好地反映股票的上涨趋势。
  • 可以尝试加入其他条件,例如股票的市值、市盈率等,以更好地筛选出有潜力的股票。

最终的选股逻辑

  • 选择至少5根均线重合的股票
  • 选择10日涨幅大于0小于35的股票
  • 选择反包的股票
  • 调整均线的数量和时间周期
  • 调整涨幅的条件
  • 加入其他条件,例如股票的市值、市盈率等

python代码参考

  • import talib

  • import numpy as np

  • import pandas as pd

  • def get_stock_data(stock_code):

    • df = pd.read_csv('stock_data.csv')
      
    • return df[df['code'] == stock_code]
      
  • def get_moving_average(df, n):

    • ma = talib.MA(df['close'], n)
      
    • return ma
      
  • def get_stock符合条件的股票代码(df):

    • conditions = []
      
    • conditions.append(df['close'].rolling(window=n).mean() > df['close'].rolling(window=n).mean() - 3)
      
    • conditions.append(df['close'].rolling(window=n).mean() < df['close'].rolling(window=n).mean() + 3)
      
    • conditions.append(df['close'].diff() > 0)
      
    • conditions.append(df['close'].diff() < 0)
      
    • conditions.append(df['close'] > df['close'].rolling(window=n).mean())
      
    • conditions.append(df['close'] < df['close'].rolling(window=n).mean())
      
    • conditions.append(df['close'] > df['close'].rolling(window=n).mean() - 0.3 * df['close'].rolling(window=n).std())
      
    • conditions.append(df['close'] < df['close'].rolling(window=n).mean() + 0.3 * df['close'].rolling(window=n).std())
      
    • conditions.append(df['close'] > df['close'].rolling(window=n).mean() - 0.3 * df['close'].rolling(window=n).std() * df['close'].rolling(window=n).std())
      
    • conditions.append(df['close'] < df['close'].rolling(window=n).mean() + 0.3 * df['close'].rolling(window=n).std() * df['close'].rolling(window=n).std())
      
    • conditions.append(df['close'] > df['close'].rolling(window=n).mean() - 0.5 * df['close'].rolling(window=n).std() * df['close'].rolling(window=n).std() * df['close'].rolling(window=n).std())
      
    • conditions.append(df['close'] < df['close'].rolling(window=n).mean() + 0.5 * df['close'].rolling(window=n).std() * df['close'].rolling(window=n).std() * df['close'].rolling(window=n).std())
      
    • conditions.append(df['close'] > df['close'].rolling(window=n).mean() - 0.7 * df['close'].rolling(window=n).std() * df['close'].rolling(window=n).std() * df['close'].rolling(window=n).std() * df['close'].rolling(window=n).std())
      
    • conditions.append(df['close'] < df['close'].rolling(window=n).mean() + 0
      

如何进行量化策略实盘?

请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

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

模板如何使用?

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

如果有任何问题请添加 下方的二维码进群提问。

94c5cde12014f99e262a302741275d05.png

收益&风险
源码

评论