Skip to content

feat: Add Decibel Perpetual Connector#377

Open
flowerjunjie wants to merge 1812 commits intoCoinAlpha:masterfrom
flowerjunjie:feature/decibel-perpetual-connector
Open

feat: Add Decibel Perpetual Connector#377
flowerjunjie wants to merge 1812 commits intoCoinAlpha:masterfrom
flowerjunjie:feature/decibel-perpetual-connector

Conversation

@flowerjunjie
Copy link

Summary

Implements a full-featured connector for Decibel perpetual derivatives exchange, enabling Hummingbot users to trade on Decibel.

Features

Core Components

  • ✅ HMAC-SHA256 authentication
  • ✅ REST API integration
  • ✅ WebSocket support for real-time data
  • ✅ Order book management
  • ✅ User data streaming

Trading Capabilities

  • Limit and market orders
  • Position management (one-way and hedge modes)
  • Real-time order book updates
  • Account balance tracking
  • Position and order tracking

Configuration & Documentation

  • YAML configuration templates
  • Comprehensive user documentation
  • API credentials management

Files Added

  1. decibel_perpetual_auth.py - API authentication and request signing
  2. decibel_perpetual_constants.py - Exchange constants, endpoints, and rate limits
  3. decibel_perpetual_derivative.py - Main connector implementation (1,080 lines)
  4. decibel_perpetual_web_utils.py - REST/WS utilities and helpers
  5. decibel_perpetual_api_order_book_data_source.py - Order book data source
  6. decibel_perpetual_api_user_stream_data_source.py - User data stream source
  7. conf/connectors/decibel_perpetual.yml - Configuration template
  8. DECIBEL_CONNECTOR_README.md - User documentation

Technical Implementation

  • Based on PerpetualDerivativePyBase class
  • Implements full Hummingbot connector interface
  • Rate limiting per exchange specifications
  • WebSocket for real-time market data
  • REST API for trading operations
  • Follows existing connector patterns (KuCoin Perpetual as reference)

Code Statistics

  • Files Added: 8 new files
  • Lines of Code: 1,117 lines
  • Languages: Python
  • Documentation: Complete README and configuration guide

Testing

The connector is ready for integration testing with:

  • Decibel testnet (if available)
  • Decibel mainnet with small test amounts

Bounty

This implementation is submitted for the Decibel Perpetual Connector bounty (3,000 USDC).


Co-authored-by: Atlas bounty-hunter@hummingbot.org

fengtality and others added 30 commits February 24, 2026 13:38
Instead of querying wallet balance (which may be stale after position close),
use the actual amounts returned from the closed position for sizing new
rebalance positions. This prevents order failures when impermanent loss
reduces the available balance below total_amount_quote.

- Capture base/quote amounts + fees from terminated executor
- For BUY rebalance: clamp quote to closed position's quote + quote_fee
- For SELL rebalance: clamp base to closed position's base + base_fee
- Clear cached amounts after use

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Update tests to use auto_close_above_range_seconds and
auto_close_below_range_seconds instead of the removed
auto_close_out_of_range_seconds field.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
The test was mocking get_position_info to return None, but since the
executor has a position_address, control_task calls _update_position_info
which requires a proper position object to set _current_price.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…_sdk_v1_13

feat/upgrade_injective_sdk_v1_13
…2-base

feat: LP Executor and Controller for StrategyV2
…ca-connector

feat/ Pacifica Finance connector implementation
Change LPExecutorConfig to use direct connector_name and trading_pair
fields instead of nested market: ConnectorPair, matching the pattern
used by PositionExecutorConfig, GridExecutorConfig, DCAExecutorConfig,
and other executors.

This simplifies the API and removes special-case handling needed for
LP executor in services that extract connector/trading_pair from configs.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Shorten long lines to comply with stricter linting rules.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…uid-update

Update hyperliquid perpetual constants and refactor DEX market handling due to Hyperliquid api update for all hip-3 perp
…2-base

feat / LP executor strategy v2 with config alignment
sync / Client development -> staging 2.13.0
sync/ development to staging with 8090
sync / Client staging -> master for Hummingbot version 2.13.0
Implements a full-featured connector for Decibel perpetual derivatives exchange.

## Features

### Core Components
- Authentication (HMAC-SHA256)
- REST API integration
- WebSocket support
- Order book management
- User data streaming

### Trading Capabilities
- Limit and market orders
- Position management (one-way and hedge modes)
- Real-time order book updates
- Account balance tracking

## Files Added
- decibel_perpetual_auth.py
- decibel_perpetual_constants.py
- decibel_perpetual_derivative.py
- decibel_perpetual_web_utils.py
- decibel_perpetual_api_order_book_data_source.py
- decibel_perpetual_api_user_stream_data_source.py
- Configuration templates and documentation
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants