用正态分布预测车牌竞拍价格

首先声明,本文所提供的方法并不能保证以最低的价格竞拍成功,只提供一种报价的策略, 在保证大概率成功的情况下避免盲目溢价。

我是今年 5 月在深圳拍的车牌,用的就是这个方法成功拍到车牌,比最低价贵了一点,和平均价相差不是很多。

原理

首先我们需要一个假设前提,那就是车牌竞价系统遵循正态分布,即大多数人报价都在系统通报的第一次,第二次均价附近服从正态分布。

我们需要做的,就是确定这个正态分布函数的两个参数:standard_dev、Mean,再将我们自己报的价格放进去,计算最终落到竞拍成功的概率,只要这个概率大于某个值,则认为我们有十足的把握成功。

所以按照此方法,我们需要准备以下参数:

  1. Mean,正态分布的算术平均值。这个值就是系统报的均值。报价系统每天 12 点和 14 点会报两次均值,我们拿到这个均值赋值给 Mean 就可以了,不需要自己再计算。
  2. standard_dev,分布的标准偏差。这个值我们取最低成交价与均价的差值。这个参数需要我们自己估计,根据历史数据规律,预测出一个值来,预测得越准,后面计算的概率也就越准。
  3. 概率阈值,根据指标数量,以及竞拍人数,可以算出成功的概率(指标数 / 竞拍人数),指标数在官网有公布,是确定的一个值。竞拍人数需要我们自己来估计,按照历史参与竞拍人数趋势,预计这一期会有多少人参与。同样的,这个值估计得准不准,直接影响算法的准确性。

所以,我们可以确定的参数为:

  • 系统报价均值
  • 当前这一期指标数

需要自己估计的参数为:

  • 当前这一期参与竞拍的人数
  • 当前这一期成交后,最低成交价与平均报价的差值

后面这两个需要估计的参数,也不能拍脑袋瞎猜,最好的办法就是观察历史的数据,判断趋势。

比如说,如果前几期的竞拍人数都呈下降趋势,那么可以预测这一期竞拍人数相比上一期,也是下降的,下降多少的话,可以将前几期下降人数求个平均值。

所以第一步,咱们还是需要把历史所有竞拍数据给列出来,研究一番再说。

数据准备

官网上面有每一期竞拍的所有数据,包括多少人竞拍,多少个指标,最终成交人数,最低价、平均价等。网址是 http://xqctk.sztb.gov.cn/gbl/

我们需要从网站上面提取结构化的数据,放到 EXCEL 表格中去,这显然是个体力活,还好一个月一条数据,数据量不是很大。你也可以写脚本从网页上自动提取信息。

我当时提取了截止到 2018 年 4 月的所有数据,整理到表格中,示例数据如下图:

我将我整理好的数据共享给大家,完整的 EXCEL 文件,见文末的下载链接。

有了历史数据,我们可以画一个趋势图,看看数据趋势大概是怎么样的:

竞拍人数

最低成交价

平均成交价

有了历史数据,可以自己按照上面的计算方法,预算出下一期竞拍人数和成交价偏差。

用 EXCEL 公式计算概率

由于 EXCEL 本身自带有现成的正态分布计算函数,所以就不用再编程啦,直接设置一下单元格的格式就搞定。

EXCEL 中的 NORMDIST 函数使用文档参见 这里

我制作完成后 EXCEL 计算部分是下图这个样子的:

这里解释下一些单元格的值:

  • A50,系统报的均价,刚开始自己填一个预测值,后面系统有报价后,就更新一下
  • B50,自己估计的偏差估计值,见上文
  • C50,是你自己打算出的价格,调整这个值,后面 D50 的概率值会跟着变化
  • D50,计算出来的正态分布概率,这个单元格内容是公式:=NORMDIST(C50,A50,B50,TRUE)*100
  • I43,流拍人数,就是上一期未能成功拍到车牌的那帮人,我们假设他们还会在这一期参与竞
  • I44,我们预测的最终参与当前这期竞拍人数
  • J44,当前车牌指标数量
  • I45 与 J45,分别是指标数除以竞拍人数,也就是 1- J44/I43 和 1-J44/I44
  • I47,上一期的均价偏差,与 E40 值相等

单独再说明一下 I46、J46 两个均价概率的值。竞价系统给报的均值,是去掉了最高最低的10%,取中间的80%均价做参考,所以我们用均价来做正态分布的话,必须把这一点考虑进去。

比如说,现在我们计算出来均价概率是 20%,也就是前 20% 出价的人会拿到车牌,如果你按这个概率去出价,多半会失败,因为系统还保留了 10% 的最高价,他们价格都比你高,所以你一下子真实排名就到 30% 了。

所以,表格里通过 I45 的出局概率,来计算 I46 的均价概率,我们预留了 10% 的安全边际,也就是:

  • 100% – 10% – 75.1283562% = 14.8716438%
  • 100% – 10% – 72.7725053% = 17.2274947%

最后,我们得出概率落到 I50 、J50 这两个值 ,也就是 87% 到 90% 之间,基本上就保证可以成功。

剩下的,你就不断调整 C50 单元格的价格,一直到超过 D50 单元格的概率刚好超过 87%,这时候的价格,就应该是你竞拍的价格。

操作流程

本文的方法需要有三次报价操作。

  1. 最开始,第一次报价需要自己预估一个均价(A50),算出你的价格,报上去。
  2. 等中午 12 点,系统报了第一次均价,用系统报的值,替换 A50 单元格的值,重新算一个价格,报上去。
  3. 等下午 2 点第二次报均价时,再重复上面的步骤,最终报一个价格。

大家可能觉得,直接等到下午 2 点的时候,操作第 3 步不就完了么?

是的,可以这样。但是为了稳妥起见,如果两人出价相同,系统就选最早出价的那个人,所以我建议大家出价的时候越早越好,分三次不断调整比较科学,不会大意。

最后,竞拍这个事情本来就属于混沌系统,是不可预测的,不管什么方法,只能尽可能的靠近最终结果,黑天鹅事件也会发生。但至少有了一些理论,总归目标清晰得多,也不会胡乱猜测。

我的方法也参考了网上很多文章,不是百分百原创,仅供参考。

附:截止2018年4月的历史数据.excel