Files
aiagents-stock/macro_cycle_agents.py
T
oficcejo 63628ffdd5 update
2026-02-27 15:15:49 +08:00

459 lines
17 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
"""
宏观周期分析 - AI智能体模块
包含四位专业分析师:康波周期分析师、美林时钟分析师、中国政策分析师、首席宏观策略师
"""
from deepseek_client import DeepSeekClient
from typing import Dict, Any
import time
import config
class MacroCycleAgents:
"""宏观周期AI智能体集合"""
def __init__(self, model=None):
self.model = model or config.DEFAULT_MODEL_NAME
self.deepseek_client = DeepSeekClient(model=self.model)
print(f"[宏观周期] AI智能体系统初始化 (模型: {self.model})")
def kondratieff_wave_agent(self, macro_data_text: str) -> Dict[str, Any]:
"""
康波周期分析师 - 判断当前处于康德拉季耶夫长波的哪个阶段
职责:
- 分析当前技术革命阶段(第五轮信息技术康波的位置)
- 判断回升/繁荣/衰退/萧条四阶段中的位置
- 分析大宗商品与康波的关系
- 给出战略性资产配置方向
"""
print("🌊 康波周期分析师正在分析...")
time.sleep(1)
prompt = f"""
你是一位资深的康德拉季耶夫长波周期研究专家,拥有深厚的经济史研究功底,深入研究过周金涛先生的"人生发财靠康波"理论。
以下是当前中国的宏观经济数据:
{macro_data_text}
请你基于康波周期理论,对当前全球和中国经济进行深度分析:
## 一、康波周期基础判断
### 1. 历史康波定位
回顾历史五轮康波周期(蒸汽机→铁路钢铁→电力化工→汽车计算机→信息技术),判断:
- 当前处于第五轮信息技术康波的哪个具体阶段(回升期/繁荣期/衰退期/萧条期)?
- 给出判断依据和关键特征
- 该阶段大约始于何年,预计持续到何年?
### 2. 技术革命驱动分析
- 第五轮康波的核心技术(互联网/移动互联网)是否已经进入红利消退期?
- AI人工智能、新能源、生物科技等是否有可能成为第六轮康波的驱动力?
- 新旧技术转换的当前进展如何?
### 3. 大宗商品与康波
- 当前大宗商品(黄金、原油、铜等)的表现是否符合康波阶段特征?
- 结合数据判断是否处于康波衰退期的大宗商品超级牛市阶段?
## 二、康波阶段特征验证
对照当前经济数据,验证是否符合你判断的康波阶段特征:
- GDP增速趋势是否匹配?
- 通胀水平(CPI/PPI)是否匹配?
- 资产价格(股市、房地产)走势是否匹配?
- 就业与社会情绪是否匹配?
- 政策环境是否匹配?
## 三、康波视角下的战略建议
### 1. 当前阶段的核心策略
- 整体应该进攻还是防守?
- 应该积累现金还是配置资产?
### 2. 战略资产配置方向
给出康波视角的大类资产配置建议:
- 股票(配置比例建议及方向)
- 债券(配置比例建议)
- 大宗商品/黄金(配置比例建议)
- 现金(配置比例建议)
- 房地产(配置建议)
### 3. 布局下一轮康波
- 如果第六轮康波即将到来,应提前布局哪些方向?
- 需要回避哪些夕阳产业?
### 4. 对普通人的人生建议
根据周金涛"人生发财靠康波"的理念,当前阶段普通人应该:
- 在职业选择上注意什么?
- 在投资理财上注意什么?
- 在消费与储蓄上如何平衡?
## 四、康波周期仪表盘
请给出一个简洁的康波定位总结:
- 🌊 当前康波阶段:[回升期/繁荣期/衰退期/萧条期]
- 📍 阶段进度:[初期/中期/末期]
- ⏱️ 预计本阶段剩余时间:约X年
- 🎯 核心策略关键词:[如"防守为主,播种未来"]
- ⚠️ 信心度:[1-10分]
请给出专业、深入、有数据支撑的分析报告。
"""
messages = [
{"role": "system", "content": "你是全球顶尖的康德拉季耶夫长波周期研究专家,深研周金涛的理论体系,擅长将60年长周期框架应用于当前经济形势分析,帮助投资者做出战略性决策。"},
{"role": "user", "content": prompt}
]
analysis = self.deepseek_client.call_api(messages, max_tokens=6000)
print(" ✓ 康波周期分析师分析完成")
return {
"agent_name": "康波周期分析师",
"agent_icon": "🌊",
"agent_role": "判断当前处于康德拉季耶夫长波(50-60年大周期)的哪个阶段,给出战略性资产配置方向",
"analysis": analysis,
"focus_areas": ["康波定位", "技术革命", "大宗商品超级周期", "战略资产配置"],
"timestamp": time.strftime("%Y-%m-%d %H:%M:%S")
}
def merrill_lynch_clock_agent(self, macro_data_text: str) -> Dict[str, Any]:
"""
美林投资时钟分析师 - 判断当前处于美林时钟的哪个象限
职责:
- 根据经济增长和通胀两个维度判断象限
- 结合中国特色(政策第三维度)
- 给出中短期资产配置建议
"""
print("⏰ 美林时钟分析师正在分析...")
time.sleep(1)
prompt = f"""
你是一位精通美林投资时钟理论的资深资产配置策略师,同时深入了解中国经济的特殊性,能够将经典美林时钟做"中国化改造"。
以下是当前中国的宏观经济数据:
{macro_data_text}
请基于美林投资时钟理论,对当前中国的经济周期进行分析:
## 一、经典美林时钟定位
### 1. 两大核心指标研判
**经济增长维度(↑/→/↓):**
- GDP增速趋势判断(同比、环比、PMI佐证)
- 工业增加值/制造业景气度
- 消费、投资、出口三驾马车的状态
- 综合判断:经济增长向上还是向下?
**通货膨胀维度(↑/→/↓):**
- CPI走势分析(核心CPI
- PPI走势分析
- M2/社融与信贷扩张情况
- 综合判断:通胀向上还是向下?
### 2. 象限定位
根据以上两个维度,判断当前处于美林时钟的哪个象限:
- 🟢 复苏期(增长↑ + 通胀↓)→ 配股票
- 🔴 过热期(增长↑ + 通胀↑)→ 配商品
- 🟡 滞胀期(增长↓ + 通胀↑)→ 持现金
- 🔵 衰退期(增长↓ + 通胀↓)→ 配债券
### 3. 时钟转动方向
- 当前正从哪个象限向哪个象限转动?
- 预计转动速度如何?(中国时钟转动通常比美国快)
- 是否存在"跳跃"或"逆转"的可能?
## 二、中国化美林时钟(三维分析)
### 1. 第三维度:政策方向
这是中国版美林时钟最重要的增量分析:
- 货币政策方向(宽松/中性/收紧?):分析LPR、MLF、准备金率等
- 财政政策方向(积极/稳健/收缩?):分析专项债、减税降费等
- 产业政策方向:重点扶持哪些领域?
- 房地产政策方向:放松还是收紧?
- 政策的即时效果和滞后效应
### 2. 中国特色修正
- 中国利率市场化程度对时钟的影响
- 政府干预对时钟转动的扭曲效应
- A股散户占比高对资产定价的影响
- 房地产作为"第五类资产"的配置考量
## 三、资产配置建议
### 1. 基于当前象限的配置
给出各大类资产的具体配置比例建议:
| 资产类别 | 配置比例 | 理由 |
|---------|---------|------|
| A股股票 | X% | ... |
| 债券/固收 | X% | ... |
| 大宗商品/黄金 | X% | ... |
| 现金/货币基金 | X% | ... |
| 房地产 | X% | ... |
### 2. 板块/行业建议
- 当前象限最受益的行业/板块(3-5个)
- 应规避的行业/板块(2-3个)
- "政策友好型"重点关注方向
### 3. 时间框架
- 当前配置建议的有效期约多久?
- 需要密切关注哪些信号来判断时钟转动?
## 四、美林时钟仪表盘
请给出一个简洁的定位总结:
- ⏰ 当前象限:[复苏期/过热期/滞胀期/衰退期]
- 📊 经济增长:[↑上行/→持平/↓下行]
- 📈 通胀水平:[↑上行/→持平/↓下行]
- 🏛️ 政策方向:[宽松/中性/收紧]
- 🎯 最优资产:[股票/商品/现金/债券]
- ⚠️ 信心度:[1-10分]
请给出专业、数据驱动的分析报告。
"""
messages = [
{"role": "system", "content": "你是一位精通美林投资时钟理论的顶级资产配置策略师,擅长将经典框架进行中国化改造,加入政策分析作为第三维度,帮助中国投资者做出精准的中短期资产配置决策。"},
{"role": "user", "content": prompt}
]
analysis = self.deepseek_client.call_api(messages, max_tokens=6000)
print(" ✓ 美林时钟分析师分析完成")
return {
"agent_name": "美林时钟分析师",
"agent_icon": "⏰",
"agent_role": "判断当前处于美林投资时钟的哪个象限(3-5年中短周期),给出资产配置建议",
"analysis": analysis,
"focus_areas": ["经济增长", "通胀水平", "政策方向", "资产配置"],
"timestamp": time.strftime("%Y-%m-%d %H:%M:%S")
}
def china_policy_agent(self, macro_data_text: str) -> Dict[str, Any]:
"""
中国政策分析师 - 分析中国特色政策环境
职责:
- 分析当前政策环境
- 评估政策对周期的影响
- 识别政策驱动的投资机会
"""
print("🏛️ 中国政策分析师正在分析...")
time.sleep(1)
prompt = f"""
你是一位资深的中国宏观政策研究专家,深谙中国经济的"有形之手"运作方式,擅长从政策信号中挖掘投资机会。
以下是当前中国的宏观经济数据和新闻:
{macro_data_text}
请从政策角度进行深度分析:
## 一、当前政策全景
### 1. 货币政策分析
- 央行近期操作解读(降准/降息/MLF/逆回购等)
- LPR利率走势及未来方向
- M2增速与社融规模分析
- 流动性环境评估:宽松/适度/偏紧?
- 对标历史政策宽松周期,当前处于什么阶段?
### 2. 财政政策分析
- 专项债发行规模和进度
- 减税降费政策力度
- 基建投资方向和力度
- 财政赤字率水平
- 是否有大规模刺激计划的信号?
### 3. 产业政策分析
- 当前国家战略重点方向(如AI、新能源、半导体、生物医药等)
- "专精特新"等政策支持力度
- 国产替代进展
- 数字经济/新质生产力政策
### 4. 房地产政策分析
- 限购限贷政策变化
- 房贷利率走势
- 保交楼/房企纾困进展
- 房地产政策的底线和目标
## 二、政策对周期的影响
### 1. 政策是"顺周期"还是"逆周期"
- 当前的政策是在托底经济还是防止过热?
- 政策的主要目标是什么(稳增长/防风险/调结构)?
### 2. 政策对美林时钟的扭曲效应
- 政策宽松是否可能让时钟"跳跃"?
- 政策刺激是否可能造成"短暂过热"的假象?
- 历史上类似政策环境下市场的表现
### 3. 政策拐点信号
- 需要关注哪些政策信号来判断下一步方向?
- 最可能的政策转向时间节点
## 三、政策驱动的投资机会
### 1. "政策友好型"资产
列出当前最受政策青睐的领域和方向
### 2. 政策支持的具体行业/板块
给出3-5个受益于当前政策环境的行业
### 3. 政策风险警示
哪些领域面临政策收紧或监管风险?
## 四、政策环境仪表盘
请给出简洁总结:
- 🏛️ 货币政策:[极宽松/宽松/中性/偏紧/收紧]
- 💰 财政政策:[大力刺激/积极/稳健/收缩]
- 🏭 产业政策重点:[3-5个关键词]
- 🏠 房地产政策:[大力托底/政策松绑/中性/调控]
- 🎯 政策核心目标:[一句话概括]
- ⚠️ 政策转向风险:[高/中/低]
请给出专业、深入的政策分析报告。
"""
messages = [
{"role": "system", "content": "你是一位资深的中国宏观经济政策研究专家,深入了解中国政府的经济调控方式和政策意图,擅长从政策中发现投资机会和风险。"},
{"role": "user", "content": prompt}
]
analysis = self.deepseek_client.call_api(messages, max_tokens=5000)
print(" ✓ 中国政策分析师分析完成")
return {
"agent_name": "中国政策分析师",
"agent_icon": "🏛️",
"agent_role": "分析中国特色政策环境,评估政策对周期的影响,识别政策驱动的投资机会",
"analysis": analysis,
"focus_areas": ["货币政策", "财政政策", "产业政策", "房地产政策", "政策拐点"],
"timestamp": time.strftime("%Y-%m-%d %H:%M:%S")
}
def chief_macro_strategist_agent(self, kondratieff_report: str, merrill_report: str, policy_report: str, macro_data_text: str) -> Dict[str, Any]:
"""
首席宏观策略师 - 综合三位分析师的观点,形成最终策略
职责:
- 整合康波、美林时钟、政策三个维度
- 构建"周期仪表盘"
- 给出最终的综合建议
"""
print("👔 首席宏观策略师正在综合研判...")
time.sleep(1)
prompt = f"""
你是一位顶级的首席宏观策略师,你需要整合三位分析师的报告,形成最终的综合判断和投资策略。
【康波周期分析师报告】
{kondratieff_report}
【美林时钟分析师报告】
{merrill_report}
【中国政策分析师报告】
{policy_report}
请你综合以上三份报告,进行最终的综合研判:
## 一、周期仪表盘(双指针+政策风向标)
构建一个完整的"周期仪表盘":
### 康波指针(战略方向)
- 当前阶段:[回升期/繁荣期/衰退期/萧条期]
- 阶段进度:[初期/中期/末期]
- 战略方向:[进攻/稳健/防守/极度防守]
### 美林指针(战术节奏)
- 当前象限:[复苏/过热/滞胀/衰退]
- 转动方向:向[下一个象限]转动
- 战术方向:[积极做多/获利了结/持币观望/配置债券]
### 政策风向标(中国特色)
- 政策方向:[强力宽松/宽松/中性/收紧]
- 对周期的影响:[加速/减缓/扭曲/逆转]
### 双指针共振分析
- 两个指针方向是否一致?
- 共振或矛盾意味着什么?
- 综合信号:[强烈看多/偏多/中性/偏空/强烈看空]
## 二、综合资产配置建议
### 1. 最终配置方案
结合康波(战略)+ 美林(战术)+ 政策(催化),给出最终的资产配置建议:
| 资产类别 | 推荐配置 | 康波逻辑 | 美林逻辑 | 政策逻辑 |
|---------|---------|---------|---------|---------|
| A股/港股 | X% | ... | ... | ... |
| 债券/固收 | X% | ... | ... | ... |
| 黄金 | X% | ... | ... | ... |
| 大宗商品 | X% | ... | ... | ... |
| 现金 | X% | ... | ... | ... |
| 房地产 | X% | ... | ... | ... |
### 2. 重点板块/方向(3-5个)
结合三个维度共振的最优方向
### 3. 风险警示
需要高度警惕的风险因素
## 三、不同人群的具体建议
### 1. 保守型投资者(风险厌恶)
- 资产配置建议
- 核心策略
### 2. 稳健型投资者(平衡风险收益)
- 资产配置建议
- 核心策略
### 3. 进取型投资者(愿承受风险)
- 资产配置建议
- 核心策略
## 四、核心观点总结
请用简洁有力的语言总结:
1. **一句话定位**:当前经济周期的核心判断
2. **核心策略**:用一句话概括应对策略
3. **最大机会**:当前最值得把握的方向
4. **最大风险**:最需要警惕的风险
5. **时间节点**:下一个重要的周期转折点大约在何时
## 五、周金涛名言对照
选择一句最契合当前阶段的周金涛名言,并解释为什么这句话适用于当下。
请给出权威、全面、可操作的综合策略报告。
"""
messages = [
{"role": "system", "content": "你是一位世界级的首席宏观策略师,擅长将康波长周期、美林投资时钟和中国政策环境三个维度有机结合,为投资者提供既有战略高度又有战术灵活性的综合投资策略。你的判断沉稳、客观、有数据支撑。"},
{"role": "user", "content": prompt}
]
analysis = self.deepseek_client.call_api(messages, max_tokens=6000)
print(" ✓ 首席宏观策略师综合研判完成")
return {
"agent_name": "首席宏观策略师",
"agent_icon": "👔",
"agent_role": "整合康波周期、美林时钟、中国政策三维分析,构建周期仪表盘,给出最终综合策略",
"analysis": analysis,
"focus_areas": ["周期仪表盘", "综合资产配置", "双指针共振", "分人群建议"],
"timestamp": time.strftime("%Y-%m-%d %H:%M:%S")
}
# 测试
if __name__ == "__main__":
print("=" * 60)
print("测试宏观周期AI智能体系统")
print("=" * 60)
agents = MacroCycleAgents()
print(f"模型: {agents.model}")
print("初始化完成")