第一,本文不作为投资指南,币圈有风险,投资需要谨慎。
第二,本文无版权诉求,欢迎转载。
标题:
闭着眼睛买币跑赢大盘——币安分析报告
作者:先圣
前言:
我们之前都听说过,买大饼,囤BTC,定投实现财富自由等话术,我在寻找一个简单,便捷,有效的方式,用来投资或者理财。美股里面有标普500指数,他甚至被投资者称为“美国国运指数”,一般都是长牛。
我想找到一种类似于这种指数的东西,所以才有了本文。
我的一个想法是,首先投资的标,一定要多,这样就可以享受到整体上涨的红利。但是,不能什么乱七八糟的空气币都投资,我们需要一个类似于纳斯达克的强大中介,我想到了币安。
本期牛市中,BNB(币安平台通证)作为最亮眼的崽,已经向人们证明了币安的强大实力。所以,这也是为什么我不一开始就选择火币或者OK的原因,因为市场已经给出了答案。
这样我们找到了一个研究的方向,至于该怎么样做,我貌似已经有了一点眉目:收集统计币安的所有代币(包括名称,价格,市值,板块,上架时间,初始价格,首日收盘价,首日高点)来进行相关的分析,并且得出一份相对来说还算可靠的“结论”。
难点在于:
1:币安最少已经有200种以上的代币,如果要手动收集数据,不说价格会变化,而且消耗的时间会太长,得不偿失。
2:用什么样的价格来测试会显得比较真实可靠?
正文:
对于第一个问题,我想应该是没有人会去用手复制,粘贴的,毕竟至少200个项目,这么多的数据用手,不仅仅是累,而且还容易出错。
是时候拿出半瓢水的技术了,出来吧,我的宝贝——python。
至少为什么是python,因为他最简单(网上的教程大把大把的有)。
由于有一段时间没有用了,又去找点资料重新温习了一下,B站的视频貌似挺多的。
如果本文无图,请前往网站查看正版(大概是我懒得上传图片了):https://btcjjj.com/
如果你只想看结论,你可以跳过这一部分,点击目录即可。
1:获取币安代币信息
首先我们要知道币安的官网,我记得是:https://www.binancezh.com/
但是,考虑到墙的问题,我们换一个网址:https://www.binancezh.top/
后面的网址在国内也可以访问,所以本文就用后应该来做测试。
我们点击市场趋势,选择查看更多,这样就可以进入到币安的代币页面。
https://www.binancezh.top/zh-CN/markets
这样我们就获取到了全部的代币信息,该怎么做呢?
有人说,全部复制不就可以了,这貌似是一个方法。
以360浏览器为例,右键,审查元素。
我们选择网络,刷新网页,点击红色的圆圈,停止获取网络日志。(如上图所示)
然后我们在下面找到一个名字叫list的包。(先圣小课堂:list一般翻译为列表,目录)
1:我们可以选择XHR缩小范围,更有利于寻找。
2:找到我们需要的包list,点击打开(右侧展开)。
3:查看我们需要的信息:
我们得到了一个请求地址url,请求方式为get。后面编写的时候需要用到。
我们再查一下,响应的数据。
我们可以看到,有代币名称,因为1INCH是一个DEFI的代币。
而且还有389项数据,应该是390项,因为列表是从0开始计数的。
我们也可以直接用浏览器访问这个地址,他也会返回对应的数据,只是我们用肉眼不怎么好识别。
https://www.binancezh.top/bapi/composite/v1/public/marketing/symbol/list
我们用眼睛可以看到一些数据,如我上图用红圈圈框出来的,name:名称,price:价格,tag:标签等信息。
剩下的就是怎么样把他们提取出来了,找网上找了一些资料后,我们for遍历就可以了。
2:获取代币的初始价格
我们需要获取代币的上架初始价格,首日收盘价,首日高点,上架时间,这些方便我们后续的研究。
这里我们有3个价格的数据:
初始价格:币安定义的上架最初价格。
首日收盘价:代币上架交易日的收盘价。
首日高点:代币上架交易日的最高点。
首先,初始价格是不具备可靠性的,简单来说就是你不可能再初始价格的时候买到代币。
其次,首日高点是反理性的,既然你买不到最低点(一般是初始价格),也不应该买在最高点(相对)。
最后,我觉得首日收盘价是一个很有价值的参考:
1,这是一个你可以购买到代币的价格,不像初始价格,一般人根本抢不到,又何从谈起涨幅呢。
2,他也不是首日高点(相对较轻松一些),如果他是的话,那么代表一整天都是上涨的,这样的币买起来也放心。
所以,我接下来回用首日收盘价作为买入价格来进行分析,因为我觉得他很可靠。
那么,如何获取首日收盘价呢?
我们找到一个代币作为演示,就1INCH好了。
https://www.binancezh.top/zh-CN/trade/1INCH_USDT?layout=pro
我们可以看到,他是在2020年12月25日上线的。
初始价格:0.200
首日高点:3.089
首日收盘价:2.295
这些是我们可以用鼠标截图出来的,但是每一个都这样找未免也太难了。
老办法,还是右键,审查元素。
一样的刷新网页,抓包来查看。(参考正文1的步骤)
我们找到这个url:
https://api.yshyqxx.com/api/v3/klines?symbol=1INCHUSDT&interval=1d
为什么我会去看这个包呢?
因为他里面有交易对1INCHUSDT还有日期1d的相关字符。
结果也是显而易见的,在他里面有很多条数据,第一条数据就是记录首日的信息。
(我盲猜后面的数据都是日期的信息)
然后里面的1就是初始价格0.2,2就是首日高点3.89,4就是首日收盘价2.295,我们要的数据已经来了。
是不是还差一个什么,对,还少了一个上架日期(或者说首日交易日期)。
其实也有的,就是0,上图对应的1608854400000,这是一个毫秒级的时间戳,把他换成时间就是:
也就是2020年12月25日,和上面我们用手一个个翻到最前面的数据是一致的。
最后我们再看一下刚才的地址,你明白了吗?
https://api.yshyqxx.com/api/v3/klines?symbol=1INCHUSDT&interval=1d
把上面的1INCHUSDT换成任何一个交易对都是可以的,交易对是从步骤1里面提取的。
这一步貌似我们也完成了。
3:编写python代码
为了简化内容,我把代码上传到了github,非常简单的一个小爬虫。
python环境3.9.1
建议先安装模块requests,datetime,openpyxl
运行完成后会在python的目录生成一个名叫“币安.xlsx”的文件。
感兴趣的小伙伴可以自己去验证测试一下,这里就不过多的描述了。
https://github.com/tsl1997/Cryptocurrency/blob/main/binancezh.py
如果你访问不了上面的地址,可以尝试下这个由JSDelivr加速后的地址:
https://cdn.jsdelivr.net/gh/tsl1997/Cryptocurrency@main/binancezh.py
运行完成后,会得到一个这样的文件,由于我不知道该怎么样把tag取出来,因为有的币有多个标签,所以就单独取出来复制过去了,最后得到的文件是这样的。
文件已经打包上传到了GitHub:
https://github.com/tsl1997/Cryptocurrency/blob/main/%E5%B8%81%E5%AE%89.xlsx
或者下载在SC上面的备份文件:
https://siasky.net/DACvUmlNtKf9zrx2R0JM9WT-xXbr8GXEE26LPp5IFvBotQ
数据分析:
基本面一览:
1:本次爬取了多少个交易对?
390个交易对。
2:一共有多少个ETF?
38个ETF。(去掉ETF,原因是不做杠杆交易)
3:有多少个是USDT交易对?
265个USDT交易对。(去掉非USDT交易对)
为什么要去掉非USDT交易对呢?
因为部分BTC交易对数据是异常的,造成数据异常的原因是,价格我是取用的price,单位是美元。
但是BTC交易对的出售价格单位是BTC,所以造成了不存在的巨大涨幅,要剔除掉。
下图就是由于参数错误导致的“巨大涨幅”:
所以,这些异常的数据当然是不能再用了。
所以,我们的可用数据就是那265个交易对的数据。
当然,这里面也存在几个数据异常的,比如没有获取到当前价格,导致最后计算涨幅的时候是-100%。
我就当他们真的归零了算了。
4:基本涨幅是多少?
我用上面的265个交易对,每一个交易对买入定额的金钱。
假设每个交易对可以买入1块钱的份额。
那么,我们一共买入了265元,我们可以获得多少元呢?
答案是:4624元,金额是本金的17倍。
什么概念?
去年的最低点,2020年3月13日,BTC的最低价格是3782美元:
如果你在那个时候买入了BTC,肯定是在这两年的最低点。
即便如此,按照17倍的涨幅:3782*17=64294美元
除非你在之前的6.4万美元高点卖出才有可能获得17倍利润。
但是,这可能吗?
买在最低点,卖在最高点。这不符合人性的。
所以,一个可能荒谬的结论是,在币安买新币都要高过囤比特币的涨幅。
所谓:闭着眼睛买币跑赢大盘,不外如是。
当然,这可能也是牛市环境导致的,熊市说不定又是另外一个场景了。
一些有趣的数据:
最低调的跨链王者——COCOS
在上述的265个USDT交易对里面,COCOS以收盘价累计涨幅181989.83%,位居第一。
写到这里,我发现了一个问题。
COCOS怎么可能涨1800倍?
我发现了首日收盘价价格是:0.00034300
实际上的首日收盘价是:0.0021
也就是说,实际的涨幅只有:0.62/0.0021=295倍
既然意思到了错误,就要去修正错误,那错误的数据得出的结论自然也是错误的。
改错,重新获取代币初始价格:
我们得想想看问题出在哪里了?
我们想当然的认为,https://api.yshyqxx.com/api/v3/klines?symbol=1INCHUSDT&interval=1d这里返回的第一个数据就是初始时间和价格,现在看来貌似不是。
因为我刚好遇见了1iNCH是这样返回数据的,现在遇到COCOS就明显出现了问题。
错误数据:
上架时间:2020年5月9日
初始价格:0.000319
收盘价:0.000343
(我去确认过,在当天也的确是这个样子,但是这不符合我们投资的规则,我们不可能买在最低点。)
正确的数据:
上架时间:2019年8月21日
初始价格:0.0078
收盘价:0.0023
我们重新来获取这个数据:
很快我就发现了这个包的响应数据。
很明显,0.0078就是初始价格,0.00225(应该是约等于0.0023)就是收盘价,重要的是1566345600000转换成时间不就是2019年8月21日吗。nice!
但是应该令人头疼的问题是,这个请求头也未免太长了(还加入了时间戳)。
而且鬼知道他是什么时候上线的,难道要再去爬一次公告?
标准的请求URL:
然后我尝试着简化他的内容,比如把时间戳给去掉,他还会响应吗?
https://api.yshyqxx.com/api/v3/klines?symbol=COCOSUSDT&interval=1d&limit=1000
说干就干,尝试一下。
貌似成功了,未免再来分析一下请求的组成。
https://api.yshyqxx.com/api/v3/klines?symbol=COCOSUSDT&interval=1d&limit=1000
symbol可以看成是交易对标记。
interval是间隔,1d是时间一天。
limit是限制。
想到这里,我就感觉1000貌似小了一点,毕竟2017年的币安到现在也5年了,肯定不止1000天。
所以就干脆加上一个0,当10000算了。
https://api.yshyqxx.com/api/v3/klines?symbol=COCOSUSDT&interval=1d&limit=10000
同样访问成功。
为了保险起见,我们还要验证几个来看看,就验证之前表格里面离谱的几个吧。
验证数据:
AXSUSDT:
请求获取:
https://api.yshyqxx.com/api/v3/klines?symbol=AXSUSDT&interval=1d&limit=10000
DREPUSDT:
请求获取:
https://api.yshyqxx.com/api/v3/klines?symbol=DREPUSDT&interval=1d&limit=10000
FTMUSDT:
请求获取:
https://api.yshyqxx.com/api/v3/klines?symbol=FTMUSDT&interval=1d&limit=10000
TFUELUSDT:
请求获取:
https://api.yshyqxx.com/api/v3/klines?symbol=TFUELUSDT&interval=1d&limit=10000
DOGEUSDT:
请求获取:
https://api.yshyqxx.com/api/v3/klines?symbol=DOGEUSDT&interval=1d&limit=10000
LUNAUSDT:
请求获取:
https://api.yshyqxx.com/api/v3/klines?symbol=LUNAUSDT&interval=1d&limit=10000
MATICUSDT:
请求获取:
https://api.yshyqxx.com/api/v3/klines?symbol=MATICUSDT&interval=1d&limit=10000
CELRUSDT:
请求获取:
https://api.yshyqxx.com/api/v3/klines?symbol=CELRUSDT&interval=1d&limit=10000
ANKRUSDT:
请求获取:
https://api.yshyqxx.com/api/v3/klines?symbol=ANKRUSDT&interval=1d&limit=10000
ONEUSDT:
请求获取:
https://api.yshyqxx.com/api/v3/klines?symbol=ONEUSDT&interval=1d&limit=10000
从表格里面随机抽取的10个代币已经验证完成,都没有误差。
由此,我大概是可以相信这次是没有问题的,我重新改一下代码。
然后,就是把代码里面的15行稍微改一下下就可以了,会的人都会,不会的说了也不会。
数据分析-重写版:
首先,我们有390个交易对和相关的数据,其中有38个ETF,我们肯定要移除掉。
390-38=352个交易对
其中,USDT交易对有265个,ETH交易对有10个,BTC交易对有68个,BNB交易对有5个。
我数来数去,总感觉差了几个,然后我去把所有的标记了一下才发现,还真的少了几个。
BUSD有3个,USDC有1个。
265+10+68+5+3+1=352个
正好没错。
前文我们是剔除了BTC和ETH等非U的交易对,现在我们要保留他们,然后单独计算。
我们分别取一个现在的BTC,ETH,BNB的实时价格即可。
BTC:45000美元
ETH:3110美元
BNB:377美元
当然,也可以直接引用BTCUSDT交易对里面的BTC实时价格,其他的类似。
我举例说明:
ADXBTC交易对:
很明显ADX的美元价格获取到了,但是首日收盘价获取的是比特币价格,我们需要换算一个。
我们肯定是选择换算美元价格和实时的比特币价格,因为鬼知道2018年12月30日比特币的价格是多少。
当然,你也可以去获取2018年12月30日比特币价格,但是68个比特币交易对可能代表68个不同的上架时间。为了减少工作量肯定是直接引用实时的数据换算更加简单。
之前我们的计算方式是:(价格/首日收盘价)-1
对于BTC交易对的计算方式是:(价格/首日收盘价)/比特币实时价格 - 1
很快我意识到了不能这样的计算,因为BTC的价格是上涨的。
因为这样计算的后果是几乎没有正收益的,这大概率是不可能存在的。
我们必须麻烦一些,获取到比特币的不同时期价格,并且加入计算。
我有必要重新获取比特币的每日价格并且写成一个表格。
所以,这里暂时先去掉这些非U的交易对。
更新后的基本数据:
- USDT交易对:265个。
- 一般收益:每个投入1元,总投入265元,现价值2249元,是投资金额的8.48倍。
- 涨幅最高的是AXS:436倍
- BNB涨幅位居第六,涨幅63倍。
- 跌幅最大的是SUN,跌幅-99.84%。(-100%另算)
- 明星项目ICP已跌幅-86.25%排列倒数第三。(-100%另算)
- 阿斗柚EOS涨幅62.98%,排在中游,并没有那么差。
- 跨链项目:DOT涨幅947.24%,COCOS涨幅27480.86%。
8.48倍,感觉比不上比特币。
45000/8.48=5306.6
只要在5300美元以下买入比特币到现在是能跑过你购买这些新生代币的。
板块分析:
(基于265个USDT交易对数据)
NFT板块(47倍):
NFT板块包含17个代币,按照涨幅排列分别是:
1 | AXS 46327.49% |
假设每个新币上币首日收盘价时投入1元,共计投入17元,现在价值813元,是投资金额的47.8倍。
BSC板块(13倍):
BSC板块包含27个代币,按照涨幅排列分别是:
1 | COCOS 27480.86% |
假设每个新币上币首日收盘价时投入1元,共计投入27元,现在价值354元,是投资金额的13.12倍。
DEFI板块(3.6倍):
DEFI板块包含73个代币,按照涨幅排列分别是:
1 | LUNA 8080.73% |
假设每个新币上币首日收盘价时投入1元,共计投入73元,现在价值259元,是投资金额的3.55倍。
POW板块(6.5倍):
POW板块包含32个代币,按照涨幅排列分别是:
1 | DOGE 5694.59% |
假设每个新币上币首日收盘价时投入1元,共计投入32元,现在价值210元,是投资金额的6.5倍。
POS板块(18倍):
POS板块包含62个代币,按照涨幅排列分别是:
1 | COCOS 27480.86% |
假设每个新币上币首日收盘价时投入1元,共计投入62元,现在价值1169.7元,是投资金额的18.8倍。
波卡板块(3.1倍):
Polkadot板块包含6个代币,按照涨幅排列分别是:
1 | DOT 947.24% |
假设每个新币上币首日收盘价时投入1元,共计投入6元,现在价值18.75元,是投资金额的3.12倍。
存储板块(3倍):
存储(storage-zone)板块包含8个代币,按照涨幅排列分别是:
1 | BTT 627.15% |
假设每个新币上币首日收盘价时投入1元,共计投入8元,现在价值24.46元,是投资金额的3.05倍。
创新区板块(0.1倍):
创新区(innovation-zone)板块包含59个代币,按照涨幅排列分别是:
1 | ALPHA 1710.44% |
假设每个新币上币首日收盘价时投入1元,共计投入59元,现在价值5.57元,是投资金额的0.1倍。
PS:这并意味着创新区亏本了,恰恰相反只是盈利10%而已,因为在计算的时候全部是当成盈利计算的。
最后汇总:
NFT板块47倍
POS板块18倍
BSC板块13倍
POW板块6.5倍
DEFI板块3.6倍
波卡板块3.1倍
存储板块3倍
创新区0.1倍
以往的数据说明,创新区可能真的需要谨慎交易,毕竟这个盈利率……
连币安的创新区都是如此,一些兑换池就更加的不堪,垃圾币横飞。
有人可能和你说,唉,新币不行,但是他没有告诉你,怎么样的新币不行,为什么不行?
所以,我重新统计一下非创新区的币种,共206个。(206+59=265)
假设每个新币上币首日收盘价时投入1元,共计投入206元,现在价值2243元,是投资金额的10.89倍。
很明显,去掉创新区收益率都上来了。
非创新区的负收益币种:
1 | COS -10.43% |
某些人喜欢“抄底”可以继续买,最起码比首日收盘价要便宜,但是不推荐。
之前听说一姐把币安的上币组开除了,好像是老鼠仓还是啥的,获利6亿美金。
说实话,看了一下最近上的币,心里凉了半截。
2021年USDT交易对上币情况:
1 | USDP 2021-09-10 -0.02% |
共计76个代币,整体收益为负数:-9.27%。
都上的一些啥玩意???
我们去掉创新区的,还剩下37个代币,整体收益率为10%。
我们可以得到另外的一个结论:
牛市新上的币还是少买为好。
但是我们统计2020年的情况就是另外的一番场景,差不多有近10倍的整体涨幅。
2019年的有15倍整体涨幅。
2018年的有10倍整体涨幅。
所以,买币便宜在熊市,这的确也是道理。
更多的玩法大家可以自己去挖掘,用数据说话会比较有说服力。
(代码和表格数据在正文3里面已经更新了,可以使用和查看。)
最后,如果你现在还没有币安交易所的话,请务必注册一个:
https://accounts.binancezh.top/zh-CN/register?ref=47643068