前面几篇文章 https://www.fmz.com/digest-topic/10283 , https://www.fmz.com/digest-topic/10287 分别探讨了币种的涨跌与比特币的相关性关系、上线永续合约对价格的影响。本篇文章将继续探讨另一个影响币价的重要因素——市值,熟悉量化交易的读者应该知道A股市场有个最有效的因子——小市值。小市值股票轮动的表现非常逆天,远远超出了各种指数,感兴趣的可以自行了解下。那么小市值或者低价数字货币的价格表现如何呢?
这部分与前几篇文章用了同样的数据,就不重复了。
低价币种通常指单价较低的数字货币。这些币种由于价格低廉,对于小额投资者来说更具吸引力,大部分只看到价格的0很多,并不太在意市值多少,每少一个0意味着价格翻10倍,这对一些人非常具有吸引力,但同时也可能伴随着更高的价格波动性和风险。
首选照例看下指数的表现,同样的年初和年末两个牛市。每周选取价格最低的20个币种,结果和指数十分接近,说明低价并未提供太多额外的收益。
h = 1
lower_index = 1
lower_index_list = [1]
lower_symbols = df_close.iloc[0].dropna().sort_values()[:20].index
lower_prices = df_close.iloc[0][lower_symbols]
date_list = [df_close.index[0]]
for row in df_close.iterrows():
if h % 42 == 0:
date_list.append(row[0])
lower_index = lower_index * (row[1][lower_symbols] / lower_prices).mean()
lower_index_list.append(lower_index)
lower_symbols = row[1].dropna().sort_values()[:20].index
lower_prices = row[1][lower_symbols]
h += 1
pd.DataFrame(data=lower_index_list,index=date_list).plot(figsize=(12,5),grid=True);
total_index.plot(figsize=(12,5),grid=True); #总的指数
由于流通量一直在变化,这里的市值计算用的总供应量,数据来自Coincapmarket, 需要的可以申请下key。总共选取了市值前1000的所有币种,由于命名方式和未知总供应的原因,共取得了和币安永续合约重叠的205个币。
import requests
def get_latest_crypto_listings(api_key):
url = "https://pro-api.coinmarketcap.com/v1/cryptocurrency/listings/latest?limit=1000"
headers = {
'Accepts': 'application/json',
'X-CMC_PRO_API_KEY': api_key,
}
response = requests.get(url, headers=headers)
if response.status_code == 200:
return response.json()
else:
return f"Error: {response.status_code}"
# 使用你的API密钥
api_key = "xxx"
coin_data = get_latest_crypto_listings(api_key)
supplys = {d['symbol']: d['total_supply'] for d in coin_data['data']}
include_symbols = [s for s in list(df_close.columns) if s in supplys and supplys[s] > 0 ]
同样的每周市值最低的10个币种绘制出指数,和总的指数进行对比。可以看出小市值币种在年初的牛市中略好与总指数。但在9-10月的横盘中提前启动上涨,并且最终的涨幅远超过了总指数。
小市值币种通常被认为具有更高的增长潜力。由于它们的市值较低,即使是相对较小的资金流入也能引起价格的显著变动。这种潜在的高回报吸引了投资者和投机者的注意。当市场在底部时蠢蠢欲动时,小市值币种由于上涨阻力小,也往往能率先启动,甚至有可能预示这普涨的牛市即将开始。
df_close_include = df_close[include_symbols]
df_norm = df_close_include/df_close_include.fillna(method='bfill').iloc[0] #归一化
total_index = df_norm.mean(axis=1)
h = 1
N = 10
lower_index = 1
lower_index_list = [1]
lower_symbols = df_close_include.iloc[0].dropna().multiply(pd.Series(supplys)[include_symbols], fill_value=np.nan).sort_values()[:N].index
lower_prices = df_close_include.iloc[0][lower_symbols]
date_list = [df_close_include.index[0]]
for row in df_close_include.iterrows():
if h % 42 == 0:
date_list.append(row[0])
lower_index = lower_index * (row[1][lower_symbols] / lower_prices).mean()
lower_index_list.append(lower_index)
lower_symbols = row[1].dropna().multiply(pd.Series(supplys)[include_symbols], fill_value=np.nan).sort_values()[:N].index
lower_prices = row[1][lower_symbols]
h += 1
pd.DataFrame(data=lower_index_list,index=date_list).plot(figsize=(12,5),grid=True);
total_index.plot(figsize=(12,5),grid=True);
本文通过分析数据发现,低价币种并未提供额外的收益,其表现与市场指数相近.小市值币种的表现则大幅超过总指数的涨幅。下面给出了市值低于1亿U的合约币种列表供参考,虽然现在已经处于牛市。
‘HOOK’: 102007225, ‘SLP’: 99406669, ‘NMR’: 97617143, ‘RDNT’: 97501392, ‘MBL’: 93681270, ‘OMG’: 89129884, ‘NKN’: 85700948, ‘DENT’: 84558413, ‘ALPHA’: 81367392, ‘RAD’: 80849568, ‘HFT’: 79696303, ‘STMX’: 79472000, ‘ALICE’: 74615631, ‘OGN’: 74226686, ‘GTC’: 72933069, ‘MAV’: 72174400, ‘CTK’: 72066028, ‘UNFI’: 71975379, ‘OXT’: 71727646, ‘COTI’: 71402243, ‘HIGH’: 70450329, ‘DUSK’: 69178891, ‘ARKM’: 68822057, ‘HIFI’: 68805227, ‘CYBER’: 68264478, ‘BADGER’: 67746045, ‘AGLD’: 66877113, ‘LINA’: 62674752, ‘PEOPLE’: 62662701, ‘ARPA’: 62446098, ‘SPELL’: 61939184, ‘TRU’: 60944721, ‘REN’: 59955266, ‘BIGTIME’: 59209269, ‘XVG’: 57470552, ‘TLM’: 56963184, ‘BAKE’: 52022509, ‘COMBO’: 47247951, ‘DAR’: 47226484, ‘FLM’: 45542629, ‘ATA’: 44190701, ‘MDT’: 42774267, ‘BEL’: 42365397, ‘PERP’: 42095057, ‘REEF’: 41151983, ‘IDEX’: 39463580, ‘LEVER’: 38609947, ‘PHB’: 36811258, ‘LIT’: 35979327, ‘KEY’: 31964126, ‘BOND’: 29549985, ‘FRONT’: 29130102, ‘TOKEN’: 28047786, ‘AMB’: 24484151
marvingundam 可以在FMZ实现小市值策略吗