diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 906666552..a33f75428 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -2,7 +2,7 @@ version: 2 updates: - package-ecosystem: docker cooldown: - default-days: 4 + default-days: 7 directories: - "/" - "/docker" @@ -16,7 +16,7 @@ updates: - package-ecosystem: devcontainers directory: "/" cooldown: - default-days: 4 + default-days: 7 schedule: interval: daily open-pull-requests-limit: 10 @@ -24,7 +24,7 @@ updates: - package-ecosystem: pip directory: "/" cooldown: - default-days: 4 + default-days: 7 exclude: - ccxt schedule: @@ -51,7 +51,7 @@ updates: - package-ecosystem: "github-actions" directory: "/" cooldown: - default-days: 4 + default-days: 7 schedule: interval: "weekly" open-pull-requests-limit: 10 diff --git a/.github/workflows/binance-lev-tier-update.yml b/.github/workflows/binance-lev-tier-update.yml index 9ec4c3ec0..2a3b8bb95 100644 --- a/.github/workflows/binance-lev-tier-update.yml +++ b/.github/workflows/binance-lev-tier-update.yml @@ -15,7 +15,7 @@ jobs: environment: name: develop steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6.0.1 with: persist-credentials: false @@ -34,7 +34,7 @@ jobs: run: python build_helpers/binance_update_lev_tiers.py - - uses: peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e # v7.0.8 + - uses: peter-evans/create-pull-request@84ae59a2cdc2258d6fa0732dd66352dddae2a412 # v7.0.9 with: token: ${{ secrets.REPO_SCOPED_TOKEN }} add-paths: freqtrade/exchange/binance_leverage_tiers.json diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 919b51bcd..22b824194 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -28,7 +28,7 @@ jobs: python-version: ["3.11", "3.12", "3.13", "3.14"] steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6.0.1 with: persist-credentials: false @@ -38,7 +38,7 @@ jobs: python-version: ${{ matrix.python-version }} - name: Install uv - uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2 + uses: astral-sh/setup-uv@1e862dfacbd1d6d858c55d9b792c756523627244 # v7.1.4 with: activate-environment: true enable-cache: true @@ -74,15 +74,17 @@ jobs: run: | pytest --random-order --cov=freqtrade --cov=freqtrade_client --cov-config=.coveragerc - - name: Coveralls + - uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7 # v5.5.1 + if: (runner.os == 'Linux' && matrix.python-version == '3.12' && matrix.os == 'ubuntu-24.04') + with: + fail_ci_if_error: true + token: ${{ secrets.CODECOV_TOKEN }} + + - name: Cleanup codecov dirty state files if: (runner.os == 'Linux' && matrix.python-version == '3.12' && matrix.os == 'ubuntu-24.04') - env: - # Coveralls token. Not used as secret due to github not providing secrets to forked repositories - COVERALLS_REPO_TOKEN: 6D1m0xupS3FgutfuGao8keFf9Hc0FpIXu run: | - # Allow failure for coveralls - uv pip install coveralls - coveralls || true + # See https://github.com/codecov/codecov-action/issues/1851 + rm -rf codecov codecov.SHA256SUM codecov.SHA256SUM.sig - name: Run json schema extract # This should be kept before the repository check to ensure that the schema is up-to-date @@ -175,7 +177,7 @@ jobs: name: "Mypy Version Check" runs-on: ubuntu-24.04 steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6.0.1 with: persist-credentials: false @@ -193,7 +195,7 @@ jobs: name: "Pre-commit checks" runs-on: ubuntu-22.04 steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6.0.1 with: persist-credentials: false @@ -206,7 +208,7 @@ jobs: name: "Documentation build" runs-on: ubuntu-22.04 steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6.0.1 with: persist-credentials: false @@ -238,7 +240,7 @@ jobs: name: "Tests and Linting - Online tests" runs-on: ubuntu-24.04 steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6.0.1 with: persist-credentials: false @@ -248,7 +250,7 @@ jobs: python-version: "3.12" - name: Install uv - uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2 + uses: astral-sh/setup-uv@1e862dfacbd1d6d858c55d9b792c756523627244 # v7.1.4 with: activate-environment: true enable-cache: true @@ -273,10 +275,7 @@ jobs: # Notify only once - when CI completes (and after deploy) in case it's successful notify-complete: needs: [ - tests, - docs-check, - mypy-version-check, - pre-commit, + build, build-linux-online ] runs-on: ubuntu-22.04 @@ -304,12 +303,24 @@ jobs: webhookUrl: ${{ secrets.DISCORD_WEBHOOK }} build: + if: always() name: "Build" - needs: [ tests, docs-check, mypy-version-check, pre-commit ] + needs: [ + tests, + docs-check, + mypy-version-check, + pre-commit, + ] runs-on: ubuntu-22.04 steps: - - uses: actions/checkout@v5 + + - name: Decide whether the needed jobs succeeded or failed + uses: re-actors/alls-green@05ac9388f0aebcb5727afa17fcccfecd6f8ec5fe # v1.2.2 + with: + jobs: ${{ toJSON(needs) }} + + - uses: actions/checkout@v6.0.1 with: persist-credentials: false @@ -356,7 +367,7 @@ jobs: id-token: write steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6.0.1 with: persist-credentials: false @@ -385,7 +396,7 @@ jobs: id-token: write steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6.0.1 with: persist-credentials: false @@ -403,10 +414,7 @@ jobs: docker-build: name: "Docker Build and Deploy" needs: [ - tests, - docs-check, - mypy-version-check, - pre-commit + build, ] if: (github.event_name == 'push' || github.event_name == 'schedule' || github.event_name == 'release') && github.repository == 'freqtrade/freqtrade' uses: ./.github/workflows/docker-build.yml diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml index da033cfb8..33272efa6 100644 --- a/.github/workflows/deploy-docs.yml +++ b/.github/workflows/deploy-docs.yml @@ -19,7 +19,7 @@ jobs: name: Deploy Docs through mike runs-on: ubuntu-latest steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6.0.1 with: persist-credentials: true diff --git a/.github/workflows/devcontainer-build.yml b/.github/workflows/devcontainer-build.yml index 9946af5e9..485ff30ed 100644 --- a/.github/workflows/devcontainer-build.yml +++ b/.github/workflows/devcontainer-build.yml @@ -24,7 +24,7 @@ jobs: packages: write runs-on: ubuntu-latest steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6.0.1 with: persist-credentials: false - name: Login to GitHub Container Registry diff --git a/.github/workflows/docker-build.yml b/.github/workflows/docker-build.yml index b9faa7b75..500e02614 100644 --- a/.github/workflows/docker-build.yml +++ b/.github/workflows/docker-build.yml @@ -33,7 +33,7 @@ jobs: if: github.repository == 'freqtrade/freqtrade' steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6.0.1 with: persist-credentials: false @@ -152,7 +152,7 @@ jobs: if: github.repository == 'freqtrade/freqtrade' steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6.0.1 with: persist-credentials: false diff --git a/.github/workflows/docker-update-readme.yml b/.github/workflows/docker-update-readme.yml index a510aadf6..7f3a75280 100644 --- a/.github/workflows/docker-update-readme.yml +++ b/.github/workflows/docker-update-readme.yml @@ -11,7 +11,7 @@ jobs: dockerHubDescription: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6.0.1 with: persist-credentials: false diff --git a/.github/workflows/pre-commit-update.yml b/.github/workflows/pre-commit-update.yml index 666207901..fe46aa6fe 100644 --- a/.github/workflows/pre-commit-update.yml +++ b/.github/workflows/pre-commit-update.yml @@ -13,7 +13,7 @@ jobs: auto-update: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6.0.1 with: persist-credentials: false @@ -28,7 +28,7 @@ jobs: - name: Run auto-update run: pre-commit autoupdate - - uses: peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e # v7.0.8 + - uses: peter-evans/create-pull-request@84ae59a2cdc2258d6fa0732dd66352dddae2a412 # v7.0.9 with: token: ${{ secrets.REPO_SCOPED_TOKEN }} add-paths: .pre-commit-config.yaml diff --git a/.github/workflows/zizmor.yml b/.github/workflows/zizmor.yml index 6b9308bf9..cec2469b8 100644 --- a/.github/workflows/zizmor.yml +++ b/.github/workflows/zizmor.yml @@ -14,6 +14,7 @@ permissions: {} jobs: zizmor: + name: Run zizmor 🌈 runs-on: ubuntu-latest permissions: security-events: write @@ -21,9 +22,9 @@ jobs: # actions: read # only needed for private repos steps: - name: Checkout repository - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@v6.0.1 with: persist-credentials: false - name: Run zizmor 🌈 - uses: zizmorcore/zizmor-action@e673c3917a1aef3c65c972347ed84ccd013ecda4 # v0.2.0 + uses: zizmorcore/zizmor-action@e639db99335bc9038abc0e066dfcd72e23d26fb4 # v0.3.0 diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index ade5cc702..e174acc50 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -21,7 +21,7 @@ repos: # stages: [push] - repo: https://github.com/pre-commit/mirrors-mypy - rev: "v1.18.2" + rev: "v1.19.1" hooks: - id: mypy exclude: build_helpers @@ -30,8 +30,8 @@ repos: - types-filelock==3.2.7 - types-requests==2.32.4.20250913 - types-tabulate==0.9.0.20241207 - - types-python-dateutil==2.9.0.20251008 - - scipy-stubs==1.16.3.0 + - types-python-dateutil==2.9.0.20251115 + - scipy-stubs==1.16.3.2 - SQLAlchemy==2.0.44 # stages: [push] @@ -44,7 +44,7 @@ repos: - repo: https://github.com/charliermarsh/ruff-pre-commit # Ruff version. - rev: 'v0.14.4' + rev: 'v0.14.9' hooks: - id: ruff - id: ruff-format @@ -83,6 +83,6 @@ repos: # Ensure github actions remain safe - repo: https://github.com/woodruffw/zizmor-pre-commit - rev: v1.16.3 + rev: v1.18.0 hooks: - id: zizmor diff --git a/README.md b/README.md index 8c8adc9d3..cc02d41ae 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ This software is for educational purposes only. Do not risk money which you are afraid to lose. USE THE SOFTWARE AT YOUR OWN RISK. THE AUTHORS AND ALL AFFILIATES ASSUME NO RESPONSIBILITY FOR YOUR TRADING RESULTS. -Always start by running a trading bot in Dry-run and do not engage money +Always start by running a trading bot in Dry-Run and do not engage money before you understand how it works and what profit/loss you should expect. @@ -24,7 +24,7 @@ hesitate to read the source code and understand the mechanism of this bot. ## Supported Exchange marketplaces -Please read the [exchange specific notes](docs/exchanges.md) to learn about eventual, special configurations needed for each exchange. +Please read the [exchange-specific notes](docs/exchanges.md) to learn about special configurations that maybe needed for each exchange. - [X] [Binance](https://www.binance.com/) - [X] [BingX](https://bingx.com/invite/0EM9RX) diff --git a/build_helpers/create_command_partials.py b/build_helpers/create_command_partials.py index dc69117b7..0d161c64e 100644 --- a/build_helpers/create_command_partials.py +++ b/build_helpers/create_command_partials.py @@ -1,4 +1,5 @@ import subprocess # noqa: S404, RUF100 +import sys from pathlib import Path @@ -62,4 +63,9 @@ def extract_command_partials(): if __name__ == "__main__": + if sys.version_info < (3, 13): # pragma: no cover + sys.exit( + "argparse output changed in Python 3.13+. " + "To keep command partials up to date, please run this script with Python 3.13+." + ) extract_command_partials() diff --git a/docs/commands/download-data.md b/docs/commands/download-data.md index 35f15d19d..dd6474e12 100644 --- a/docs/commands/download-data.md +++ b/docs/commands/download-data.md @@ -11,6 +11,7 @@ usage: freqtrade download-data [-h] [-v] [--no-color] [--logfile FILE] [-V] [--data-format-ohlcv {json,jsongz,feather,parquet}] [--data-format-trades {json,jsongz,feather,parquet}] [--trading-mode {spot,margin,futures}] + [--candle-types {spot,futures,mark,index,premiumIndex,funding_rate} [{spot,futures,mark,index,premiumIndex,funding_rate} ...]] [--prepend] options: @@ -50,6 +51,11 @@ options: `feather`). --trading-mode, --tradingmode {spot,margin,futures} Select Trading mode + --candle-types {spot,futures,mark,index,premiumIndex,funding_rate} [{spot,futures,mark,index,premiumIndex,funding_rate} ...] + Select candle type to download. Defaults to the + necessary candles for the selected trading mode (e.g. + 'spot' or ('futures', 'funding_rate' and 'mark') for + futures). --prepend Allow data prepending. (Data-appending is disabled) Common arguments: diff --git a/docs/commands/list-timeframes.md b/docs/commands/list-timeframes.md index a2c3a4f67..8d3c0da48 100644 --- a/docs/commands/list-timeframes.md +++ b/docs/commands/list-timeframes.md @@ -2,11 +2,14 @@ usage: freqtrade list-timeframes [-h] [-v] [--no-color] [--logfile FILE] [-V] [-c PATH] [-d PATH] [--userdir PATH] [--exchange EXCHANGE] [-1] + [--trading-mode {spot,margin,futures}] options: -h, --help show this help message and exit --exchange EXCHANGE Exchange name. Only valid if no config is provided. -1, --one-column Print output in one column. + --trading-mode, --tradingmode {spot,margin,futures} + Select Trading mode Common arguments: -v, --verbose Verbose mode (-vv for more, -vvv to get all messages). diff --git a/docs/configuration.md b/docs/configuration.md index e046f52d6..48211619b 100644 --- a/docs/configuration.md +++ b/docs/configuration.md @@ -675,7 +675,7 @@ Should you experience problems you suspect are caused by websockets, you can dis Should you be required to use a proxy, please refer to the [proxy section](#using-a-proxy-with-freqtrade) for more information. !!! Info "Rollout" - We're implementing this out slowly, ensuring stability of your bots. + We're rolling this out slowly, ensuring stability of your bots. Currently, usage is limited to ohlcv data streams. It's also limited to a few exchanges, with new exchanges being added on an ongoing basis. diff --git a/docs/data-download.md b/docs/data-download.md index c2b104b1b..4339e9862 100644 --- a/docs/data-download.md +++ b/docs/data-download.md @@ -60,6 +60,7 @@ freqtrade download-data --exchange binance --pairs ".*/USDT" * Given starting points are ignored if data is already available, downloading only missing data up to today. * Use `--timeframes` to specify what timeframe download the historical candle (OHLCV) data for. Default is `--timeframes 1m 5m` which will download 1-minute and 5-minute data. * To use exchange, timeframe and list of pairs as defined in your configuration file, use the `-c/--config` option. With this, the script uses the whitelist defined in the config as the list of currency pairs to download data for and does not require the pairs.json file. You can combine `-c/--config` with most other options. +* When downloading futures data (`--trading-mode futures` or a configuration specifying futures mode), freqtrade will automatically download the necessary candle types (e.g. `mark` and `funding_rate` candles) unless specified otherwise via `--candle-types`. ??? Note "Permission denied errors" If your configuration directory `user_data` was made by docker, you may get the following error: diff --git a/docs/deprecated.md b/docs/deprecated.md index f6ef8768f..ce3bf3b95 100644 --- a/docs/deprecated.md +++ b/docs/deprecated.md @@ -98,3 +98,40 @@ Please use configuration based [log setup](advanced-setup.md#advanced-logging) i The edge module has been deprecated in 2023.9 and removed in 2025.6. All functionalities of edge have been removed, and having edge configured will result in an error. + +## Adjustment to dynamic funding rate handling + +With version 2025.12, the handling of dynamic funding rates has been adjusted to also support dynamic funding rates down to 1h funding intervals. +As a consequence, the mark and funding rate timeframes have been changed to 1h for every supported futures exchange. + +As the timeframe for both mark and funding_fee candles has changed (usually from 8h to 1h) - already downloaded data will have to be adjusted or partially re-downloaded. +You can either re-download everything (`freqtrade download-data [...] --erase` - :warning: can take a long time) - or download the updated data selectively. + +### Strategy + +Most strategies should not need adjustments to continue to work as expected - however, strategies using `@informative("8h", candle_type="funding_rate")` or similar will have to switch the timeframe to 1h. +The same is true for `dp.get_pair_dataframe(metadata["pair"], "8h", candle_type="funding_rate")` - which will need to be switched to 1h. + +freqtrade will auto-adjust the timeframe and return `funding_rates` despite the wrongly given timeframe. It'll issue a warning - and may still break your strategy. + +### Selective data re-download + +The script below should serve as an example - you may need to adjust the timeframe and exchange to your needs! + +``` bash +# Cleanup no longer needed data +rm user_data/data//futures/*-mark-* +rm user_data/data//futures/*-funding_rate-* + +# download new data (only required once to fix the mark and funding fee data) +freqtrade download-data -t 1h --trading-mode futures --candle-types funding_rate mark [...] --timerange + +``` + +The result of the above will be that your funding_rates and mark data will have the 1h timeframe. +you can verify this with `freqtrade list-data --exchange --show`. + +!!! Note "Additional arguments" + Additional arguments to the above commands may be necessary, like configuration files or explicit user_data if they deviate from the default. + +**Hyperliquid** is a special case now - which will no longer require 1h mark data - but will use regular candles instead (this data never existed and is identical to 1h futures candles). As we don't support download-data for hyperliquid (they don't provide historic data) - there won't be actions necessary for hyperliquid users. diff --git a/docs/developer.md b/docs/developer.md index bb3542b92..d470bf8b2 100644 --- a/docs/developer.md +++ b/docs/developer.md @@ -26,10 +26,19 @@ Alternatively (e.g. if your system is not supported by the setup.sh script), fol This will install all required tools for development, including `pytest`, `ruff`, `mypy`, and `coveralls`. -Then install the git hook scripts by running `pre-commit install`, so your changes will be verified locally before committing. -This avoids a lot of waiting for CI already, as some basic formatting checks are done locally on your machine. +Run the following command to install the git hook scripts: -Before opening a pull request, please familiarize yourself with our [Contributing Guidelines](https://github.com/freqtrade/freqtrade/blob/develop/CONTRIBUTING.md). +``` bash +pre-commit install +``` + +These pre-commit scripts check your changes automatically before each commit. +If any formatting issues are found, the commit will fail and will prompt for fixes. +This reduces unnecessary CI failures, reduces maintenance burden, and improves code quality. + +You can run the checks manually when necessary with `pre-commit run -a`. + +Before opening a pull request, please also familiarize yourself with our [Contributing Guidelines](https://github.com/freqtrade/freqtrade/blob/develop/CONTRIBUTING.md). ### Devcontainer setup diff --git a/docs/includes/pairlists.md b/docs/includes/pairlists.md index c19e779e3..2ee7533f2 100644 --- a/docs/includes/pairlists.md +++ b/docs/includes/pairlists.md @@ -417,7 +417,7 @@ This filter allows freqtrade to ignore pairs until they have been listed for at Removes pairs that will be delisted on the exchange maximum `max_days_from_now` days from now (defaults to `0` which remove all future delisted pairs no matter how far from now). Currently this filter only supports following exchanges: !!! Note "Available exchanges" - Delist filter is only available on Binance, where Binance Futures will work for both dry and live modes, while Binance Spot is limited to live mode (for technical reasons). + Delist filter is available on Bybit Futures, Bitget Futures and Binance, where Binance Futures will work for both dry and live modes, while Binance Spot is limited to live mode (for technical reasons). !!! Warning "Backtesting" `DelistFilter` does not support backtesting mode. diff --git a/docs/requirements-docs.txt b/docs/requirements-docs.txt index 3c927da23..becef5127 100644 --- a/docs/requirements-docs.txt +++ b/docs/requirements-docs.txt @@ -1,7 +1,7 @@ markdown==3.10 mkdocs==1.6.1 -mkdocs-material==9.6.23 +mkdocs-material==9.7.0 mdx_truly_sane_lists==1.3 -pymdown-extensions==10.16.1 +pymdown-extensions==10.18 jinja2==3.1.6 mike==2.1.3 diff --git a/docs/stoploss.md b/docs/stoploss.md index 9eb3f9c90..f12c86abd 100644 --- a/docs/stoploss.md +++ b/docs/stoploss.md @@ -31,9 +31,14 @@ The Order-type will be ignored if only one mode is available. --8<-- "includes/exchange-features.md" !!! Note "Tight stoploss" - Do not set too low/tight stoploss value when using stop loss on exchange! + Do not set too low/tight stoploss value when using stop loss on exchange! If set to low/tight you will have greater risk of missing fill on the order and stoploss will not work. +!!! Warning "Loose stoploss" + Using stoploss on exchange with a very wide stoploss (e.g. -1) may fail to place the stoploss order on exchange due to exchange limitations. + In that case, the bot will fallback to using the `emergency_exit` order type to place a market order as placing the stoploss order failed. + Freqtrade currently does not implement a limitation to avoid this situation, so please ensure your stoploss values are within reasonable limits for your exchange or disable stoploss on exchange. + ### stoploss_on_exchange and stoploss_on_exchange_limit_ratio Enable or Disable stop loss on exchange. diff --git a/docs/strategy-callbacks.md b/docs/strategy-callbacks.md index 5853d23e1..c24857612 100644 --- a/docs/strategy-callbacks.md +++ b/docs/strategy-callbacks.md @@ -634,7 +634,7 @@ class AwesomeStrategy(IStrategy): ## Custom order price rules -By default, freqtrade use the orderbook to automatically set an order price([Relevant documentation](configuration.md#prices-used-for-orders)), you also have the option to create custom order prices based on your strategy. +By default, freqtrade use the orderbook to automatically set an order price ([Relevant documentation](configuration.md#prices-used-for-orders)), you also have the option to create custom order prices based on your strategy. You can use this feature by creating a `custom_entry_price()` function in your strategy file to customize entry prices and `custom_exit_price()` for exits. @@ -644,7 +644,7 @@ Each of these methods are called right before placing an order on the exchange. If your custom pricing function return None or an invalid value, price will fall back to `proposed_rate`, which is based on the regular pricing configuration. !!! Note - Using custom_entry_price, the Trade object will be available as soon as the first entry order associated with the trade is created, for the first entry, `trade` parameter value will be `None`. + When using `custom_entry_price()`, the Trade object will be available as soon as the first entry order associated with the trade is created, for the first entry, `trade` parameter value will be `None`. ### Custom order entry and exit price example diff --git a/freqtrade/__init__.py b/freqtrade/__init__.py index 641600a4d..a7acc6638 100644 --- a/freqtrade/__init__.py +++ b/freqtrade/__init__.py @@ -1,6 +1,6 @@ """Freqtrade bot""" -__version__ = "2025.11-dev" +__version__ = "2025.12-dev" if "dev" in __version__: from pathlib import Path diff --git a/freqtrade/commands/arguments.py b/freqtrade/commands/arguments.py index e6805ed5a..f84822ac8 100755 --- a/freqtrade/commands/arguments.py +++ b/freqtrade/commands/arguments.py @@ -3,6 +3,7 @@ This module contains the argument manager class """ from argparse import ArgumentParser, Namespace, _ArgumentGroup +from copy import deepcopy from functools import partial from pathlib import Path from typing import Any @@ -104,7 +105,7 @@ ARGS_BACKTEST_SHOW = [ ARGS_LIST_EXCHANGES = ["print_one_column", "list_exchanges_all", "trading_mode", "dex_exchanges"] -ARGS_LIST_TIMEFRAMES = ["exchange", "print_one_column"] +ARGS_LIST_TIMEFRAMES = ["exchange", "print_one_column", "trading_mode"] ARGS_LIST_PAIRS = [ "exchange", @@ -174,6 +175,7 @@ ARGS_DOWNLOAD_DATA = [ "dataformat_ohlcv", "dataformat_trades", "trading_mode", + "candle_types", "prepend_data", ] @@ -348,7 +350,11 @@ class Arguments: def _build_args(self, optionlist: list[str], parser: ArgumentParser | _ArgumentGroup) -> None: for val in optionlist: opt = AVAILABLE_CLI_OPTIONS[val] - parser.add_argument(*opt.cli, dest=val, **opt.kwargs) + options = deepcopy(opt.kwargs) + help_text = options.pop("help", None) + if opt.fthelp and isinstance(opt.fthelp, dict) and hasattr(parser, "prog"): + help_text = opt.fthelp.get(parser.prog, help_text) + parser.add_argument(*opt.cli, dest=val, help=help_text, **options) def _build_subcommands(self) -> None: """ diff --git a/freqtrade/commands/cli_options.py b/freqtrade/commands/cli_options.py index c256c46f3..ebc221523 100755 --- a/freqtrade/commands/cli_options.py +++ b/freqtrade/commands/cli_options.py @@ -38,8 +38,14 @@ def check_int_nonzero(value: str) -> int: class Arg: # Optional CLI arguments - def __init__(self, *args, **kwargs): + def __init__(self, *args, fthelp: dict[str, str] | None = None, **kwargs): + """ + CLI Arguments - used to build subcommand parsers consistently. + :param fthelp: dict - fthelp per command - should be "freqtrade ": help_text + If not provided or not found, 'help' from kwargs is used instead. + """ self.cli = args + self.fthelp = fthelp self.kwargs = kwargs @@ -422,6 +428,14 @@ AVAILABLE_CLI_OPTIONS = { ), "candle_types": Arg( "--candle-types", + fthelp={ + "freqtrade download-data": ( + "Select candle type to download. " + "Defaults to the necessary candles for the selected trading mode " + "(e.g. 'spot' or ('futures', 'funding_rate' and 'mark') for futures)." + ), + "_": "Select candle type to convert. Defaults to all available types.", + }, help="Select candle type to convert. Defaults to all available types.", choices=[c.value for c in CandleType], nargs="+", diff --git a/freqtrade/data/converter/converter.py b/freqtrade/data/converter/converter.py index 4331519c2..99301d291 100644 --- a/freqtrade/data/converter/converter.py +++ b/freqtrade/data/converter/converter.py @@ -38,7 +38,8 @@ def ohlcv_to_dataframe( cols = DEFAULT_DATAFRAME_COLUMNS df = DataFrame(ohlcv, columns=cols) - df["date"] = to_datetime(df["date"], unit="ms", utc=True) + # Floor date to seconds to account for exchange imprecisions + df["date"] = to_datetime(df["date"], unit="ms", utc=True).dt.floor("s") # Some exchanges return int values for Volume and even for OHLC. # Convert them since TA-LIB indicators used in the strategy assume floats diff --git a/freqtrade/data/dataprovider.py b/freqtrade/data/dataprovider.py index dfab29c08..ed396ba8e 100644 --- a/freqtrade/data/dataprovider.py +++ b/freqtrade/data/dataprovider.py @@ -348,6 +348,22 @@ class DataProvider: ) return total_candles + def __fix_funding_rate_timeframe( + self, pair: str, timeframe: str | None, candle_type: str + ) -> str | None: + if ( + candle_type == CandleType.FUNDING_RATE + and (ff_tf := self.get_funding_rate_timeframe()) != timeframe + ): + # TODO: does this message make sense? might be pointless as funding fees don't + # have a timeframe + logger.warning( + f"{pair}, {timeframe} requested - funding rate timeframe not matching {ff_tf}." + ) + return ff_tf + + return timeframe + def get_pair_dataframe( self, pair: str, timeframe: str | None = None, candle_type: str = "" ) -> DataFrame: @@ -361,6 +377,7 @@ class DataProvider: :return: Dataframe for this pair :param candle_type: '', mark, index, premiumIndex, or funding_rate """ + timeframe = self.__fix_funding_rate_timeframe(pair, timeframe, candle_type) if self.runmode in (RunMode.DRY_RUN, RunMode.LIVE): # Get live OHLCV data. data = self.ohlcv(pair=pair, timeframe=timeframe, candle_type=candle_type) @@ -620,3 +637,12 @@ class DataProvider: except ExchangeError: logger.warning(f"Could not fetch market data for {pair}. Assuming no delisting.") return None + + def get_funding_rate_timeframe(self) -> str: + """ + Get the funding rate timeframe from exchange options + :return: Timeframe string + """ + if self._exchange is None: + raise OperationalException(NO_EXCHANGE_EXCEPTION) + return self._exchange.get_option("funding_fee_timeframe") diff --git a/freqtrade/data/history/datahandlers/idatahandler.py b/freqtrade/data/history/datahandlers/idatahandler.py index 67ae386c6..9e7d9de3a 100644 --- a/freqtrade/data/history/datahandlers/idatahandler.py +++ b/freqtrade/data/history/datahandlers/idatahandler.py @@ -397,6 +397,9 @@ class IDataHandler(ABC): pairdf = self._ohlcv_load( pair, timeframe, timerange=timerange_startup, candle_type=candle_type ) + if not pairdf.empty and candle_type == CandleType.FUNDING_RATE: + # Funding rate data is sometimes off by a couple of ms - floor to seconds + pairdf["date"] = pairdf["date"].dt.floor("s") if self._check_empty_df(pairdf, pair, timeframe, candle_type, warn_no_data): return pairdf else: @@ -508,8 +511,15 @@ class IDataHandler(ABC): Applies to bybit and okx, where funding-fee and mark candles have different timeframes. """ paircombs = self.ohlcv_get_available_data(self._datadir, TradingMode.FUTURES) + ff_timeframe_s = timeframe_to_seconds(ff_timeframe) + funding_rate_combs = [ - f for f in paircombs if f[2] == CandleType.FUNDING_RATE and f[1] != ff_timeframe + f + for f in paircombs + if f[2] == CandleType.FUNDING_RATE + and f[1] != ff_timeframe + # Only allow smaller timeframes to move from smaller to larger timeframes + and timeframe_to_seconds(f[1]) < ff_timeframe_s ] if funding_rate_combs: diff --git a/freqtrade/data/history/history_utils.py b/freqtrade/data/history/history_utils.py index 40c989733..13b7101cd 100644 --- a/freqtrade/data/history/history_utils.py +++ b/freqtrade/data/history/history_utils.py @@ -308,11 +308,15 @@ def _download_pair_history( candle_type=candle_type, until_ms=until_ms if until_ms else None, ) - logger.info(f"Downloaded data for {pair} with length {len(new_dataframe)}.") + logger.info( + f"Downloaded data for {pair}, {timeframe}, {candle_type} with length " + f"{len(new_dataframe)}." + ) else: new_dataframe = pair_candles logger.info( - f"Downloaded data for {pair} with length {len(new_dataframe)}. Parallel Method." + f"Downloaded data for {pair}, {timeframe}, {candle_type} with length " + f"{len(new_dataframe)}. Parallel Method." ) if data.empty: @@ -349,6 +353,7 @@ def _download_pair_history( def refresh_backtest_ohlcv_data( exchange: Exchange, + *, pairs: list[str], timeframes: list[str], datadir: Path, @@ -359,6 +364,7 @@ def refresh_backtest_ohlcv_data( data_format: str | None = None, prepend: bool = False, progress_tracker: CustomProgress | None = None, + candle_types: list[CandleType] | None = None, no_parallel_download: bool = False, ) -> list[str]: """ @@ -371,10 +377,44 @@ def refresh_backtest_ohlcv_data( pairs_not_available = [] fast_candles: dict[PairWithTimeframe, DataFrame] = {} data_handler = get_datahandler(datadir, data_format) - candle_type = CandleType.get_default(trading_mode) + def_candletype = CandleType.SPOT if trading_mode != "futures" else CandleType.FUTURES + if trading_mode != "futures": + # Ignore user passed candle types for non-futures trading + timeframes_with_candletype = [(tf, def_candletype) for tf in timeframes] + else: + # Filter out SPOT candle type for futures trading + candle_types = ( + [ct for ct in candle_types if ct != CandleType.SPOT] if candle_types else None + ) + fr_candle_type = CandleType.from_string(exchange.get_option("mark_ohlcv_price")) + tf_funding_rate = exchange.get_option("funding_fee_timeframe") + tf_mark = exchange.get_option("mark_ohlcv_timeframe") + + if candle_types: + for ct in candle_types: + exchange.verify_candle_type_support(ct) + timeframes_with_candletype = [ + (tf, ct) + for ct in candle_types + for tf in timeframes + if ct != CandleType.FUNDING_RATE + ] + else: + # Default behavior + timeframes_with_candletype = [(tf, def_candletype) for tf in timeframes] + timeframes_with_candletype.append((tf_mark, fr_candle_type)) + if not candle_types or CandleType.FUNDING_RATE in candle_types: + # All exchanges need FundingRate for futures trading. + # The timeframe is aligned to the mark-price timeframe. + timeframes_with_candletype.append((tf_funding_rate, CandleType.FUNDING_RATE)) + # Deduplicate list ... + timeframes_with_candletype = list(dict.fromkeys(timeframes_with_candletype)) + logger.debug( + "Downloading %s.", ", ".join(f'"{tf} {ct}"' for tf, ct in timeframes_with_candletype) + ) + with progress_tracker as progress: - tf_length = len(timeframes) if trading_mode != "futures" else len(timeframes) + 2 - timeframe_task = progress.add_task("Timeframe", total=tf_length) + timeframe_task = progress.add_task("Timeframe", total=len(timeframes_with_candletype)) pair_task = progress.add_task("Downloading data...", total=len(pairs)) for pair in pairs: @@ -385,11 +425,13 @@ def refresh_backtest_ohlcv_data( pairs_not_available.append(f"{pair}: Pair not available on exchange.") logger.info(f"Skipping pair {pair}...") continue - for timeframe in timeframes: + for timeframe, candle_type in timeframes_with_candletype: # Get fast candles via parallel method on first loop through per timeframe # and candle type. Downloads all the pairs in the list and stores them. + # Also skips if only 1 pair/timeframe combination is scheduled for download. if ( not no_parallel_download + and (len(pairs) + len(timeframes)) > 2 and exchange.get_option("download_data_parallel_quick", True) and ( ((pair, timeframe, candle_type) not in fast_candles) @@ -410,7 +452,7 @@ def refresh_backtest_ohlcv_data( # get the already downloaded pair candles if they exist pair_candles = fast_candles.pop((pair, timeframe, candle_type), None) - progress.update(timeframe_task, description=f"Timeframe {timeframe}") + progress.update(timeframe_task, description=f"Timeframe {timeframe} {candle_type}") logger.debug(f"Downloading pair {pair}, {candle_type}, interval {timeframe}.") _download_pair_history( pair=pair, @@ -426,33 +468,6 @@ def refresh_backtest_ohlcv_data( pair_candles=pair_candles, # optional pass of dataframe of parallel candles ) progress.update(timeframe_task, advance=1) - if trading_mode == "futures": - # Predefined candletype (and timeframe) depending on exchange - # Downloads what is necessary to backtest based on futures data. - tf_mark = exchange.get_option("mark_ohlcv_timeframe") - tf_funding_rate = exchange.get_option("funding_fee_timeframe") - - fr_candle_type = CandleType.from_string(exchange.get_option("mark_ohlcv_price")) - # All exchanges need FundingRate for futures trading. - # The timeframe is aligned to the mark-price timeframe. - combs = ((CandleType.FUNDING_RATE, tf_funding_rate), (fr_candle_type, tf_mark)) - for candle_type_f, tf in combs: - logger.debug(f"Downloading pair {pair}, {candle_type_f}, interval {tf}.") - _download_pair_history( - pair=pair, - datadir=datadir, - exchange=exchange, - timerange=timerange, - data_handler=data_handler, - timeframe=str(tf), - new_pairs_days=new_pairs_days, - candle_type=candle_type_f, - erase=erase, - prepend=prepend, - ) - progress.update( - timeframe_task, advance=1, description=f"Timeframe {candle_type_f}, {tf}" - ) progress.update(pair_task, advance=1) progress.update(timeframe_task, description="Timeframe") @@ -474,7 +489,7 @@ def _download_all_pairs_history_parallel( :return: Candle pairs with timeframes """ candles: dict[PairWithTimeframe, DataFrame] = {} - since = 0 + since: int | None = None if timerange: if timerange.starttype == "date": since = timerange.startts * 1000 @@ -482,10 +497,12 @@ def _download_all_pairs_history_parallel( candle_limit = exchange.ohlcv_candle_limit(timeframe, candle_type) one_call_min_time_dt = dt_ts(date_minus_candles(timeframe, candle_limit)) # check if we can get all candles in one go, if so then we can download them in parallel - if since > one_call_min_time_dt: + if since is None or since > one_call_min_time_dt: logger.info( - f"Downloading parallel candles for {timeframe} for all pairs " - f"since {format_ms_time(since)}" + f"Downloading parallel candles for {timeframe} for all pairs" + f" since {format_ms_time(since)}" + if since + else "." ) needed_pairs: ListPairsWithTimeframes = [ (p, timeframe, candle_type) for p in [p for p in pairs] @@ -796,6 +813,7 @@ def download_data( trading_mode=config.get("trading_mode", "spot"), prepend=config.get("prepend_data", False), progress_tracker=progress_tracker, + candle_types=config.get("candle_types"), no_parallel_download=config.get("no_parallel_download", False), ) finally: diff --git a/freqtrade/data/metrics.py b/freqtrade/data/metrics.py index 7e0b279f4..cf59c330a 100644 --- a/freqtrade/data/metrics.py +++ b/freqtrade/data/metrics.py @@ -74,9 +74,10 @@ def combined_dataframes_with_rel_mean( df_comb = combine_dataframes_by_column(data, column) # Trim dataframes to the given timeframe df_comb = df_comb.iloc[(df_comb.index >= fromdt) & (df_comb.index < todt)] + rel_mean = df_comb.pct_change().mean(axis=1).fillna(0).cumsum() df_comb["count"] = df_comb.count(axis=1) df_comb["mean"] = df_comb.mean(axis=1) - df_comb["rel_mean"] = df_comb["mean"].pct_change().fillna(0).cumsum() + df_comb["rel_mean"] = rel_mean return df_comb[["mean", "rel_mean", "count"]] @@ -143,6 +144,20 @@ def _calc_drawdown_series( max_drawdown_df["drawdown_relative"] = ( max_drawdown_df["high_value"] - max_drawdown_df["cumulative"] ) / max_drawdown_df["high_value"] + + # Add zero row at start to account for edge-cases with no winning / losing trades - so high/low + # will be 0.0 in such cases. + zero_row = pd.DataFrame( + { + "cumulative": [0.0], + "high_value": [0.0], + "drawdown": [0.0], + "drawdown_relative": [0.0], + "date": [profit_results.loc[0, date_col]], + } + ) + + max_drawdown_df = pd.concat([zero_row, max_drawdown_df], ignore_index=True) return max_drawdown_df @@ -215,6 +230,7 @@ def calculate_max_drawdown( max_drawdown_df = _calc_drawdown_series( profit_results, date_col=date_col, value_col=value_col, starting_balance=starting_balance ) + # max_drawdown_df has an extra zero row at the start # Calculate maximum drawdown idxmin = ( @@ -223,15 +239,15 @@ def calculate_max_drawdown( else max_drawdown_df["drawdown"].idxmin() ) high_idx = max_drawdown_df.iloc[: idxmin + 1]["high_value"].idxmax() - high_date = profit_results.loc[high_idx, date_col] - low_date = profit_results.loc[idxmin, date_col] - high_val = max_drawdown_df.loc[high_idx, "cumulative"] - low_val = max_drawdown_df.loc[idxmin, "cumulative"] - max_drawdown_rel = max_drawdown_df.loc[idxmin, "drawdown_relative"] + high_date = profit_results.at[max(high_idx - 1, 0), date_col] + low_date = profit_results.at[max(idxmin - 1, 0), date_col] + high_val = max_drawdown_df.at[high_idx, "cumulative"] + low_val = max_drawdown_df.at[idxmin, "cumulative"] + max_drawdown_rel = max_drawdown_df.at[idxmin, "drawdown_relative"] # Calculate current drawdown current_high_idx = max_drawdown_df["high_value"].iloc[:-1].idxmax() - current_high_date = profit_results.loc[current_high_idx, date_col] + current_high_date = profit_results.at[max(current_high_idx - 1, 0), date_col] current_high_value = max_drawdown_df.iloc[-1]["high_value"] current_cumulative = max_drawdown_df.iloc[-1]["cumulative"] current_drawdown_abs = current_high_value - current_cumulative diff --git a/freqtrade/exchange/__init__.py b/freqtrade/exchange/__init__.py index 667bbfe42..075906e11 100644 --- a/freqtrade/exchange/__init__.py +++ b/freqtrade/exchange/__init__.py @@ -4,7 +4,7 @@ from freqtrade.exchange.common import MAP_EXCHANGE_CHILDCLASS from freqtrade.exchange.exchange import Exchange # isort: on -from freqtrade.exchange.binance import Binance +from freqtrade.exchange.binance import Binance, Binanceus, Binanceusdm from freqtrade.exchange.bingx import Bingx from freqtrade.exchange.bitget import Bitget from freqtrade.exchange.bitmart import Bitmart diff --git a/freqtrade/exchange/binance.py b/freqtrade/exchange/binance.py index 807aa27cf..37c355d4d 100644 --- a/freqtrade/exchange/binance.py +++ b/freqtrade/exchange/binance.py @@ -5,7 +5,6 @@ from datetime import UTC, datetime from pathlib import Path import ccxt -from cachetools import TTLCache from pandas import DataFrame from freqtrade.constants import DEFAULT_DATAFRAME_COLUMNS @@ -18,9 +17,10 @@ from freqtrade.exchange.binance_public_data import ( download_archive_trades, ) from freqtrade.exchange.common import retrier -from freqtrade.exchange.exchange_types import FtHas, Tickers +from freqtrade.exchange.exchange_types import CcxtOrder, FtHas, Tickers from freqtrade.exchange.exchange_utils_timeframe import timeframe_to_msecs from freqtrade.misc import deep_merge_dicts, json_load +from freqtrade.util import FtTTLCache from freqtrade.util.datetime_helpers import dt_from_ts, dt_ts @@ -76,7 +76,7 @@ class Binance(Exchange): def __init__(self, *args, **kwargs) -> None: super().__init__(*args, **kwargs) - self._spot_delist_schedule_cache: TTLCache = TTLCache(maxsize=100, ttl=300) + self._spot_delist_schedule_cache: FtTTLCache = FtTTLCache(maxsize=100, ttl=300) def get_proxy_coin(self) -> str: """ @@ -145,6 +145,20 @@ class Binance(Exchange): except ccxt.BaseError as e: raise OperationalException(e) from e + def fetch_stoploss_order( + self, order_id: str, pair: str, params: dict | None = None + ) -> CcxtOrder: + if self.trading_mode == TradingMode.FUTURES: + params = params or {} + params.update({"stop": True}) + return self.fetch_order(order_id, pair, params) + + def cancel_stoploss_order(self, order_id: str, pair: str, params: dict | None = None) -> dict: + if self.trading_mode == TradingMode.FUTURES: + params = params or {} + params.update({"stop": True}) + return self.cancel_order(order_id=order_id, pair=pair, params=params) + def get_historic_ohlcv( self, pair: str, @@ -544,3 +558,26 @@ class Binance(Exchange): cache[ft_symbol] = delist_dt return cache.get(pair, None) + + +class Binanceusdm(Binance): + """Binacne USDM Exchange + Same as Binance - only futures trading is supported (via ccxt). + + Not actually necessary, binance should be preferred. + """ + + _supported_trading_mode_margin_pairs: list[tuple[TradingMode, MarginMode]] = [ + (TradingMode.FUTURES, MarginMode.CROSS), + (TradingMode.FUTURES, MarginMode.ISOLATED), + ] + + +class Binanceus(Binance): + """Binance US exchange class. + Minimal adjustment to disable futures trading for the US subsidiary of Binance + """ + + _supported_trading_mode_margin_pairs: list[tuple[TradingMode, MarginMode]] = [ + (TradingMode.SPOT, MarginMode.NONE), + ] diff --git a/freqtrade/exchange/binance_leverage_tiers.json b/freqtrade/exchange/binance_leverage_tiers.json index 50e1022d3..e5bf4695d 100644 --- a/freqtrade/exchange/binance_leverage_tiers.json +++ b/freqtrade/exchange/binance_leverage_tiers.json @@ -417,13 +417,13 @@ "symbol": "1000000MOG/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -433,7 +433,7 @@ "tier": 9.0, "symbol": "1000000MOG/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -441,9 +441,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -460,7 +460,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -899,13 +899,13 @@ "symbol": "1000CAT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -915,7 +915,7 @@ "tier": 8.0, "symbol": "1000CAT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -923,9 +923,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -942,7 +942,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -1071,13 +1071,13 @@ "symbol": "1000CHEEMS/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -1087,7 +1087,7 @@ "tier": 9.0, "symbol": "1000CHEEMS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -1095,9 +1095,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -1114,7 +1114,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -1432,13 +1432,13 @@ "symbol": "1000LUNC/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -1448,7 +1448,7 @@ "tier": 9.0, "symbol": "1000LUNC/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -1456,9 +1456,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -1475,7 +1475,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -2035,13 +2035,13 @@ "symbol": "1000SATS/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -2051,7 +2051,7 @@ "tier": 8.0, "symbol": "1000SATS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -2059,9 +2059,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -2078,7 +2078,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -2415,15 +2415,15 @@ "symbol": "1000WHY/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "25", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -2431,55 +2431,21 @@ "tier": 2.0, "symbol": "1000WHY/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "1000WHY/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "25000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "1000WHY/USDT:USDT", - "currency": "USDT", - "minNotional": 25000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "25000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1525.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "1000WHY/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -2487,16 +2453,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2775.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "1000WHY/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -2504,46 +2470,46 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6945.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "1000WHY/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 500000.0, + "maxNotional": 2500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", - "notionalCap": "500000", + "notionalCap": "2500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27770.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "1000WHY/USDT:USDT", "currency": "USDT", - "minNotional": 500000.0, - "maxNotional": 800000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "800000", - "notionalFloor": "500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "152770.0" + "cum": "651745.0" } } ], @@ -2776,13 +2742,13 @@ "symbol": "1000XEC/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -2792,7 +2758,7 @@ "tier": 9.0, "symbol": "1000XEC/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -2800,9 +2766,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -2819,7 +2785,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -2948,13 +2914,13 @@ "symbol": "1INCH/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -2964,7 +2930,7 @@ "tier": 9.0, "symbol": "1INCH/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -2972,9 +2938,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -2991,7 +2957,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -3120,13 +3086,13 @@ "symbol": "1MBABYDOGE/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -3136,7 +3102,7 @@ "tier": 9.0, "symbol": "1MBABYDOGE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -3144,9 +3110,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -3163,7 +3129,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -3275,13 +3241,13 @@ "symbol": "2Z/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -3291,7 +3257,7 @@ "tier": 8.0, "symbol": "2Z/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -3299,9 +3265,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -3318,7 +3284,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -3346,161 +3312,6 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, - "info": { - "bracket": "2", - "initialLeverage": "25", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.02", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "4/USDT:USDT", - "currency": "USDT", - "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", - "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" - } - }, - { - "tier": 4.0, - "symbol": "4/USDT:USDT", - "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" - } - }, - { - "tier": 5.0, - "symbol": "4/USDT:USDT", - "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, - "info": { - "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" - } - }, - { - "tier": 6.0, - "symbol": "4/USDT:USDT", - "currency": "USDT", - "minNotional": 125000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, - "info": { - "bracket": "6", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" - } - }, - { - "tier": 7.0, - "symbol": "4/USDT:USDT", - "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" - } - }, - { - "tier": 8.0, - "symbol": "4/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "8", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "392225.0" - } - }, - { - "tier": 9.0, - "symbol": "4/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, - "maintenanceMarginRate": 0.5, - "maxLeverage": 1.0, - "info": { - "bracket": "9", - "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", - "maintMarginRatio": "0.5", - "cum": "2267225.0" - } - } - ], - "42/USDT:USDT": [ - { - "tier": 1.0, - "symbol": "42/USDT:USDT", - "currency": "USDT", - "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, - "info": { - "bracket": "1", - "initialLeverage": "50", - "notionalCap": "5000", - "notionalFloor": "0", - "maintMarginRatio": "0.015", - "cum": "0.0" - } - }, - { - "tier": 2.0, - "symbol": "42/USDT:USDT", - "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, "maintenanceMarginRate": 0.025, "maxLeverage": 20.0, "info": { @@ -3514,7 +3325,7 @@ }, { "tier": 3.0, - "symbol": "42/USDT:USDT", + "symbol": "4/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, "maxNotional": 20000.0, @@ -3531,7 +3342,7 @@ }, { "tier": 4.0, - "symbol": "42/USDT:USDT", + "symbol": "4/USDT:USDT", "currency": "USDT", "minNotional": 20000.0, "maxNotional": 50000.0, @@ -3548,7 +3359,7 @@ }, { "tier": 5.0, - "symbol": "42/USDT:USDT", + "symbol": "4/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, "maxNotional": 250000.0, @@ -3565,16 +3376,16 @@ }, { "tier": 6.0, - "symbol": "42/USDT:USDT", + "symbol": "4/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 1000000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "1000000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -3582,9 +3393,9 @@ }, { "tier": 7.0, - "symbol": "42/USDT:USDT", + "symbol": "4/USDT:USDT", "currency": "USDT", - "minNotional": 1000000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -3592,14 +3403,14 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "1000000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "96275.0" + "cum": "54625.0" } }, { "tier": 8.0, - "symbol": "42/USDT:USDT", + "symbol": "4/USDT:USDT", "currency": "USDT", "minNotional": 7500000.0, "maxNotional": 12500000.0, @@ -3611,7 +3422,111 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "1929625.0" + } + } + ], + "42/USDT:USDT": [ + { + "tier": 1.0, + "symbol": "42/USDT:USDT", + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "1", + "initialLeverage": "10", + "notionalCap": "10000", + "notionalFloor": "0", + "maintMarginRatio": "0.05", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "42/USDT:USDT", + "currency": "USDT", + "minNotional": 10000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "2", + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "10000", + "maintMarginRatio": "0.1", + "cum": "500.0" + } + }, + { + "tier": 3.0, + "symbol": "42/USDT:USDT", + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "3", + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "1750.0" + } + }, + { + "tier": 4.0, + "symbol": "42/USDT:USDT", + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "4", + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "5920.0" + } + }, + { + "tier": 5.0, + "symbol": "42/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "5", + "initialLeverage": "2", + "notionalCap": "2500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "26745.0" + } + }, + { + "tier": 6.0, + "symbol": "42/USDT:USDT", + "currency": "USDT", + "minNotional": 2500000.0, + "maxNotional": 5000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "6", + "initialLeverage": "1", + "notionalCap": "5000000", + "notionalFloor": "2500000", + "maintMarginRatio": "0.5", + "cum": "651745.0" } } ], @@ -3895,13 +3810,13 @@ "symbol": "A2Z/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 1000000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "1000000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -3911,7 +3826,7 @@ "tier": 7.0, "symbol": "A2Z/USDT:USDT", "currency": "USDT", - "minNotional": 1000000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -3919,9 +3834,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "1000000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "96275.0" + "cum": "54625.0" } }, { @@ -3938,7 +3853,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "1929625.0" } } ], @@ -4343,13 +4258,13 @@ "symbol": "ACE/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -4359,7 +4274,7 @@ "tier": 7.0, "symbol": "ACE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -4367,9 +4282,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -4386,7 +4301,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -4515,13 +4430,13 @@ "symbol": "ACH/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -4531,7 +4446,7 @@ "tier": 9.0, "symbol": "ACH/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -4539,9 +4454,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -4558,7 +4473,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -4569,14 +4484,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 25.0, "info": { "bracket": "1", - "initialLeverage": "50", + "initialLeverage": "25", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.02", "cum": "0.0" } }, @@ -4594,7 +4509,7 @@ "notionalCap": "10000", "notionalFloor": "5000", "maintMarginRatio": "0.025", - "cum": "50.0" + "cum": "25.0" } }, { @@ -4611,7 +4526,7 @@ "notionalCap": "20000", "notionalFloor": "10000", "maintMarginRatio": "0.05", - "cum": "300.0" + "cum": "275.0" } }, { @@ -4628,7 +4543,7 @@ "notionalCap": "50000", "notionalFloor": "20000", "maintMarginRatio": "0.1", - "cum": "1300.0" + "cum": "1275.0" } }, { @@ -4636,67 +4551,67 @@ "symbol": "ACT/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, - "maxNotional": 250000.0, + "maxNotional": 100000.0, "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { "bracket": "5", "initialLeverage": "4", - "notionalCap": "250000", + "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2550.0" + "cum": "2525.0" } }, { "tier": 6.0, "symbol": "ACT/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, + "minNotional": 100000.0, + "maxNotional": 250000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", + "notionalCap": "250000", + "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "12975.0" + "cum": "6695.0" } }, { "tier": 7.0, "symbol": "ACT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, + "minNotional": 250000.0, + "maxNotional": 2500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { "bracket": "7", "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalCap": "2500000", + "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "27520.0" } }, { "tier": 8.0, "symbol": "ACT/USDT:USDT", "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { "bracket": "8", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "652520.0" } } ], @@ -4791,13 +4706,13 @@ "symbol": "ACX/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -4807,7 +4722,7 @@ "tier": 7.0, "symbol": "ACX/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -4815,9 +4730,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -4834,7 +4749,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -5256,13 +5171,13 @@ "symbol": "AERGO/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -5272,7 +5187,7 @@ "tier": 7.0, "symbol": "AERGO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -5280,9 +5195,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -5299,7 +5214,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -5600,13 +5515,13 @@ "symbol": "AEVO/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -5616,7 +5531,7 @@ "tier": 8.0, "symbol": "AEVO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -5624,9 +5539,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -5643,7 +5558,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -5876,13 +5791,13 @@ "symbol": "AGLD/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -5892,7 +5807,7 @@ "tier": 8.0, "symbol": "AGLD/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -5900,9 +5815,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -5919,7 +5834,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -5929,15 +5844,15 @@ "symbol": "AGT/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "50", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -5945,119 +5860,85 @@ "tier": 2.0, "symbol": "AGT/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "minNotional": 10000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "50.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "10000", + "maintMarginRatio": "0.1", + "cum": "500.0" } }, { "tier": 3.0, "symbol": "AGT/USDT:USDT", "currency": "USDT", - "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "300.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "1750.0" } }, { "tier": 4.0, "symbol": "AGT/USDT:USDT", "currency": "USDT", - "minNotional": 20000.0, - "maxNotional": 50000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "4", - "initialLeverage": "5", - "notionalCap": "50000", - "notionalFloor": "20000", - "maintMarginRatio": "0.1", - "cum": "1300.0" + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "5920.0" } }, { "tier": 5.0, "symbol": "AGT/USDT:USDT", "currency": "USDT", - "minNotional": 50000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "5", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "50000", - "maintMarginRatio": "0.125", - "cum": "2550.0" + "initialLeverage": "2", + "notionalCap": "2500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "26745.0" } }, { "tier": 6.0, "symbol": "AGT/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "6", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "12975.0" - } - }, - { - "tier": 7.0, - "symbol": "AGT/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "7", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "387825.0" - } - }, - { - "tier": 8.0, - "symbol": "AGT/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "651745.0" } } ], @@ -6152,13 +6033,13 @@ "symbol": "AI/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -6168,7 +6049,7 @@ "tier": 7.0, "symbol": "AI/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -6176,9 +6057,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -6195,7 +6076,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -6343,15 +6224,15 @@ "symbol": "AIA/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maxNotional": 3000.0, + "maintenanceMarginRate": 0.03, + "maxLeverage": 20.0, "info": { "bracket": "1", - "initialLeverage": "50", - "notionalCap": "5000", + "initialLeverage": "20", + "notionalCap": "3000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.03", "cum": "0.0" } }, @@ -6359,136 +6240,102 @@ "tier": 2.0, "symbol": "AIA/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "minNotional": 3000.0, + "maxNotional": 15000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "2", - "initialLeverage": "25", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.02", - "cum": "25.0" + "initialLeverage": "10", + "notionalCap": "15000", + "notionalFloor": "3000", + "maintMarginRatio": "0.05", + "cum": "60.0" } }, { "tier": 3.0, "symbol": "AIA/USDT:USDT", "currency": "USDT", - "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "minNotional": 15000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", - "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "15000", + "maintMarginRatio": "0.1", + "cum": "810.0" } }, { "tier": 4.0, "symbol": "AIA/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 50000.0, + "maxNotional": 150000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "4", + "notionalCap": "150000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2060.0" } }, { "tier": 5.0, "symbol": "AIA/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 150000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "3", + "notionalCap": "1000000", + "notionalFloor": "150000", + "maintMarginRatio": "0.1667", + "cum": "8315.0" } }, { "tier": 6.0, "symbol": "AIA/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 1000000.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "6", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "initialLeverage": "2", + "notionalCap": "2500000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.25", + "cum": "91615.0" } }, { "tier": 7.0, "symbol": "AIA/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" - } - }, - { - "tier": 8.0, - "symbol": "AIA/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "8", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "392225.0" - } - }, - { - "tier": 9.0, - "symbol": "AIA/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "7", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "716615.0" } } ], @@ -6583,13 +6430,13 @@ "symbol": "AIN/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -6599,7 +6446,7 @@ "tier": 7.0, "symbol": "AIN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -6607,9 +6454,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -6626,7 +6473,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -6721,13 +6568,13 @@ "symbol": "AIO/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -6737,7 +6584,7 @@ "tier": 7.0, "symbol": "AIO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -6745,9 +6592,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -6764,7 +6611,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -6775,14 +6622,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 40.0, "info": { "bracket": "1", - "initialLeverage": "50", + "initialLeverage": "40", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.02", "cum": "0.0" } }, @@ -6800,7 +6647,7 @@ "notionalCap": "10000", "notionalFloor": "5000", "maintMarginRatio": "0.025", - "cum": "50.0" + "cum": "25.0" } }, { @@ -6808,23 +6655,23 @@ "symbol": "AIOT/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, + "maxNotional": 20000.0, "maintenanceMarginRate": 0.05, "maxLeverage": 10.0, "info": { "bracket": "3", "initialLeverage": "10", - "notionalCap": "25000", + "notionalCap": "20000", "notionalFloor": "10000", "maintMarginRatio": "0.05", - "cum": "300.0" + "cum": "275.0" } }, { "tier": 4.0, "symbol": "AIOT/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, + "minNotional": 20000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, @@ -6832,9 +6679,9 @@ "bracket": "4", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "25000", + "notionalFloor": "20000", "maintMarginRatio": "0.1", - "cum": "1550.0" + "cum": "1275.0" } }, { @@ -6842,67 +6689,67 @@ "symbol": "AIOT/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, - "maxNotional": 250000.0, + "maxNotional": 100000.0, "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { "bracket": "5", "initialLeverage": "4", - "notionalCap": "250000", + "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2800.0" + "cum": "2525.0" } }, { "tier": 6.0, "symbol": "AIOT/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, + "minNotional": 100000.0, + "maxNotional": 250000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", + "notionalCap": "250000", + "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "13225.0" + "cum": "6695.0" } }, { "tier": 7.0, "symbol": "AIOT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, + "minNotional": 250000.0, + "maxNotional": 2500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { "bracket": "7", "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalCap": "2500000", + "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "388075.0" + "cum": "27520.0" } }, { "tier": 8.0, "symbol": "AIOT/USDT:USDT", "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { "bracket": "8", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "2263075.0" + "cum": "652520.0" } } ], @@ -7031,13 +6878,13 @@ "symbol": "AIXBT/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -7047,7 +6894,7 @@ "tier": 9.0, "symbol": "AIXBT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -7055,9 +6902,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -7074,7 +6921,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -7084,15 +6931,15 @@ "symbol": "AKE/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "50", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -7100,119 +6947,85 @@ "tier": 2.0, "symbol": "AKE/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "minNotional": 10000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "50.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "10000", + "maintMarginRatio": "0.1", + "cum": "500.0" } }, { "tier": 3.0, "symbol": "AKE/USDT:USDT", "currency": "USDT", - "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "300.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "1750.0" } }, { "tier": 4.0, "symbol": "AKE/USDT:USDT", "currency": "USDT", - "minNotional": 20000.0, - "maxNotional": 50000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "4", - "initialLeverage": "5", - "notionalCap": "50000", - "notionalFloor": "20000", - "maintMarginRatio": "0.1", - "cum": "1300.0" + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "5920.0" } }, { "tier": 5.0, "symbol": "AKE/USDT:USDT", "currency": "USDT", - "minNotional": 50000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "5", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "50000", - "maintMarginRatio": "0.125", - "cum": "2550.0" + "initialLeverage": "2", + "notionalCap": "2500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "26745.0" } }, { "tier": 6.0, "symbol": "AKE/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 1000000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "6", - "initialLeverage": "3", - "notionalCap": "1000000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "12975.0" - } - }, - { - "tier": 7.0, - "symbol": "AKE/USDT:USDT", - "currency": "USDT", - "minNotional": 1000000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "7", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "1000000", - "maintMarginRatio": "0.25", - "cum": "96275.0" - } - }, - { - "tier": 8.0, - "symbol": "AKE/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "651745.0" } } ], @@ -7324,13 +7137,13 @@ "symbol": "AKT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -7340,7 +7153,7 @@ "tier": 8.0, "symbol": "AKT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -7348,9 +7161,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -7367,7 +7180,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -7789,13 +7602,13 @@ "symbol": "ALICE/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -7805,7 +7618,7 @@ "tier": 7.0, "symbol": "ALICE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -7813,9 +7626,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -7832,7 +7645,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -8025,6 +7838,161 @@ } } ], + "ALLO/USDT:USDT": [ + { + "tier": 1.0, + "symbol": "ALLO/USDT:USDT", + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "ALLO/USDT:USDT", + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 25.0, + "info": { + "bracket": "2", + "initialLeverage": "25", + "notionalCap": "10000", + "notionalFloor": "5000", + "maintMarginRatio": "0.02", + "cum": "25.0" + } + }, + { + "tier": 3.0, + "symbol": "ALLO/USDT:USDT", + "currency": "USDT", + "minNotional": 10000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "3", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "10000", + "maintMarginRatio": "0.025", + "cum": "75.0" + } + }, + { + "tier": 4.0, + "symbol": "ALLO/USDT:USDT", + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 62500.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "4", + "initialLeverage": "10", + "notionalCap": "62500", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "700.0" + } + }, + { + "tier": 5.0, + "symbol": "ALLO/USDT:USDT", + "currency": "USDT", + "minNotional": 62500.0, + "maxNotional": 125000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "5", + "initialLeverage": "5", + "notionalCap": "125000", + "notionalFloor": "62500", + "maintMarginRatio": "0.1", + "cum": "3825.0" + } + }, + { + "tier": 6.0, + "symbol": "ALLO/USDT:USDT", + "currency": "USDT", + "minNotional": 125000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "6", + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "125000", + "maintMarginRatio": "0.125", + "cum": "6950.0" + } + }, + { + "tier": 7.0, + "symbol": "ALLO/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 4500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "7", + "initialLeverage": "3", + "notionalCap": "4500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "17375.0" + } + }, + { + "tier": 8.0, + "symbol": "ALLO/USDT:USDT", + "currency": "USDT", + "minNotional": 4500000.0, + "maxNotional": 7500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "8", + "initialLeverage": "2", + "notionalCap": "7500000", + "notionalFloor": "4500000", + "maintMarginRatio": "0.25", + "cum": "392225.0" + } + }, + { + "tier": 9.0, + "symbol": "ALLO/USDT:USDT", + "currency": "USDT", + "minNotional": 7500000.0, + "maxNotional": 12500000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "9", + "initialLeverage": "1", + "notionalCap": "12500000", + "notionalFloor": "7500000", + "maintMarginRatio": "0.5", + "cum": "2267225.0" + } + } + ], "ALPACA/USDT:USDT": [ { "tier": 1.0, @@ -8341,13 +8309,13 @@ "symbol": "ALPINE/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -8357,7 +8325,7 @@ "tier": 7.0, "symbol": "ALPINE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -8365,9 +8333,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -8384,7 +8352,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -8496,13 +8464,13 @@ "symbol": "ALT/USDT:USDT", "currency": "USDT", "minNotional": 300000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "300000", "maintMarginRatio": "0.1667", "cum": "20285.0" @@ -8512,7 +8480,7 @@ "tier": 8.0, "symbol": "ALT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -8520,9 +8488,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "395135.0" + "cum": "61935.0" } }, { @@ -8539,7 +8507,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2270135.0" + "cum": "1936935.0" } } ], @@ -8755,13 +8723,13 @@ "symbol": "ANIME/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -8771,7 +8739,7 @@ "tier": 8.0, "symbol": "ANIME/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -8779,9 +8747,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -8798,7 +8766,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -8910,13 +8878,13 @@ "symbol": "ANKR/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -8926,7 +8894,7 @@ "tier": 8.0, "symbol": "ANKR/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -8934,9 +8902,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -8953,7 +8921,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -9082,13 +9050,13 @@ "symbol": "APE/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -9098,7 +9066,7 @@ "tier": 9.0, "symbol": "APE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -9106,9 +9074,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -9125,7 +9093,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -9254,13 +9222,13 @@ "symbol": "API3/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -9270,7 +9238,7 @@ "tier": 9.0, "symbol": "API3/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -9278,9 +9246,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -9297,7 +9265,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -9392,13 +9360,13 @@ "symbol": "APR/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 1000000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "1000000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -9408,7 +9376,7 @@ "tier": 7.0, "symbol": "APR/USDT:USDT", "currency": "USDT", - "minNotional": 1000000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -9416,9 +9384,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "1000000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "96275.0" + "cum": "54625.0" } }, { @@ -9435,7 +9403,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "1929625.0" } } ], @@ -9719,13 +9687,13 @@ "symbol": "AR/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -9735,7 +9703,7 @@ "tier": 9.0, "symbol": "AR/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -9743,9 +9711,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -9762,7 +9730,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -10167,13 +10135,13 @@ "symbol": "ARC/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 2000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "2000000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -10183,7 +10151,7 @@ "tier": 7.0, "symbol": "ARC/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 2000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -10191,9 +10159,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "2000000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "179575.0" } }, { @@ -10210,7 +10178,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "2054575.0" } } ], @@ -10305,13 +10273,13 @@ "symbol": "ARIA/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 1000000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "1000000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -10321,7 +10289,7 @@ "tier": 7.0, "symbol": "ARIA/USDT:USDT", "currency": "USDT", - "minNotional": 1000000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -10329,9 +10297,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "1000000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "96275.0" + "cum": "54625.0" } }, { @@ -10348,7 +10316,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "1929625.0" } } ], @@ -10615,13 +10583,13 @@ "symbol": "ARKM/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -10631,7 +10599,7 @@ "tier": 9.0, "symbol": "ARKM/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -10639,9 +10607,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -10658,7 +10626,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -10753,13 +10721,13 @@ "symbol": "ARPA/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -10769,7 +10737,7 @@ "tier": 7.0, "symbol": "ARPA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -10777,9 +10745,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -10796,7 +10764,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -10891,13 +10859,13 @@ "symbol": "ASR/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -10907,7 +10875,7 @@ "tier": 7.0, "symbol": "ASR/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -10915,9 +10883,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -10934,7 +10902,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -11201,13 +11169,13 @@ "symbol": "ASTR/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17825.0" @@ -11217,7 +11185,7 @@ "tier": 8.0, "symbol": "ASTR/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -11225,9 +11193,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392675.0" + "cum": "59475.0" } }, { @@ -11244,7 +11212,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267675.0" + "cum": "1934475.0" } } ], @@ -11339,13 +11307,13 @@ "symbol": "AT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 1000000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "1000000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -11355,7 +11323,7 @@ "tier": 7.0, "symbol": "AT/USDT:USDT", "currency": "USDT", - "minNotional": 1000000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -11363,9 +11331,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "1000000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "96275.0" + "cum": "54625.0" } }, { @@ -11382,7 +11350,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "1929625.0" } } ], @@ -11477,13 +11445,13 @@ "symbol": "ATA/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -11493,7 +11461,7 @@ "tier": 7.0, "symbol": "ATA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -11501,9 +11469,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -11520,7 +11488,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -12010,13 +11978,13 @@ "symbol": "AUCTION/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -12026,7 +11994,7 @@ "tier": 9.0, "symbol": "AUCTION/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -12034,9 +12002,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -12053,7 +12021,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -12148,13 +12116,13 @@ "symbol": "AVA/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -12164,7 +12132,7 @@ "tier": 7.0, "symbol": "AVA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -12172,9 +12140,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -12191,7 +12159,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -12286,13 +12254,13 @@ "symbol": "AVAAI/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -12302,7 +12270,7 @@ "tier": 7.0, "symbol": "AVAAI/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -12310,9 +12278,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -12329,7 +12297,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -12802,13 +12770,13 @@ "symbol": "AVNT/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -12818,7 +12786,7 @@ "tier": 9.0, "symbol": "AVNT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -12826,9 +12794,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -12845,7 +12813,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -13112,13 +13080,13 @@ "symbol": "AXL/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -13128,7 +13096,7 @@ "tier": 9.0, "symbol": "AXL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -13136,9 +13104,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -13155,7 +13123,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -13284,13 +13252,13 @@ "symbol": "AXS/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -13300,7 +13268,7 @@ "tier": 9.0, "symbol": "AXS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -13308,9 +13276,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -13327,7 +13295,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -13456,13 +13424,13 @@ "symbol": "B/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -13472,7 +13440,7 @@ "tier": 9.0, "symbol": "B/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -13480,9 +13448,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -13499,7 +13467,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -13594,13 +13562,13 @@ "symbol": "B2/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -13610,7 +13578,7 @@ "tier": 7.0, "symbol": "B2/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -13618,9 +13586,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -13637,7 +13605,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -13732,13 +13700,13 @@ "symbol": "B3/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -13748,7 +13716,7 @@ "tier": 7.0, "symbol": "B3/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -13756,9 +13724,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -13775,7 +13743,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -13904,13 +13872,13 @@ "symbol": "BABY/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -13920,7 +13888,7 @@ "tier": 9.0, "symbol": "BABY/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -13928,9 +13896,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -13947,7 +13915,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -14371,13 +14339,13 @@ "symbol": "BAN/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 1000000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "1000000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -14387,7 +14355,7 @@ "tier": 7.0, "symbol": "BAN/USDT:USDT", "currency": "USDT", - "minNotional": 1000000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -14395,9 +14363,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "1000000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "96275.0" + "cum": "54625.0" } }, { @@ -14414,7 +14382,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "1929625.0" } } ], @@ -14526,13 +14494,13 @@ "symbol": "BANANA/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -14542,7 +14510,7 @@ "tier": 8.0, "symbol": "BANANA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -14550,9 +14518,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -14569,7 +14537,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -14681,13 +14649,13 @@ "symbol": "BANANAS31/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -14697,7 +14665,7 @@ "tier": 8.0, "symbol": "BANANAS31/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -14705,9 +14673,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -14724,7 +14692,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -14836,13 +14804,13 @@ "symbol": "BAND/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -14852,7 +14820,7 @@ "tier": 8.0, "symbol": "BAND/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -14860,9 +14828,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -14879,7 +14847,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -14974,13 +14942,13 @@ "symbol": "BANK/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -14990,7 +14958,7 @@ "tier": 7.0, "symbol": "BANK/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -14998,9 +14966,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -15017,7 +14985,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -15129,13 +15097,13 @@ "symbol": "BARD/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 2000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "2000000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -15145,7 +15113,7 @@ "tier": 8.0, "symbol": "BARD/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 2000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -15153,9 +15121,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "2000000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "183975.0" } }, { @@ -15172,7 +15140,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "2058975.0" } } ], @@ -15183,14 +15151,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 40.0, "info": { "bracket": "1", - "initialLeverage": "50", + "initialLeverage": "40", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.02", "cum": "0.0" } }, @@ -15200,14 +15168,14 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.025", "cum": "25.0" } }, @@ -15216,67 +15184,67 @@ "symbol": "BAS/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "275.0" } }, { "tier": 4.0, "symbol": "BAS/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1275.0" } }, { "tier": 5.0, "symbol": "BAS/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2525.0" } }, { "tier": 6.0, "symbol": "BAS/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, + "minNotional": 100000.0, "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", + "initialLeverage": "3", "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6695.0" } }, { @@ -15284,50 +15252,33 @@ "symbol": "BAS/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", + "initialLeverage": "2", + "notionalCap": "2500000", "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" + "maintMarginRatio": "0.25", + "cum": "27520.0" } }, { "tier": 8.0, "symbol": "BAS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "8", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "392225.0" - } - }, - { - "tier": 9.0, - "symbol": "BAS/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "652520.0" } } ], @@ -15439,13 +15390,13 @@ "symbol": "BAT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -15455,7 +15406,7 @@ "tier": 8.0, "symbol": "BAT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -15463,9 +15414,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -15482,7 +15433,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -15594,13 +15545,13 @@ "symbol": "BB/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -15610,7 +15561,7 @@ "tier": 8.0, "symbol": "BB/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -15618,9 +15569,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -15637,7 +15588,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -15991,15 +15942,15 @@ "symbol": "BDXN/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 40.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "40", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -16007,55 +15958,21 @@ "tier": 2.0, "symbol": "BDXN/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "BDXN/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "25000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "BDXN/USDT:USDT", - "currency": "USDT", - "minNotional": 25000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "25000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1525.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "BDXN/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -16063,16 +15980,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2775.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "BDXN/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -16080,16 +15997,16 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6945.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "BDXN/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, @@ -16097,16 +16014,16 @@ "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", "notionalCap": "2500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27770.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "BDXN/USDT:USDT", "currency": "USDT", "minNotional": 2500000.0, @@ -16114,12 +16031,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", "notionalCap": "5000000", "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "652770.0" + "cum": "651745.0" } } ], @@ -16248,13 +16165,13 @@ "symbol": "BEAMX/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -16264,7 +16181,7 @@ "tier": 9.0, "symbol": "BEAMX/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -16272,9 +16189,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "76450.0" } }, { @@ -16291,7 +16208,145 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1951450.0" + } + } + ], + "BEAT/USDT:USDT": [ + { + "tier": 1.0, + "symbol": "BEAT/USDT:USDT", + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 40.0, + "info": { + "bracket": "1", + "initialLeverage": "40", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.02", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "BEAT/USDT:USDT", + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "10000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "25.0" + } + }, + { + "tier": 3.0, + "symbol": "BEAT/USDT:USDT", + "currency": "USDT", + "minNotional": 10000.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "20000", + "notionalFloor": "10000", + "maintMarginRatio": "0.05", + "cum": "275.0" + } + }, + { + "tier": 4.0, + "symbol": "BEAT/USDT:USDT", + "currency": "USDT", + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1275.0" + } + }, + { + "tier": 5.0, + "symbol": "BEAT/USDT:USDT", + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2525.0" + } + }, + { + "tier": 6.0, + "symbol": "BEAT/USDT:USDT", + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "6", + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6695.0" + } + }, + { + "tier": 7.0, + "symbol": "BEAT/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "7", + "initialLeverage": "2", + "notionalCap": "2500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "27520.0" + } + }, + { + "tier": 8.0, + "symbol": "BEAT/USDT:USDT", + "currency": "USDT", + "minNotional": 2500000.0, + "maxNotional": 5000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "8", + "initialLeverage": "1", + "notionalCap": "5000000", + "notionalFloor": "2500000", + "maintMarginRatio": "0.5", + "cum": "652520.0" } } ], @@ -16386,13 +16441,13 @@ "symbol": "BEL/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -16402,7 +16457,7 @@ "tier": 7.0, "symbol": "BEL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -16410,9 +16465,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -16429,7 +16484,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -16730,13 +16785,13 @@ "symbol": "BICO/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -16746,7 +16801,7 @@ "tier": 8.0, "symbol": "BICO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -16754,9 +16809,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -16773,7 +16828,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -16783,15 +16838,15 @@ "symbol": "BID/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 40.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "40", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -16799,55 +16854,21 @@ "tier": 2.0, "symbol": "BID/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "BID/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "25000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "BID/USDT:USDT", - "currency": "USDT", - "minNotional": 25000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "25000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1525.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "BID/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -16855,16 +16876,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2775.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "BID/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -16872,16 +16893,16 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6945.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "BID/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, @@ -16889,16 +16910,16 @@ "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", "notionalCap": "2500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27770.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "BID/USDT:USDT", "currency": "USDT", "minNotional": 2500000.0, @@ -16906,12 +16927,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", "notionalCap": "5000000", "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "652770.0" + "cum": "651745.0" } } ], @@ -17040,13 +17061,13 @@ "symbol": "BIGTIME/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -17056,7 +17077,7 @@ "tier": 9.0, "symbol": "BIGTIME/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -17064,9 +17085,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -17083,7 +17104,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -17677,13 +17698,13 @@ "symbol": "BLUAI/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -17693,7 +17714,7 @@ "tier": 7.0, "symbol": "BLUAI/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -17701,9 +17722,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -17720,7 +17741,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -17849,13 +17870,13 @@ "symbol": "BLUR/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -17865,7 +17886,7 @@ "tier": 9.0, "symbol": "BLUR/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -17873,9 +17894,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -17892,7 +17913,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -18091,13 +18112,13 @@ "symbol": "BMT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -18107,7 +18128,7 @@ "tier": 7.0, "symbol": "BMT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -18115,9 +18136,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -18134,7 +18155,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -18573,13 +18594,13 @@ "symbol": "BNT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -18589,7 +18610,7 @@ "tier": 7.0, "symbol": "BNT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -18597,9 +18618,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -18616,7 +18637,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -18707,6 +18728,127 @@ } } ], + "BOB/USDT:USDT": [ + { + "tier": 1.0, + "symbol": "BOB/USDT:USDT", + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "1", + "initialLeverage": "20", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.025", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "BOB/USDT:USDT", + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "2", + "initialLeverage": "10", + "notionalCap": "10000", + "notionalFloor": "5000", + "maintMarginRatio": "0.05", + "cum": "125.0" + } + }, + { + "tier": 3.0, + "symbol": "BOB/USDT:USDT", + "currency": "USDT", + "minNotional": 10000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "3", + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "10000", + "maintMarginRatio": "0.1", + "cum": "625.0" + } + }, + { + "tier": 4.0, + "symbol": "BOB/USDT:USDT", + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "4", + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "1875.0" + } + }, + { + "tier": 5.0, + "symbol": "BOB/USDT:USDT", + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "5", + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6045.0" + } + }, + { + "tier": 6.0, + "symbol": "BOB/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "26870.0" + } + }, + { + "tier": 7.0, + "symbol": "BOB/USDT:USDT", + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 800000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "800000", + "notionalFloor": "500000", + "maintMarginRatio": "0.5", + "cum": "151870.0" + } + } + ], "BOME/USDC:USDC": [ { "tier": 1.0, @@ -19004,13 +19146,13 @@ "symbol": "BOME/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -19020,7 +19162,7 @@ "tier": 9.0, "symbol": "BOME/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -19028,9 +19170,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -19047,7 +19189,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -19452,13 +19594,13 @@ "symbol": "BRETT/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -19468,7 +19610,7 @@ "tier": 9.0, "symbol": "BRETT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -19476,9 +19618,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -19495,7 +19637,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -19590,13 +19732,13 @@ "symbol": "BROCCOLI714/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -19606,7 +19748,7 @@ "tier": 7.0, "symbol": "BROCCOLI714/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -19614,9 +19756,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -19633,7 +19775,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -19643,15 +19785,15 @@ "symbol": "BROCCOLIF3B/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 40.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "40", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -19659,55 +19801,21 @@ "tier": 2.0, "symbol": "BROCCOLIF3B/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "BROCCOLIF3B/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "25000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "BROCCOLIF3B/USDT:USDT", - "currency": "USDT", - "minNotional": 25000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "25000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1525.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "BROCCOLIF3B/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -19715,16 +19823,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2775.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "BROCCOLIF3B/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -19732,16 +19840,16 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6945.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "BROCCOLIF3B/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, @@ -19749,16 +19857,16 @@ "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", "notionalCap": "2500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27770.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "BROCCOLIF3B/USDT:USDT", "currency": "USDT", "minNotional": 2500000.0, @@ -19766,12 +19874,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", "notionalCap": "5000000", "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "652770.0" + "cum": "651745.0" } } ], @@ -19900,13 +20008,13 @@ "symbol": "BSV/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -19916,7 +20024,7 @@ "tier": 9.0, "symbol": "BSV/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -19924,9 +20032,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -19943,7 +20051,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -20953,15 +21061,15 @@ "symbol": "BTR/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "50", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -20969,119 +21077,85 @@ "tier": 2.0, "symbol": "BTR/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "minNotional": 10000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "50.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "10000", + "maintMarginRatio": "0.1", + "cum": "500.0" } }, { "tier": 3.0, "symbol": "BTR/USDT:USDT", "currency": "USDT", - "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "300.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "1750.0" } }, { "tier": 4.0, "symbol": "BTR/USDT:USDT", "currency": "USDT", - "minNotional": 20000.0, - "maxNotional": 50000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "4", - "initialLeverage": "5", - "notionalCap": "50000", - "notionalFloor": "20000", - "maintMarginRatio": "0.1", - "cum": "1300.0" + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "5920.0" } }, { "tier": 5.0, "symbol": "BTR/USDT:USDT", "currency": "USDT", - "minNotional": 50000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "5", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "50000", - "maintMarginRatio": "0.125", - "cum": "2550.0" + "initialLeverage": "2", + "notionalCap": "2500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "26745.0" } }, { "tier": 6.0, "symbol": "BTR/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 1000000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "6", - "initialLeverage": "3", - "notionalCap": "1000000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "12975.0" - } - }, - { - "tier": 7.0, - "symbol": "BTR/USDT:USDT", - "currency": "USDT", - "minNotional": 1000000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "7", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "1000000", - "maintMarginRatio": "0.25", - "cum": "96275.0" - } - }, - { - "tier": 8.0, - "symbol": "BTR/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "651745.0" } } ], @@ -21091,15 +21165,15 @@ "symbol": "BULLA/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "50", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -21107,119 +21181,85 @@ "tier": 2.0, "symbol": "BULLA/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "minNotional": 10000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "50.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "10000", + "maintMarginRatio": "0.1", + "cum": "500.0" } }, { "tier": 3.0, "symbol": "BULLA/USDT:USDT", "currency": "USDT", - "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "300.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "1750.0" } }, { "tier": 4.0, "symbol": "BULLA/USDT:USDT", "currency": "USDT", - "minNotional": 20000.0, - "maxNotional": 50000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "4", - "initialLeverage": "5", - "notionalCap": "50000", - "notionalFloor": "20000", - "maintMarginRatio": "0.1", - "cum": "1300.0" + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "5920.0" } }, { "tier": 5.0, "symbol": "BULLA/USDT:USDT", "currency": "USDT", - "minNotional": 50000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "5", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "50000", - "maintMarginRatio": "0.125", - "cum": "2550.0" + "initialLeverage": "2", + "notionalCap": "2500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "26745.0" } }, { "tier": 6.0, "symbol": "BULLA/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "6", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "12975.0" - } - }, - { - "tier": 7.0, - "symbol": "BULLA/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "7", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "387825.0" - } - }, - { - "tier": 8.0, - "symbol": "BULLA/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "651745.0" } } ], @@ -21314,13 +21354,13 @@ "symbol": "C/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -21330,7 +21370,7 @@ "tier": 7.0, "symbol": "C/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -21338,9 +21378,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -21357,7 +21397,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -21469,13 +21509,13 @@ "symbol": "C98/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -21485,7 +21525,7 @@ "tier": 8.0, "symbol": "C98/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -21493,9 +21533,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -21512,7 +21552,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -21729,15 +21769,15 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", - "cum": "25.0" + "maintMarginRatio": "0.025", + "cum": "50.0" } }, { @@ -21745,105 +21785,88 @@ "symbol": "CARV/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "300.0" } }, { "tier": 4.0, "symbol": "CARV/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1300.0" } }, { "tier": 5.0, "symbol": "CARV/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2550.0" } }, { "tier": 6.0, "symbol": "CARV/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12975.0" } }, { "tier": 7.0, "symbol": "CARV/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" - } - }, - { - "tier": 8.0, - "symbol": "CARV/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "8", + "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "54625.0" } }, { - "tier": 9.0, + "tier": 8.0, "symbol": "CARV/USDT:USDT", "currency": "USDT", "minNotional": 7500000.0, @@ -21851,12 +21874,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1929625.0" } } ], @@ -21951,13 +21974,13 @@ "symbol": "CATI/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -21967,7 +21990,7 @@ "tier": 7.0, "symbol": "CATI/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -21975,9 +21998,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -21994,7 +22017,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -22005,14 +22028,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "maintenanceMarginRate": 0.01, + "maxLeverage": 75.0, "info": { "bracket": "1", - "initialLeverage": "5", + "initialLeverage": "75", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.1", + "maintMarginRatio": "0.01", "cum": "0.0" } }, @@ -22022,15 +22045,15 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, "info": { "bracket": "2", - "initialLeverage": "4", + "initialLeverage": "50", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.125", - "cum": "125.0" + "maintMarginRatio": "0.015", + "cum": "25.0" } }, { @@ -22038,50 +22061,135 @@ "symbol": "CC/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 30000.0, - "maintenanceMarginRate": 0.167, - "maxLeverage": 3.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 25.0, "info": { "bracket": "3", - "initialLeverage": "3", - "notionalCap": "30000", + "initialLeverage": "25", + "notionalCap": "25000", "notionalFloor": "10000", - "maintMarginRatio": "0.167", - "cum": "545.0" + "maintMarginRatio": "0.02", + "cum": "75.0" } }, { "tier": 4.0, "symbol": "CC/USDT:USDT", "currency": "USDT", - "minNotional": 30000.0, - "maxNotional": 80000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, + "minNotional": 25000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "4", - "initialLeverage": "2", - "notionalCap": "80000", - "notionalFloor": "30000", - "maintMarginRatio": "0.25", - "cum": "3035.0" + "initialLeverage": "20", + "notionalCap": "50000", + "notionalFloor": "25000", + "maintMarginRatio": "0.025", + "cum": "200.0" } }, { "tier": 5.0, "symbol": "CC/USDT:USDT", "currency": "USDT", - "minNotional": 80000.0, - "maxNotional": 200000.0, + "minNotional": 50000.0, + "maxNotional": 125000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "5", + "initialLeverage": "10", + "notionalCap": "125000", + "notionalFloor": "50000", + "maintMarginRatio": "0.05", + "cum": "1450.0" + } + }, + { + "tier": 6.0, + "symbol": "CC/USDT:USDT", + "currency": "USDT", + "minNotional": 125000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "6", + "initialLeverage": "5", + "notionalCap": "250000", + "notionalFloor": "125000", + "maintMarginRatio": "0.1", + "cum": "7700.0" + } + }, + { + "tier": 7.0, + "symbol": "CC/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "7", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.125", + "cum": "13950.0" + } + }, + { + "tier": 8.0, + "symbol": "CC/USDT:USDT", + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 4500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "8", + "initialLeverage": "3", + "notionalCap": "4500000", + "notionalFloor": "500000", + "maintMarginRatio": "0.1667", + "cum": "34800.0" + } + }, + { + "tier": 9.0, + "symbol": "CC/USDT:USDT", + "currency": "USDT", + "minNotional": 4500000.0, + "maxNotional": 7500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "9", + "initialLeverage": "2", + "notionalCap": "7500000", + "notionalFloor": "4500000", + "maintMarginRatio": "0.25", + "cum": "409650.0" + } + }, + { + "tier": 10.0, + "symbol": "CC/USDT:USDT", + "currency": "USDT", + "minNotional": 7500000.0, + "maxNotional": 12500000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "5", + "bracket": "10", "initialLeverage": "1", - "notionalCap": "200000", - "notionalFloor": "80000", + "notionalCap": "12500000", + "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "23035.0" + "cum": "2284650.0" } } ], @@ -22210,13 +22318,13 @@ "symbol": "CELO/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -22226,7 +22334,7 @@ "tier": 9.0, "symbol": "CELO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -22234,9 +22342,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -22253,7 +22361,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -22365,13 +22473,13 @@ "symbol": "CELR/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -22381,7 +22489,7 @@ "tier": 8.0, "symbol": "CELR/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -22389,9 +22497,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -22408,7 +22516,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -22520,13 +22628,13 @@ "symbol": "CETUS/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -22536,7 +22644,7 @@ "tier": 8.0, "symbol": "CETUS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -22544,9 +22652,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -22563,7 +22671,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -22864,13 +22972,13 @@ "symbol": "CGPT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -22880,7 +22988,7 @@ "tier": 8.0, "symbol": "CGPT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -22888,9 +22996,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -22907,7 +23015,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -22917,15 +23025,15 @@ "symbol": "CHESS/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 40.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "40", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -22933,55 +23041,21 @@ "tier": 2.0, "symbol": "CHESS/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "CHESS/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "CHESS/USDT:USDT", - "currency": "USDT", - "minNotional": 20000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "20000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1275.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "CHESS/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -22989,16 +23063,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2525.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "CHESS/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -23006,16 +23080,16 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6695.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "CHESS/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, @@ -23023,16 +23097,16 @@ "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", "notionalCap": "2500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27520.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "CHESS/USDT:USDT", "currency": "USDT", "minNotional": 2500000.0, @@ -23040,12 +23114,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", "notionalCap": "5000000", "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "652520.0" + "cum": "651745.0" } } ], @@ -23261,13 +23335,13 @@ "symbol": "CHR/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -23277,7 +23351,7 @@ "tier": 8.0, "symbol": "CHR/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -23285,9 +23359,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -23304,7 +23378,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -23433,13 +23507,13 @@ "symbol": "CHZ/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -23449,7 +23523,7 @@ "tier": 9.0, "symbol": "CHZ/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -23457,9 +23531,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -23476,7 +23550,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -23588,13 +23662,13 @@ "symbol": "CKB/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17825.0" @@ -23604,7 +23678,7 @@ "tier": 8.0, "symbol": "CKB/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -23612,9 +23686,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392675.0" + "cum": "59475.0" } }, { @@ -23631,7 +23705,145 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267675.0" + "cum": "1934475.0" + } + } + ], + "CLANKER/USDT:USDT": [ + { + "tier": 1.0, + "symbol": "CLANKER/USDT:USDT", + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "CLANKER/USDT:USDT", + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "10000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "symbol": "CLANKER/USDT:USDT", + "currency": "USDT", + "minNotional": 10000.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "20000", + "notionalFloor": "10000", + "maintMarginRatio": "0.05", + "cum": "300.0" + } + }, + { + "tier": 4.0, + "symbol": "CLANKER/USDT:USDT", + "currency": "USDT", + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1300.0" + } + }, + { + "tier": 5.0, + "symbol": "CLANKER/USDT:USDT", + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2550.0" + } + }, + { + "tier": 6.0, + "symbol": "CLANKER/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "6", + "initialLeverage": "3", + "notionalCap": "1000000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12975.0" + } + }, + { + "tier": 7.0, + "symbol": "CLANKER/USDT:USDT", + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 7500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "7", + "initialLeverage": "2", + "notionalCap": "7500000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.25", + "cum": "96275.0" + } + }, + { + "tier": 8.0, + "symbol": "CLANKER/USDT:USDT", + "currency": "USDT", + "minNotional": 7500000.0, + "maxNotional": 12500000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "8", + "initialLeverage": "1", + "notionalCap": "12500000", + "notionalFloor": "7500000", + "maintMarginRatio": "0.5", + "cum": "1971275.0" } } ], @@ -23726,13 +23938,13 @@ "symbol": "CLO/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 1000000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "1000000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -23742,7 +23954,7 @@ "tier": 7.0, "symbol": "CLO/USDT:USDT", "currency": "USDT", - "minNotional": 1000000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -23750,9 +23962,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "1000000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "96275.0" + "cum": "54625.0" } }, { @@ -23769,7 +23981,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "1929625.0" } } ], @@ -24072,13 +24284,13 @@ "symbol": "COMMON/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 1000000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "1000000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -24088,7 +24300,7 @@ "tier": 7.0, "symbol": "COMMON/USDT:USDT", "currency": "USDT", - "minNotional": 1000000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -24096,9 +24308,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "1000000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "96275.0" + "cum": "54625.0" } }, { @@ -24115,7 +24327,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "1929625.0" } } ], @@ -24433,13 +24645,13 @@ "symbol": "COOKIE/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -24449,7 +24661,7 @@ "tier": 9.0, "symbol": "COOKIE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -24457,9 +24669,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -24476,7 +24688,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -24486,15 +24698,15 @@ "symbol": "COS/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 40.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "40", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -24502,55 +24714,21 @@ "tier": 2.0, "symbol": "COS/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "COS/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "25000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "COS/USDT:USDT", - "currency": "USDT", - "minNotional": 25000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "25000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1525.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "COS/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -24558,16 +24736,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2775.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "COS/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -24575,16 +24753,16 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6945.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "COS/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, @@ -24592,16 +24770,16 @@ "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", "notionalCap": "2500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27770.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "COS/USDT:USDT", "currency": "USDT", "minNotional": 2500000.0, @@ -24609,12 +24787,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", "notionalCap": "5000000", "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "652770.0" + "cum": "651745.0" } } ], @@ -24726,13 +24904,13 @@ "symbol": "COTI/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -24742,7 +24920,7 @@ "tier": 8.0, "symbol": "COTI/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -24750,9 +24928,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -24769,7 +24947,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -24898,13 +25076,13 @@ "symbol": "COW/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -24914,7 +25092,7 @@ "tier": 9.0, "symbol": "COW/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -24922,9 +25100,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -24941,7 +25119,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -24952,14 +25130,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 40.0, "info": { "bracket": "1", - "initialLeverage": "50", + "initialLeverage": "40", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.02", "cum": "0.0" } }, @@ -24969,14 +25147,14 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.025", "cum": "25.0" } }, @@ -24985,67 +25163,67 @@ "symbol": "CROSS/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "275.0" } }, { "tier": 4.0, "symbol": "CROSS/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1275.0" } }, { "tier": 5.0, "symbol": "CROSS/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2525.0" } }, { "tier": 6.0, "symbol": "CROSS/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, + "minNotional": 100000.0, "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", + "initialLeverage": "3", "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6695.0" } }, { @@ -25053,50 +25231,33 @@ "symbol": "CROSS/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", + "initialLeverage": "2", + "notionalCap": "2500000", "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" + "maintMarginRatio": "0.25", + "cum": "27520.0" } }, { "tier": 8.0, "symbol": "CROSS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "8", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "392225.0" - } - }, - { - "tier": 9.0, - "symbol": "CROSS/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "652520.0" } } ], @@ -25484,13 +25645,13 @@ "symbol": "CTK/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -25500,7 +25661,7 @@ "tier": 7.0, "symbol": "CTK/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -25508,9 +25669,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -25527,7 +25688,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -25639,13 +25800,13 @@ "symbol": "CTSI/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -25655,7 +25816,7 @@ "tier": 8.0, "symbol": "CTSI/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -25663,9 +25824,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -25682,7 +25843,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -25692,15 +25853,15 @@ "symbol": "CUDIS/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "50", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -25708,119 +25869,85 @@ "tier": 2.0, "symbol": "CUDIS/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "minNotional": 10000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "50.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "10000", + "maintMarginRatio": "0.1", + "cum": "500.0" } }, { "tier": 3.0, "symbol": "CUDIS/USDT:USDT", "currency": "USDT", - "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "300.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "1750.0" } }, { "tier": 4.0, "symbol": "CUDIS/USDT:USDT", "currency": "USDT", - "minNotional": 20000.0, - "maxNotional": 50000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "4", - "initialLeverage": "5", - "notionalCap": "50000", - "notionalFloor": "20000", - "maintMarginRatio": "0.1", - "cum": "1300.0" + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "5920.0" } }, { "tier": 5.0, "symbol": "CUDIS/USDT:USDT", "currency": "USDT", - "minNotional": 50000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "5", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "50000", - "maintMarginRatio": "0.125", - "cum": "2550.0" + "initialLeverage": "2", + "notionalCap": "2500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "26745.0" } }, { "tier": 6.0, "symbol": "CUDIS/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 1000000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "6", - "initialLeverage": "3", - "notionalCap": "1000000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "12975.0" - } - }, - { - "tier": 7.0, - "symbol": "CUDIS/USDT:USDT", - "currency": "USDT", - "minNotional": 1000000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "7", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "1000000", - "maintMarginRatio": "0.25", - "cum": "96275.0" - } - }, - { - "tier": 8.0, - "symbol": "CUDIS/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "651745.0" } } ], @@ -25915,13 +26042,13 @@ "symbol": "CVC/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -25931,7 +26058,7 @@ "tier": 7.0, "symbol": "CVC/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -25939,9 +26066,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -25958,7 +26085,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -26087,13 +26214,13 @@ "symbol": "CVX/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -26103,7 +26230,7 @@ "tier": 9.0, "symbol": "CVX/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -26111,9 +26238,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -26130,7 +26257,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -26242,13 +26369,13 @@ "symbol": "CYBER/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -26258,7 +26385,7 @@ "tier": 8.0, "symbol": "CYBER/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -26266,9 +26393,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -26285,7 +26412,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -26380,13 +26507,13 @@ "symbol": "D/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -26396,7 +26523,7 @@ "tier": 7.0, "symbol": "D/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -26404,9 +26531,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -26423,7 +26550,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -26433,15 +26560,15 @@ "symbol": "DAM/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "50", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -26449,119 +26576,85 @@ "tier": 2.0, "symbol": "DAM/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "minNotional": 10000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "50.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "10000", + "maintMarginRatio": "0.1", + "cum": "500.0" } }, { "tier": 3.0, "symbol": "DAM/USDT:USDT", "currency": "USDT", - "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "300.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "1750.0" } }, { "tier": 4.0, "symbol": "DAM/USDT:USDT", "currency": "USDT", - "minNotional": 20000.0, - "maxNotional": 50000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "4", - "initialLeverage": "5", - "notionalCap": "50000", - "notionalFloor": "20000", - "maintMarginRatio": "0.1", - "cum": "1300.0" + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "5920.0" } }, { "tier": 5.0, "symbol": "DAM/USDT:USDT", "currency": "USDT", - "minNotional": 50000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "5", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "50000", - "maintMarginRatio": "0.125", - "cum": "2550.0" + "initialLeverage": "2", + "notionalCap": "2500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "26745.0" } }, { "tier": 6.0, "symbol": "DAM/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 1000000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "6", - "initialLeverage": "3", - "notionalCap": "1000000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "12975.0" - } - }, - { - "tier": 7.0, - "symbol": "DAM/USDT:USDT", - "currency": "USDT", - "minNotional": 1000000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "7", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "1000000", - "maintMarginRatio": "0.25", - "cum": "96275.0" - } - }, - { - "tier": 8.0, - "symbol": "DAM/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "651745.0" } } ], @@ -27000,13 +27093,13 @@ "symbol": "DEEP/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 500000.0, + "maxNotional": 400000.0, "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { "bracket": "6", "initialLeverage": "4", - "notionalCap": "500000", + "notionalCap": "400000", "notionalFloor": "250000", "maintMarginRatio": "0.125", "cum": "13825.0" @@ -27016,24 +27109,24 @@ "tier": 7.0, "symbol": "DEEP/USDT:USDT", "currency": "USDT", - "minNotional": 500000.0, - "maxNotional": 4500000.0, + "minNotional": 400000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "500000", + "notionalCap": "500000", + "notionalFloor": "400000", "maintMarginRatio": "0.1667", - "cum": "34675.0" + "cum": "30505.0" } }, { "tier": 8.0, "symbol": "DEEP/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -27041,9 +27134,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "409525.0" + "cum": "72155.0" } }, { @@ -27060,7 +27153,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284525.0" + "cum": "1947155.0" } } ], @@ -27259,13 +27352,13 @@ "symbol": "DEGEN/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -27275,7 +27368,7 @@ "tier": 7.0, "symbol": "DEGEN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -27283,9 +27376,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -27302,7 +27395,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -27552,13 +27645,13 @@ "symbol": "DENT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -27568,7 +27661,7 @@ "tier": 8.0, "symbol": "DENT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -27576,9 +27669,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -27595,7 +27688,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -27707,13 +27800,13 @@ "symbol": "DEXE/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34725.0" @@ -27723,7 +27816,7 @@ "tier": 8.0, "symbol": "DEXE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -27731,9 +27824,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "409575.0" + "cum": "76375.0" } }, { @@ -27750,7 +27843,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284575.0" + "cum": "1951375.0" } } ], @@ -27845,13 +27938,13 @@ "symbol": "DF/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -27861,7 +27954,7 @@ "tier": 7.0, "symbol": "DF/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -27869,9 +27962,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -27888,7 +27981,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -28104,13 +28197,13 @@ "symbol": "DIA/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -28120,7 +28213,7 @@ "tier": 8.0, "symbol": "DIA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -28128,9 +28221,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -28147,7 +28240,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -28157,15 +28250,15 @@ "symbol": "DMC/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 40.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "40", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -28173,55 +28266,21 @@ "tier": 2.0, "symbol": "DMC/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "DMC/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "DMC/USDT:USDT", - "currency": "USDT", - "minNotional": 20000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "20000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1275.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "DMC/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -28229,16 +28288,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2525.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "DMC/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -28246,16 +28305,16 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6695.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "DMC/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, @@ -28263,16 +28322,16 @@ "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", "notionalCap": "2500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27520.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "DMC/USDT:USDT", "currency": "USDT", "minNotional": 2500000.0, @@ -28280,12 +28339,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", "notionalCap": "5000000", "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "652520.0" + "cum": "651745.0" } } ], @@ -28380,13 +28439,13 @@ "symbol": "DODOX/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -28396,7 +28455,7 @@ "tier": 7.0, "symbol": "DODOX/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -28404,9 +28463,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -28423,7 +28482,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -28879,13 +28938,13 @@ "symbol": "DOGS/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -28895,7 +28954,7 @@ "tier": 8.0, "symbol": "DOGS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -28903,9 +28962,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -28922,7 +28981,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -29034,13 +29093,13 @@ "symbol": "DOLO/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -29050,7 +29109,7 @@ "tier": 8.0, "symbol": "DOLO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -29058,9 +29117,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -29077,7 +29136,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -29172,13 +29231,13 @@ "symbol": "DOOD/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -29188,7 +29247,7 @@ "tier": 7.0, "symbol": "DOOD/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -29196,9 +29255,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -29215,7 +29274,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -29415,15 +29474,15 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", - "cum": "25.0" + "maintMarginRatio": "0.025", + "cum": "50.0" } }, { @@ -29431,105 +29490,88 @@ "symbol": "DRIFT/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "300.0" } }, { "tier": 4.0, "symbol": "DRIFT/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1300.0" } }, { "tier": 5.0, "symbol": "DRIFT/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2550.0" } }, { "tier": 6.0, "symbol": "DRIFT/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12975.0" } }, { "tier": 7.0, "symbol": "DRIFT/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" - } - }, - { - "tier": 8.0, - "symbol": "DRIFT/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "8", + "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "54625.0" } }, { - "tier": 9.0, + "tier": 8.0, "symbol": "DRIFT/USDT:USDT", "currency": "USDT", "minNotional": 7500000.0, @@ -29537,12 +29579,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1929625.0" } } ], @@ -29637,13 +29679,13 @@ "symbol": "DUSK/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -29653,7 +29695,7 @@ "tier": 7.0, "symbol": "DUSK/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -29661,9 +29703,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -29680,7 +29722,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -29809,13 +29851,13 @@ "symbol": "DYDX/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -29825,7 +29867,7 @@ "tier": 9.0, "symbol": "DYDX/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -29833,9 +29875,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -29852,7 +29894,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -29964,13 +30006,13 @@ "symbol": "DYM/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -29980,7 +30022,7 @@ "tier": 8.0, "symbol": "DYM/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -29988,9 +30030,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -30007,7 +30049,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -30136,13 +30178,13 @@ "symbol": "EDEN/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -30152,7 +30194,7 @@ "tier": 9.0, "symbol": "EDEN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -30160,9 +30202,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -30179,7 +30221,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -30291,13 +30333,13 @@ "symbol": "EDU/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -30307,7 +30349,7 @@ "tier": 8.0, "symbol": "EDU/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -30315,9 +30357,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -30334,7 +30376,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -30463,13 +30505,13 @@ "symbol": "EGLD/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -30479,7 +30521,7 @@ "tier": 9.0, "symbol": "EGLD/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -30487,9 +30529,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -30506,7 +30548,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -31100,13 +31142,13 @@ "symbol": "ENJ/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -31116,7 +31158,7 @@ "tier": 8.0, "symbol": "ENJ/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -31124,9 +31166,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -31143,7 +31185,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -31461,13 +31503,13 @@ "symbol": "ENSO/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -31477,7 +31519,7 @@ "tier": 9.0, "symbol": "ENSO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -31485,9 +31527,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -31504,7 +31546,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -31616,13 +31658,13 @@ "symbol": "EPIC/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -31632,7 +31674,7 @@ "tier": 8.0, "symbol": "EPIC/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -31640,9 +31682,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -31659,7 +31701,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -31669,15 +31711,15 @@ "symbol": "EPT/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 40.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "40", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -31685,55 +31727,21 @@ "tier": 2.0, "symbol": "EPT/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "EPT/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "EPT/USDT:USDT", - "currency": "USDT", - "minNotional": 20000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "20000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1275.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "EPT/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -31741,16 +31749,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2525.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "EPT/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -31758,16 +31766,16 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6695.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "EPT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, @@ -31775,16 +31783,16 @@ "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", "notionalCap": "2500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27520.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "EPT/USDT:USDT", "currency": "USDT", "minNotional": 2500000.0, @@ -31792,12 +31800,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", "notionalCap": "5000000", "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "652520.0" + "cum": "651745.0" } } ], @@ -32081,13 +32089,13 @@ "symbol": "ESPORTS/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -32097,7 +32105,7 @@ "tier": 7.0, "symbol": "ESPORTS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -32105,9 +32113,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -32124,7 +32132,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -33612,13 +33620,13 @@ "symbol": "ETHW/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -33628,7 +33636,7 @@ "tier": 8.0, "symbol": "ETHW/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -33636,9 +33644,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -33655,7 +33663,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -33784,13 +33792,13 @@ "symbol": "EUL/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -33800,7 +33808,7 @@ "tier": 9.0, "symbol": "EUL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -33808,9 +33816,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -33827,7 +33835,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -33837,15 +33845,15 @@ "symbol": "EVAA/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "50", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -33853,119 +33861,85 @@ "tier": 2.0, "symbol": "EVAA/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "minNotional": 10000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "50.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "10000", + "maintMarginRatio": "0.1", + "cum": "500.0" } }, { "tier": 3.0, "symbol": "EVAA/USDT:USDT", "currency": "USDT", - "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "300.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "1750.0" } }, { "tier": 4.0, "symbol": "EVAA/USDT:USDT", "currency": "USDT", - "minNotional": 20000.0, - "maxNotional": 50000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "4", - "initialLeverage": "5", - "notionalCap": "50000", - "notionalFloor": "20000", - "maintMarginRatio": "0.1", - "cum": "1300.0" + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "5920.0" } }, { "tier": 5.0, "symbol": "EVAA/USDT:USDT", "currency": "USDT", - "minNotional": 50000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "5", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "50000", - "maintMarginRatio": "0.125", - "cum": "2550.0" + "initialLeverage": "2", + "notionalCap": "2500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "26745.0" } }, { "tier": 6.0, "symbol": "EVAA/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 1000000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "6", - "initialLeverage": "3", - "notionalCap": "1000000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "12975.0" - } - }, - { - "tier": 7.0, - "symbol": "EVAA/USDT:USDT", - "currency": "USDT", - "minNotional": 1000000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "7", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "1000000", - "maintMarginRatio": "0.25", - "cum": "96275.0" - } - }, - { - "tier": 8.0, - "symbol": "EVAA/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "651745.0" } } ], @@ -34060,13 +34034,13 @@ "symbol": "F/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -34076,7 +34050,7 @@ "tier": 7.0, "symbol": "F/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -34084,9 +34058,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -34103,7 +34077,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -34113,13 +34087,13 @@ "symbol": "FARTCOIN/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 20000.0, + "maxNotional": 5000.0, "maintenanceMarginRate": 0.01, "maxLeverage": 75.0, "info": { "bracket": "1", "initialLeverage": "75", - "notionalCap": "20000", + "notionalCap": "5000", "notionalFloor": "0", "maintMarginRatio": "0.01", "cum": "0.0" @@ -34129,136 +34103,170 @@ "tier": 2.0, "symbol": "FARTCOIN/USDT:USDT", "currency": "USDT", - "minNotional": 20000.0, - "maxNotional": 200000.0, + "minNotional": 5000.0, + "maxNotional": 10000.0, "maintenanceMarginRate": 0.015, "maxLeverage": 50.0, "info": { "bracket": "2", "initialLeverage": "50", - "notionalCap": "200000", - "notionalFloor": "20000", + "notionalCap": "10000", + "notionalFloor": "5000", "maintMarginRatio": "0.015", - "cum": "100.0" + "cum": "25.0" } }, { "tier": 3.0, "symbol": "FARTCOIN/USDT:USDT", "currency": "USDT", - "minNotional": 200000.0, - "maxNotional": 1000000.0, + "minNotional": 10000.0, + "maxNotional": 50000.0, "maintenanceMarginRate": 0.02, "maxLeverage": 25.0, "info": { "bracket": "3", "initialLeverage": "25", - "notionalCap": "1000000", - "notionalFloor": "200000", + "notionalCap": "50000", + "notionalFloor": "10000", "maintMarginRatio": "0.02", - "cum": "1100.0" + "cum": "75.0" } }, { "tier": 4.0, "symbol": "FARTCOIN/USDT:USDT", "currency": "USDT", - "minNotional": 1000000.0, - "maxNotional": 2000000.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, "maintenanceMarginRate": 0.025, "maxLeverage": 20.0, "info": { "bracket": "4", "initialLeverage": "20", - "notionalCap": "2000000", - "notionalFloor": "1000000", + "notionalCap": "100000", + "notionalFloor": "50000", "maintMarginRatio": "0.025", - "cum": "6100.0" + "cum": "325.0" } }, { "tier": 5.0, "symbol": "FARTCOIN/USDT:USDT", "currency": "USDT", - "minNotional": 2000000.0, - "maxNotional": 5000000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 100000.0, + "maxNotional": 175000.0, + "maintenanceMarginRate": 0.0333, + "maxLeverage": 15.0, "info": { "bracket": "5", - "initialLeverage": "10", - "notionalCap": "5000000", - "notionalFloor": "2000000", - "maintMarginRatio": "0.05", - "cum": "56100.0" + "initialLeverage": "15", + "notionalCap": "175000", + "notionalFloor": "100000", + "maintMarginRatio": "0.0333", + "cum": "1155.0" } }, { "tier": 6.0, "symbol": "FARTCOIN/USDT:USDT", "currency": "USDT", - "minNotional": 5000000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 175000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "6", - "initialLeverage": "5", - "notionalCap": "7500000", - "notionalFloor": "5000000", - "maintMarginRatio": "0.1", - "cum": "306100.0" + "initialLeverage": "10", + "notionalCap": "250000", + "notionalFloor": "175000", + "maintMarginRatio": "0.05", + "cum": "4077.5" } }, { "tier": 7.0, "symbol": "FARTCOIN/USDT:USDT", "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 10000000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 750000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "7", - "initialLeverage": "4", - "notionalCap": "10000000", - "notionalFloor": "7500000", - "maintMarginRatio": "0.125", - "cum": "493600.0" + "initialLeverage": "5", + "notionalCap": "750000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1", + "cum": "16577.5" } }, { "tier": 8.0, "symbol": "FARTCOIN/USDT:USDT", "currency": "USDT", - "minNotional": 10000000.0, - "maxNotional": 12500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, + "minNotional": 750000.0, + "maxNotional": 1500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "8", - "initialLeverage": "2", - "notionalCap": "12500000", - "notionalFloor": "10000000", - "maintMarginRatio": "0.25", - "cum": "1743600.0" + "initialLeverage": "4", + "notionalCap": "1500000", + "notionalFloor": "750000", + "maintMarginRatio": "0.125", + "cum": "35327.5" } }, { "tier": 9.0, "symbol": "FARTCOIN/USDT:USDT", "currency": "USDT", - "minNotional": 12500000.0, - "maxNotional": 15000000.0, + "minNotional": 1500000.0, + "maxNotional": 4500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "9", + "initialLeverage": "3", + "notionalCap": "4500000", + "notionalFloor": "1500000", + "maintMarginRatio": "0.1667", + "cum": "97877.5" + } + }, + { + "tier": 10.0, + "symbol": "FARTCOIN/USDT:USDT", + "currency": "USDT", + "minNotional": 4500000.0, + "maxNotional": 7500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "10", + "initialLeverage": "2", + "notionalCap": "7500000", + "notionalFloor": "4500000", + "maintMarginRatio": "0.25", + "cum": "472727.5" + } + }, + { + "tier": 11.0, + "symbol": "FARTCOIN/USDT:USDT", + "currency": "USDT", + "minNotional": 7500000.0, + "maxNotional": 12500000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "11", "initialLeverage": "1", - "notionalCap": "15000000", - "notionalFloor": "12500000", + "notionalCap": "12500000", + "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "4868600.0" + "cum": "2347727.5" } } ], @@ -34612,15 +34620,15 @@ "symbol": "FHE/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 40.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "40", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -34628,55 +34636,21 @@ "tier": 2.0, "symbol": "FHE/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "FHE/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "FHE/USDT:USDT", - "currency": "USDT", - "minNotional": 20000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "20000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1275.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "FHE/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -34684,16 +34658,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2525.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "FHE/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -34701,16 +34675,16 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6695.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "FHE/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, @@ -34718,16 +34692,16 @@ "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", "notionalCap": "2500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27520.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "FHE/USDT:USDT", "currency": "USDT", "minNotional": 2500000.0, @@ -34735,12 +34709,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", "notionalCap": "5000000", "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "652520.0" + "cum": "651745.0" } } ], @@ -34852,13 +34826,13 @@ "symbol": "FIDA/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -34868,7 +34842,7 @@ "tier": 8.0, "symbol": "FIDA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -34876,9 +34850,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -34895,7 +34869,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -35232,15 +35206,15 @@ "symbol": "FIO/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "25", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -35248,55 +35222,21 @@ "tier": 2.0, "symbol": "FIO/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "FIO/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "25000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "FIO/USDT:USDT", - "currency": "USDT", - "minNotional": 25000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "25000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1525.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "FIO/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -35304,16 +35244,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2775.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "FIO/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -35321,46 +35261,46 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6945.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "FIO/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 500000.0, + "maxNotional": 2500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", - "notionalCap": "500000", + "notionalCap": "2500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27770.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "FIO/USDT:USDT", "currency": "USDT", - "minNotional": 500000.0, - "maxNotional": 800000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "800000", - "notionalFloor": "500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "152770.0" + "cum": "651745.0" } } ], @@ -35370,15 +35310,15 @@ "symbol": "FIS/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "25", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -35386,55 +35326,21 @@ "tier": 2.0, "symbol": "FIS/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "FIS/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "25000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "FIS/USDT:USDT", - "currency": "USDT", - "minNotional": 25000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "25000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1525.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "FIS/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -35442,16 +35348,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2775.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "FIS/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -35459,46 +35365,46 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6945.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "FIS/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 500000.0, + "maxNotional": 2500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", - "notionalCap": "500000", + "notionalCap": "2500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27770.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "FIS/USDT:USDT", "currency": "USDT", - "minNotional": 500000.0, - "maxNotional": 800000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "800000", - "notionalFloor": "500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "152770.0" + "cum": "651745.0" } } ], @@ -35576,13 +35482,13 @@ "symbol": "FLM/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 2500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { "bracket": "5", "initialLeverage": "2", - "notionalCap": "2500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", "cum": "26995.0" @@ -35592,17 +35498,17 @@ "tier": 6.0, "symbol": "FLM/USDT:USDT", "currency": "USDT", - "minNotional": 2500000.0, - "maxNotional": 5000000.0, + "minNotional": 500000.0, + "maxNotional": 800000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { "bracket": "6", "initialLeverage": "1", - "notionalCap": "5000000", - "notionalFloor": "2500000", + "notionalCap": "800000", + "notionalFloor": "500000", "maintMarginRatio": "0.5", - "cum": "651995.0" + "cum": "151995.0" } } ], @@ -35630,15 +35536,15 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", - "cum": "25.0" + "maintMarginRatio": "0.025", + "cum": "50.0" } }, { @@ -35646,105 +35552,88 @@ "symbol": "FLOCK/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "300.0" } }, { "tier": 4.0, "symbol": "FLOCK/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1300.0" } }, { "tier": 5.0, "symbol": "FLOCK/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2550.0" } }, { "tier": 6.0, "symbol": "FLOCK/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12975.0" } }, { "tier": 7.0, "symbol": "FLOCK/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" - } - }, - { - "tier": 8.0, - "symbol": "FLOCK/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "8", + "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "54625.0" } }, { - "tier": 9.0, + "tier": 8.0, "symbol": "FLOCK/USDT:USDT", "currency": "USDT", "minNotional": 7500000.0, @@ -35752,12 +35641,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1929625.0" } } ], @@ -35886,13 +35775,13 @@ "symbol": "FLOW/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -35902,7 +35791,7 @@ "tier": 9.0, "symbol": "FLOW/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -35910,9 +35799,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -35929,7 +35818,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -36058,13 +35947,13 @@ "symbol": "FLUID/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -36074,7 +35963,7 @@ "tier": 9.0, "symbol": "FLUID/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -36082,9 +35971,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -36101,7 +35990,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -36196,13 +36085,13 @@ "symbol": "FLUX/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -36212,7 +36101,7 @@ "tier": 7.0, "symbol": "FLUX/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -36220,9 +36109,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -36239,7 +36128,145 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" + } + } + ], + "FOLKS/USDT:USDT": [ + { + "tier": 1.0, + "symbol": "FOLKS/USDT:USDT", + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "FOLKS/USDT:USDT", + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "10000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "symbol": "FOLKS/USDT:USDT", + "currency": "USDT", + "minNotional": 10000.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "20000", + "notionalFloor": "10000", + "maintMarginRatio": "0.05", + "cum": "300.0" + } + }, + { + "tier": 4.0, + "symbol": "FOLKS/USDT:USDT", + "currency": "USDT", + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1300.0" + } + }, + { + "tier": 5.0, + "symbol": "FOLKS/USDT:USDT", + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2550.0" + } + }, + { + "tier": 6.0, + "symbol": "FOLKS/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "6", + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12975.0" + } + }, + { + "tier": 7.0, + "symbol": "FOLKS/USDT:USDT", + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 7500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "7", + "initialLeverage": "2", + "notionalCap": "7500000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "54625.0" + } + }, + { + "tier": 8.0, + "symbol": "FOLKS/USDT:USDT", + "currency": "USDT", + "minNotional": 7500000.0, + "maxNotional": 12500000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "8", + "initialLeverage": "1", + "notionalCap": "12500000", + "notionalFloor": "7500000", + "maintMarginRatio": "0.5", + "cum": "1929625.0" } } ], @@ -36351,13 +36378,13 @@ "symbol": "FORM/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -36367,7 +36394,7 @@ "tier": 8.0, "symbol": "FORM/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -36375,9 +36402,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -36394,7 +36421,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -36489,13 +36516,13 @@ "symbol": "FORTH/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -36505,7 +36532,7 @@ "tier": 7.0, "symbol": "FORTH/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -36513,9 +36540,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -36532,7 +36559,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -37075,13 +37102,13 @@ "symbol": "FXS/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -37091,7 +37118,7 @@ "tier": 9.0, "symbol": "FXS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -37099,9 +37126,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -37118,7 +37145,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -37213,13 +37240,13 @@ "symbol": "G/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 1000000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "1000000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -37229,7 +37256,7 @@ "tier": 7.0, "symbol": "G/USDT:USDT", "currency": "USDT", - "minNotional": 1000000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -37237,9 +37264,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "1000000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "96275.0" + "cum": "54625.0" } }, { @@ -37256,7 +37283,145 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "1929625.0" + } + } + ], + "GAIB/USDT:USDT": [ + { + "tier": 1.0, + "symbol": "GAIB/USDT:USDT", + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 40.0, + "info": { + "bracket": "1", + "initialLeverage": "40", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.02", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "GAIB/USDT:USDT", + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "10000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "25.0" + } + }, + { + "tier": 3.0, + "symbol": "GAIB/USDT:USDT", + "currency": "USDT", + "minNotional": 10000.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "20000", + "notionalFloor": "10000", + "maintMarginRatio": "0.05", + "cum": "275.0" + } + }, + { + "tier": 4.0, + "symbol": "GAIB/USDT:USDT", + "currency": "USDT", + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1275.0" + } + }, + { + "tier": 5.0, + "symbol": "GAIB/USDT:USDT", + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2525.0" + } + }, + { + "tier": 6.0, + "symbol": "GAIB/USDT:USDT", + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "6", + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6695.0" + } + }, + { + "tier": 7.0, + "symbol": "GAIB/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "7", + "initialLeverage": "2", + "notionalCap": "2500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "27520.0" + } + }, + { + "tier": 8.0, + "symbol": "GAIB/USDT:USDT", + "currency": "USDT", + "minNotional": 2500000.0, + "maxNotional": 5000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "8", + "initialLeverage": "1", + "notionalCap": "5000000", + "notionalFloor": "2500000", + "maintMarginRatio": "0.5", + "cum": "652520.0" } } ], @@ -37574,13 +37739,13 @@ "symbol": "GAS/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -37590,7 +37755,7 @@ "tier": 9.0, "symbol": "GAS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -37598,9 +37763,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -37617,7 +37782,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -37712,13 +37877,13 @@ "symbol": "GHST/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -37728,7 +37893,7 @@ "tier": 7.0, "symbol": "GHST/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -37736,9 +37901,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -37755,7 +37920,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -38022,13 +38187,13 @@ "symbol": "GLM/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17825.0" @@ -38038,7 +38203,7 @@ "tier": 8.0, "symbol": "GLM/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -38046,9 +38211,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392675.0" + "cum": "59475.0" } }, { @@ -38065,7 +38230,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267675.0" + "cum": "1934475.0" } } ], @@ -38298,13 +38463,13 @@ "symbol": "GMT/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -38314,7 +38479,7 @@ "tier": 9.0, "symbol": "GMT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -38322,9 +38487,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -38341,7 +38506,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -38453,13 +38618,13 @@ "symbol": "GMX/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -38469,7 +38634,7 @@ "tier": 8.0, "symbol": "GMX/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -38477,9 +38642,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -38496,7 +38661,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -38625,13 +38790,13 @@ "symbol": "GOAT/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -38641,7 +38806,7 @@ "tier": 9.0, "symbol": "GOAT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -38649,9 +38814,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -38668,7 +38833,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -38780,13 +38945,13 @@ "symbol": "GPS/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -38796,7 +38961,7 @@ "tier": 8.0, "symbol": "GPS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -38804,9 +38969,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -38823,7 +38988,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -38952,13 +39117,13 @@ "symbol": "GRASS/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -38968,7 +39133,7 @@ "tier": 9.0, "symbol": "GRASS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -38976,9 +39141,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -38995,7 +39160,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -39090,13 +39255,13 @@ "symbol": "GRIFFAIN/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -39106,7 +39271,7 @@ "tier": 7.0, "symbol": "GRIFFAIN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -39114,9 +39279,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -39133,7 +39298,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -39262,13 +39427,13 @@ "symbol": "GRT/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -39278,7 +39443,7 @@ "tier": 9.0, "symbol": "GRT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -39286,9 +39451,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -39305,7 +39470,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -39400,13 +39565,13 @@ "symbol": "GTC/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -39416,7 +39581,7 @@ "tier": 7.0, "symbol": "GTC/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -39424,9 +39589,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -39443,7 +39608,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -39538,13 +39703,13 @@ "symbol": "GUN/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -39554,7 +39719,7 @@ "tier": 7.0, "symbol": "GUN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -39562,9 +39727,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -39581,7 +39746,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -39831,13 +39996,13 @@ "symbol": "HAEDAL/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -39847,7 +40012,7 @@ "tier": 7.0, "symbol": "HAEDAL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -39855,9 +40020,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -39874,7 +40039,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -39884,15 +40049,15 @@ "symbol": "HANA/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "50", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -39900,119 +40065,85 @@ "tier": 2.0, "symbol": "HANA/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "minNotional": 10000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "50.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "10000", + "maintMarginRatio": "0.1", + "cum": "500.0" } }, { "tier": 3.0, "symbol": "HANA/USDT:USDT", "currency": "USDT", - "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "300.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "1750.0" } }, { "tier": 4.0, "symbol": "HANA/USDT:USDT", "currency": "USDT", - "minNotional": 20000.0, - "maxNotional": 50000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "4", - "initialLeverage": "5", - "notionalCap": "50000", - "notionalFloor": "20000", - "maintMarginRatio": "0.1", - "cum": "1300.0" + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "5920.0" } }, { "tier": 5.0, "symbol": "HANA/USDT:USDT", "currency": "USDT", - "minNotional": 50000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "5", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "50000", - "maintMarginRatio": "0.125", - "cum": "2550.0" + "initialLeverage": "2", + "notionalCap": "2500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "26745.0" } }, { "tier": 6.0, "symbol": "HANA/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 1000000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "6", - "initialLeverage": "3", - "notionalCap": "1000000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "12975.0" - } - }, - { - "tier": 7.0, - "symbol": "HANA/USDT:USDT", - "currency": "USDT", - "minNotional": 1000000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "7", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "1000000", - "maintMarginRatio": "0.25", - "cum": "96275.0" - } - }, - { - "tier": 8.0, - "symbol": "HANA/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "651745.0" } } ], @@ -40417,13 +40548,13 @@ "symbol": "HEI/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -40433,7 +40564,7 @@ "tier": 7.0, "symbol": "HEI/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -40441,9 +40572,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -40460,7 +40591,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -40572,13 +40703,13 @@ "symbol": "HEMI/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -40588,7 +40719,7 @@ "tier": 8.0, "symbol": "HEMI/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -40596,9 +40727,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -40615,7 +40746,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -40727,13 +40858,13 @@ "symbol": "HFT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -40743,7 +40874,7 @@ "tier": 8.0, "symbol": "HFT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -40751,9 +40882,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -40770,7 +40901,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -40969,13 +41100,13 @@ "symbol": "HIGH/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -40985,7 +41116,7 @@ "tier": 7.0, "symbol": "HIGH/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -40993,9 +41124,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -41012,7 +41143,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -41022,15 +41153,15 @@ "symbol": "HIPPO/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "50", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -41038,119 +41169,85 @@ "tier": 2.0, "symbol": "HIPPO/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "minNotional": 10000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "50.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "10000", + "maintMarginRatio": "0.1", + "cum": "500.0" } }, { "tier": 3.0, "symbol": "HIPPO/USDT:USDT", "currency": "USDT", - "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "300.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "1750.0" } }, { "tier": 4.0, "symbol": "HIPPO/USDT:USDT", "currency": "USDT", - "minNotional": 20000.0, - "maxNotional": 50000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 100000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "4", - "initialLeverage": "5", - "notionalCap": "50000", - "notionalFloor": "20000", - "maintMarginRatio": "0.1", - "cum": "1300.0" + "initialLeverage": "3", + "notionalCap": "1000000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "5920.0" } }, { "tier": 5.0, "symbol": "HIPPO/USDT:USDT", "currency": "USDT", - "minNotional": 50000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 1000000.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "5", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "50000", - "maintMarginRatio": "0.125", - "cum": "2550.0" + "initialLeverage": "2", + "notionalCap": "2500000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.25", + "cum": "89220.0" } }, { "tier": 6.0, "symbol": "HIPPO/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "6", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "12975.0" - } - }, - { - "tier": 7.0, - "symbol": "HIPPO/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "7", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "387825.0" - } - }, - { - "tier": 8.0, - "symbol": "HIPPO/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "714220.0" } } ], @@ -41245,13 +41342,13 @@ "symbol": "HIVE/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -41261,7 +41358,7 @@ "tier": 7.0, "symbol": "HIVE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -41269,9 +41366,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -41288,7 +41385,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -41383,13 +41480,13 @@ "symbol": "HMSTR/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -41399,7 +41496,7 @@ "tier": 7.0, "symbol": "HMSTR/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -41407,9 +41504,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -41426,7 +41523,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -41555,13 +41652,13 @@ "symbol": "HOLO/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -41571,7 +41668,7 @@ "tier": 9.0, "symbol": "HOLO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -41579,9 +41676,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -41598,7 +41695,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -41865,13 +41962,13 @@ "symbol": "HOOK/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -41881,7 +41978,7 @@ "tier": 7.0, "symbol": "HOOK/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -41889,9 +41986,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -41908,7 +42005,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -42020,13 +42117,13 @@ "symbol": "HOT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -42036,7 +42133,7 @@ "tier": 8.0, "symbol": "HOT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -42044,9 +42141,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -42063,7 +42160,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -42192,13 +42289,13 @@ "symbol": "HUMA/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -42208,7 +42305,7 @@ "tier": 9.0, "symbol": "HUMA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -42216,9 +42313,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -42235,7 +42332,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -42502,13 +42599,13 @@ "symbol": "HYPER/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -42518,7 +42615,7 @@ "tier": 8.0, "symbol": "HYPER/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -42526,9 +42623,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -42545,7 +42642,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -42640,13 +42737,13 @@ "symbol": "ICNT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -42656,7 +42753,7 @@ "tier": 7.0, "symbol": "ICNT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -42664,9 +42761,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -42683,7 +42780,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -42984,13 +43081,13 @@ "symbol": "ICX/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -43000,7 +43097,7 @@ "tier": 8.0, "symbol": "ICX/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -43008,9 +43105,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -43027,7 +43124,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -43139,13 +43236,13 @@ "symbol": "ID/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -43155,7 +43252,7 @@ "tier": 8.0, "symbol": "ID/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -43163,9 +43260,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -43182,7 +43279,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -43398,13 +43495,13 @@ "symbol": "IDOL/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -43414,7 +43511,7 @@ "tier": 7.0, "symbol": "IDOL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -43422,9 +43519,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -43441,7 +43538,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -43553,13 +43650,13 @@ "symbol": "ILV/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -43569,7 +43666,7 @@ "tier": 8.0, "symbol": "ILV/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -43577,9 +43674,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -43596,7 +43693,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -43880,13 +43977,13 @@ "symbol": "IN/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -43896,7 +43993,7 @@ "tier": 7.0, "symbol": "IN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -43904,9 +44001,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -43923,7 +44020,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -44035,13 +44132,13 @@ "symbol": "INIT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -44051,7 +44148,7 @@ "tier": 8.0, "symbol": "INIT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -44059,9 +44156,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -44078,7 +44175,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -44362,13 +44459,13 @@ "symbol": "IO/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -44378,7 +44475,7 @@ "tier": 9.0, "symbol": "IO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -44386,9 +44483,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -44405,7 +44502,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -44517,13 +44614,13 @@ "symbol": "IOST/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -44533,7 +44630,7 @@ "tier": 8.0, "symbol": "IOST/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -44541,9 +44638,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -44560,7 +44657,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -44689,13 +44786,13 @@ "symbol": "IOTA/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -44705,7 +44802,7 @@ "tier": 9.0, "symbol": "IOTA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -44713,9 +44810,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -44732,7 +44829,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -44844,13 +44941,13 @@ "symbol": "IOTX/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -44860,7 +44957,7 @@ "tier": 8.0, "symbol": "IOTX/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -44868,9 +44965,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -44887,7 +44984,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -45218,6 +45315,127 @@ } } ], + "IRYS/USDT:USDT": [ + { + "tier": 1.0, + "symbol": "IRYS/USDT:USDT", + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "1", + "initialLeverage": "20", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.025", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "IRYS/USDT:USDT", + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "2", + "initialLeverage": "10", + "notionalCap": "10000", + "notionalFloor": "5000", + "maintMarginRatio": "0.05", + "cum": "125.0" + } + }, + { + "tier": 3.0, + "symbol": "IRYS/USDT:USDT", + "currency": "USDT", + "minNotional": 10000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "3", + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "10000", + "maintMarginRatio": "0.1", + "cum": "625.0" + } + }, + { + "tier": 4.0, + "symbol": "IRYS/USDT:USDT", + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "4", + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "1875.0" + } + }, + { + "tier": 5.0, + "symbol": "IRYS/USDT:USDT", + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "5", + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6045.0" + } + }, + { + "tier": 6.0, + "symbol": "IRYS/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "26870.0" + } + }, + { + "tier": 7.0, + "symbol": "IRYS/USDT:USDT", + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 800000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "800000", + "notionalFloor": "500000", + "maintMarginRatio": "0.5", + "cum": "151870.0" + } + } + ], "JASMY/USDT:USDT": [ { "tier": 1.0, @@ -45343,13 +45561,13 @@ "symbol": "JASMY/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -45359,7 +45577,7 @@ "tier": 9.0, "symbol": "JASMY/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -45367,9 +45585,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -45386,7 +45604,145 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" + } + } + ], + "JCT/USDT:USDT": [ + { + "tier": 1.0, + "symbol": "JCT/USDT:USDT", + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 40.0, + "info": { + "bracket": "1", + "initialLeverage": "40", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.02", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "JCT/USDT:USDT", + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "10000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "25.0" + } + }, + { + "tier": 3.0, + "symbol": "JCT/USDT:USDT", + "currency": "USDT", + "minNotional": 10000.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "20000", + "notionalFloor": "10000", + "maintMarginRatio": "0.05", + "cum": "275.0" + } + }, + { + "tier": 4.0, + "symbol": "JCT/USDT:USDT", + "currency": "USDT", + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1275.0" + } + }, + { + "tier": 5.0, + "symbol": "JCT/USDT:USDT", + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2525.0" + } + }, + { + "tier": 6.0, + "symbol": "JCT/USDT:USDT", + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "6", + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6695.0" + } + }, + { + "tier": 7.0, + "symbol": "JCT/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "7", + "initialLeverage": "2", + "notionalCap": "2500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "27520.0" + } + }, + { + "tier": 8.0, + "symbol": "JCT/USDT:USDT", + "currency": "USDT", + "minNotional": 2500000.0, + "maxNotional": 5000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "8", + "initialLeverage": "1", + "notionalCap": "5000000", + "notionalFloor": "2500000", + "maintMarginRatio": "0.5", + "cum": "652520.0" } } ], @@ -45619,13 +45975,13 @@ "symbol": "JOE/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -45635,7 +45991,7 @@ "tier": 8.0, "symbol": "JOE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -45643,9 +45999,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -45662,7 +46018,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -45774,13 +46130,13 @@ "symbol": "JST/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -45790,7 +46146,7 @@ "tier": 8.0, "symbol": "JST/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -45798,9 +46154,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -45817,7 +46173,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -45946,13 +46302,13 @@ "symbol": "JTO/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -45962,7 +46318,7 @@ "tier": 9.0, "symbol": "JTO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -45970,9 +46326,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -45989,7 +46345,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -46307,13 +46663,13 @@ "symbol": "KAIA/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -46323,7 +46679,7 @@ "tier": 9.0, "symbol": "KAIA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -46331,9 +46687,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -46350,7 +46706,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -47012,13 +47368,13 @@ "symbol": "KAVA/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -47028,7 +47384,7 @@ "tier": 8.0, "symbol": "KAVA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -47036,9 +47392,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -47055,7 +47411,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -47254,13 +47610,13 @@ "symbol": "KERNEL/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -47270,7 +47626,7 @@ "tier": 7.0, "symbol": "KERNEL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -47278,9 +47634,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -47297,7 +47653,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -47513,13 +47869,13 @@ "symbol": "KGEN/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 1000000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "1000000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -47529,7 +47885,7 @@ "tier": 7.0, "symbol": "KGEN/USDT:USDT", "currency": "USDT", - "minNotional": 1000000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -47537,9 +47893,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "1000000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "96275.0" + "cum": "54625.0" } }, { @@ -47556,7 +47912,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "1929625.0" } } ], @@ -47668,13 +48024,13 @@ "symbol": "KITE/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -47684,7 +48040,7 @@ "tier": 8.0, "symbol": "KITE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -47692,9 +48048,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -47711,7 +48067,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -47944,13 +48300,13 @@ "symbol": "KMNO/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -47960,7 +48316,7 @@ "tier": 8.0, "symbol": "KMNO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -47968,9 +48324,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -47987,7 +48343,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -48099,13 +48455,13 @@ "symbol": "KNC/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -48115,7 +48471,7 @@ "tier": 8.0, "symbol": "KNC/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -48123,9 +48479,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -48142,7 +48498,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -48152,15 +48508,15 @@ "symbol": "KOMA/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 40.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "40", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -48168,55 +48524,21 @@ "tier": 2.0, "symbol": "KOMA/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "KOMA/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "25000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "KOMA/USDT:USDT", - "currency": "USDT", - "minNotional": 25000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "25000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1525.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "KOMA/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -48224,16 +48546,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2775.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "KOMA/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -48241,16 +48563,16 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6945.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "KOMA/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, @@ -48258,16 +48580,16 @@ "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", "notionalCap": "2500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27770.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "KOMA/USDT:USDT", "currency": "USDT", "minNotional": 2500000.0, @@ -48275,12 +48597,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", "notionalCap": "5000000", "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "652770.0" + "cum": "651745.0" } } ], @@ -48392,13 +48714,13 @@ "symbol": "KSM/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -48408,7 +48730,7 @@ "tier": 8.0, "symbol": "KSM/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -48416,9 +48738,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -48435,7 +48757,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -48564,13 +48886,13 @@ "symbol": "LA/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -48580,7 +48902,7 @@ "tier": 9.0, "symbol": "LA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -48588,9 +48910,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -48607,7 +48929,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -48618,14 +48940,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 40.0, "info": { "bracket": "1", - "initialLeverage": "50", + "initialLeverage": "40", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.02", "cum": "0.0" } }, @@ -48635,14 +48957,14 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.025", "cum": "25.0" } }, @@ -48651,67 +48973,67 @@ "symbol": "LAB/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "275.0" } }, { "tier": 4.0, "symbol": "LAB/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1275.0" } }, { "tier": 5.0, "symbol": "LAB/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2525.0" } }, { "tier": 6.0, "symbol": "LAB/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, + "minNotional": 100000.0, "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", + "initialLeverage": "3", "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6695.0" } }, { @@ -48719,50 +49041,33 @@ "symbol": "LAB/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", + "initialLeverage": "2", + "notionalCap": "2500000", "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" + "maintMarginRatio": "0.25", + "cum": "27520.0" } }, { "tier": 8.0, "symbol": "LAB/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "8", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "392225.0" - } - }, - { - "tier": 9.0, - "symbol": "LAB/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "652520.0" } } ], @@ -48891,13 +49196,13 @@ "symbol": "LAYER/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -48907,7 +49212,7 @@ "tier": 9.0, "symbol": "LAYER/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -48915,9 +49220,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -48934,7 +49239,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -50046,13 +50351,13 @@ "symbol": "LISTA/USDT:USDT", "currency": "USDT", "minNotional": 5000.0, - "maxNotional": 15000.0, + "maxNotional": 10000.0, "maintenanceMarginRate": 0.02, "maxLeverage": 25.0, "info": { "bracket": "2", "initialLeverage": "25", - "notionalCap": "15000", + "notionalCap": "10000", "notionalFloor": "5000", "maintMarginRatio": "0.02", "cum": "25.0" @@ -50062,92 +50367,92 @@ "tier": 3.0, "symbol": "LISTA/USDT:USDT", "currency": "USDT", - "minNotional": 15000.0, - "maxNotional": 33333.0, + "minNotional": 10000.0, + "maxNotional": 25000.0, "maintenanceMarginRate": 0.025, "maxLeverage": 20.0, "info": { "bracket": "3", "initialLeverage": "20", - "notionalCap": "33333", - "notionalFloor": "15000", + "notionalCap": "25000", + "notionalFloor": "10000", "maintMarginRatio": "0.025", - "cum": "100.0" + "cum": "75.0" } }, { "tier": 4.0, "symbol": "LISTA/USDT:USDT", "currency": "USDT", - "minNotional": 33333.0, - "maxNotional": 83333.0, + "minNotional": 25000.0, + "maxNotional": 62500.0, "maintenanceMarginRate": 0.05, "maxLeverage": 10.0, "info": { "bracket": "4", "initialLeverage": "10", - "notionalCap": "83333", - "notionalFloor": "33333", + "notionalCap": "62500", + "notionalFloor": "25000", "maintMarginRatio": "0.05", - "cum": "933.325" + "cum": "700.0" } }, { "tier": 5.0, "symbol": "LISTA/USDT:USDT", "currency": "USDT", - "minNotional": 83333.0, - "maxNotional": 166666.0, + "minNotional": 62500.0, + "maxNotional": 125000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { "bracket": "5", "initialLeverage": "5", - "notionalCap": "166666", - "notionalFloor": "83333", + "notionalCap": "125000", + "notionalFloor": "62500", "maintMarginRatio": "0.1", - "cum": "5099.975" + "cum": "3825.0" } }, { "tier": 6.0, "symbol": "LISTA/USDT:USDT", "currency": "USDT", - "minNotional": 166666.0, - "maxNotional": 333333.0, + "minNotional": 125000.0, + "maxNotional": 250000.0, "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { "bracket": "6", "initialLeverage": "4", - "notionalCap": "333333", - "notionalFloor": "166666", + "notionalCap": "250000", + "notionalFloor": "125000", "maintMarginRatio": "0.125", - "cum": "9266.625" + "cum": "6950.0" } }, { "tier": 7.0, "symbol": "LISTA/USDT:USDT", "currency": "USDT", - "minNotional": 333333.0, - "maxNotional": 4500000.0, + "minNotional": 250000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "333333", + "notionalCap": "500000", + "notionalFloor": "250000", "maintMarginRatio": "0.1667", - "cum": "23166.6111" + "cum": "17375.0" } }, { "tier": 8.0, "symbol": "LISTA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -50155,9 +50460,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "398016.6111" + "cum": "59025.0" } }, { @@ -50174,7 +50479,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2273016.6111" + "cum": "1934025.0" } } ], @@ -50683,13 +50988,13 @@ "symbol": "LPT/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -50699,7 +51004,7 @@ "tier": 9.0, "symbol": "LPT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -50707,9 +51012,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -50726,7 +51031,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -50838,13 +51143,13 @@ "symbol": "LQTY/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -50854,7 +51159,7 @@ "tier": 8.0, "symbol": "LQTY/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -50862,9 +51167,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -50881,7 +51186,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -50993,13 +51298,13 @@ "symbol": "LRC/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -51009,7 +51314,7 @@ "tier": 8.0, "symbol": "LRC/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -51017,9 +51322,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -51036,7 +51341,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -51131,13 +51436,13 @@ "symbol": "LSK/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -51147,7 +51452,7 @@ "tier": 7.0, "symbol": "LSK/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -51155,9 +51460,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -51174,7 +51479,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -51613,13 +51918,13 @@ "symbol": "LUMIA/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -51629,7 +51934,7 @@ "tier": 7.0, "symbol": "LUMIA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -51637,9 +51942,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -51656,7 +51961,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -51768,13 +52073,13 @@ "symbol": "LUNA2/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -51784,7 +52089,7 @@ "tier": 8.0, "symbol": "LUNA2/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -51792,9 +52097,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -51811,7 +52116,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -51822,14 +52127,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 40.0, "info": { "bracket": "1", - "initialLeverage": "50", + "initialLeverage": "40", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.02", "cum": "0.0" } }, @@ -51839,14 +52144,14 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.025", "cum": "25.0" } }, @@ -51855,67 +52160,67 @@ "symbol": "LYN/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "275.0" } }, { "tier": 4.0, "symbol": "LYN/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1275.0" } }, { "tier": 5.0, "symbol": "LYN/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2525.0" } }, { "tier": 6.0, "symbol": "LYN/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, + "minNotional": 100000.0, "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", + "initialLeverage": "3", "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6695.0" } }, { @@ -51923,50 +52228,33 @@ "symbol": "LYN/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", + "initialLeverage": "2", + "notionalCap": "2500000", "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" + "maintMarginRatio": "0.25", + "cum": "27520.0" } }, { "tier": 8.0, "symbol": "LYN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "8", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "392225.0" - } - }, - { - "tier": 9.0, - "symbol": "LYN/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "652520.0" } } ], @@ -52078,13 +52366,13 @@ "symbol": "M/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -52094,7 +52382,7 @@ "tier": 8.0, "symbol": "M/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -52102,9 +52390,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -52121,7 +52409,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -52250,13 +52538,13 @@ "symbol": "MAGIC/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -52266,7 +52554,7 @@ "tier": 9.0, "symbol": "MAGIC/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -52274,9 +52562,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -52293,7 +52581,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -52422,13 +52710,13 @@ "symbol": "MANA/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -52438,7 +52726,7 @@ "tier": 9.0, "symbol": "MANA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -52446,9 +52734,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -52465,7 +52753,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -52577,13 +52865,13 @@ "symbol": "MANTA/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -52593,7 +52881,7 @@ "tier": 8.0, "symbol": "MANTA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -52601,9 +52889,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -52620,7 +52908,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -52749,13 +53037,13 @@ "symbol": "MASK/USDT:USDT", "currency": "USDT", "minNotional": 300000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "300000", "maintMarginRatio": "0.1667", "cum": "20862.5" @@ -52765,7 +53053,7 @@ "tier": 9.0, "symbol": "MASK/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -52773,9 +53061,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "395712.5" + "cum": "104162.5" } }, { @@ -52792,7 +53080,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2270712.5" + "cum": "1979162.5" } } ], @@ -52887,13 +53175,13 @@ "symbol": "MAV/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -52903,7 +53191,7 @@ "tier": 7.0, "symbol": "MAV/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -52911,9 +53199,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -52930,7 +53218,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -52941,14 +53229,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maintenanceMarginRate": 0.03, + "maxLeverage": 20.0, "info": { "bracket": "1", - "initialLeverage": "50", + "initialLeverage": "20", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.03", "cum": "0.0" } }, @@ -52958,15 +53246,15 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "2", - "initialLeverage": "20", + "initialLeverage": "10", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "50.0" + "maintMarginRatio": "0.05", + "cum": "100.0" } }, { @@ -52974,50 +53262,50 @@ "symbol": "MAVIA/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", + "initialLeverage": "5", + "notionalCap": "50000", "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "300.0" + "maintMarginRatio": "0.1", + "cum": "600.0" } }, { "tier": 4.0, "symbol": "MAVIA/USDT:USDT", "currency": "USDT", - "minNotional": 20000.0, - "maxNotional": 50000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 150000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "4", - "initialLeverage": "5", - "notionalCap": "50000", - "notionalFloor": "20000", - "maintMarginRatio": "0.1", - "cum": "1300.0" + "initialLeverage": "4", + "notionalCap": "150000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "1850.0" } }, { "tier": 5.0, "symbol": "MAVIA/USDT:USDT", "currency": "USDT", - "minNotional": 50000.0, + "minNotional": 150000.0, "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "5", - "initialLeverage": "4", + "initialLeverage": "3", "notionalCap": "250000", - "notionalFloor": "50000", - "maintMarginRatio": "0.125", - "cum": "2550.0" + "notionalFloor": "150000", + "maintMarginRatio": "0.1667", + "cum": "8105.0" } }, { @@ -53025,50 +53313,33 @@ "symbol": "MAVIA/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, + "maxNotional": 800000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "6", - "initialLeverage": "3", - "notionalCap": "4500000", + "initialLeverage": "2", + "notionalCap": "800000", "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "12975.0" + "maintMarginRatio": "0.25", + "cum": "28930.0" } }, { "tier": 7.0, "symbol": "MAVIA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "7", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "387825.0" - } - }, - { - "tier": 8.0, - "symbol": "MAVIA/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 800000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "7", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "1000000", + "notionalFloor": "800000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "228930.0" } } ], @@ -53163,13 +53434,13 @@ "symbol": "MBOX/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -53179,7 +53450,7 @@ "tier": 7.0, "symbol": "MBOX/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -53187,9 +53458,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -53206,7 +53477,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -53439,13 +53710,13 @@ "symbol": "ME/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -53455,7 +53726,7 @@ "tier": 8.0, "symbol": "ME/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -53463,9 +53734,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -53482,7 +53753,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -53611,13 +53882,13 @@ "symbol": "MELANIA/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -53627,7 +53898,7 @@ "tier": 9.0, "symbol": "MELANIA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -53635,9 +53906,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -53654,7 +53925,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -53783,13 +54054,13 @@ "symbol": "MEME/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -53799,7 +54070,7 @@ "tier": 9.0, "symbol": "MEME/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -53807,9 +54078,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -53826,7 +54097,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -54076,13 +54347,13 @@ "symbol": "MERL/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -54092,7 +54363,7 @@ "tier": 9.0, "symbol": "MERL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -54100,9 +54371,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -54119,7 +54390,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -54130,14 +54401,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maintenanceMarginRate": 0.01, + "maxLeverage": 75.0, "info": { "bracket": "1", - "initialLeverage": "50", + "initialLeverage": "75", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.01", "cum": "0.0" } }, @@ -54147,14 +54418,14 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "50", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.015", "cum": "25.0" } }, @@ -54164,14 +54435,14 @@ "currency": "USDT", "minNotional": 10000.0, "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 25.0, "info": { "bracket": "3", - "initialLeverage": "20", + "initialLeverage": "25", "notionalCap": "25000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", + "maintMarginRatio": "0.02", "cum": "75.0" } }, @@ -54180,33 +54451,33 @@ "symbol": "MET/USDT:USDT", "currency": "USDT", "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", + "initialLeverage": "20", + "notionalCap": "50000", "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "maintMarginRatio": "0.025", + "cum": "200.0" } }, { "tier": 5.0, "symbol": "MET/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, + "minNotional": 50000.0, "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "5", - "initialLeverage": "5", + "initialLeverage": "10", "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "notionalFloor": "50000", + "maintMarginRatio": "0.05", + "cum": "1450.0" } }, { @@ -54215,15 +54486,15 @@ "currency": "USDT", "minNotional": 125000.0, "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "6", - "initialLeverage": "4", + "initialLeverage": "5", "notionalCap": "250000", "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "maintMarginRatio": "0.1", + "cum": "7700.0" } }, { @@ -54231,50 +54502,67 @@ "symbol": "MET/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", + "initialLeverage": "4", + "notionalCap": "500000", "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" + "maintMarginRatio": "0.125", + "cum": "13950.0" } }, { "tier": 8.0, "symbol": "MET/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "8", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "392225.0" + "initialLeverage": "3", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.1667", + "cum": "34800.0" } }, { "tier": 9.0, "symbol": "MET/USDT:USDT", "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 7500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "9", + "initialLeverage": "2", + "notionalCap": "7500000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.25", + "cum": "118100.0" + } + }, + { + "tier": 10.0, + "symbol": "MET/USDT:USDT", + "currency": "USDT", "minNotional": 7500000.0, "maxNotional": 12500000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "10", "initialLeverage": "1", "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1993100.0" } } ], @@ -54386,13 +54674,13 @@ "symbol": "METIS/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -54402,7 +54690,7 @@ "tier": 8.0, "symbol": "METIS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -54410,9 +54698,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -54429,7 +54717,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -54541,13 +54829,13 @@ "symbol": "MEW/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -54557,7 +54845,7 @@ "tier": 8.0, "symbol": "MEW/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -54565,9 +54853,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -54584,7 +54872,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -54594,15 +54882,15 @@ "symbol": "MILK/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "50", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -54610,55 +54898,21 @@ "tier": 2.0, "symbol": "MILK/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "50.0" - } - }, - { - "tier": 3.0, - "symbol": "MILK/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "300.0" - } - }, - { - "tier": 4.0, - "symbol": "MILK/USDT:USDT", - "currency": "USDT", - "minNotional": 20000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "20000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1300.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "MILK/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -54666,63 +54920,63 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "250000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2550.0" + "cum": "1750.0" + } + }, + { + "tier": 4.0, + "symbol": "MILK/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "4", + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12175.0" + } + }, + { + "tier": 5.0, + "symbol": "MILK/USDT:USDT", + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 800000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "5", + "initialLeverage": "2", + "notionalCap": "800000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "53825.0" } }, { "tier": 6.0, "symbol": "MILK/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "6", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "12975.0" - } - }, - { - "tier": 7.0, - "symbol": "MILK/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "7", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "387825.0" - } - }, - { - "tier": 8.0, - "symbol": "MILK/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 800000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "1000000", + "notionalFloor": "800000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "253825.0" } } ], @@ -54851,13 +55105,13 @@ "symbol": "MINA/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -54867,7 +55121,7 @@ "tier": 9.0, "symbol": "MINA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -54875,9 +55129,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -54894,7 +55148,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -55023,13 +55277,13 @@ "symbol": "MIRA/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -55039,7 +55293,7 @@ "tier": 9.0, "symbol": "MIRA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -55047,9 +55301,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -55066,7 +55320,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -55178,13 +55432,13 @@ "symbol": "MITO/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -55194,7 +55448,7 @@ "tier": 8.0, "symbol": "MITO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -55202,9 +55456,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -55221,7 +55475,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -55488,13 +55742,13 @@ "symbol": "MLN/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -55504,7 +55758,7 @@ "tier": 7.0, "symbol": "MLN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -55512,9 +55766,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -55531,7 +55785,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -55643,13 +55897,13 @@ "symbol": "MMT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -55659,7 +55913,7 @@ "tier": 8.0, "symbol": "MMT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -55667,9 +55921,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -55686,7 +55940,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -55815,13 +56069,13 @@ "symbol": "MOCA/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -55831,7 +56085,7 @@ "tier": 9.0, "symbol": "MOCA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -55839,9 +56093,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -55858,7 +56112,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -55868,15 +56122,15 @@ "symbol": "MON/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.01, + "maxLeverage": 75.0, "info": { "bracket": "1", - "initialLeverage": "5", - "notionalCap": "5000", + "initialLeverage": "75", + "notionalCap": "20000", "notionalFloor": "0", - "maintMarginRatio": "0.1", + "maintMarginRatio": "0.01", "cum": "0.0" } }, @@ -55884,68 +56138,136 @@ "tier": 2.0, "symbol": "MON/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 20000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, "info": { "bracket": "2", - "initialLeverage": "4", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.125", - "cum": "125.0" + "initialLeverage": "50", + "notionalCap": "200000", + "notionalFloor": "20000", + "maintMarginRatio": "0.015", + "cum": "100.0" } }, { "tier": 3.0, "symbol": "MON/USDT:USDT", "currency": "USDT", - "minNotional": 10000.0, - "maxNotional": 30000.0, - "maintenanceMarginRate": 0.167, - "maxLeverage": 3.0, + "minNotional": 200000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 25.0, "info": { "bracket": "3", - "initialLeverage": "3", - "notionalCap": "30000", - "notionalFloor": "10000", - "maintMarginRatio": "0.167", - "cum": "545.0" + "initialLeverage": "25", + "notionalCap": "1000000", + "notionalFloor": "200000", + "maintMarginRatio": "0.02", + "cum": "1100.0" } }, { "tier": 4.0, "symbol": "MON/USDT:USDT", "currency": "USDT", - "minNotional": 30000.0, - "maxNotional": 80000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "4", - "initialLeverage": "2", - "notionalCap": "80000", - "notionalFloor": "30000", - "maintMarginRatio": "0.25", - "cum": "3035.0" + "initialLeverage": "20", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.025", + "cum": "6100.0" } }, { "tier": 5.0, "symbol": "MON/USDT:USDT", "currency": "USDT", - "minNotional": 80000.0, - "maxNotional": 200000.0, + "minNotional": 2000000.0, + "maxNotional": 5000000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "5", + "initialLeverage": "10", + "notionalCap": "5000000", + "notionalFloor": "2000000", + "maintMarginRatio": "0.05", + "cum": "56100.0" + } + }, + { + "tier": 6.0, + "symbol": "MON/USDT:USDT", + "currency": "USDT", + "minNotional": 5000000.0, + "maxNotional": 7500000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "6", + "initialLeverage": "5", + "notionalCap": "7500000", + "notionalFloor": "5000000", + "maintMarginRatio": "0.1", + "cum": "306100.0" + } + }, + { + "tier": 7.0, + "symbol": "MON/USDT:USDT", + "currency": "USDT", + "minNotional": 7500000.0, + "maxNotional": 10000000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "7", + "initialLeverage": "4", + "notionalCap": "10000000", + "notionalFloor": "7500000", + "maintMarginRatio": "0.125", + "cum": "493600.0" + } + }, + { + "tier": 8.0, + "symbol": "MON/USDT:USDT", + "currency": "USDT", + "minNotional": 10000000.0, + "maxNotional": 12500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "8", + "initialLeverage": "2", + "notionalCap": "12500000", + "notionalFloor": "10000000", + "maintMarginRatio": "0.25", + "cum": "1743600.0" + } + }, + { + "tier": 9.0, + "symbol": "MON/USDT:USDT", + "currency": "USDT", + "minNotional": 12500000.0, + "maxNotional": 15000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "5", + "bracket": "9", "initialLeverage": "1", - "notionalCap": "200000", - "notionalFloor": "80000", + "notionalCap": "15000000", + "notionalFloor": "12500000", "maintMarginRatio": "0.5", - "cum": "23035.0" + "cum": "4868600.0" } } ], @@ -56263,13 +56585,13 @@ "symbol": "MORPHO/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -56279,7 +56601,7 @@ "tier": 9.0, "symbol": "MORPHO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -56287,9 +56609,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -56306,7 +56628,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -56435,13 +56757,13 @@ "symbol": "MOVE/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -56451,7 +56773,7 @@ "tier": 9.0, "symbol": "MOVE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -56459,9 +56781,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -56478,7 +56800,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -56573,13 +56895,13 @@ "symbol": "MOVR/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -56589,7 +56911,7 @@ "tier": 7.0, "symbol": "MOVR/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -56597,9 +56919,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -56616,7 +56938,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -56711,13 +57033,13 @@ "symbol": "MTL/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -56727,7 +57049,7 @@ "tier": 7.0, "symbol": "MTL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -56735,9 +57057,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -56754,7 +57076,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -56849,13 +57171,13 @@ "symbol": "MUBARAK/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -56865,7 +57187,7 @@ "tier": 7.0, "symbol": "MUBARAK/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -56873,9 +57195,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -56892,7 +57214,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -57660,13 +57982,13 @@ "symbol": "NEIRO/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -57676,7 +57998,7 @@ "tier": 9.0, "symbol": "NEIRO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -57684,9 +58006,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -57703,7 +58025,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -58091,13 +58413,13 @@ "symbol": "NEO/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -58107,7 +58429,7 @@ "tier": 9.0, "symbol": "NEO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -58115,9 +58437,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -58134,7 +58456,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -58246,13 +58568,13 @@ "symbol": "NEWT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -58262,7 +58584,7 @@ "tier": 8.0, "symbol": "NEWT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -58270,9 +58592,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -58289,7 +58611,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -58384,13 +58706,13 @@ "symbol": "NFP/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -58400,7 +58722,7 @@ "tier": 7.0, "symbol": "NFP/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -58408,9 +58730,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -58427,7 +58749,145 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" + } + } + ], + "NIGHT/USDT:USDT": [ + { + "tier": 1.0, + "symbol": "NIGHT/USDT:USDT", + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "NIGHT/USDT:USDT", + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "10000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "symbol": "NIGHT/USDT:USDT", + "currency": "USDT", + "minNotional": 10000.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "20000", + "notionalFloor": "10000", + "maintMarginRatio": "0.05", + "cum": "300.0" + } + }, + { + "tier": 4.0, + "symbol": "NIGHT/USDT:USDT", + "currency": "USDT", + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1300.0" + } + }, + { + "tier": 5.0, + "symbol": "NIGHT/USDT:USDT", + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2550.0" + } + }, + { + "tier": 6.0, + "symbol": "NIGHT/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "6", + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12975.0" + } + }, + { + "tier": 7.0, + "symbol": "NIGHT/USDT:USDT", + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 7500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "7", + "initialLeverage": "2", + "notionalCap": "7500000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "54625.0" + } + }, + { + "tier": 8.0, + "symbol": "NIGHT/USDT:USDT", + "currency": "USDT", + "minNotional": 7500000.0, + "maxNotional": 12500000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "8", + "initialLeverage": "1", + "notionalCap": "12500000", + "notionalFloor": "7500000", + "maintMarginRatio": "0.5", + "cum": "1929625.0" } } ], @@ -58539,13 +58999,13 @@ "symbol": "NIL/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -58555,7 +59015,7 @@ "tier": 8.0, "symbol": "NIL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -58563,9 +59023,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -58582,7 +59042,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -59038,13 +59498,13 @@ "symbol": "NOM/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -59054,7 +59514,7 @@ "tier": 9.0, "symbol": "NOM/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -59062,9 +59522,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -59081,7 +59541,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -59210,13 +59670,13 @@ "symbol": "NOT/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -59226,7 +59686,7 @@ "tier": 9.0, "symbol": "NOT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -59234,9 +59694,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -59253,7 +59713,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -59348,13 +59808,13 @@ "symbol": "NTRN/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -59364,7 +59824,7 @@ "tier": 7.0, "symbol": "NTRN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -59372,9 +59832,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -59391,7 +59851,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -59675,13 +60135,13 @@ "symbol": "NXPC/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -59691,7 +60151,7 @@ "tier": 9.0, "symbol": "NXPC/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -59699,9 +60159,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -59718,7 +60178,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -59728,15 +60188,15 @@ "symbol": "OBOL/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "50", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -59744,55 +60204,21 @@ "tier": 2.0, "symbol": "OBOL/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "50.0" - } - }, - { - "tier": 3.0, - "symbol": "OBOL/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "300.0" - } - }, - { - "tier": 4.0, - "symbol": "OBOL/USDT:USDT", - "currency": "USDT", - "minNotional": 20000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "20000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1300.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "OBOL/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -59800,63 +60226,63 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "250000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2550.0" + "cum": "1750.0" + } + }, + { + "tier": 4.0, + "symbol": "OBOL/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "4", + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12175.0" + } + }, + { + "tier": 5.0, + "symbol": "OBOL/USDT:USDT", + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 800000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "5", + "initialLeverage": "2", + "notionalCap": "800000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "53825.0" } }, { "tier": 6.0, "symbol": "OBOL/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "6", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "12975.0" - } - }, - { - "tier": 7.0, - "symbol": "OBOL/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "7", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "387825.0" - } - }, - { - "tier": 8.0, - "symbol": "OBOL/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 800000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "1000000", + "notionalFloor": "800000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "253825.0" } } ], @@ -60055,13 +60481,13 @@ "symbol": "OG/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 500000.0, + "maxNotional": 400000.0, "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { "bracket": "6", "initialLeverage": "4", - "notionalCap": "500000", + "notionalCap": "400000", "notionalFloor": "250000", "maintMarginRatio": "0.125", "cum": "13825.0" @@ -60071,24 +60497,24 @@ "tier": 7.0, "symbol": "OG/USDT:USDT", "currency": "USDT", - "minNotional": 500000.0, - "maxNotional": 4500000.0, + "minNotional": 400000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "500000", + "notionalCap": "500000", + "notionalFloor": "400000", "maintMarginRatio": "0.1667", - "cum": "34675.0" + "cum": "30505.0" } }, { "tier": 8.0, "symbol": "OG/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -60096,9 +60522,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "409525.0" + "cum": "72155.0" } }, { @@ -60115,7 +60541,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284525.0" + "cum": "1947155.0" } } ], @@ -60210,13 +60636,13 @@ "symbol": "OGN/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -60226,7 +60652,7 @@ "tier": 7.0, "symbol": "OGN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -60234,9 +60660,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -60253,7 +60679,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -60348,13 +60774,13 @@ "symbol": "OL/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -60364,7 +60790,7 @@ "tier": 7.0, "symbol": "OL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -60372,9 +60798,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -60391,7 +60817,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -60520,13 +60946,13 @@ "symbol": "OM/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -60536,7 +60962,7 @@ "tier": 9.0, "symbol": "OM/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -60544,9 +60970,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -60563,7 +60989,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -60951,13 +61377,13 @@ "symbol": "ON/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 1000000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "1000000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -60967,7 +61393,7 @@ "tier": 7.0, "symbol": "ON/USDT:USDT", "currency": "USDT", - "minNotional": 1000000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -60975,9 +61401,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "1000000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "96275.0" + "cum": "54625.0" } }, { @@ -60994,7 +61420,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "1929625.0" } } ], @@ -61295,13 +61721,13 @@ "symbol": "ONE/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -61311,7 +61737,7 @@ "tier": 8.0, "symbol": "ONE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -61319,9 +61745,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -61338,7 +61764,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -61433,13 +61859,13 @@ "symbol": "ONG/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -61449,7 +61875,7 @@ "tier": 7.0, "symbol": "ONG/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -61457,9 +61883,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -61476,7 +61902,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -61605,13 +62031,13 @@ "symbol": "ONT/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -61621,7 +62047,7 @@ "tier": 9.0, "symbol": "ONT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -61629,9 +62055,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -61648,7 +62074,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -61949,13 +62375,13 @@ "symbol": "OPEN/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -61965,7 +62391,7 @@ "tier": 9.0, "symbol": "OPEN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -61973,9 +62399,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -61992,7 +62418,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -62259,13 +62685,13 @@ "symbol": "ORCA/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -62275,7 +62701,7 @@ "tier": 8.0, "symbol": "ORCA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -62283,9 +62709,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -62302,7 +62728,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -62330,15 +62756,15 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", - "cum": "25.0" + "maintMarginRatio": "0.025", + "cum": "50.0" } }, { @@ -62346,105 +62772,88 @@ "symbol": "ORDER/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "300.0" } }, { "tier": 4.0, "symbol": "ORDER/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1300.0" } }, { "tier": 5.0, "symbol": "ORDER/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2550.0" } }, { "tier": 6.0, "symbol": "ORDER/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12975.0" } }, { "tier": 7.0, "symbol": "ORDER/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" - } - }, - { - "tier": 8.0, - "symbol": "ORDER/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "8", + "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "54625.0" } }, { - "tier": 9.0, + "tier": 8.0, "symbol": "ORDER/USDT:USDT", "currency": "USDT", "minNotional": 7500000.0, @@ -62452,12 +62861,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1929625.0" } } ], @@ -62758,13 +63167,13 @@ "symbol": "ORDI/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -62774,7 +63183,7 @@ "tier": 9.0, "symbol": "ORDI/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -62782,9 +63191,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -62801,7 +63210,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -62896,13 +63305,13 @@ "symbol": "OXT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -62912,7 +63321,7 @@ "tier": 7.0, "symbol": "OXT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -62920,9 +63329,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -62939,7 +63348,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -63034,13 +63443,13 @@ "symbol": "PARTI/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -63050,7 +63459,7 @@ "tier": 7.0, "symbol": "PARTI/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -63058,9 +63467,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -63077,7 +63486,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -63087,13 +63496,13 @@ "symbol": "PAXG/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 20000.0, + "maxNotional": 5000.0, "maintenanceMarginRate": 0.01, "maxLeverage": 75.0, "info": { "bracket": "1", "initialLeverage": "75", - "notionalCap": "20000", + "notionalCap": "5000", "notionalFloor": "0", "maintMarginRatio": "0.01", "cum": "0.0" @@ -63103,136 +63512,170 @@ "tier": 2.0, "symbol": "PAXG/USDT:USDT", "currency": "USDT", - "minNotional": 20000.0, - "maxNotional": 200000.0, + "minNotional": 5000.0, + "maxNotional": 10000.0, "maintenanceMarginRate": 0.015, "maxLeverage": 50.0, "info": { "bracket": "2", "initialLeverage": "50", - "notionalCap": "200000", - "notionalFloor": "20000", + "notionalCap": "10000", + "notionalFloor": "5000", "maintMarginRatio": "0.015", - "cum": "100.0" + "cum": "25.0" } }, { "tier": 3.0, "symbol": "PAXG/USDT:USDT", "currency": "USDT", - "minNotional": 200000.0, - "maxNotional": 1000000.0, + "minNotional": 10000.0, + "maxNotional": 50000.0, "maintenanceMarginRate": 0.02, "maxLeverage": 25.0, "info": { "bracket": "3", "initialLeverage": "25", - "notionalCap": "1000000", - "notionalFloor": "200000", + "notionalCap": "50000", + "notionalFloor": "10000", "maintMarginRatio": "0.02", - "cum": "1100.0" + "cum": "75.0" } }, { "tier": 4.0, "symbol": "PAXG/USDT:USDT", "currency": "USDT", - "minNotional": 1000000.0, - "maxNotional": 2000000.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, "maintenanceMarginRate": 0.025, "maxLeverage": 20.0, "info": { "bracket": "4", "initialLeverage": "20", - "notionalCap": "2000000", - "notionalFloor": "1000000", + "notionalCap": "100000", + "notionalFloor": "50000", "maintMarginRatio": "0.025", - "cum": "6100.0" + "cum": "325.0" } }, { "tier": 5.0, "symbol": "PAXG/USDT:USDT", "currency": "USDT", - "minNotional": 2000000.0, - "maxNotional": 5000000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 100000.0, + "maxNotional": 175000.0, + "maintenanceMarginRate": 0.03333, + "maxLeverage": 15.0, "info": { "bracket": "5", - "initialLeverage": "10", - "notionalCap": "5000000", - "notionalFloor": "2000000", - "maintMarginRatio": "0.05", - "cum": "56100.0" + "initialLeverage": "15", + "notionalCap": "175000", + "notionalFloor": "100000", + "maintMarginRatio": "0.03333", + "cum": "1158.0" } }, { "tier": 6.0, "symbol": "PAXG/USDT:USDT", "currency": "USDT", - "minNotional": 5000000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 175000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "6", - "initialLeverage": "5", - "notionalCap": "7500000", - "notionalFloor": "5000000", - "maintMarginRatio": "0.1", - "cum": "306100.0" + "initialLeverage": "10", + "notionalCap": "500000", + "notionalFloor": "175000", + "maintMarginRatio": "0.05", + "cum": "4075.25" } }, { "tier": 7.0, "symbol": "PAXG/USDT:USDT", "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 10000000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 500000.0, + "maxNotional": 750000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "7", - "initialLeverage": "4", - "notionalCap": "10000000", - "notionalFloor": "7500000", - "maintMarginRatio": "0.125", - "cum": "493600.0" + "initialLeverage": "5", + "notionalCap": "750000", + "notionalFloor": "500000", + "maintMarginRatio": "0.1", + "cum": "29075.25" } }, { "tier": 8.0, "symbol": "PAXG/USDT:USDT", "currency": "USDT", - "minNotional": 10000000.0, - "maxNotional": 12500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, + "minNotional": 750000.0, + "maxNotional": 1500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "8", - "initialLeverage": "2", - "notionalCap": "12500000", - "notionalFloor": "10000000", - "maintMarginRatio": "0.25", - "cum": "1743600.0" + "initialLeverage": "4", + "notionalCap": "1500000", + "notionalFloor": "750000", + "maintMarginRatio": "0.125", + "cum": "47825.25" } }, { "tier": 9.0, "symbol": "PAXG/USDT:USDT", "currency": "USDT", - "minNotional": 12500000.0, - "maxNotional": 15000000.0, + "minNotional": 1500000.0, + "maxNotional": 4500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "9", + "initialLeverage": "3", + "notionalCap": "4500000", + "notionalFloor": "1500000", + "maintMarginRatio": "0.1667", + "cum": "110375.25" + } + }, + { + "tier": 10.0, + "symbol": "PAXG/USDT:USDT", + "currency": "USDT", + "minNotional": 4500000.0, + "maxNotional": 7500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "10", + "initialLeverage": "2", + "notionalCap": "7500000", + "notionalFloor": "4500000", + "maintMarginRatio": "0.25", + "cum": "485225.25" + } + }, + { + "tier": 11.0, + "symbol": "PAXG/USDT:USDT", + "currency": "USDT", + "minNotional": 7500000.0, + "maxNotional": 12500000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "11", "initialLeverage": "1", - "notionalCap": "15000000", - "notionalFloor": "12500000", + "notionalCap": "12500000", + "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "4868600.0" + "cum": "2360225.25" } } ], @@ -63877,13 +64320,13 @@ "symbol": "PEOPLE/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17377.5" @@ -63893,7 +64336,7 @@ "tier": 9.0, "symbol": "PEOPLE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -63901,9 +64344,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "392227.5" + "cum": "100677.5" } }, { @@ -63920,7 +64363,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267227.5" + "cum": "1975677.5" } } ], @@ -64136,13 +64579,13 @@ "symbol": "PHA/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -64152,7 +64595,7 @@ "tier": 8.0, "symbol": "PHA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -64160,9 +64603,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -64179,7 +64622,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -64274,13 +64717,13 @@ "symbol": "PHB/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -64290,7 +64733,7 @@ "tier": 7.0, "symbol": "PHB/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -64298,9 +64741,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -64317,7 +64760,145 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" + } + } + ], + "PIEVERSE/USDT:USDT": [ + { + "tier": 1.0, + "symbol": "PIEVERSE/USDT:USDT", + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 40.0, + "info": { + "bracket": "1", + "initialLeverage": "40", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.02", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "PIEVERSE/USDT:USDT", + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "10000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "25.0" + } + }, + { + "tier": 3.0, + "symbol": "PIEVERSE/USDT:USDT", + "currency": "USDT", + "minNotional": 10000.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "20000", + "notionalFloor": "10000", + "maintMarginRatio": "0.05", + "cum": "275.0" + } + }, + { + "tier": 4.0, + "symbol": "PIEVERSE/USDT:USDT", + "currency": "USDT", + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1275.0" + } + }, + { + "tier": 5.0, + "symbol": "PIEVERSE/USDT:USDT", + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2525.0" + } + }, + { + "tier": 6.0, + "symbol": "PIEVERSE/USDT:USDT", + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "6", + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6695.0" + } + }, + { + "tier": 7.0, + "symbol": "PIEVERSE/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "7", + "initialLeverage": "2", + "notionalCap": "2500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "27520.0" + } + }, + { + "tier": 8.0, + "symbol": "PIEVERSE/USDT:USDT", + "currency": "USDT", + "minNotional": 2500000.0, + "maxNotional": 5000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "8", + "initialLeverage": "1", + "notionalCap": "5000000", + "notionalFloor": "2500000", + "maintMarginRatio": "0.5", + "cum": "652520.0" } } ], @@ -64412,13 +64993,13 @@ "symbol": "PIPPIN/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -64428,7 +65009,7 @@ "tier": 7.0, "symbol": "PIPPIN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -64436,9 +65017,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -64455,7 +65036,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -64567,13 +65148,13 @@ "symbol": "PIXEL/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -64583,7 +65164,7 @@ "tier": 8.0, "symbol": "PIXEL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -64591,9 +65172,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -64610,7 +65191,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -64705,13 +65286,13 @@ "symbol": "PLAY/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -64721,7 +65302,7 @@ "tier": 7.0, "symbol": "PLAY/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -64729,9 +65310,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -64748,7 +65329,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -64877,13 +65458,13 @@ "symbol": "PLUME/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -64893,7 +65474,7 @@ "tier": 9.0, "symbol": "PLUME/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -64901,9 +65482,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -64920,7 +65501,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -65565,13 +66146,13 @@ "symbol": "POLYX/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -65581,7 +66162,7 @@ "tier": 8.0, "symbol": "POLYX/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -65589,9 +66170,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -65608,7 +66189,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -65635,13 +66216,13 @@ "symbol": "PONKE/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 60000.0, + "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { "bracket": "2", "initialLeverage": "5", - "notionalCap": "60000", + "notionalCap": "50000", "notionalFloor": "10000", "maintMarginRatio": "0.1", "cum": "500.0" @@ -65651,7 +66232,7 @@ "tier": 3.0, "symbol": "PONKE/USDT:USDT", "currency": "USDT", - "minNotional": 60000.0, + "minNotional": 50000.0, "maxNotional": 70000.0, "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, @@ -65659,9 +66240,9 @@ "bracket": "3", "initialLeverage": "4", "notionalCap": "70000", - "notionalFloor": "60000", + "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2000.0" + "cum": "1750.0" } }, { @@ -65669,50 +66250,50 @@ "symbol": "PONKE/USDT:USDT", "currency": "USDT", "minNotional": 70000.0, - "maxNotional": 700000.0, + "maxNotional": 250000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "4", "initialLeverage": "3", - "notionalCap": "700000", + "notionalCap": "250000", "notionalFloor": "70000", "maintMarginRatio": "0.1667", - "cum": "4919.0" + "cum": "4669.0" } }, { "tier": 5.0, "symbol": "PONKE/USDT:USDT", "currency": "USDT", - "minNotional": 700000.0, - "maxNotional": 2500000.0, + "minNotional": 250000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { "bracket": "5", "initialLeverage": "2", - "notionalCap": "2500000", - "notionalFloor": "700000", + "notionalCap": "500000", + "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "63229.0" + "cum": "25494.0" } }, { "tier": 6.0, "symbol": "PONKE/USDT:USDT", "currency": "USDT", - "minNotional": 2500000.0, - "maxNotional": 5000000.0, + "minNotional": 500000.0, + "maxNotional": 800000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { "bracket": "6", "initialLeverage": "1", - "notionalCap": "5000000", - "notionalFloor": "2500000", + "notionalCap": "800000", + "notionalFloor": "500000", "maintMarginRatio": "0.5", - "cum": "688229.0" + "cum": "150494.0" } } ], @@ -65723,178 +66304,6 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.01, - "maxLeverage": 75.0, - "info": { - "bracket": "1", - "initialLeverage": "75", - "notionalCap": "5000", - "notionalFloor": "0", - "maintMarginRatio": "0.01", - "cum": "0.0" - } - }, - { - "tier": 2.0, - "symbol": "POPCAT/USDT:USDT", - "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, - "info": { - "bracket": "2", - "initialLeverage": "50", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.015", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "POPCAT/USDT:USDT", - "currency": "USDT", - "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, - "info": { - "bracket": "3", - "initialLeverage": "25", - "notionalCap": "25000", - "notionalFloor": "10000", - "maintMarginRatio": "0.02", - "cum": "75.0" - } - }, - { - "tier": 4.0, - "symbol": "POPCAT/USDT:USDT", - "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 50000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "4", - "initialLeverage": "20", - "notionalCap": "50000", - "notionalFloor": "25000", - "maintMarginRatio": "0.025", - "cum": "200.0" - } - }, - { - "tier": 5.0, - "symbol": "POPCAT/USDT:USDT", - "currency": "USDT", - "minNotional": 50000.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "5", - "initialLeverage": "10", - "notionalCap": "125000", - "notionalFloor": "50000", - "maintMarginRatio": "0.05", - "cum": "1450.0" - } - }, - { - "tier": 6.0, - "symbol": "POPCAT/USDT:USDT", - "currency": "USDT", - "minNotional": 125000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, - "info": { - "bracket": "6", - "initialLeverage": "5", - "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.1", - "cum": "7700.0" - } - }, - { - "tier": 7.0, - "symbol": "POPCAT/USDT:USDT", - "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 500000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, - "info": { - "bracket": "7", - "initialLeverage": "4", - "notionalCap": "500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.125", - "cum": "13950.0" - } - }, - { - "tier": 8.0, - "symbol": "POPCAT/USDT:USDT", - "currency": "USDT", - "minNotional": 500000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "8", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "500000", - "maintMarginRatio": "0.1667", - "cum": "34800.0" - } - }, - { - "tier": 9.0, - "symbol": "POPCAT/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "9", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "409650.0" - } - }, - { - "tier": 10.0, - "symbol": "POPCAT/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, - "maintenanceMarginRate": 0.5, - "maxLeverage": 1.0, - "info": { - "bracket": "10", - "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", - "maintMarginRatio": "0.5", - "cum": "2284650.0" - } - } - ], - "PORT3/USDT:USDT": [ - { - "tier": 1.0, - "symbol": "PORT3/USDT:USDT", - "currency": "USDT", - "minNotional": 0.0, - "maxNotional": 5000.0, "maintenanceMarginRate": 0.015, "maxLeverage": 50.0, "info": { @@ -65908,7 +66317,7 @@ }, { "tier": 2.0, - "symbol": "PORT3/USDT:USDT", + "symbol": "POPCAT/USDT:USDT", "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, @@ -65925,7 +66334,7 @@ }, { "tier": 3.0, - "symbol": "PORT3/USDT:USDT", + "symbol": "POPCAT/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, "maxNotional": 20000.0, @@ -65942,7 +66351,7 @@ }, { "tier": 4.0, - "symbol": "PORT3/USDT:USDT", + "symbol": "POPCAT/USDT:USDT", "currency": "USDT", "minNotional": 20000.0, "maxNotional": 50000.0, @@ -65959,7 +66368,7 @@ }, { "tier": 5.0, - "symbol": "PORT3/USDT:USDT", + "symbol": "POPCAT/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, "maxNotional": 250000.0, @@ -65976,16 +66385,16 @@ }, { "tier": 6.0, - "symbol": "PORT3/USDT:USDT", + "symbol": "POPCAT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -65993,9 +66402,9 @@ }, { "tier": 7.0, - "symbol": "PORT3/USDT:USDT", + "symbol": "POPCAT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -66003,14 +66412,14 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { "tier": 8.0, - "symbol": "PORT3/USDT:USDT", + "symbol": "POPCAT/USDT:USDT", "currency": "USDT", "minNotional": 7500000.0, "maxNotional": 12500000.0, @@ -66022,7 +66431,128 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" + } + } + ], + "PORT3/USDT:USDT": [ + { + "tier": 1.0, + "symbol": "PORT3/USDT:USDT", + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 1000.0, + "maintenanceMarginRate": 0.03, + "maxLeverage": 20.0, + "info": { + "bracket": "1", + "initialLeverage": "20", + "notionalCap": "1000", + "notionalFloor": "0", + "maintMarginRatio": "0.03", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "PORT3/USDT:USDT", + "currency": "USDT", + "minNotional": 1000.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "2", + "initialLeverage": "10", + "notionalCap": "10000", + "notionalFloor": "1000", + "maintMarginRatio": "0.05", + "cum": "20.0" + } + }, + { + "tier": 3.0, + "symbol": "PORT3/USDT:USDT", + "currency": "USDT", + "minNotional": 10000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "3", + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "10000", + "maintMarginRatio": "0.1", + "cum": "520.0" + } + }, + { + "tier": 4.0, + "symbol": "PORT3/USDT:USDT", + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "4", + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "1770.0" + } + }, + { + "tier": 5.0, + "symbol": "PORT3/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "5", + "initialLeverage": "3", + "notionalCap": "1000000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12195.0" + } + }, + { + "tier": 6.0, + "symbol": "PORT3/USDT:USDT", + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.25", + "cum": "95495.0" + } + }, + { + "tier": 7.0, + "symbol": "PORT3/USDT:USDT", + "currency": "USDT", + "minNotional": 2000000.0, + "maxNotional": 5000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "5000000", + "notionalFloor": "2000000", + "maintMarginRatio": "0.5", + "cum": "595495.0" } } ], @@ -66164,6 +66694,127 @@ } } ], + "POWER/USDT:USDT": [ + { + "tier": 1.0, + "symbol": "POWER/USDT:USDT", + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "1", + "initialLeverage": "20", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.025", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "POWER/USDT:USDT", + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "2", + "initialLeverage": "10", + "notionalCap": "10000", + "notionalFloor": "5000", + "maintMarginRatio": "0.05", + "cum": "125.0" + } + }, + { + "tier": 3.0, + "symbol": "POWER/USDT:USDT", + "currency": "USDT", + "minNotional": 10000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "3", + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "10000", + "maintMarginRatio": "0.1", + "cum": "625.0" + } + }, + { + "tier": 4.0, + "symbol": "POWER/USDT:USDT", + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "4", + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "1875.0" + } + }, + { + "tier": 5.0, + "symbol": "POWER/USDT:USDT", + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "5", + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6045.0" + } + }, + { + "tier": 6.0, + "symbol": "POWER/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "26870.0" + } + }, + { + "tier": 7.0, + "symbol": "POWER/USDT:USDT", + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 800000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "800000", + "notionalFloor": "500000", + "maintMarginRatio": "0.5", + "cum": "151870.0" + } + } + ], "POWR/USDT:USDT": [ { "tier": 1.0, @@ -66255,13 +66906,13 @@ "symbol": "POWR/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -66271,7 +66922,7 @@ "tier": 7.0, "symbol": "POWR/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -66279,9 +66930,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -66298,7 +66949,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -66410,13 +67061,13 @@ "symbol": "PROM/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -66426,7 +67077,7 @@ "tier": 8.0, "symbol": "PROM/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -66434,9 +67085,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -66453,7 +67104,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -66464,14 +67115,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 40.0, "info": { "bracket": "1", - "initialLeverage": "50", + "initialLeverage": "40", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.02", "cum": "0.0" } }, @@ -66481,14 +67132,14 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.025", "cum": "25.0" } }, @@ -66497,67 +67148,67 @@ "symbol": "PROMPT/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "275.0" } }, { "tier": 4.0, "symbol": "PROMPT/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1275.0" } }, { "tier": 5.0, "symbol": "PROMPT/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2525.0" } }, { "tier": 6.0, "symbol": "PROMPT/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, + "minNotional": 100000.0, "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", + "initialLeverage": "3", "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6695.0" } }, { @@ -66565,50 +67216,33 @@ "symbol": "PROMPT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", + "initialLeverage": "2", + "notionalCap": "2500000", "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" + "maintMarginRatio": "0.25", + "cum": "27520.0" } }, { "tier": 8.0, "symbol": "PROMPT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "8", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "392225.0" - } - }, - { - "tier": 9.0, - "symbol": "PROMPT/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "652520.0" } } ], @@ -66808,14 +67442,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 40.0, "info": { "bracket": "1", - "initialLeverage": "50", + "initialLeverage": "40", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.02", "cum": "0.0" } }, @@ -66825,14 +67459,14 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.025", "cum": "25.0" } }, @@ -66841,67 +67475,67 @@ "symbol": "PTB/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "275.0" } }, { "tier": 4.0, "symbol": "PTB/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1275.0" } }, { "tier": 5.0, "symbol": "PTB/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2525.0" } }, { "tier": 6.0, "symbol": "PTB/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, + "minNotional": 100000.0, "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", + "initialLeverage": "3", "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6695.0" } }, { @@ -66909,50 +67543,33 @@ "symbol": "PTB/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", + "initialLeverage": "2", + "notionalCap": "2500000", "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" + "maintMarginRatio": "0.25", + "cum": "27520.0" } }, { "tier": 8.0, "symbol": "PTB/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "8", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "392225.0" - } - }, - { - "tier": 9.0, - "symbol": "PTB/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "652520.0" } } ], @@ -67047,13 +67664,13 @@ "symbol": "PUFFER/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -67063,7 +67680,7 @@ "tier": 7.0, "symbol": "PUFFER/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -67071,9 +67688,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -67090,7 +67707,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -67255,15 +67872,15 @@ "symbol": "PUMPBTC/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 40.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "40", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -67271,55 +67888,21 @@ "tier": 2.0, "symbol": "PUMPBTC/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "PUMPBTC/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "PUMPBTC/USDT:USDT", - "currency": "USDT", - "minNotional": 20000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "20000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1275.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "PUMPBTC/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -67327,16 +67910,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2525.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "PUMPBTC/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -67344,16 +67927,16 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6695.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "PUMPBTC/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, @@ -67361,16 +67944,16 @@ "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", "notionalCap": "2500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27520.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "PUMPBTC/USDT:USDT", "currency": "USDT", "minNotional": 2500000.0, @@ -67378,12 +67961,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", "notionalCap": "5000000", "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "652520.0" + "cum": "651745.0" } } ], @@ -67478,13 +68061,13 @@ "symbol": "PUNDIX/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 1000000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "1000000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -67494,7 +68077,7 @@ "tier": 7.0, "symbol": "PUNDIX/USDT:USDT", "currency": "USDT", - "minNotional": 1000000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -67502,9 +68085,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "1000000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "96275.0" + "cum": "54625.0" } }, { @@ -67521,7 +68104,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "1929625.0" } } ], @@ -67721,14 +68304,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 40.0, "info": { "bracket": "1", - "initialLeverage": "50", + "initialLeverage": "40", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.02", "cum": "0.0" } }, @@ -67738,14 +68321,14 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.025", "cum": "25.0" } }, @@ -67754,67 +68337,67 @@ "symbol": "Q/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "275.0" } }, { "tier": 4.0, "symbol": "Q/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1275.0" } }, { "tier": 5.0, "symbol": "Q/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2525.0" } }, { "tier": 6.0, "symbol": "Q/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, + "minNotional": 100000.0, "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", + "initialLeverage": "3", "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6695.0" } }, { @@ -67822,50 +68405,33 @@ "symbol": "Q/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", + "initialLeverage": "2", + "notionalCap": "2500000", "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" + "maintMarginRatio": "0.25", + "cum": "27520.0" } }, { "tier": 8.0, "symbol": "Q/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "8", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "392225.0" - } - }, - { - "tier": 9.0, - "symbol": "Q/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "652520.0" } } ], @@ -67994,13 +68560,13 @@ "symbol": "QNT/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -68010,7 +68576,7 @@ "tier": 9.0, "symbol": "QNT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -68018,9 +68584,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -68037,7 +68603,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -68166,13 +68732,13 @@ "symbol": "QTUM/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -68182,7 +68748,7 @@ "tier": 9.0, "symbol": "QTUM/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -68190,9 +68756,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -68209,7 +68775,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -68219,15 +68785,15 @@ "symbol": "QUICK/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "25", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -68235,55 +68801,21 @@ "tier": 2.0, "symbol": "QUICK/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "QUICK/USDT:USDT", - "currency": "USDT", - "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "QUICK/USDT:USDT", - "currency": "USDT", "minNotional": 20000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", "notionalFloor": "20000", "maintMarginRatio": "0.1", - "cum": "1275.0" + "cum": "1000.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "QUICK/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -68291,16 +68823,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2525.0" + "cum": "2250.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "QUICK/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -68308,16 +68840,16 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6695.0" + "cum": "6420.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "QUICK/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, @@ -68325,16 +68857,16 @@ "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27520.0" + "cum": "27245.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "QUICK/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, @@ -68342,12 +68874,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", "notionalCap": "800000", "notionalFloor": "500000", "maintMarginRatio": "0.5", - "cum": "152520.0" + "cum": "152245.0" } } ], @@ -68563,13 +69095,13 @@ "symbol": "RARE/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -68579,7 +69111,7 @@ "tier": 7.0, "symbol": "RARE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -68587,9 +69119,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -68606,7 +69138,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -68839,13 +69371,13 @@ "symbol": "RAYSOL/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -68855,7 +69387,7 @@ "tier": 9.0, "symbol": "RAYSOL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -68863,9 +69395,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -68882,7 +69414,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -68977,13 +69509,13 @@ "symbol": "RDNT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -68993,7 +69525,7 @@ "tier": 7.0, "symbol": "RDNT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -69001,9 +69533,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -69020,7 +69552,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -69031,14 +69563,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 40.0, "info": { "bracket": "1", - "initialLeverage": "50", + "initialLeverage": "40", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.02", "cum": "0.0" } }, @@ -69048,14 +69580,14 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.025", "cum": "25.0" } }, @@ -69064,67 +69596,67 @@ "symbol": "RECALL/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "275.0" } }, { "tier": 4.0, "symbol": "RECALL/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1275.0" } }, { "tier": 5.0, "symbol": "RECALL/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2525.0" } }, { "tier": 6.0, "symbol": "RECALL/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, + "minNotional": 100000.0, "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", + "initialLeverage": "3", "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6695.0" } }, { @@ -69132,50 +69664,33 @@ "symbol": "RECALL/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", + "initialLeverage": "2", + "notionalCap": "2500000", "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" + "maintMarginRatio": "0.25", + "cum": "27520.0" } }, { "tier": 8.0, "symbol": "RECALL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "8", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "392225.0" - } - }, - { - "tier": 9.0, - "symbol": "RECALL/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "652520.0" } } ], @@ -69304,13 +69819,13 @@ "symbol": "RED/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -69320,7 +69835,7 @@ "tier": 9.0, "symbol": "RED/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -69328,9 +69843,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -69347,7 +69862,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -69478,15 +69993,15 @@ "symbol": "REI/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "25", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -69494,55 +70009,21 @@ "tier": 2.0, "symbol": "REI/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "REI/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "25000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "REI/USDT:USDT", - "currency": "USDT", - "minNotional": 25000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "25000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1525.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "REI/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -69550,16 +70031,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2775.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "REI/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -69567,46 +70048,46 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6945.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "REI/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 500000.0, + "maxNotional": 2500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", - "notionalCap": "500000", + "notionalCap": "2500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27770.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "REI/USDT:USDT", "currency": "USDT", - "minNotional": 500000.0, - "maxNotional": 800000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "800000", - "notionalFloor": "500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "152770.0" + "cum": "651745.0" } } ], @@ -70011,13 +70492,13 @@ "symbol": "RESOLV/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -70027,7 +70508,7 @@ "tier": 7.0, "symbol": "RESOLV/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -70035,9 +70516,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -70054,7 +70535,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -70149,13 +70630,13 @@ "symbol": "REZ/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -70165,7 +70646,7 @@ "tier": 7.0, "symbol": "REZ/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -70173,9 +70654,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -70192,7 +70673,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -70287,13 +70768,13 @@ "symbol": "RIF/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -70303,7 +70784,7 @@ "tier": 7.0, "symbol": "RIF/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -70311,9 +70792,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -70330,7 +70811,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -70358,15 +70839,15 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", - "cum": "25.0" + "maintMarginRatio": "0.025", + "cum": "50.0" } }, { @@ -70374,105 +70855,88 @@ "symbol": "RIVER/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "300.0" } }, { "tier": 4.0, "symbol": "RIVER/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1300.0" } }, { "tier": 5.0, "symbol": "RIVER/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2550.0" } }, { "tier": 6.0, "symbol": "RIVER/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12975.0" } }, { "tier": 7.0, "symbol": "RIVER/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" - } - }, - { - "tier": 8.0, - "symbol": "RIVER/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "8", + "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "54625.0" } }, { - "tier": 9.0, + "tier": 8.0, "symbol": "RIVER/USDT:USDT", "currency": "USDT", "minNotional": 7500000.0, @@ -70480,12 +70944,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1929625.0" } } ], @@ -70614,13 +71078,13 @@ "symbol": "RLC/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -70630,7 +71094,7 @@ "tier": 9.0, "symbol": "RLC/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -70638,9 +71102,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -70657,7 +71121,128 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" + } + } + ], + "RLS/USDT:USDT": [ + { + "tier": 1.0, + "symbol": "RLS/USDT:USDT", + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "1", + "initialLeverage": "20", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.025", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "RLS/USDT:USDT", + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "2", + "initialLeverage": "10", + "notionalCap": "10000", + "notionalFloor": "5000", + "maintMarginRatio": "0.05", + "cum": "125.0" + } + }, + { + "tier": 3.0, + "symbol": "RLS/USDT:USDT", + "currency": "USDT", + "minNotional": 10000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "3", + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "10000", + "maintMarginRatio": "0.1", + "cum": "625.0" + } + }, + { + "tier": 4.0, + "symbol": "RLS/USDT:USDT", + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "4", + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "1875.0" + } + }, + { + "tier": 5.0, + "symbol": "RLS/USDT:USDT", + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "5", + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6045.0" + } + }, + { + "tier": 6.0, + "symbol": "RLS/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "26870.0" + } + }, + { + "tier": 7.0, + "symbol": "RLS/USDT:USDT", + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 800000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "800000", + "notionalFloor": "500000", + "maintMarginRatio": "0.5", + "cum": "151870.0" } } ], @@ -70786,13 +71371,13 @@ "symbol": "RONIN/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -70802,7 +71387,7 @@ "tier": 9.0, "symbol": "RONIN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -70810,9 +71395,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -70829,7 +71414,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -70958,13 +71543,13 @@ "symbol": "ROSE/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -70974,7 +71559,7 @@ "tier": 9.0, "symbol": "ROSE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -70982,9 +71567,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -71001,7 +71586,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -71113,13 +71698,13 @@ "symbol": "RPL/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -71129,7 +71714,7 @@ "tier": 8.0, "symbol": "RPL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -71137,9 +71722,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -71156,7 +71741,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -71285,13 +71870,13 @@ "symbol": "RSR/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -71301,7 +71886,7 @@ "tier": 9.0, "symbol": "RSR/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -71309,9 +71894,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -71328,7 +71913,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -71457,13 +72042,13 @@ "symbol": "RUNE/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -71473,7 +72058,7 @@ "tier": 9.0, "symbol": "RUNE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -71481,9 +72066,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -71500,7 +72085,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -71629,13 +72214,13 @@ "symbol": "RVN/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -71645,7 +72230,7 @@ "tier": 9.0, "symbol": "RVN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -71653,9 +72238,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -71672,7 +72257,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -71682,15 +72267,15 @@ "symbol": "RVV/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 40.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "40", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -71698,55 +72283,21 @@ "tier": 2.0, "symbol": "RVV/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "RVV/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "RVV/USDT:USDT", - "currency": "USDT", - "minNotional": 20000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "20000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1275.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "RVV/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -71754,16 +72305,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2525.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "RVV/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -71771,16 +72322,16 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6695.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "RVV/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, @@ -71788,16 +72339,16 @@ "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", "notionalCap": "2500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27520.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "RVV/USDT:USDT", "currency": "USDT", "minNotional": 2500000.0, @@ -71805,12 +72356,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", "notionalCap": "5000000", "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "652520.0" + "cum": "651745.0" } } ], @@ -72027,15 +72578,15 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", - "cum": "25.0" + "maintMarginRatio": "0.025", + "cum": "50.0" } }, { @@ -72043,105 +72594,88 @@ "symbol": "SAFE/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "300.0" } }, { "tier": 4.0, "symbol": "SAFE/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1300.0" } }, { "tier": 5.0, "symbol": "SAFE/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2550.0" } }, { "tier": 6.0, "symbol": "SAFE/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12975.0" } }, { "tier": 7.0, "symbol": "SAFE/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" - } - }, - { - "tier": 8.0, - "symbol": "SAFE/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "8", + "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "54625.0" } }, { - "tier": 9.0, + "tier": 8.0, "symbol": "SAFE/USDT:USDT", "currency": "USDT", "minNotional": 7500000.0, @@ -72149,12 +72683,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1929625.0" } } ], @@ -72266,13 +72800,13 @@ "symbol": "SAGA/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -72282,7 +72816,7 @@ "tier": 8.0, "symbol": "SAGA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -72290,9 +72824,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -72309,7 +72843,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -72748,13 +73282,13 @@ "symbol": "SANTOS/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -72764,7 +73298,7 @@ "tier": 7.0, "symbol": "SANTOS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -72772,9 +73306,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -72791,7 +73325,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -72903,13 +73437,13 @@ "symbol": "SAPIEN/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -72919,7 +73453,7 @@ "tier": 8.0, "symbol": "SAPIEN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -72927,9 +73461,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -72946,7 +73480,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -73162,13 +73696,13 @@ "symbol": "SCR/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -73178,7 +73712,7 @@ "tier": 8.0, "symbol": "SCR/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -73186,9 +73720,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -73205,7 +73739,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -73536,6 +74070,144 @@ } } ], + "SENT/USDT:USDT": [ + { + "tier": 1.0, + "symbol": "SENT/USDT:USDT", + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 40.0, + "info": { + "bracket": "1", + "initialLeverage": "40", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.02", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "SENT/USDT:USDT", + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "10000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "25.0" + } + }, + { + "tier": 3.0, + "symbol": "SENT/USDT:USDT", + "currency": "USDT", + "minNotional": 10000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "25000", + "notionalFloor": "10000", + "maintMarginRatio": "0.05", + "cum": "275.0" + } + }, + { + "tier": 4.0, + "symbol": "SENT/USDT:USDT", + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "25000", + "maintMarginRatio": "0.1", + "cum": "1525.0" + } + }, + { + "tier": 5.0, + "symbol": "SENT/USDT:USDT", + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2775.0" + } + }, + { + "tier": 6.0, + "symbol": "SENT/USDT:USDT", + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.167, + "maxLeverage": 3.0, + "info": { + "bracket": "6", + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.167", + "cum": "6975.0" + } + }, + { + "tier": 7.0, + "symbol": "SENT/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "7", + "initialLeverage": "2", + "notionalCap": "2500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "27725.0" + } + }, + { + "tier": 8.0, + "symbol": "SENT/USDT:USDT", + "currency": "USDT", + "minNotional": 2500000.0, + "maxNotional": 5000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "8", + "initialLeverage": "1", + "notionalCap": "5000000", + "notionalFloor": "2500000", + "maintMarginRatio": "0.5", + "cum": "652725.0" + } + } + ], "SFP/USDT:USDT": [ { "tier": 1.0, @@ -73661,13 +74333,13 @@ "symbol": "SFP/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -73677,7 +74349,7 @@ "tier": 9.0, "symbol": "SFP/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -73685,9 +74357,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -73704,7 +74376,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -73799,13 +74471,13 @@ "symbol": "SHELL/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -73815,7 +74487,7 @@ "tier": 7.0, "symbol": "SHELL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -73823,9 +74495,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -73842,7 +74514,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -73971,13 +74643,13 @@ "symbol": "SIGN/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -73987,7 +74659,7 @@ "tier": 9.0, "symbol": "SIGN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -73995,9 +74667,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -74014,7 +74686,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -74109,13 +74781,13 @@ "symbol": "SIREN/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -74125,7 +74797,7 @@ "tier": 7.0, "symbol": "SIREN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -74133,9 +74805,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -74152,7 +74824,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -74162,15 +74834,15 @@ "symbol": "SKATE/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 40.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "40", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -74178,55 +74850,21 @@ "tier": 2.0, "symbol": "SKATE/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "SKATE/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "25000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "SKATE/USDT:USDT", - "currency": "USDT", - "minNotional": 25000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "25000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1525.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "SKATE/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -74234,16 +74872,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2775.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "SKATE/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -74251,46 +74889,46 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6945.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "SKATE/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 2500000.0, + "maxNotional": 800000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", - "notionalCap": "2500000", + "notionalCap": "800000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27770.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "SKATE/USDT:USDT", "currency": "USDT", - "minNotional": 2500000.0, - "maxNotional": 5000000.0, + "minNotional": 800000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "5000000", - "notionalFloor": "2500000", + "notionalCap": "1000000", + "notionalFloor": "800000", "maintMarginRatio": "0.5", - "cum": "652770.0" + "cum": "226745.0" } } ], @@ -74402,13 +75040,13 @@ "symbol": "SKL/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -74418,7 +75056,7 @@ "tier": 8.0, "symbol": "SKL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -74426,9 +75064,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -74445,7 +75083,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -74695,13 +75333,13 @@ "symbol": "SKYAI/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -74711,7 +75349,7 @@ "tier": 7.0, "symbol": "SKYAI/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -74719,9 +75357,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -74738,7 +75376,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -74920,13 +75558,13 @@ "symbol": "SLP/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -74936,7 +75574,7 @@ "tier": 7.0, "symbol": "SLP/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -74944,9 +75582,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -74963,7 +75601,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -75746,13 +76384,13 @@ "symbol": "SOLV/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -75762,7 +76400,7 @@ "tier": 8.0, "symbol": "SOLV/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -75770,9 +76408,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -75789,7 +76427,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -75918,13 +76556,13 @@ "symbol": "SOMI/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -75934,7 +76572,7 @@ "tier": 9.0, "symbol": "SOMI/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -75942,9 +76580,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -75961,7 +76599,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -76076,14 +76714,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.01, - "maxLeverage": 75.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, "info": { "bracket": "1", - "initialLeverage": "75", + "initialLeverage": "50", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.01", + "maintMarginRatio": "0.015", "cum": "0.0" } }, @@ -76093,15 +76731,15 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "50", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.015", - "cum": "25.0" + "maintMarginRatio": "0.025", + "cum": "50.0" } }, { @@ -76109,33 +76747,33 @@ "symbol": "SOON/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "25", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.02", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "300.0" } }, { "tier": 4.0, "symbol": "SOON/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, + "minNotional": 20000.0, "maxNotional": 50000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "20", + "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "25000", - "maintMarginRatio": "0.025", - "cum": "200.0" + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1300.0" } }, { @@ -76143,88 +76781,54 @@ "symbol": "SOON/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "10", - "notionalCap": "125000", + "initialLeverage": "4", + "notionalCap": "250000", "notionalFloor": "50000", - "maintMarginRatio": "0.05", - "cum": "1450.0" + "maintMarginRatio": "0.125", + "cum": "2550.0" } }, { "tier": 6.0, "symbol": "SOON/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "5", - "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.1", - "cum": "7700.0" + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12975.0" } }, { "tier": 7.0, "symbol": "SOON/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 500000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, - "info": { - "bracket": "7", - "initialLeverage": "4", - "notionalCap": "500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.125", - "cum": "13950.0" - } - }, - { - "tier": 8.0, - "symbol": "SOON/USDT:USDT", - "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "8", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "500000", - "maintMarginRatio": "0.1667", - "cum": "34800.0" - } - }, - { - "tier": 9.0, - "symbol": "SOON/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "9", + "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "54625.0" } }, { - "tier": 10.0, + "tier": 8.0, "symbol": "SOON/USDT:USDT", "currency": "USDT", "minNotional": 7500000.0, @@ -76232,12 +76836,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "10", + "bracket": "8", "initialLeverage": "1", "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1929625.0" } } ], @@ -76366,13 +76970,13 @@ "symbol": "SOPH/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -76382,7 +76986,7 @@ "tier": 9.0, "symbol": "SOPH/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -76390,9 +76994,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -76409,7 +77013,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -76521,13 +77125,13 @@ "symbol": "SPELL/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -76537,7 +77141,7 @@ "tier": 8.0, "symbol": "SPELL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -76545,9 +77149,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -76564,7 +77168,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -77037,13 +77641,13 @@ "symbol": "SQD/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -77053,7 +77657,7 @@ "tier": 7.0, "symbol": "SQD/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -77061,9 +77665,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -77080,7 +77684,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -77209,13 +77813,13 @@ "symbol": "SSV/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -77225,7 +77829,7 @@ "tier": 9.0, "symbol": "SSV/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -77233,9 +77837,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -77252,7 +77856,179 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" + } + } + ], + "STABLE/USDT:USDT": [ + { + "tier": 1.0, + "symbol": "STABLE/USDT:USDT", + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.01, + "maxLeverage": 75.0, + "info": { + "bracket": "1", + "initialLeverage": "75", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.01", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "STABLE/USDT:USDT", + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "2", + "initialLeverage": "50", + "notionalCap": "10000", + "notionalFloor": "5000", + "maintMarginRatio": "0.015", + "cum": "25.0" + } + }, + { + "tier": 3.0, + "symbol": "STABLE/USDT:USDT", + "currency": "USDT", + "minNotional": 10000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 25.0, + "info": { + "bracket": "3", + "initialLeverage": "25", + "notionalCap": "25000", + "notionalFloor": "10000", + "maintMarginRatio": "0.02", + "cum": "75.0" + } + }, + { + "tier": 4.0, + "symbol": "STABLE/USDT:USDT", + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "4", + "initialLeverage": "20", + "notionalCap": "50000", + "notionalFloor": "25000", + "maintMarginRatio": "0.025", + "cum": "200.0" + } + }, + { + "tier": 5.0, + "symbol": "STABLE/USDT:USDT", + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 125000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "5", + "initialLeverage": "10", + "notionalCap": "125000", + "notionalFloor": "50000", + "maintMarginRatio": "0.05", + "cum": "1450.0" + } + }, + { + "tier": 6.0, + "symbol": "STABLE/USDT:USDT", + "currency": "USDT", + "minNotional": 125000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "6", + "initialLeverage": "5", + "notionalCap": "250000", + "notionalFloor": "125000", + "maintMarginRatio": "0.1", + "cum": "7700.0" + } + }, + { + "tier": 7.0, + "symbol": "STABLE/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "7", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.125", + "cum": "13950.0" + } + }, + { + "tier": 8.0, + "symbol": "STABLE/USDT:USDT", + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "8", + "initialLeverage": "3", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.1667", + "cum": "34800.0" + } + }, + { + "tier": 9.0, + "symbol": "STABLE/USDT:USDT", + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 7500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "9", + "initialLeverage": "2", + "notionalCap": "7500000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.25", + "cum": "118100.0" + } + }, + { + "tier": 10.0, + "symbol": "STABLE/USDT:USDT", + "currency": "USDT", + "minNotional": 7500000.0, + "maxNotional": 12500000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "10", + "initialLeverage": "1", + "notionalCap": "12500000", + "notionalFloor": "7500000", + "maintMarginRatio": "0.5", + "cum": "1993100.0" } } ], @@ -77280,15 +78056,15 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", - "cum": "25.0" + "maintMarginRatio": "0.025", + "cum": "50.0" } }, { @@ -77296,105 +78072,88 @@ "symbol": "STBL/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "300.0" } }, { "tier": 4.0, "symbol": "STBL/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1300.0" } }, { "tier": 5.0, "symbol": "STBL/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2550.0" } }, { "tier": 6.0, "symbol": "STBL/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12975.0" } }, { "tier": 7.0, "symbol": "STBL/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" - } - }, - { - "tier": 8.0, - "symbol": "STBL/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "8", + "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "54625.0" } }, { - "tier": 9.0, + "tier": 8.0, "symbol": "STBL/USDT:USDT", "currency": "USDT", "minNotional": 7500000.0, @@ -77402,12 +78161,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1929625.0" } } ], @@ -77502,13 +78261,13 @@ "symbol": "STEEM/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -77518,7 +78277,7 @@ "tier": 7.0, "symbol": "STEEM/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -77526,9 +78285,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -77545,7 +78304,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -77657,13 +78416,13 @@ "symbol": "STG/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -77673,7 +78432,7 @@ "tier": 8.0, "symbol": "STG/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -77681,9 +78440,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -77700,7 +78459,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -77882,13 +78641,13 @@ "symbol": "STO/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -77898,7 +78657,7 @@ "tier": 7.0, "symbol": "STO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -77906,9 +78665,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "96275.0" } }, { @@ -77925,7 +78684,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1971275.0" } } ], @@ -78037,13 +78796,13 @@ "symbol": "STORJ/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -78053,7 +78812,7 @@ "tier": 8.0, "symbol": "STORJ/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -78061,9 +78820,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -78080,7 +78839,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -78349,13 +79108,13 @@ "symbol": "STRK/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, + "maxNotional": 50000.0, "maintenanceMarginRate": 0.02, "maxLeverage": 25.0, "info": { "bracket": "3", "initialLeverage": "25", - "notionalCap": "25000", + "notionalCap": "50000", "notionalFloor": "10000", "maintMarginRatio": "0.02", "cum": "75.0" @@ -78365,51 +79124,51 @@ "tier": 4.0, "symbol": "STRK/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 50000.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, "maintenanceMarginRate": 0.025, "maxLeverage": 20.0, "info": { "bracket": "4", "initialLeverage": "20", - "notionalCap": "50000", - "notionalFloor": "25000", + "notionalCap": "100000", + "notionalFloor": "50000", "maintMarginRatio": "0.025", - "cum": "200.0" + "cum": "325.0" } }, { "tier": 5.0, "symbol": "STRK/USDT:USDT", "currency": "USDT", - "minNotional": 50000.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 100000.0, + "maxNotional": 175000.0, + "maintenanceMarginRate": 0.0333, + "maxLeverage": 15.0, "info": { "bracket": "5", - "initialLeverage": "10", - "notionalCap": "125000", - "notionalFloor": "50000", - "maintMarginRatio": "0.05", - "cum": "1450.0" + "initialLeverage": "15", + "notionalCap": "175000", + "notionalFloor": "100000", + "maintMarginRatio": "0.0333", + "cum": "1155.0" } }, { "tier": 6.0, "symbol": "STRK/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, + "minNotional": 175000.0, "maxNotional": 250000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "6", - "initialLeverage": "5", + "initialLeverage": "10", "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.1", - "cum": "7700.0" + "notionalFloor": "175000", + "maintMarginRatio": "0.05", + "cum": "4077.5" } }, { @@ -78417,54 +79176,71 @@ "symbol": "STRK/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 500000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "maxNotional": 750000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "7", - "initialLeverage": "4", - "notionalCap": "500000", + "initialLeverage": "5", + "notionalCap": "750000", "notionalFloor": "250000", - "maintMarginRatio": "0.125", - "cum": "13950.0" + "maintMarginRatio": "0.1", + "cum": "16577.5" } }, { "tier": 8.0, "symbol": "STRK/USDT:USDT", "currency": "USDT", - "minNotional": 500000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, + "minNotional": 750000.0, + "maxNotional": 1500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "8", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "500000", - "maintMarginRatio": "0.1667", - "cum": "34800.0" + "initialLeverage": "4", + "notionalCap": "1500000", + "notionalFloor": "750000", + "maintMarginRatio": "0.125", + "cum": "35327.5" } }, { "tier": 9.0, "symbol": "STRK/USDT:USDT", "currency": "USDT", + "minNotional": 1500000.0, + "maxNotional": 4500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "9", + "initialLeverage": "3", + "notionalCap": "4500000", + "notionalFloor": "1500000", + "maintMarginRatio": "0.1667", + "cum": "97877.5" + } + }, + { + "tier": 10.0, + "symbol": "STRK/USDT:USDT", + "currency": "USDT", "minNotional": 4500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "9", + "bracket": "10", "initialLeverage": "2", "notionalCap": "7500000", "notionalFloor": "4500000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "472727.5" } }, { - "tier": 10.0, + "tier": 11.0, "symbol": "STRK/USDT:USDT", "currency": "USDT", "minNotional": 7500000.0, @@ -78472,12 +79248,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "10", + "bracket": "11", "initialLeverage": "1", "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "2347727.5" } } ], @@ -79071,13 +79847,13 @@ "symbol": "SUN/USDT:USDT", "currency": "USDT", "minNotional": 300000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "300000", "maintMarginRatio": "0.1667", "cum": "21110.0" @@ -79087,7 +79863,7 @@ "tier": 8.0, "symbol": "SUN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -79095,9 +79871,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "395960.0" + "cum": "62760.0" } }, { @@ -79114,7 +79890,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2270960.0" + "cum": "1937760.0" } } ], @@ -79243,13 +80019,13 @@ "symbol": "SUPER/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -79259,7 +80035,7 @@ "tier": 9.0, "symbol": "SUPER/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -79267,9 +80043,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -79286,7 +80062,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -79570,13 +80346,13 @@ "symbol": "SWARMS/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -79586,7 +80362,7 @@ "tier": 7.0, "symbol": "SWARMS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -79594,9 +80370,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -79613,7 +80389,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -79640,13 +80416,13 @@ "symbol": "SWELL/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 60000.0, + "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { "bracket": "2", "initialLeverage": "5", - "notionalCap": "60000", + "notionalCap": "50000", "notionalFloor": "10000", "maintMarginRatio": "0.1", "cum": "500.0" @@ -79656,7 +80432,7 @@ "tier": 3.0, "symbol": "SWELL/USDT:USDT", "currency": "USDT", - "minNotional": 60000.0, + "minNotional": 50000.0, "maxNotional": 70000.0, "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, @@ -79664,9 +80440,9 @@ "bracket": "3", "initialLeverage": "4", "notionalCap": "70000", - "notionalFloor": "60000", + "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2000.0" + "cum": "1750.0" } }, { @@ -79674,50 +80450,50 @@ "symbol": "SWELL/USDT:USDT", "currency": "USDT", "minNotional": 70000.0, - "maxNotional": 700000.0, + "maxNotional": 250000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "4", "initialLeverage": "3", - "notionalCap": "700000", + "notionalCap": "250000", "notionalFloor": "70000", "maintMarginRatio": "0.1667", - "cum": "4919.0" + "cum": "4669.0" } }, { "tier": 5.0, "symbol": "SWELL/USDT:USDT", "currency": "USDT", - "minNotional": 700000.0, - "maxNotional": 2500000.0, + "minNotional": 250000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { "bracket": "5", "initialLeverage": "2", - "notionalCap": "2500000", - "notionalFloor": "700000", + "notionalCap": "500000", + "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "63229.0" + "cum": "25494.0" } }, { "tier": 6.0, "symbol": "SWELL/USDT:USDT", "currency": "USDT", - "minNotional": 2500000.0, - "maxNotional": 5000000.0, + "minNotional": 500000.0, + "maxNotional": 800000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { "bracket": "6", "initialLeverage": "1", - "notionalCap": "5000000", - "notionalFloor": "2500000", + "notionalCap": "800000", + "notionalFloor": "500000", "maintMarginRatio": "0.5", - "cum": "688229.0" + "cum": "150494.0" } } ], @@ -79727,15 +80503,15 @@ "symbol": "SXP/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "50", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -79743,136 +80519,85 @@ "tier": 2.0, "symbol": "SXP/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "minNotional": 10000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "2", - "initialLeverage": "25", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.02", - "cum": "25.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "10000", + "maintMarginRatio": "0.1", + "cum": "500.0" } }, { "tier": 3.0, "symbol": "SXP/USDT:USDT", "currency": "USDT", - "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "minNotional": 50000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", - "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "initialLeverage": "4", + "notionalCap": "200000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "1750.0" } }, { "tier": 4.0, "symbol": "SXP/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.1667", + "cum": "10090.0" } }, { "tier": 5.0, "symbol": "SXP/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 500000.0, + "maxNotional": 800000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "2", + "notionalCap": "800000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "51740.0" } }, { "tier": 6.0, "symbol": "SXP/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, - "info": { - "bracket": "6", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" - } - }, - { - "tier": 7.0, - "symbol": "SXP/USDT:USDT", - "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" - } - }, - { - "tier": 8.0, - "symbol": "SXP/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "8", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "392225.0" - } - }, - { - "tier": 9.0, - "symbol": "SXP/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 800000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "1000000", + "notionalFloor": "800000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "251740.0" } } ], @@ -79967,13 +80692,13 @@ "symbol": "SXT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 500000.0, + "maxNotional": 400000.0, "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { "bracket": "6", "initialLeverage": "4", - "notionalCap": "500000", + "notionalCap": "400000", "notionalFloor": "250000", "maintMarginRatio": "0.125", "cum": "13825.0" @@ -79983,24 +80708,24 @@ "tier": 7.0, "symbol": "SXT/USDT:USDT", "currency": "USDT", - "minNotional": 500000.0, - "maxNotional": 4500000.0, + "minNotional": 400000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "500000", + "notionalCap": "500000", + "notionalFloor": "400000", "maintMarginRatio": "0.1667", - "cum": "34675.0" + "cum": "30505.0" } }, { "tier": 8.0, "symbol": "SXT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -80008,9 +80733,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "409525.0" + "cum": "72155.0" } }, { @@ -80027,7 +80752,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284525.0" + "cum": "1947155.0" } } ], @@ -80122,13 +80847,13 @@ "symbol": "SYN/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -80138,7 +80863,7 @@ "tier": 7.0, "symbol": "SYN/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -80146,9 +80871,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -80165,7 +80890,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -80175,15 +80900,15 @@ "symbol": "SYRUP/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 500.0, - "maintenanceMarginRate": 0.01, - "maxLeverage": 75.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, "info": { "bracket": "1", - "initialLeverage": "75", - "notionalCap": "500", + "initialLeverage": "50", + "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.01", + "maintMarginRatio": "0.015", "cum": "0.0" } }, @@ -80191,38 +80916,21 @@ "tier": 2.0, "symbol": "SYRUP/USDT:USDT", "currency": "USDT", - "minNotional": 500.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, - "info": { - "bracket": "2", - "initialLeverage": "50", - "notionalCap": "5000", - "notionalFloor": "500", - "maintMarginRatio": "0.015", - "cum": "2.5" - } - }, - { - "tier": 3.0, - "symbol": "SYRUP/USDT:USDT", - "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, "maintenanceMarginRate": 0.02, "maxLeverage": 25.0, "info": { - "bracket": "3", + "bracket": "2", "initialLeverage": "25", "notionalCap": "10000", "notionalFloor": "5000", "maintMarginRatio": "0.02", - "cum": "27.5" + "cum": "25.0" } }, { - "tier": 4.0, + "tier": 3.0, "symbol": "SYRUP/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, @@ -80230,16 +80938,16 @@ "maintenanceMarginRate": 0.025, "maxLeverage": 20.0, "info": { - "bracket": "4", + "bracket": "3", "initialLeverage": "20", "notionalCap": "25000", "notionalFloor": "10000", "maintMarginRatio": "0.025", - "cum": "77.5" + "cum": "75.0" } }, { - "tier": 5.0, + "tier": 4.0, "symbol": "SYRUP/USDT:USDT", "currency": "USDT", "minNotional": 25000.0, @@ -80247,16 +80955,16 @@ "maintenanceMarginRate": 0.05, "maxLeverage": 10.0, "info": { - "bracket": "5", + "bracket": "4", "initialLeverage": "10", "notionalCap": "62500", "notionalFloor": "25000", "maintMarginRatio": "0.05", - "cum": "702.5" + "cum": "700.0" } }, { - "tier": 6.0, + "tier": 5.0, "symbol": "SYRUP/USDT:USDT", "currency": "USDT", "minNotional": 62500.0, @@ -80264,16 +80972,16 @@ "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "6", + "bracket": "5", "initialLeverage": "5", "notionalCap": "125000", "notionalFloor": "62500", "maintMarginRatio": "0.1", - "cum": "3827.5" + "cum": "3825.0" } }, { - "tier": 7.0, + "tier": 6.0, "symbol": "SYRUP/USDT:USDT", "currency": "USDT", "minNotional": 125000.0, @@ -80281,50 +80989,50 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "7", + "bracket": "6", "initialLeverage": "4", "notionalCap": "250000", "notionalFloor": "125000", "maintMarginRatio": "0.125", - "cum": "6952.5" + "cum": "6950.0" + } + }, + { + "tier": 7.0, + "symbol": "SYRUP/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "7", + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "17375.0" } }, { "tier": 8.0, "symbol": "SYRUP/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "8", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17377.5" - } - }, - { - "tier": 9.0, - "symbol": "SYRUP/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392227.5" + "cum": "59025.0" } }, { - "tier": 10.0, + "tier": 9.0, "symbol": "SYRUP/USDT:USDT", "currency": "USDT", "minNotional": 7500000.0, @@ -80332,12 +81040,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "10", + "bracket": "9", "initialLeverage": "1", "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267227.5" + "cum": "1934025.0" } } ], @@ -80432,13 +81140,13 @@ "symbol": "SYS/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -80448,7 +81156,7 @@ "tier": 7.0, "symbol": "SYS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -80456,9 +81164,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -80475,7 +81183,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -80587,13 +81295,13 @@ "symbol": "T/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -80603,7 +81311,7 @@ "tier": 8.0, "symbol": "T/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -80611,9 +81319,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -80630,7 +81338,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -80640,15 +81348,15 @@ "symbol": "TA/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 40.0, + "maxNotional": 15000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "40", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "15000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -80656,55 +81364,21 @@ "tier": 2.0, "symbol": "TA/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "TA/USDT:USDT", - "currency": "USDT", - "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "TA/USDT:USDT", - "currency": "USDT", - "minNotional": 20000.0, + "minNotional": 15000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "20000", + "notionalFloor": "15000", "maintMarginRatio": "0.1", - "cum": "1275.0" + "cum": "750.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "TA/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -80712,16 +81386,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2525.0" + "cum": "2000.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "TA/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -80729,16 +81403,16 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6695.0" + "cum": "6170.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "TA/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, @@ -80746,16 +81420,16 @@ "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", "notionalCap": "2500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27520.0" + "cum": "26995.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "TA/USDT:USDT", "currency": "USDT", "minNotional": 2500000.0, @@ -80763,12 +81437,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", "notionalCap": "5000000", "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "652520.0" + "cum": "651995.0" } } ], @@ -80863,13 +81537,13 @@ "symbol": "TAC/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -80879,7 +81553,7 @@ "tier": 7.0, "symbol": "TAC/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -80887,9 +81561,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -80906,7 +81580,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -81001,13 +81675,13 @@ "symbol": "TAG/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -81017,7 +81691,7 @@ "tier": 7.0, "symbol": "TAG/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -81025,9 +81699,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -81044,7 +81718,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -81139,13 +81813,13 @@ "symbol": "TAIKO/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -81155,7 +81829,7 @@ "tier": 7.0, "symbol": "TAIKO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -81163,9 +81837,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -81182,7 +81856,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -81330,15 +82004,15 @@ "symbol": "TANSSI/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 40.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "40", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -81346,55 +82020,21 @@ "tier": 2.0, "symbol": "TANSSI/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "TANSSI/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "TANSSI/USDT:USDT", - "currency": "USDT", - "minNotional": 20000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "20000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1275.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "TANSSI/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -81402,16 +82042,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2525.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "TANSSI/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -81419,16 +82059,16 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6695.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "TANSSI/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, @@ -81436,16 +82076,16 @@ "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", "notionalCap": "2500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27520.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "TANSSI/USDT:USDT", "currency": "USDT", "minNotional": 2500000.0, @@ -81453,12 +82093,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", "notionalCap": "5000000", "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "652520.0" + "cum": "651745.0" } } ], @@ -81708,13 +82348,13 @@ "symbol": "THE/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -81724,7 +82364,7 @@ "tier": 7.0, "symbol": "THE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -81732,9 +82372,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -81751,7 +82391,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -82328,13 +82968,13 @@ "symbol": "TLM/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -82344,7 +82984,7 @@ "tier": 7.0, "symbol": "TLM/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -82352,9 +82992,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -82371,7 +83011,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -82466,13 +83106,13 @@ "symbol": "TNSR/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -82482,7 +83122,7 @@ "tier": 7.0, "symbol": "TNSR/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -82490,9 +83130,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -82509,7 +83149,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -82519,15 +83159,15 @@ "symbol": "TOKEN/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 40.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "40", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -82535,55 +83175,21 @@ "tier": 2.0, "symbol": "TOKEN/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "TOKEN/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "TOKEN/USDT:USDT", - "currency": "USDT", - "minNotional": 20000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "20000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1275.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "TOKEN/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -82591,16 +83197,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2525.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "TOKEN/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -82608,46 +83214,46 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6695.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "TOKEN/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 2500000.0, + "maxNotional": 800000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", - "notionalCap": "2500000", + "notionalCap": "800000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27520.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "TOKEN/USDT:USDT", "currency": "USDT", - "minNotional": 2500000.0, - "maxNotional": 5000000.0, + "minNotional": 800000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "5000000", - "notionalFloor": "2500000", + "notionalCap": "1000000", + "notionalFloor": "800000", "maintMarginRatio": "0.5", - "cum": "652520.0" + "cum": "226745.0" } } ], @@ -82931,13 +83537,13 @@ "symbol": "TOSHI/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -82947,7 +83553,7 @@ "tier": 9.0, "symbol": "TOSHI/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -82955,9 +83561,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -82974,7 +83580,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -83086,13 +83692,13 @@ "symbol": "TOWNS/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -83102,7 +83708,7 @@ "tier": 8.0, "symbol": "TOWNS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -83110,9 +83716,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -83129,7 +83735,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -83140,14 +83746,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 40.0, "info": { "bracket": "1", - "initialLeverage": "50", + "initialLeverage": "40", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.02", "cum": "0.0" } }, @@ -83157,14 +83763,14 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.025", "cum": "25.0" } }, @@ -83173,67 +83779,67 @@ "symbol": "TRADOOR/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "275.0" } }, { "tier": 4.0, "symbol": "TRADOOR/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1275.0" } }, { "tier": 5.0, "symbol": "TRADOOR/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2525.0" } }, { "tier": 6.0, "symbol": "TRADOOR/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, + "minNotional": 100000.0, "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", + "initialLeverage": "3", "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6695.0" } }, { @@ -83241,50 +83847,33 @@ "symbol": "TRADOOR/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", + "initialLeverage": "2", + "notionalCap": "2500000", "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" + "maintMarginRatio": "0.25", + "cum": "27520.0" } }, { "tier": 8.0, "symbol": "TRADOOR/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "8", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "392225.0" - } - }, - { - "tier": 9.0, - "symbol": "TRADOOR/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "652520.0" } } ], @@ -83585,13 +84174,13 @@ "symbol": "TREE/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -83601,7 +84190,7 @@ "tier": 8.0, "symbol": "TREE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -83609,9 +84198,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -83628,7 +84217,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -83878,13 +84467,13 @@ "symbol": "TRU/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -83894,7 +84483,7 @@ "tier": 7.0, "symbol": "TRU/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -83902,9 +84491,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -83921,7 +84510,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -84343,13 +84932,13 @@ "symbol": "TRUST/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 1000000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "1000000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -84359,7 +84948,7 @@ "tier": 7.0, "symbol": "TRUST/USDT:USDT", "currency": "USDT", - "minNotional": 1000000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -84367,9 +84956,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "1000000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "96275.0" + "cum": "54625.0" } }, { @@ -84386,7 +84975,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "1929625.0" } } ], @@ -84414,15 +85003,15 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", - "cum": "25.0" + "maintMarginRatio": "0.025", + "cum": "50.0" } }, { @@ -84430,105 +85019,88 @@ "symbol": "TRUTH/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "300.0" } }, { "tier": 4.0, "symbol": "TRUTH/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1300.0" } }, { "tier": 5.0, "symbol": "TRUTH/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2550.0" } }, { "tier": 6.0, "symbol": "TRUTH/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12975.0" } }, { "tier": 7.0, "symbol": "TRUTH/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" - } - }, - { - "tier": 8.0, - "symbol": "TRUTH/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "8", + "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "54625.0" } }, { - "tier": 9.0, + "tier": 8.0, "symbol": "TRUTH/USDT:USDT", "currency": "USDT", "minNotional": 7500000.0, @@ -84536,12 +85108,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1929625.0" } } ], @@ -84808,13 +85380,13 @@ "symbol": "TST/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 1000000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "1000000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -84824,7 +85396,7 @@ "tier": 7.0, "symbol": "TST/USDT:USDT", "currency": "USDT", - "minNotional": 1000000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -84832,9 +85404,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "1000000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "96275.0" + "cum": "54625.0" } }, { @@ -84851,7 +85423,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "1929625.0" } } ], @@ -84980,13 +85552,13 @@ "symbol": "TURBO/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -84996,7 +85568,7 @@ "tier": 9.0, "symbol": "TURBO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -85004,9 +85576,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -85023,7 +85595,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -85135,13 +85707,13 @@ "symbol": "TURTLE/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -85151,7 +85723,7 @@ "tier": 8.0, "symbol": "TURTLE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -85159,9 +85731,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -85178,7 +85750,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -85273,13 +85845,13 @@ "symbol": "TUT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -85289,7 +85861,7 @@ "tier": 7.0, "symbol": "TUT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -85297,9 +85869,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -85316,7 +85888,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -85445,13 +86017,13 @@ "symbol": "TWT/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -85461,7 +86033,7 @@ "tier": 9.0, "symbol": "TWT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -85469,9 +86041,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -85488,7 +86060,145 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" + } + } + ], + "UAI/USDT:USDT": [ + { + "tier": 1.0, + "symbol": "UAI/USDT:USDT", + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "UAI/USDT:USDT", + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "10000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "symbol": "UAI/USDT:USDT", + "currency": "USDT", + "minNotional": 10000.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "20000", + "notionalFloor": "10000", + "maintMarginRatio": "0.05", + "cum": "300.0" + } + }, + { + "tier": 4.0, + "symbol": "UAI/USDT:USDT", + "currency": "USDT", + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1300.0" + } + }, + { + "tier": 5.0, + "symbol": "UAI/USDT:USDT", + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2550.0" + } + }, + { + "tier": 6.0, + "symbol": "UAI/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "6", + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12975.0" + } + }, + { + "tier": 7.0, + "symbol": "UAI/USDT:USDT", + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 7500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "7", + "initialLeverage": "2", + "notionalCap": "7500000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "54625.0" + } + }, + { + "tier": 8.0, + "symbol": "UAI/USDT:USDT", + "currency": "USDT", + "minNotional": 7500000.0, + "maxNotional": 12500000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "8", + "initialLeverage": "1", + "notionalCap": "12500000", + "notionalFloor": "7500000", + "maintMarginRatio": "0.5", + "cum": "1929625.0" } } ], @@ -85600,13 +86310,13 @@ "symbol": "UB/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -85616,7 +86326,7 @@ "tier": 8.0, "symbol": "UB/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -85624,9 +86334,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -85643,7 +86353,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -85755,13 +86465,13 @@ "symbol": "UMA/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -85771,7 +86481,7 @@ "tier": 8.0, "symbol": "UMA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -85779,9 +86489,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -85798,7 +86508,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -86496,13 +87206,13 @@ "symbol": "USELESS/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -86512,7 +87222,7 @@ "tier": 8.0, "symbol": "USELESS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -86520,9 +87230,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -86539,7 +87249,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -86651,13 +87361,13 @@ "symbol": "USTC/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -86667,7 +87377,7 @@ "tier": 8.0, "symbol": "USTC/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -86675,9 +87385,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -86694,7 +87404,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -86806,13 +87516,13 @@ "symbol": "USUAL/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -86822,7 +87532,7 @@ "tier": 8.0, "symbol": "USUAL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -86830,9 +87540,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -86849,7 +87559,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -87065,13 +87775,13 @@ "symbol": "VANA/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -87081,7 +87791,7 @@ "tier": 9.0, "symbol": "VANA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -87089,9 +87799,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -87108,7 +87818,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -87220,13 +87930,13 @@ "symbol": "VANRY/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -87236,7 +87946,7 @@ "tier": 8.0, "symbol": "VANRY/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -87244,9 +87954,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -87263,7 +87973,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -87358,13 +88068,13 @@ "symbol": "VELODROME/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -87374,7 +88084,7 @@ "tier": 7.0, "symbol": "VELODROME/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -87382,9 +88092,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -87401,7 +88111,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -87496,13 +88206,13 @@ "symbol": "VELVET/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -87512,7 +88222,7 @@ "tier": 7.0, "symbol": "VELVET/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -87520,9 +88230,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -87539,7 +88249,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -87722,14 +88432,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 40.0, "info": { "bracket": "1", - "initialLeverage": "50", + "initialLeverage": "40", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.02", "cum": "0.0" } }, @@ -87739,14 +88449,14 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.025", "cum": "25.0" } }, @@ -87755,67 +88465,67 @@ "symbol": "VFY/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "275.0" } }, { "tier": 4.0, "symbol": "VFY/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1275.0" } }, { "tier": 5.0, "symbol": "VFY/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2525.0" } }, { "tier": 6.0, "symbol": "VFY/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, + "minNotional": 100000.0, "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", + "initialLeverage": "3", "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6695.0" } }, { @@ -87823,50 +88533,33 @@ "symbol": "VFY/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", + "initialLeverage": "2", + "notionalCap": "2500000", "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" + "maintMarginRatio": "0.25", + "cum": "27520.0" } }, { "tier": 8.0, "symbol": "VFY/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "8", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "392225.0" - } - }, - { - "tier": 9.0, - "symbol": "VFY/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "652520.0" } } ], @@ -87961,13 +88654,13 @@ "symbol": "VIC/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -87977,7 +88670,7 @@ "tier": 7.0, "symbol": "VIC/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -87985,9 +88678,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -88004,7 +88697,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -88119,14 +88812,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 40.0, "info": { "bracket": "1", - "initialLeverage": "50", + "initialLeverage": "40", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.02", "cum": "0.0" } }, @@ -88136,14 +88829,14 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.025", "cum": "25.0" } }, @@ -88152,67 +88845,67 @@ "symbol": "VINE/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "275.0" } }, { "tier": 4.0, "symbol": "VINE/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1275.0" } }, { "tier": 5.0, "symbol": "VINE/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2525.0" } }, { "tier": 6.0, "symbol": "VINE/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, + "minNotional": 100000.0, "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", + "initialLeverage": "3", "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6695.0" } }, { @@ -88220,50 +88913,33 @@ "symbol": "VINE/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", + "initialLeverage": "2", + "notionalCap": "2500000", "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" + "maintMarginRatio": "0.25", + "cum": "27520.0" } }, { "tier": 8.0, "symbol": "VINE/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "8", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "392225.0" - } - }, - { - "tier": 9.0, - "symbol": "VINE/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "652520.0" } } ], @@ -88462,15 +89138,15 @@ "symbol": "VOXEL/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "25", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -88478,55 +89154,21 @@ "tier": 2.0, "symbol": "VOXEL/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, - "info": { - "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "25.0" - } - }, - { - "tier": 3.0, - "symbol": "VOXEL/USDT:USDT", - "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "3", - "initialLeverage": "10", - "notionalCap": "25000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "275.0" - } - }, - { - "tier": 4.0, - "symbol": "VOXEL/USDT:USDT", - "currency": "USDT", - "minNotional": 25000.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "2", "initialLeverage": "5", "notionalCap": "50000", - "notionalFloor": "25000", + "notionalFloor": "10000", "maintMarginRatio": "0.1", - "cum": "1525.0" + "cum": "500.0" } }, { - "tier": 5.0, + "tier": 3.0, "symbol": "VOXEL/USDT:USDT", "currency": "USDT", "minNotional": 50000.0, @@ -88534,16 +89176,16 @@ "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "3", "initialLeverage": "4", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.125", - "cum": "2775.0" + "cum": "1750.0" } }, { - "tier": 6.0, + "tier": 4.0, "symbol": "VOXEL/USDT:USDT", "currency": "USDT", "minNotional": 100000.0, @@ -88551,46 +89193,46 @@ "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { - "bracket": "6", + "bracket": "4", "initialLeverage": "3", "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1667", - "cum": "6945.0" + "cum": "5920.0" } }, { - "tier": 7.0, + "tier": 5.0, "symbol": "VOXEL/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 500000.0, + "maxNotional": 2500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "7", + "bracket": "5", "initialLeverage": "2", - "notionalCap": "500000", + "notionalCap": "2500000", "notionalFloor": "250000", "maintMarginRatio": "0.25", - "cum": "27770.0" + "cum": "26745.0" } }, { - "tier": 8.0, + "tier": 6.0, "symbol": "VOXEL/USDT:USDT", "currency": "USDT", - "minNotional": 500000.0, - "maxNotional": 800000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "800000", - "notionalFloor": "500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "152770.0" + "cum": "651745.0" } } ], @@ -88702,13 +89344,13 @@ "symbol": "VTHO/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -88718,7 +89360,7 @@ "tier": 8.0, "symbol": "VTHO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -88726,9 +89368,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -88745,7 +89387,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -88773,15 +89415,15 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", - "cum": "25.0" + "maintMarginRatio": "0.025", + "cum": "50.0" } }, { @@ -88789,105 +89431,88 @@ "symbol": "VVV/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "300.0" } }, { "tier": 4.0, "symbol": "VVV/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1300.0" } }, { "tier": 5.0, "symbol": "VVV/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2550.0" } }, { "tier": 6.0, "symbol": "VVV/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12975.0" } }, { "tier": 7.0, "symbol": "VVV/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" - } - }, - { - "tier": 8.0, - "symbol": "VVV/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "8", + "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "54625.0" } }, { - "tier": 9.0, + "tier": 8.0, "symbol": "VVV/USDT:USDT", "currency": "USDT", "minNotional": 7500000.0, @@ -88895,12 +89520,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1929625.0" } } ], @@ -89218,13 +89843,13 @@ "symbol": "WAL/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -89234,7 +89859,7 @@ "tier": 9.0, "symbol": "WAL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -89242,9 +89867,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -89261,7 +89886,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -89477,13 +90102,13 @@ "symbol": "WAXP/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -89493,7 +90118,7 @@ "tier": 7.0, "symbol": "WAXP/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -89501,9 +90126,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -89520,7 +90145,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -89632,13 +90257,13 @@ "symbol": "WCT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -89648,7 +90273,7 @@ "tier": 8.0, "symbol": "WCT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -89656,9 +90281,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -89675,7 +90300,145 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" + } + } + ], + "WET/USDT:USDT": [ + { + "tier": 1.0, + "symbol": "WET/USDT:USDT", + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "WET/USDT:USDT", + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "10000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "symbol": "WET/USDT:USDT", + "currency": "USDT", + "minNotional": 10000.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "20000", + "notionalFloor": "10000", + "maintMarginRatio": "0.05", + "cum": "300.0" + } + }, + { + "tier": 4.0, + "symbol": "WET/USDT:USDT", + "currency": "USDT", + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1300.0" + } + }, + { + "tier": 5.0, + "symbol": "WET/USDT:USDT", + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2550.0" + } + }, + { + "tier": 6.0, + "symbol": "WET/USDT:USDT", + "currency": "USDT", + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "6", + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12975.0" + } + }, + { + "tier": 7.0, + "symbol": "WET/USDT:USDT", + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 7500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "7", + "initialLeverage": "2", + "notionalCap": "7500000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "54625.0" + } + }, + { + "tier": 8.0, + "symbol": "WET/USDT:USDT", + "currency": "USDT", + "minNotional": 7500000.0, + "maxNotional": 12500000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "8", + "initialLeverage": "1", + "notionalCap": "12500000", + "notionalFloor": "7500000", + "maintMarginRatio": "0.5", + "cum": "1929625.0" } } ], @@ -90734,13 +91497,13 @@ "symbol": "WOO/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -90750,7 +91513,7 @@ "tier": 8.0, "symbol": "WOO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -90758,9 +91521,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -90777,7 +91540,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -90889,13 +91652,13 @@ "symbol": "XAI/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -90905,7 +91668,7 @@ "tier": 8.0, "symbol": "XAI/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -90913,9 +91676,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -90932,7 +91695,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -90960,15 +91723,15 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", - "cum": "25.0" + "maintMarginRatio": "0.025", + "cum": "50.0" } }, { @@ -90976,105 +91739,88 @@ "symbol": "XAN/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "300.0" } }, { "tier": 4.0, "symbol": "XAN/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1300.0" } }, { "tier": 5.0, "symbol": "XAN/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2550.0" } }, { "tier": 6.0, "symbol": "XAN/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12975.0" } }, { "tier": 7.0, "symbol": "XAN/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" - } - }, - { - "tier": 8.0, - "symbol": "XAN/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "8", + "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "54625.0" } }, { - "tier": 9.0, + "tier": 8.0, "symbol": "XAN/USDT:USDT", "currency": "USDT", "minNotional": 7500000.0, @@ -91082,12 +91828,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1929625.0" } } ], @@ -91097,15 +91843,15 @@ "symbol": "XCN/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.01, - "maxLeverage": 75.0, + "maxNotional": 30000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "75", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "30000", "notionalFloor": "0", - "maintMarginRatio": "0.01", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -91113,153 +91859,85 @@ "tier": 2.0, "symbol": "XCN/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "minNotional": 30000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "2", - "initialLeverage": "50", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.015", - "cum": "25.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "30000", + "maintMarginRatio": "0.1", + "cum": "1500.0" } }, { "tier": 3.0, "symbol": "XCN/USDT:USDT", "currency": "USDT", - "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "minNotional": 50000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "3", - "initialLeverage": "25", - "notionalCap": "25000", - "notionalFloor": "10000", - "maintMarginRatio": "0.02", - "cum": "75.0" + "initialLeverage": "4", + "notionalCap": "200000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2750.0" } }, { "tier": 4.0, "symbol": "XCN/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 50000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "minNotional": 200000.0, + "maxNotional": 300000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "4", - "initialLeverage": "20", - "notionalCap": "50000", - "notionalFloor": "25000", - "maintMarginRatio": "0.025", - "cum": "200.0" + "initialLeverage": "3", + "notionalCap": "300000", + "notionalFloor": "200000", + "maintMarginRatio": "0.1667", + "cum": "11090.0" } }, { "tier": 5.0, "symbol": "XCN/USDT:USDT", "currency": "USDT", - "minNotional": 50000.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 300000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "5", - "initialLeverage": "10", - "notionalCap": "125000", - "notionalFloor": "50000", - "maintMarginRatio": "0.05", - "cum": "1450.0" + "initialLeverage": "2", + "notionalCap": "500000", + "notionalFloor": "300000", + "maintMarginRatio": "0.25", + "cum": "36080.0" } }, { "tier": 6.0, "symbol": "XCN/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, - "info": { - "bracket": "6", - "initialLeverage": "5", - "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.1", - "cum": "7700.0" - } - }, - { - "tier": 7.0, - "symbol": "XCN/USDT:USDT", - "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 500000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, - "info": { - "bracket": "7", - "initialLeverage": "4", - "notionalCap": "500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.125", - "cum": "13950.0" - } - }, - { - "tier": 8.0, - "symbol": "XCN/USDT:USDT", - "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "8", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "500000", - "maintMarginRatio": "0.1667", - "cum": "34800.0" - } - }, - { - "tier": 9.0, - "symbol": "XCN/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "9", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "409650.0" - } - }, - { - "tier": 10.0, - "symbol": "XCN/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "maxNotional": 800000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "10", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "800000", + "notionalFloor": "500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "161080.0" } } ], @@ -91819,13 +92497,13 @@ "symbol": "XNY/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 1000000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "1000000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -91835,7 +92513,7 @@ "tier": 7.0, "symbol": "XNY/USDT:USDT", "currency": "USDT", - "minNotional": 1000000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -91843,9 +92521,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "1000000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "96275.0" + "cum": "54625.0" } }, { @@ -91862,7 +92540,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "1929625.0" } } ], @@ -91957,13 +92635,13 @@ "symbol": "XPIN/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 1000000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "1000000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -91973,7 +92651,7 @@ "tier": 7.0, "symbol": "XPIN/USDT:USDT", "currency": "USDT", - "minNotional": 1000000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -91981,9 +92659,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "1000000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "96275.0" + "cum": "54625.0" } }, { @@ -92000,7 +92678,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "1929625.0" } } ], @@ -92817,13 +93495,13 @@ "symbol": "XVG/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17250.0" @@ -92833,7 +93511,7 @@ "tier": 8.0, "symbol": "XVG/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -92841,9 +93519,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392100.0" + "cum": "58900.0" } }, { @@ -92860,7 +93538,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267100.0" + "cum": "1933900.0" } } ], @@ -92972,13 +93650,13 @@ "symbol": "XVS/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -92988,7 +93666,7 @@ "tier": 8.0, "symbol": "XVS/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -92996,9 +93674,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -93015,7 +93693,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -93025,15 +93703,15 @@ "symbol": "YALA/USDT:USDT", "currency": "USDT", "minNotional": 0.0, - "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "1", - "initialLeverage": "50", - "notionalCap": "5000", + "initialLeverage": "10", + "notionalCap": "10000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.05", "cum": "0.0" } }, @@ -93041,119 +93719,85 @@ "tier": 2.0, "symbol": "YALA/USDT:USDT", "currency": "USDT", - "minNotional": 5000.0, - "maxNotional": 10000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "minNotional": 10000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "2", - "initialLeverage": "20", - "notionalCap": "10000", - "notionalFloor": "5000", - "maintMarginRatio": "0.025", - "cum": "50.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "10000", + "maintMarginRatio": "0.1", + "cum": "500.0" } }, { "tier": 3.0, "symbol": "YALA/USDT:USDT", "currency": "USDT", - "minNotional": 10000.0, - "maxNotional": 20000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "3", - "initialLeverage": "10", - "notionalCap": "20000", - "notionalFloor": "10000", - "maintMarginRatio": "0.05", - "cum": "300.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "1750.0" } }, { "tier": 4.0, "symbol": "YALA/USDT:USDT", "currency": "USDT", - "minNotional": 20000.0, - "maxNotional": 50000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "4", - "initialLeverage": "5", - "notionalCap": "50000", - "notionalFloor": "20000", - "maintMarginRatio": "0.1", - "cum": "1300.0" + "initialLeverage": "3", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "5920.0" } }, { "tier": 5.0, "symbol": "YALA/USDT:USDT", "currency": "USDT", - "minNotional": 50000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "5", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "50000", - "maintMarginRatio": "0.125", - "cum": "2550.0" + "initialLeverage": "2", + "notionalCap": "2500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.25", + "cum": "26745.0" } }, { "tier": 6.0, "symbol": "YALA/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 1000000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "6", - "initialLeverage": "3", - "notionalCap": "1000000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "12975.0" - } - }, - { - "tier": 7.0, - "symbol": "YALA/USDT:USDT", - "currency": "USDT", - "minNotional": 1000000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "7", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "1000000", - "maintMarginRatio": "0.25", - "cum": "96275.0" - } - }, - { - "tier": 8.0, - "symbol": "YALA/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "8", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "1971275.0" + "cum": "651745.0" } } ], @@ -93282,13 +93926,13 @@ "symbol": "YB/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -93298,7 +93942,7 @@ "tier": 9.0, "symbol": "YB/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -93306,9 +93950,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -93325,7 +93969,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -93454,13 +94098,13 @@ "symbol": "YFI/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -93470,7 +94114,7 @@ "tier": 9.0, "symbol": "YFI/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -93478,9 +94122,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -93497,7 +94141,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -93609,13 +94253,13 @@ "symbol": "YGG/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -93625,7 +94269,7 @@ "tier": 8.0, "symbol": "YGG/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -93633,9 +94277,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -93652,7 +94296,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -93764,13 +94408,13 @@ "symbol": "ZBT/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -93780,7 +94424,7 @@ "tier": 8.0, "symbol": "ZBT/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -93788,9 +94432,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -93807,7 +94451,179 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" + } + } + ], + "ZEC/USDC:USDC": [ + { + "tier": 1.0, + "symbol": "ZEC/USDC:USDC", + "currency": "USDC", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.01, + "maxLeverage": 75.0, + "info": { + "bracket": "1", + "initialLeverage": "75", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.01", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "symbol": "ZEC/USDC:USDC", + "currency": "USDC", + "minNotional": 5000.0, + "maxNotional": 10000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "2", + "initialLeverage": "50", + "notionalCap": "10000", + "notionalFloor": "5000", + "maintMarginRatio": "0.015", + "cum": "25.0" + } + }, + { + "tier": 3.0, + "symbol": "ZEC/USDC:USDC", + "currency": "USDC", + "minNotional": 10000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 25.0, + "info": { + "bracket": "3", + "initialLeverage": "25", + "notionalCap": "25000", + "notionalFloor": "10000", + "maintMarginRatio": "0.02", + "cum": "75.0" + } + }, + { + "tier": 4.0, + "symbol": "ZEC/USDC:USDC", + "currency": "USDC", + "minNotional": 25000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "4", + "initialLeverage": "20", + "notionalCap": "50000", + "notionalFloor": "25000", + "maintMarginRatio": "0.025", + "cum": "200.0" + } + }, + { + "tier": 5.0, + "symbol": "ZEC/USDC:USDC", + "currency": "USDC", + "minNotional": 50000.0, + "maxNotional": 125000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "5", + "initialLeverage": "10", + "notionalCap": "125000", + "notionalFloor": "50000", + "maintMarginRatio": "0.05", + "cum": "1450.0" + } + }, + { + "tier": 6.0, + "symbol": "ZEC/USDC:USDC", + "currency": "USDC", + "minNotional": 125000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "6", + "initialLeverage": "5", + "notionalCap": "250000", + "notionalFloor": "125000", + "maintMarginRatio": "0.1", + "cum": "7700.0" + } + }, + { + "tier": 7.0, + "symbol": "ZEC/USDC:USDC", + "currency": "USDC", + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "7", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.125", + "cum": "13950.0" + } + }, + { + "tier": 8.0, + "symbol": "ZEC/USDC:USDC", + "currency": "USDC", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, + "info": { + "bracket": "8", + "initialLeverage": "3", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.1667", + "cum": "34800.0" + } + }, + { + "tier": 9.0, + "symbol": "ZEC/USDC:USDC", + "currency": "USDC", + "minNotional": 1000000.0, + "maxNotional": 7500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "9", + "initialLeverage": "2", + "notionalCap": "7500000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.25", + "cum": "118100.0" + } + }, + { + "tier": 10.0, + "symbol": "ZEC/USDC:USDC", + "currency": "USDC", + "minNotional": 7500000.0, + "maxNotional": 12500000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "10", + "initialLeverage": "1", + "notionalCap": "12500000", + "notionalFloor": "7500000", + "maintMarginRatio": "0.5", + "cum": "1993100.0" } } ], @@ -93936,13 +94752,13 @@ "symbol": "ZEC/USDT:USDT", "currency": "USDT", "minNotional": 10000000.0, - "maxNotional": 12500000.0, + "maxNotional": 20000000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { "bracket": "8", "initialLeverage": "2", - "notionalCap": "12500000", + "notionalCap": "20000000", "notionalFloor": "10000000", "maintMarginRatio": "0.25", "cum": "1743600.0" @@ -93952,17 +94768,17 @@ "tier": 9.0, "symbol": "ZEC/USDT:USDT", "currency": "USDT", - "minNotional": 12500000.0, - "maxNotional": 15000000.0, + "minNotional": 20000000.0, + "maxNotional": 40000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { "bracket": "9", "initialLeverage": "1", - "notionalCap": "15000000", - "notionalFloor": "12500000", + "notionalCap": "40000000", + "notionalFloor": "20000000", "maintMarginRatio": "0.5", - "cum": "4868600.0" + "cum": "6743600.0" } } ], @@ -94246,13 +95062,13 @@ "symbol": "ZEREBRO/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 2000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "2000000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -94262,7 +95078,7 @@ "tier": 7.0, "symbol": "ZEREBRO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 2000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -94270,9 +95086,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "2000000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "179575.0" } }, { @@ -94289,7 +95105,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "2054575.0" } } ], @@ -94317,15 +95133,15 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", - "cum": "25.0" + "maintMarginRatio": "0.025", + "cum": "50.0" } }, { @@ -94333,105 +95149,88 @@ "symbol": "ZETA/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "300.0" } }, { "tier": 4.0, "symbol": "ZETA/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1300.0" } }, { "tier": 5.0, "symbol": "ZETA/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2550.0" } }, { "tier": 6.0, "symbol": "ZETA/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "12975.0" } }, { "tier": 7.0, "symbol": "ZETA/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" - } - }, - { - "tier": 8.0, - "symbol": "ZETA/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "8", + "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "54625.0" } }, { - "tier": 9.0, + "tier": 8.0, "symbol": "ZETA/USDT:USDT", "currency": "USDT", "minNotional": 7500000.0, @@ -94439,12 +95238,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1929625.0" } } ], @@ -94573,13 +95372,13 @@ "symbol": "ZIL/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -94589,7 +95388,7 @@ "tier": 9.0, "symbol": "ZIL/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -94597,9 +95396,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -94616,7 +95415,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -94745,13 +95544,13 @@ "symbol": "ZK/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -94761,7 +95560,7 @@ "tier": 9.0, "symbol": "ZK/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -94769,9 +95568,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -94788,7 +95587,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -94900,13 +95699,13 @@ "symbol": "ZKC/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "7", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "17375.0" @@ -94916,7 +95715,7 @@ "tier": 8.0, "symbol": "ZKC/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -94924,9 +95723,9 @@ "bracket": "8", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "59025.0" } }, { @@ -94943,7 +95742,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1934025.0" } } ], @@ -94954,14 +95753,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.015, - "maxLeverage": 50.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 40.0, "info": { "bracket": "1", - "initialLeverage": "50", + "initialLeverage": "40", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.015", + "maintMarginRatio": "0.02", "cum": "0.0" } }, @@ -94971,14 +95770,14 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", + "maintMarginRatio": "0.025", "cum": "25.0" } }, @@ -94987,67 +95786,67 @@ "symbol": "ZKJ/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 20000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "20000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "275.0" } }, { "tier": 4.0, "symbol": "ZKJ/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 20000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "50000", + "notionalFloor": "20000", + "maintMarginRatio": "0.1", + "cum": "1275.0" } }, { "tier": 5.0, "symbol": "ZKJ/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.125", + "cum": "2525.0" } }, { "tier": 6.0, "symbol": "ZKJ/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, + "minNotional": 100000.0, "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", + "initialLeverage": "3", "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "notionalFloor": "100000", + "maintMarginRatio": "0.1667", + "cum": "6695.0" } }, { @@ -95055,50 +95854,33 @@ "symbol": "ZKJ/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, + "maxNotional": 2500000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, "info": { "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", + "initialLeverage": "2", + "notionalCap": "2500000", "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" + "maintMarginRatio": "0.25", + "cum": "27520.0" } }, { "tier": 8.0, "symbol": "ZKJ/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, - "maxNotional": 7500000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "8", - "initialLeverage": "2", - "notionalCap": "7500000", - "notionalFloor": "4500000", - "maintMarginRatio": "0.25", - "cum": "392225.0" - } - }, - { - "tier": 9.0, - "symbol": "ZKJ/USDT:USDT", - "currency": "USDT", - "minNotional": 7500000.0, - "maxNotional": 12500000.0, + "minNotional": 2500000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", - "notionalCap": "12500000", - "notionalFloor": "7500000", + "notionalCap": "5000000", + "notionalFloor": "2500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "652520.0" } } ], @@ -95227,13 +96009,13 @@ "symbol": "ZORA/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -95243,7 +96025,7 @@ "tier": 9.0, "symbol": "ZORA/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -95251,9 +96033,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -95270,7 +96052,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -95365,13 +96147,13 @@ "symbol": "ZRC/USDT:USDT", "currency": "USDT", "minNotional": 250000.0, - "maxNotional": 4500000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "6", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "500000", "notionalFloor": "250000", "maintMarginRatio": "0.1667", "cum": "12975.0" @@ -95381,7 +96163,7 @@ "tier": 7.0, "symbol": "ZRC/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -95389,9 +96171,9 @@ "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "387825.0" + "cum": "54625.0" } }, { @@ -95408,7 +96190,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2262825.0" + "cum": "1929625.0" } } ], @@ -95537,13 +96319,13 @@ "symbol": "ZRO/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -95553,7 +96335,7 @@ "tier": 9.0, "symbol": "ZRO/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -95561,9 +96343,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -95580,7 +96362,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -95709,13 +96491,13 @@ "symbol": "ZRX/USDT:USDT", "currency": "USDT", "minNotional": 500000.0, - "maxNotional": 4500000.0, + "maxNotional": 1000000.0, "maintenanceMarginRate": 0.1667, "maxLeverage": 3.0, "info": { "bracket": "8", "initialLeverage": "3", - "notionalCap": "4500000", + "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.1667", "cum": "34800.0" @@ -95725,7 +96507,7 @@ "tier": 9.0, "symbol": "ZRX/USDT:USDT", "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, @@ -95733,9 +96515,9 @@ "bracket": "9", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "409650.0" + "cum": "118100.0" } }, { @@ -95752,7 +96534,7 @@ "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2284650.0" + "cum": "1993100.0" } } ], @@ -95780,15 +96562,15 @@ "currency": "USDT", "minNotional": 5000.0, "maxNotional": 10000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "10000", "notionalFloor": "5000", - "maintMarginRatio": "0.02", - "cum": "25.0" + "maintMarginRatio": "0.025", + "cum": "50.0" } }, { @@ -95796,105 +96578,88 @@ "symbol": "\u5e01\u5b89\u4eba\u751f/USDT:USDT", "currency": "USDT", "minNotional": 10000.0, - "maxNotional": 25000.0, - "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "20", - "notionalCap": "25000", + "initialLeverage": "10", + "notionalCap": "50000", "notionalFloor": "10000", - "maintMarginRatio": "0.025", - "cum": "75.0" + "maintMarginRatio": "0.05", + "cum": "300.0" } }, { "tier": 4.0, "symbol": "\u5e01\u5b89\u4eba\u751f/USDT:USDT", "currency": "USDT", - "minNotional": 25000.0, - "maxNotional": 62500.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, + "minNotional": 50000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, "info": { "bracket": "4", - "initialLeverage": "10", - "notionalCap": "62500", - "notionalFloor": "25000", - "maintMarginRatio": "0.05", - "cum": "700.0" + "initialLeverage": "5", + "notionalCap": "100000", + "notionalFloor": "50000", + "maintMarginRatio": "0.1", + "cum": "2800.0" } }, { "tier": 5.0, "symbol": "\u5e01\u5b89\u4eba\u751f/USDT:USDT", "currency": "USDT", - "minNotional": 62500.0, - "maxNotional": 125000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, + "minNotional": 100000.0, + "maxNotional": 250000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, "info": { "bracket": "5", - "initialLeverage": "5", - "notionalCap": "125000", - "notionalFloor": "62500", - "maintMarginRatio": "0.1", - "cum": "3825.0" + "initialLeverage": "4", + "notionalCap": "250000", + "notionalFloor": "100000", + "maintMarginRatio": "0.125", + "cum": "5300.0" } }, { "tier": 6.0, "symbol": "\u5e01\u5b89\u4eba\u751f/USDT:USDT", "currency": "USDT", - "minNotional": 125000.0, - "maxNotional": 250000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, + "minNotional": 250000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.1667, + "maxLeverage": 3.0, "info": { "bracket": "6", - "initialLeverage": "4", - "notionalCap": "250000", - "notionalFloor": "125000", - "maintMarginRatio": "0.125", - "cum": "6950.0" + "initialLeverage": "3", + "notionalCap": "500000", + "notionalFloor": "250000", + "maintMarginRatio": "0.1667", + "cum": "15725.0" } }, { "tier": 7.0, "symbol": "\u5e01\u5b89\u4eba\u751f/USDT:USDT", "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 4500000.0, - "maintenanceMarginRate": 0.1667, - "maxLeverage": 3.0, - "info": { - "bracket": "7", - "initialLeverage": "3", - "notionalCap": "4500000", - "notionalFloor": "250000", - "maintMarginRatio": "0.1667", - "cum": "17375.0" - } - }, - { - "tier": 8.0, - "symbol": "\u5e01\u5b89\u4eba\u751f/USDT:USDT", - "currency": "USDT", - "minNotional": 4500000.0, + "minNotional": 500000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "8", + "bracket": "7", "initialLeverage": "2", "notionalCap": "7500000", - "notionalFloor": "4500000", + "notionalFloor": "500000", "maintMarginRatio": "0.25", - "cum": "392225.0" + "cum": "57375.0" } }, { - "tier": 9.0, + "tier": 8.0, "symbol": "\u5e01\u5b89\u4eba\u751f/USDT:USDT", "currency": "USDT", "minNotional": 7500000.0, @@ -95902,12 +96667,12 @@ "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "9", + "bracket": "8", "initialLeverage": "1", "notionalCap": "12500000", "notionalFloor": "7500000", "maintMarginRatio": "0.5", - "cum": "2267225.0" + "cum": "1932375.0" } } ] diff --git a/freqtrade/exchange/bitget.py b/freqtrade/exchange/bitget.py index a1d6db255..f0da55cb0 100644 --- a/freqtrade/exchange/bitget.py +++ b/freqtrade/exchange/bitget.py @@ -1,10 +1,10 @@ import logging -from datetime import timedelta +from datetime import datetime, timedelta import ccxt from freqtrade.constants import BuySell -from freqtrade.enums import CandleType, MarginMode, TradingMode +from freqtrade.enums import OPTIMIZE_MODES, CandleType, MarginMode, TradingMode from freqtrade.exceptions import ( DDosProtection, OperationalException, @@ -14,7 +14,7 @@ from freqtrade.exceptions import ( from freqtrade.exchange import Exchange from freqtrade.exchange.common import API_RETRY_COUNT, retrier from freqtrade.exchange.exchange_types import CcxtOrder, FtHas -from freqtrade.util.datetime_helpers import dt_now, dt_ts +from freqtrade.util import dt_from_ts, dt_now, dt_ts logger = logging.getLogger(__name__) @@ -35,8 +35,8 @@ class Bitget(Exchange): "order_time_in_force": ["GTC", "FOK", "IOC", "PO"], } _ft_has_futures: FtHas = { - "mark_ohlcv_timeframe": "4h", "funding_fee_candle_limit": 100, + "has_delisting": True, } _supported_trading_mode_margin_pairs: list[tuple[TradingMode, MarginMode]] = [ @@ -236,3 +236,35 @@ class Bitget(Exchange): raise OperationalException( "Freqtrade currently only supports isolated futures for bitget" ) + + def check_delisting_time(self, pair: str) -> datetime | None: + """ + Check if the pair gonna be delisted. + By default, it returns None. + :param pair: Market symbol + :return: Datetime if the pair gonna be delisted, None otherwise + """ + if self._config["runmode"] in OPTIMIZE_MODES: + return None + + if self.trading_mode == TradingMode.FUTURES: + return self._check_delisting_futures(pair) + return None + + def _check_delisting_futures(self, pair: str) -> datetime | None: + delivery_time = self.markets.get(pair, {}).get("info", {}).get("limitOpenTime", None) + if delivery_time: + if isinstance(delivery_time, str) and (delivery_time != ""): + delivery_time = int(delivery_time) + + if not isinstance(delivery_time, int) or delivery_time <= 0: + return None + + max_delivery = dt_ts() + ( + 14 * 24 * 60 * 60 * 1000 + ) # Assume exchange don't announce delisting more than 14 days in advance + + if delivery_time < max_delivery: + return dt_from_ts(delivery_time) + + return None diff --git a/freqtrade/exchange/bybit.py b/freqtrade/exchange/bybit.py index 7db300acc..0184c6c42 100644 --- a/freqtrade/exchange/bybit.py +++ b/freqtrade/exchange/bybit.py @@ -4,12 +4,13 @@ from datetime import datetime, timedelta import ccxt from freqtrade.constants import BuySell -from freqtrade.enums import MarginMode, PriceType, TradingMode +from freqtrade.enums import OPTIMIZE_MODES, MarginMode, PriceType, TradingMode from freqtrade.exceptions import DDosProtection, ExchangeError, OperationalException, TemporaryError from freqtrade.exchange import Exchange from freqtrade.exchange.common import retrier from freqtrade.exchange.exchange_types import CcxtOrder, FtHas from freqtrade.misc import deep_merge_dicts +from freqtrade.util import dt_from_ts, dt_ts logger = logging.getLogger(__name__) @@ -37,8 +38,6 @@ class Bybit(Exchange): } _ft_has_futures: FtHas = { "ohlcv_has_history": True, - "mark_ohlcv_timeframe": "4h", - "funding_fee_timeframe": "8h", "funding_fee_candle_limit": 200, "stoploss_on_exchange": True, "stoploss_order_types": {"limit": "limit", "market": "market"}, @@ -54,6 +53,7 @@ class Bybit(Exchange): "exchange_has_overrides": { "fetchOrder": True, }, + "has_delisting": True, } _supported_trading_mode_margin_pairs: list[tuple[TradingMode, MarginMode]] = [ @@ -294,3 +294,35 @@ class Bybit(Exchange): self.cache_leverage_tiers(tiers, self._config["stake_currency"]) return tiers + + def check_delisting_time(self, pair: str) -> datetime | None: + """ + Check if the pair gonna be delisted. + By default, it returns None. + :param pair: Market symbol + :return: Datetime if the pair gonna be delisted, None otherwise + """ + if self._config["runmode"] in OPTIMIZE_MODES: + return None + + if self.trading_mode == TradingMode.FUTURES: + return self._check_delisting_futures(pair) + return None + + def _check_delisting_futures(self, pair: str) -> datetime | None: + delivery_time = self.markets.get(pair, {}).get("info", {}).get("deliveryTime", 0) + if delivery_time: + if isinstance(delivery_time, str) and (delivery_time != ""): + delivery_time = int(delivery_time) + + if not isinstance(delivery_time, int) or delivery_time <= 0: + return None + + max_delivery = dt_ts() + ( + 14 * 24 * 60 * 60 * 1000 + ) # Assume exchange don't announce delisting more than 14 days in advance + + if delivery_time < max_delivery: + return dt_from_ts(delivery_time) + + return None diff --git a/freqtrade/exchange/common.py b/freqtrade/exchange/common.py index 650db19b7..61206de92 100644 --- a/freqtrade/exchange/common.py +++ b/freqtrade/exchange/common.py @@ -45,8 +45,6 @@ BAD_EXCHANGES = { } MAP_EXCHANGE_CHILDCLASS = { - "binanceus": "binance", - "binanceusdm": "binance", "okex": "okx", "gateio": "gate", "huboi": "htx", @@ -54,6 +52,8 @@ MAP_EXCHANGE_CHILDCLASS = { SUPPORTED_EXCHANGES = [ "binance", + "binanceus", + "binanceusdm", "bingx", "bitmart", "bitget", @@ -97,6 +97,9 @@ EXCHANGE_HAS_OPTIONAL = [ # 'fetchLeverageTiers', # Futures initialization # 'fetchMarketLeverageTiers', # Futures initialization # 'fetchOpenOrders', 'fetchClosedOrders', # 'fetchOrders', # Refinding balance... + # "fetchPremiumIndexOHLCV", # Futures additional data + # "fetchMarkOHLCV", # Futures additional data + # "fetchIndexOHLCV", # Futures additional data # ccxt.pro "watchOHLCV", ] diff --git a/freqtrade/exchange/exchange.py b/freqtrade/exchange/exchange.py index 20d8e20c4..cc1cd3322 100644 --- a/freqtrade/exchange/exchange.py +++ b/freqtrade/exchange/exchange.py @@ -16,7 +16,6 @@ from typing import Any, Literal, TypeGuard, TypeVar import ccxt import ccxt.pro as ccxt_pro -from cachetools import TTLCache from ccxt import TICK_SIZE from dateutil import parser from pandas import DataFrame, concat @@ -105,11 +104,11 @@ from freqtrade.misc import ( deep_merge_dicts, file_dump_json, file_load_json, + safe_value_fallback, safe_value_fallback2, ) -from freqtrade.util import dt_from_ts, dt_now +from freqtrade.util import FtTTLCache, PeriodicCache, dt_from_ts, dt_now from freqtrade.util.datetime_helpers import dt_humanize_delta, dt_ts, format_ms_time -from freqtrade.util.periodic_cache import PeriodicCache logger = logging.getLogger(__name__) @@ -154,8 +153,8 @@ class Exchange: "l2_limit_range_required": True, # Allow Empty L2 limit (kucoin) "l2_limit_upper": None, # Upper limit for L2 limit "mark_ohlcv_price": "mark", - "mark_ohlcv_timeframe": "8h", - "funding_fee_timeframe": "8h", + "mark_ohlcv_timeframe": "1h", + "funding_fee_timeframe": "1h", "ccxt_futures_name": "swap", "needs_trading_fees": False, # use fetch_trading_fees to cache fees "order_props_in_contracts": ["amount", "filled", "remaining"], @@ -230,13 +229,13 @@ class Exchange: self._cache_lock = Lock() # Cache for 10 minutes ... - self._fetch_tickers_cache: TTLCache = TTLCache(maxsize=4, ttl=60 * 10) + self._fetch_tickers_cache: FtTTLCache = FtTTLCache(maxsize=4, ttl=60 * 10) # Cache values for 300 to avoid frequent polling of the exchange for prices # Caching only applies to RPC methods, so prices for open trades are still # refreshed once every iteration. # Shouldn't be too high either, as it'll freeze UI updates in case of open orders. - self._exit_rate_cache: TTLCache = TTLCache(maxsize=100, ttl=300) - self._entry_rate_cache: TTLCache = TTLCache(maxsize=100, ttl=300) + self._exit_rate_cache: FtTTLCache = FtTTLCache(maxsize=100, ttl=300) + self._entry_rate_cache: FtTTLCache = FtTTLCache(maxsize=100, ttl=300) # Holds candles self._klines: dict[PairWithTimeframe, DataFrame] = {} @@ -430,7 +429,15 @@ class Exchange: @property def timeframes(self) -> list[str]: - return list((self._api.timeframes or {}).keys()) + market_type = ( + "spot" + if self.trading_mode != TradingMode.FUTURES + else self._ft_has["ccxt_futures_name"] + ) + timeframes = self._api.options.get("timeframes", {}).get(market_type) + if timeframes is None: + timeframes = self._api.timeframes + return list((timeframes or {}).keys()) @property def markets(self) -> dict[str, Any]: @@ -1113,6 +1120,7 @@ class Exchange: leverage: float, params: dict | None = None, stop_loss: bool = False, + stop_price: float | None = None, ) -> CcxtOrder: now = dt_now() order_id = f"dry_run_{side}_{pair}_{now.timestamp()}" @@ -1139,7 +1147,7 @@ class Exchange: } if stop_loss: dry_order["info"] = {"stopPrice": dry_order["price"]} - dry_order[self._ft_has["stop_price_prop"]] = dry_order["price"] + dry_order[self._ft_has["stop_price_prop"]] = stop_price or dry_order["price"] # Workaround to avoid filling stoploss orders immediately dry_order["ft_order_type"] = "stoploss" orderbook: OrderBook | None = None @@ -1157,7 +1165,11 @@ class Exchange: if dry_order["type"] == "market" and not dry_order.get("ft_order_type"): # Update market order pricing - average = self.get_dry_market_fill_price(pair, side, amount, rate, orderbook) + slippage = 0.05 + worst_rate = rate * ((1 + slippage) if side == "buy" else (1 - slippage)) + average = self.get_dry_market_fill_price( + pair, side, amount, rate, worst_rate, orderbook + ) dry_order.update( { "average": average, @@ -1197,7 +1209,13 @@ class Exchange: return dry_order def get_dry_market_fill_price( - self, pair: str, side: str, amount: float, rate: float, orderbook: OrderBook | None + self, + pair: str, + side: str, + amount: float, + rate: float, + worst_rate: float, + orderbook: OrderBook | None, ) -> float: """ Get the market order fill price based on orderbook interpolation @@ -1206,8 +1224,6 @@ class Exchange: if not orderbook: orderbook = self.fetch_l2_order_book(pair, 20) ob_type: OBLiteral = "asks" if side == "buy" else "bids" - slippage = 0.05 - max_slippage_val = rate * ((1 + slippage) if side == "buy" else (1 - slippage)) remaining_amount = amount filled_value = 0.0 @@ -1231,11 +1247,10 @@ class Exchange: forecast_avg_filled_price = max(filled_value, 0) / amount # Limit max. slippage to specified value if side == "buy": - forecast_avg_filled_price = min(forecast_avg_filled_price, max_slippage_val) + forecast_avg_filled_price = min(forecast_avg_filled_price, worst_rate) else: - forecast_avg_filled_price = max(forecast_avg_filled_price, max_slippage_val) - + forecast_avg_filled_price = max(forecast_avg_filled_price, worst_rate) return self.price_to_precision(pair, forecast_avg_filled_price) return rate @@ -1247,13 +1262,15 @@ class Exchange: limit: float, orderbook: OrderBook | None = None, offset: float = 0.0, + is_stop: bool = False, ) -> bool: if not self.exchange_has("fetchL2OrderBook"): - return True + # True unless checking a stoploss order + return not is_stop if not orderbook: orderbook = self.fetch_l2_order_book(pair, 1) try: - if side == "buy": + if (side == "buy" and not is_stop) or (side == "sell" and is_stop): price = orderbook["asks"][0][0] if limit * (1 - offset) >= price: return True @@ -1272,6 +1289,38 @@ class Exchange: """ Check dry-run limit order fill and update fee (if it filled). """ + if order["status"] != "closed" and order.get("ft_order_type") == "stoploss": + pair = order["symbol"] + if not orderbook and self.exchange_has("fetchL2OrderBook"): + orderbook = self.fetch_l2_order_book(pair, 20) + price = safe_value_fallback(order, self._ft_has["stop_price_prop"], "price") + crossed = self._dry_is_price_crossed( + pair, order["side"], price, orderbook, is_stop=True + ) + if crossed: + average = self.get_dry_market_fill_price( + pair, + order["side"], + order["amount"], + price, + worst_rate=order["price"], + orderbook=orderbook, + ) + order.update( + { + "status": "closed", + "filled": order["amount"], + "remaining": 0, + "average": average, + "cost": order["amount"] * average, + } + ) + self.add_dry_order_fee( + pair, + order, + "taker" if immediate else "maker", + ) + return order if ( order["status"] != "closed" and order["type"] in ["limit"] @@ -1295,7 +1344,7 @@ class Exchange: return order - def fetch_dry_run_order(self, order_id) -> CcxtOrder: + def fetch_dry_run_order(self, order_id: str) -> CcxtOrder: """ Return dry-run order Only call if running in dry-run mode. @@ -1307,11 +1356,12 @@ class Exchange: except KeyError as e: from freqtrade.persistence import Order - order = Order.order_by_id(order_id) - if order: - ccxt_order = order.to_ccxt_object(self._ft_has["stop_price_prop"]) - self._dry_run_open_orders[order_id] = ccxt_order - return ccxt_order + order_obj = Order.order_by_id(order_id) + if order_obj: + order = order_obj.to_ccxt_object(self._ft_has["stop_price_prop"]) + order = self.check_dry_limit_order_filled(order) + self._dry_run_open_orders[order_id] = order + return order # Gracefully handle errors with dry-run orders. raise InvalidOrderException( f"Tried to get an invalid dry-run-order (id: {order_id}). Message: {e}" @@ -1355,8 +1405,9 @@ class Exchange: amount: float, rate: float, leverage: float, - reduceOnly: bool = False, time_in_force: str = "GTC", + reduceOnly: bool = False, + initial_order: bool = True, ) -> CcxtOrder: if self._config["dry_run"]: dry_order = self.create_dry_run_order( @@ -1373,7 +1424,7 @@ class Exchange: rate_for_order = self.price_to_precision(pair, rate) if needs_price else None if not reduceOnly: - self._lev_prep(pair, leverage, side) + self._lev_prep(pair, leverage, side, accept_fail=not initial_order) order = self._api.create_order( pair, @@ -1510,8 +1561,9 @@ class Exchange: ordertype, side, amount, - stop_price_norm, + limit_rate or stop_price_norm, stop_loss=True, + stop_price=stop_price_norm, leverage=leverage, ) return dry_order @@ -1762,7 +1814,7 @@ class Exchange: balances.pop("total", None) balances.pop("used", None) - self._log_exchange_response("fetch_balances", balances) + self._log_exchange_response("fetch_balance", balances) return balances except ccxt.DDoSProtection as e: raise DDosProtection(e) from e @@ -1783,9 +1835,9 @@ class Exchange: if self._config["dry_run"] or self.trading_mode != TradingMode.FUTURES: return [] try: - symbols = [] + symbols = None if pair: - symbols.append(pair) + symbols = [pair] positions: list[CcxtPosition] = self._api.fetch_positions(symbols) self._log_exchange_response("fetch_positions", positions) return positions @@ -2155,7 +2207,9 @@ class Exchange: name = side.capitalize() strat_name = "entry_pricing" if side == "entry" else "exit_pricing" - cache_rate: TTLCache = self._entry_rate_cache if side == "entry" else self._exit_rate_cache + cache_rate: FtTTLCache = ( + self._entry_rate_cache if side == "entry" else self._exit_rate_cache + ) if not refresh: with self._cache_lock: rate = cache_rate.get(pair) @@ -2637,24 +2691,25 @@ class Exchange: input_coroutines: list[Coroutine[Any, Any, OHLCVResponse]] = [] cached_pairs = [] for pair, timeframe, candle_type in set(pair_list): - invalid_funding = ( - candle_type == CandleType.FUNDING_RATE - and timeframe != self.get_option("funding_fee_timeframe") - ) + if candle_type == CandleType.FUNDING_RATE and timeframe != ( + ff_tf := self.get_option("funding_fee_timeframe") + ): + # TODO: does this message make sense? would docs be better? + # if any, this should be cached to avoid log spam! + logger.warning( + f"Wrong funding rate timeframe {timeframe} for pair {pair}, " + f"downloading {ff_tf} instead." + ) + timeframe = ff_tf invalid_timeframe = timeframe not in self.timeframes and candle_type in ( CandleType.SPOT, CandleType.FUTURES, ) - if invalid_timeframe or invalid_funding: - timeframes_ = ( - ", ".join(self.timeframes) - if candle_type != CandleType.FUNDING_RATE - else self.get_option("funding_fee_timeframe") - ) + if invalid_timeframe: logger.warning( f"Cannot download ({pair}, {timeframe}, {candle_type}) combination as this " f"timeframe is not available on {self.name}. Available timeframes are " - f"{timeframes_}." + f"{', '.join(self.timeframes)}." ) continue @@ -2691,7 +2746,11 @@ class Exchange: has_cache = cache and (pair, timeframe, c_type) in self._klines # in case of existing cache, fill_missing happens after concatenation ohlcv_df = ohlcv_to_dataframe( - ticks, timeframe, pair=pair, fill_missing=not has_cache, drop_incomplete=drop_incomplete + ticks, + timeframe, + pair=pair, + fill_missing=not has_cache and c_type != CandleType.FUNDING_RATE, + drop_incomplete=drop_incomplete, ) # keeping parsed dataframe in cache if cache: @@ -2702,7 +2761,7 @@ class Exchange: concat([old, ohlcv_df], axis=0), timeframe, pair, - fill_missing=True, + fill_missing=c_type != CandleType.FUNDING_RATE, drop_incomplete=False, ) candle_limit = self.ohlcv_candle_limit(timeframe, self._config["candle_type_def"]) @@ -2837,9 +2896,10 @@ class Exchange: timeframe, candle_type=candle_type, since_ms=since_ms ) - if candle_type and candle_type not in (CandleType.SPOT, CandleType.FUTURES): - params.update({"price": candle_type.value}) if candle_type != CandleType.FUNDING_RATE: + if candle_type and candle_type not in (CandleType.SPOT, CandleType.FUTURES): + self.verify_candle_type_support(candle_type) + params.update({"price": str(candle_type)}) data = await self._api_async.fetch_ohlcv( pair, timeframe=timeframe, since=since_ms, limit=candle_limit, params=params ) @@ -2904,6 +2964,38 @@ class Exchange: data = [[x["timestamp"], x["fundingRate"], 0, 0, 0, 0] for x in data] return data + def check_candle_type_support(self, candle_type: CandleType) -> bool: + """ + Check that the exchange supports the given candle type. + :param candle_type: CandleType to verify + :return: True if supported, False otherwise + """ + if candle_type == CandleType.FUNDING_RATE: + if not self.exchange_has("fetchFundingRateHistory"): + return False + elif candle_type not in (CandleType.SPOT, CandleType.FUTURES): + mapping = { + CandleType.MARK: "fetchMarkOHLCV", + CandleType.INDEX: "fetchIndexOHLCV", + CandleType.PREMIUMINDEX: "fetchPremiumIndexOHLCV", + CandleType.FUNDING_RATE: "fetchFundingRateHistory", + } + _method = mapping.get(candle_type, "fetchOHLCV") + if not self.exchange_has(_method): + return False + return True + + def verify_candle_type_support(self, candle_type: CandleType) -> None: + """ + Verify that the exchange supports the given candle type. + :param candle_type: CandleType to verify + :raises OperationalException: if the candle type is not supported + """ + if not self.check_candle_type_support(candle_type): + raise OperationalException( + f"Exchange {self._api.name} does not support fetching {candle_type} candles." + ) + # fetch Trade data stuff def needed_candle_for_trades_ms(self, timeframe: str, candle_type: CandleType) -> int: @@ -3731,10 +3823,11 @@ class Exchange: :param mark_rates: Dataframe containing Mark rates (Type mark_ohlcv_price) :param futures_funding_rate: Fake funding rate to use if funding_rates are not available """ + relevant_cols = ["date", "open_mark", "open_fund"] if futures_funding_rate is None: return mark_rates.merge( funding_rates, on="date", how="inner", suffixes=["_mark", "_fund"] - ) + )[relevant_cols] else: if len(funding_rates) == 0: # No funding rate candles - full fillup with fallback variable @@ -3747,15 +3840,23 @@ class Exchange: "low": "low_mark", "volume": "volume_mark", } - ) + )[relevant_cols] else: # Fill up missing funding_rate candles with fallback value combined = mark_rates.merge( funding_rates, on="date", how="left", suffixes=["_mark", "_fund"] ) - combined["open_fund"] = combined["open_fund"].fillna(futures_funding_rate) - return combined + # Fill only leading missing funding rates so gaps stay untouched + first_valid_idx = combined["open_fund"].first_valid_index() + if first_valid_idx is None: + combined["open_fund"] = futures_funding_rate + else: + is_leading_na = (combined.index <= first_valid_idx) & combined[ + "open_fund" + ].isna() + combined.loc[is_leading_na, "open_fund"] = futures_funding_rate + return combined[relevant_cols].dropna() def calculate_funding_fees( self, diff --git a/freqtrade/exchange/hyperliquid.py b/freqtrade/exchange/hyperliquid.py index 9dcc0e6a4..f5e6fb7ee 100644 --- a/freqtrade/exchange/hyperliquid.py +++ b/freqtrade/exchange/hyperliquid.py @@ -3,6 +3,7 @@ import logging from copy import deepcopy from datetime import datetime +from typing import Any from freqtrade.constants import BuySell from freqtrade.enums import MarginMode, TradingMode @@ -36,9 +37,9 @@ class Hyperliquid(Exchange): "stoploss_order_types": {"limit": "limit"}, "stoploss_blocks_assets": False, "stop_price_prop": "stopPrice", - "funding_fee_timeframe": "1h", "funding_fee_candle_limit": 500, "uses_leverage_tiers": False, + "mark_ohlcv_price": "futures", } _supported_trading_mode_margin_pairs: list[tuple[TradingMode, MarginMode]] = [ @@ -56,6 +57,13 @@ class Hyperliquid(Exchange): config.update(super()._ccxt_config) return config + def market_is_tradable(self, market: dict[str, Any]) -> bool: + parent_check = super().market_is_tradable(market) + + # Exclude hip3 markets for now - which have the format XYZ:GOOGL/USDT:USDT - + # and XYZ:GOOGL as base + return parent_check and ":" not in market["base"] + def get_max_leverage(self, pair: str, stake_amount: float | None) -> float: # There are no leverage tiers if self.trading_mode == TradingMode.FUTURES: diff --git a/freqtrade/exchange/kraken.py b/freqtrade/exchange/kraken.py index d361b1337..60efdf954 100644 --- a/freqtrade/exchange/kraken.py +++ b/freqtrade/exchange/kraken.py @@ -35,7 +35,6 @@ class Kraken(Exchange): "trades_pagination_arg": "since", "trades_pagination_overlap": False, "trades_has_history": True, - "mark_ohlcv_timeframe": "4h", } _supported_trading_mode_margin_pairs: list[tuple[TradingMode, MarginMode]] = [ @@ -82,7 +81,7 @@ class Kraken(Exchange): balances.pop("free", None) balances.pop("total", None) balances.pop("used", None) - self._log_exchange_response("fetch_balances", balances) + self._log_exchange_response("fetch_balance", balances) # Consolidate balances balances = self.consolidate_balances(balances) @@ -104,7 +103,7 @@ class Kraken(Exchange): balances[bal]["used"] = sum(order[1] for order in order_list if order[0] == bal) balances[bal]["free"] = balances[bal]["total"] - balances[bal]["used"] - self._log_exchange_response("fetch_balances2", balances) + self._log_exchange_response("fetch_balance2", balances) return balances except ccxt.DDoSProtection as e: raise DDosProtection(e) from e diff --git a/freqtrade/exchange/kucoin.py b/freqtrade/exchange/kucoin.py index 17afbd63a..e1fe469fb 100644 --- a/freqtrade/exchange/kucoin.py +++ b/freqtrade/exchange/kucoin.py @@ -44,8 +44,9 @@ class Kucoin(Exchange): amount: float, rate: float, leverage: float, - reduceOnly: bool = False, time_in_force: str = "GTC", + reduceOnly: bool = False, + initial_order: bool = True, ) -> CcxtOrder: res = super().create_order( pair=pair, @@ -56,6 +57,7 @@ class Kucoin(Exchange): leverage=leverage, reduceOnly=reduceOnly, time_in_force=time_in_force, + initial_order=initial_order, ) # Kucoin returns only the order-id. # ccxt returns status = 'closed' at the moment - which is information ccxt invented. diff --git a/freqtrade/exchange/okx.py b/freqtrade/exchange/okx.py index bd401d198..14f20a0bb 100644 --- a/freqtrade/exchange/okx.py +++ b/freqtrade/exchange/okx.py @@ -29,8 +29,6 @@ class Okx(Exchange): _ft_has: FtHas = { "ohlcv_candle_limit": 100, # Warning, special case with data prior to X months - "mark_ohlcv_timeframe": "4h", - "funding_fee_timeframe": "8h", "stoploss_order_types": {"limit": "limit"}, "stoploss_on_exchange": True, "trades_has_history": False, # Endpoint doesn't have a "since" parameter @@ -41,8 +39,8 @@ class Okx(Exchange): "stop_price_type_field": "slTriggerPxType", "stop_price_type_value_mapping": { PriceType.LAST: "last", - PriceType.MARK: "index", - PriceType.INDEX: "mark", + PriceType.MARK: "mark", + PriceType.INDEX: "index", }, "stoploss_blocks_assets": False, "ws_enabled": True, @@ -266,14 +264,7 @@ class Okx(Exchange): return order["id"] def cancel_stoploss_order(self, order_id: str, pair: str, params: dict | None = None) -> dict: - params1 = {"stop": True} - # 'ordType': 'conditional' - # - return self.cancel_order( - order_id=order_id, - pair=pair, - params=params1, - ) + return self.cancel_order(order_id=order_id, pair=pair, params={"stop": True}) def _fetch_orders_emulate(self, pair: str, since_ms: int) -> list[CcxtOrder]: orders = [] diff --git a/freqtrade/freqtradebot.py b/freqtrade/freqtradebot.py index e1b6fa674..b80442ca0 100644 --- a/freqtrade/freqtradebot.py +++ b/freqtrade/freqtradebot.py @@ -63,7 +63,7 @@ from freqtrade.rpc.rpc_types import ( from freqtrade.strategy.interface import IStrategy from freqtrade.strategy.strategy_wrapper import strategy_safe_wrapper from freqtrade.util import FtPrecise, MeasureTime, PeriodicCache, dt_from_ts, dt_now -from freqtrade.util.migrations.binance_mig import migrate_binance_futures_names +from freqtrade.util.migrations import migrate_live_content from freqtrade.wallets import Wallets @@ -229,7 +229,7 @@ class FreqtradeBot(LoggingMixin): Called on startup and after reloading the bot - triggers notifications and performs startup tasks """ - migrate_binance_futures_names(self.config) + migrate_live_content(self.config, self.exchange) set_startup_time() self.rpc.startup_messages(self.config, self.pairlists, self.protections) @@ -937,6 +937,7 @@ class FreqtradeBot(LoggingMixin): reduceOnly=False, time_in_force=time_in_force, leverage=leverage, + initial_order=trade is None, ) order_obj = Order.parse_from_ccxt_object(order, pair, side, amount, enter_limit_requested) order_obj.ft_order_tag = enter_tag @@ -1063,7 +1064,16 @@ class FreqtradeBot(LoggingMixin): return True - def cancel_stoploss_on_exchange(self, trade: Trade) -> Trade: + def cancel_stoploss_on_exchange(self, trade: Trade, allow_nonblocking: bool = False) -> Trade: + """ + Cancels on exchange stoploss orders for the given trade. + :param trade: Trade for which to cancel stoploss order + :param allow_nonblocking: If True, will skip cancelling stoploss on exchange + if the exchange supports blocking stoploss orders. + """ + if allow_nonblocking and not self.exchange.get_option("stoploss_blocks_assets", True): + logger.info(f"Skipping cancelling stoploss on exchange for {trade}.") + return trade # First cancelling stoploss on exchange ... for oslo in trade.open_sl_orders: try: @@ -2002,14 +2012,14 @@ class FreqtradeBot(LoggingMixin): def _safe_exit_amount(self, trade: Trade, pair: str, amount: float) -> float: """ - Get sellable amount. + Get exitable amount. Should be trade.amount - but will fall back to the available amount if necessary. This should cover cases where get_real_amount() was not able to update the amount for whatever reason. :param trade: Trade we're working with - :param pair: Pair we're trying to sell + :param pair: Pair we're trying to exit :param amount: amount we expect to be available - :return: amount to sell + :return: amount to exit :raise: DependencyException: if available balance is not within 2% of the available amount. """ # Update wallets to ensure amounts tied up in a stoploss is now free! @@ -2045,11 +2055,12 @@ class FreqtradeBot(LoggingMixin): exit_tag: str | None = None, ordertype: str | None = None, sub_trade_amt: float | None = None, + skip_custom_exit_price: bool = False, ) -> bool: """ Executes a trade exit for the given trade and limit :param trade: Trade instance - :param limit: limit rate for the sell order + :param limit: limit rate for the exit order :param exit_check: CheckTuple with signal and reason :return: True if it succeeds False """ @@ -2071,29 +2082,33 @@ class FreqtradeBot(LoggingMixin): ): exit_type = "stoploss" + order_type = ( + (ordertype or self.strategy.order_types[exit_type]) + if exit_check.exit_type != ExitType.EMERGENCY_EXIT + else self.strategy.order_types.get("emergency_exit", "market") + ) + # set custom_exit_price if available proposed_limit_rate = limit + custom_exit_price = limit + current_profit = trade.calc_profit_ratio(limit) - custom_exit_price = strategy_safe_wrapper( - self.strategy.custom_exit_price, default_retval=proposed_limit_rate - )( - pair=trade.pair, - trade=trade, - current_time=datetime.now(UTC), - proposed_rate=proposed_limit_rate, - current_profit=current_profit, - exit_tag=exit_reason, - ) + if order_type == "limit" and not skip_custom_exit_price: + custom_exit_price = strategy_safe_wrapper( + self.strategy.custom_exit_price, default_retval=proposed_limit_rate + )( + pair=trade.pair, + trade=trade, + current_time=datetime.now(UTC), + proposed_rate=proposed_limit_rate, + current_profit=current_profit, + exit_tag=exit_reason, + ) limit = self.get_valid_price(custom_exit_price, proposed_limit_rate) # First cancelling stoploss on exchange ... - trade = self.cancel_stoploss_on_exchange(trade) - - order_type = ordertype or self.strategy.order_types[exit_type] - if exit_check.exit_type == ExitType.EMERGENCY_EXIT: - # Emergency sells (default to market!) - order_type = self.strategy.order_types.get("emergency_exit", "market") + trade = self.cancel_stoploss_on_exchange(trade, allow_nonblocking=True) amount = self._safe_exit_amount(trade, trade.pair, sub_trade_amt or trade.amount) time_in_force = self.strategy.order_time_in_force["exit"] @@ -2121,7 +2136,7 @@ class FreqtradeBot(LoggingMixin): return False try: - # Execute sell and update trade record + # Execute exit and update trade record order = self.exchange.create_order( pair=trade.pair, ordertype=order_type, @@ -2131,6 +2146,7 @@ class FreqtradeBot(LoggingMixin): leverage=trade.leverage, reduceOnly=self.trading_mode == TradingMode.FUTURES, time_in_force=time_in_force, + initial_order=False, ) except InsufficientFundsError as e: logger.warning(f"Unable to place order {e}.") @@ -2148,7 +2164,7 @@ class FreqtradeBot(LoggingMixin): trade.exit_reason = exit_reason self._notify_exit(trade, order_type, sub_trade=bool(sub_trade_amt), order=order_obj) - # In case of market sell orders the order can be closed immediately + # In case of market exit orders the order can be closed immediately if order.get("status", "unknown") in ("closed", "expired"): self.update_trade_state(trade, order_obj.order_id, order) Trade.commit() @@ -2378,6 +2394,8 @@ class FreqtradeBot(LoggingMixin): self.strategy.ft_stoploss_adjust( current_rate, trade, datetime.now(UTC), profit, 0, after_fill=True ) + if not trade.is_open: + self.cancel_stoploss_on_exchange(trade) # Updating wallets when order is closed self.wallets.update() return trade diff --git a/freqtrade/mixins/logging_mixin.py b/freqtrade/mixins/logging_mixin.py index 91ad2c25e..2849a186d 100644 --- a/freqtrade/mixins/logging_mixin.py +++ b/freqtrade/mixins/logging_mixin.py @@ -1,6 +1,8 @@ from collections.abc import Callable -from cachetools import TTLCache, cached +from cachetools import cached + +from freqtrade.util import FtTTLCache class LoggingMixin: @@ -18,7 +20,7 @@ class LoggingMixin: """ self.logger = logger self.refresh_period = refresh_period - self._log_cache: TTLCache = TTLCache(maxsize=1024, ttl=self.refresh_period) + self._log_cache: FtTTLCache = FtTTLCache(maxsize=1024, ttl=self.refresh_period) def log_once(self, message: str, logmethod: Callable, force_show: bool = False) -> None: """ diff --git a/freqtrade/optimize/analysis/recursive.py b/freqtrade/optimize/analysis/recursive.py index 9de0ad3ad..eaa8c9508 100644 --- a/freqtrade/optimize/analysis/recursive.py +++ b/freqtrade/optimize/analysis/recursive.py @@ -39,6 +39,7 @@ class RecursiveAnalysis(BaseAnalysis): self.dict_recursive: dict[str, Any] = dict() self.pair_to_used: str | None = None + self._strat_scc: int | None = None # For recursive bias check # analyzes two data frames with processed indicators and shows differences between them. @@ -151,7 +152,8 @@ class RecursiveAnalysis(BaseAnalysis): backtesting._set_strategy(backtesting.strategylist[0]) strat = backtesting.strategy - self._strat_scc = strat.startup_candle_count + if self._strat_scc is None: + self._strat_scc = strat.startup_candle_count if self._strat_scc < 1: raise ConfigurationError( diff --git a/freqtrade/optimize/backtesting.py b/freqtrade/optimize/backtesting.py index 9dc878fae..e3e340a1b 100644 --- a/freqtrade/optimize/backtesting.py +++ b/freqtrade/optimize/backtesting.py @@ -126,6 +126,7 @@ class Backtesting: self.config["dry_run"] = True self.price_pair_prec: dict[str, Series] = {} + self.available_pairs: list[str] = [] self.run_ids: dict[str, str] = {} self.strategylist: list[IStrategy] = [] self.all_bt_content: dict[str, BacktestContentType] = {} @@ -176,7 +177,8 @@ class Backtesting: self._validate_pairlists_for_backtesting() self.dataprovider.add_pairlisthandler(self.pairlists) - self.pairlists.refresh_pairlist() + self.dynamic_pairlist: bool = self.config.get("enable_dynamic_pairlist", False) + self.pairlists.refresh_pairlist(only_first=self.dynamic_pairlist) if len(self.pairlists.whitelist) == 0: raise OperationalException("No pair in whitelist.") @@ -211,7 +213,6 @@ class Backtesting: self._can_short = self.trading_mode != TradingMode.SPOT self._position_stacking: bool = self.config.get("position_stacking", False) self.enable_protections: bool = self.config.get("enable_protections", False) - self.dynamic_pairlist: bool = self.config.get("enable_dynamic_pairlist", False) migrate_data(config, self.exchange) self.init_backtest() @@ -335,10 +336,12 @@ class Backtesting: self.progress.set_new_value(1) self._load_bt_data_detail() self.price_pair_prec = {} + for pair in self.pairlists.whitelist: if pair in data: # Load price precision logic self.price_pair_prec[pair] = get_tick_size_over_time(data[pair]) + self.available_pairs.append(pair) return data, self.timerange def _load_bt_data_detail(self) -> None: @@ -371,6 +374,7 @@ class Backtesting: timerange=self.timerange, startup_candles=0, fail_without_data=True, + fill_up_missing=False, data_format=self.config["dataformat_ohlcv"], candle_type=CandleType.FUNDING_RATE, ) @@ -1587,7 +1591,7 @@ class Backtesting: self.check_abort() if self.dynamic_pairlist and self.pairlists: - self.pairlists.refresh_pairlist() + self.pairlists.refresh_pairlist(pairs=self.available_pairs) pairs = self.pairlists.whitelist # Reset open trade count for this candle diff --git a/freqtrade/persistence/trade_model.py b/freqtrade/persistence/trade_model.py index d898ea55e..85f072747 100644 --- a/freqtrade/persistence/trade_model.py +++ b/freqtrade/persistence/trade_model.py @@ -48,7 +48,7 @@ from freqtrade.leverage import interest from freqtrade.misc import safe_value_fallback from freqtrade.persistence.base import ModelBase, SessionType from freqtrade.persistence.custom_data import CustomDataWrapper, _CustomData -from freqtrade.util import FtPrecise, dt_from_ts, dt_now, dt_ts, dt_ts_none +from freqtrade.util import FtPrecise, dt_from_ts, dt_now, dt_ts, dt_ts_none, round_value logger = logging.getLogger(__name__) @@ -654,9 +654,10 @@ class LocalTrade: ) return ( - f"Trade(id={self.id}, pair={self.pair}, amount={self.amount:.8f}, " - f"is_short={self.is_short or False}, leverage={self.leverage or 1.0}, " - f"open_rate={self.open_rate:.8f}, open_since={open_since})" + f"Trade(id={self.id}, pair={self.pair}, amount={round_value(self.amount, 8)}, " + f"is_short={self.is_short or False}, " + f"leverage={round_value(self.leverage or 1.0, 1)}, " + f"open_rate={round_value(self.open_rate, 8)}, open_since={open_since})" ) def to_json(self, minified: bool = False) -> dict[str, Any]: @@ -755,6 +756,8 @@ class LocalTrade: "precision_mode": self.precision_mode, "precision_mode_price": self.precision_mode_price, "contract_size": self.contract_size, + "nr_of_successful_entries": self.nr_of_successful_entries, + "nr_of_successful_exits": self.nr_of_successful_exits, "has_open_orders": self.has_open_orders, "orders": orders_json, } diff --git a/freqtrade/plot/plotting.py b/freqtrade/plot/plotting.py index 5c43ee404..a27069194 100644 --- a/freqtrade/plot/plotting.py +++ b/freqtrade/plot/plotting.py @@ -75,11 +75,11 @@ def init_plotscript(config, markets: list, startup_candles: int = 0): ) no_trades = False - filename = config.get("exportfilename") + filename = config.get("exportfilename") or config.get("exportdirectory") if config.get("no_trades", False): no_trades = True elif config["trade_source"] == "file": - if not filename.is_dir() and not filename.is_file(): + if not filename or (not filename.is_dir() and not filename.is_file()): logger.warning("Backtest file is missing skipping trades.") no_trades = True try: diff --git a/freqtrade/plugins/pairlist/MarketCapPairList.py b/freqtrade/plugins/pairlist/MarketCapPairList.py index f39bc3255..ecb287090 100644 --- a/freqtrade/plugins/pairlist/MarketCapPairList.py +++ b/freqtrade/plugins/pairlist/MarketCapPairList.py @@ -7,11 +7,10 @@ Provides dynamic pair list based on Market Cap import logging import math -from cachetools import TTLCache - from freqtrade.exceptions import OperationalException from freqtrade.exchange.exchange_types import Tickers from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter, SupportsBacktesting +from freqtrade.util import FtTTLCache from freqtrade.util.coin_gecko import FtCoinGeckoApi @@ -38,7 +37,7 @@ class MarketCapPairList(IPairList): self._max_rank = self._pairlistconfig.get("max_rank", 30) self._refresh_period = self._pairlistconfig.get("refresh_period", 86400) self._categories = self._pairlistconfig.get("categories", []) - self._marketcap_cache: TTLCache = TTLCache(maxsize=1, ttl=self._refresh_period) + self._marketcap_cache: FtTTLCache = FtTTLCache(maxsize=1, ttl=self._refresh_period) _coingecko_config = self._config.get("coingecko", {}) diff --git a/freqtrade/plugins/pairlist/PercentChangePairList.py b/freqtrade/plugins/pairlist/PercentChangePairList.py index 7f09cf77d..3138856c8 100644 --- a/freqtrade/plugins/pairlist/PercentChangePairList.py +++ b/freqtrade/plugins/pairlist/PercentChangePairList.py @@ -10,7 +10,6 @@ import logging from datetime import timedelta from typing import TypedDict -from cachetools import TTLCache from pandas import DataFrame from freqtrade.constants import ListPairsWithTimeframes, PairWithTimeframe @@ -18,7 +17,7 @@ from freqtrade.exceptions import OperationalException from freqtrade.exchange import timeframe_to_minutes, timeframe_to_prev_date from freqtrade.exchange.exchange_types import Ticker, Tickers from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter, SupportsBacktesting -from freqtrade.util import dt_now, format_ms_time +from freqtrade.util import FtTTLCache, dt_now, format_ms_time logger = logging.getLogger(__name__) @@ -47,7 +46,7 @@ class PercentChangePairList(IPairList): self._min_value = self._pairlistconfig.get("min_value", None) self._max_value = self._pairlistconfig.get("max_value", None) self._refresh_period = self._pairlistconfig.get("refresh_period", 1800) - self._pair_cache: TTLCache = TTLCache(maxsize=1, ttl=self._refresh_period) + self._pair_cache: FtTTLCache = FtTTLCache(maxsize=1, ttl=self._refresh_period) self._lookback_days = self._pairlistconfig.get("lookback_days", 0) self._lookback_timeframe = self._pairlistconfig.get("lookback_timeframe", "1d") self._lookback_period = self._pairlistconfig.get("lookback_period", 0) diff --git a/freqtrade/plugins/pairlist/RemotePairList.py b/freqtrade/plugins/pairlist/RemotePairList.py index db32d5a77..7967c2d1c 100644 --- a/freqtrade/plugins/pairlist/RemotePairList.py +++ b/freqtrade/plugins/pairlist/RemotePairList.py @@ -10,7 +10,6 @@ from typing import Any import rapidjson import requests -from cachetools import TTLCache from freqtrade import __version__ from freqtrade.configuration.load_config import CONFIG_PARSE_MODE @@ -18,6 +17,7 @@ from freqtrade.exceptions import OperationalException from freqtrade.exchange.exchange_types import Tickers from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter, SupportsBacktesting from freqtrade.plugins.pairlist.pairlist_helpers import expand_pairlist +from freqtrade.util import FtTTLCache logger = logging.getLogger(__name__) @@ -48,7 +48,7 @@ class RemotePairList(IPairList): self._number_pairs = self._pairlistconfig["number_assets"] self._refresh_period: int = self._pairlistconfig.get("refresh_period", 1800) self._keep_pairlist_on_failure = self._pairlistconfig.get("keep_pairlist_on_failure", True) - self._pair_cache: TTLCache = TTLCache(maxsize=1, ttl=self._refresh_period) + self._pair_cache: FtTTLCache = FtTTLCache(maxsize=1, ttl=self._refresh_period) self._pairlist_url = self._pairlistconfig.get("pairlist_url", "") self._read_timeout = self._pairlistconfig.get("read_timeout", 60) self._bearer_token = self._pairlistconfig.get("bearer_token", "") @@ -159,7 +159,7 @@ class RemotePairList(IPairList): ) self._refresh_period = remote_refresh_period - self._pair_cache = TTLCache(maxsize=1, ttl=remote_refresh_period) + self._pair_cache = FtTTLCache(maxsize=1, ttl=remote_refresh_period) self._init_done = True diff --git a/freqtrade/plugins/pairlist/VolatilityFilter.py b/freqtrade/plugins/pairlist/VolatilityFilter.py index 84056564a..8cd33f2c4 100644 --- a/freqtrade/plugins/pairlist/VolatilityFilter.py +++ b/freqtrade/plugins/pairlist/VolatilityFilter.py @@ -7,7 +7,6 @@ import sys from datetime import timedelta import numpy as np -from cachetools import TTLCache from pandas import DataFrame from freqtrade.constants import ListPairsWithTimeframes @@ -15,7 +14,7 @@ from freqtrade.exceptions import OperationalException from freqtrade.exchange.exchange_types import Tickers from freqtrade.misc import plural from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter, SupportsBacktesting -from freqtrade.util import dt_floor_day, dt_now, dt_ts +from freqtrade.util import FtTTLCache, dt_floor_day, dt_now, dt_ts logger = logging.getLogger(__name__) @@ -38,7 +37,7 @@ class VolatilityFilter(IPairList): self._def_candletype = self._config["candle_type_def"] self._sort_direction: str | None = self._pairlistconfig.get("sort_direction", None) - self._pair_cache: TTLCache = TTLCache(maxsize=1000, ttl=self._refresh_period) + self._pair_cache: FtTTLCache = FtTTLCache(maxsize=1000, ttl=self._refresh_period) candle_limit = self._exchange.ohlcv_candle_limit("1d", self._def_candletype) if self._days < 1: diff --git a/freqtrade/plugins/pairlist/VolumePairList.py b/freqtrade/plugins/pairlist/VolumePairList.py index 7e7fa7601..7d5ce3468 100644 --- a/freqtrade/plugins/pairlist/VolumePairList.py +++ b/freqtrade/plugins/pairlist/VolumePairList.py @@ -8,14 +8,12 @@ import logging from datetime import timedelta from typing import Any, Literal -from cachetools import TTLCache - from freqtrade.constants import ListPairsWithTimeframes from freqtrade.exceptions import OperationalException from freqtrade.exchange import timeframe_to_minutes, timeframe_to_prev_date from freqtrade.exchange.exchange_types import Tickers from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter, SupportsBacktesting -from freqtrade.util import dt_now, format_ms_time +from freqtrade.util import FtTTLCache, dt_now, format_ms_time logger = logging.getLogger(__name__) @@ -43,7 +41,7 @@ class VolumePairList(IPairList): self._min_value = self._pairlistconfig.get("min_value", 0) self._max_value = self._pairlistconfig.get("max_value", None) self._refresh_period = self._pairlistconfig.get("refresh_period", 1800) - self._pair_cache: TTLCache = TTLCache(maxsize=1, ttl=self._refresh_period) + self._pair_cache: FtTTLCache = FtTTLCache(maxsize=1, ttl=self._refresh_period) self._lookback_days = self._pairlistconfig.get("lookback_days", 0) self._lookback_timeframe = self._pairlistconfig.get("lookback_timeframe", "1d") self._lookback_period = self._pairlistconfig.get("lookback_period", 0) diff --git a/freqtrade/plugins/pairlist/rangestabilityfilter.py b/freqtrade/plugins/pairlist/rangestabilityfilter.py index 8ea082658..6a0e730e3 100644 --- a/freqtrade/plugins/pairlist/rangestabilityfilter.py +++ b/freqtrade/plugins/pairlist/rangestabilityfilter.py @@ -5,7 +5,6 @@ Rate of change pairlist filter import logging from datetime import timedelta -from cachetools import TTLCache from pandas import DataFrame from freqtrade.constants import ListPairsWithTimeframes @@ -13,7 +12,7 @@ from freqtrade.exceptions import OperationalException from freqtrade.exchange.exchange_types import Tickers from freqtrade.misc import plural from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter, SupportsBacktesting -from freqtrade.util import dt_floor_day, dt_now, dt_ts +from freqtrade.util import FtTTLCache, dt_floor_day, dt_now, dt_ts logger = logging.getLogger(__name__) @@ -32,7 +31,7 @@ class RangeStabilityFilter(IPairList): self._def_candletype = self._config["candle_type_def"] self._sort_direction: str | None = self._pairlistconfig.get("sort_direction", None) - self._pair_cache: TTLCache = TTLCache(maxsize=1000, ttl=self._refresh_period) + self._pair_cache: FtTTLCache = FtTTLCache(maxsize=1000, ttl=self._refresh_period) candle_limit = self._exchange.ohlcv_candle_limit("1d", self._def_candletype) if self._days < 1: diff --git a/freqtrade/plugins/pairlistmanager.py b/freqtrade/plugins/pairlistmanager.py index 9056d842e..8f7eff61f 100644 --- a/freqtrade/plugins/pairlistmanager.py +++ b/freqtrade/plugins/pairlistmanager.py @@ -5,7 +5,7 @@ PairList manager class import logging from functools import partial -from cachetools import LRUCache, TTLCache, cached +from cachetools import LRUCache, cached from freqtrade.constants import Config, ListPairsWithTimeframes from freqtrade.data.dataprovider import DataProvider @@ -17,6 +17,7 @@ from freqtrade.mixins import LoggingMixin from freqtrade.plugins.pairlist.IPairList import IPairList, SupportsBacktesting from freqtrade.plugins.pairlist.pairlist_helpers import expand_pairlist from freqtrade.resolvers import PairListResolver +from freqtrade.util import FtTTLCache logger = logging.getLogger(__name__) @@ -129,12 +130,24 @@ class PairListManager(LoggingMixin): """List of short_desc for each Pairlist Handler""" return [{p.name: p.short_desc()} for p in self._pairlist_handlers] - @cached(TTLCache(maxsize=1, ttl=1800)) + @cached(FtTTLCache(maxsize=1, ttl=1800)) def _get_cached_tickers(self) -> Tickers: return self._exchange.get_tickers() - def refresh_pairlist(self) -> None: - """Run pairlist through all configured Pairlist Handlers.""" + def refresh_pairlist(self, only_first: bool = False, pairs: list[str] | None = None) -> None: + """ + Run pairlist through all configured Pairlist Handlers. + + :param only_first: If True, only run the first PairList handler (the generator) + and skip all subsequent filters. Used during backtesting startup to ensure + historic data is loaded for the complete universe of pairs that the + generator can produce (even if later filters would reduce the list size). + Prevents missing data when a filter returns a variable number of pairs + across refresh cycles. + :param pairs: Optional list of pairs to intersect with the generated pairlist. + Only pairs present both in the generated list and this parameter are kept. + Used in backtesting to filter out pairs with no available data. + """ # Tickers should be cached to avoid calling the exchange on each call. tickers: dict = {} if self._tickers_needed: @@ -143,10 +156,15 @@ class PairListManager(LoggingMixin): # Generate the pairlist with first Pairlist Handler in the chain pairlist = self._pairlist_handlers[0].gen_pairlist(tickers) - # Process all Pairlist Handlers in the chain - # except for the first one, which is the generator. - for pairlist_handler in self._pairlist_handlers[1:]: - pairlist = pairlist_handler.filter_pairlist(pairlist, tickers) + # Optional intersection with an explicit list of pairs (used in backtesting) + if pairs is not None: + pairlist = [p for p in pairlist if p in pairs] + + if not only_first: + # Process all Pairlist Handlers in the chain + # except for the first one, which is the generator. + for pairlist_handler in self._pairlist_handlers[1:]: + pairlist = pairlist_handler.filter_pairlist(pairlist, tickers) # Validation against blacklist happens after the chain of Pairlist Handlers # to ensure blacklist is respected. diff --git a/freqtrade/rpc/api_server/api_download_data.py b/freqtrade/rpc/api_server/api_download_data.py index 6e446b063..b755474c9 100644 --- a/freqtrade/rpc/api_server/api_download_data.py +++ b/freqtrade/rpc/api_server/api_download_data.py @@ -63,6 +63,8 @@ def pairlists_evaluate( config_loc["timeframes"] = payload.timeframes config_loc["erase"] = payload.erase config_loc["download_trades"] = payload.download_trades + if payload.candle_types is not None: + config_loc["candle_types"] = payload.candle_types handleExchangePayload(payload, config_loc) diff --git a/freqtrade/rpc/api_server/api_schemas.py b/freqtrade/rpc/api_server/api_schemas.py index 601c52392..0dcd95edf 100644 --- a/freqtrade/rpc/api_server/api_schemas.py +++ b/freqtrade/rpc/api_server/api_schemas.py @@ -340,6 +340,8 @@ class TradeSchema(BaseModel): min_rate: float | None = None max_rate: float | None = None + nr_of_successful_entries: int + nr_of_successful_exits: int has_open_orders: bool orders: list[OrderSchema] @@ -424,6 +426,7 @@ class ForceExitPayload(BaseModel): tradeid: str | int ordertype: OrderTypeValues | None = None amount: float | None = None + price: float | None = None class BlacklistPayload(BaseModel): @@ -504,6 +507,7 @@ class DownloadDataPayload(ExchangeModePayloadMixin, BaseModel): timerange: str | None = None erase: bool = False download_trades: bool = False + candle_types: list[str] | None = None @model_validator(mode="before") def check_mutually_exclusive(cls, values): diff --git a/freqtrade/rpc/api_server/api_v1.py b/freqtrade/rpc/api_server/api_v1.py index dc9682b09..39c8e9821 100644 --- a/freqtrade/rpc/api_server/api_v1.py +++ b/freqtrade/rpc/api_server/api_v1.py @@ -91,7 +91,9 @@ logger = logging.getLogger(__name__) # 2.41: Add download-data endpoint # 2.42: Add /pair_history endpoint with live data # 2.43: Add /profit_all endpoint -API_VERSION = 2.43 +# 2.44: Add candle_types parameter to download-data endpoint +# 2.45: Add price to forceexit endpoint +API_VERSION = 2.45 # Public API, requires no auth. router_public = APIRouter() @@ -324,7 +326,9 @@ def force_entry(payload: ForceEnterPayload, rpc: RPC = Depends(get_rpc)): @router.post("/forcesell", response_model=ResultMsg, tags=["trading"]) def forceexit(payload: ForceExitPayload, rpc: RPC = Depends(get_rpc)): ordertype = payload.ordertype.value if payload.ordertype else None - return rpc._rpc_force_exit(str(payload.tradeid), ordertype, amount=payload.amount) + return rpc._rpc_force_exit( + str(payload.tradeid), ordertype, amount=payload.amount, price=payload.price + ) @router.get("/blacklist", response_model=BlacklistResponse, tags=["info", "pairlist"]) diff --git a/freqtrade/rpc/api_server/webserver_bgwork.py b/freqtrade/rpc/api_server/webserver_bgwork.py index 75aadb78e..be17f7a94 100644 --- a/freqtrade/rpc/api_server/webserver_bgwork.py +++ b/freqtrade/rpc/api_server/webserver_bgwork.py @@ -37,7 +37,7 @@ class ApiBG: # Generic background jobs - # TODO: Change this to TTLCache + # TODO: Change this to FtTTLCache jobs: dict[str, JobsContainer] = {} # Pairlist evaluate things pairlist_running: bool = False diff --git a/freqtrade/rpc/fiat_convert.py b/freqtrade/rpc/fiat_convert.py index f4589a7da..16d64dd50 100644 --- a/freqtrade/rpc/fiat_convert.py +++ b/freqtrade/rpc/fiat_convert.py @@ -7,11 +7,11 @@ import logging from datetime import datetime from typing import Any -from cachetools import TTLCache from requests.exceptions import RequestException from freqtrade.constants import SUPPORTED_FIAT, Config from freqtrade.mixins.logging_mixin import LoggingMixin +from freqtrade.util import FtTTLCache from freqtrade.util.coin_gecko import FtCoinGeckoApi @@ -54,7 +54,7 @@ class CryptoToFiatConverter(LoggingMixin): def __init__(self, config: Config) -> None: # Timeout: 6h - self._pair_price: TTLCache = TTLCache(maxsize=500, ttl=6 * 60 * 60) + self._pair_price: FtTTLCache = FtTTLCache(maxsize=500, ttl=6 * 60 * 60) _coingecko_config = config.get("coingecko", {}) self._coingecko = FtCoinGeckoApi( diff --git a/freqtrade/rpc/rpc.py b/freqtrade/rpc/rpc.py index 075e6eb0e..81bb52ce5 100644 --- a/freqtrade/rpc/rpc.py +++ b/freqtrade/rpc/rpc.py @@ -47,6 +47,7 @@ from freqtrade.util import ( dt_ts, dt_ts_def, format_date, + format_pct, shorten_date, ) from freqtrade.wallets import PositionWallet, Wallet @@ -302,7 +303,7 @@ class RPC: fiat_total_profit_sum = nan for trade in self._rpc_trade_status(): # Format profit as a string with the right sign - profit = f"{trade['profit_ratio']:.2%}" + profit = f"{format_pct(trade['profit_ratio'])}" fiat_profit = trade.get("profit_fiat", None) if fiat_profit is None or isnan(fiat_profit): fiat_profit = trade.get("profit_abs", 0.0) @@ -939,7 +940,11 @@ class RPC: return {"status": "Reloaded from orders from exchange"} def __exec_force_exit( - self, trade: Trade, ordertype: str | None, amount: float | None = None + self, + trade: Trade, + ordertype: str | None, + amount: float | None = None, + price: float | None = None, ) -> bool: # Check if there is there are open orders trade_entry_cancelation_registry = [] @@ -963,8 +968,13 @@ class RPC: # Order cancellation failed, so we can't exit. return False # Get current rate and execute sell - current_rate = self._freqtrade.exchange.get_rate( - trade.pair, side="exit", is_short=trade.is_short, refresh=True + + current_rate = ( + self._freqtrade.exchange.get_rate( + trade.pair, side="exit", is_short=trade.is_short, refresh=True + ) + if ordertype == "market" or price is None + else price ) exit_check = ExitCheckTuple(exit_type=ExitType.FORCE_EXIT) order_type = ordertype or self._freqtrade.strategy.order_types.get( @@ -982,18 +992,28 @@ class RPC: sub_amount = amount self._freqtrade.execute_trade_exit( - trade, current_rate, exit_check, ordertype=order_type, sub_trade_amt=sub_amount + trade, + current_rate, + exit_check, + ordertype=order_type, + sub_trade_amt=sub_amount, + skip_custom_exit_price=price is not None and ordertype == "limit", ) return True return False def _rpc_force_exit( - self, trade_id: str, ordertype: str | None = None, *, amount: float | None = None + self, + trade_id: str, + ordertype: str | None = None, + *, + amount: float | None = None, + price: float | None = None, ) -> dict[str, str]: """ Handler for forceexit . - Sells the given trade at current price + exits the given trade. Uses current price if price is None. """ if self._freqtrade.state == State.STOPPED: @@ -1023,7 +1043,7 @@ class RPC: logger.warning("force_exit: Invalid argument received") raise RPCException("invalid argument") - result = self.__exec_force_exit(trade, ordertype, amount) + result = self.__exec_force_exit(trade, ordertype, amount, price) Trade.commit() self._freqtrade.wallets.update() if not result: diff --git a/freqtrade/rpc/telegram.py b/freqtrade/rpc/telegram.py index 7b3006b40..151d6daec 100644 --- a/freqtrade/rpc/telegram.py +++ b/freqtrade/rpc/telegram.py @@ -48,6 +48,7 @@ from freqtrade.util import ( fmt_coin, fmt_coin2, format_date, + format_pct, round_value, ) @@ -481,7 +482,7 @@ class Telegram(RPCHandler): if is_final_exit: profit_prefix = "Sub " cp_extra = ( - f"*Final Profit:* `{msg['final_profit_ratio']:.2%} " + f"*Final Profit:* `{format_pct(msg['final_profit_ratio'])} " f"({msg['cumulative_profit']:.8f} {msg['quote_currency']}{cp_fiat})`\n" ) else: @@ -497,7 +498,7 @@ class Telegram(RPCHandler): f"{exit_wording} {msg['pair']} (#{msg['trade_id']})\n" f"{self._add_analyzed_candle(msg['pair'])}" f"*{f'{profit_prefix}Profit' if is_fill else f'Unrealized {profit_prefix}Profit'}:* " - f"`{msg['profit_ratio']:.2%}{profit_extra}`\n" + f"`{format_pct(msg['profit_ratio'])}{profit_extra}`\n" f"{cp_extra}" f"{enter_tag}" f"*Exit Reason:* `{msg['exit_reason']}`\n" @@ -670,14 +671,14 @@ class Telegram(RPCHandler): # TODO: This calculation ignores fees. price_to_1st_entry = (cur_entry_average - first_avg) / first_avg if is_open: - lines.append("({})".format(dt_humanize_delta(order["order_filled_date"]))) + lines.append(f"({dt_humanize_delta(order['order_filled_date'])})") lines.append( f"*Amount:* {round_value(cur_entry_amount, 8)} " f"({fmt_coin(order['cost'], quote_currency)})" ) lines.append( f"*Average {wording} Price:* {round_value(cur_entry_average, 8)} " - f"({price_to_1st_entry:.2%} from 1st entry rate)" + f"({format_pct(price_to_1st_entry)} from 1st entry rate)" ) lines.append(f"*Order Filled:* {order['order_filled_date']}") @@ -701,7 +702,7 @@ class Telegram(RPCHandler): results = self._rpc._rpc_trade_status(trade_ids=trade_ids) for r in results: - lines = ["*Order List for Trade #*`{trade_id}`"] + lines = [f"*Order List for Trade #*`{r['trade_id']}`"] lines_detail = self._prepare_order_details( r["orders"], r["quote_currency"], r["is_open"] @@ -720,10 +721,10 @@ class Telegram(RPCHandler): if (len(msg) + len(line) + 1) < MAX_MESSAGE_LENGTH: msg += line + "\n" else: - await self._send_msg(msg.format(**r)) - msg = "*Order List for Trade #*`{trade_id}` - continued\n" + line + "\n" + await self._send_msg(msg) + msg = f"*Order List for Trade #*`{r['trade_id']}` - continued\n" + line + "\n" - await self._send_msg(msg.format(**r)) + await self._send_msg(msg) @authorized_only async def _status(self, update: Update, context: CallbackContext) -> None: @@ -757,15 +758,7 @@ class Telegram(RPCHandler): max_entries = self._config.get("max_entry_position_adjustment", -1) for r in results: r["open_date_hum"] = dt_humanize_delta(r["open_date"]) - r["num_entries"] = len([o for o in r["orders"] if o["ft_is_entry"]]) - r["num_exits"] = len( - [ - o - for o in r["orders"] - if not o["ft_is_entry"] and not o["ft_order_side"] == "stoploss" - ] - ) - r["exit_reason"] = r.get("exit_reason", "") + r["stake_amount_r"] = fmt_coin(r["stake_amount"], r["quote_currency"]) r["max_stake_amount_r"] = fmt_coin( r["max_stake_amount"] or r["stake_amount"], r["quote_currency"] @@ -774,26 +767,25 @@ class Telegram(RPCHandler): r["realized_profit_r"] = fmt_coin(r["realized_profit"], r["quote_currency"]) r["total_profit_abs_r"] = fmt_coin(r["total_profit_abs"], r["quote_currency"]) lines = [ - "*Trade ID:* `{trade_id}`" + (" `(since {open_date_hum})`" if r["is_open"] else ""), - "*Current Pair:* {pair}", + f"*Trade ID:* `{r['trade_id']}`" + + (f" `(since {r['open_date_hum']})`" if r["is_open"] else ""), + f"*Current Pair:* {r['pair']}", ( f"*Direction:* {'`Short`' if r.get('is_short') else '`Long`'}" - + " ` ({leverage}x)`" - if r.get("leverage") - else "" + + (f" ` ({r['leverage']}x)`" if r.get("leverage") else "") ), - "*Amount:* `{amount} ({stake_amount_r})`", - "*Total invested:* `{max_stake_amount_r}`" if position_adjust else "", - "*Enter Tag:* `{enter_tag}`" if r["enter_tag"] else "", - "*Exit Reason:* `{exit_reason}`" if r["exit_reason"] else "", + f"*Amount:* `{r['amount']} ({r['stake_amount_r']})`", + f"*Total invested:* `{r['max_stake_amount_r']}`" if position_adjust else "", + f"*Enter Tag:* `{r['enter_tag']}`" if r["enter_tag"] else "", + f"*Exit Reason:* `{r['exit_reason']}`" if r.get("exit_reason") else "", ] if position_adjust: max_buy_str = f"/{max_entries + 1}" if (max_entries > 0) else "" lines.extend( [ - "*Number of Entries:* `{num_entries}" + max_buy_str + "`", - "*Number of Exits:* `{num_exits}`", + f"*Number of Entries:* `{r['nr_of_successful_entries']}{max_buy_str}`", + f"*Number of Exits:* `{r['nr_of_successful_exits']}`", ] ) @@ -801,53 +793,62 @@ class Telegram(RPCHandler): [ f"*Open Rate:* `{round_value(r['open_rate'], 8)}`", f"*Close Rate:* `{round_value(r['close_rate'], 8)}`" if r["close_rate"] else "", - "*Open Date:* `{open_date}`", - "*Close Date:* `{close_date}`" if r["close_date"] else "", + f"*Open Date:* `{r['open_date']}`", + f"*Close Date:* `{r['close_date']}`" if r["close_date"] else "", ( f" \n*Current Rate:* `{round_value(r['current_rate'], 8)}`" if r["is_open"] else "" ), ("*Unrealized Profit:* " if r["is_open"] else "*Close Profit: *") - + "`{profit_ratio:.2%}` `({profit_abs_r})`", + + f"`{format_pct(r['profit_ratio'])}` `({r['profit_abs_r']})`", ] ) if r["is_open"]: - if r.get("realized_profit"): - lines.extend( - [ - "*Realized Profit:* `{realized_profit_ratio:.2%} " - "({realized_profit_r})`", - "*Total Profit:* `{total_profit_ratio:.2%} ({total_profit_abs_r})`", - ] + if ( + r.get("realized_profit") is not None + and r.get("realized_profit_ratio") is not None + ): + lines.append( + f"*Realized Profit:* `{format_pct(r['realized_profit_ratio'])} " + f"({r['realized_profit_r']})`" + ) + if r.get("total_profit_ratio") is not None: + lines.append( + f"*Total Profit:* `{format_pct(r['total_profit_ratio'])} " + f"({r['total_profit_abs_r']})`" ) # Append empty line to improve readability lines.append(" ") + # Adding liquidation only if it is not None + if liquidation := r.get("liquidation_price"): + lines.append(f"*Liquidation:* `{round_value(liquidation, 8)}`") + if ( r["stop_loss_abs"] != r["initial_stop_loss_abs"] and r["initial_stop_loss_ratio"] is not None ): # Adding initial stoploss only if it is different from stoploss lines.append( - "*Initial Stoploss:* `{initial_stop_loss_abs:.8f}` " - "`({initial_stop_loss_ratio:.2%})`" + f"*Initial Stoploss:* `{r['initial_stop_loss_abs']:.8f}` " + f"`({format_pct(r['initial_stop_loss_ratio'])})`" ) # Adding stoploss and stoploss percentage only if it is not None lines.append( f"*Stoploss:* `{round_value(r['stop_loss_abs'], 8)}` " - + ("`({stop_loss_ratio:.2%})`" if r["stop_loss_ratio"] else "") + + (f"`({format_pct(r['stop_loss_ratio'])})`" if r["stop_loss_ratio"] else "") ) lines.append( f"*Stoploss distance:* `{round_value(r['stoploss_current_dist'], 8)}` " - "`({stoploss_current_dist_ratio:.2%})`" + f"`({format_pct(r['stoploss_current_dist_ratio'])})`" ) - if r.get("open_orders"): + if open_orders := r.get("open_orders"): lines.append( - "*Open Order:* `{open_orders}`" - + ("- `{exit_order_status}`" if r["exit_order_status"] else "") + f"*Open Order:* `{open_orders}`" + + (f"- `{r['exit_order_status']}`" if r["exit_order_status"] else "") ) await self.__send_status_msg(lines, r) @@ -863,10 +864,10 @@ class Telegram(RPCHandler): if (len(msg) + len(line) + 1) < MAX_MESSAGE_LENGTH: msg += line + "\n" else: - await self._send_msg(msg.format(**r)) - msg = "*Trade ID:* `{trade_id}` - continued\n" + line + "\n" + await self._send_msg(msg) + msg = f"*Trade ID:* `{r['trade_id']}` - continued\n" + line + "\n" - await self._send_msg(msg.format(**r)) + await self._send_msg(msg) @authorized_only async def _status_table(self, update: Update, context: CallbackContext) -> None: @@ -953,7 +954,7 @@ class Telegram(RPCHandler): f"{period['date']:{val.dateformat}} ({period['trade_count']})", f"{fmt_coin(period['abs_profit'], stats['stake_currency'])}", f"{period['fiat_value']:.2f} {stats['fiat_display_currency']}", - f"{period['rel_profit']:.2%}", + f"{format_pct(period['rel_profit'])}", ] for period in stats["data"] ], @@ -1069,7 +1070,7 @@ class Telegram(RPCHandler): markdown_msg = ( f"{closed_roi_label}\n" f"∙ `{fmt_coin(profit_closed_coin, stake_cur)} " - f"({profit_closed_ratio_mean:.2%}) " + f"({format_pct(profit_closed_ratio_mean)}) " f"({profit_closed_percent} \N{GREEK CAPITAL LETTER SIGMA}%)`\n" f"{fiat_closed_trades}" ) @@ -1082,7 +1083,7 @@ class Telegram(RPCHandler): markdown_msg += ( f"{all_roi_label}\n" f"∙ `{fmt_coin(profit_all_coin, stake_cur)} " - f"({profit_all_ratio_mean:.2%}) " + f"({format_pct(profit_all_ratio_mean)}) " f"({profit_all_percent} \N{GREEK CAPITAL LETTER SIGMA}%)`\n" f"{fiat_all_trades}" f"*Total Trade Count:* `{trade_count}`\n" @@ -1091,7 +1092,7 @@ class Telegram(RPCHandler): f"`{first_trade_date}`\n" f"*Latest Trade opened:* `{latest_trade_date}`\n" f"*Win / Loss:* `{stats['winning_trades']} / {stats['losing_trades']}`\n" - f"*Winrate:* `{winrate:.2%}`\n" + f"*Winrate:* `{format_pct(winrate)}`\n" f"*Expectancy (Ratio):* `{expectancy:.2f} ({expectancy_ratio:.2f})`" ) @@ -1099,16 +1100,16 @@ class Telegram(RPCHandler): markdown_msg += ( f"\n*Avg. Duration:* `{avg_duration}`\n" f"*Best Performing:* `{best_pair}: {best_pair_profit_abs} " - f"({best_pair_profit_ratio:.2%})`\n" + f"({format_pct(best_pair_profit_ratio)})`\n" f"*Trading volume:* `{fmt_coin(stats['trading_volume'], stake_cur)}`\n" f"*Profit factor:* `{stats['profit_factor']:.2f}`\n" - f"*Max Drawdown:* `{stats['max_drawdown']:.2%} " + f"*Max Drawdown:* `{format_pct(stats['max_drawdown'])} " f"({fmt_coin(stats['max_drawdown_abs'], stake_cur)})`\n" f" from `{stats['max_drawdown_start']} " f"({fmt_coin(stats['drawdown_high'], stake_cur)})`\n" f" to `{stats['max_drawdown_end']} " f"({fmt_coin(stats['drawdown_low'], stake_cur)})`\n" - f"*Current Drawdown:* `{stats['current_drawdown']:.2%} " + f"*Current Drawdown:* `{format_pct(stats['current_drawdown'])} " f"({fmt_coin(stats['current_drawdown_abs'], stake_cur)})`\n" f" from `{stats['current_drawdown_start']} " f"({fmt_coin(stats['current_drawdown_high'], stake_cur)})`\n" @@ -1561,7 +1562,7 @@ class Telegram(RPCHandler): dt_humanize_delta(dt_from_ts(trade["close_timestamp"])), f"{trade['pair']} (#{trade['trade_id']}" f"{(' ' + ('S' if trade['is_short'] else 'L')) if nonspot else ''})", - f"{(trade['close_profit']):.2%} ({trade['close_profit_abs']})", + f"{format_pct(trade['close_profit'])} ({trade['close_profit_abs']})", ] for trade in trades["trades"] ], @@ -1625,7 +1626,7 @@ class Telegram(RPCHandler): stat_line = ( f"{i + 1}.\t {trade['pair']}\t" f"{fmt_coin(trade['profit_abs'], self._config['stake_currency'])} " - f"({trade['profit_ratio']:.2%}) " + f"({format_pct(trade['profit_ratio'])}) " f"({trade['count']})\n" ) @@ -1662,7 +1663,7 @@ class Telegram(RPCHandler): stat_line = ( f"{i + 1}.\t `{trade['enter_tag']}\t" f"{fmt_coin(trade['profit_abs'], self._config['stake_currency'])} " - f"({trade['profit_ratio']:.2%}) " + f"({format_pct(trade['profit_ratio'])}) " f"({trade['count']})`\n" ) @@ -1699,7 +1700,7 @@ class Telegram(RPCHandler): stat_line = ( f"{i + 1}.\t `{trade['exit_reason']}\t" f"{fmt_coin(trade['profit_abs'], self._config['stake_currency'])} " - f"({trade['profit_ratio']:.2%}) " + f"({format_pct(trade['profit_ratio'])}) " f"({trade['count']})`\n" ) @@ -1736,7 +1737,7 @@ class Telegram(RPCHandler): stat_line = ( f"{i + 1}.\t `{trade['mix_tag']}\t" f"{fmt_coin(trade['profit_abs'], self._config['stake_currency'])} " - f"({trade['profit_ratio']:.2%}) " + f"({format_pct(trade['profit_ratio'])}) " f"({trade['count']})`\n" ) diff --git a/freqtrade/strategy/informative_decorator.py b/freqtrade/strategy/informative_decorator.py index ac9a2a1ad..7c7edb973 100644 --- a/freqtrade/strategy/informative_decorator.py +++ b/freqtrade/strategy/informative_decorator.py @@ -104,8 +104,11 @@ def _create_and_merge_informative_pair( ): asset = inf_data.asset or "" timeframe = inf_data.timeframe + timeframe1 = inf_data.timeframe fmt = inf_data.fmt candle_type = inf_data.candle_type + if candle_type == CandleType.FUNDING_RATE: + timeframe1 = strategy.dp.get_funding_rate_timeframe() config = strategy.config @@ -132,10 +135,10 @@ def _create_and_merge_informative_pair( fmt = "{base}_{quote}_" + fmt # Informatives of other pairs inf_metadata = {"pair": asset, "timeframe": timeframe} - inf_dataframe = strategy.dp.get_pair_dataframe(asset, timeframe, candle_type) + inf_dataframe = strategy.dp.get_pair_dataframe(asset, timeframe1, candle_type) if inf_dataframe.empty: raise ValueError( - f"Informative dataframe for ({asset}, {timeframe}, {candle_type}) is empty. " + f"Informative dataframe for ({asset}, {timeframe1}, {candle_type}) is empty. " "Can't populate informative indicators." ) inf_dataframe = populate_indicators_fn(strategy, inf_dataframe, inf_metadata) @@ -163,7 +166,7 @@ def _create_and_merge_informative_pair( dataframe, inf_dataframe, strategy.timeframe, - timeframe, + timeframe1, ffill=inf_data.ffill, append_timeframe=False, date_column=date_column, diff --git a/freqtrade/strategy/interface.py b/freqtrade/strategy/interface.py index 7ac196dba..34857c71e 100644 --- a/freqtrade/strategy/interface.py +++ b/freqtrade/strategy/interface.py @@ -1718,7 +1718,7 @@ class IStrategy(ABC, HyperStrategyMixin): timeout_unit = self.config.get("unfilledtimeout", {}).get("unit", "minutes") timeout_kwargs = {timeout_unit: -timeout} timeout_threshold = current_time + timedelta(**timeout_kwargs) - timedout = order.status == "open" and order.order_date_utc < timeout_threshold + timedout = order.status == "open" and order.order_date_utc <= timeout_threshold if timedout: return True time_method = ( diff --git a/freqtrade/templates/base_config.json.j2 b/freqtrade/templates/base_config.json.j2 index 86a717a40..6fa74e949 100644 --- a/freqtrade/templates/base_config.json.j2 +++ b/freqtrade/templates/base_config.json.j2 @@ -34,7 +34,7 @@ "bids_to_ask_delta": 1 } }, - "exit_pricing":{ + "exit_pricing": { "price_side": "same", "use_order_book": true, "order_book_top": 1 diff --git a/freqtrade/util/__init__.py b/freqtrade/util/__init__.py index 98fda93cd..06deb3ce0 100644 --- a/freqtrade/util/__init__.py +++ b/freqtrade/util/__init__.py @@ -18,9 +18,11 @@ from freqtrade.util.formatters import ( fmt_coin, fmt_coin2, format_duration, + format_pct, round_value, ) from freqtrade.util.ft_precise import FtPrecise +from freqtrade.util.ft_ttlcache import FtTTLCache from freqtrade.util.measure_time import MeasureTime from freqtrade.util.periodic_cache import PeriodicCache from freqtrade.util.progress_tracker import ( # noqa F401 @@ -44,6 +46,7 @@ __all__ = [ "format_date", "format_ms_time", "format_ms_time_det", + "format_pct", "get_dry_run_wallet", "FtPrecise", "PeriodicCache", @@ -57,4 +60,5 @@ __all__ = [ "print_rich_table", "print_df_rich_table", "CustomProgress", + "FtTTLCache", ] diff --git a/freqtrade/util/datetime_helpers.py b/freqtrade/util/datetime_helpers.py index e2390105d..b6535db5d 100644 --- a/freqtrade/util/datetime_helpers.py +++ b/freqtrade/util/datetime_helpers.py @@ -90,15 +90,16 @@ def dt_humanize_delta(dt: datetime): return humanize.naturaltime(dt) -def format_date(date: datetime | None) -> str: +def format_date(date: datetime | None, fallback: str = "") -> str: """ Return a formatted date string. Returns an empty string if date is None. :param date: datetime to format + :param fallback: value to return if date is None """ if date: return date.strftime(DATETIME_PRINT_FORMAT) - return "" + return fallback def format_ms_time(date: int | float) -> str: diff --git a/freqtrade/util/formatters.py b/freqtrade/util/formatters.py index caac5a68b..7ca028984 100644 --- a/freqtrade/util/formatters.py +++ b/freqtrade/util/formatters.py @@ -1,5 +1,7 @@ from datetime import timedelta +from numpy import isnan + from freqtrade.constants import DECIMAL_PER_COIN_FALLBACK, DECIMALS_PER_COIN @@ -21,7 +23,7 @@ def strip_trailing_zeros(value: str) -> str: return value.rstrip("0").rstrip(".") -def round_value(value: float, decimals: int, keep_trailing_zeros=False) -> str: +def round_value(value: float | None, decimals: int, keep_trailing_zeros=False) -> str: """ Round value to given decimals :param value: Value to be rounded @@ -29,6 +31,8 @@ def round_value(value: float, decimals: int, keep_trailing_zeros=False) -> str: :param keep_trailing_zeros: Keep trailing zeros "222.200" vs. "222.2" :return: Rounded value as string """ + if value is None or isnan(value): + return "N/A" val = f"{value:.{decimals}f}" if not keep_trailing_zeros: val = strip_trailing_zeros(val) @@ -80,3 +84,15 @@ def format_duration(td: timedelta) -> str: h, r = divmod(td.seconds, 3600) m, _ = divmod(r, 60) return f"{d}d {h:02d}:{m:02d}" + + +def format_pct(value: float | None) -> str: + """ + Format a float value as percentage string with 2 decimals + None and NaN values are formatted as "N/A" + :param value: Float value to format + :return: Formatted percentage string + """ + if value is None or isnan(value): + return "N/A" + return f"{value:.2%}" diff --git a/freqtrade/util/ft_ttlcache.py b/freqtrade/util/ft_ttlcache.py new file mode 100644 index 000000000..410184477 --- /dev/null +++ b/freqtrade/util/ft_ttlcache.py @@ -0,0 +1,12 @@ +import time + +from cachetools import TTLCache + + +class FtTTLCache(TTLCache): + """ + A TTLCache with a different default timer to allow for easier mocking in tests. + """ + + def __init__(self, maxsize, ttl, timer=time.time, getsizeof=None): + super().__init__(maxsize=maxsize, ttl=ttl, timer=timer, getsizeof=getsizeof) diff --git a/freqtrade/util/measure_time.py b/freqtrade/util/measure_time.py index baa94f062..85fadf1e8 100644 --- a/freqtrade/util/measure_time.py +++ b/freqtrade/util/measure_time.py @@ -2,7 +2,7 @@ import logging import time from collections.abc import Callable -from cachetools import TTLCache +from freqtrade.util import FtTTLCache logger = logging.getLogger(__name__) @@ -27,7 +27,7 @@ class MeasureTime: """ self._callback = callback self._time_limit = time_limit - self.__cache: TTLCache = TTLCache(maxsize=1, ttl=ttl) + self.__cache: FtTTLCache = FtTTLCache(maxsize=1, ttl=ttl) def __enter__(self): self._start = time.time() diff --git a/freqtrade/util/migrations/__init__.py b/freqtrade/util/migrations/__init__.py index 8a9f10949..50f7dff01 100644 --- a/freqtrade/util/migrations/__init__.py +++ b/freqtrade/util/migrations/__init__.py @@ -1,12 +1,23 @@ from freqtrade.exchange import Exchange -from freqtrade.util.migrations.binance_mig import migrate_binance_futures_data +from freqtrade.util.migrations.binance_mig import ( + migrate_binance_futures_data, + migrate_binance_futures_names, +) from freqtrade.util.migrations.funding_rate_mig import migrate_funding_fee_timeframe -def migrate_data(config, exchange: Exchange | None = None): +def migrate_data(config, exchange: Exchange | None = None) -> None: """ Migrate persisted data from old formats to new formats """ migrate_binance_futures_data(config) migrate_funding_fee_timeframe(config, exchange) + + +def migrate_live_content(config, exchange: Exchange | None = None) -> None: + """ + Migrate database content from old formats to new formats + Used for dry/live mode. + """ + migrate_binance_futures_names(config) diff --git a/freqtrade/util/migrations/binance_mig.py b/freqtrade/util/migrations/binance_mig.py index 248d5810d..b85ee721d 100644 --- a/freqtrade/util/migrations/binance_mig.py +++ b/freqtrade/util/migrations/binance_mig.py @@ -14,6 +14,10 @@ logger = logging.getLogger(__name__) def migrate_binance_futures_names(config: Config): + """ + Migrate binance futures names in both database and data files. + This is needed because ccxt naming changed from "BTC/USDT" to "BTC/USDT:USDT" + """ if not ( config.get("trading_mode", TradingMode.SPOT) == TradingMode.FUTURES and config["exchange"]["name"] == "binance" diff --git a/ft_client/freqtrade_client/__init__.py b/ft_client/freqtrade_client/__init__.py index 9182ce800..d9479dba0 100644 --- a/ft_client/freqtrade_client/__init__.py +++ b/ft_client/freqtrade_client/__init__.py @@ -1,7 +1,7 @@ from freqtrade_client.ft_rest_client import FtRestClient -__version__ = "2025.11-dev" +__version__ = "2025.12-dev" if "dev" in __version__: from pathlib import Path diff --git a/ft_client/requirements.txt b/ft_client/requirements.txt index 9d3110871..e492410b1 100644 --- a/ft_client/requirements.txt +++ b/ft_client/requirements.txt @@ -1,3 +1,3 @@ # Requirements for freqtrade client library requests==2.32.5 -python-rapidjson==1.22 +python-rapidjson==1.23 diff --git a/pyproject.toml b/pyproject.toml index 1adb31364..7ada3385c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -183,6 +183,7 @@ skip_glob = ["**/.env*", "**/env/*", "**/.venv/*", "**/docs/*", "**/user_data/*" known_first_party = ["freqtrade_client"] [tool.pytest.ini_options] +# TODO: should be migrated to [tool.pytest] as support for this was added in 9.0 log_format = "%(asctime)s %(levelname)s %(message)s" log_date_format = "%Y-%m-%d %H:%M:%S" diff --git a/requirements-dev.txt b/requirements-dev.txt index c8eb4ccb8..80699e8bb 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -6,11 +6,11 @@ -r requirements-freqai-rl.txt -r docs/requirements-docs.txt -ruff==0.14.3 -mypy==1.18.2 -pre-commit==4.3.0 -pytest==8.4.2 -pytest-asyncio==1.2.0 +ruff==0.14.8 +mypy==1.19.0 +pre-commit==4.5.0 +pytest==9.0.2 +pytest-asyncio==1.3.0 pytest-cov==7.0.0 pytest-mock==3.15.1 pytest-random-order==1.2.0 @@ -18,15 +18,15 @@ pytest-timeout==2.4.0 pytest-xdist==3.8.0 isort==7.0.0 # For datetime mocking -time-machine==2.19.0 +time-machine==3.1.0 # Convert jupyter notebooks to markdown documents nbconvert==7.16.6 # mypy types -scipy-stubs==1.16.3.0 # keep in sync with `scipy` in `requirements-hyperopt.txt` +scipy-stubs==1.16.3.2 # keep in sync with `scipy` in `requirements-hyperopt.txt` types-cachetools==6.2.0.20251022 types-filelock==3.2.7 types-requests==2.32.4.20250913 types-tabulate==0.9.0.20241207 -types-python-dateutil==2.9.0.20251008 +types-python-dateutil==2.9.0.20251115 diff --git a/requirements-freqai-rl.txt b/requirements-freqai-rl.txt index 69918710f..83a6515cc 100644 --- a/requirements-freqai-rl.txt +++ b/requirements-freqai-rl.txt @@ -2,10 +2,10 @@ -r requirements-freqai.txt # Required for freqai-rl -torch==2.9.0; sys_platform != 'darwin' or platform_machine != 'x86_64' +torch==2.9.1; sys_platform != 'darwin' or platform_machine != 'x86_64' gymnasium==1.2.2 # SB3 >=2.5.0 depends on torch 2.3.0 - which implies it dropped support x86 macos -stable_baselines3==2.7.0; sys_platform != 'darwin' or platform_machine != 'x86_64' +stable_baselines3==2.7.1; sys_platform != 'darwin' or platform_machine != 'x86_64' sb3_contrib>=2.2.1; sys_platform != 'darwin' or platform_machine != 'x86_64' # Progress bar for stable-baselines3 and sb3-contrib tqdm==4.67.1 diff --git a/requirements-freqai.txt b/requirements-freqai.txt index e632a17e2..c3a0022f3 100644 --- a/requirements-freqai.txt +++ b/requirements-freqai.txt @@ -7,6 +7,6 @@ scikit-learn==1.7.2 joblib==1.5.2 catboost==1.2.8; 'arm' not in platform_machine and python_version < '3.14' lightgbm==4.6.0 -xgboost==3.1.1 +xgboost==3.1.2 tensorboard==2.20.0 datasieve==0.1.9 diff --git a/requirements-hyperopt.txt b/requirements-hyperopt.txt index 6b777b47b..9c36b2385 100644 --- a/requirements-hyperopt.txt +++ b/requirements-hyperopt.txt @@ -5,5 +5,5 @@ scipy==1.16.3 scikit-learn==1.7.2 filelock==3.20.0 -optuna==4.5.0 +optuna==4.6.0 cmaes==0.12.0 diff --git a/requirements-plot.txt b/requirements-plot.txt index 858077929..5c3da9386 100644 --- a/requirements-plot.txt +++ b/requirements-plot.txt @@ -1,4 +1,4 @@ # Include all requirements to run the bot. -r requirements.txt -plotly==6.4.0 +plotly==6.5.0 diff --git a/requirements.txt b/requirements.txt index 271b675d3..d14fddede 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -numpy==2.3.4 +numpy==2.3.5 pandas==2.3.3 bottleneck==1.6.0 numexpr==2.14.1 @@ -7,7 +7,7 @@ ft-pandas-ta==0.3.16 ta-lib==0.6.8 technical==1.5.3 -ccxt==4.5.17 +ccxt==4.5.27 cryptography==46.0.3 aiohttp==3.13.2 SQLAlchemy==2.0.44 @@ -15,10 +15,10 @@ python-telegram-bot==22.5 # can't be hard-pinned due to telegram-bot pinning httpx with ~ httpx>=0.24.1 humanize==4.14.0 -cachetools==6.2.1 +cachetools==6.2.2 requests==2.32.5 -urllib3==2.5.0 -certifi==2025.10.5 +urllib3==2.6.0 +certifi==2025.11.12 jsonschema==4.25.1 tabulate==0.9.0 pycoingecko==3.2.0 @@ -29,16 +29,16 @@ pyarrow==22.0.0; platform_machine != 'armv7l' # Load ticker files 30% faster -python-rapidjson==1.22 +python-rapidjson==1.23 # Properly format api responses -orjson==3.11.4 +orjson==3.11.5 # Notify systemd sdnotify==0.3.2 # API Server -fastapi==0.121.0 -pydantic==2.12.4 +fastapi==0.124.0 +pydantic==2.12.5 uvicorn==0.38.0 pyjwt==2.10.1 aiofiles==25.1.0 diff --git a/tests/commands/test_commands.py b/tests/commands/test_commands.py index 036352acf..40127275b 100644 --- a/tests/commands/test_commands.py +++ b/tests/commands/test_commands.py @@ -198,6 +198,8 @@ def test_list_timeframes(mocker, capsys): "1h": "hour", "1d": "day", } + api_mock.options = {} + patch_exchange(mocker, api_mock=api_mock, exchange="bybit") args = [ "list-timeframes", @@ -286,6 +288,52 @@ def test_list_timeframes(mocker, capsys): assert re.search(r"^1h$", captured.out, re.MULTILINE) assert re.search(r"^1d$", captured.out, re.MULTILINE) + api_mock.options = { + "timeframes": { + "spot": {"1m": "1m", "5m": "5m", "15m": "15m"}, + "swap": {"1m": "1m", "15m": "15m", "1h": "1h"}, + } + } + + args = [ + "list-timeframes", + "--exchange", + "binance", + ] + start_list_timeframes(get_args(args)) + captured = capsys.readouterr() + assert re.match( + "Timeframes available for the exchange `Binance`: 1m, 5m, 15m", + captured.out, + ) + + args = [ + "list-timeframes", + "--exchange", + "binance", + "--trading-mode", + "spot", + ] + start_list_timeframes(get_args(args)) + captured = capsys.readouterr() + assert re.match( + "Timeframes available for the exchange `Binance`: 1m, 5m, 15m", + captured.out, + ) + args = [ + "list-timeframes", + "--exchange", + "binance", + "--trading-mode", + "futures", + ] + start_list_timeframes(get_args(args)) + captured = capsys.readouterr() + assert re.match( + "Timeframes available for the exchange `Binance`: 1m, 15m, 1h", + captured.out, + ) + def test_list_markets(mocker, markets_static, capsys): api_mock = MagicMock() @@ -1719,7 +1767,7 @@ def test_start_list_data(testdatadir, capsys): pargs["config"] = None start_list_data(pargs) captured = capsys.readouterr() - assert "Found 16 pair / timeframe combinations." in captured.out + assert "Found 18 pair / timeframe combinations." in captured.out assert re.search(r".*Pair.*Timeframe.*Type.*\n", captured.out) assert re.search(r"\n.* UNITTEST/BTC .* 1m, 5m, 8m, 30m .* spot |\n", captured.out) @@ -1753,10 +1801,10 @@ def test_start_list_data(testdatadir, capsys): start_list_data(pargs) captured = capsys.readouterr() - assert "Found 6 pair / timeframe combinations." in captured.out + assert "Found 5 pair / timeframe combinations." in captured.out assert re.search(r".*Pair.*Timeframe.*Type.*\n", captured.out) assert re.search(r"\n.* XRP/USDT:USDT .* 5m, 1h .* futures |\n", captured.out) - assert re.search(r"\n.* XRP/USDT:USDT .* 1h, 8h .* mark |\n", captured.out) + assert re.search(r"\n.* XRP/USDT:USDT .* 1h.* mark |\n", captured.out) args = [ "list-data", diff --git a/tests/conftest_trades_usdt.py b/tests/conftest_trades_usdt.py index 462f0dfc6..292e46080 100644 --- a/tests/conftest_trades_usdt.py +++ b/tests/conftest_trades_usdt.py @@ -303,6 +303,7 @@ def mock_order_usdt_6(is_short: bool): "side": entry_side(is_short), "type": "limit", "price": 10.0, + "cost": 20.0, "amount": 2.0, "filled": 2.0, "remaining": 0.0, @@ -317,6 +318,7 @@ def mock_order_usdt_6_exit(is_short: bool): "side": exit_side(is_short), "type": "limit", "price": 12.0, + "cost": 24.0, "amount": 2.0, "filled": 0.0, "remaining": 2.0, diff --git a/tests/data/test_btanalysis.py b/tests/data/test_btanalysis.py index e7c914040..e5020fea0 100644 --- a/tests/data/test_btanalysis.py +++ b/tests/data/test_btanalysis.py @@ -290,20 +290,23 @@ def test_combine_dataframes_with_mean(testdatadir): def test_combined_dataframes_with_rel_mean(testdatadir): - pairs = ["ETH/BTC", "ADA/BTC"] + pairs = ["BTC/USDT", "XRP/USDT"] data = load_data(datadir=testdatadir, pairs=pairs, timeframe="5m") df = combined_dataframes_with_rel_mean( - data, datetime(2018, 1, 12, tzinfo=UTC), datetime(2018, 1, 28, tzinfo=UTC) + data, + fromdt=data["BTC/USDT"].at[0, "date"], + todt=data["BTC/USDT"].at[data["BTC/USDT"].index[-1], "date"], ) assert isinstance(df, DataFrame) - assert "ETH/BTC" not in df.columns - assert "ADA/BTC" not in df.columns + assert "BTC/USDT" not in df.columns + assert "XRP/USDT" not in df.columns assert "mean" in df.columns assert "rel_mean" in df.columns assert "count" in df.columns assert df.iloc[0]["count"] == 2 assert df.iloc[-1]["count"] == 2 - assert len(df) < len(data["ETH/BTC"]) + assert len(df) < len(data["BTC/USDT"]) + assert df["rel_mean"].between(-0.5, 0.5).all() def test_combine_dataframes_with_mean_no_data(testdatadir): @@ -575,12 +578,18 @@ def test_calculate_max_drawdown2(): # No losing trade ... drawdown = calculate_max_drawdown(df, date_col="open_date", value_col="profit") assert drawdown.drawdown_abs == 0.0 + assert drawdown.low_value == 0.0 + assert drawdown.current_high_value >= 0.0 + assert drawdown.current_drawdown_abs == 0.0 df1 = DataFrame(zip(values[:5], dates[:5], strict=False), columns=["profit", "open_date"]) df1.loc[:, "profit"] = df1["profit"] * -1 # No winning trade ... drawdown = calculate_max_drawdown(df1, date_col="open_date", value_col="profit") assert drawdown.drawdown_abs == 0.055545 + assert drawdown.high_value == 0.0 + assert drawdown.current_high_value == 0.0 + assert drawdown.current_drawdown_abs == 0.055545 @pytest.mark.parametrize( diff --git a/tests/data/test_datahandler.py b/tests/data/test_datahandler.py index bc665535f..9d40bf5cb 100644 --- a/tests/data/test_datahandler.py +++ b/tests/data/test_datahandler.py @@ -40,6 +40,8 @@ def test_datahandler_ohlcv_get_pairs(testdatadir): "NXT/BTC", "DASH/BTC", "XRP/ETH", + "BTC/USDT", + "XRP/USDT", } pairs = JsonGzDataHandler.ohlcv_get_pairs(testdatadir, "8m", candle_type=CandleType.SPOT) @@ -111,6 +113,8 @@ def test_datahandler_ohlcv_get_available_data(testdatadir): ("DASH/BTC", "5m", CandleType.SPOT), ("XRP/ETH", "1m", CandleType.SPOT), ("XRP/ETH", "5m", CandleType.SPOT), + ("BTC/USDT", "5m", CandleType.SPOT), + ("XRP/USDT", "5m", CandleType.SPOT), ("UNITTEST/BTC", "30m", CandleType.SPOT), ("UNITTEST/BTC", "8m", CandleType.SPOT), } @@ -122,8 +126,7 @@ def test_datahandler_ohlcv_get_available_data(testdatadir): ("XRP/USDT:USDT", "5m", "futures"), ("XRP/USDT:USDT", "1h", "futures"), ("XRP/USDT:USDT", "1h", "mark"), - ("XRP/USDT:USDT", "8h", "mark"), - ("XRP/USDT:USDT", "8h", "funding_rate"), + ("XRP/USDT:USDT", "1h", "funding_rate"), } paircombs = JsonGzDataHandler.ohlcv_get_available_data(testdatadir, TradingMode.SPOT) diff --git a/tests/data/test_dataprovider.py b/tests/data/test_dataprovider.py index afbba3d5d..d3bd5fb98 100644 --- a/tests/data/test_dataprovider.py +++ b/tests/data/test_dataprovider.py @@ -9,7 +9,7 @@ from freqtrade.enums import CandleType, RunMode from freqtrade.exceptions import ExchangeError, OperationalException from freqtrade.plugins.pairlistmanager import PairListManager from freqtrade.util import dt_utc -from tests.conftest import EXMS, generate_test_data, get_patched_exchange +from tests.conftest import EXMS, generate_test_data, get_patched_exchange, log_has_re @pytest.mark.parametrize( @@ -185,6 +185,28 @@ def test_get_pair_dataframe(mocker, default_conf, ohlcv_history, candle_type): assert len(df) == 2 # ohlcv_history is limited to 2 rows now +def test_get_pair_dataframe_funding_rate(mocker, default_conf, ohlcv_history, caplog): + default_conf["runmode"] = RunMode.DRY_RUN + timeframe = "1h" + exchange = get_patched_exchange(mocker, default_conf) + candletype = CandleType.FUNDING_RATE + exchange._klines[("XRP/BTC", timeframe, candletype)] = ohlcv_history + exchange._klines[("UNITTEST/BTC", timeframe, candletype)] = ohlcv_history + + dp = DataProvider(default_conf, exchange) + assert dp.runmode == RunMode.DRY_RUN + assert ohlcv_history.equals( + dp.get_pair_dataframe("UNITTEST/BTC", timeframe, candle_type="funding_rate") + ) + msg = r".*funding rate timeframe not matching" + assert not log_has_re(msg, caplog) + + assert ohlcv_history.equals( + dp.get_pair_dataframe("UNITTEST/BTC", "5h", candle_type="funding_rate") + ) + assert log_has_re(msg, caplog) + + def test_available_pairs(mocker, default_conf, ohlcv_history): exchange = get_patched_exchange(mocker, default_conf) timeframe = default_conf["timeframe"] @@ -636,3 +658,21 @@ def test_check_delisting(mocker, default_conf_usdt): assert res == dt_utc(2025, 10, 2) assert delist_mock2.call_count == 1 + + +def test_get_funding_rate_timeframe(mocker, default_conf_usdt): + default_conf_usdt["trading_mode"] = "futures" + default_conf_usdt["margin_mode"] = "isolated" + exchange = get_patched_exchange(mocker, default_conf_usdt) + mock_get_option = mocker.spy(exchange, "get_option") + dp = DataProvider(default_conf_usdt, exchange) + + assert dp.get_funding_rate_timeframe() == "1h" + mock_get_option.assert_called_once_with("funding_fee_timeframe") + + +def test_get_funding_rate_timeframe_no_exchange(default_conf_usdt): + dp = DataProvider(default_conf_usdt, None) + + with pytest.raises(OperationalException, match=r"Exchange is not available to DataProvider."): + dp.get_funding_rate_timeframe() diff --git a/tests/data/test_history.py b/tests/data/test_history.py index de216eec9..59606d485 100644 --- a/tests/data/test_history.py +++ b/tests/data/test_history.py @@ -534,18 +534,19 @@ def test_validate_backtest_data(default_conf, mocker, caplog, testdatadir) -> No @pytest.mark.parametrize( - "trademode,callcount", + "trademode,callcount, callcount_parallel", [ - ("spot", 4), - ("margin", 4), - ("futures", 8), # Called 8 times - 4 normal, 2 funding and 2 mark/index calls + ("spot", 4, 2), + ("margin", 4, 2), + ("futures", 8, 4), # Called 8 times - 4 normal, 2 funding and 2 mark/index calls ], ) def test_refresh_backtest_ohlcv_data( - mocker, default_conf, markets, caplog, testdatadir, trademode, callcount + mocker, default_conf, markets, caplog, testdatadir, trademode, callcount, callcount_parallel ): caplog.set_level(logging.DEBUG) dl_mock = mocker.patch("freqtrade.data.history.history_utils._download_pair_history") + mocker.patch(f"{EXMS}.verify_candle_type_support", MagicMock()) def parallel_mock(pairs, timeframe, candle_type, **kwargs): return {(pair, timeframe, candle_type): DataFrame() for pair in pairs} @@ -573,14 +574,50 @@ def test_refresh_backtest_ohlcv_data( ) # Called once per timeframe (as we return an empty dataframe) - assert parallel_mock.call_count == 2 + # called twice for spot/margin and 4 times for futures + assert parallel_mock.call_count == callcount_parallel assert dl_mock.call_count == callcount assert dl_mock.call_args[1]["timerange"].starttype == "date" assert log_has_re(r"Downloading pair ETH/BTC, .* interval 1m\.", caplog) if trademode == "futures": - assert log_has_re(r"Downloading pair ETH/BTC, funding_rate, interval 8h\.", caplog) - assert log_has_re(r"Downloading pair ETH/BTC, mark, interval 4h\.", caplog) + assert log_has_re(r"Downloading pair ETH/BTC, funding_rate, interval 1h\.", caplog) + assert log_has_re(r"Downloading pair ETH/BTC, mark, interval 1h\.", caplog) + + # Test with only one pair - no parallel download should happen 1 pair/timeframe combination + # doesn't justify parallelization + parallel_mock.reset_mock() + dl_mock.reset_mock() + refresh_backtest_ohlcv_data( + exchange=ex, + pairs=[ + "ETH/BTC", + ], + timeframes=["5m"], + datadir=testdatadir, + timerange=timerange, + erase=False, + trading_mode=trademode, + ) + assert parallel_mock.call_count == 0 + + if trademode == "futures": + dl_mock.reset_mock() + refresh_backtest_ohlcv_data( + exchange=ex, + pairs=[ + "ETH/BTC", + ], + timeframes=["5m", "1h"], + datadir=testdatadir, + timerange=timerange, + erase=False, + trading_mode=trademode, + no_parallel_download=True, + candle_types=["premiumIndex", "funding_rate"], + ) + assert parallel_mock.call_count == 0 + assert dl_mock.call_count == 3 # 2 timeframes premiumIndex + 1x funding_rate def test_download_data_no_markets(mocker, default_conf, caplog, testdatadir): @@ -780,6 +817,7 @@ def test_download_all_pairs_history_parallel(mocker, default_conf_usdt): exchange.refresh_latest_ohlcv.reset_mock() # Test without timerange + # expected to call refresh_latest_ohlcv - as we can't know how much will be required. result3 = _download_all_pairs_history_parallel( exchange=exchange, pairs=pairs, @@ -787,8 +825,8 @@ def test_download_all_pairs_history_parallel(mocker, default_conf_usdt): candle_type=candle_type, timerange=None, ) - assert result3 == {} - assert exchange.refresh_latest_ohlcv.call_count == 0 + assert result3 == expected + assert exchange.refresh_latest_ohlcv.call_count == 1 def test_download_pair_history_with_pair_candles(mocker, default_conf, tmp_path, caplog) -> None: @@ -878,7 +916,7 @@ def test_download_pair_history_with_pair_candles(mocker, default_conf, tmp_path, assert get_historic_ohlcv_mock.call_count == 0 # Verify the log message indicating parallel method was used (line 315-316) - assert log_has("Downloaded data for TEST/BTC with length 3. Parallel Method.", caplog) + assert log_has("Downloaded data for TEST/BTC, 5m, spot with length 3. Parallel Method.", caplog) # Verify data was stored assert data_handler_mock.ohlcv_store.call_count == 1 diff --git a/tests/exchange/test_binance.py b/tests/exchange/test_binance.py index 2c11fc2f3..59a6c41ae 100644 --- a/tests/exchange/test_binance.py +++ b/tests/exchange/test_binance.py @@ -157,7 +157,8 @@ def test_create_stoploss_order_dry_run_binance(default_conf, mocker): assert "type" in order assert order["type"] == order_type - assert order["price"] == 220 + assert order["price"] == 217.8 + assert order["stopPrice"] == 220 assert order["amount"] == 1 diff --git a/tests/exchange/test_bitget.py b/tests/exchange/test_bitget.py index ca32ba536..b4dafb0ae 100644 --- a/tests/exchange/test_bitget.py +++ b/tests/exchange/test_bitget.py @@ -1,12 +1,13 @@ +from copy import deepcopy from datetime import timedelta from unittest.mock import MagicMock, PropertyMock import pytest -from freqtrade.enums import CandleType, MarginMode, TradingMode +from freqtrade.enums import CandleType, MarginMode, RunMode, TradingMode from freqtrade.exceptions import OperationalException, RetryableOrderError from freqtrade.exchange.common import API_RETRY_COUNT -from freqtrade.util import dt_now, dt_ts +from freqtrade.util import dt_now, dt_ts, dt_utc from tests.conftest import EXMS, get_patched_exchange from tests.exchange.test_exchange import ccxt_exceptionhandlers @@ -193,3 +194,43 @@ def test__lev_prep_bitget(default_conf, mocker): assert api_mock.set_margin_mode.call_count == 0 assert api_mock.set_leverage.call_count == 1 api_mock.set_leverage.assert_called_with(symbol="BTC/USDC:USDC", leverage=19.99) + + +def test_check_delisting_time_bitget(default_conf_usdt, mocker): + exchange = get_patched_exchange(mocker, default_conf_usdt, exchange="bitget") + exchange._config["runmode"] = RunMode.BACKTEST + delist_fut_mock = MagicMock(return_value=None) + mocker.patch.object(exchange, "_check_delisting_futures", delist_fut_mock) + + # Invalid run mode + resp = exchange.check_delisting_time("BTC/USDT") + assert resp is None + assert delist_fut_mock.call_count == 0 + + # Delist spot called + exchange._config["runmode"] = RunMode.DRY_RUN + resp1 = exchange.check_delisting_time("BTC/USDT") + assert resp1 is None + assert delist_fut_mock.call_count == 0 + + # Delist futures called + exchange.trading_mode = TradingMode.FUTURES + resp1 = exchange.check_delisting_time("BTC/USDT:USDT") + assert resp1 is None + assert delist_fut_mock.call_count == 1 + + +def test__check_delisting_futures_bitget(default_conf_usdt, mocker, markets): + markets["BTC/USDT:USDT"] = deepcopy(markets["SOL/BUSD:BUSD"]) + markets["BTC/USDT:USDT"]["info"]["limitOpenTime"] = "-1" + markets["SOL/BUSD:BUSD"]["info"]["limitOpenTime"] = "-1" + markets["ADA/USDT:USDT"]["info"]["limitOpenTime"] = "1760745600000" # 2025-10-18 + exchange = get_patched_exchange(mocker, default_conf_usdt, exchange="bitget") + mocker.patch(f"{EXMS}.markets", PropertyMock(return_value=markets)) + + resp_sol = exchange._check_delisting_futures("SOL/BUSD:BUSD") + # No delisting date + assert resp_sol is None + # Has a delisting date + resp_ada = exchange._check_delisting_futures("ADA/USDT:USDT") + assert resp_ada == dt_utc(2025, 10, 18) diff --git a/tests/exchange/test_bybit.py b/tests/exchange/test_bybit.py index 511d8bab4..fa5f29dfe 100644 --- a/tests/exchange/test_bybit.py +++ b/tests/exchange/test_bybit.py @@ -1,10 +1,11 @@ +from copy import deepcopy from datetime import UTC, datetime, timedelta -from unittest.mock import MagicMock +from unittest.mock import MagicMock, PropertyMock import pytest -from freqtrade.enums.marginmode import MarginMode -from freqtrade.enums.tradingmode import TradingMode +from freqtrade.enums import MarginMode, RunMode, TradingMode +from freqtrade.util import dt_utc from tests.conftest import EXMS, get_mock_coro, get_patched_exchange, log_has from tests.exchange.test_exchange import ccxt_exceptionhandlers @@ -214,3 +215,43 @@ def test_bybit__order_needs_price( exchange.unified_account = uta assert exchange._order_needs_price(side, order_type) == expected + + +def test_check_delisting_time_bybit(default_conf_usdt, mocker): + exchange = get_patched_exchange(mocker, default_conf_usdt, exchange="bybit") + exchange._config["runmode"] = RunMode.BACKTEST + delist_fut_mock = MagicMock(return_value=None) + mocker.patch.object(exchange, "_check_delisting_futures", delist_fut_mock) + + # Invalid run mode + resp = exchange.check_delisting_time("BTC/USDT:USDT") + assert resp is None + assert delist_fut_mock.call_count == 0 + + # Delist spot called + exchange._config["runmode"] = RunMode.DRY_RUN + resp1 = exchange.check_delisting_time("BTC/USDT") + assert resp1 is None + assert delist_fut_mock.call_count == 0 + + # Delist futures called + exchange.trading_mode = TradingMode.FUTURES + resp1 = exchange.check_delisting_time("BTC/USDT:USDT") + assert resp1 is None + assert delist_fut_mock.call_count == 1 + + +def test__check_delisting_futures_bybit(default_conf_usdt, mocker, markets): + markets["BTC/USDT:USDT"] = deepcopy(markets["SOL/BUSD:BUSD"]) + markets["BTC/USDT:USDT"]["info"]["deliveryTime"] = "0" + markets["SOL/BUSD:BUSD"]["info"]["deliveryTime"] = "0" + markets["ADA/USDT:USDT"]["info"]["deliveryTime"] = "1760745600000" # 2025-10-18 + exchange = get_patched_exchange(mocker, default_conf_usdt, exchange="bybit") + mocker.patch(f"{EXMS}.markets", PropertyMock(return_value=markets)) + + resp_sol = exchange._check_delisting_futures("SOL/BUSD:BUSD") + # SOL has no delisting date + assert resp_sol is None + # Actually has a delisting date + resp_ada = exchange._check_delisting_futures("ADA/USDT:USDT") + assert resp_ada == dt_utc(2025, 10, 18) diff --git a/tests/exchange/test_exchange.py b/tests/exchange/test_exchange.py index a55fa51bf..5772a1c4a 100644 --- a/tests/exchange/test_exchange.py +++ b/tests/exchange/test_exchange.py @@ -742,10 +742,11 @@ def test_get_pair_base_currency(default_conf, mocker, pair, expected): def test_validate_timeframes(default_conf, mocker, timeframe): default_conf["timeframe"] = timeframe api_mock = MagicMock() - id_mock = PropertyMock(return_value="test_exchange") - type(api_mock).id = id_mock - timeframes = PropertyMock(return_value={"1m": "1m", "5m": "5m", "15m": "15m", "1h": "1h"}) - type(api_mock).timeframes = timeframes + id_mock = MagicMock(return_value="test_exchange") + api_mock.id = id_mock + api_mock.options = {} + timeframes = {"1m": "1m", "5m": "5m", "15m": "15m", "1h": "1h"} + api_mock.timeframes = timeframes mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock)) mocker.patch(f"{EXMS}.reload_markets") @@ -757,12 +758,11 @@ def test_validate_timeframes(default_conf, mocker, timeframe): def test_validate_timeframes_failed(default_conf, mocker): default_conf["timeframe"] = "3m" api_mock = MagicMock() - id_mock = PropertyMock(return_value="test_exchange") - type(api_mock).id = id_mock - timeframes = PropertyMock( - return_value={"15s": "15s", "1m": "1m", "5m": "5m", "15m": "15m", "1h": "1h"} - ) - type(api_mock).timeframes = timeframes + id_mock = MagicMock(return_value="test_exchange") + api_mock.id = id_mock + timeframes = {"15s": "15s", "1m": "1m", "5m": "5m", "15m": "15m", "1h": "1h"} + api_mock.timeframes = timeframes + api_mock.options = {} mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock)) mocker.patch(f"{EXMS}.reload_markets") @@ -1110,6 +1110,191 @@ def test_create_dry_run_order_fees( assert order1["fee"]["rate"] == fee +@pytest.mark.parametrize( + "side,limit,offset,is_stop,expected", + [ + ("buy", 46.0, 0.0, False, True), + ("buy", 46.0, 0.0, True, False), + ("buy", 26.0, 0.0, False, True), + ("buy", 26.0, 0.0, True, False), # Stop - didn't trigger + ("buy", 25.55, 0.0, False, False), + ("buy", 25.55, 0.0, True, True), # Stop - triggered + ("buy", 1, 0.0, False, False), # Very far away + ("buy", 1, 0.0, True, True), # Current price is above stop - triggered + ("sell", 25.5, 0.0, False, True), + ("sell", 50, 0.0, False, False), # Very far away + ("sell", 25.58, 0.0, False, False), + ("sell", 25.563, 0.01, False, False), + ("sell", 25.563, 0.0, True, False), # stop order - Not triggered, best bid + ("sell", 25.566, 0.0, True, True), # stop order - triggered + ("sell", 26, 0.01, True, True), # stop order - triggered + ("sell", 5.563, 0.01, False, True), + ("sell", 5.563, 0.0, True, False), # stop order - not triggered + ], +) +def test__dry_is_price_crossed_with_orderbook( + default_conf, mocker, order_book_l2_usd, side, limit, offset, is_stop, expected +): + # Best bid 25.563 + # Best ask 25.566 + exchange = get_patched_exchange(mocker, default_conf) + mocker.patch(f"{EXMS}.exchange_has", return_value=True) + exchange.fetch_l2_order_book = order_book_l2_usd + orderbook = order_book_l2_usd.return_value + result = exchange._dry_is_price_crossed( + "LTC/USDT", side, limit, orderbook=orderbook, offset=offset, is_stop=is_stop + ) + assert result is expected + assert order_book_l2_usd.call_count == 0 + + # Test without passing orderbook + order_book_l2_usd.reset_mock() + result = exchange._dry_is_price_crossed("LTC/USDT", side, limit, offset=offset, is_stop=is_stop) + assert result is expected + + +def test__dry_is_price_crossed_empty_orderbook(default_conf, mocker): + exchange = get_patched_exchange(mocker, default_conf) + mocker.patch(f"{EXMS}.exchange_has", return_value=True) + empty_book = {"asks": [], "bids": []} + assert not exchange._dry_is_price_crossed("LTC/USDT", "buy", 100.0, orderbook=empty_book) + + +def test__dry_is_price_crossed_fetches_orderbook(default_conf, mocker, order_book_l2_usd): + exchange = get_patched_exchange(mocker, default_conf) + mocker.patch(f"{EXMS}.exchange_has", return_value=True) + exchange.fetch_l2_order_book = order_book_l2_usd + assert exchange._dry_is_price_crossed("LTC/USDT", "buy", 26.0) + assert order_book_l2_usd.call_count == 1 + + +def test__dry_is_price_crossed_without_orderbook_support(default_conf, mocker): + exchange = get_patched_exchange(mocker, default_conf) + exchange.fetch_l2_order_book = MagicMock() + mocker.patch(f"{EXMS}.exchange_has", return_value=False) + assert exchange._dry_is_price_crossed("LTC/USDT", "buy", 1.0) + assert exchange._dry_is_price_crossed("LTC/USDT", "sell", 1.0) + assert exchange.fetch_l2_order_book.call_count == 0 + assert not exchange._dry_is_price_crossed("LTC/USDT", "buy", 1.0, is_stop=True) + assert not exchange._dry_is_price_crossed("LTC/USDT", "sell", 1.0, is_stop=True) + + +@pytest.mark.parametrize( + "crossed,immediate,side,amount,expected_status,expected_fee_rate,expected_calls,taker_or_maker", + [ + (True, True, "buy", 2.0, "closed", 0.005, 1, "taker"), + (True, False, "sell", 1.5, "closed", 0.005, 1, "maker"), + (False, False, "sell", 1.0, "open", None, 0, None), + ], +) +def test_check_dry_limit_order_filled( + default_conf, + mocker, + crossed, + immediate, + side, + amount, + expected_status, + expected_fee_rate, + expected_calls, + taker_or_maker, +): + exchange = get_patched_exchange(mocker, default_conf) + mocker.patch(f"{EXMS}._dry_is_price_crossed", return_value=crossed) + fee_mock = mocker.patch(f"{EXMS}.get_fee", return_value=0.005) + + order = { + "symbol": "LTC/USDT", + "status": "open", + "type": "limit", + "side": side, + "price": 25.0, + "amount": amount, + "filled": 0.0, + "remaining": amount, + "cost": 25.0 * amount, + "fee": None, + } + + result = exchange.check_dry_limit_order_filled(order, immediate=immediate) + + assert result["status"] == expected_status + if crossed: + assert result["filled"] == amount + assert result["remaining"] == 0.0 + assert result["fee"]["rate"] == expected_fee_rate + fee_mock.assert_called_once_with("LTC/USDT", taker_or_maker=taker_or_maker) + else: + assert result["filled"] == 0.0 + assert result["remaining"] == amount + assert result["fee"] is None + assert fee_mock.call_count == expected_calls + + +@pytest.mark.parametrize( + "immediate,crossed,expected_status,expected_fee_type", + [ + (True, True, "closed", "taker"), + (False, True, "closed", "maker"), + (True, False, "open", None), + ], +) +def test_check_dry_limit_order_filled_stoploss( + default_conf, mocker, immediate, crossed, expected_status, expected_fee_type, order_book_l2_usd +): + exchange = get_patched_exchange(mocker, default_conf) + mocker.patch.multiple( + EXMS, + exchange_has=MagicMock(return_value=True), + _dry_is_price_crossed=MagicMock(return_value=crossed), + fetch_l2_order_book=order_book_l2_usd, + ) + average_mock = mocker.patch(f"{EXMS}.get_dry_market_fill_price", return_value=24.25) + fee_mock = mocker.patch( + f"{EXMS}.add_dry_order_fee", + autospec=True, + side_effect=lambda self, pair, dry_order, taker_or_maker: dry_order, + ) + + amount = 1.75 + order = { + "symbol": "LTC/USDT", + "status": "open", + "type": "limit", + "side": "sell", + "amount": amount, + "filled": 0.0, + "remaining": amount, + "price": 25.0, + "average": 0.0, + "cost": 0.0, + "fee": None, + "ft_order_type": "stoploss", + "stopLossPrice": 24.5, + } + + result = exchange.check_dry_limit_order_filled(order, immediate=immediate) + + assert result["status"] == expected_status + assert order_book_l2_usd.call_count == 1 + if crossed: + assert result["filled"] == amount + assert result["remaining"] == 0 + assert result["average"] == 24.25 + assert result["cost"] == pytest.approx(amount * 24.25) + assert average_mock.call_count == 1 + assert fee_mock.call_count == 1 + assert fee_mock.call_args[0][1] == "LTC/USDT" + assert fee_mock.call_args[0][3] == expected_fee_type + else: + assert result["filled"] == 0.0 + assert result["remaining"] == amount + assert result["average"] == 0.0 + + assert average_mock.call_count == 0 + assert fee_mock.call_count == 0 + + @pytest.mark.parametrize( "side,price,filled,converted", [ @@ -2204,6 +2389,7 @@ async def test__async_get_historic_ohlcv(default_conf, mocker, caplog, exchange_ ] ] exchange = get_patched_exchange(mocker, default_conf, exchange=exchange_name) + mocker.patch.object(exchange, "verify_candle_type_support") # Monkey-patch async function exchange._api_async.fetch_ohlcv = get_mock_coro(ohlcv) @@ -2254,6 +2440,7 @@ def test_refresh_latest_ohlcv(mocker, default_conf_usdt, caplog, candle_type) -> caplog.set_level(logging.DEBUG) exchange = get_patched_exchange(mocker, default_conf_usdt) + mocker.patch.object(exchange, "verify_candle_type_support") exchange._api_async.fetch_ohlcv = get_mock_coro(ohlcv) pairs = [("IOTA/USDT", "5m", candle_type), ("XRP/USDT", "5m", candle_type)] @@ -2504,6 +2691,7 @@ def test_refresh_latest_ohlcv_cache(mocker, default_conf, candle_type, time_mach time_machine.move_to(start + timedelta(hours=99, minutes=30)) exchange = get_patched_exchange(mocker, default_conf) + mocker.patch.object(exchange, "verify_candle_type_support") exchange._set_startup_candle_count(default_conf) mocker.patch(f"{EXMS}.ohlcv_candle_limit", return_value=100) @@ -2652,6 +2840,29 @@ def test_refresh_ohlcv_with_cache(mocker, default_conf, time_machine) -> None: assert ohlcv_mock.call_args_list[0][0][0] == pairs +def test_refresh_latest_ohlcv_funding_rate(mocker, default_conf_usdt, caplog) -> None: + ohlcv = generate_test_data_raw("1h", 24, "2025-01-02 12:00:00+00:00") + funding_data = [{"timestamp": x[0], "fundingRate": x[1]} for x in ohlcv] + + caplog.set_level(logging.DEBUG) + exchange = get_patched_exchange(mocker, default_conf_usdt) + exchange._api_async.fetch_ohlcv = get_mock_coro(ohlcv) + exchange._api_async.fetch_funding_rate_history = get_mock_coro(funding_data) + + pairs = [ + ("IOTA/USDT:USDT", "8h", CandleType.FUNDING_RATE), + ("XRP/USDT:USDT", "1h", CandleType.FUNDING_RATE), + ] + # empty dicts + assert not exchange._klines + res = exchange.refresh_latest_ohlcv(pairs, cache=False) + + assert len(res) == len(pairs) + assert log_has_re(r"Wrong funding rate timeframe 8h for pair IOTA/USDT:USDT", caplog) + assert not log_has_re(r"Wrong funding rate timeframe 8h for pair XRP/USDT:USDT", caplog) + assert exchange._api_async.fetch_ohlcv.call_count == 0 + + @pytest.mark.parametrize("exchange_name", EXCHANGES) async def test__async_get_candle_history(default_conf, mocker, caplog, exchange_name): ohlcv = [ @@ -3716,37 +3927,29 @@ def test_cancel_stoploss_order(default_conf, mocker, exchange_name): @pytest.mark.parametrize("exchange_name", EXCHANGES) def test_cancel_stoploss_order_with_result(default_conf, mocker, exchange_name): default_conf["dry_run"] = False - mock_prefix = "freqtrade.exchange.gate.Gate" - if exchange_name == "okx": - mock_prefix = "freqtrade.exchange.okx.Okx" - mocker.patch(f"{EXMS}.fetch_stoploss_order", return_value={"for": 123}) - mocker.patch(f"{mock_prefix}.fetch_stoploss_order", return_value={"for": 123}) exchange = get_patched_exchange(mocker, default_conf, exchange=exchange_name) + mocker.patch.object(exchange, "fetch_stoploss_order", return_value={"for": 123}) res = {"fee": {}, "status": "canceled", "amount": 1234} - mocker.patch(f"{EXMS}.cancel_stoploss_order", return_value=res) - mocker.patch(f"{mock_prefix}.cancel_stoploss_order", return_value=res) + mocker.patch.object(exchange, "cancel_stoploss_order", return_value=res) co = exchange.cancel_stoploss_order_with_result(order_id="_", pair="TKN/BTC", amount=555) assert co == res - mocker.patch(f"{EXMS}.cancel_stoploss_order", return_value="canceled") - mocker.patch(f"{mock_prefix}.cancel_stoploss_order", return_value="canceled") + mocker.patch.object(exchange, "cancel_stoploss_order", return_value="canceled") # Fall back to fetch_stoploss_order co = exchange.cancel_stoploss_order_with_result(order_id="_", pair="TKN/BTC", amount=555) assert co == {"for": 123} exc = InvalidOrderException("") - mocker.patch(f"{EXMS}.fetch_stoploss_order", side_effect=exc) - mocker.patch(f"{mock_prefix}.fetch_stoploss_order", side_effect=exc) + mocker.patch.object(exchange, "fetch_stoploss_order", side_effect=exc) co = exchange.cancel_stoploss_order_with_result(order_id="_", pair="TKN/BTC", amount=555) assert co["amount"] == 555 assert co == {"id": "_", "fee": {}, "status": "canceled", "amount": 555, "info": {}} with pytest.raises(InvalidOrderException): exc = InvalidOrderException("Did not find order") - mocker.patch(f"{EXMS}.cancel_stoploss_order", side_effect=exc) - mocker.patch(f"{mock_prefix}.cancel_stoploss_order", side_effect=exc) exchange = get_patched_exchange(mocker, default_conf, exchange=exchange_name) + mocker.patch.object(exchange, "cancel_stoploss_order", side_effect=exc) exchange.cancel_stoploss_order_with_result(order_id="_", pair="TKN/BTC", amount=123) @@ -3931,7 +4134,7 @@ def test_fetch_order_or_stoploss_order(default_conf, mocker): fetch_order_mock = MagicMock() fetch_stoploss_order_mock = MagicMock() mocker.patch.multiple( - EXMS, + exchange, fetch_order=fetch_order_mock, fetch_stoploss_order=fetch_stoploss_order_mock, ) @@ -5119,6 +5322,7 @@ def test_combine_funding_and_mark( {"date": trade_date, "open": mark_price}, ] ) + # Test fallback to futures funding rate for missing funding rates df = exchange.combine_funding_and_mark(funding_rates, mark_rates, futures_funding_rate) if futures_funding_rate is not None: @@ -5146,6 +5350,34 @@ def test_combine_funding_and_mark( assert len(df) == 0 + # Test fallback to futures funding rate for middle missing funding rate + funding_rates = DataFrame( + [ + {"date": prior2_date, "open": funding_rate}, + # missing 1 hour + {"date": trade_date, "open": funding_rate}, + ], + ) + mark_rates = DataFrame( + [ + {"date": prior2_date, "open": mark_price}, + {"date": prior_date, "open": mark_price}, + {"date": trade_date, "open": mark_price}, + ] + ) + df = exchange.combine_funding_and_mark(funding_rates, mark_rates, futures_funding_rate) + + if futures_funding_rate is not None: + assert len(df) == 2 + assert df.iloc[0]["open_fund"] == funding_rate + # assert df.iloc[1]["open_fund"] == futures_funding_rate + assert df.iloc[-1]["open_fund"] == funding_rate + # Mid-candle is dropped ... + assert df["date"].to_list() == [prior2_date, trade_date] + else: + assert len(df) == 2 + assert df["date"].to_list() == [prior2_date, trade_date] + @pytest.mark.parametrize( "exchange,rate_start,rate_end,d1,d2,amount,expected_fees", @@ -5235,8 +5467,13 @@ def test__fetch_and_calculate_funding_fees( api_mock = MagicMock() api_mock.fetch_funding_rate_history = get_mock_coro(return_value=funding_rate_history) api_mock.fetch_ohlcv = get_mock_coro(return_value=mark_ohlcv) - type(api_mock).has = PropertyMock(return_value={"fetchOHLCV": True}) - type(api_mock).has = PropertyMock(return_value={"fetchFundingRateHistory": True}) + type(api_mock).has = PropertyMock( + return_value={ + "fetchFundingRateHistory": True, + "fetchMarkOHLCV": True, + "fetchOHLCV": True, + } + ) ex = get_patched_exchange(mocker, default_conf, api_mock, exchange=exchange) mocker.patch(f"{EXMS}.timeframes", PropertyMock(return_value=["1h", "4h", "8h"])) @@ -5280,8 +5517,13 @@ def test__fetch_and_calculate_funding_fees_datetime_called( api_mock.fetch_funding_rate_history = get_mock_coro( return_value=funding_rate_history_octohourly ) - type(api_mock).has = PropertyMock(return_value={"fetchOHLCV": True}) - type(api_mock).has = PropertyMock(return_value={"fetchFundingRateHistory": True}) + type(api_mock).has = PropertyMock( + return_value={ + "fetchFundingRateHistory": True, + "fetchMarkOHLCV": True, + "fetchOHLCV": True, + } + ) mocker.patch(f"{EXMS}.timeframes", PropertyMock(return_value=["4h", "8h"])) exchange = get_patched_exchange(mocker, default_conf, api_mock, exchange=exchange) d1 = datetime.strptime("2021-08-31 23:00:01 +0000", "%Y-%m-%d %H:%M:%S %z") @@ -6368,3 +6610,51 @@ def test_fetch_funding_rate(default_conf, mocker, exchange_name): with pytest.raises(DependencyException, match=r"Pair XRP/ETH not available"): exchange.fetch_funding_rate(pair="XRP/ETH") + + +def test_verify_candle_type_support(default_conf, mocker): + api_mock = MagicMock() + type(api_mock).has = PropertyMock( + return_value={ + "fetchFundingRateHistory": True, + "fetchIndexOHLCV": True, + "fetchMarkOHLCV": True, + "fetchPremiumIndexOHLCV": False, + } + ) + exchange = get_patched_exchange(mocker, default_conf, api_mock) + + # Should pass + exchange.verify_candle_type_support("futures") + exchange.verify_candle_type_support(CandleType.FUTURES) + exchange.verify_candle_type_support(CandleType.FUNDING_RATE) + exchange.verify_candle_type_support(CandleType.SPOT) + exchange.verify_candle_type_support(CandleType.MARK) + + # Should fail: + + with pytest.raises( + OperationalException, + match=r"Exchange .* does not support fetching premiumindex candles\.", + ): + exchange.verify_candle_type_support(CandleType.PREMIUMINDEX) + + type(api_mock).has = PropertyMock( + return_value={ + "fetchFundingRateHistory": False, + "fetchIndexOHLCV": False, + "fetchMarkOHLCV": False, + "fetchPremiumIndexOHLCV": True, + } + ) + for candle_type in [ + CandleType.FUNDING_RATE, + CandleType.INDEX, + CandleType.MARK, + ]: + with pytest.raises( + OperationalException, + match=rf"Exchange .* does not support fetching {candle_type.value} candles\.", + ): + exchange.verify_candle_type_support(candle_type) + exchange.verify_candle_type_support(CandleType.PREMIUMINDEX) diff --git a/tests/exchange/test_htx.py b/tests/exchange/test_htx.py index e32d7e85e..bffbde8c0 100644 --- a/tests/exchange/test_htx.py +++ b/tests/exchange/test_htx.py @@ -123,7 +123,8 @@ def test_create_stoploss_order_dry_run_htx(default_conf, mocker): assert "type" in order assert order["type"] == order_type - assert order["price"] == 220 + assert order["price"] == 217.8 + assert order["stopPrice"] == 220 assert order["amount"] == 1 diff --git a/tests/exchange_online/conftest.py b/tests/exchange_online/conftest.py index 94ff4ac47..755e6716c 100644 --- a/tests/exchange_online/conftest.py +++ b/tests/exchange_online/conftest.py @@ -515,7 +515,8 @@ EXCHANGES = { ], }, "hyperliquid": { - "pair": "UBTC/USDC", + # TODO: Should be UBTC/USDC - probably needs a fix in ccxt + "pair": "BTC/USDC", "stake_currency": "USDC", "hasQuoteVolume": False, "timeframe": "30m", diff --git a/tests/exchange_online/test_ccxt_compat.py b/tests/exchange_online/test_ccxt_compat.py index c71e4809b..d0dc715b9 100644 --- a/tests/exchange_online/test_ccxt_compat.py +++ b/tests/exchange_online/test_ccxt_compat.py @@ -11,7 +11,7 @@ import pytest from freqtrade.enums import CandleType from freqtrade.exchange import timeframe_to_minutes, timeframe_to_prev_date -from freqtrade.exchange.exchange import timeframe_to_msecs +from freqtrade.exchange.exchange import Exchange, timeframe_to_msecs from freqtrade.util import dt_floor_day, dt_now, dt_ts from tests.exchange_online.conftest import EXCHANGE_FIXTURE_TYPE, EXCHANGES @@ -270,11 +270,14 @@ class TestCCXTExchange: assert exch.klines(pair_tf).iloc[-1]["date"] >= timeframe_to_prev_date(timeframe, now) assert exch.klines(pair_tf)["date"].astype(int).iloc[0] // 1e6 == since_ms - def _ccxt__async_get_candle_history(self, exchange, pair, timeframe, candle_type, factor=0.9): + def _ccxt__async_get_candle_history( + self, exchange, pair: str, timeframe: str, candle_type: CandleType, factor: float = 0.9 + ): timeframe_ms = timeframe_to_msecs(timeframe) + timeframe_ms_8h = timeframe_to_msecs("8h") now = timeframe_to_prev_date(timeframe, datetime.now(UTC)) - for offset in (360, 120, 30, 10, 5, 2): - since = now - timedelta(days=offset) + for offset_days in (360, 120, 30, 10, 5, 2): + since = now - timedelta(days=offset_days) since_ms = int(since.timestamp() * 1000) res = exchange.loop.run_until_complete( @@ -289,8 +292,15 @@ class TestCCXTExchange: candles = res[3] candle_count = exchange.ohlcv_candle_limit(timeframe, candle_type, since_ms) * factor candle_count1 = (now.timestamp() * 1000 - since_ms) // timeframe_ms * factor - assert len(candles) >= min(candle_count, candle_count1), ( - f"{len(candles)} < {candle_count} in {timeframe}, Offset: {offset} {factor}" + # funding fees can be 1h or 8h - depending on pair and time. + candle_count2 = (now.timestamp() * 1000 - since_ms) // timeframe_ms_8h * factor + min_value = min( + candle_count, + candle_count1, + candle_count2 if candle_type == CandleType.FUNDING_RATE else candle_count1, + ) + assert len(candles) >= min_value, ( + f"{len(candles)} < {candle_count} in {timeframe} {offset_days=} {factor=}" ) # Check if first-timeframe is either the start, or start + 1 assert candles[0][0] == since_ms or (since_ms + timeframe_ms) @@ -309,6 +319,8 @@ class TestCCXTExchange: [ CandleType.FUTURES, CandleType.FUNDING_RATE, + CandleType.INDEX, + CandleType.PREMIUMINDEX, CandleType.MARK, ], ) @@ -322,6 +334,10 @@ class TestCCXTExchange: timeframe = exchange._ft_has.get( "funding_fee_timeframe", exchange._ft_has["mark_ohlcv_timeframe"] ) + else: + # never skip funding rate! + if not exchange.check_candle_type_support(candle_type): + pytest.skip(f"Exchange does not support candle type {candle_type}") self._ccxt__async_get_candle_history( exchange, pair=pair, @@ -337,6 +353,7 @@ class TestCCXTExchange: timeframe_ff = exchange._ft_has.get( "funding_fee_timeframe", exchange._ft_has["mark_ohlcv_timeframe"] ) + timeframe_ff_8h = "8h" pair_tf = (pair, timeframe_ff, CandleType.FUNDING_RATE) funding_ohlcv = exchange.refresh_latest_ohlcv( @@ -350,14 +367,26 @@ class TestCCXTExchange: hour1 = timeframe_to_prev_date(timeframe_ff, this_hour - timedelta(minutes=1)) hour2 = timeframe_to_prev_date(timeframe_ff, hour1 - timedelta(minutes=1)) hour3 = timeframe_to_prev_date(timeframe_ff, hour2 - timedelta(minutes=1)) - val0 = rate[rate["date"] == this_hour].iloc[0]["open"] - val1 = rate[rate["date"] == hour1].iloc[0]["open"] - val2 = rate[rate["date"] == hour2].iloc[0]["open"] - val3 = rate[rate["date"] == hour3].iloc[0]["open"] + # Alternative 8h timeframe - funding fee timeframe is not stable. + h8_this_hour = timeframe_to_prev_date(timeframe_ff_8h) + h8_hour1 = timeframe_to_prev_date(timeframe_ff_8h, h8_this_hour - timedelta(minutes=1)) + h8_hour2 = timeframe_to_prev_date(timeframe_ff_8h, h8_hour1 - timedelta(minutes=1)) + h8_hour3 = timeframe_to_prev_date(timeframe_ff_8h, h8_hour2 - timedelta(minutes=1)) + row0 = rate.iloc[-1] + row1 = rate.iloc[-2] + row2 = rate.iloc[-3] + row3 = rate.iloc[-4] + + assert row0["date"] == this_hour or row0["date"] == h8_this_hour + assert row1["date"] == hour1 or row1["date"] == h8_hour1 + assert row2["date"] == hour2 or row2["date"] == h8_hour2 + assert row3["date"] == hour3 or row3["date"] == h8_hour3 # Test For last 4 hours # Avoids random test-failure when funding-fees are 0 for a few hours. - assert val0 != 0.0 or val1 != 0.0 or val2 != 0.0 or val3 != 0.0 + assert ( + row0["open"] != 0.0 or row1["open"] != 0.0 or row2["open"] != 0.0 or row3["open"] != 0.0 + ) # We expect funding rates to be different from 0.0 - or moving around. assert ( rate["open"].max() != 0.0 @@ -369,7 +398,10 @@ class TestCCXTExchange: exchange, exchangename = exchange_futures pair = EXCHANGES[exchangename].get("futures_pair", EXCHANGES[exchangename]["pair"]) since = int((datetime.now(UTC) - timedelta(days=5)).timestamp() * 1000) - pair_tf = (pair, "1h", CandleType.MARK) + candle_type = CandleType.from_string( + exchange.get_option("mark_ohlcv_price", default=CandleType.MARK) + ) + pair_tf = (pair, "1h", candle_type) mark_ohlcv = exchange.refresh_latest_ohlcv([pair_tf], since_ms=since, drop_incomplete=False) @@ -422,15 +454,23 @@ class TestCCXTExchange: trades_orig = nvspy.call_args_list[2][0][0] assert len(trades_orig[-1].get("info")) > len(trades_orig[-2].get("info")) - def test_ccxt_get_fee(self, exchange: EXCHANGE_FIXTURE_TYPE): - exch, exchangename = exchange - pair = EXCHANGES[exchangename]["pair"] + def _ccxt_get_fee(self, exch: Exchange, pair: str): threshold = 0.01 assert 0 < exch.get_fee(pair, "limit", "buy") < threshold assert 0 < exch.get_fee(pair, "limit", "sell") < threshold assert 0 < exch.get_fee(pair, "market", "buy") < threshold assert 0 < exch.get_fee(pair, "market", "sell") < threshold + def test_ccxt_get_fee_spot(self, exchange: EXCHANGE_FIXTURE_TYPE): + exch, exchangename = exchange + pair = EXCHANGES[exchangename]["pair"] + self._ccxt_get_fee(exch, pair) + + def test_ccxt_get_fee_futures(self, exchange_futures: EXCHANGE_FIXTURE_TYPE): + exch, exchangename = exchange_futures + pair = EXCHANGES[exchangename].get("futures_pair", EXCHANGES[exchangename]["pair"]) + self._ccxt_get_fee(exch, pair) + def test_ccxt_get_max_leverage_spot(self, exchange: EXCHANGE_FIXTURE_TYPE): spot, spot_name = exchange if spot: diff --git a/tests/freqtradebot/test_freqtradebot.py b/tests/freqtradebot/test_freqtradebot.py index 1360f2d77..d08daa2f1 100644 --- a/tests/freqtradebot/test_freqtradebot.py +++ b/tests/freqtradebot/test_freqtradebot.py @@ -2548,9 +2548,9 @@ def test_manage_open_orders_exception( caplog.clear() freqtrade.manage_open_orders() assert log_has_re( - r"Cannot query order for Trade\(id=1, pair=ADA/USDT, amount=30.00000000, " - r"is_short=False, leverage=1.0, " - r"open_rate=2.00000000, open_since=" + r"Cannot query order for Trade\(id=1, pair=ADA/USDT, amount=30, " + r"is_short=False, leverage=1, " + r"open_rate=2, open_since=" f"{open_trade_usdt.open_date.strftime('%Y-%m-%d %H:%M:%S')}" r"\) due to Traceback \(most recent call last\):\n*", caplog, @@ -3092,7 +3092,7 @@ def test_execute_trade_exit_custom_exit_price( "exit_reason": "foo", "open_date": ANY, "close_date": ANY, - "close_rate": ANY, + "close_rate": 2.25, # the custom exit price "sub_trade": False, "cumulative_profit": 0.0, "stake_amount": pytest.approx(60), @@ -3751,8 +3751,8 @@ def test_get_real_amount_quote( # Amount is reduced by "fee" assert freqtrade.get_real_amount(trade, buy_order_fee, order_obj) == (amount * 0.001) assert log_has( - "Applying fee on amount for Trade(id=None, pair=LTC/ETH, amount=8.00000000, is_short=False," - " leverage=1.0, open_rate=0.24544100, open_since=closed), fee=0.008.", + "Applying fee on amount for Trade(id=None, pair=LTC/ETH, amount=8, is_short=False," + " leverage=1, open_rate=0.245441, open_since=closed), fee=0.008.", caplog, ) @@ -3805,8 +3805,8 @@ def test_get_real_amount_no_trade(default_conf_usdt, buy_order_fee, caplog, mock # Amount is reduced by "fee" assert freqtrade.get_real_amount(trade, buy_order_fee, order_obj) is None assert log_has( - "Applying fee on amount for Trade(id=None, pair=LTC/ETH, amount=8.00000000, " - "is_short=False, leverage=1.0, open_rate=0.24544100, open_since=closed) failed: " + "Applying fee on amount for Trade(id=None, pair=LTC/ETH, amount=8, " + "is_short=False, leverage=1, open_rate=0.245441, open_since=closed) failed: " "myTrade-dict empty found", caplog, ) @@ -3825,8 +3825,8 @@ def test_get_real_amount_no_trade(default_conf_usdt, buy_order_fee, caplog, mock 0, True, ( - "Fee for Trade Trade(id=None, pair=LTC/ETH, amount=8.00000000, is_short=False, " - "leverage=1.0, open_rate=0.24544100, open_since=closed) [buy]: 0.00094518 BNB -" + "Fee for Trade Trade(id=None, pair=LTC/ETH, amount=8, is_short=False, " + "leverage=1, open_rate=0.245441, open_since=closed) [buy]: 0.00094518 BNB -" " rate: None" ), ), @@ -3836,8 +3836,8 @@ def test_get_real_amount_no_trade(default_conf_usdt, buy_order_fee, caplog, mock 0.004, False, ( - "Applying fee on amount for Trade(id=None, pair=LTC/ETH, amount=8.00000000, " - "is_short=False, leverage=1.0, open_rate=0.24544100, open_since=closed), fee=0.004." + "Applying fee on amount for Trade(id=None, pair=LTC/ETH, amount=8, " + "is_short=False, leverage=1, open_rate=0.245441, open_since=closed), fee=0.004." ), ), # invalid, no currency in from fee dict @@ -3941,8 +3941,8 @@ def test_get_real_amount_multi( assert freqtrade.get_real_amount(trade, buy_order_fee, order_obj) == expected_amount assert log_has( ( - "Applying fee on amount for Trade(id=None, pair=LTC/ETH, amount=8.00000000, " - "is_short=False, leverage=1.0, open_rate=0.24544100, open_since=closed), " + "Applying fee on amount for Trade(id=None, pair=LTC/ETH, amount=8, " + "is_short=False, leverage=1, open_rate=0.245441, open_since=closed), " f"fee={expected_amount}." ), caplog, @@ -4525,6 +4525,7 @@ def test_check_for_open_trades(mocker, default_conf_usdt, fee, is_short): def test_startup_update_open_orders(mocker, default_conf_usdt, fee, caplog, is_short): freqtrade = get_patched_freqtradebot(mocker, default_conf_usdt) create_mock_trades(fee, is_short=is_short) + mocker.patch(f"{EXMS}._dry_is_price_crossed", return_value=False) freqtrade.startup_update_open_orders() assert not log_has_re(r"Error updating Order .*", caplog) diff --git a/tests/freqtradebot/test_integration.py b/tests/freqtradebot/test_integration.py index 2cb4b6aa8..b5520ae42 100644 --- a/tests/freqtradebot/test_integration.py +++ b/tests/freqtradebot/test_integration.py @@ -50,16 +50,20 @@ def test_may_execute_exit_stoploss_on_exchange_multi(default_conf, ticker, fee, stoploss_order_mock = MagicMock(side_effect=stop_orders) # Sell 3rd trade (not called for the first trade) should_sell_mock = MagicMock(side_effect=[[], [ExitCheckTuple(exit_type=ExitType.EXIT_SIGNAL)]]) - cancel_order_mock = MagicMock() + + def patch_stoploss(order_id, *args, **kwargs): + slo = stoploss_order_open.copy() + slo["id"] = order_id + slo["status"] = "canceled" + return slo + + cancel_order_mock = MagicMock(side_effect=patch_stoploss) mocker.patch.multiple( EXMS, - create_stoploss=stoploss, fetch_ticker=ticker, get_fee=fee, amount_to_precision=lambda s, x, y: y, price_to_precision=lambda s, x, y: y, - fetch_stoploss_order=stoploss_order_mock, - cancel_stoploss_order_with_result=cancel_order_mock, ) mocker.patch.multiple( @@ -73,6 +77,12 @@ def test_may_execute_exit_stoploss_on_exchange_multi(default_conf, ticker, fee, mocker.patch("freqtrade.wallets.Wallets.check_exit_amount", return_value=True) freqtrade = get_patched_freqtradebot(mocker, default_conf) + mocker.patch.multiple( + freqtrade.exchange, + create_stoploss=stoploss, + fetch_stoploss_order=stoploss_order_mock, + cancel_stoploss_order_with_result=cancel_order_mock, + ) freqtrade.strategy.order_types["stoploss_on_exchange"] = True # Switch ordertype to market to close trade immediately freqtrade.strategy.order_types["exit"] = "market" @@ -793,9 +803,13 @@ def test_dca_handle_similar_open_order( # Should Create a new exit order freqtrade.exchange.amount_to_contract_precision = MagicMock(return_value=2) freqtrade.strategy.adjust_trade_position = MagicMock(return_value=-2) + msg = r"Skipping cancelling stoploss on exchange for.*" mocker.patch(f"{EXMS}._dry_is_price_crossed", return_value=False) + assert not log_has_re(msg, caplog) freqtrade.process() + assert log_has_re(msg, caplog) + trade = Trade.get_trades().first() assert trade.orders[-2].status == "closed" diff --git a/tests/freqtradebot/test_stoploss_on_exchange.py b/tests/freqtradebot/test_stoploss_on_exchange.py index c71621620..a3271e4ea 100644 --- a/tests/freqtradebot/test_stoploss_on_exchange.py +++ b/tests/freqtradebot/test_stoploss_on_exchange.py @@ -103,7 +103,7 @@ def test_handle_stoploss_on_exchange( trade.is_open = True hanging_stoploss_order = MagicMock(return_value={"id": "13434334", "status": "open"}) - mocker.patch(f"{EXMS}.fetch_stoploss_order", hanging_stoploss_order) + mocker.patch.object(freqtrade.exchange, "fetch_stoploss_order", hanging_stoploss_order) assert freqtrade.handle_stoploss_on_exchange(trade) is False hanging_stoploss_order.assert_called_once_with("13434334", trade.pair) @@ -116,7 +116,7 @@ def test_handle_stoploss_on_exchange( trade.is_open = True canceled_stoploss_order = MagicMock(return_value={"id": "13434334", "status": "canceled"}) - mocker.patch(f"{EXMS}.fetch_stoploss_order", canceled_stoploss_order) + mocker.patch.object(freqtrade.exchange, "fetch_stoploss_order", canceled_stoploss_order) stoploss.reset_mock() amount_before = trade.amount @@ -149,7 +149,7 @@ def test_handle_stoploss_on_exchange( "amount": enter_order["amount"], } ) - mocker.patch(f"{EXMS}.fetch_stoploss_order", stoploss_order_hit) + mocker.patch.object(freqtrade.exchange, "fetch_stoploss_order", stoploss_order_hit) freqtrade.strategy.order_filled = MagicMock(return_value=None) assert freqtrade.handle_stoploss_on_exchange(trade) is True assert log_has_re(r"STOP_LOSS_LIMIT is hit for Trade\(id=1, .*\)\.", caplog) @@ -158,7 +158,7 @@ def test_handle_stoploss_on_exchange( assert freqtrade.strategy.order_filled.call_count == 1 caplog.clear() - mocker.patch(f"{EXMS}.create_stoploss", side_effect=ExchangeError()) + mocker.patch.object(freqtrade.exchange, "create_stoploss", side_effect=ExchangeError()) trade.is_open = True freqtrade.handle_stoploss_on_exchange(trade) assert log_has("Unable to place a stoploss order on exchange.", caplog) @@ -168,8 +168,13 @@ def test_handle_stoploss_on_exchange( # It should try to add stoploss order stop_order_dict.update({"id": "105"}) stoploss.reset_mock() - mocker.patch(f"{EXMS}.fetch_stoploss_order", side_effect=InvalidOrderException()) - mocker.patch(f"{EXMS}.create_stoploss", stoploss) + mocker.patch.multiple( + freqtrade.exchange, + fetch_stoploss_order=MagicMock( + side_effect=InvalidOrderException(), + ), + create_stoploss=stoploss, + ) freqtrade.handle_stoploss_on_exchange(trade) assert len(trade.open_sl_orders) == 1 assert stoploss.call_count == 1 @@ -179,8 +184,7 @@ def test_handle_stoploss_on_exchange( trade.is_open = False trade.open_sl_orders[-1].ft_is_open = False stoploss.reset_mock() - mocker.patch(f"{EXMS}.fetch_order") - mocker.patch(f"{EXMS}.create_stoploss", stoploss) + mocker.patch.multiple(freqtrade.exchange, fetch_order=MagicMock(), create_stoploss=stoploss) assert freqtrade.handle_stoploss_on_exchange(trade) is False assert trade.has_open_sl_orders is False assert stoploss.call_count == 0 @@ -252,9 +256,12 @@ def test_handle_stoploss_on_exchange_emergency( stoploss = MagicMock(side_effect=InvalidOrderException()) assert trade.has_open_sl_orders is True Trade.commit() - mocker.patch(f"{EXMS}.cancel_stoploss_order_with_result", side_effect=InvalidOrderException()) - mocker.patch(f"{EXMS}.fetch_stoploss_order", stoploss_order_cancelled) - mocker.patch(f"{EXMS}.create_stoploss", stoploss) + mocker.patch.multiple( + freqtrade.exchange, + cancel_stoploss_order_with_result=MagicMock(side_effect=InvalidOrderException()), + fetch_stoploss_order=stoploss_order_cancelled, + create_stoploss=stoploss, + ) assert freqtrade.handle_stoploss_on_exchange(trade) is False assert trade.has_open_sl_orders is False assert trade.is_open is False @@ -311,7 +318,7 @@ def test_handle_stoploss_on_exchange_partial( "amount": enter_order["amount"], } ) - mocker.patch(f"{EXMS}.fetch_stoploss_order", stoploss_order_hit) + mocker.patch.multiple(freqtrade.exchange, fetch_stoploss_order=stoploss_order_hit) assert freqtrade.handle_stoploss_on_exchange(trade) is False # Stoploss filled partially ... assert trade.amount == 15 @@ -383,8 +390,11 @@ def test_handle_stoploss_on_exchange_partial_cancel_here( "amount": enter_order["amount"], } ) - mocker.patch(f"{EXMS}.fetch_stoploss_order", stoploss_order_hit) - mocker.patch(f"{EXMS}.cancel_stoploss_order_with_result", stoploss_order_cancel) + mocker.patch.multiple( + freqtrade.exchange, + fetch_stoploss_order=stoploss_order_hit, + cancel_stoploss_order_with_result=stoploss_order_cancel, + ) time_machine.shift(timedelta(minutes=15)) assert freqtrade.handle_stoploss_on_exchange(trade) is False @@ -408,20 +418,20 @@ def test_handle_sle_cancel_cant_recreate( mocker.patch.multiple( EXMS, fetch_ticker=MagicMock(return_value={"bid": 1.9, "ask": 2.2, "last": 1.9}), + get_fee=fee, + ) + freqtrade = FreqtradeBot(default_conf_usdt) + mocker.patch.multiple( + freqtrade.exchange, create_order=MagicMock( side_effect=[ enter_order, exit_order, ] ), - get_fee=fee, - ) - mocker.patch.multiple( - EXMS, fetch_stoploss_order=MagicMock(return_value={"status": "canceled", "id": "100"}), create_stoploss=MagicMock(side_effect=ExchangeError()), ) - freqtrade = FreqtradeBot(default_conf_usdt) patch_get_signal(freqtrade, enter_short=is_short, enter_long=not is_short) freqtrade.enter_positions() @@ -644,8 +654,11 @@ def test_handle_stoploss_on_exchange_trailing( stoploss_order_cancel = deepcopy(stoploss_order_hanging) stoploss_order_cancel["status"] = "canceled" - mocker.patch(f"{EXMS}.fetch_stoploss_order", return_value=stoploss_order_hanging) - mocker.patch(f"{EXMS}.cancel_stoploss_order", return_value=stoploss_order_cancel) + mocker.patch.multiple( + freqtrade.exchange, + fetch_stoploss_order=MagicMock(return_value=stoploss_order_hanging), + cancel_stoploss_order=MagicMock(return_value=stoploss_order_cancel), + ) # stoploss initially at 5% assert freqtrade.handle_trade(trade) is False @@ -671,9 +684,12 @@ def test_handle_stoploss_on_exchange_trailing( return_value={"id": "13434334", "status": "canceled", "fee": {}, "amount": trade.amount} ) stoploss_order_mock = MagicMock(return_value={"id": "so1", "status": "open"}) - mocker.patch(f"{EXMS}.fetch_stoploss_order") - mocker.patch(f"{EXMS}.cancel_stoploss_order", cancel_order_mock) - mocker.patch(f"{EXMS}.create_stoploss", stoploss_order_mock) + mocker.patch.multiple( + freqtrade.exchange, + fetch_stoploss_order=MagicMock(), + cancel_stoploss_order=cancel_order_mock, + create_stoploss=stoploss_order_mock, + ) # stoploss should not be updated as the interval is 60 seconds assert freqtrade.handle_trade(trade) is False @@ -711,8 +727,9 @@ def test_handle_stoploss_on_exchange_trailing( } ), ) - mocker.patch( - f"{EXMS}.cancel_stoploss_order_with_result", + mocker.patch.object( + freqtrade.exchange, + "cancel_stoploss_order_with_result", return_value={"id": "so1", "status": "canceled"}, ) assert len(trade.open_sl_orders) == 1 @@ -786,8 +803,12 @@ def test_handle_stoploss_on_exchange_trailing_error( order_date=dt_now(), ) ) - mocker.patch(f"{EXMS}.cancel_stoploss_order", side_effect=InvalidOrderException()) - mocker.patch(f"{EXMS}.fetch_stoploss_order", return_value=stoploss_order_hanging) + mocker.patch.object( + freqtrade.exchange, "cancel_stoploss_order", side_effect=InvalidOrderException() + ) + mocker.patch.object( + freqtrade.exchange, "fetch_stoploss_order", return_value=stoploss_order_hanging + ) time_machine.shift(timedelta(minutes=50)) freqtrade.handle_trailing_stoploss_on_exchange(trade, stoploss_order_hanging) assert log_has_re(r"Could not cancel stoploss order abcd for pair ETH/USDT.*", caplog) @@ -799,8 +820,8 @@ def test_handle_stoploss_on_exchange_trailing_error( # Fail creating stoploss order caplog.clear() - cancel_mock = mocker.patch(f"{EXMS}.cancel_stoploss_order") - mocker.patch(f"{EXMS}.create_stoploss", side_effect=ExchangeError()) + cancel_mock = mocker.patch.object(freqtrade.exchange, "cancel_stoploss_order") + mocker.patch.object(freqtrade.exchange, "create_stoploss", side_effect=ExchangeError()) time_machine.shift(timedelta(minutes=50)) freqtrade.handle_trailing_stoploss_on_exchange(trade, stoploss_order_hanging) assert cancel_mock.call_count == 2 @@ -846,20 +867,9 @@ def test_handle_stoploss_on_exchange_custom_stop( mocker.patch.multiple( EXMS, fetch_ticker=MagicMock(return_value={"bid": 1.9, "ask": 2.2, "last": 1.9}), - create_order=MagicMock( - side_effect=[ - enter_order, - exit_order, - ] - ), get_fee=fee, is_cancel_order_result_suitable=MagicMock(return_value=True), ) - mocker.patch.multiple( - EXMS, - create_stoploss=stoploss, - stoploss_adjust=MagicMock(return_value=True), - ) # enabling TSL default_conf_usdt["use_custom_stoploss"] = True @@ -868,6 +878,17 @@ def test_handle_stoploss_on_exchange_custom_stop( default_conf_usdt["minimal_roi"]["0"] = 999999999 freqtrade = get_patched_freqtradebot(mocker, default_conf_usdt) + mocker.patch.multiple( + freqtrade.exchange, + create_order=MagicMock( + side_effect=[ + enter_order, + exit_order, + ] + ), + create_stoploss=stoploss, + stoploss_adjust=MagicMock(return_value=True), + ) # enabling stoploss on exchange freqtrade.strategy.order_types["stoploss_on_exchange"] = True @@ -912,8 +933,11 @@ def test_handle_stoploss_on_exchange_custom_stop( x["id"] = order_id return x - mocker.patch(f"{EXMS}.fetch_stoploss_order", MagicMock(fetch_stoploss_order_mock)) - mocker.patch(f"{EXMS}.cancel_stoploss_order", return_value=slo_canceled) + mocker.patch.multiple( + freqtrade.exchange, + fetch_stoploss_order=MagicMock(fetch_stoploss_order_mock), + cancel_stoploss_order=MagicMock(return_value=slo_canceled), + ) assert freqtrade.handle_trade(trade) is False assert freqtrade.handle_stoploss_on_exchange(trade) is False @@ -932,8 +956,11 @@ def test_handle_stoploss_on_exchange_custom_stop( cancel_order_mock = MagicMock() stoploss_order_mock = MagicMock(return_value={"id": "so1", "status": "open"}) - mocker.patch(f"{EXMS}.cancel_stoploss_order", cancel_order_mock) - mocker.patch(f"{EXMS}.create_stoploss", stoploss_order_mock) + mocker.patch.multiple( + freqtrade.exchange, + cancel_stoploss_order=cancel_order_mock, + create_stoploss=stoploss_order_mock, + ) # stoploss should not be updated as the interval is 60 seconds assert freqtrade.handle_trade(trade) is False @@ -1054,7 +1081,9 @@ def test_execute_trade_exit_sloe_cancel_exception( mocker, default_conf_usdt, ticker_usdt, fee, caplog ) -> None: freqtrade = get_patched_freqtradebot(mocker, default_conf_usdt) - mocker.patch(f"{EXMS}.cancel_stoploss_order", side_effect=InvalidOrderException()) + mocker.patch.object( + freqtrade.exchange, "cancel_stoploss_order", side_effect=InvalidOrderException() + ) mocker.patch("freqtrade.wallets.Wallets.get_free", MagicMock(return_value=300)) create_order_mock = MagicMock( side_effect=[ @@ -1114,12 +1143,15 @@ def test_execute_trade_exit_with_stoploss_on_exchange( get_fee=fee, amount_to_precision=lambda s, x, y: y, price_to_precision=lambda s, x, y: y, + ) + freqtrade = FreqtradeBot(default_conf_usdt) + mocker.patch.multiple( + freqtrade.exchange, create_stoploss=stoploss, cancel_stoploss_order=cancel_order, _dry_is_price_crossed=MagicMock(side_effect=[True, False]), ) - freqtrade = FreqtradeBot(default_conf_usdt) freqtrade.strategy.order_types["stoploss_on_exchange"] = True patch_get_signal(freqtrade, enter_short=is_short, enter_long=not is_short) @@ -1208,7 +1240,7 @@ def test_may_execute_trade_exit_after_stoploss_on_exchange_hit( "trades": None, } ) - mocker.patch(f"{EXMS}.fetch_stoploss_order", stoploss_executed) + mocker.patch.object(freqtrade.exchange, "fetch_stoploss_order", stoploss_executed) freqtrade.exit_positions(trades) assert trade.has_open_sl_orders is False diff --git a/tests/optimize/test_backtesting.py b/tests/optimize/test_backtesting.py index 1c9373fb7..bbf55d2bc 100644 --- a/tests/optimize/test_backtesting.py +++ b/tests/optimize/test_backtesting.py @@ -879,6 +879,10 @@ def test_backtest_one_detail(default_conf_usdt, mocker, testdatadir, use_detail) patch_exchange(mocker) mocker.patch(f"{EXMS}.get_min_pair_stake_amount", return_value=0.00001) mocker.patch(f"{EXMS}.get_max_pair_stake_amount", return_value=float("inf")) + default_conf_usdt["unfilledtimeout"] = { + "entry": 11, + "exit": 30, + } if use_detail: default_conf_usdt["timeframe_detail"] = "1m" @@ -916,7 +920,7 @@ def test_backtest_one_detail(default_conf_usdt, mocker, testdatadir, use_detail) ) results = result["results"] assert not results.empty - # Timeout settings from default_conf = entry: 10, exit: 30 + # Timeout settings from = entry: 11, exit: 30 assert len(results) == (2 if use_detail else 3) assert "orders" in results.columns @@ -966,8 +970,8 @@ def test_backtest_one_detail(default_conf_usdt, mocker, testdatadir, use_detail) @pytest.mark.parametrize( "use_detail,exp_funding_fee, exp_ff_updates", [ - (True, -0.018054162, 10), - (False, -0.01780296, 6), + (True, -0.0180457882, 15), + (False, -0.0178000543, 12), ], ) def test_backtest_one_detail_futures( @@ -1077,8 +1081,8 @@ def test_backtest_one_detail_futures( @pytest.mark.parametrize( "use_detail,entries,max_stake,ff_updates,expected_ff", [ - (True, 50, 3000, 55, -1.18038144), - (False, 6, 360, 11, -0.14679994), + (True, 50, 3000, 78, -1.17988972), + (False, 6, 360, 34, -0.14673681), ], ) def test_backtest_one_detail_futures_funding_fees( @@ -1800,7 +1804,7 @@ def test_backtest_multi_pair_detail_simplified( if use_detail: # Backtest loop is called once per candle per pair # Exact numbers depend on trade state - but should be around 2_600 - assert bl_spy.call_count > 2_170 + assert bl_spy.call_count > 2_159 assert bl_spy.call_count < 2_800 assert len(evaluate_result_multi(results["results"], "1h", 3)) > 0 else: @@ -2378,13 +2382,12 @@ def test_backtest_start_nomock_futures(default_conf_usdt, mocker, caplog, testda f"Using data directory: {testdatadir} ...", "Loading data from 2021-11-17 01:00:00 up to 2021-11-21 04:00:00 (4 days).", "Backtesting with data from 2021-11-17 21:00:00 up to 2021-11-21 04:00:00 (3 days).", - "XRP/USDT:USDT, funding_rate, 8h, data starts at 2021-11-18 00:00:00", - "XRP/USDT:USDT, mark, 8h, data starts at 2021-11-18 00:00:00", + "XRP/USDT:USDT, funding_rate, 1h, data starts at 2021-11-18 00:00:00", f"Running backtesting for Strategy {CURRENT_TEST_STRATEGY}", ] for line in exists: - assert log_has(line, caplog) + assert log_has(line, caplog), line captured = capsys.readouterr() assert "BACKTESTING REPORT" in captured.out @@ -2772,7 +2775,7 @@ def test_time_pair_generator_open_trades_first(mocker, default_conf, dynamic_pai dummy_row = (end_date, 1.0, 1.1, 0.9, 1.0, 0, 0, 0, 0, None, None) data = {pair: [dummy_row] for pair in pairs} - def mock_refresh(self): + def mock_refresh(self, **kwargs): # Simulate shuffle self._whitelist = pairs[::-1] # ['ETH/BTC', 'NEO/BTC', 'LTC/BTC', 'XRP/BTC'] diff --git a/tests/persistence/test_persistence.py b/tests/persistence/test_persistence.py index 5ec1a05d2..6e779137d 100644 --- a/tests/persistence/test_persistence.py +++ b/tests/persistence/test_persistence.py @@ -372,8 +372,8 @@ def test_borrowed(fee, is_short, lev, borrowed, trading_mode): @pytest.mark.parametrize( "is_short,open_rate,close_rate,lev,profit,trading_mode", [ - (False, 2.0, 2.2, 1.0, 0.09451372, spot), - (True, 2.2, 2.0, 3.0, 0.25894253, margin), + (False, 2, 2.2, 1, 0.09451372, spot), + (True, 2.2, 2.0, 3, 0.25894253, margin), ], ) @pytest.mark.usefixtures("init_persistence") @@ -493,8 +493,8 @@ def test_update_limit_order( assert trade.close_date is None assert log_has_re( f"LIMIT_{entry_side.upper()} has been fulfilled for " - r"Trade\(id=2, pair=ADA/USDT, amount=30.00000000, " - f"is_short={is_short}, leverage={lev}, open_rate={open_rate}0000000, " + r"Trade\(id=2, pair=ADA/USDT, amount=30, " + f"is_short={is_short}, leverage={lev}, open_rate={open_rate}, " r"open_since=.*\).", caplog, ) @@ -511,8 +511,8 @@ def test_update_limit_order( assert trade.close_date is not None assert log_has_re( f"LIMIT_{exit_side.upper()} has been fulfilled for " - r"Trade\(id=2, pair=ADA/USDT, amount=30.00000000, " - f"is_short={is_short}, leverage={lev}, open_rate={open_rate}0000000, " + r"Trade\(id=2, pair=ADA/USDT, amount=30, " + f"is_short={is_short}, leverage={lev}, open_rate={open_rate}, " r"open_since=.*\).", caplog, ) @@ -545,8 +545,8 @@ def test_update_market_order(market_buy_order_usdt, market_sell_order_usdt, fee, assert trade.close_date is None assert log_has_re( r"MARKET_BUY has been fulfilled for Trade\(id=1, " - r"pair=ADA/USDT, amount=30.00000000, is_short=False, leverage=1.0, " - r"open_rate=2.00000000, open_since=.*\).", + r"pair=ADA/USDT, amount=30, is_short=False, leverage=1, " + r"open_rate=2, open_since=.*\).", caplog, ) @@ -561,8 +561,8 @@ def test_update_market_order(market_buy_order_usdt, market_sell_order_usdt, fee, assert trade.close_date is not None assert log_has_re( r"MARKET_SELL has been fulfilled for Trade\(id=1, " - r"pair=ADA/USDT, amount=30.00000000, is_short=False, leverage=1.0, " - r"open_rate=2.00000000, open_since=.*\).", + r"pair=ADA/USDT, amount=30, is_short=False, leverage=1, " + r"open_rate=2, open_since=.*\).", caplog, ) @@ -1479,6 +1479,8 @@ def test_to_json(fee): "contract_size": 1, "orders": [], "has_open_orders": False, + "nr_of_successful_entries": 0, + "nr_of_successful_exits": 0, } # Simulate dry_run entries @@ -1570,6 +1572,8 @@ def test_to_json(fee): "contract_size": 1, "orders": [], "has_open_orders": False, + "nr_of_successful_entries": 0, + "nr_of_successful_exits": 0, } diff --git a/tests/rpc/test_rpc.py b/tests/rpc/test_rpc.py index 5dae36f10..f288cd0ba 100644 --- a/tests/rpc/test_rpc.py +++ b/tests/rpc/test_rpc.py @@ -99,6 +99,7 @@ def test_rpc_trade_status(default_conf, ticker, fee, mocker) -> None: "contract_size": 1, "has_open_orders": False, "nr_of_successful_entries": ANY, + "nr_of_successful_exits": ANY, "orders": [ { "amount": 91.07468123, @@ -309,7 +310,7 @@ def test_rpc_status_table(default_conf, ticker, fee, mocker, time_machine) -> No ) assert "now" == result[0][2] assert "ETH/BTC" in result[0][1] - assert "nan%" == result[0][3] + assert "N/A" == result[0][3] assert isnan(fiat_profit_sum) @@ -385,11 +386,14 @@ def test_rpc_delete_trade(mocker, default_conf, fee, markets, caplog, is_short): mocker.patch.multiple( EXMS, markets=PropertyMock(return_value=markets), - cancel_order=cancel_mock, - cancel_stoploss_order=stoploss_mock, ) freqtradebot = get_patched_freqtradebot(mocker, default_conf) + mocker.patch.multiple( + freqtradebot.exchange, + cancel_order=cancel_mock, + cancel_stoploss_order=stoploss_mock, + ) freqtradebot.strategy.order_types["stoploss_on_exchange"] = True create_mock_trades(fee, is_short) rpc = RPC(freqtradebot) @@ -425,13 +429,17 @@ def test_rpc_delete_trade(mocker, default_conf, fee, markets, caplog, is_short): assert stoploss_mock.call_count == 1 assert res["cancel_order_count"] == 1 - stoploss_mock = mocker.patch(f"{EXMS}.cancel_stoploss_order", side_effect=InvalidOrderException) + stoploss_mock = mocker.patch.object( + freqtradebot.exchange, "cancel_stoploss_order", side_effect=InvalidOrderException + ) res = rpc._rpc_delete("3") assert stoploss_mock.call_count == 1 stoploss_mock.reset_mock() - cancel_mock = mocker.patch(f"{EXMS}.cancel_order", side_effect=InvalidOrderException) + cancel_mock = mocker.patch.object( + freqtradebot.exchange, "cancel_order", side_effect=InvalidOrderException + ) res = rpc._rpc_delete("4") assert cancel_mock.call_count == 1 diff --git a/tests/rpc/test_rpc_apiserver.py b/tests/rpc/test_rpc_apiserver.py index b4a7af26b..768858aac 100644 --- a/tests/rpc/test_rpc_apiserver.py +++ b/tests/rpc/test_rpc_apiserver.py @@ -1034,8 +1034,7 @@ def test_api_delete_trade(botclient, mocker, fee, markets, is_short): stoploss_mock = MagicMock() cancel_mock = MagicMock() mocker.patch.multiple( - EXMS, - markets=PropertyMock(return_value=markets), + ftbot.exchange, cancel_order=cancel_mock, cancel_stoploss_order=stoploss_mock, ) @@ -1605,6 +1604,8 @@ def test_api_status( "precision_mode": None, "orders": [ANY], "has_open_orders": True, + "nr_of_successful_entries": ANY, + "nr_of_successful_exits": ANY, } mocker.patch( @@ -1817,6 +1818,8 @@ def test_api_force_entry(botclient, mocker, fee, endpoint): "price_precision": None, "precision_mode": None, "has_open_orders": False, + "nr_of_successful_entries": ANY, + "nr_of_successful_exits": ANY, "orders": [], } @@ -1849,9 +1852,35 @@ def test_api_forceexit(botclient, mocker, ticker, fee, markets): Trade.rollback() trade = Trade.get_trades([Trade.id == 5]).first() + last_order = trade.orders[-1] + + assert last_order.side == "sell" + assert last_order.status == "closed" + assert last_order.order_type == "market" + assert last_order.amount == 23 assert pytest.approx(trade.amount) == 100 assert trade.is_open is True + # Test with explicit price + rc = client_post( + client, + f"{BASE_URI}/forceexit", + data={"tradeid": "5", "ordertype": "limit", "amount": 25, "price": 0.12345}, + ) + assert_response(rc) + assert rc.json() == {"result": "Created exit order for trade 5."} + Trade.rollback() + + trade = Trade.get_trades([Trade.id == 5]).first() + last_order = trade.orders[-1] + assert last_order.status == "closed" + assert last_order.order_type == "limit" + assert pytest.approx(last_order.safe_price) == 0.12345 + assert pytest.approx(last_order.amount) == 25 + + assert pytest.approx(trade.amount) == 75 + assert trade.is_open is True + rc = client_post(client, f"{BASE_URI}/forceexit", data={"tradeid": "5"}) assert_response(rc) assert rc.json() == {"result": "Created exit order for trade 5."} @@ -2754,12 +2783,12 @@ def test_list_available_pairs(botclient): rc = client_get(client, f"{BASE_URI}/available_pairs") assert_response(rc) - assert rc.json()["length"] == 12 + assert rc.json()["length"] == 14 assert isinstance(rc.json()["pairs"], list) rc = client_get(client, f"{BASE_URI}/available_pairs?timeframe=5m") assert_response(rc) - assert rc.json()["length"] == 12 + assert rc.json()["length"] == 14 rc = client_get(client, f"{BASE_URI}/available_pairs?stake_currency=ETH") assert_response(rc) @@ -3247,6 +3276,7 @@ def test_api_download_data(botclient, mocker, tmp_path): body = { "pairs": ["ETH/BTC", "XRP/BTC"], "timeframes": ["5m"], + "candle_types": ["spot"], } # Fail, already running diff --git a/tests/rpc/test_rpc_telegram.py b/tests/rpc/test_rpc_telegram.py index e9e2ee65a..49245230b 100644 --- a/tests/rpc/test_rpc_telegram.py +++ b/tests/rpc/test_rpc_telegram.py @@ -421,7 +421,8 @@ async def test_telegram_status_multi_entry(default_conf, update, mocker, fee) -> assert msg_mock.call_count == 4 msg = msg_mock.call_args_list[3][0][0] assert re.search(r"Number of Entries.*2", msg) - assert re.search(r"Number of Exits.*1", msg) + # Exit order is still open, hence not a successful exit + assert re.search(r"Number of Exits.*0", msg) assert re.search(r"Close Date:", msg) is None assert re.search(r"Close Profit:", msg) is None diff --git a/tests/testdata/BTC_USDT-5m.feather b/tests/testdata/BTC_USDT-5m.feather new file mode 100644 index 000000000..ee6ec03b4 Binary files /dev/null and b/tests/testdata/BTC_USDT-5m.feather differ diff --git a/tests/testdata/XRP_USDT-5m.feather b/tests/testdata/XRP_USDT-5m.feather new file mode 100644 index 000000000..7f6a145af Binary files /dev/null and b/tests/testdata/XRP_USDT-5m.feather differ diff --git a/tests/testdata/futures/XRP_USDT_USDT-8h-funding_rate.feather b/tests/testdata/futures/XRP_USDT_USDT-1h-funding_rate.feather similarity index 100% rename from tests/testdata/futures/XRP_USDT_USDT-8h-funding_rate.feather rename to tests/testdata/futures/XRP_USDT_USDT-1h-funding_rate.feather diff --git a/tests/testdata/futures/XRP_USDT_USDT-8h-mark.feather b/tests/testdata/futures/XRP_USDT_USDT-8h-mark.feather deleted file mode 100644 index f41502690..000000000 Binary files a/tests/testdata/futures/XRP_USDT_USDT-8h-mark.feather and /dev/null differ diff --git a/tests/util/test_binance_mig.py b/tests/util/test_binance_mig.py index f700ff73a..db3d8b282 100644 --- a/tests/util/test_binance_mig.py +++ b/tests/util/test_binance_mig.py @@ -20,8 +20,8 @@ def test_binance_mig_data_conversion(default_conf_usdt, tmp_path, testdatadir): files = [ "-1h-mark.feather", "-1h-futures.feather", - "-8h-funding_rate.feather", - "-8h-mark.feather", + "-1h-funding_rate.feather", + "-1h-mark.feather", ] # Copy files to tmpdir and rename to old naming diff --git a/tests/util/test_datetime_helpers.py b/tests/util/test_datetime_helpers.py index 82dd6dbf6..8ccb8ba20 100644 --- a/tests/util/test_datetime_helpers.py +++ b/tests/util/test_datetime_helpers.py @@ -108,6 +108,7 @@ def test_format_date() -> None: date = datetime(2021, 9, 30, 22, 59, 3, 455555, tzinfo=UTC) assert format_date(date) == "2021-09-30 22:59:03" assert format_date(None) == "" + assert format_date(None, "closed") == "closed" def test_format_ms_time_detailed() -> None: diff --git a/tests/util/test_formatters.py b/tests/util/test_formatters.py index 8872137a0..a7463fdfa 100644 --- a/tests/util/test_formatters.py +++ b/tests/util/test_formatters.py @@ -1,6 +1,13 @@ from datetime import timedelta -from freqtrade.util import decimals_per_coin, fmt_coin, fmt_coin2, format_duration, round_value +from freqtrade.util import ( + decimals_per_coin, + fmt_coin, + fmt_coin2, + format_duration, + format_pct, + round_value, +) def test_decimals_per_coin(): @@ -25,6 +32,7 @@ def test_fmt_coin(): assert fmt_coin(0.1274512123, "BTC", False) == "0.12745121" assert fmt_coin(0.1274512123, "ETH", False) == "0.12745" assert fmt_coin(222.2, "USDT", False, True) == "222.200" + assert fmt_coin(float("nan"), "USDT", False, True) == "N/A" def test_fmt_coin2(): @@ -35,6 +43,7 @@ def test_fmt_coin2(): assert fmt_coin2(0.1274512123, "BTC") == "0.12745121 BTC" assert fmt_coin2(0.1274512123, "ETH") == "0.12745121 ETH" assert fmt_coin2(0.00001245, "PEPE") == "0.00001245 PEPE" + assert fmt_coin2(float("nan"), "PEPE") == "N/A PEPE" def test_round_value(): @@ -46,6 +55,10 @@ def test_round_value(): assert round_value(0.1274512123, 5) == "0.12745" assert round_value(222.2, 3, True) == "222.200" assert round_value(222.2, 0, True) == "222" + assert round_value(float("nan"), 0, True) == "N/A" + assert round_value(float("nan"), 10, True) == "N/A" + assert round_value(None, 10, True) == "N/A" + assert round_value(None, 1, True) == "N/A" def test_format_duration(): @@ -55,3 +68,13 @@ def test_format_duration(): assert format_duration(timedelta(minutes=1445)) == "1d 00:05" assert format_duration(timedelta(minutes=11445)) == "7d 22:45" assert format_duration(timedelta(minutes=101445)) == "70d 10:45" + + +def test_format_pct(): + assert format_pct(0.1234) == "12.34%" + assert format_pct(0.1) == "10.00%" + assert format_pct(0.0) == "0.00%" + assert format_pct(-0.0567) == "-5.67%" + assert format_pct(-1.5567) == "-155.67%" + assert format_pct(None) == "N/A" + assert format_pct(float("nan")) == "N/A" diff --git a/tests/util/test_funding_rate_migration.py b/tests/util/test_funding_rate_migration.py index 094ee1562..69d603ed0 100644 --- a/tests/util/test_funding_rate_migration.py +++ b/tests/util/test_funding_rate_migration.py @@ -5,13 +5,13 @@ from freqtrade.util.migrations import migrate_funding_fee_timeframe def test_migrate_funding_rate_timeframe(default_conf_usdt, tmp_path, testdatadir): copytree(testdatadir / "futures", tmp_path / "futures") - file_4h = tmp_path / "futures" / "XRP_USDT_USDT-4h-funding_rate.feather" - file_8h = tmp_path / "futures" / "XRP_USDT_USDT-8h-funding_rate.feather" + file_30m = tmp_path / "futures" / "XRP_USDT_USDT-30m-funding_rate.feather" + file_1h_fr = tmp_path / "futures" / "XRP_USDT_USDT-1h-funding_rate.feather" file_1h = tmp_path / "futures" / "XRP_USDT_USDT-1h-futures.feather" - file_8h.rename(file_4h) + file_1h_fr.rename(file_30m) assert file_1h.exists() - assert file_4h.exists() - assert not file_8h.exists() + assert file_30m.exists() + assert not file_1h_fr.exists() default_conf_usdt["datadir"] = tmp_path @@ -22,7 +22,7 @@ def test_migrate_funding_rate_timeframe(default_conf_usdt, tmp_path, testdatadir migrate_funding_fee_timeframe(default_conf_usdt, None) - assert not file_4h.exists() - assert file_8h.exists() + assert not file_30m.exists() + assert file_1h_fr.exists() # futures files is untouched. assert file_1h.exists()