Quick Start

Generate a Strategy from a Prompt

import vibetrading.strategy

generator = vibetrading.strategy.StrategyGenerator(model="gpt-4o")

code = generator.generate(
    "BTC momentum strategy: RSI(14) oversold entry, SMA crossover confirmation, "
    "3x leverage, 10% position size, 8% take-profit, 4% stop-loss",
    assets=["BTC"],
    max_leverage=5,
)

print(code)

Generate and Backtest

from datetime import datetime, timezone

import vibetrading.strategy
import vibetrading.backtest
import vibetrading.tools

start = datetime(2025, 1, 1, tzinfo=timezone.utc)
end = datetime(2025, 6, 1, tzinfo=timezone.utc)

generator = vibetrading.strategy.StrategyGenerator(model="gpt-4o")
code = generator.generate(
    "ETH mean reversion with Bollinger Bands, short when price hits upper band, "
    "long when price hits lower band, 5x leverage",
    assets=["ETH"],
    max_leverage=5,
)

data = vibetrading.tools.download_data(
    ["ETH"],
    exchange="binance",
    start_time=start,
    end_time=end,
    interval="1h",
)

results = vibetrading.backtest.run(code, start_time=start, end_time=end, interval="1h", data=data)

if results:
    metrics = results["metrics"]
    print(f"Return: {metrics['total_return']:.2%}")
    print(f"Sharpe: {metrics['sharpe_ratio']:.2f}")
    print(f"Max Drawdown: {metrics['max_drawdown']:.2%}")
    print(f"Win Rate: {metrics['win_rate']:.2%}")

Use the Prompt Template with Any LLM

Don't want to use the built-in generator? Use the prompt template directly with any LLM client:

OpenAI

Anthropic

Validate Generated Code

Check generated strategy code for common errors before running:

Last updated