(i问财选股策略)换手率3%-12%_、圆弧形、至少5根均线重合的股票

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

问财量化选股策略逻辑

  • 至少5根均线重合的股票
  • 圆弧形
  • 换手率3%-12%

选股逻辑分析

  • 这个策略的逻辑是寻找均线多头排列的股票,这些股票通常会形成圆弧形的上涨趋势。同时,要求股票的换手率在3%-12%之间,以确保股票的活跃度适中。

有何风险?

  • 这个策略的局限性在于它只能识别已经形成上涨趋势的股票,无法预测未来走势。此外,如果股票的换手率过高,可能会导致股票价格波动较大,增加投资风险。

如何优化?

  • 可以通过加入更多的技术指标来提高策略的准确性,例如移动平均线、布林线等。此外,可以调整换手率的范围,以适应不同市场环境。

最终的选股逻辑

  • 选取至少5根均线重合的股票,要求均线多头排列且形成圆弧形上涨趋势。同时,要求股票的换手率在3%-12%之间。可以加入其他技术指标来提高策略的准确性,例如移动平均线、布林线等。最后,根据市场环境调整换手率的范围。

python代码参考

import talib
import pandas as pd

def check_5均线_reconciliation(df):
    # 计算移动平均线
    ma5 = talib.MA(df['close'], timeperiod=5)
    ma10 = talib.MA(df['close'], timeperiod=10)
    ma20 = talib.MA(df['close'], timeperiod=20)
    ma50 = talib.MA(df['close'], timeperiod=50)
    ma200 = talib.MA(df['close'], timeperiod=200)

    # 检查均线是否重合
    if ma5 == ma10 and ma10 == ma20 and ma20 == ma50 and ma50 == ma200:
        return True
    else:
        return False

def check_rounding(df):
    # 计算换手率
    df['turnover'] = df['volume'] / df['close'] * 100

    # 检查换手率是否在3%-12%之间
    if df['turnover'].quantile(0.03) <= df['turnover'] <= df['turnover'].quantile(0.12):
        return True
    else:
        return False

def check_strategy(df):
    # 检查是否符合策略要求
    if check_5均线_reconciliation(df) and check_rounding(df):
        return True
    else:
        return False

# 读取数据
df = pd.read_csv('data.csv')

# 检查数据是否符合策略要求
if check_strategy(df):
    # 进行其他处理
    pass
else:
    print('策略不符合要求')

如何进行量化策略实盘?

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

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

模板如何使用?

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

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

94c5cde12014f99e262a302741275d05.png

收益&风险
源码

评论