vibetrading-code-gen

TotalClaw 作者 totalclaw

根据自然语言提示生成可执行的 Hyperliquid 交易策略代码。当用户想要根据其交易想法、技术指标或 VibeTrading 信号为 Hyperliquid 交易所创建自动交易策略时使用。该技能使用实际的 Hyperliquid API 包装器生成完整的 Python 代码,并具有正确的错误处理、日志记录和配置。

安装 / 下载方式

TotalClaw CLI推荐
totalclaw install totalclaw:totalclaw~liuhaonan00-vibetrading-code-gen
cURL直接下载,无需登录
curl -fsSL https://skills.taituai.com/api/skills/totalclaw%3Atotalclaw~liuhaonan00-vibetrading-code-gen/file -o liuhaonan00-vibetrading-code-gen.md
## 概述(中文)

根据自然语言提示生成可执行的 Hyperliquid 交易策略代码。当用户想要根据其交易想法、技术指标或 VibeTrading 信号为 Hyperliquid 交易所创建自动交易策略时使用。该技能使用实际的 Hyperliquid API 包装器生成完整的 Python 代码,并具有正确的错误处理、日志记录和配置。

## 原文

# VibeTrading Code Generator

Generate executable Hyperliquid trading strategy code from natural language prompts. This skill transforms trading ideas into ready-to-run Python code using actual Hyperliquid API implementations. Generated code includes complete API integration, error handling, logging, and configuration management.

## Quick Start

### Basic Usage

```bash
# Generate a simple RSI strategy
python scripts/strategy_generator.py "Generate a BTC RSI strategy, buy below 30, sell above 70"

# Generate a grid trading strategy
python scripts/strategy_generator.py "BTC grid trading 50000-60000 10 grids 0.01 BTC per grid"

# Generate a signal-following strategy
python scripts/strategy_generator.py "ETH trading strategy based on VibeTrading signals, buy on bullish signals, sell on bearish signals"
```

### Output Structure

The generator creates:
1. **Strategy Python file** - Complete trading strategy class
2. **Configuration file** - Strategy parameters and settings
3. **Usage instructions** - How to run and monitor the strategy
4. **Requirements file** - Python dependencies

## Code Validation System

### Automatic Code Validation

All generated code is automatically validated and fixed using the built-in validation system:

```bash
# Validate generated code
python scripts/code_validator.py generated_strategy.py

# Validate and fix automatically
python scripts/code_validator.py generated_strategy.py --fix

# Validate entire directory
python scripts/code_validator.py strategy_directory/
```

### Validation Steps

The validation system performs these checks:

1. **Syntax Validation** - Python syntax checking
2. **Import Validation** - Module import verification
3. **Compatibility Checks** - Python 3.5+ compatibility
4. **Common Issue Detection** - Missing imports, encoding issues, etc.

### Automatic Fixes

When validation fails, the system automatically fixes common issues:

1. **Add missing imports** - Add typing imports if type annotations are used
2. **Fix encoding declaration** - Add `# -*- coding: utf-8 -*-` if missing
3. **Remove incompatible syntax** - Remove f-strings and type annotations for Python 3.5 compatibility
4. **Fix import paths** - Add sys.path modifications for API wrappers
5. **Fix logger initialization order** - Ensure logger is initialized before API client
6. **Remove pathlib usage** - Replace with os.path for Python 3.4 compatibility
7. **Fix string formatting** - Convert f-strings to .format() method

### Validation Configuration

The validation system can be configured via command-line arguments:

```bash
# Basic validation
python scripts/code_validator.py strategy.py

# Validate and fix automatically
python scripts/code_validator.py strategy.py --fix

# Use specific Python executable
python scripts/code_validator.py strategy.py --python python3.6

# Validate directory with all files
python scripts/code_validator.py strategies/ --fix

# Maximum 5 fix iterations
python scripts/code_validator.py strategy.py --fix --max-iterations 5
```

### Validation Rules

The system enforces these rules for generated code:

1. **Python 3.5+ Compatibility**
   - No f-strings (use `.format()` or `%` formatting)
   - No type annotations (remove or use comments)
   - No pathlib (use `os.path` instead)
   - No typing module imports

2. **Code Quality**
   - Proper encoding declaration (`# -*- coding: utf-8 -*-`)
   - Logger initialized before API client
   - All imports are resolvable
   - No syntax errors

3. **Security**
   - API keys loaded from environment variables
   - No hardcoded credentials
   - Proper error handling for API calls

4. **Performance**
   - Reasonable check intervals (not too frequent)
   - Efficient data fetching
   - Proper resource cleanup

### Validation Workflow

```
User Prompt → Code Generation → Validation → Fixes → Final Code
                    ↓
              If validation fails
                    ↓
            Apply automatic fixes
                    ↓
          Re-validate until success
                    ↓
          Deliver validated code
```

### Validation Failure Handling

When validation fails, the system automatically updates the code with these steps:

1. **Error Analysis** - Identify the specific validation errors
2. **Fix Application** - Apply appropriate fixes based on error type
3. **Re-validation** - Validate again after fixes
4. **Iterative Repair** - Repeat until code is valid (max 3 iterations)
5. **Fallback Strategy** - If automatic fixes fail, provide detailed error report and manual fix instructions

### Automatic Fix Examples

#### Fix 1: Missing Imports
```python
# Before (error: NameError: name 'List' is not defined)
def calculate_prices(prices: List[float]) -> List[float]:

# After (automatic fix)
from typing import List, Dict, Optional
def calculate_prices(prices):
```

#### Fix 2: Encoding Issues
```python
# Before (error: SyntaxError: Non-ASCII character)
# Strategy description: Grid trading

# After (automatic fix)
# -*- coding: utf-8 -*-
# Strategy description: Grid trading
```

#### Fix 3: Python 3.5 Incompatibility
```python
# Before (error: SyntaxError in Python 3.5)
price = f"Current price: {current_price}"

# After (automatic fix)
price = "Current price: {}".format(current_price)
```

#### Fix 4: Import Path Issues
```python
# Before (error: ImportError: No module named 'hyperliquid_api')
from hyperliquid_api import HyperliquidClient

# After (automatic fix)
import sys
import os
sys.path.insert(0, os.path.join(os.path.dirname(__file__), "..", "api_wrappers"))
from hyperliquid_api import HyperliquidClient
```

## Supported Strategy Types

### 1. Technical Indicator Strategies
- **RSI-based**: Oversold/overbought trading
- **MACD-based**: Trend following with MACD crossovers
- **Moving Average**: SMA/EMA cross strategies
- **Bollinger Bands**: Mean reversion strategies

### 2. Advanced Trading Strategies
- **Grid Trading**: Price range trading with multiple orders
- **Mean Reversion**: Statistical arbitrage strategies
- **Trend Following**: Momentum-based strategies
- **Arbitrage**: Spot-perp or cross-exchange arbitrage

### 3. Signal-Driven Strategies
- **VibeTrading Integration**: Follow AI-generated trading signals
- **News-based**: React to market news and sentiment
- **Whale Activity**: Track large wallet movements
- **Funding Rate**: Funding rate arbitrage strategies

## How It Works

### Step 1: Prompt Analysis
The generator analyzes your natural language prompt to identify:
- Trading symbol (BTC, ETH, SOL, etc.)
- Strategy type (grid, RSI, signal-based, etc.)
- Key parameters (price ranges, grid counts, indicator values)
- Risk management preferences

### Step 2: Template Selection
Based on the analysis, the system selects the most appropriate template from:
- `templates/grid_trading.py` - Grid trading strategy template

### Step 3: Code Generation
The generator:
1. Fills template parameters with your values
2. Adds proper error handling and logging
3. Includes configuration management
4. Generates complete runnable code

### Step 4: Code Validation
The generated code is automatically validated and fixed:
1. **Syntax checking** - Ensure valid Python syntax
2. **Import verification** - Check all imports are resolvable
3. **Compatibility testing** - Verify Python 3.5+ compatibility
4. **Automatic fixes** - Apply fixes for common issues
5. **Re-validation** - Validate again after fixes
6. **Error reporting** - If fixes fail, provide detailed error report

### Validation Failure Handling
If validation fails after automatic fixes:
1. **Error Analysis Report** - Detailed breakdown of remaining issues
2. **Manual Fix Instructions** - Step-by-step guidance for manual fixes
3. **Fallback Template** - Option to use a simpler, validated template
4. **Support Contact** - Instructions for getting he