首页 涨停板 正文

新股上市一般几个涨停(中签股票会有几个涨停)

wx头像 wx 2022-03-14 11:31:40 6
...

A股一直有新股不败的神话。打新股几乎是稳赚不赔的生意。但是新股中签率一般只有万分之一到五之间。中国电信是最容易打中的新股之一新股上市一般几个涨停,中签率也只有0.95%。既然新股如此难中新股上市一般几个涨停,我们能否退而求其次,在二级市场上参与新股的投资?

实际上,作者提出这个问题,是受三峡能源的启示。三峡能源低价上市,上市第三天即打开涨停板,给了普通投资者一个非常好的参与的机会。如果当天上车,后面短短7个交易日,出现了几乎翻倍的行情。关键是,能否提前预测出新股的价格?如果不能,那么参与新股炒作,无疑只是一种赌博而已。

新股上市一般几个涨停

这篇文章探索了通过机器学习模型预测新股上市前几日表现的问题。我们通过模型预测新股上市前几日的收益率,分别就以下四种情况,做出了四个模型新股上市一般几个涨停

非注册制新股,预测有多少个涨停板,这样可以从第一天就参与进来。预测时间为上市前。非注册制新股上市首日收盘后,预测还有多少个涨停板。有了真实交易数据,可以对前一个模型进行修正,预测结果可能更准确。注册制新股,从上市之日起,不回调的情况下,最高涨幅是多少?预测时间为上市前。同上,预测时间为上市首日收盘后。结合当日数据,进行修正。

在上市交易前进行预测的模型,我们称之为零日模型(zero),在上市后进行预测的模型,则称之为day one模型。

数据采集

新股数据可以从东方财富网上抓取。从网上抓取的数据中,我们主要关心的是以下几个字段:

发行总股数网上发行总股数顶格申购配市值申购上限发行价格中签率发行市盈率行业市盈率询价累计报价倍数和配售对象报价家数

上述字段为两种模型共用。

day one模型还需要的字段有:

上市首日开盘价上市首日收盘价上市首日涨幅上市首日换手率

预测目标则分别是连续涨停的一字板数,以及最高涨幅(连续上涨至首次回调前)。这样我们大概能得到2700条左右的数据。这个数据量,也只能使用机器学习模型来进行训练了。

其中注册制新股的数据还要更少一点。所以在训练注册制新股预测模型时,我们将连续一字板涨停、及以后不回调情况下的上涨出现的最高点数据作为target,来进行训练,这样可以也能得到2000多条数据。当然,涨停板有助涨助跌的效果,这样换算的数据,应该不是最佳的。

模型训练

首选的模型当然是xgboost。由于我们要预测的对象,无论是连续板个数,还是最高涨幅,都不具有类别属性,因此,这是一个回归问题,我们需要采用回归模型。

新股上市一般几个涨停

为了找出最佳超参数,我们直接使用了grid search的方法,并且在构造RandomizedSearchCV时,传入`refit=True`。这样一旦最佳超参数确立,RandomizedSearchCV还将使用最佳超参数训练出最佳模型。然后我们保存这个模型,即可用于此后的预测。

在sklearn的grid search方法中,带CV字样的,表明它使用了cross validation方法,这也是在样本量不足的情况下,常用的一种方法。

它的原理是,正常情况下,为了防止data leak,我们在训练前,将数据划分为train、validation和test三个子集。训练时只使用train和validation数据集,训练完成后,再用test来测试一下,该模型对从未见过的数据,其效果如何。

但这样做也会导致validation的数据无法用于训练,从而使得小样本数据量下,训练更是捉襟见肘。所以我们使用cross validation的方法,只将数据划分为train和test两个数据集,在train数据集中,再滚动划分train和validation子集。当一部分数据(n-1)/n用于训练时,另一部分数据(1/n)用以验证,然后再进行轮换。

上述代码中,使用了三分法(`cv=3`),即每次使用1/3的数据用以验证。在超参数指定的空间里,我们又将其划分为100个迭代进行参数搜寻。因此上面定义的`search`对象,实际上会进行300次训练。

如果有GPU可以用的话,在定义model时,可以加上这样的参数,以启用GPU:```model = XGBRegressor(tree_method='gpu_hist')```这样训练的速度要提升几倍(当然远不及深度学习那样提升得多)。

结果评估

我们先感性地认识一下预测与真实值之间的差异:

新股上市一般几个涨停

day-one模型预测结果

新股上市一般几个涨停

zero模型预测结果

可以看出,day-one模型由于有了真实交易数据,预测结果比较准确;zero模型也不算差。

不过,究竟这两个模型的误差有多大呢?我们还需要通过定量的方法来评估一下。在训练时我们使用了RMSE(这是regressor默认的loss)。但在结果评估时,为了更直观地理解误差大小,我们使用了MAE(mean absolute error),即预测值与真实值之间的绝对值误差。

新股上市一般几个涨停

MAE

这个结果好得令人难以置信。特别是day-one模型,平均误差仅为0.48个板!当然,这个数据是在全体非注册制新股记录中获取的,它们有一部分已经参与了训练,可能发生data leak。但是,在训练结束后,通过计算在test数据集上的MAE,我们得到day-one模型的误差仅为0.45,确实是相当好的结果。

几点思考

股价预测是一件很难的事。为什么我们的模型可以很好地预测新股上市的涨停板个数?这很可能跟当前的发行制度有关。新股流通股的持有者主要是机构,机构关于定价,有自己的固有逻辑,因此,股价较为确定。这是股价可以预测的客观因素。只有当一件事有规律可寻,我们才能发现规律。如果股价真的是随机的,不确定的,那么无论用什么样的方法,都是无法预测的。

这件事的第二个意义就是,在股票市场上,一定存在着在某些条件下,证券有确定的定价的情况。因此,大力使用机器学习和深度学习的方法,完成可能找到这些场景下的套利机会。

第三点思考的则是一则坏消息。尽管涨停板的个数可以准确地预测,但对于散户来讲,新股即使是上市以后,仍然很难买到。这个模型的主要作用,一是对机构和有VIP通道的大户有用;二是对于中签的散户,可以提前知道大概应该何时下车。

本文地址:https://www.changhecl.com/111304.html

退出请按Esc键