春节红包效应在A股存在吗?

本文作者董春秋,公众号春秋金经,首发于http://www.chunqiujinjing.com/article/36.html

我炒股的这些年,我发现一个规律,就是每次到春节前后,中国股市的行情一般都会很好。那么这种春节红包行情究竟是我的错觉,是幸存者偏差,还是真的在A股中存在呢?

今天我带大家,一探究竟。

我统计了历史十几年的数据,我对2006年到2019年的数据做了一个测试,在春节前一周买入,春节后一周卖出,发现确实存在春节红包行情!看下图,可以看出不管熊市还是牛市,只有2013年的春节前后赔钱了,在其他的时间段几乎都是大幅赚钱的!就算是在2018年的熊市,春节前后的行情也是一个持平的状态。平均每年的春节前后,能赚4%左右。

所以持有股票的朋友,安心过节就可以了,赔钱的概率极低!没有上车的朋友,赶紧上车!还没有开户的朋友,股票万1.5佣金,不限资金量开户,请看我上一篇文章。如果失效,可以关注公众号春秋金经,在后台回复“开户”获取。

为何A股会存在春节红包的行情?

我来当一个事后诸葛亮,强行解释一波:

1 春节前,货币流动性阶段性回暖。比如银行在年初获得了新的贷款额度,据统计每年的1月份,是新增贷款的高峰。

2 热钱流入股市。大多数公司都有在春节前发年终奖的好习惯!再加上上个月的工资,股民们一般都能多出很多的流动资金。股民们可支配的资产多了,难免忍不住投入一部分到股市,拉升大盘;还有一方面,在一季度,许多公募基金会集中建仓,还会有很多新的公募基金发售。

3 春节前后属于政策空窗期,人们往往会比较乐观,会预期未来出台一些利好政策。全国人民欢天喜地过大年,市场对春节附近出台的政策文件也往往倾向于正面解读,整体上的效果就是大家的风险偏好提高了。

持股过节,该投资哪些行业板块的股票?

我先从一个普通人的角度,做一个不负责任的假设:我认为服装行业、酒类行业、家电行业、食品行业、医药行业这些大消费行业的行情会超出平均。

毕竟到了春节,每个人都要买新衣服嘛!尤其是小孩子,必须换新的童装!男人也会换西装。西装:海澜之家,童装:森马服饰。

春节聚会比较多,聚会能少的了酒吗?不能够吧!亲朋好友聚会,能少得了茅台、五粮液、泸州老窖?酒类行业中的白酒行情也会比较好!

至于家用电器,因为传统上过完春节新的一年又开始了,新年新气象,彩电、冰箱、洗衣机该换新的都换新,也会赢来一波行情!比如公认的大白马蓝筹:格力电器和美的集团两兄弟;

食品行业就更不需要多解释了,谁家看春晚的时候不嗑瓜子、不吃花生?对洽洽食品、三只松鼠是利好!

至于医药行业,大家过年电视看多了免不了近视,酒喝多了,瓜子、糖吃多了,免不了脂肪肝、酒精肝、糖尿病什么的,那不就该吃药、体检、看病了吗?医药:恒瑞医药,医疗器械:迈瑞医疗,体检:美年健康,眼睛:爱尔眼科。

本文作者董春秋,公众号春秋金经,首发于http://www.chunqiujinjing.com/article/36.html

哈哈,上面都是不负责任的胡扯,仅图一乐呵。

最后,股市有风险,投资需谨慎。

点击左下角”阅读原文”,获取本文中的量化代码。

# 导入函数库
from jqdata import *

# 初始化函数,设定基准等等
def initialize(context):
    # 设定沪深300作为基准
    set_benchmark({"000001.XSHG":0})
    # 开启动态复权模式(真实价格)
    set_option('use_real_price', True)
    # 输出内容到日志 log.info()
    log.info('初始函数开始运行且全局只运行一次')
    # 过滤掉order系列API产生的比error级别低的log
    # log.set_level('order', 'error')

    ### 股票相关设定 ###
    # 股票类每笔交易时的手续费是:买入时佣金万分之三,卖出时佣金万分之三加千分之一印花税, 每笔交易佣金最低扣5块钱
    set_order_cost(OrderCost(close_tax=0.001, open_commission=0.0003, close_commission=0.0003, min_commission=5), type='stock')

    ## 运行函数(reference_security为运行时间的参考标的;传入的标的只做种类区分,因此传入'000300.XSHG'或'510300.XSHG'是一样的)
      # 开盘前运行
    run_daily(before_market_open, time='before_open', reference_security='000300.XSHG')
      # 开盘时运行
    run_daily(market_open, time='open', reference_security='000300.XSHG')
    
## 开盘前运行函数
def before_market_open(context):
    g.chunjie_list = [('2006-01-23','2006-02-11'),
    ('2007-02-12','2007-03-03'),
    ('2008-01-31','2008-02-20'),
    ('2009-01-19','2009-02-07'),
    ('2010-02-05','2010-02-20'),
    ('2011-01-27','2011-02-15'),
    ('2012-01-15','2012-02-04'),
    ('2013-02-04','2013-02-23'),
    ('2014-01-23','2014-02-15'),
    ('2015-02-11','2015-03-04'),
    ('2016-02-01','2016-02-20'),
    ('2017-01-20','2017-02-11'),
    ('2018-02-08','2018-03-02'),
    ('2019-01-28','2019-02-16'),
    ]
    pass

## 开盘时运行函数
def market_open(context):
    
    flag = judgeFlag(context.current_dt)
        
    cash = context.portfolio.total_value
    if flag:
        order_target_value('000300.XSHG',cash)
    else :
        order_target_value('000300.XSHG',0)
        
def judgeFlag(date):
    for i in range(0,len(g.chunjie_list)):
        start = datetime.datetime.strptime(g.chunjie_list[i][0], '%Y-%m-%d')
        end = datetime.datetime.strptime(g.chunjie_list[i][1], '%Y-%m-%d')
        if start < date and date < end:
            return True
        
    return False