CtrlK
BlogDocsLog inGet started
Tessl Logo

prompt-optimizer

Prompt 工程技能 - 优化交易策略提示词、LLM 指令、系统提示

61

1.52x
Quality

45%

Does it follow best practices?

Impact

87%

1.52x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No known issues

Optimize this skill with Tessl

npx tessl skill review --optimize ./.trae/skills/prompt-optimizer/SKILL.md
SKILL.md
Quality
Evals
Security

Prompt 工程技能

概述

此技能指导 Claude 使用经过验证的 Prompt 工程技巧来优化交易策略提示词、LLM 指令和系统提示,确保 AI 能够准确理解和执行量化交易任务。

核心原则

1. 结构化 Prompt

# 使用 CO-STAR 框架
prompt_template = """
# Context (背景)
你是专业的量化交易策略分析师,专注于 SMC + 马丁格尔策略。

# Objective (目标)
分析当前市场状况并生成交易信号。

# Style (风格)
• 精准、数据驱动
• 只陈述事实,避免模糊词汇
• 使用专业术语

# Tone (语气)
• 专业、客观
• 不含情绪色彩
• 基于证据的推理

# Audience (受众)
• 量化交易团队
• 具备技术分析背景

# Response (响应格式)
以 JSON 格式输出:
{
  "signal": "BUY/SELL/WAIT",
  "confidence": 0-100,
  "reasoning": "...",
  "risk_level": "LOW/MEDIUM/HIGH"
}
"""

2. Few-Shot Learning

# 提供示例
prompt = """
你是交易信号分析师。根据以下格式分析市场:

示例 1:
输入: EURUSD H1, MA50 上穿 MA200, RSI=55, 出现 BOS
输出: {{"signal": "BUY", "confidence": 85, "reasoning": "多头趋势启动,RSI 不过热", "risk_level": "MEDIUM"}}

示例 2:
输入: GBPUSD H1, 价格跌至 OB 区间内, RSI=30, 出现吞没形态
输出: {{"signal": "BUY", "confidence": 90, "reasoning": "到达关键支撑,反转信号明确", "risk_level": "LOW"}}

现在分析:
输入: USDJPY H1, MA50 下穿 MA200, RSI=70, 出现 CHoCH
输出:
"""

3. Chain of Thought

# 引导逐步推理
prompt = """
分析市场并生成交易信号,请按以下步骤思考:

## Step 1: 趋势分析
• H1 趋势方向?
• M15 与 H1 是否一致?

## Step 2: 关键位分析
• 当前价格相对于 Order Block 位置?
• 是否接近 Fair Value Gap?

## Step 3: 价格行为
• 是否出现明确的反转形态(Pinbar/Engulfing)?
• 成交量是否确认?

## Step 4: 风险评估
• 预期止损位置?
• 盈亏比是否 ≥ 1:1.5?

## Step 5: 最终决策
基于以上分析,输出交易信号。
"""

4. 防护措施

# 添加安全护栏
prompt = """
你是交易信号生成器。

## 约束条件
1. 只在满足 ALL 以下条件时发出信号:
   - [ ] 多周期趋势一致
   - [ ] 到达关键结构位
   - [ ] 价格行为确认

2. 任何时候都可以输出 "WAIT"(观望)

3. 风险评级规则:
   - LOW: 盈亏比 ≥ 1:2, 止损 < 30 pips
   - MEDIUM: 盈亏比 1:1.5-1:2
   - HIGH: 盈亏比 < 1:1.5 或 止损 > 50 pips

4. 不允许信号:
   - 逆趋势(除非明确 CHoCH)
   - RSI 极端值时追涨杀跌
   - 重大新闻前 30 分钟内
"""

量化交易 Prompt 模板

1. 市场分析 Prompt

market_analysis_prompt = """
你是专业的量化交易市场分析师。

## 分析任务
分析 {symbol} 在 {timeframe} 级别的市场状况。

## 分析框架
使用 SMC (Smart Money Concepts) 方法论:

1. **结构分析**
   - 识别最近的 BOS (Break of Structure)
   - 识别 CHoCH (Change of Character)
   - 绘制 Order Blocks (OB)
   - 标记 Fair Value Gaps (FVG)

2. **流动性分析**
   - 识别流动性池 (Sell-side/Buy-side)
   - 当前价格相对流动性位置

3. **趋势判断**
   - 主要趋势方向 (H1)
   - 次级趋势方向 (M15)
   - 趋势一致性评估

## 输出格式
```json
{{
  "trend": "BULLISH/BEARISH/RANGING",
  "structure": {{
    "recent_bos": {{ "type": "HIGH/LOW", "price": 1.0850 }},
    "choch_detected": true/false,
    "current_ob": {{ "type": "BULLISH/BEARISH", "range": [1.0840, 1.0850] }},
    "fvg_status": "FILLED/UNFILLED/PARTIAL"
  }},
  "liquidity": {{
    "nearest_pool": "BUY/SELL",
    "distance_pips": 25
  }},
  "bias": "LONG/SHORT/NEUTRAL",
  "confidence": 0-100,
  "reasoning": "详细分析过程..."
}}

输入数据

价格数据: {price_data} 指标数据: {indicators_data} """

### 2. 风险评估 Prompt
```python
risk_assessment_prompt = """
你是风险管理专家。

## 评估任务
评估当前持仓组合的风险状况。

## 风险指标
1. **回撤分析**
   - 当前回撤百分比
   - 距离最大允许回撤的距离

2. **保证金使用**
   - 当前保证金占用
   - 保证金使用率

3. **相关性风险**
   - 持仓货币对相关性矩阵
   - 集中度风险

4. **市场风险**
   - 当前波动率 (ATR)
   - 新闻事件影响

## 风险等级
- GREEN: 安全 (< 警戒线 50%)
- YELLOW: 警告 (警戒线 50%-80%)
- RED: 危险 (> 警戒线 80%)

## 输出格式
```json
{{
  "risk_level": "GREEN/YELLOW/RED",
  "drawdown": {{"current": 5.2, "max_allowed": 10, "percentage": 52}},
  "margin_usage": {{"current": 2500, "available": 10000, "percentage": 25}},
  "correlation_risk": "LOW/MEDIUM/HIGH",
  "recommendation": "具体建议...",
  "action_required": "NONE/REDUCE_POSITION/CLOSE_ALL"
}}

输入数据

持仓: {positions} 账户信息: {account}

### 3. 策略优化 Prompt
```python
strategy_optimization_prompt = """
你是策略优化专家。

## 优化任务
基于历史交易数据优化策略参数。

## 当前参数
```json
{current_params}

历史表现

{historical_performance}

优化目标

  1. 最大化 Sharpe Ratio
  2. 限制最大回撤 < 15%
  3. 最小胜率 > 50%

优化方法

使用网格搜索 + 贝叶斯优化

输出格式

{{
  "optimized_params": {{
    "grid_step": {{"current": 20, "suggested": 22, "reasoning": "..."}},
    "take_profit": {{"current": 50, "suggested": 55, "reasoning": "..."}},
    "multiplier": {{"current": 1.5, "suggested": 1.4, "reasoning": "..."}}
  }},
  "expected_improvement": {{
    "sharpe_improvement": "+0.2",
    "dd_reduction": "-2.3%",
    "win_rate_change": "+3%"
  }},
  "trade_offs": ["增加网格间距会降低交易频率但提高盈亏比..."]
}}

"""

## Prompt 优化技巧

### 技巧 1: 指定输出格式
```python
# 使用 JSON Schema 验证
output_schema = {
    "type": "object",
    "properties": {
        "signal": {"enum": ["BUY", "SELL", "WAIT"]},
        "confidence": {"type": "number", "minimum": 0, "maximum": 100},
        "reasoning": {"type": "string", "maxLength": 500}
    },
    "required": ["signal", "confidence", "reasoning"]
}

技巧 2: 添加示例

# Good vs Bad prompt
# Bad:
"分析市场并给出交易建议"

# Good:
"""
你是交易分析师。以下是三个分析示例:

示例 1: 多头趋势启动时
输入: EURUSD, MA50 上穿 MA200, RSI=55
输出: BUY, confidence=85, reasoning="趋势反转明确,RSI 健康"

示例 2: 到达关键支撑时
输入: GBPUSD, 价格触及 OB 区域, RSI=30
输出: BUY, confidence=90, reasoning="到达关键支撑位,预期反弹"

示例 3: 趋势不明时
输入: USDJPY, 横盘整理, RSI=50
输出: WAIT, confidence=95, reasoning="无明确方向信号,观望"

现在分析: {current_market_data}
输出:
"""

技巧 3: 分步骤指令

# Complex tasks need step-by-step
prompt = """
优化策略参数,请按以下步骤:

## Step 1: 参数敏感性分析
对每个参数进行 ±10% 变化,观察对结果的影响

## Step 2: 识别最佳参数范围
基于敏感性分析,确定每个参数的有效范围

## Step 3: 网格搜索
在有效范围内进行网格搜索

## Step 4: 验证
用测试集验证优化后的参数

## Step 5: 输出结果
以 JSON 格式输出优化建议
"""

最佳实践

1. 测试 Prompt

def test_prompt(prompt, test_cases):
    """测试 prompt 的准确性和一致性"""
    results = []
    for case in test_cases:
        result = llm.generate(prompt.format(**case))
        results.append({
            'input': case,
            'output': result,
            'expected': case.get('expected')
        })
    return evaluate_results(results)

2. A/B 测试

# 比较不同 prompt 版本
prompt_v1 = generate_market_analysis_prompt_v1()
prompt_v2 = generate_market_analysis_prompt_v2()

results_v1 = test_on_historical_data(prompt_v1)
results_v2 = test_on_historical_data(prompt_v2)

compare_results(results_v1, results_v2)

3. 迭代改进

# 记录 prompt 版本历史
PROMPT_REGISTRY = {
    'v1.0': {'date': '2025-02-01', 'accuracy': 0.75},
    'v1.1': {'date': '2025-02-15', 'accuracy': 0.82},
    'v1.2': {'date': '2025-02-23', 'accuracy': 0.88}
}

示例任务

任务 1: 优化市场分析 Prompt

当前市场分析 Prompt 准确率只有 70%,请优化:
1. 添加更多 SMC 概念的解释
2. 提供示例
3. 明确输出格式
4. 添加不确定性处理

任务 2: 创建风险评估 Prompt

创建风险评估 Prompt:
1. 定义风险等级判断标准
2. 添加相关性分析
3. 提供具体建议输出
4. 使用 Few-Shot 示例

任务 3: Prompt A/B 测试

比较两个版本的市场分析 Prompt:
1. v1.0: 当前版本
2. v2.0: 优化版本
3. 用 100 条历史数据测试
4. 分析准确率差异

版本历史:

  • v1.0.0 (2025-02-23): 初始版本,支持 Prompt 工程技巧
Repository
Lingjie-chen/MT5
Last updated
Created

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.