{ "cells": [ { "cell_type": "code", "execution_count": 21, "id": "0b5ca901", "metadata": {}, "outputs": [], "source": [ "import requests\n", "import pandas as pd\n", "import numpy as np\n", "from datetime import datetime\n", "import time\n", "import json\n", "import valkey\n", "from dataclasses import dataclass, field, asdict\n", "import modules.structs as structs\n", "import modules.aster_auth as aster_auth\n", "import modules.manual_leverage as leverage\n", "VAL_KEY = valkey.Valkey(host='localhost', port=6379, db=0, decode_responses=True)\n", "\n", "df_leverage_by_exch = pd.DataFrame(data=leverage.LEVERAGE_BY_EXCH)" ] }, { "cell_type": "code", "execution_count": 22, "id": "20665e82", "metadata": {}, "outputs": [], "source": [ "### ********** TODO: ADD IN VOLUME DATA TO FILTER MKTS ###" ] }, { "cell_type": "code", "execution_count": 23, "id": "53647b40", "metadata": {}, "outputs": [], "source": [ "# ### ASTER Historical FR ###\n", "# params = {\n", "# 'limit': 1000,\n", "# }\n", "# r = json.loads(requests.get('https://fapi.asterdex.com/fapi/v3/fundingRate', params=params).text)\n", "# df_aster_hist_fr = pd.DataFrame(r)\n", "# df_aster_hist_fr['funding_rate_ts_dt'] = pd.to_datetime(df_aster_hist_fr['fundingTime'], unit='ms')\n", "# df_aster_hist_fr = df_aster_hist_fr.sort_values(by='fundingTime', ascending=True).drop_duplicates(subset=['symbol'], keep='last')" ] }, { "cell_type": "code", "execution_count": 24, "id": "1f3b65ee", "metadata": {}, "outputs": [], "source": [ "# ### ASTER Current FR ###\n", "# r = json.loads(requests.get('https://fapi.asterdex.com/fapi/v3/fundingInfo').text)\n", "# df_aster_current_fr = pd.DataFrame(r)\n", "# df_aster_current_fr['funding_rate_ts_dt'] = pd.to_datetime(df_aster_current_fr['time'], unit='ms')\n", "# df_aster_current_fr['funding_rate'] = df_aster_current_fr['interestRate']\n" ] }, { "cell_type": "code", "execution_count": 37, "id": "5176d5b1", "metadata": {}, "outputs": [], "source": [ "### ASTER EXCHANGE INFO ###\n", "fut_acct_exchangeInfo: dict = {\n", " \"url\": \"/fapi/v3/exchangeInfo\",\n", " \"method\": \"GET\",\n", " \"params\": {}\n", "}\n", "r: dict = await aster_auth.post_authenticated_url(fut_acct_exchangeInfo) # ty:ignore[invalid-assignment]\n", "df_aster_exch_info = pd.DataFrame(r['symbols'])\n", "df_aster_exch_info['min_order_size'] = df_aster_exch_info['filters'].apply(lambda x: [f for f in x if f.get('filterType', None) == 'LOT_SIZE'][0]['minQty'] )\n", "df_aster_exch_info['min_price'] = df_aster_exch_info['filters'].apply(lambda x: [f for f in x if f.get('filterType', None) == 'PRICE_FILTER'][0]['minPrice'] )\n", "\n", "fut_acct_ticker_stats: dict = {\n", " \"url\": \"/fapi/v3/ticker/24hr\",\n", " \"method\": \"GET\",\n", " \"params\": {}\n", "}\n", "r: dict = await aster_auth.post_authenticated_url(fut_acct_ticker_stats) # ty:ignore[invalid-assignment]\n", "df_aster_ticker_stats = pd.DataFrame(r)\n", "\n", "df_aster_exch_info = df_aster_exch_info.merge(df_aster_ticker_stats[['symbol','quoteVolume']].rename({'quoteVolume':'daily_volume'}, axis=1), on='symbol', how='left')\n", "df_aster_exch_info['daily_volume'] = df_aster_exch_info['daily_volume'].astype(float)" ] }, { "cell_type": "code", "execution_count": 38, "id": "e33ec721", "metadata": {}, "outputs": [], "source": [ "### Extended Current FR ###\n", "r = json.loads(requests.get('https://api.starknet.extended.exchange/api/v1/info/markets').text)\n", "df_extend_current_mkt_stats = pd.DataFrame(r['data'])\n", "\n", "df_extend_current_mkt_stats['funding_rate'] = df_extend_current_mkt_stats['marketStats'].apply(lambda x: x.get('fundingRate',{}))\n", "df_extend_current_mkt_stats['funding_rate_ts'] = df_extend_current_mkt_stats['marketStats'].apply(lambda x: x.get('nextFundingRate',{}))\n", "df_extend_current_mkt_stats['daily_volume'] = df_extend_current_mkt_stats['marketStats'].apply(lambda x: x.get('dailyVolume',{})).astype(float)\n", "df_extend_current_mkt_stats['min_order_size'] = df_extend_current_mkt_stats['tradingConfig'].apply(lambda x: x.get('minOrderSize',{}))\n", "df_extend_current_mkt_stats['min_price'] = df_extend_current_mkt_stats['tradingConfig'].apply(lambda x: x.get('minPriceChange',{}))\n", "df_extend_current_mkt_stats['max_leverage'] = df_extend_current_mkt_stats['tradingConfig'].apply(lambda x: x.get('maxLeverage',{}))\n", "\n", "\n", "# df_extend_current_fr = df_extend_current_mkt_stats[['status','name','assetName','collateralAssetName','category','min_order_size','min_price','max_leverage','funding_rate','funding_rate_ts']]\n", "# df_extend_current_fr['funding_rate_ts_dt'] = pd.to_datetime(df_extend_current_fr['funding_rate_ts'], unit='ms')\n", "# df_extend_current_fr = df_extend_current_fr.loc[df_extend_current_fr['status']=='ACTIVE',:]" ] }, { "cell_type": "code", "execution_count": 39, "id": "62815940", "metadata": {}, "outputs": [], "source": [ "### ASTER Current FR from Mark Price Req ###\n", "# r = json.loads(requests.get('https://fapi.asterdex.com/fapi/v3/exchangeInfo').text)\n", "# df_aster_current_mkt_stats = pd.DataFrame(r)\n", "# ### ASTER Current FR from Mark Price Req ###\n", "# r = json.loads(requests.get('https://fapi.asterdex.com/fapi/v3/premiumIndex').text)\n", "# df_aster_current_mkt_stats = pd.DataFrame(r)" ] }, { "cell_type": "code", "execution_count": 40, "id": "271a67c1", "metadata": {}, "outputs": [], "source": [ "### ASTER CURRENT FR - WS ###\n", "df_aster_current_fr = pd.DataFrame(json.loads(VAL_KEY.get('fund_rate_aster_all'))) # ty:ignore[invalid-argument-type]\n", "df_aster_current_fr = df_aster_current_fr[['s','E','r','T']].rename({'s':'symbol','E':'funding_rate_updated_ts_ms','r':'funding_rate','T':'next_funding_ts'}, axis=1)\n", "df_aster_current_fr['funding_rate_updated_dt'] = pd.to_datetime(df_aster_current_fr['funding_rate_updated_ts_ms'], unit='ms')\n", "df_aster_current_fr['funding_rate'] = df_aster_current_fr['funding_rate'].astype(float)\n", "df_aster_current_fr['time_delta_to_next_funding'] = pd.to_datetime(df_aster_current_fr['next_funding_ts'], unit='ms') - pd.Timestamp.now()\n", "df_aster_current_fr = df_aster_current_fr.merge(df_aster_exch_info[['symbol','daily_volume','min_order_size','min_price']], on='symbol', how='left')" ] }, { "cell_type": "code", "execution_count": 41, "id": "1ce2fde4", "metadata": {}, "outputs": [], "source": [ "### EXTEND CURRENT FR - WS ###\n", "df_extended_current_fr = pd.DataFrame(json.loads(VAL_KEY.get('fund_rate_extended_all'))) # ty:ignore[invalid-argument-type]\n", "df_extended_current_fr = df_extended_current_fr[['symbol','funding_rate_updated_ts_ms','funding_rate']]\n", "df_extended_current_fr['funding_rate_updated_dt'] = pd.to_datetime(df_extended_current_fr['funding_rate_updated_ts_ms'], unit='ms')\n", "df_extended_current_fr['funding_rate'] = df_extended_current_fr['funding_rate'].astype(float)\n", "\n", "# df_extended_current_fr = df_extended_current_fr.merge(df_extend_current_mkt_stats[['name','assetName','status', 'funding_rate_ts','max_leverage']].rename({'name':'symbol','funding_rate_ts':'next_funding_ts'}, axis=1), on='symbol', how='left')\n", "df_extended_current_fr = df_extended_current_fr.merge(df_extend_current_mkt_stats[['name','assetName','status', 'funding_rate_ts','min_order_size','min_price','daily_volume']].rename({'name':'symbol','funding_rate_ts':'next_funding_ts'}, axis=1), on='symbol', how='left')\n", "df_extended_current_fr = df_extended_current_fr.loc[df_extended_current_fr['status']=='ACTIVE',:]\n", "df_extended_current_fr['USDT_Symbol'] = df_extended_current_fr['assetName'] + 'USDT'\n", "df_extended_current_fr['time_delta_to_next_funding'] = pd.to_datetime(df_extended_current_fr['next_funding_ts'], unit='ms') - pd.Timestamp.now()" ] }, { "cell_type": "code", "execution_count": 42, "id": "ff88b413", "metadata": {}, "outputs": [], "source": [ "### COMBINED CURRENT FR - WS ###\n", "df_comb_current_fr = df_extended_current_fr.merge(df_aster_current_fr, left_on='USDT_Symbol', right_on='symbol', how='inner', suffixes=('_ext', '_ast'))\n", "df_comb_current_fr['next_funding_at_same_time'] = (abs(df_comb_current_fr['time_delta_to_next_funding_ext'].dt.total_seconds() - df_comb_current_fr['time_delta_to_next_funding_ast'].dt.total_seconds()) / 60) < 1\n", "df_comb_current_fr['net_funding_rate'] = (df_comb_current_fr[['funding_rate_ext', 'funding_rate_ast']].max(axis=1) - df_comb_current_fr[['funding_rate_ext', 'funding_rate_ast']].min(axis=1)).where(df_comb_current_fr['next_funding_at_same_time'], df_comb_current_fr['funding_rate_ext'])\n", "df_comb_current_fr['net_funding_rate_abs'] = df_comb_current_fr['net_funding_rate'].abs()\n", "\n", "### NET MULT ###\n", "df_comb_current_fr_net = df_comb_current_fr.merge(df_leverage_by_exch.loc[df_leverage_by_exch['exchange']=='EXTEND'], left_on='assetName', right_on='lh_asset').merge(df_leverage_by_exch.loc[df_leverage_by_exch['exchange']=='ASTER'], left_on='assetName', right_on='lh_asset', suffixes=('_ext', '_ast'))\n", "df_comb_current_fr_net['net_mult'] = 1 / ( ( 0.5 / df_comb_current_fr_net['max_leverage_ext'] ) + ( 0.5 / df_comb_current_fr_net['max_leverage_ast'] ) )\n", "df_comb_current_fr_net['net_mult'] = df_comb_current_fr_net['net_mult'].round(2)\n", "df_comb_current_fr_net['net_mult_x_net_fr_abs'] = df_comb_current_fr_net['net_funding_rate_abs'] * df_comb_current_fr_net['net_mult']" ] }, { "cell_type": "code", "execution_count": 51, "id": "f5ade993", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'symbol_ast': 'LITUSDT', 'symbol_extended': 'LIT-USD'}" ] }, "execution_count": 51, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_best_fr_rate = df_comb_current_fr_net[['symbol_ext','symbol_ast','daily_volume_ext','daily_volume_ast','min_price_ext','min_price_ast','min_order_size_ext','min_order_size_ast','funding_rate_ext','funding_rate_ast','max_leverage_ext','max_leverage_ast','lh_asset_ext','lh_asset_ast','rh_asset_ext','rh_asset_ast','net_mult_x_net_fr_abs','net_funding_rate_abs','net_funding_rate','next_funding_at_same_time']].sort_values(by='net_mult_x_net_fr_abs', ascending=False).reset_index(drop=True)\n", "df_best_fr_rate['hourly_dollars_per_1k'] = df_best_fr_rate['net_mult_x_net_fr_abs'] * 1000\n", "df_best_fr_rate['hourly_dollars_per_1k'] = df_best_fr_rate['hourly_dollars_per_1k'].round(2)\n", "\n", "\n", "min_daily_volume = 100_000\n", "df_best_fr_rate = df_best_fr_rate.loc[ (df_best_fr_rate['daily_volume_ast']>=min_daily_volume) & (df_best_fr_rate['daily_volume_ext']>min_daily_volume) ,:].reset_index(drop=True)\n", "\n", "\n", "best_next_funding_pair = {'symbol_ast':df_best_fr_rate['symbol_ast'][0],'symbol_extended':df_best_fr_rate['symbol_ext'][0]}\n", "best_next_funding_pair" ] }, { "cell_type": "code", "execution_count": null, "id": "3c11d2f4", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": 44, "id": "6f893d09", "metadata": {}, "outputs": [ { "ename": "KeyError", "evalue": "0", "output_type": "error", "traceback": [ "\u001b[31m---------------------------------------------------------------------------\u001b[39m", "\u001b[31mKeyError\u001b[39m Traceback (most recent call last)", "\u001b[36mFile \u001b[39m\u001b[32m~/miniconda3/envs/py_313/lib/python3.13/site-packages/pandas/core/indexes/base.py:3641\u001b[39m, in \u001b[36mIndex.get_loc\u001b[39m\u001b[34m(self, key)\u001b[39m\n\u001b[32m 3640\u001b[39m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[32m-> \u001b[39m\u001b[32m3641\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[30;43mself\u001b[39;49m\u001b[30;43m.\u001b[39;49m\u001b[30;43m_engine\u001b[39;49m\u001b[30;43m.\u001b[39;49m\u001b[30;43mget_loc\u001b[39;49m\u001b[30;43m(\u001b[39;49m\u001b[30;43mcasted_key\u001b[39;49m\u001b[30;43m)\u001b[39;49m\n\u001b[32m 3642\u001b[39m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mKeyError\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m err:\n", "\u001b[36mFile \u001b[39m\u001b[32mpandas/_libs/index.pyx:168\u001b[39m, in \u001b[36mpandas._libs.index.IndexEngine.get_loc\u001b[39m\u001b[34m()\u001b[39m\n\u001b[32m--> \u001b[39m\u001b[32m168\u001b[39m \u001b[33m'Could not get source, probably due dynamically evaluated source code.'\u001b[39m\n", "\u001b[36mFile \u001b[39m\u001b[32mpandas/_libs/index.pyx:197\u001b[39m, in \u001b[36mpandas._libs.index.IndexEngine.get_loc\u001b[39m\u001b[34m()\u001b[39m\n\u001b[32m--> \u001b[39m\u001b[32m197\u001b[39m \u001b[33m'Could not get source, probably due dynamically evaluated source code.'\u001b[39m\n", "\u001b[36mFile \u001b[39m\u001b[32mpandas/_libs/hashtable_class_helper.pxi:2761\u001b[39m, in \u001b[36mpandas._libs.hashtable.Int64HashTable.get_item\u001b[39m\u001b[34m()\u001b[39m\n\u001b[32m-> \u001b[39m\u001b[32m2761\u001b[39m \u001b[33m'Could not get source, probably due dynamically evaluated source code.'\u001b[39m\n", "\u001b[36mFile \u001b[39m\u001b[32mpandas/_libs/hashtable_class_helper.pxi:2785\u001b[39m, in \u001b[36mpandas._libs.hashtable.Int64HashTable.get_item\u001b[39m\u001b[34m()\u001b[39m\n\u001b[32m-> \u001b[39m\u001b[32m2785\u001b[39m \u001b[33m'Could not get source, probably due dynamically evaluated source code.'\u001b[39m\n", "\u001b[31mKeyError\u001b[39m: 0", "\nThe above exception was the direct cause of the following exception:\n", "\u001b[31mKeyError\u001b[39m Traceback (most recent call last)", "\u001b[36mCell\u001b[39m\u001b[36m \u001b[39m\u001b[32mIn[44]\u001b[39m\u001b[32m, line 2\u001b[39m\n\u001b[32m 1\u001b[39m ASTER = structs.Perpetual_Exchange(\n\u001b[32m----> \u001b[39m\u001b[32m2\u001b[39m mult = int(df_best_fr_rate[\u001b[33m'max_leverage_ast'\u001b[39m][\u001b[32m0\u001b[39m]),\n\u001b[32m 3\u001b[39m lh_asset = df_best_fr_rate[\u001b[33m'lh_asset_ast'\u001b[39m][\u001b[32m0\u001b[39m],\n\u001b[32m 4\u001b[39m rh_asset = df_best_fr_rate[\u001b[33m'rh_asset_ast'\u001b[39m][\u001b[32m0\u001b[39m],\n\u001b[32m 5\u001b[39m symbol_asset_separator = \u001b[33m''\u001b[39m,\n", "\u001b[36mFile \u001b[39m\u001b[32m~/miniconda3/envs/py_313/lib/python3.13/site-packages/pandas/core/series.py:959\u001b[39m, in \u001b[36mSeries.__getitem__\u001b[39m\u001b[34m(self, key)\u001b[39m\n\u001b[32m 954\u001b[39m key = unpack_1tuple(key)\n\u001b[32m 956\u001b[39m \u001b[38;5;28;01melif\u001b[39;00m key_is_scalar:\n\u001b[32m 957\u001b[39m \u001b[38;5;66;03m# Note: GH#50617 in 3.0 we changed int key to always be treated as\u001b[39;00m\n\u001b[32m 958\u001b[39m \u001b[38;5;66;03m# a label, matching DataFrame behavior.\u001b[39;00m\n\u001b[32m--> \u001b[39m\u001b[32m959\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[30;43mself\u001b[39;49m\u001b[30;43m.\u001b[39;49m\u001b[30;43m_get_value\u001b[39;49m\u001b[30;43m(\u001b[39;49m\u001b[30;43mkey\u001b[39;49m\u001b[30;43m)\u001b[39;49m\n\u001b[32m 961\u001b[39m \u001b[38;5;66;03m# Convert generator to list before going through hashable part\u001b[39;00m\n\u001b[32m 962\u001b[39m \u001b[38;5;66;03m# (We will iterate through the generator there to check for slices)\u001b[39;00m\n\u001b[32m 963\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m is_iterator(key):\n", "\u001b[36mFile \u001b[39m\u001b[32m~/miniconda3/envs/py_313/lib/python3.13/site-packages/pandas/core/series.py:1046\u001b[39m, in \u001b[36mSeries._get_value\u001b[39m\u001b[34m(self, label, takeable)\u001b[39m\n\u001b[32m 1043\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m._values[label]\n\u001b[32m 1045\u001b[39m \u001b[38;5;66;03m# Similar to Index.get_value, but we do not fall back to positional\u001b[39;00m\n\u001b[32m-> \u001b[39m\u001b[32m1046\u001b[39m loc = \u001b[30;43mself\u001b[39;49m\u001b[30;43m.\u001b[39;49m\u001b[30;43mindex\u001b[39;49m\u001b[30;43m.\u001b[39;49m\u001b[30;43mget_loc\u001b[39;49m\u001b[30;43m(\u001b[39;49m\u001b[30;43mlabel\u001b[39;49m\u001b[30;43m)\u001b[39;49m\n\u001b[32m 1048\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m is_integer(loc):\n\u001b[32m 1049\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m._values[loc]\n", "\u001b[36mFile \u001b[39m\u001b[32m~/miniconda3/envs/py_313/lib/python3.13/site-packages/pandas/core/indexes/base.py:3648\u001b[39m, in \u001b[36mIndex.get_loc\u001b[39m\u001b[34m(self, key)\u001b[39m\n\u001b[32m 3643\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(casted_key, \u001b[38;5;28mslice\u001b[39m) \u001b[38;5;129;01mor\u001b[39;00m (\n\u001b[32m 3644\u001b[39m \u001b[38;5;28misinstance\u001b[39m(casted_key, abc.Iterable)\n\u001b[32m 3645\u001b[39m \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28many\u001b[39m(\u001b[38;5;28misinstance\u001b[39m(x, \u001b[38;5;28mslice\u001b[39m) \u001b[38;5;28;01mfor\u001b[39;00m x \u001b[38;5;129;01min\u001b[39;00m casted_key)\n\u001b[32m 3646\u001b[39m ):\n\u001b[32m 3647\u001b[39m \u001b[38;5;28;01mraise\u001b[39;00m InvalidIndexError(key) \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01merr\u001b[39;00m\n\u001b[32m-> \u001b[39m\u001b[32m3648\u001b[39m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mKeyError\u001b[39;00m(key) \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01merr\u001b[39;00m\n\u001b[32m 3649\u001b[39m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mTypeError\u001b[39;00m:\n\u001b[32m 3650\u001b[39m \u001b[38;5;66;03m# If we have a listlike key, _check_indexing_error will raise\u001b[39;00m\n\u001b[32m 3651\u001b[39m \u001b[38;5;66;03m# InvalidIndexError. Otherwise we fall through and re-raise\u001b[39;00m\n\u001b[32m 3652\u001b[39m \u001b[38;5;66;03m# the TypeError.\u001b[39;00m\n\u001b[32m 3653\u001b[39m \u001b[38;5;28mself\u001b[39m._check_indexing_error(key)\n", "\u001b[31mKeyError\u001b[39m: 0" ] } ], "source": [ "ASTER = structs.Perpetual_Exchange(\n", " mult = int(df_best_fr_rate['max_leverage_ast'][0]),\n", " lh_asset = df_best_fr_rate['lh_asset_ast'][0],\n", " rh_asset = df_best_fr_rate['rh_asset_ast'][0],\n", " symbol_asset_separator = '',\n", " initial_funding_rate=float(df_best_fr_rate['funding_rate_ast'][0]),\n", " min_price=float(df_best_fr_rate['min_price_ast'][0]),\n", " min_order_size=float(df_best_fr_rate['min_order_size_ast'][0]),\n", ")\n", " \n", "EXTEND = structs.Perpetual_Exchange(\n", " mult = int(df_best_fr_rate['max_leverage_ext'][0]),\n", " lh_asset = df_best_fr_rate['lh_asset_ext'][0],\n", " rh_asset = df_best_fr_rate['rh_asset_ext'][0],\n", " symbol_asset_separator = '-',\n", " initial_funding_rate=float(df_best_fr_rate['funding_rate_ext'][0]),\n", " min_price=float(df_best_fr_rate['min_price_ext'][0]),\n", " min_order_size=float(df_best_fr_rate['min_order_size_ext'][0]),\n", ")" ] }, { "cell_type": "code", "execution_count": 64, "id": "88fea071", "metadata": {}, "outputs": [ { "data": { "application/vnd.microsoft.datawrangler.viewer.v0+json": { "columns": [ { "name": "index", "rawType": "int64", "type": "integer" }, { "name": "symbol_ext", "rawType": "str", "type": "string" }, { "name": "funding_rate_updated_ts_ms_ext", "rawType": "int64", "type": "integer" }, { "name": "funding_rate_ext", "rawType": "float64", "type": "float" }, { "name": "funding_rate_updated_dt_ext", "rawType": "datetime64[ms]", "type": "datetime" }, { "name": "assetName", "rawType": "str", "type": "string" }, { "name": "status", "rawType": "str", "type": "string" }, { "name": "next_funding_ts_ext", "rawType": "float64", "type": "float" }, { "name": "min_order_size_ext", "rawType": "str", "type": "string" }, { "name": "min_price_ext", "rawType": "str", "type": "string" }, { "name": "USDT_Symbol", "rawType": "str", "type": "string" }, { "name": "time_delta_to_next_funding_ext", "rawType": "timedelta64[us]", "type": "unknown" }, { "name": "symbol_ast", "rawType": "str", "type": "string" }, { "name": "funding_rate_updated_ts_ms_ast", "rawType": "int64", "type": "integer" }, { "name": "funding_rate_ast", "rawType": "float64", "type": "float" }, { "name": "next_funding_ts_ast", "rawType": "int64", "type": "integer" }, { "name": "funding_rate_updated_dt_ast", "rawType": "datetime64[ms]", "type": "datetime" }, { "name": "time_delta_to_next_funding_ast", "rawType": "timedelta64[us]", "type": "unknown" }, { "name": "min_order_size_ast", "rawType": "str", "type": "string" }, { "name": "min_price_ast", "rawType": "str", "type": "string" }, { "name": "next_funding_at_same_time", "rawType": "bool", "type": "boolean" }, { "name": "net_funding_rate", "rawType": "float64", "type": "float" }, { "name": "net_funding_rate_abs", "rawType": "float64", "type": "float" } ], "ref": "2d1a573a-6048-4cf4-9729-fa83adba2a90", "rows": [ [ "4", "BNB-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "BNB", "ACTIVE", "1777622400000.0", "0.01", "0.01", "BNBUSDT", "0 days 00:23:07.734530", "BNBUSDT", "1777621011000", "0.00018382", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.01", "0.010", "True", "0.00017082000000000002", "0.00017082000000000002" ], [ "2", "SOL-USD", "1777620959597", "-1.2e-05", "2026-05-01 07:35:59.597000", "SOL", "ACTIVE", "1777622400000.0", "0.1", "0.01", "SOLUSDT", "0 days 00:23:07.734530", "SOLUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.01", "0.4200", "True", "0.00011200000000000001", "0.00011200000000000001" ], [ "9", "AVAX-USD", "1777620959597", "-8e-06", "2026-05-01 07:35:59.597000", "AVAX", "ACTIVE", "1777622400000.0", "1", "0.001", "AVAXUSDT", "0 days 00:23:07.734530", "AVAXUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.0010", "True", "0.00010800000000000001", "0.00010800000000000001" ], [ "29", "MOODENG-USD", "1777620959597", "4e-06", "2026-05-01 07:35:59.597000", "MOODENG", "ACTIVE", "1777622400000.0", "100", "0.00001", "MOODENGUSDT", "0 days 00:23:07.734530", "MOODENGUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.0000100", "True", "9.6e-05", "9.6e-05" ], [ "64", "ZEC-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "ZEC", "ACTIVE", "1777622400000.0", "0.1", "0.001", "ZECUSDT", "0 days 00:23:07.734530", "ZECUSDT", "1777621011000", "-8.105e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.001", "0.0100", "True", "9.405000000000001e-05", "9.405000000000001e-05" ], [ "27", "1000BONK-USD", "1777620959597", "-4.4e-05", "2026-05-01 07:35:59.597000", "1000BONK", "ACTIVE", "1777622400000.0", "1000", "0.000001", "1000BONKUSDT", "0 days 00:23:07.734530", "1000BONKUSDT", "1777621011000", "5e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.0000010", "True", "9.400000000000001e-05", "9.400000000000001e-05" ], [ "18", "DOT-USD", "1777620959597", "9e-06", "2026-05-01 07:35:59.597000", "DOT", "ACTIVE", "1777622400000.0", "10", "0.0001", "DOTUSDT", "0 days 00:23:07.734530", "DOTUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.1", "0.380", "True", "9.1e-05", "9.1e-05" ], [ "26", "SEI-USD", "1777620959597", "1.2e-05", "2026-05-01 07:35:59.597000", "SEI", "ACTIVE", "1777622400000.0", "100", "0.00001", "SEIUSDT", "0 days 00:23:07.734530", "SEIUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.000010", "True", "8.8e-05", "8.8e-05" ], [ "13", "LINK-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "LINK", "ACTIVE", "1777622400000.0", "1", "0.001", "LINKUSDT", "0 days 00:23:07.734530", "LINKUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.01", "0.464", "True", "8.7e-05", "8.7e-05" ], [ "16", "WLD-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "WLD", "ACTIVE", "1777622400000.0", "10", "0.0001", "WLDUSDT", "0 days 00:23:07.734530", "WLDUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.000100", "True", "8.7e-05", "8.7e-05" ], [ "14", "BCH-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "BCH", "ACTIVE", "1777622400000.0", "0.01", "0.01", "BCHUSDT", "0 days 00:23:07.734530", "BCHUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.001", "0.01", "True", "8.7e-05", "8.7e-05" ], [ "15", "ARB-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "ARB", "ACTIVE", "1777622400000.0", "10", "0.0001", "ARBUSDT", "0 days 00:23:07.734530", "ARBUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.1", "0.000100", "True", "8.7e-05", "8.7e-05" ], [ "3", "DOGE-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "DOGE", "ACTIVE", "1777622400000.0", "100", "0.00001", "DOGEUSDT", "0 days 00:23:07.734530", "DOGEUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.002440", "True", "8.7e-05", "8.7e-05" ], [ "8", "NEAR-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "NEAR", "ACTIVE", "1777622400000.0", "10", "0.0001", "NEARUSDT", "0 days 00:23:07.734530", "NEARUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.0480", "True", "8.7e-05", "8.7e-05" ], [ "11", "TRX-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "TRX", "ACTIVE", "1777622400000.0", "100", "0.00001", "TRXUSDT", "0 days 00:23:07.734530", "TRXUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.00132", "True", "8.7e-05", "8.7e-05" ], [ "10", "LTC-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "LTC", "ACTIVE", "1777622400000.0", "0.1", "0.01", "LTCUSDT", "0 days 00:23:07.734530", "LTCUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.001", "3.61", "True", "8.7e-05", "8.7e-05" ], [ "6", "1000PEPE-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "1000PEPE", "ACTIVE", "1777622400000.0", "1000", "0.000001", "1000PEPEUSDT", "0 days 00:23:07.734530", "1000PEPEUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.0000001", "True", "8.7e-05", "8.7e-05" ], [ "32", "ENA-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "ENA", "ACTIVE", "1777622400000.0", "100", "0.00001", "ENAUSDT", "0 days 00:23:07.734530", "ENAUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.0000100", "True", "8.7e-05", "8.7e-05" ], [ "28", "1000SHIB-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "1000SHIB", "ACTIVE", "1777622400000.0", "1000", "0.000001", "1000SHIBUSDT", "0 days 00:23:07.734530", "1000SHIBUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.000160", "True", "8.7e-05", "8.7e-05" ], [ "53", "CRV-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "CRV", "ACTIVE", "1777622400000.0", "10", "0.00001", "CRVUSDT", "0 days 00:23:07.734530", "CRVUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.1", "0.031", "True", "8.7e-05", "8.7e-05" ], [ "21", "UNI-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "UNI", "ACTIVE", "1777622400000.0", "1", "0.0001", "UNIUSDT", "0 days 00:23:07.734530", "UNIUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.3730", "True", "8.7e-05", "8.7e-05" ], [ "12", "ADA-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "ADA", "ACTIVE", "1777622400000.0", "10", "0.0001", "ADAUSDT", "0 days 00:23:07.734530", "ADAUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.01740", "True", "8.7e-05", "8.7e-05" ], [ "22", "APT-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "APT", "ACTIVE", "1777622400000.0", "1", "0.0001", "APTUSDT", "0 days 00:23:07.734530", "APTUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.1", "0.00010", "True", "8.7e-05", "8.7e-05" ], [ "20", "SUI-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "SUI", "ACTIVE", "1777622400000.0", "10", "0.0001", "SUIUSDT", "0 days 00:23:07.734530", "SUIUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.1", "0.000100", "True", "8.7e-05", "8.7e-05" ], [ "17", "OP-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "OP", "ACTIVE", "1777622400000.0", "10", "0.0001", "OPUSDT", "0 days 00:23:07.734530", "OPUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.1", "0.0001000", "True", "8.7e-05", "8.7e-05" ], [ "75", "XLM-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "XLM", "ACTIVE", "1777622400000.0", "100", "0.00001", "XLMUSDT", "0 days 00:23:07.734530", "XLMUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.000010", "True", "8.7e-05", "8.7e-05" ], [ "57", "LINEA-USD", "1777620959597", "2e-05", "2026-05-01 07:35:59.597000", "LINEA", "ACTIVE", "1777622400000.0", "1000", "0.000001", "LINEAUSDT", "0 days 00:23:07.734530", "LINEAUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.0000010", "True", "8e-05", "8e-05" ], [ "36", "TRUMP-USD", "1777620959597", "-2e-05", "2026-05-01 07:35:59.597000", "TRUMP", "ACTIVE", "1777622400000.0", "1", "0.001", "TRUMPUSDT", "0 days 00:23:07.734530", "TRUMPUSDT", "1777621011000", "5e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.01", "0.00100", "True", "7.000000000000001e-05", "7.000000000000001e-05" ], [ "70", "LIT-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "LIT", "ACTIVE", "1777622400000.0", "10", "0.0001", "LITUSDT", "0 days 00:23:07.734530", "LITUSDT", "1777621011000", "8.282e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.0001000", "True", "6.981999999999999e-05", "6.981999999999999e-05" ], [ "0", "BTC-USD", "1777620959597", "5e-06", "2026-05-01 07:35:59.597000", "BTC", "ACTIVE", "1777622400000.0", "0.0001", "1", "BTCUSDT", "0 days 00:23:07.734530", "BTCUSDT", "1777621011000", "-5.894e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.001", "1", "True", "6.394e-05", "6.394e-05" ], [ "74", "XPT-USD", "1777620959597", "5.4e-05", "2026-05-01 07:35:59.597000", "XPT", "ACTIVE", "1777622400000.0", "0.01", "0.1", "XPTUSDT", "0 days 00:23:07.734530", "XPTUSDT", "1777621011000", "0.0", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.001", "0.0100", "True", "5.4e-05", "5.4e-05" ], [ "35", "AAVE-USD", "1777620959597", "4.9e-05", "2026-05-01 07:35:59.597000", "AAVE", "ACTIVE", "1777622400000.0", "0.1", "0.01", "AAVEUSDT", "0 days 00:23:07.734530", "AAVEUSDT", "1777621011000", "0.0001", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.1", "4.400", "True", "5.1000000000000006e-05", "5.1000000000000006e-05" ], [ "54", "ZORA-USD", "1777620959597", "4e-06", "2026-05-01 07:35:59.597000", "ZORA", "ACTIVE", "1777622400000.0", "1000", "0.000001", "ZORAUSDT", "0 days 00:23:07.734530", "ZORAUSDT", "1777621011000", "5e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.0000100", "True", "4.6e-05", "4.6e-05" ], [ "56", "WLFI-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "WLFI", "ACTIVE", "1777622400000.0", "100", "0.00001", "WLFIUSDT", "0 days 00:23:07.734530", "WLFIUSDT", "1777621011000", "5.848e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.0001000", "True", "4.5480000000000005e-05", "4.5480000000000005e-05" ], [ "1", "ETH-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "ETH", "ACTIVE", "1777622400000.0", "0.01", "0.1", "ETHUSDT", "0 days 00:23:07.734530", "ETHUSDT", "1777621011000", "-3.238e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.001", "0.01", "True", "4.5379999999999996e-05", "4.5379999999999996e-05" ], [ "48", "TON-USD", "1777620959597", "6e-06", "2026-05-01 07:35:59.597000", "TON", "ACTIVE", "1777622400000.0", "10", "0.0001", "TONUSDT", "0 days 00:23:07.734530", "TONUSDT", "1777621011000", "5e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.1", "0.000100", "True", "4.4e-05", "4.4e-05" ], [ "43", "INIT-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "INIT", "ACTIVE", "1777622400000.0", "10", "0.00001", "INITUSDT", "0 days 00:23:07.734530", "INITUSDT", "1777621011000", "-3.006e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.0000100", "True", "4.306e-05", "4.306e-05" ], [ "71", "XMR-USD", "1777620959597", "5.5e-05", "2026-05-01 07:35:59.597000", "XMR", "ACTIVE", "1777622400000.0", "0.1", "0.01", "XMRUSDT", "0 days 00:23:07.734530", "XMRUSDT", "1777621011000", "1.25e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.001", "0.01", "True", "4.25e-05", "4.25e-05" ], [ "46", "LDO-USD", "1777620959597", "-2.6e-05", "2026-05-01 07:35:59.597000", "LDO", "ACTIVE", "1777622400000.0", "10", "0.0001", "LDOUSDT", "0 days 00:23:07.734530", "LDOUSDT", "1777621011000", "1.25e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.0010000", "True", "3.85e-05", "3.85e-05" ], [ "79", "CHIP-USD", "1777620959597", "-0.000121", "2026-05-01 07:35:59.597000", "CHIP", "ACTIVE", "1777622400000.0", "100", "0.000001", "CHIPUSDT", "0 days 00:23:07.734530", "CHIPUSDT", "1777621011000", "-0.00015834", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.0000100", "True", "3.7340000000000005e-05", "3.7340000000000005e-05" ], [ "33", "FARTCOIN-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "FARTCOIN", "ACTIVE", "1777622400000.0", "10", "0.00001", "FARTCOINUSDT", "0 days 00:23:07.734530", "FARTCOINUSDT", "1777621011000", "5e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.1", "0.000100", "True", "3.7000000000000005e-05", "3.7000000000000005e-05" ], [ "60", "AVNT-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "AVNT", "ACTIVE", "1777622400000.0", "10", "0.0001", "AVNTUSDT", "0 days 00:23:07.734530", "AVNTUSDT", "1777621011000", "5e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.0001000", "True", "3.7000000000000005e-05", "3.7000000000000005e-05" ], [ "51", "PUMP-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "PUMP", "ACTIVE", "1777622400000.0", "1000", "0.000001", "PUMPUSDT", "0 days 00:23:07.734530", "PUMPUSDT", "1777621011000", "5e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.0000010", "True", "3.7000000000000005e-05", "3.7000000000000005e-05" ], [ "31", "PENGU-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "PENGU", "ACTIVE", "1777622400000.0", "1000", "0.000001", "PENGUUSDT", "0 days 00:23:07.734530", "PENGUUSDT", "1777621011000", "5e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.0000010", "True", "3.7000000000000005e-05", "3.7000000000000005e-05" ], [ "19", "ONDO-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "ONDO", "ACTIVE", "1777622400000.0", "10", "0.0001", "ONDOUSDT", "0 days 00:23:07.734530", "ONDOUSDT", "1777621011000", "5e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.1", "0.000100", "True", "3.7000000000000005e-05", "3.7000000000000005e-05" ], [ "50", "XAG-USD", "1777620959597", "1.4e-05", "2026-05-01 07:35:59.597000", "XAG", "ACTIVE", "1777622400000.0", "0.1", "0.001", "XAGUSDT", "0 days 00:23:07.734530", "XAGUSDT", "1777621011000", "4.798e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.001", "0.0100", "True", "3.3979999999999997e-05", "3.3979999999999997e-05" ], [ "65", "CAKE-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "CAKE", "ACTIVE", "1777622400000.0", "10", "0.0001", "CAKEUSDT", "0 days 00:23:07.734530", "CAKEUSDT", "1777621011000", "-1.867e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.00500", "True", "3.167e-05", "3.167e-05" ], [ "58", "ASTER-USD", "1777620959597", "1.3e-05", "2026-05-01 07:35:59.597000", "ASTER", "ACTIVE", "1777622400000.0", "10", "0.00001", "ASTERUSDT", "0 days 00:23:07.734530", "ASTERUSDT", "1777621011000", "4.213e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.01", "0.00010", "True", "2.913e-05", "2.913e-05" ], [ "55", "XPL-USD", "1777620959597", "2.5e-05", "2026-05-01 07:35:59.597000", "XPL", "ACTIVE", "1777622400000.0", "10", "0.00001", "XPLUSDT", "0 days 00:23:07.734530", "XPLUSDT", "1777621011000", "5e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "1", "0.0001000", "True", "2.5e-05", "2.5e-05" ], [ "30", "HYPE-USD", "1777620959597", "9e-06", "2026-05-01 07:35:59.597000", "HYPE", "ACTIVE", "1777622400000.0", "0.1", "0.001", "HYPEUSDT", "0 days 00:23:07.734530", "HYPEUSDT", "1777621011000", "2.936e-05", "1777622400000", "2026-05-01 07:36:51", "0 days 00:23:08.055814", "0.01", "0.00100", "True", "2.036e-05", "2.036e-05" ] ], "shape": { "columns": 22, "rows": 81 } }, "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
symbol_extfunding_rate_updated_ts_ms_extfunding_rate_extfunding_rate_updated_dt_extassetNamestatusnext_funding_ts_extmin_order_size_extmin_price_extUSDT_Symbol...funding_rate_updated_ts_ms_astfunding_rate_astnext_funding_ts_astfunding_rate_updated_dt_asttime_delta_to_next_funding_astmin_order_size_astmin_price_astnext_funding_at_same_timenet_funding_ratenet_funding_rate_abs
4BNB-USD17776209595970.0000132026-05-01 07:35:59.597BNBACTIVE1.777622e+120.010.01BNBUSDT...17776210110000.00018417776224000002026-05-01 07:36:510 days 00:23:08.0558140.010.010True1.708200e-041.708200e-04
2SOL-USD1777620959597-0.0000122026-05-01 07:35:59.597SOLACTIVE1.777622e+120.10.01SOLUSDT...17776210110000.00010017776224000002026-05-01 07:36:510 days 00:23:08.0558140.010.4200True1.120000e-041.120000e-04
9AVAX-USD1777620959597-0.0000082026-05-01 07:35:59.597AVAXACTIVE1.777622e+1210.001AVAXUSDT...17776210110000.00010017776224000002026-05-01 07:36:510 days 00:23:08.05581410.0010True1.080000e-041.080000e-04
29MOODENG-USD17776209595970.0000042026-05-01 07:35:59.597MOODENGACTIVE1.777622e+121000.00001MOODENGUSDT...17776210110000.00010017776224000002026-05-01 07:36:510 days 00:23:08.05581410.0000100True9.600000e-059.600000e-05
64ZEC-USD17776209595970.0000132026-05-01 07:35:59.597ZECACTIVE1.777622e+120.10.001ZECUSDT...1777621011000-0.00008117776224000002026-05-01 07:36:510 days 00:23:08.0558140.0010.0100True9.405000e-059.405000e-05
..................................................................
73AZTEC-USD17776209595970.0000132026-05-01 07:35:59.597AZTECACTIVE1.777622e+1210000.000001AZTECUSDT...17776210110000.00001317776224000002026-05-01 07:36:510 days 00:23:08.05581410.0000100True5.000000e-075.000000e-07
76VVV-USD17776209595970.0000132026-05-01 07:35:59.597VVVACTIVE1.777622e+1210.0001VVVUSDT...17776210110000.00001317776224000002026-05-01 07:36:510 days 00:23:08.0558140.010.001000True5.000000e-075.000000e-07
77EDGE-USD17776209595970.0000132026-05-01 07:35:59.597EDGEACTIVE1.777622e+12100.00001EDGEUSDT...17776210110000.00001317776224000002026-05-01 07:36:510 days 00:23:08.05581410.0001000True5.000000e-075.000000e-07
78CC-USD17776209595970.0000132026-05-01 07:35:59.597CCACTIVE1.777622e+121000.00001CCUSDT...17776210110000.00001317776224000002026-05-01 07:36:510 days 00:23:08.05581410.0000100True5.000000e-075.000000e-07
80PIEVERSE-USD17776209595970.0000132026-05-01 07:35:59.597PIEVERSEACTIVE1.777622e+12100.00001PIEVERSEUSDT...17776210110000.00001317776224000002026-05-01 07:36:510 days 00:23:08.05581410.0001000True5.000000e-075.000000e-07
\n", "

81 rows × 22 columns

\n", "
" ], "text/plain": [ " symbol_ext funding_rate_updated_ts_ms_ext funding_rate_ext \\\n", "4 BNB-USD 1777620959597 0.000013 \n", "2 SOL-USD 1777620959597 -0.000012 \n", "9 AVAX-USD 1777620959597 -0.000008 \n", "29 MOODENG-USD 1777620959597 0.000004 \n", "64 ZEC-USD 1777620959597 0.000013 \n", ".. ... ... ... \n", "73 AZTEC-USD 1777620959597 0.000013 \n", "76 VVV-USD 1777620959597 0.000013 \n", "77 EDGE-USD 1777620959597 0.000013 \n", "78 CC-USD 1777620959597 0.000013 \n", "80 PIEVERSE-USD 1777620959597 0.000013 \n", "\n", " funding_rate_updated_dt_ext assetName status next_funding_ts_ext \\\n", "4 2026-05-01 07:35:59.597 BNB ACTIVE 1.777622e+12 \n", "2 2026-05-01 07:35:59.597 SOL ACTIVE 1.777622e+12 \n", "9 2026-05-01 07:35:59.597 AVAX ACTIVE 1.777622e+12 \n", "29 2026-05-01 07:35:59.597 MOODENG ACTIVE 1.777622e+12 \n", "64 2026-05-01 07:35:59.597 ZEC ACTIVE 1.777622e+12 \n", ".. ... ... ... ... \n", "73 2026-05-01 07:35:59.597 AZTEC ACTIVE 1.777622e+12 \n", "76 2026-05-01 07:35:59.597 VVV ACTIVE 1.777622e+12 \n", "77 2026-05-01 07:35:59.597 EDGE ACTIVE 1.777622e+12 \n", "78 2026-05-01 07:35:59.597 CC ACTIVE 1.777622e+12 \n", "80 2026-05-01 07:35:59.597 PIEVERSE ACTIVE 1.777622e+12 \n", "\n", " min_order_size_ext min_price_ext USDT_Symbol ... \\\n", "4 0.01 0.01 BNBUSDT ... \n", "2 0.1 0.01 SOLUSDT ... \n", "9 1 0.001 AVAXUSDT ... \n", "29 100 0.00001 MOODENGUSDT ... \n", "64 0.1 0.001 ZECUSDT ... \n", ".. ... ... ... ... \n", "73 1000 0.000001 AZTECUSDT ... \n", "76 1 0.0001 VVVUSDT ... \n", "77 10 0.00001 EDGEUSDT ... \n", "78 100 0.00001 CCUSDT ... \n", "80 10 0.00001 PIEVERSEUSDT ... \n", "\n", " funding_rate_updated_ts_ms_ast funding_rate_ast next_funding_ts_ast \\\n", "4 1777621011000 0.000184 1777622400000 \n", "2 1777621011000 0.000100 1777622400000 \n", "9 1777621011000 0.000100 1777622400000 \n", "29 1777621011000 0.000100 1777622400000 \n", "64 1777621011000 -0.000081 1777622400000 \n", ".. ... ... ... \n", "73 1777621011000 0.000013 1777622400000 \n", "76 1777621011000 0.000013 1777622400000 \n", "77 1777621011000 0.000013 1777622400000 \n", "78 1777621011000 0.000013 1777622400000 \n", "80 1777621011000 0.000013 1777622400000 \n", "\n", " funding_rate_updated_dt_ast time_delta_to_next_funding_ast \\\n", "4 2026-05-01 07:36:51 0 days 00:23:08.055814 \n", "2 2026-05-01 07:36:51 0 days 00:23:08.055814 \n", "9 2026-05-01 07:36:51 0 days 00:23:08.055814 \n", "29 2026-05-01 07:36:51 0 days 00:23:08.055814 \n", "64 2026-05-01 07:36:51 0 days 00:23:08.055814 \n", ".. ... ... \n", "73 2026-05-01 07:36:51 0 days 00:23:08.055814 \n", "76 2026-05-01 07:36:51 0 days 00:23:08.055814 \n", "77 2026-05-01 07:36:51 0 days 00:23:08.055814 \n", "78 2026-05-01 07:36:51 0 days 00:23:08.055814 \n", "80 2026-05-01 07:36:51 0 days 00:23:08.055814 \n", "\n", " min_order_size_ast min_price_ast next_funding_at_same_time \\\n", "4 0.01 0.010 True \n", "2 0.01 0.4200 True \n", "9 1 0.0010 True \n", "29 1 0.0000100 True \n", "64 0.001 0.0100 True \n", ".. ... ... ... \n", "73 1 0.0000100 True \n", "76 0.01 0.001000 True \n", "77 1 0.0001000 True \n", "78 1 0.0000100 True \n", "80 1 0.0001000 True \n", "\n", " net_funding_rate net_funding_rate_abs \n", "4 1.708200e-04 1.708200e-04 \n", "2 1.120000e-04 1.120000e-04 \n", "9 1.080000e-04 1.080000e-04 \n", "29 9.600000e-05 9.600000e-05 \n", "64 9.405000e-05 9.405000e-05 \n", ".. ... ... \n", "73 5.000000e-07 5.000000e-07 \n", "76 5.000000e-07 5.000000e-07 \n", "77 5.000000e-07 5.000000e-07 \n", "78 5.000000e-07 5.000000e-07 \n", "80 5.000000e-07 5.000000e-07 \n", "\n", "[81 rows x 22 columns]" ] }, "execution_count": 64, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_comb_current_fr.sort_values(by='net_funding_rate_abs', ascending=False)" ] }, { "cell_type": "code", "execution_count": null, "id": "04c38156", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "125ee5ed", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "cdcda9a8", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "py_313", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.13.13" } }, "nbformat": 4, "nbformat_minor": 5 }