泡泡玛特2021半年报:IP强劲增长,多渠道盈利提升

需积分: 0 0 下载量 105 浏览量 更新于2024-08-04 收藏 681KB PDF 举报
光大证券的港股公司研究报告对泡泡玛特(股票代码:09992.HK)2021年上半年业绩进行了点评。报告指出,泡泡玛特的IP孵化能力和多渠道扩展策略表现出色,公司的业绩实现了显著增长。 首先,从IP孵化能力来看,泡泡玛特的老IP如Molly、DIMOO、Pucky和themonster继续保持强劲增长,尤其是新IP Skullpanda(SP)和Bunny的出现,其中SP凭借熊猫热潮单系列取得显著成功,收入达到9280万元。Bunny作为非头部品牌,通过与美妆等领域合作,显示出公司在用户洞察和IP运营上的优势,有助于推动平台化发展,构建更稳定的商业模式。 其次,Mega大娃系列作为公司新推出的高价位产品线,其限量版的销售情况超出预期,表明IP在大娃、BJD(球体关节娃娃)和衍生品市场的潜力正在逐步释放。尽管泡泡玛特在维护IP价值方面采取了谨慎策略,但随着粉丝运营和渠道拓展的加强,未来IP价值有望得到更大的市场认可。 在销售渠道方面,泡泡玛特的零售店、线上销售、机器人店和批发业务均实现两位数的增长,显示出多渠道齐头并进的发展态势。公司会员数量达到1142万人,复购率高达49%,显示出强大的用户粘性和线上活跃度。零售业态的优化以及线上探索的成功,使得泡泡玛特能够更有效地触达多元化的用户群体。 总结来说,泡泡玛特凭借强大的IP开发实力和多渠道的业务拓展,实现了2021年上半年业绩的显著增长,展现出稳健的业务模式和广阔的发展前景。分析师朱悦维持了对公司“增持”的评级,并给出了当前股价52.15港元的评估。投资者可以关注泡泡玛特在IP创新、渠道拓展和粉丝经济方面的持续发展动态。

class MainLogic extends GetxController { @override void onInit() { getPositionList();/*获取持仓列表*/ } /// 获取持仓列表 getPositionList({ispush = 0, withLoading = false}) async { if (await DBManager.getInstance().isStockLogin()) { TradeInfoApi.getTradePositionList((data) { RespStockPositionList respStockPositionList = data; state.positionList.clear(); respStockPositionList.data.forEach((element) { state.positionList.putIfAbsent(element.innerCode, () => element); }); //发出一个EventPositionRefreshOver()事件---->刷新持仓列表 eventbus.fire(EventPositionRefreshOver()); subscribePosition();/*订阅持仓列表行情*/ calculationStockInitYK();/*计算证券初始盈亏*/ if (respStockPositionList.data.isEmpty && withLoading) SmartDialog.showToast('暂无数据'); update(["UnitAsset"]); }, onError: (error) { SmartDialog.showToast(error.msg); }, ispush: ispush, withLoading: withLoading); } } } class TradePositionLogic extends GetxController { @override void onInit() { streamPositionOver = eventbus.on<EventPositionRefreshOver>().listen((event) { filterPositionList();/*筛选持仓列表*/ }); } /// 筛选持仓列表 filterPositionList() { state.positionNode.requestFocus(); state.showPositionList.clear(); switch (state.positionListType.value) { //全部 case 0: state.showPositionList.addAll(state.mainState.positionList.values); break; // 港股 case 1: state.mainState.positionList.values.forEach((element) { if (element.type == 1) state.showPositionList.add(element); }); break; case 2: // 人民币 state.mainState.positionList.values.forEach((element) { if (element.type == 3) state.showPositionList.add(element); }); break; } update(); } } 请用中文为我解释filterPositionList()被调用了吗?它是怎么被调用的

2023-06-08 上传