(iwencai量化策略)macd零轴以上_、前日实际换手率_3~28、今日增仓占比_5%

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

问财量化选股策略逻辑

今日增仓占比>5%,前日实际换手率>3~28,macd零轴以上

选股逻辑分析

该策略基于三个指标进行筛选,分别是今日增仓占比、前日实际换手率和macd零轴以上。其中,今日增仓占比表示最近一天的股票买入量占流通盘的比例,前日实际换手率表示前一个交易日的股票成交量占流通盘的比例,macd零轴以上表示macd指标的两条线在零轴以上,表示股票处于上涨趋势中。

该策略的逻辑是,当股票的今日增仓占比超过5%,且前日实际换手率在3%到28%之间,且macd指标的两条线在零轴以上时,说明该股票近期有较多的资金流入,且处于上涨趋势中,因此具有较高的投资价值。

有何风险?

该策略的风险主要在于对股票的短期走势的判断上。如果股票在短期内出现回调或下跌,即使符合该策略的条件,也可能被排除在外。此外,该策略可能无法捕捉到长期趋势,因为其仅考虑了短期的市场表现。

如何优化?

为了优化该策略,可以考虑加入更多指标进行筛选,例如市盈率、市净率等,以更全面地评估股票的投资价值。此外,可以考虑加入对股票的长期趋势的判断,例如通过分析股票的历史走势来确定其未来走势。

最终的选股逻辑

最终的选股逻辑如下:

def select_stock():
    # 获取所有A股股票的代码和基本信息
    stocks = get_stocks()
    
    # 初始化变量
    selected_stocks = []
    for stock in stocks:
        # 获取股票的今日增仓占比、前日实际换手率和macd零轴以上指标
        today_buy_percent = get_buy_percent(stock)
        yesterday_volume_ratio = get_volume_ratio(stock)
        macd_status = get_macd_status(stock)
        
        # 判断是否符合策略条件
        if today_buy_percent > 0.05 and yesterday_volume_ratio > 0.03 and yesterday_volume_ratio < 0.28 and macd_status == 1:
            # 将符合条件的股票加入到选股票池中
            selected_stocks.append(stock)
    
    # 返回选股票池
    return selected_stocks

python代码参考

def get_buy_percent(stock):
    # 获取股票的今日买入量占流通盘的比例
    today_buy_percent = get_buy_percent_from_yahoo Finance(stock)
    return today_buy_percent

def get_volume_ratio(stock):
    # 获取股票的前日实际换手率
    yesterday_volume_ratio = get_volume_ratio_from_yahoo Finance(stock)
    return yesterday_volume_ratio

def get_macd_status(stock):
    # 获取股票的macd指标
    macd_status = get_macd_status_from_yahoo Finance(stock)
    return macd_status

def get_buy_percent_from_yahoo Finance(stock):
    # 获取股票的今日买入量占流通盘的比例
    try:
        today_buy_percent = float(get_yahoo Finance_data(stock, 'volume', 'close').tail(1).values[0])
    except:
        today_buy_percent = 0.0
    return today_buy_percent

def get_volume_ratio_from_yahoo Finance(stock):
    # 获取股票的前日实际换手率
    try:
        yesterday_volume_ratio = float(get_yahoo Finance_data(stock, 'volume', 'close').tail(1).values[0])
    except:
        yesterday_volume_ratio = 0.0
    return yesterday_volume_ratio

def get_macd_status_from_yahoo Finance(stock):
    # 获取股票的macd指标
    try:
        macd_status = float(get_yahoo Finance_data(stock, 'macd', 'signal').tail(1).values[0])
    except:
        macd_status = 0.0
    return macd_status

如何进行量化策略实盘?

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

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

模板如何使用?

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

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

94c5cde12014f99e262a302741275d05.png

收益&风险
源码

评论