paper2skills Playbook

Competitive Price Monitoring(竞品价格监测与响应)

Skill-Competitive-Price-Monitoring · 17-价格优化

causalexperimentoptimizationpricing广告与投放定价与利润风控与合规WF-B 广告优化WF-D 选品扫描WF-F 动态定价WF-G Listing内容优化
年化 ROI5-60 万元
实现难度⭐⭐☆☆☆
业务视角
适用角色定价负责人 / 运营负责人 · 选品负责人 · CEO
适用平台Amazon Buy Box 竞价策略 · 多市场价格协调 · Prime Day / Coupon 折扣优化
什么情况下用竞品突然降价,不知道该不该跟,跟了怕伤利润不跟怕丢 BSR;大促期间不知道折扣给多少,给多了利润没了
成功是什么样的实时监控竞品价格并自动触发调价,毛利率保持在目标区间,BSR 排名和利润同时兼顾
业务痛点
竞品降价了不知道要不要跟大促折扣给多少没有依据手动盯价格太累反应不及时新品上线定价高了还是低了

1. 解决的问题

竞品价格监测不只是"看别人卖多少钱",而是建立价格-转化率的因果响应模型,在竞品降价时量化"不跟降会损失多少"和"跟降能获得多少",做出有数据支撑的响应决策。

2. 核心算法逻辑

竞品价格监测不只是"看别人卖多少钱",而是建立价格转化率的因果响应模型,在竞品降价时量化"不跟降会损失多少"和"跟降能获得多少",做出有数据支撑的响应决策。

3. 业务应用场景

业务问题:5 个竞品(Momcozy/Medela/Spectra/Bellababy/Elvie)在 Amazon US 频繁调价。需要每日监测+自动预警+响应建议。

数据要求:每日竞品价格爬虫 + 我们的日销量数据(用于估计交叉弹性)

预期产出: - 竞品价格仪表盘:5 竞品 × 3 变体(单边/双边/穿戴式)价格热力图 - 预警规则:PCI > 1.10 且竞品降价 > 10% 时触发橙色预警 - 响应建议:预计不跟降损失 15-20% 日销量 vs 跟降 10% 保护份额但利润率降 3pp

4. 输入数据要求

请查看原始代码模板获取输入规格。

5. 输出结果

请查看原始代码模板获取输出规格。

6. 业务价值 / ROI

  • ROI 预估:优化竞品响应决策,每月节约 $2,000-5,000;年化 25-60 万元
  • 实施难度:⭐⭐☆☆☆(2 星)— 爬虫 + PCI 计算简单
  • 优先级评分:⭐⭐⭐⭐☆(4 星)— 跨境价格战是日常挑战

7. 代码模板

代码块数量:1 · 路径:未检测到

"""Competitive Price Monitoring — PCI 计算 + 响应决策"""

import numpy as np
from typing import List, Dict, Tuple


def price_competitiveness_index(
    our_price: float, competitor_prices: List[float]
) -> float:
    """价格竞争力指数"""
    if not competitor_prices:
        return 1.0
    return our_price / np.median(competitor_prices)


def estimate_cross_elasticity(
    our_sales: List[float], competitor_prices: List[float],
    window: int = 7
) -> float:
    """用滚动窗口估计交叉价格弹性"""
    if len(our_sales) < window * 2:
        return -0.8  # 默认值
    
    elasticities = []
    for t in range(window, len(our_sales) - window):
        comp_change = (competitor_prices[t] - competitor_prices[t-window]) / competitor_prices[t-window]
        sales_change = (our_sales[t+window] - our_sales[t]) / max(our_sales[t], 0.01)
        if abs(comp_change) > 0.01:
            elasticities.append(sales_change / comp_change)
    
    return np.median(elasticities) if elasticities else -0.8


def price_response_decision(
    our_price: float, our_cost: float, our_sales: float,
    competitor_prices: List[float], cross_elasticity: float = -0.8,
) -> Dict:
    """竞品响应决策"""
    pci = price_competitiveness_index(our_price, competitor_prices)
    min_comp = min(competitor_prices)
    
    # 场景分析
    if pci < 1.03:
        return {'action': 'maintain', 'pci': pci, 'reason': '价格有竞争力'}
    
    # 跟降 10% 的效果
    target_price = min_comp * 1.02
    price_drop_pct = (our_price - target_price) / our_price
    expected_sales_gain = cross_elasticity * (-price_drop_pct) * our_sales
    profit_change = (target_price - our_cost) * (our_sales + expected_sales_gain) - \
                    (our_price - our_cost) * our_sales
    
    if profit_change > 0 and price_drop_pct > 0.03:
        return {
            'action': 'match', 'target_price': round(target_price, 2),
            'pci': pci, 'expected_sales_gain': round(expected_sales_gain),
            'profit_change': round(profit_change), 'drop_pct': f'{price_drop_pct:.1%}'
        }
    elif pci > 1.10:
        return {'action': 'partial_match', 'pci': pci,

8. 论文来源

未自动抽取;请查看原始 Skill 卡片。