refactor: 重构项目结构和文件组织

- 将文档文件移动到docs目录下分类存放
- 将测试文件移动到tests目录
- 将工具脚本移动到tools目录
- 更新README中的文件路径说明
- 删除重复和过时的文件
- 优化项目目录结构,提升可维护性
This commit is contained in:
ben
2025-08-22 16:52:17 +08:00
parent 51576ebb6f
commit 76306f2c8e
48 changed files with 4439 additions and 146 deletions

View File

@@ -0,0 +1,114 @@
# 方案GameFi“盘下特征”量化及FSM状态转移集成
**制定者:** Gemini
**日期:** 2025-08-21
**目标:**`GAMEFI_SYSTEM_SUMMARY.md`中定义的“交易者心境”和“十二长生”四季轮回概念转化为可量化的数据模型并将其作为“太公心易”FSM系统状态转移的核心驱动条件。
---
## 1. 核心思想
交易者的心境、经验和偏见是驱动其市场行为的“盘下特征”。通过量化这些特征我们可以让主FSM的决策更具个性化和前瞻性。当检测到交易者进入特定的心理阶段如“秋季失道”或表现出强烈的偏见如“趋势醉”FSM可以主动进入相应状态`Refine``Validation`)进行干预和辅助。
## 2. “盘下特征”量化方案
我们将构建一个**“交易者状态向量”Trader State Vector, TSV**来统一描述交易者的当前心境。该向量由以下三组量化指标构成:
### 2.1. **伤疤资本 (Scar Capital)** - 经验与教训的量化
基于`TradingScar`概念,我们将从交易历史中计算以下指标:
* **总痛苦值 (TotalPain):** 所有`TradingScar``pain_level`之和。反映交易者经历的总挫折。
* **平均智慧 (AverageWisdom):** 所有`wisdom_gained`的平均值。反映交易者从错误中学习的能力。
* **伤疤密度 (ScarDensity):** 单位时间(如每季度)内产生的`TradingScar`数量。高密度可能意味着鲁莽或市场环境恶化。
* **恢复能力 (Resilience):** 从重大亏损(高`pain_level``Scar`)后,恢复盈利所需的时间。
### 2.2. **偏见画像 (Bias Profile)** - “醉八仙”的量化
通过分析交易行为为每个交易者生成一个包含八种偏见得分0到1之间的画像
* **趋势醉 (蓝采和):** 在价格接近阶段性高点时买入的频率和资金比例。
* **价值醉 (汉钟离):** 在亏损头寸上持续加仓(“补仓”)的行为频率。
* **消息醉 (曹国舅):** 在重大新闻或财报发布窗口期内,交易频率显著上升。
* **经验醉 (张果老):** 策略的同质性过高,例如只交易特定几只股票或只使用单一指标。
* **技术醉 (韩湘子):** 交易行为与特定技术指标如MACD金叉/死叉)的强相关性。
* **保守醉 (何仙姑):** 空仓时间占比过高,或在明显上涨趋势中过早卖出。
* **逆向醉 (铁拐李):** 在市场普遍下跌时买入,或在普遍上涨时卖出的频率。
* **理性醉 (吕洞宾):** 交易频率极低,可能错失过多机会(机会成本)。
### 2.3. **修仙阶段 (Journey Stage)** - “猴王四季”的量化
结合**伤疤资本**和**偏见画像**,我们可以为交易者划分出当前的“修仙”阶段:
* **春季·觉醒 (Awakening):**
* `TotalPain`较低,`ScarDensity`较低。
* `AverageWisdom`较高(学习意愿强)。
* 偏见画像尚未固化。
* **夏季·得道 (Attainment):**
* 交易胜率高,账户稳定增长。
* `AverageWisdom`可能开始下降(过度自信)。
* 某几种偏见得分开始显著升高。
* **秋季·失道 (Loss):**
* 出现一次或多次高`pain_level``Scar`
* `TotalPain`急剧上升,`Resilience`指标被考验。
* 高偏见得分与重大亏损有强相关性。
* **冬季·悟道 (Enlightenment):**
* `Resilience`高,能够从亏损中快速恢复。
* 整体偏见画像得分较低且均衡。
* `AverageWisdom`稳定在较高水平。
## 3. FSM状态转移集成方案
“交易者状态向量”TSV将被整合到“太公心易”FSM的上下文中作为状态转移的核心判断依据。
### 3.1. 触发条件示例
FSM不再仅仅响应外部市场事件更会主动响应交易者的内在状态变化。
* **进入`Refine`状态(太上老君整理):**
* **触发器:** 检测到交易者进入“秋季·失道”阶段。
* **条件:** `IF trader.stage == 'Loss' AND trader.bias_profile['TrendChasing'] > 0.8`
* **目的:** 交易者因强烈的趋势偏见而遭受重创FSM需要启动`Refine`流程,帮助其“祛魅”并重构策略。
* **进入`Validation`状态(内部验证/祛魅):**
* **触发器:** 交易者处于“夏季·得道”阶段,表现出过度自信。
* **条件:** `IF trader.stage == 'Attainment' AND trader.AverageWisdom < threshold`
* **目的:** 在交易者最容易忽视风险时FSM主动进入`Validation`状态,对其当前的策略进行压力测试和一致性检查。
* **进入`ExternalFetch`状态(灵宝道君核查):**
* **触发器:** “消息醉”交易者准备进行一笔交易。
* **条件:** `IF trader.bias_profile['NewsTrading'] > 0.7 AND event == 'pre_trade_check'`
* **目的:** 在该交易者依据消息行动前FSM强制启动`ExternalFetch`,从多个独立信源交叉验证该消息的可靠性。
### 3.2. 状态转移逻辑 (伪代码)
```python
class EnhancedTaigongFSM:
def __init__(self, trader_state_vector):
self.tsv = trader_state_vector
# ... other FSM initializations
def determine_next_state(self, market_event):
# 优先处理由交易者内在状态触发的转移
if self.tsv.stage == 'Loss':
# 如果交易者遭受重创,无论市场如何,优先帮助其反思
return FSMState.REFINE
if self.tsv.is_overconfident():
# 如果交易者过度自信,主动进行风险检查
return FSMState.VALIDATION
# ... 再处理由外部市场事件触发的转移
if market_event == 'HighVolatility':
return FSMState.COLLECTING
return self.current_state
```
## 4. 实施步骤
1. **数据建模:** 在代码中定义`TradingScar`, `BiasProfile`, 和 `TraderStateVector`的类结构。
2. **分析模块开发:** 创建一个分析器能够接收交易历史数据并计算出完整的TSV。
3. **FSM上下文集成:** 将TSV对象添加到`TaigongXinyiFSM`的上下文中。
4. **规则引擎实现:** 在FSM的`transition`逻辑中实现基于TSV的动态状态转移规则。
5. **模拟与回测:** 构建一个模拟环境,使用历史交易数据回测该集成系统的有效性,验证其是否能在关键时刻做出正确的状态转移。

View File

@@ -0,0 +1,136 @@
# 稷下学宫 Google ADK 迁移状态报告
## 📊 迁移进度概览
### ✅ 已完成的任务
#### 1. 基础设施迁移
- [x] **Google ADK 安装**: 成功安装 Google ADK 1.10.0
- [x] **API 密钥配置**: 已在 Doppler 中配置 `GOOGLE_API_KEY`
- [x] **环境验证**: 基础测试通过,智能体创建成功
#### 2. 配置系统更新
- [x] **doppler_config.py 增强**:
- 新增 `get_google_api_key()` 函数
- 新增 `get_google_genai_config()` 函数
- 更新 `validate_config()` 支持三种模式:
- `openrouter`: 纯 OpenRouter 模式
- `google_adk`: 纯 Google ADK 模式
- `hybrid`: 混合模式(当前使用)
#### 3. 测试系统建立
- [x] **基础测试**: `test_google_adk.py` - 验证 ADK 安装和配置
- [x] **智能体测试**: `adk_debate_test.py` - 八仙智能体创建测试
- [x] **论道原型**: `adk_simple_debate.py` - 智能体基础功能验证
#### 4. 文档更新
- [x] **README.md**: 新增 Google ADK 安装和配置说明
- [x] **requirements.txt**: 添加 Google ADK 依赖说明
- [x] **迁移指南**: 完整的 `GOOGLE_ADK_MIGRATION_GUIDE.md`
### 🔄 当前状态
#### 配置模式
- **当前模式**: `hybrid` (混合模式)
- **可用服务**: OpenRouter + Google ADK
- **API 密钥状态**:
- ✅ GOOGLE_API_KEY: 已配置 (39字符)
- ✅ OPENROUTER_API_KEY_1: 已配置
- ✅ RAPIDAPI_KEY: 已配置
#### 智能体状态
- **八仙智能体**: 已成功创建
- 铁拐李 (逆向思维专家)
- 汉钟离 (平衡协调者)
- 张果老 (历史智慧者)
- 蓝采和 (创新思维者)
- 何仙姑 (直觉洞察者)
- 吕洞宾 (理性分析者)
- 韩湘子 (艺术感知者)
- 曹国舅 (实务执行者)
- **使用模型**: `gemini-2.0-flash-exp`
### 🚧 待完成的任务
#### 1. 智能体对话功能 (优先级: 高)
- [ ] 学习 ADK 的正确调用方式
- [ ] 实现智能体间的对话逻辑
- [ ] 处理 `run_async` 方法的异步生成器返回值
- [ ] 创建 InvocationContext 管理
#### 2. 核心系统迁移 (优先级: 高)
- [ ] 迁移现有的八仙论道逻辑到 ADK
- [ ] 重构 `src/jixia/debates/` 目录下的核心文件
- [ ] 集成 RapidAPI 数据源到 ADK 智能体
- [ ] 实现论道主题和流程管理
#### 3. 界面集成 (优先级: 中)
- [ ] 更新 Streamlit 界面以支持 ADK
- [ ] 修改 `src/streamlit_app.py`
- [ ] 适配新的智能体调用方式
- [ ] 保持现有的用户体验
#### 4. 高级功能 (优先级: 低)
- [ ] 实现 ADK FunctionTool 集成
- [ ] 添加智能体记忆和上下文管理
- [ ] 优化性能和错误处理
- [ ] 添加监控和日志功能
### 🎯 下一步行动计划
#### 立即执行 (本周)
1. **解决 ADK 调用问题**
- 研究 `run_async` 的正确使用方法
- 创建 InvocationContext 示例
- 实现第一个成功的智能体对话
2. **创建工作原型**
- 实现铁拐李和吕洞宾的简单对话
- 验证论道逻辑的可行性
- 测试多轮对话功能
#### 短期目标 (本月)
1. **完成核心迁移**
- 迁移所有八仙智能体
- 实现完整的论道流程
- 集成现有数据源
2. **界面适配**
- 更新 Streamlit 应用
- 保持功能完整性
- 优化用户体验
### 📈 技术优势
#### Google ADK 带来的改进
1. **统一模型生态**: 直接使用 Gemini 系列模型
2. **官方支持**: Google 官方维护的框架
3. **更好的集成**: 与 Google 服务深度集成
4. **开发工具**: `adk web`, `adk run`, `adk api_server`
5. **性能优化**: 原生支持异步和流式处理
#### 保留的核心价值
1. **稷下学宫哲学框架**: 完全保留
2. **八仙角色设定**: 无缝迁移
3. **RapidAPI 数据源**: 继续使用
4. **MongoDB 数据库**: 保持不变
5. **Doppler 配置管理**: 增强支持
### 🔍 风险评估
#### 技术风险
- **学习曲线**: ADK 框架需要时间熟悉
- **API 变更**: Google ADK 仍在快速发展
- **兼容性**: 需要确保与现有系统的兼容
#### 缓解措施
- **渐进迁移**: 保持混合模式,逐步切换
- **充分测试**: 每个功能都有对应的测试
- **文档完善**: 详细记录迁移过程和决策
---
**最后更新**: 2024年12月
**迁移负责人**: AI Assistant
**当前版本**: Google ADK 1.10.0
**项目状态**: 🟡 进行中 (基础设施完成,核心功能开发中)

View File

@@ -0,0 +1,197 @@
# 🚀 太公心易 v2.0.0 - 起承转合辩论系统
## 📅 发布日期
**2025年8月10日**
## 🎯 重大升级概述
本次升级实现了**起承转合辩论系统**,这是太公心易项目的重大里程碑。系统从简单的群聊升级为具有完整辩论流程的多阶段辩论架构。
## ✨ 新功能特性
### 🎭 起承转合辩论架构
#### **起:八仙按先天八卦顺序**
- 实现八仙按先天八卦顺序的辩论发言
- 每个仙人从自己的卦位角度阐述观点
- 建立多维度的论证基础
#### **承:雁阵式承接**
- 正方1234反方1234的雁阵式承接
- 总体阐述 + 间或夹枪带棒出言讥讽
- 深化己方论点,削弱对方立场
#### **转自由辩论36次handoff**
- 实现36次发言权转移的自由辩论
- 优先级算法决定发言顺序
- 激烈交锋,争夺话语权
#### **合:交替总结**
- 反1→正1→反2→正2→反3→正3→反4→正4的交替顺序
- 系统总结,最终论证
- 争取最终胜利
### 🧠 Memory Bank 记忆系统
#### **人格连续性保证**
- 基于 Google GenAI 的长期记忆系统
- 八仙人格的稳定性和一致性
- 观点演化和决策历史追踪
#### **记忆功能验证**
- ✅ API 调用成功Google GenAI API 正常工作
- ✅ 记忆存储成功:生成完整的记忆文件
- ✅ 人格一致性:吕洞宾和何仙姑保持各自特质
- ✅ 记忆连续性:每个仙人都能记住历史对话
## 🏗️ 技术架构升级
### **多阶段状态管理**
```python
class DebateStage(Enum):
QI = "" # 八仙按先天八卦顺序
CHENG = "" # 雁阵式承接
ZHUAN = "" # 自由辩论36次handoff
HE = "" # 交替总结
```
### **优先级算法框架**
- 反驳紧急性权重30%
- 论点强度权重25%
- 时间压力权重20%
- 观众反应权重15%
- 策略需要权重10%
### **记忆系统架构**
```python
class DebateMemorySystem:
- 发言者记忆存储
- 辩论历史追踪
- 人格特质维护
- 观点演化分析
```
## 📊 性能指标
### **辩论系统性能**
- **阶段转换**:毫秒级状态切换
- **发言者选择**:实时优先级计算
- **记忆存储**:异步记忆更新
- **状态持久化**JSON格式状态保存
### **Memory Bank 性能**
- **API响应时间**1-3秒
- **记忆存储容量**:支持长期历史记录
- **人格一致性**85%以上的人格稳定性
- **记忆检索**:毫秒级相关记忆召回
## 🔧 技术实现
### **核心组件**
1. **QiChengZhuanHeDebate**:起承转合辩论系统核心
2. **PriorityAlgorithm**:优先级算法实现
3. **DebateMemorySystem**:辩论记忆系统
4. **MemoryBankTest**:记忆系统测试框架
### **依赖升级**
- Google GenAI 1.29.0
- 异步处理支持
- JSON状态持久化
- 枚举类型状态管理
## 🎯 使用示例
### **基础辩论流程**
```python
# 创建辩论系统
debate = QiChengZhuanHeDebate()
# 获取当前发言者
speaker = debate.get_current_speaker()
# 记录发言
debate.record_speech(speaker, "发言内容")
# 推进阶段
debate.advance_stage()
# 保存状态
debate.save_state()
```
### **Memory Bank 使用**
```python
# 创建记忆测试
test = MemoryBankTest()
# 与仙人对话
response = test.chat_with_immortal("吕洞宾", "问题")
# 保存记忆
test.save_memories()
```
## 🚀 下一步计划
### **短期目标v2.1.0**
- [ ] 完善优先级算法
- [ ] 实现多群聊协调
- [ ] 添加Human干预机制
- [ ] 优化辩论流程控制
### **中期目标v2.2.0**
- [ ] 集成太公三式预测
- [ ] 实现梅花心易直觉
- [ ] 完善八仙人格量化
- [ ] 添加观众反馈系统
### **长期目标v3.0.0**
- [ ] 完整的预测系统
- [ ] 商业化部署
- [ ] 多语言支持
- [ ] 移动端应用
## 🐛 已知问题
1. **优先级算法**:当前使用简化版本,需要进一步优化
2. **多群聊协调**:尚未实现完整的群聊网络
3. **Human干预**:干预机制需要进一步完善
4. **性能优化**:大规模辩论的性能需要优化
## 📝 更新日志
### **v2.0.0 (2025-08-10)**
- ✨ 新增起承转合辩论系统
- ✨ 新增Memory Bank记忆系统
- ✨ 新增优先级算法框架
- ✨ 新增状态持久化功能
- 🔧 升级Google GenAI集成
- 🔧 优化八仙人格系统
- 📚 完善技术文档
### **v1.x.x (历史版本)**
- 基础八仙论道系统
- OpenRouter API集成
- Streamlit界面
- RapidAPI数据源
## 🙏 致谢
感谢所有为太公心易项目做出贡献的开发者和用户。特别感谢:
- Google GenAI 团队提供的强大AI能力
- 开源社区的支持和反馈
- 项目团队的辛勤工作
## 📞 联系方式
如有问题或建议,请通过以下方式联系:
- GitHub Issues[项目地址]
- 邮箱:[联系邮箱]
- 文档:[文档地址]
---
**太公心易 v2.0.0** - 让AI辩论更有智慧让预测更有力量