{ "cells": [ { "cell_type": "code", "execution_count": 1, "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", "\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": 2, "id": "20665e82", "metadata": {}, "outputs": [], "source": [ "### ********** TODO: ADD IN VOLUME DATA TO FILTER MKTS ###" ] }, { "cell_type": "code", "execution_count": 3, "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": 4, "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": 5, "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['min_order_size'] = df_extend_current_mkt_stats['tradingConfig'].apply(lambda x: x.get('minOrderSize',{}))\n", "df_extend_current_mkt_stats['min_price_change'] = 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_change','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": 6, "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": null, "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()" ] }, { "cell_type": "code", "execution_count": null, "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']].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": 13, "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 = 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_mult'] = 1 / ( ( 0.5 / df_comb_current_fr['max_leverage_ext'] ) + ( 0.5 / df_comb_current_fr['max_leverage_ast'] ) )\n", "df_comb_current_fr['net_mult'] = df_comb_current_fr['net_mult'].round(2)\n", "df_comb_current_fr['net_mult_x_net_fr_abs'] = df_comb_current_fr['net_funding_rate_abs'] * df_comb_current_fr['net_mult']" ] }, { "cell_type": "code", "execution_count": 14, "id": "2a57ff44", "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": "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": "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" }, { "name": "exchange_ext", "rawType": "str", "type": "string" }, { "name": "lh_asset_ext", "rawType": "str", "type": "string" }, { "name": "rh_asset_ext", "rawType": "str", "type": "string" }, { "name": "max_leverage_ext", "rawType": "int64", "type": "integer" }, { "name": "max_notional_ext", "rawType": "int64", "type": "integer" }, { "name": "exchange_ast", "rawType": "str", "type": "string" }, { "name": "lh_asset_ast", "rawType": "str", "type": "string" }, { "name": "rh_asset_ast", "rawType": "str", "type": "string" }, { "name": "max_leverage_ast", "rawType": "int64", "type": "integer" }, { "name": "max_notional_ast", "rawType": "int64", "type": "integer" }, { "name": "net_mult", "rawType": "float64", "type": "float" }, { "name": "net_mult_x_net_fr_abs", "rawType": "float64", "type": "float" } ], "ref": "828df49a-a9ee-4c48-b86a-3cead015814c", "rows": [ [ "0", "BTC-USD", "1777438379597", "1.3e-05", "2026-04-29 04:52:59.597000", "BTC", "ACTIVE", "1777496400000.0", "BTCUSDT", "0 days 00:56:57.938774", "BTCUSDT", "1777491132000", "3.866e-05", "1777507200000", "2026-04-29 19:32:12", "0 days 03:56:58.188791", "False", "1.3e-05", "1.3e-05", "EXTEND", "BTC", "USD", "50", "4000000", "ASTER", "BTC", "USDT", "150", "300000", "75.0", "0.000975" ], [ "1", "ETH-USD", "1777438379597", "1.3e-05", "2026-04-29 04:52:59.597000", "ETH", "ACTIVE", "1777496400000.0", "ETHUSDT", "0 days 00:56:57.938774", "ETHUSDT", "1777491132000", "8.26e-06", "1777507200000", "2026-04-29 19:32:12", "0 days 03:56:58.188791", "False", "1.3e-05", "1.3e-05", "EXTEND", "ETH", "USD", "50", "4000000", "ASTER", "ETH", "USDT", "150", "300000", "75.0", "0.000975" ], [ "2", "SOL-USD", "1777438379597", "-5e-06", "2026-04-29 04:52:59.597000", "SOL", "ACTIVE", "1777496400000.0", "SOLUSDT", "0 days 00:56:57.938774", "SOLUSDT", "1777491132000", "-0.00010428", "1777507200000", "2026-04-29 19:32:12", "0 days 03:56:58.188791", "False", "-5e-06", "5e-06", "EXTEND", "SOL", "USD", "50", "1000000", "ASTER", "SOL", "USDT", "100", "50000", "66.67", "0.00033335000000000005" ], [ "3", "DOGE-USD", "1777438379597", "1.3e-05", "2026-04-29 04:52:59.597000", "DOGE", "ACTIVE", "1777496400000.0", "DOGEUSDT", "0 days 00:56:57.938774", "DOGEUSDT", "1777491132000", "7.854e-05", "1777507200000", "2026-04-29 19:32:12", "0 days 03:56:58.188791", "False", "1.3e-05", "1.3e-05", "EXTEND", "DOGE", "USD", "50", "500000", "ASTER", "DOGE", "USDT", "75", "80000", "60.0", "0.00078" ], [ "4", "BNB-USD", "1777438379597", "1.3e-05", "2026-04-29 04:52:59.597000", "BNB", "ACTIVE", "1777496400000.0", "BNBUSDT", "0 days 00:56:57.938774", "BNBUSDT", "1777491132000", "0.0", "1777507200000", "2026-04-29 19:32:12", "0 days 03:56:58.188791", "False", "1.3e-05", "1.3e-05", "EXTEND", "BNB", "USD", "50", "500000", "ASTER", "BNB", "USDT", "100", "10000", "66.67", "0.0008667099999999999" ], [ "5", "XRP-USD", "1777438379597", "2e-06", "2026-04-29 04:52:59.597000", "XRP", "ACTIVE", "1777496400000.0", "XRPUSDT", "0 days 00:56:57.938774", "XRPUSDT", "1777491132000", "-7.617e-05", "1777507200000", "2026-04-29 19:32:12", "0 days 03:56:58.188791", "False", "2e-06", "2e-06", "EXTEND", "XRP", "USD", "50", "500000", "ASTER", "XRP", "USDT", "100", "40000", "66.67", "0.00013334" ], [ "6", "SUI-USD", "1777438379597", "-9e-06", "2026-04-29 04:52:59.597000", "SUI", "ACTIVE", "1777496400000.0", "SUIUSDT", "0 days 00:56:57.938774", "SUIUSDT", "1777491132000", "2.932e-05", "1777507200000", "2026-04-29 19:32:12", "0 days 03:56:58.188791", "False", "-9e-06", "9e-06", "EXTEND", "SUI", "USD", "50", "500000", "ASTER", "SUI", "USDT", "75", "5416", "60.0", "0.00054" ], [ "7", "HYPE-USD", "1777438379597", "1.3e-05", "2026-04-29 04:52:59.597000", "HYPE", "ACTIVE", "1777496400000.0", "HYPEUSDT", "0 days 00:56:57.938774", "HYPEUSDT", "1777491132000", "5e-05", "1777492800000", "2026-04-29 19:32:12", "-1 days +23:56:58.188791", "False", "1.3e-05", "1.3e-05", "EXTEND", "HYPE", "USD", "50", "1000000", "ASTER", "HYPE", "USDT", "300", "1000", "85.71", "0.00111423" ], [ "8", "ENA-USD", "1777438379597", "1.3e-05", "2026-04-29 04:52:59.597000", "ENA", "ACTIVE", "1777496400000.0", "ENAUSDT", "0 days 00:56:57.938774", "ENAUSDT", "1777491132000", "0.0001", "1777507200000", "2026-04-29 19:32:12", "0 days 03:56:58.188791", "False", "1.3e-05", "1.3e-05", "EXTEND", "ENA", "USD", "50", "500000", "ASTER", "ENA", "USDT", "25", "30473", "33.33", "0.00043328999999999997" ], [ "9", "AAVE-USD", "1777438379597", "6e-06", "2026-04-29 04:52:59.597000", "AAVE", "ACTIVE", "1777496400000.0", "AAVEUSDT", "0 days 00:56:57.938774", "AAVEUSDT", "1777491132000", "0.0001", "1777507200000", "2026-04-29 19:32:12", "0 days 03:56:58.188791", "False", "6e-06", "6e-06", "EXTEND", "AAVE", "USD", "50", "500000", "ASTER", "AAVE", "USDT", "10", "115290", "16.67", "0.00010002000000000001" ], [ "10", "TRUMP-USD", "1777438379597", "-1e-06", "2026-04-29 04:52:59.597000", "TRUMP", "ACTIVE", "1777496400000.0", "TRUMPUSDT", "0 days 00:56:57.938774", "TRUMPUSDT", "1777491132000", "5e-05", "1777492800000", "2026-04-29 19:32:12", "-1 days +23:56:58.188791", "False", "-1e-06", "1e-06", "EXTEND", "TRUMP", "USD", "25", "400000", "ASTER", "TRUMP", "USDT", "50", "5567", "33.33", "3.3329999999999994e-05" ], [ "11", "INIT-USD", "1777438379597", "1.3e-05", "2026-04-29 04:52:59.597000", "INIT", "ACTIVE", "1777496400000.0", "INITUSDT", "0 days 00:56:57.938774", "INITUSDT", "1777491132000", "1.25e-05", "1777492800000", "2026-04-29 19:32:12", "-1 days +23:56:58.188791", "False", "1.3e-05", "1.3e-05", "EXTEND", "INIT", "USD", "5", "100000", "ASTER", "INIT", "USDT", "50", "5000", "9.09", "0.00011816999999999999" ], [ "12", "XAU-USD", "1777438379597", "2.3e-05", "2026-04-29 04:52:59.597000", "XAU", "ACTIVE", "1777496400000.0", "XAUUSDT", "0 days 00:56:57.938774", "XAUUSDT", "1777491132000", "0.00013741", "1777492800000", "2026-04-29 19:32:12", "-1 days +23:56:58.188791", "False", "2.3e-05", "2.3e-05", "EXTEND", "XAU", "USD", "25", "2000000", "ASTER", "XAU", "USDT", "75", "2500", "37.5", "0.0008625" ], [ "13", "XAG-USD", "1777438379597", "3e-06", "2026-04-29 04:52:59.597000", "XAG", "ACTIVE", "1777496400000.0", "XAGUSDT", "0 days 00:56:57.938774", "XAGUSDT", "1777491132000", "0.0002762", "1777492800000", "2026-04-29 19:32:12", "-1 days +23:56:58.188791", "False", "3e-06", "3e-06", "EXTEND", "XAG", "USD", "10", "1000000", "ASTER", "XAG", "USDT", "100", "50000", "18.18", "5.454e-05" ], [ "14", "ZORA-USD", "1777438379597", "1.3e-05", "2026-04-29 04:52:59.597000", "ZORA", "ACTIVE", "1777496400000.0", "ZORAUSDT", "0 days 00:56:57.938774", "ZORAUSDT", "1777491132000", "5e-05", "1777492800000", "2026-04-29 19:32:12", "-1 days +23:56:58.188791", "False", "1.3e-05", "1.3e-05", "EXTEND", "ZORA", "USD", "5", "100000", "ASTER", "ZORA", "USDT", "5", "100000", "5.0", "6.5e-05" ], [ "15", "WLFI-USD", "1777438379597", "-1.3e-05", "2026-04-29 04:52:59.597000", "WLFI", "ACTIVE", "1777496400000.0", "WLFIUSDT", "0 days 00:56:57.938774", "WLFIUSDT", "1777491132000", "5e-05", "1777492800000", "2026-04-29 19:32:12", "-1 days +23:56:58.188791", "False", "-1.3e-05", "1.3e-05", "EXTEND", "WLFI", "USD", "10", "250000", "ASTER", "WLFI", "USDT", "25", "104869", "14.29", "0.00018576999999999998" ], [ "16", "ASTER-USD", "1777438379597", "1.3e-05", "2026-04-29 04:52:59.597000", "ASTER", "ACTIVE", "1777496400000.0", "ASTERUSDT", "0 days 00:56:57.938774", "ASTERUSDT", "1777491132000", "5e-05", "1777492800000", "2026-04-29 19:32:12", "-1 days +23:56:58.188791", "False", "1.3e-05", "1.3e-05", "EXTEND", "ASTER", "USD", "25", "400000", "ASTER", "ASTER", "USDT", "75", "20000", "37.5", "0.0004875" ], [ "17", "ZEC-USD", "1777438379597", "-2.2e-05", "2026-04-29 04:52:59.597000", "ZEC", "ACTIVE", "1777496400000.0", "ZECUSDT", "0 days 00:56:57.938774", "ZECUSDT", "1777491132000", "7.86e-06", "1777492800000", "2026-04-29 19:32:12", "-1 days +23:56:58.188791", "False", "-2.2e-05", "2.2e-05", "EXTEND", "ZEC", "USD", "10", "250000", "ASTER", "ZEC", "USDT", "75", "6250", "17.65", "0.00038829999999999995" ], [ "18", "4-USD", "1777438379597", "1.3e-05", "2026-04-29 04:52:59.597000", "4", "ACTIVE", "1777496400000.0", "4USDT", "0 days 00:56:57.938774", "4USDT", "1777491132000", "1.25e-05", "1777492800000", "2026-04-29 19:32:12", "-1 days +23:56:58.188791", "False", "1.3e-05", "1.3e-05", "EXTEND", "4", "USD", "5", "100000", "ASTER", "4", "USDT", "50", "5000", "9.09", "0.00011816999999999999" ], [ "19", "LIT-USD", "1777438379597", "1.3e-05", "2026-04-29 04:52:59.597000", "LIT", "ACTIVE", "1777496400000.0", "LITUSDT", "0 days 00:56:57.938774", "LITUSDT", "1777491132000", "1.25e-05", "1777492800000", "2026-04-29 19:32:12", "-1 days +23:56:58.188791", "False", "1.3e-05", "1.3e-05", "EXTEND", "LIT", "USD", "25", "400000", "ASTER", "LIT", "USDT", "50", "2500", "33.33", "0.00043328999999999997" ], [ "20", "XMR-USD", "1777438379597", "2.2e-05", "2026-04-29 04:52:59.597000", "XMR", "ACTIVE", "1777496400000.0", "XMRUSDT", "0 days 00:56:57.938774", "XMRUSDT", "1777491132000", "1.25e-05", "1777492800000", "2026-04-29 19:32:12", "-1 days +23:56:58.188791", "False", "2.2e-05", "2.2e-05", "EXTEND", "XMR", "USD", "25", "400000", "ASTER", "XMR", "USDT", "50", "10000", "33.33", "0.0007332599999999999" ], [ "21", "XPT-USD", "1777438379597", "0.000168", "2026-04-29 04:52:59.597000", "XPT", "ACTIVE", "1777496400000.0", "XPTUSDT", "0 days 00:56:57.938774", "XPTUSDT", "1777491132000", "0.00059244", "1777507200000", "2026-04-29 19:32:12", "0 days 03:56:58.188791", "False", "0.000168", "0.000168", "EXTEND", "XPT", "USD", "5", "1000000", "ASTER", "XPT", "USDT", "3", "30000", "3.75", "0.0006299999999999999" ], [ "22", "CHIP-USD", "1777438379597", "-0.000388", "2026-04-29 04:52:59.597000", "CHIP", "ACTIVE", "1777496400000.0", "CHIPUSDT", "0 days 00:56:57.938774", "CHIPUSDT", "1777491132000", "-0.00031985", "1777492800000", "2026-04-29 19:32:12", "-1 days +23:56:58.188791", "False", "-0.000388", "0.000388", "EXTEND", "CHIP", "USD", "5", "100000", "ASTER", "CHIP", "USDT", "50", "5000", "9.09", "0.00352692" ] ], "shape": { "columns": 30, "rows": 23 } }, "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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \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_extUSDT_Symboltime_delta_to_next_funding_extsymbol_ast...rh_asset_extmax_leverage_extmax_notional_extexchange_astlh_asset_astrh_asset_astmax_leverage_astmax_notional_astnet_multnet_mult_x_net_fr_abs
0BTC-USD17774383795970.0000132026-04-29 04:52:59.597BTCACTIVE1.777496e+12BTCUSDT0 days 00:56:57.938774BTCUSDT...USD504000000ASTERBTCUSDT15030000075.000.000975
1ETH-USD17774383795970.0000132026-04-29 04:52:59.597ETHACTIVE1.777496e+12ETHUSDT0 days 00:56:57.938774ETHUSDT...USD504000000ASTERETHUSDT15030000075.000.000975
2SOL-USD1777438379597-0.0000052026-04-29 04:52:59.597SOLACTIVE1.777496e+12SOLUSDT0 days 00:56:57.938774SOLUSDT...USD501000000ASTERSOLUSDT1005000066.670.000333
3DOGE-USD17774383795970.0000132026-04-29 04:52:59.597DOGEACTIVE1.777496e+12DOGEUSDT0 days 00:56:57.938774DOGEUSDT...USD50500000ASTERDOGEUSDT758000060.000.000780
4BNB-USD17774383795970.0000132026-04-29 04:52:59.597BNBACTIVE1.777496e+12BNBUSDT0 days 00:56:57.938774BNBUSDT...USD50500000ASTERBNBUSDT1001000066.670.000867
5XRP-USD17774383795970.0000022026-04-29 04:52:59.597XRPACTIVE1.777496e+12XRPUSDT0 days 00:56:57.938774XRPUSDT...USD50500000ASTERXRPUSDT1004000066.670.000133
6SUI-USD1777438379597-0.0000092026-04-29 04:52:59.597SUIACTIVE1.777496e+12SUIUSDT0 days 00:56:57.938774SUIUSDT...USD50500000ASTERSUIUSDT75541660.000.000540
7HYPE-USD17774383795970.0000132026-04-29 04:52:59.597HYPEACTIVE1.777496e+12HYPEUSDT0 days 00:56:57.938774HYPEUSDT...USD501000000ASTERHYPEUSDT300100085.710.001114
8ENA-USD17774383795970.0000132026-04-29 04:52:59.597ENAACTIVE1.777496e+12ENAUSDT0 days 00:56:57.938774ENAUSDT...USD50500000ASTERENAUSDT253047333.330.000433
9AAVE-USD17774383795970.0000062026-04-29 04:52:59.597AAVEACTIVE1.777496e+12AAVEUSDT0 days 00:56:57.938774AAVEUSDT...USD50500000ASTERAAVEUSDT1011529016.670.000100
10TRUMP-USD1777438379597-0.0000012026-04-29 04:52:59.597TRUMPACTIVE1.777496e+12TRUMPUSDT0 days 00:56:57.938774TRUMPUSDT...USD25400000ASTERTRUMPUSDT50556733.330.000033
11INIT-USD17774383795970.0000132026-04-29 04:52:59.597INITACTIVE1.777496e+12INITUSDT0 days 00:56:57.938774INITUSDT...USD5100000ASTERINITUSDT5050009.090.000118
12XAU-USD17774383795970.0000232026-04-29 04:52:59.597XAUACTIVE1.777496e+12XAUUSDT0 days 00:56:57.938774XAUUSDT...USD252000000ASTERXAUUSDT75250037.500.000862
13XAG-USD17774383795970.0000032026-04-29 04:52:59.597XAGACTIVE1.777496e+12XAGUSDT0 days 00:56:57.938774XAGUSDT...USD101000000ASTERXAGUSDT1005000018.180.000055
14ZORA-USD17774383795970.0000132026-04-29 04:52:59.597ZORAACTIVE1.777496e+12ZORAUSDT0 days 00:56:57.938774ZORAUSDT...USD5100000ASTERZORAUSDT51000005.000.000065
15WLFI-USD1777438379597-0.0000132026-04-29 04:52:59.597WLFIACTIVE1.777496e+12WLFIUSDT0 days 00:56:57.938774WLFIUSDT...USD10250000ASTERWLFIUSDT2510486914.290.000186
16ASTER-USD17774383795970.0000132026-04-29 04:52:59.597ASTERACTIVE1.777496e+12ASTERUSDT0 days 00:56:57.938774ASTERUSDT...USD25400000ASTERASTERUSDT752000037.500.000487
17ZEC-USD1777438379597-0.0000222026-04-29 04:52:59.597ZECACTIVE1.777496e+12ZECUSDT0 days 00:56:57.938774ZECUSDT...USD10250000ASTERZECUSDT75625017.650.000388
184-USD17774383795970.0000132026-04-29 04:52:59.5974ACTIVE1.777496e+124USDT0 days 00:56:57.9387744USDT...USD5100000ASTER4USDT5050009.090.000118
19LIT-USD17774383795970.0000132026-04-29 04:52:59.597LITACTIVE1.777496e+12LITUSDT0 days 00:56:57.938774LITUSDT...USD25400000ASTERLITUSDT50250033.330.000433
20XMR-USD17774383795970.0000222026-04-29 04:52:59.597XMRACTIVE1.777496e+12XMRUSDT0 days 00:56:57.938774XMRUSDT...USD25400000ASTERXMRUSDT501000033.330.000733
21XPT-USD17774383795970.0001682026-04-29 04:52:59.597XPTACTIVE1.777496e+12XPTUSDT0 days 00:56:57.938774XPTUSDT...USD51000000ASTERXPTUSDT3300003.750.000630
22CHIP-USD1777438379597-0.0003882026-04-29 04:52:59.597CHIPACTIVE1.777496e+12CHIPUSDT0 days 00:56:57.938774CHIPUSDT...USD5100000ASTERCHIPUSDT5050009.090.003527
\n", "

23 rows × 30 columns

\n", "
" ], "text/plain": [ " symbol_ext funding_rate_updated_ts_ms_ext funding_rate_ext \\\n", "0 BTC-USD 1777438379597 0.000013 \n", "1 ETH-USD 1777438379597 0.000013 \n", "2 SOL-USD 1777438379597 -0.000005 \n", "3 DOGE-USD 1777438379597 0.000013 \n", "4 BNB-USD 1777438379597 0.000013 \n", "5 XRP-USD 1777438379597 0.000002 \n", "6 SUI-USD 1777438379597 -0.000009 \n", "7 HYPE-USD 1777438379597 0.000013 \n", "8 ENA-USD 1777438379597 0.000013 \n", "9 AAVE-USD 1777438379597 0.000006 \n", "10 TRUMP-USD 1777438379597 -0.000001 \n", "11 INIT-USD 1777438379597 0.000013 \n", "12 XAU-USD 1777438379597 0.000023 \n", "13 XAG-USD 1777438379597 0.000003 \n", "14 ZORA-USD 1777438379597 0.000013 \n", "15 WLFI-USD 1777438379597 -0.000013 \n", "16 ASTER-USD 1777438379597 0.000013 \n", "17 ZEC-USD 1777438379597 -0.000022 \n", "18 4-USD 1777438379597 0.000013 \n", "19 LIT-USD 1777438379597 0.000013 \n", "20 XMR-USD 1777438379597 0.000022 \n", "21 XPT-USD 1777438379597 0.000168 \n", "22 CHIP-USD 1777438379597 -0.000388 \n", "\n", " funding_rate_updated_dt_ext assetName status next_funding_ts_ext \\\n", "0 2026-04-29 04:52:59.597 BTC ACTIVE 1.777496e+12 \n", "1 2026-04-29 04:52:59.597 ETH ACTIVE 1.777496e+12 \n", "2 2026-04-29 04:52:59.597 SOL ACTIVE 1.777496e+12 \n", "3 2026-04-29 04:52:59.597 DOGE ACTIVE 1.777496e+12 \n", "4 2026-04-29 04:52:59.597 BNB ACTIVE 1.777496e+12 \n", "5 2026-04-29 04:52:59.597 XRP ACTIVE 1.777496e+12 \n", "6 2026-04-29 04:52:59.597 SUI ACTIVE 1.777496e+12 \n", "7 2026-04-29 04:52:59.597 HYPE ACTIVE 1.777496e+12 \n", "8 2026-04-29 04:52:59.597 ENA ACTIVE 1.777496e+12 \n", "9 2026-04-29 04:52:59.597 AAVE ACTIVE 1.777496e+12 \n", "10 2026-04-29 04:52:59.597 TRUMP ACTIVE 1.777496e+12 \n", "11 2026-04-29 04:52:59.597 INIT ACTIVE 1.777496e+12 \n", "12 2026-04-29 04:52:59.597 XAU ACTIVE 1.777496e+12 \n", "13 2026-04-29 04:52:59.597 XAG ACTIVE 1.777496e+12 \n", "14 2026-04-29 04:52:59.597 ZORA ACTIVE 1.777496e+12 \n", "15 2026-04-29 04:52:59.597 WLFI ACTIVE 1.777496e+12 \n", "16 2026-04-29 04:52:59.597 ASTER ACTIVE 1.777496e+12 \n", "17 2026-04-29 04:52:59.597 ZEC ACTIVE 1.777496e+12 \n", "18 2026-04-29 04:52:59.597 4 ACTIVE 1.777496e+12 \n", "19 2026-04-29 04:52:59.597 LIT ACTIVE 1.777496e+12 \n", "20 2026-04-29 04:52:59.597 XMR ACTIVE 1.777496e+12 \n", "21 2026-04-29 04:52:59.597 XPT ACTIVE 1.777496e+12 \n", "22 2026-04-29 04:52:59.597 CHIP ACTIVE 1.777496e+12 \n", "\n", " USDT_Symbol time_delta_to_next_funding_ext symbol_ast ... rh_asset_ext \\\n", "0 BTCUSDT 0 days 00:56:57.938774 BTCUSDT ... USD \n", "1 ETHUSDT 0 days 00:56:57.938774 ETHUSDT ... USD \n", "2 SOLUSDT 0 days 00:56:57.938774 SOLUSDT ... USD \n", "3 DOGEUSDT 0 days 00:56:57.938774 DOGEUSDT ... USD \n", "4 BNBUSDT 0 days 00:56:57.938774 BNBUSDT ... USD \n", "5 XRPUSDT 0 days 00:56:57.938774 XRPUSDT ... USD \n", "6 SUIUSDT 0 days 00:56:57.938774 SUIUSDT ... USD \n", "7 HYPEUSDT 0 days 00:56:57.938774 HYPEUSDT ... USD \n", "8 ENAUSDT 0 days 00:56:57.938774 ENAUSDT ... USD \n", "9 AAVEUSDT 0 days 00:56:57.938774 AAVEUSDT ... USD \n", "10 TRUMPUSDT 0 days 00:56:57.938774 TRUMPUSDT ... USD \n", "11 INITUSDT 0 days 00:56:57.938774 INITUSDT ... USD \n", "12 XAUUSDT 0 days 00:56:57.938774 XAUUSDT ... USD \n", "13 XAGUSDT 0 days 00:56:57.938774 XAGUSDT ... USD \n", "14 ZORAUSDT 0 days 00:56:57.938774 ZORAUSDT ... USD \n", "15 WLFIUSDT 0 days 00:56:57.938774 WLFIUSDT ... USD \n", "16 ASTERUSDT 0 days 00:56:57.938774 ASTERUSDT ... USD \n", "17 ZECUSDT 0 days 00:56:57.938774 ZECUSDT ... USD \n", "18 4USDT 0 days 00:56:57.938774 4USDT ... USD \n", "19 LITUSDT 0 days 00:56:57.938774 LITUSDT ... USD \n", "20 XMRUSDT 0 days 00:56:57.938774 XMRUSDT ... USD \n", "21 XPTUSDT 0 days 00:56:57.938774 XPTUSDT ... USD \n", "22 CHIPUSDT 0 days 00:56:57.938774 CHIPUSDT ... USD \n", "\n", " max_leverage_ext max_notional_ext exchange_ast lh_asset_ast \\\n", "0 50 4000000 ASTER BTC \n", "1 50 4000000 ASTER ETH \n", "2 50 1000000 ASTER SOL \n", "3 50 500000 ASTER DOGE \n", "4 50 500000 ASTER BNB \n", "5 50 500000 ASTER XRP \n", "6 50 500000 ASTER SUI \n", "7 50 1000000 ASTER HYPE \n", "8 50 500000 ASTER ENA \n", "9 50 500000 ASTER AAVE \n", "10 25 400000 ASTER TRUMP \n", "11 5 100000 ASTER INIT \n", "12 25 2000000 ASTER XAU \n", "13 10 1000000 ASTER XAG \n", "14 5 100000 ASTER ZORA \n", "15 10 250000 ASTER WLFI \n", "16 25 400000 ASTER ASTER \n", "17 10 250000 ASTER ZEC \n", "18 5 100000 ASTER 4 \n", "19 25 400000 ASTER LIT \n", "20 25 400000 ASTER XMR \n", "21 5 1000000 ASTER XPT \n", "22 5 100000 ASTER CHIP \n", "\n", " rh_asset_ast max_leverage_ast max_notional_ast net_mult \\\n", "0 USDT 150 300000 75.00 \n", "1 USDT 150 300000 75.00 \n", "2 USDT 100 50000 66.67 \n", "3 USDT 75 80000 60.00 \n", "4 USDT 100 10000 66.67 \n", "5 USDT 100 40000 66.67 \n", "6 USDT 75 5416 60.00 \n", "7 USDT 300 1000 85.71 \n", "8 USDT 25 30473 33.33 \n", "9 USDT 10 115290 16.67 \n", "10 USDT 50 5567 33.33 \n", "11 USDT 50 5000 9.09 \n", "12 USDT 75 2500 37.50 \n", "13 USDT 100 50000 18.18 \n", "14 USDT 5 100000 5.00 \n", "15 USDT 25 104869 14.29 \n", "16 USDT 75 20000 37.50 \n", "17 USDT 75 6250 17.65 \n", "18 USDT 50 5000 9.09 \n", "19 USDT 50 2500 33.33 \n", "20 USDT 50 10000 33.33 \n", "21 USDT 3 30000 3.75 \n", "22 USDT 50 5000 9.09 \n", "\n", " net_mult_x_net_fr_abs \n", "0 0.000975 \n", "1 0.000975 \n", "2 0.000333 \n", "3 0.000780 \n", "4 0.000867 \n", "5 0.000133 \n", "6 0.000540 \n", "7 0.001114 \n", "8 0.000433 \n", "9 0.000100 \n", "10 0.000033 \n", "11 0.000118 \n", "12 0.000862 \n", "13 0.000055 \n", "14 0.000065 \n", "15 0.000186 \n", "16 0.000487 \n", "17 0.000388 \n", "18 0.000118 \n", "19 0.000433 \n", "20 0.000733 \n", "21 0.000630 \n", "22 0.003527 \n", "\n", "[23 rows x 30 columns]" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_comb_current_fr" ] }, { "cell_type": "code", "execution_count": 10, "id": "f5ade993", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'symbol_ast': 'CHIPUSDT', 'symbol_extended': 'CHIP-USD'}" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_best_fr_rate = df_comb_current_fr[['symbol_ext','symbol_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", "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": 11, "id": "6f893d09", "metadata": {}, "outputs": [], "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", ")" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'mult': 50,\n", " 'lh_asset': 'CHIP',\n", " 'rh_asset': 'USDT',\n", " 'symbol_asset_separator': ''}" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "asdict(obj=ASTER)" ] }, { "cell_type": "code", "execution_count": null, "id": "4e40e668", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": 32, "id": "1925a6e5", "metadata": {}, "outputs": [], "source": [ "config_update = {\n", " # 'Config': {\n", " # 'Loop_Sleep_Sec': 0.00,\n", " # 'Min_Time_To_Funding_Minutes': 60,\n", " # 'Min_Fund_Rate_Pct_To_Trade': 0.001,\n", " # 'Price_Worsener_Extend': 0.0,\n", " # 'Price_Worsener_Aster': 0.0,\n", " # 'Switch_To_Taker_Seconds': 1,\n", " # },\n", " 'Logging': {\n", " 'Log_Summary_Each_Loop': True,\n", " # 'Print_Summary_Each_Loop': False,\n", " },\n", " 'Overrides': {\n", " # 'Allow_Ordering_Aster': True,\n", " # 'Allow_Ordering_Extend': True,\n", " 'Allow_Symbol_Change': True,\n", " # 'Flip_Side_For_Testing': False,\n", " # 'Flatten_Open_Positions': False,\n", " },\n", "}" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [], "source": [ "with open(file='algo_config.json', mode='r', encoding='utf-8') as f: \n", " Algo_Config: dict = json.load(fp=f)" ] }, { "cell_type": "code", "execution_count": 34, "id": "1d52bea1", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'Updated_Timestamp': 1777494015477,\n", " 'Config': {'Loop_Sleep_Sec': 0.0,\n", " 'Max_Order_Over_Notional_Ratio': 1.05,\n", " 'Max_Target_Notional': 0.0,\n", " 'Min_Time_To_Funding_Minutes': 60,\n", " 'Min_Fund_Rate_Pct_To_Trade': 0.0,\n", " 'Price_Worsener_Aster': 0.0,\n", " 'Price_Worsener_Extend': -0.1,\n", " 'Switch_To_Taker_Seconds': 1,\n", " 'Target_Open_Cash_Position': 10},\n", " 'Logging': {'Log_Summary_Each_Loop': False, 'Print_Summary_Each_Loop': False},\n", " 'Overrides': {'Allow_Symbol_Change': False}}" ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Algo_Config" ] }, { "cell_type": "code", "execution_count": null, "id": "a54cf89f", "metadata": {}, "outputs": [], "source": [] }, { "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 }