(同花顺量化)30日平均线向上_、机构抄底、今日增仓占比_5%

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

问财量化选股策略逻辑

今日增仓占比>5%,机构抄底,30日平均线向上

选股逻辑分析

这个策略的逻辑是基于三个条件来筛选股票:

  1. 今日增仓占比>5%:这个条件表示股票在最近一段时间内有明显的资金流入,表明市场对该股票的未来走势较为看好。
  2. 机构抄底:机构投资者通常比普通投资者更加专业和理性,他们的抄底行为往往能够提前反映市场走势。因此,如果机构投资者在近期出现了抄底行为,也表明市场对该股票的未来走势较为看好。
  3. 30日平均线向上:平均线是股票价格的趋势指标,如果平均线向上,则表明股票价格的趋势是上涨的。因此,如果股票的平均线向上,则表明股票价格在未来一段时间内可能会继续上涨。

有何风险?

这个策略的逻辑比较简单,但是仍然存在一些风险:

  1. 机构投资者的抄底行为并不总是准确的:机构投资者的抄底行为可能会受到市场情绪、政策因素等多种因素的影响,因此并不总是准确的。
  2. 资金流入并不代表股票价格上涨:资金流入只是表明市场对该股票的未来走势较为看好,但是并不一定代表股票价格一定会上涨。
  3. 股票价格的上涨趋势并不总是持续的:股票价格的上涨趋势并不总是持续的,可能会出现回调或者反转的情况。

如何优化?

为了降低这个策略的风险,可以考虑以下优化措施:

  1. 结合多个指标:除了上述三个条件之外,还可以结合其他指标,例如市盈率、市净率等,来更加全面地评估股票的价值和风险。
  2. 确定合理的买入和卖出时机:在买入股票之前,需要确定合理的买入时机,以避免在股票价格过高时买入。同样,在卖出股票之前,也需要确定合理的卖出时机,以避免在股票价格过低时卖出。
  3. 控制投资规模:在进行量化交易时,需要控制投资规模,以避免过度交易和风险集中。

最终的选股逻辑

最终的选股逻辑如下:

  1. 今日增仓占比>5%。
  2. 近期机构投资者出现了抄底行为。
  3. 股票的30日平均线向上。
  4. 结合市盈率、市净率等其他指标进行评估。
  5. 确定合理的买入和卖出时机。
  6. 控制投资规模。

以下是Python代码参考:

import talib
import pandas as pd

def get_strategy_data(data):
    # 获取今日增仓占比
    today_percent = data['net_flow'] / data['close'] * 100
    # 获取30日平均线
    ma30 = talib.MA(data['close'], timeperiod=30)
    # 获取机构抄底信号
    if data['turnover'] > data['turnover'].rolling(window=30).mean() * 1.5:
        signal = 1
    else:
        signal = 0
    # 统计今日增仓占比和机构抄底信号的出现次数
    today_percent_count = today_percent.count()
    signal_count = signal.count()
    # 计算平均数和标准差
    avg_today_percent = today_percent.mean()
    std_today_percent = today_percent.std()
    avg_signal = signal.mean()
    std_signal = signal.std()
    # 返回策略数据
    return pd.DataFrame({'today_percent': today_percent, 'ma30': ma30, 'signal': signal, 'today_percent_count': today_percent_count, 'signal_count': signal_count, 'avg_today_percent': avg_today_percent, 'std_today_percent': std_today_percent, 'avg_signal': avg_signal, 'std_signal': std_signal})

def apply_strategy(data, strategy_data):
    # 获取符合条件的股票
    selected = data[(data['net_flow'] > data['close'] * strategy_data['today_percent_count']) & (data['turnover'] > data['turnover'].rolling(window=30).mean() * strategy_data['signal_count']) & (data['close'] > data['ma30'])]
    # 计算股票的平均价格
    avg_price = selected['close'].mean()
    # 计算股票的平均市盈率和市净率
    avg_pe = selected['pe'].mean()
    avg_pb = selected['pb'].mean()
    # 返回策略结果
    return pd.DataFrame({'avg_price': avg_price, 'avg_pe': avg_pe, 'avg_pb': avg_pb})

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

# 获取策略数据
strategy_data = get_strategy_data(data)

# 应用策略
selected = apply_strategy(data, strategy_data)

# 输出结果
print(selected)

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

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

模板如何使用?

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


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

评论