量化交易选股策略-上周涨跌幅大于0、开盘涨幅大于小于5、毛利率大于19

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

问财量化选股策略逻辑

以上面的选股逻辑,我们首先筛选出了上周涨跌幅大于0的股票,然后从中选择开盘涨幅大于小于5的股票,最后再从这些股票中选择毛利率>19的股票。

选股逻辑分析

这种选股逻辑的优点是能够有效地过滤掉市场中的大部分股票,从而提高投资的成功率。但是,这种逻辑也存在一定的局限性,比如可能会错过一些质地优秀但涨幅不大的股票,或者在短期内受到市场情绪影响导致的大幅度波动。

有何风险?

这种选股逻辑的风险主要包括两个方面:一是由于样本量较小,可能会出现偏差;二是可能会因为过度依赖历史数据而导致模型的预测能力下降。

如何优化?

对于第一种风险,我们可以尝试扩大样本量,或者引入更多的因素来辅助决策;对于第二种风险,我们可以考虑使用机器学习的方法来提升模型的预测能力。

最终的选股逻辑

综合以上分析,我们可以得出以下的最终选股逻辑:

def select_stock():
    # 筛选出上周涨跌幅大于0的股票
    stock_0 = get_stocks_with_weekly_return(0)
    
    # 筛选出开盘涨幅大于小于5的股票
    stock_1 = get_stocks_with_opening_return(stock_0, 5)
    
    # 筛选出毛利率>19的股票
    stock_2 = get_stocks_with_marginal_profit_rate(stock_1, 19)
    
    return stock_2

常见问题

  1. 什么是选取上周涨跌幅大于0的股票?
  2. 为什么需要筛选开盘涨幅大于小于5的股票?
  3. 什么是毛利率?
  4. 为什么需要筛选毛利率>19的股票?
  5. 这个选股逻辑是否能保证一定能选到好的股票?
  6. 有没有更好的选股方法?

python代码参考

import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression

# 假设df是包含所有股票信息的数据框
df = pd.read_csv('stock_data.csv')

# 获取上周涨跌幅大于0的股票
stock_0 = df[df['weekly_return'] > 0]

# 获取开盘涨幅大于小于5的股票
stock_1 = df[(stock_0['opening_return'] > 0) & (stock_0

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

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

    模板如何使用?

    点击页面下方的复制按钮,复制到自己的账户即可使用模板进行回测。


    
收益&风险
源码

评论