"""
PE/PB分析模块使用示例

这个脚本演示了如何使用PE/PB分析模块分析单只股票的历史PE/PB分位数
"""

from .pe_pb_analysis import ValuationAnalyzer

def run_example():
    """运行示例"""
    # 创建估值分析器实例
    analyzer = ValuationAnalyzer()
    
    # 分析股票
    stock_code = 'SH603986'  # 工业富联
    result = analyzer.analyze_stock_valuation(stock_code,start_date='2024-01-01',industry_name='半导体')
    
    # 打印分析结果
    if not result['success']:
        print(f"分析失败: {result.get('message', '未知错误')}")
        return
    
    print(f"\n股票代码: {result['stock_code']}")
    print(f"股票名称: {result['stock_name']}")
    print(f"分析日期: {result['analysis_date']}")
    
    # 打印PE分析结果
    if 'pe' in result['metrics']:
        pe_data = result['metrics']['pe']
        print("\nPE分析结果:")
        print(f"当前PE: {pe_data['current']:.2f}")
        print(f"PE百分位: {pe_data['percentile']:.2f}%")
        print(f"历史最小值: {pe_data['min']:.2f}")
        print(f"历史最大值: {pe_data['max']:.2f}")
        print(f"历史均值: {pe_data['mean']:.2f}")
        print(f"PE曲线图: {pe_data['chart_path']}")
    
    # 打印PB分析结果
    if 'pb' in result['metrics']:
        pb_data = result['metrics']['pb']
        print("\nPB分析结果:")
        print(f"当前PB: {pb_data['current']:.2f}")
        print(f"PB百分位: {pb_data['percentile']:.2f}%")
        print(f"历史最小值: {pb_data['min']:.2f}")
        print(f"历史最大值: {pb_data['max']:.2f}")
        print(f"历史均值: {pb_data['mean']:.2f}")
        print(f"PB曲线图: {pb_data['chart_path']}")

    print("\n分析完成，图表已保存到results/valuation_analysis/目录下")
    
if __name__ == "__main__":
    run_example() 