Jesse:30+ 技术指标的 Python 加密货币交易框架 2026 版

Jesse AI 交易框架。支持 BTC、ETH 量化交易。完整的回测、实盘、指标、策略框架。Python 开发。

  • ⭐ 3600
  • Python
  • MIT
  • 更新于 2026-05-18

什么是 Jesse? #

Jesse 是 Python 加密货币交易框架。支持 30+ 技术指标,完整回测、实盘、指标、策略。专为 BTC、ETH 量化交易设计。

安装 #

pip install jesse

项目结构 #

my_strategy/
├── run.py                    # 启动脚本
├── strategies/
│   └── MyCustomStrategy.py   # 策略文件
├── indicators/
│   └── CustomIndicator.py    # 自定义指标
└── config.py                 # 配置

编写策略 #

基础策略 #

import jesse
from jesse.strategy import Strategy

class MyStrategy(Strategy):
    def config(self):
        return {
            'frequency': '1h',
            'buy': [1.2],
            'sell': [0.9]
        }
    
    def determine_binary_signal(self):
        if self.position_size > 0:
            if self.rsi < 30:
                return 1  # Buy
            elif self.rsi > 70:
                return -1  # Sell
        return 0

高级策略 #

from jesse.strategy import Strategy
from jesse.indicators import MACD, RSI, BollingerBands

class AdvancedStrategy(Strategy):
    def __init__(self):
        self.macd = MACD(self.lines.close, fast=12, slow=26, signal=9)
        self.rsi = RSI(self.lines.close, period=14)
        self.bb = BollingerBands(self.lines.close)
    
    def going_long(self):
        if (self.macd.macd > self.macd.signal and
            self.rsi < 30 and
            self.price < self.bb.lower):
            return True
        return False

内置指标 #

趋势指标 #

指标参数说明
SMAperiod简单移动平均
EMAperiod指数移动平均
MACDfast/slow/signal梅ador动量分离线

动量指标 #

指标参数说明
RSIperiod相对强弱指数
Stochastic%K, %D随机指标
CCIperiod商品通道指数

区间指标 #

指标参数说明
Bollingerperiod, std布林带
Keltnerperiod, ATR柯莱纳带

回测 #

命令行回测 #

jesse backtest

程序化回测 #

import jesse
from jesse.backtesting import backtest

results = backtest(
    exchange_name='Binance',
    symbol='BTCUSDT',
    starting_balance=10000,
    df=df  # pandas DataFrame
)

实盘交易 #

连接交易所 #

# config.py
exchange_config = {
    'exchange': 'binance',
    'api_key': 'your-api-key',
    'api_secret': 'your-api-secret',
    'passphrase': ''
}

启动实盘 #

jesse run

路由配置 #

# routes.py
routes = [{
    'exchange': 'Binance',
    'symbol': 'BTCUSDT',
    'interval': '1h',
    'strategy': 'MyStrategy',
    'color': 'green'
}]

风险管理 #

仓位控制 #

def position_size(self):
    # 最大 25% 仓位
    return 0.25

def risk_reward_ratio(self):
    # 1:2 风险回报比
    return 2

止损止盈 #

def stop_loss_value(self):
    return self.position_pnl - 0.02 * self.position_size

def profit_target(self):
    return self.entry_price + 0.04 * self.position_size

监控面板 #

Jesse 提供内置监控面板:

  • 实时 PnL
  • 订单状态
  • 持仓分布
  • 交易历史
jesse plot

性能优化 #

数据缓存 #

from jesse.data import cache

cache.enable()

指标预计算 #

# 在 __init__ 中计算
self.my_indicator = my_custom_indicator(self.lines.close)

常见问题 #

Q: Jesse 支持 CME 期货吗?

答:支持。通过 CME Groups 数据源连接。

Q: 如何获取实时 WebSocket 数据?

答:Jesse 内置 WebSocket 客户端,自动连接交易所 WS。

Q: 支持网格交易吗?

答:支持。内置网格策略模板。

总结 #

Jesse 为加密货币量化交易提供「从零到实盘」的完整解决方案。Python 编写,30+ 指标,生产级。


参考:jesse-ai.com 官方文档 更新:2026-05-18

📦 出现在以下合集中

💬 留言讨论