Bitget Perpetual Futures Setup
Connect your Bitget Futures account to SignalBee for automated perpetual contract trading. This guide walks you through enabling futures trading, creating API keys with the correct permissions, and configuring your account for automated signals.
Important: Bitget requires three values for API authentication: API Key, Secret Key, AND Passphrase. You create the Passphrase yourself during API key setup—save all three immediately.
Prerequisites
Before you begin, make sure you have:
- Verified Bitget account - Identity verification (KYC) completed
- 2FA enabled on Bitget - Required for API key creation
- Futures trading enabled - Must activate Futures on your Bitget account
- SignalBee account - Ready to connect an exchange
- Password manager - For storing your THREE API credentials securely
Security Note: Bitget requires 2FA (two-factor authentication) to create API keys. If you haven't enabled 2FA yet, go to Security → Google Authenticator in your Bitget account.
About Bitget Futures
Bitget is a major cryptocurrency derivatives exchange offering USDT-margined perpetual contracts:
| Feature | Details |
|---|---|
| Contract Type | USDT-margined perpetual contracts |
| Leverage | Up to 125x (varies by symbol) |
| Order Types | Market, Limit, Stop-Loss, Take-Profit |
| Position Modes | One-way or Hedge (long + short simultaneously) |
| Margin Types | Cross (shared) or Isolated (per position) |
| Funding Rate | Every 8 hours |
| Testnet | Available at api-simulated.bitget.com |
Order Type Support
SignalBee supports most Bitget Futures order types:
| Order Type | Supported | Bitget API Type | Description |
|---|---|---|---|
| Market | ✅ Yes | market | Immediate execution at current price |
| Limit | ✅ Yes | limit | Execute at specified price or better |
| Stop-Loss | ✅ Yes | market + trigger | Market order when mark price reaches trigger |
| Stop-Loss Limit | ✅ Yes | limit + trigger | Limit order when trigger price is reached |
| Take-Profit | ✅ Yes | market + trigger | Market order when take-profit price is reached |
| Take-Profit Limit | ✅ Yes | limit + trigger | Limit order when take-profit price is reached |
| Trailing Stop | ❌ No | — | Not supported on Bitget Perpetual |
Note: Unlike Binance Futures, trailing stop orders are NOT supported on Bitget Perpetual. If your strategy requires trailing stops, consider an alternative exchange or use manual stop adjustments.
Time in Force Options
| Option | API Value | Description |
|---|---|---|
| Good Till Canceled | gtc | Order remains until filled or canceled (default) |
| Immediate or Cancel | ioc | Fill immediately or cancel unfilled portion |
| Fill or Kill | fok | Fill entire order immediately or cancel completely |
| Post Only | post_only | Only maker orders (adds liquidity, no taker fees) |
Understanding Bitget's Passphrase System
Bitget uses a three-value authentication system for API access, similar to KuCoin and OKX.
What Are the Three Credentials?
| Credential | What It Is | Can View Later? |
|---|---|---|
| API Key | Public identifier for your key | ✅ Yes - visible in API Management |
| Secret Key | Private key for signing requests | ❌ No - shown only once |
| Passphrase | Password you create for this key | ❌ No - you set it yourself |
All three values are required for SignalBee to connect to your Bitget Futures account.
Why a Passphrase?
The Passphrase adds an extra layer of security. Even if someone obtains your API Key and Secret Key, they still need your Passphrase to make API requests. Think of it as a password specifically for this API key.
Warning: If you forget your Passphrase or lose your Secret Key, you must delete the API key and create a new one. There is no way to recover these values.
Enabling Futures Trading on Bitget
You must complete this section BEFORE creating your API key. If you create an API key without enabling Futures first, the key will not have Futures capabilities.
Activate Your Futures Account
- Go to www.bitget.com
- Log in with your email/phone and password
- Complete 2FA verification
- Hover over Derivatives in the main navigation menu
- Select USDT-M Futures from the dropdown
- If prompted, click to activate your Futures account
- Read and accept the Futures trading agreement
Transfer Funds to Futures Wallet
Funds must be in your Futures wallet, not your Spot wallet:
- Click Assets in the top menu
- Select Transfer
- Choose Spot as the source
- Choose USDT-M Futures as the destination
- Enter the amount of USDT to transfer
- Click Confirm
Important: Your Spot wallet balance does NOT affect Futures trading. You must explicitly transfer funds to trade futures.
Creating Your API Key
Follow these steps to create an API key with Futures permissions.
Step 1: Log In to Bitget
- Go to www.bitget.com
- Log in with your email/phone and password
- Complete 2FA verification (authenticator app)
Step 2: Navigate to API Management
- Click your profile icon in the top-right corner
- Select API Management from the dropdown menu
- You'll see a list of your existing API keys (if any)
Step 3: Create a New API Key
- Click the Create API button
- You may need to complete 2FA verification again
Step 4: Configure Your API Key
- API Name - Enter a descriptive label:
SignalBee Futures - Passphrase - Create a strong passphrase (8-32 characters)
Tip: Use a unique passphrase that you haven't used elsewhere. Treat it like a password—store it in your password manager immediately.
Step 5: Set Permissions
Configure the permissions for your API key:
- ✅ Enable Read - View account info and positions
- ✅ Enable Futures Trade - Place futures orders
- ❌ Do NOT enable Withdraw - Never needed
- ❌ Do NOT enable Transfer - Not required
Critical: You must enable Futures Trade permission, NOT Spot Trade. These are separate permissions.
Step 6: IP Whitelist (Optional)
- Leave empty for unrestricted access, OR
- Add specific IP addresses for enhanced security (see IP Whitelist Configuration)
Step 7: Complete Security Verification
- Authenticator Code - Enter the 6-digit 2FA code
- Email Verification - Click the link sent to your email (if required)
- Wait for verification to complete
Step 8: Save ALL THREE Values IMMEDIATELY
After verification, Bitget displays your API credentials. You MUST save all three:
| Value | Can View Later? | Action Required |
|---|---|---|
| API Key | ✅ Yes | Copy and save |
| Secret Key | ❌ NO - Never shown again | Copy immediately! |
| Passphrase | ❌ NO - You created this | Already saved it, right? |
Warning: The Secret Key is displayed only once. If you close the page without copying it, you'll need to delete this API key and create a new one.
Save all three values in your password manager now before proceeding.
Configuring Permissions
Configure the correct permissions to balance functionality and security.
Required Permissions
| Permission | Enable? | Why |
|---|---|---|
| Read | ✅ Yes | Allows SignalBee to check your balances and positions |
| Futures Trade | ✅ Yes - REQUIRED | Allows SignalBee to place and manage futures orders |
Never Enable These Permissions
| Permission | Enable? | Why |
|---|---|---|
| Withdraw | ❌ NEVER | SignalBee never needs withdrawal access. Enabling this is a serious security risk. |
| Transfer | ❌ No | Not required for SignalBee functionality |
| Spot Trade | Optional | Only if also using SignalBee for spot trading |
Critical: You MUST enable the Futures Trade permission. Without this, SignalBee cannot place futures orders even if your API key is valid. The Spot Trade permission is separate and won't work for futures.
How to Edit Permissions
- In API Management, find your SignalBee Futures API key
- Click the Edit button next to the key
- Modify the permission checkboxes as needed
- Click Confirm
- Complete 2FA verification
IP Whitelist Configuration
IP whitelisting restricts your API key to only work from specific IP addresses. This is optional but adds a strong security layer.
Why Use IP Whitelisting?
| Scenario | Without Whitelist | With Whitelist |
|---|---|---|
| SignalBee places trade | ✅ Works | ✅ Works |
| Attacker tries stolen key | ⚠️ Could work | ❌ Blocked |
Even if your API key is somehow exposed, it won't work from unauthorized IP addresses.
SignalBee Server IP Addresses
Note: Contact support@signalbee.trade to request SignalBee's current production IP addresses for whitelisting. We maintain static IPs specifically for exchange API calls and will notify you before any infrastructure changes.
How to Configure IP Whitelisting
- When creating or editing your API key, find the IP Addresses section
- Enter each SignalBee IP address (one per line)
- Click Confirm
- Complete verification
If You Skip IP Whitelisting
If you choose not to use IP whitelisting:
- Leave the IP address field empty
- Understand this is less secure but still safe if withdrawals are disabled
- Your other security measures (no withdrawal permission) still protect your funds
Adding to SignalBee
Now connect your Bitget Futures API key to SignalBee.
Step 1: Go to Exchanges Page
- Log in to your SignalBee account
- Navigate to Exchanges in the main menu
Step 2: Add New Exchange
- Click the Add Exchange button
- Select Bitget Perpetual from the exchange list
Critical: Make sure you select Bitget Perpetual, NOT "Bitget". These are different exchange connections for different account types. Selecting the wrong one will cause connection failures.
Step 3: Enter Your Credentials
Bitget Perpetual requires three fields:
| Field | Value |
|---|---|
| API Key | Your Bitget API key |
| Secret Key | Your Bitget Secret key |
| Passphrase | The passphrase you created when making the API key |
Tip: The Passphrase is the one YOU created during API key setup. Make sure you're entering it exactly as you set it—it's case-sensitive.
Step 4: Test the Connection
- Click Save and Test Connection
- Wait for SignalBee to verify your credentials
- Look for the success message
Step 5: Verify Your Setup
After successful connection:
- Your Bitget Futures balances should appear in SignalBee
- Check that your USDT balance matches your Futures wallet
- If you see your Spot balance instead, you may have selected the wrong exchange type
Tip: If balances don't appear or show $0, verify that:
- You selected "Bitget Perpetual" (not "Bitget")
- Your API key has the Futures Trade permission enabled
- You have transferred funds to your Futures wallet
Bitget Futures-Specific Considerations
Ticker Format
Bitget Futures uses a unique format with a product type suffix:
| SignalBee Format | Bitget Format |
|---|---|
| BTC-USDT | BTCUSDT_UMCBL |
| ETH-USDT | ETHUSDT_UMCBL |
| SOL-USDT | SOLUSDT_UMCBL |
The _UMCBL suffix identifies USDT-margined perpetual contracts. SignalBee automatically converts between formats—when configuring webhooks, use standard formats like BTC-USDT and SignalBee will handle the conversion.
Contract Types
| Type | Product Type | Symbol Suffix | SignalBee Support |
|---|---|---|---|
| USDT-M | USDT-FUTURES | _UMCBL | ✅ Primary support |
| USDC-M | — | _DMCBL | ❌ Not implemented |
SignalBee supports USDT-margined perpetual contracts only.
Minimum Order Sizes
Bitget Futures enforces minimum order values:
| Category | Typical Minimum |
|---|---|
| Major pairs (BTC, ETH) | ~$5 USD equivalent |
| Altcoin pairs | ~$5-10 USD equivalent |
Tip: Check Bitget's trading rules for current minimums.
Trading Fees
| Fee Type | Standard Rate | With BGB Discount |
|---|---|---|
| Maker | 0.02% | 0.018% (10% off) |
| Taker | 0.06% | 0.054% (10% off) |
Tip: Hold BGB (Bitget's native token) in your account and enable "Use BGB for fees" to get fee discounts.
API Rate Limits
- Public endpoints: 20 requests per 2 seconds
- Private endpoints: 10 requests per 2 seconds
- SignalBee handles rate limiting automatically
- If you see rate limit errors, reduce your signal frequency
Testnet for Practice
Bitget provides a simulated trading environment for practice:
- Testnet URL: api-simulated.bitget.com
- Create separate testnet API keys
- Practice trading without risking real funds
- Test your signal configurations before going live
Position Mode Configuration
Bitget Futures supports two position modes. Choose based on your trading strategy.
One-way Mode (Default)
| Aspect | Description |
|---|---|
| API Value | one_way_mode |
| Behavior | Single position per symbol |
| Long + Short | Not simultaneous (close long to open short) |
| Best For | Simple directional trading |
Hedge Mode
| Aspect | Description |
|---|---|
| API Value | hedge_mode |
| Behavior | Separate long and short positions |
| Long + Short | Can hold both simultaneously |
| Best For | Advanced strategies, hedging |
How to Change Position Mode
- Go to Bitget Futures trading page
- Click the Settings icon (gear)
- Select Position Mode
- Choose One-way Mode or Hedge Mode
- Confirm the change
Important: You cannot change position mode while you have open positions or pending orders. Close all positions and cancel all orders first.
Leverage and Margin Configuration
Setting Leverage
Leverage is configured per trading pair on Bitget:
- Open the trading page for your desired pair (e.g., BTCUSDT)
- Click the leverage display (e.g., "20x")
- Use the slider to select your desired leverage (1x to 125x)
- Click Confirm
| Symbol Category | Typical Max Leverage |
|---|---|
| BTC, ETH | Up to 125x |
| Major Altcoins | Up to 75x |
| Smaller Altcoins | Up to 50x |
Recommendation: Start with 5x leverage or less until you're comfortable with futures trading. Higher leverage means faster liquidation.
Margin Types
| Type | API Value | Description | Best For |
|---|---|---|---|
| Isolated | isolated | Only allocated margin at risk (default) | Limiting losses per trade |
| Cross | crossed | Entire Futures wallet as margin | Avoiding liquidation, larger accounts |
How to Switch Margin Type
- On the trading page, find the margin mode indicator
- Click to switch between Cross and Isolated
- For Isolated, you can set the margin amount per position
Tip: Isolated margin limits your maximum loss to the margin allocated to that position. Cross margin uses your entire Futures balance.
Understanding Liquidation
When your position losses exceed your margin:
- Your position is automatically closed (liquidated)
- You lose the margin allocated to that position
- With cross margin, liquidation uses more of your wallet balance
Liquidation price is shown on each open position. Always know your liquidation price before entering a trade.
Troubleshooting
Common Bitget Futures-specific errors and solutions:
| Error | Code | Likely Cause | Solution |
|---|---|---|---|
| Invalid API Key | 30001-30003 | Typo or deleted key | Re-copy API key carefully. Check key exists in Bitget. |
| Invalid Signature | 30004-30005 | Wrong Secret Key OR Passphrase | Verify both Secret Key AND Passphrase. Both must match exactly. |
| Invalid Passphrase | — | Passphrase doesn't match | Case-sensitive. Must match exactly what you created. If forgotten, create new API key. |
| Timestamp Error | 40004-40005, 40008 | Clock sync issue | Usually temporary. SignalBee handles automatic retry and time sync. |
| Futures Permission Denied | — | API missing Futures permission | Enable Futures Trade permission (not Spot Trade) in Bitget API settings. |
| Insufficient Margin | 34001-34003 | Not enough funds in Futures wallet | Transfer funds from Spot to Futures wallet. |
| Leverage Setting Failed | 40001-40006 | Invalid leverage for symbol | Check maximum leverage allowed for this symbol. |
| Position Mode Change Failed | — | Open positions exist | Close all positions and cancel all orders first. |
| Quantity Too Small | 43008 | Order quantity below minimum | Increase order quantity to meet Bitget minimums. |
| Min Notional Error | 43013 | Order value too small | Increase order size (quantity × price) to meet minimum. |
| Invalid Symbol | — | Wrong symbol format | SignalBee handles format conversion. Verify pair exists on Bitget Futures. |
| Order Not Found | 43001-43015 | Order already filled or canceled | Order may have been processed already. |
| Rate Limit | 50001-50002 | Too many requests | Reduce signal frequency. SignalBee handles retries automatically. |
Connection Test Fails?
If your connection test fails in SignalBee:
- Verify exchange selection - Must be "Bitget Perpetual", not "Bitget"
- Check all THREE values - API Key, Secret Key, AND Passphrase must all be correct
- Check the Passphrase - Most common error. Case-sensitive, must match exactly what you set.
- Verify Futures permission - Must have Futures Trade enabled (not just Spot Trade)
- Check Futures is enabled - You must have activated Futures on Bitget
- Wait a few minutes - New API keys may take 1-2 minutes to activate
- Check IP whitelist - If configured, ensure SignalBee's IPs are included
Funds Show as $0?
If SignalBee shows $0 balance:
- Verify exchange type - "Bitget Perpetual" shows Futures wallet, "Bitget" shows Spot wallet
- Transfer funds - Funds must be in Futures wallet, not Spot
- Check Reading permission - API key needs Read permission enabled
For persistent issues, see our Error Codes Reference or contact support@signalbee.trade.
Risk Warnings
CRITICAL: Perpetual futures trading carries significant risk. Read this section carefully.
Leverage Amplifies Both Gains AND Losses
| Leverage | 10% Price Move Against You |
|---|---|
| 1x | 10% loss |
| 5x | 50% loss |
| 10x | 100% loss (liquidated) |
| 20x | Liquidated at 5% move |
Higher leverage = faster liquidation. A 1% adverse price movement with 100x leverage results in complete loss.
Liquidation is Automatic and Final
- When margin is depleted, your position is forcibly closed
- You lose the entire margin allocated to that position
- There is no way to recover from liquidation
- Liquidation fees apply on top of losses
Funding Rates Affect Position Costs
- Perpetual contracts have funding payments every 8 hours
- If you're long and funding is positive, you pay shorts
- If you're short and funding is positive, you receive payment
- Funding can significantly affect profitability of longer-term positions
Risk Management Best Practices
- Start with low leverage (5x or less) until experienced
- Always use stop-losses to limit potential losses
- Never trade with funds you can't afford to lose
- Size positions appropriately - don't risk entire account
- Understand your liquidation price before entering trades
- Monitor funding rates for held positions
- Practice on testnet first before trading real funds
- Consider isolated margin to limit maximum loss per trade
Not Suitable For
Futures trading may not be appropriate if you:
- Are new to cryptocurrency trading
- Cannot afford to lose your entire investment
- Don't understand leverage and liquidation mechanics
- Are unable to monitor positions regularly
- Have high risk aversion
Security Best Practices
Follow this checklist to keep your Bitget account secure:
Bitget Account Security
- Enable 2FA with an authenticator app (Google Authenticator, Authy) - more secure than SMS
- Use a unique, strong login password for Bitget (not reused from other sites)
- Enable anti-phishing code on Bitget - helps identify legitimate emails
API Key Security
- Create a dedicated API key just for SignalBee Futures - don't reuse keys
- Use a strong, unique Passphrase - treat it like a password (8-32 characters)
- Never enable withdrawal permission - SignalBee never needs it
- Consider IP whitelisting for maximum security
- Never share your Secret Key via email, chat, or screenshots
- Never share your Passphrase - it's as sensitive as your Secret Key
- Store ALL THREE credentials in a password manager (1Password, Bitwarden, etc.)
- Use separate API keys for Spot and Futures if using both
Ongoing Security
- Review your API keys periodically in Bitget - delete any you don't recognize
- Rotate API keys every 90 days as a security habit
- Monitor trade and position history for any unauthorized activity
- Keep your email secure - it's used for Bitget account recovery
Security Note: Even with all precautions, the most important protection is never enabling withdrawal permissions. Without this permission, your funds cannot be moved off the exchange even if everything else is compromised.
Related Resources
- Bitget Spot Setup - For spot trading on Bitget
- API Key Best Practices - General API key security guidance
- Security Overview - How SignalBee protects your data
- Error Codes Reference - Common error messages explained