This commit is contained in:
Cryptoval Trading Technologies
2026-03-12 00:38:01 +00:00
parent cf487995ca
commit 755d0a1e80
25 changed files with 1057 additions and 865 deletions
@@ -0,0 +1,185 @@
{
"refdata": {
"assets": @inc=http://@env{CONFIG_SERVICE}/refdata/assets
, "instruments": @inc=http://@env{CONFIG_SERVICE}/refdata/instruments
, "exchange_instruments": @inc=http://@env{CONFIG_SERVICE}/refdata/exchange_instruments
, "dynamic_instrument_exchanges": ["ALPACA"]
, "exchanges": {
"COINBASE_AT": {
"exchange_id": "COINBASE"
, "name": "Coinbase Advanced Trade"
, "type": "SPOT"
, "mktdata" : {
"class": "cvttpy_trading.exchanges.coinbase.spot.mkt_data.CoinbaseSpotMdFeed"
, "reconnect_secs": 2
, "max_connections": 10
, "price_throttle": true
, "api": {
"web_socket": {
"url": "wss://ws-feed.exchange.coinbase.com"
}
}
}
}
, "BNBSPOT": {
"exchange_id": "BNBSPOT"
, "name": "Binance Spot"
, "type": "SPOT"
, "mktdata" : {
"class": "cvttpy_trading.exchanges.binance.spot.mkt_data.BnbSpotMktDataFeed"
, "max_connections": 10
, "reconnect_secs": 2.0
, "api": {
"web_socket": {
"url": "wss://stream.binance.com/ws"
},
"REST": {
"depth_snapshot_url": ["GET", "https://api.binance.com/api/v3/depth"],
}
}
}
}
, "BNBFUT": {
"exchange_id": "BNBFUT"
, "name": "Binance Futures USD-M"
, "type": "FUTURES"
, "mktdata" : {
"class": "cvttpy_trading.exchanges.binance.futures.mkt_data.BnbFutMktDataFeed"
, "max_connections": 10
, "reconnect_secs": 2.0
, "api": {
"web_socket": {
"url": "wss://fstream.binance.com/ws"
},
"REST": {
"depth_snapshot_url": ["GET", "https://fapi.binance.com/fapi/v1/depth"],
}
}
}
}
}
}
, "comm": @inc=http://@env{CONFIG_SERVICE}/apps/common/comm
, "md_recorder": {
"instrument_groups": {
"BNBFUT_CLOUD28": [
"BNBFUT:PERP-BTC-USDT"
, "BNBFUT:PERP-ETH-USDT"
],
"BNBSPOT_CLOUD28": [
"BNBSPOT:PAIR-ADA-USDT"
, "BNBSPOT:PAIR-AVAX-USDT"
, "BNBSPOT:PAIR-BCH-USDT"
, "BNBSPOT:PAIR-BTC-USDT"
, "BNBSPOT:PAIR-DOT-USDT"
, "BNBSPOT:PAIR-ETH-USDT"
, "BNBSPOT:PAIR-LTC-USDT"
, "BNBSPOT:PAIR-SOL-USDT"
, "BNBSPOT:PAIR-USDC-USDT"
, "BNBSPOT:PAIR-XRP-USDT"
],
"COINBASE_CLOUD28": [
"COINBASE:PAIR-ADA-USD"
, "COINBASE:PAIR-AVAX-USD"
, "COINBASE:PAIR-BCH-USD"
, "COINBASE:PAIR-BTC-USD"
, "COINBASE:PAIR-DOT-USD"
, "COINBASE:PAIR-ETH-USD"
, "COINBASE:PAIR-LTC-USD"
, "COINBASE:PAIR-SOL-USD"
, "COINBASE:PAIR-XRP-USD"
]
}
, "db": {
"class": "cvttpy_tools.db.timescale.tsdb_client.TimescaleDbClient"
}
, "flush_interval_sec": 0.5
, "collections": {
"__dummy__": null
, "ALPACA": {
# dynamic instruments names
"tables": {
"trades": "alpaca_iex.md_trades"
, "booktops": "alpaca_iex.md_booktops"
, "booksnaps": "alpaca_iex.md_booksnaps"
}
}
, "BNBSPOT": {
"instruments": {
"PAIR-ADA-USDT": ["TRADES", "BOOK_TOP"]
, "PAIR-AVAX-USDT": ["TRADES", "BOOK_TOP"]
, "PAIR-BCH-USDT": ["TRADES", "BOOK_TOP"]
, "PAIR-BTC-USDT": ["TRADES", "BOOK_TOP"]
, "PAIR-DOT-USDT": ["TRADES", "BOOK_TOP"]
, "PAIR-ETH-USDT": ["TRADES", "BOOK_TOP"]
, "PAIR-LTC-USDT": ["TRADES", "BOOK_TOP"]
, "PAIR-SOL-USDT": ["TRADES", "BOOK_TOP"]
, "PAIR-USDC-USDT": ["TRADES", "BOOK_TOP"]
, "PAIR-XRP-USDT": ["TRADES", "BOOK_TOP"]
}
, "tables": {
"trades": "bnbspot.md_trades"
, "booktops": "bnbspot.md_booktops"
, "booksnaps": "bnbspot.md_booksnaps"
}
}
, "BNBFUT": {
"instruments": {
"PERP-BTC-USDT": ["TRADES", "BOOK_TOP"]
, "PERP-ETH-USDT": ["TRADES", "BOOK_TOP"]
}
, "tables": {
"trades": "bnbfut.md_trades"
, "booktops": "bnbfut.md_booktops"
, "booksnaps": "bnbfut.md_booksnaps"
}
}
, "COINBASE": {
"instruments": {
"PAIR-ADA-USD": ["TRADES", "BOOK_TOP"]
, "PAIR-AVAX-USD": ["TRADES", "BOOK_TOP"]
, "PAIR-BCH-USD": ["TRADES", "BOOK_TOP"]
, "PAIR-BTC-USD": ["TRADES", "BOOK_TOP"]
, "PAIR-DOT-USD": ["TRADES", "BOOK_TOP"]
, "PAIR-ETH-USD": ["TRADES", "BOOK_TOP"]
, "PAIR-LTC-USD": ["TRADES", "BOOK_TOP"]
, "PAIR-SOL-USD": ["TRADES", "BOOK_TOP"]
, "PAIR-XRP-USD": ["TRADES", "BOOK_TOP"]
}
, "tables": {
"trades": "coinbase.md_trades"
, "booktops": "coinbase.md_booktops"
, "booksnaps": "coinbase.md_booksnaps"
}
}
}
}
# ----------------------------------
, "exchanges_settings": {
"*": {
"order_entry": {
"enabled": false
, "streaming": false
},
"mkt_data": {
"enabled": true
, "streaming": true
},
"accounting": {
"enabled": false
, "streaming": false
}
}
}
}
@@ -0,0 +1,179 @@
{
"refdata": {
"assets": @inc=http://@env{CONFIG_SERVICE}/refdata/assets
, "instruments": @inc=http://@env{CONFIG_SERVICE}/refdata/instruments
, "exchange_instruments": @inc=http://@env{CONFIG_SERVICE}/refdata/exchange_instruments
, "dynamic_instrument_exchanges": ["ALPACA"]
, "exchanges": {
"COINBASE_AT": {
"exchange_id": "COINBASE"
, "name": "Coinbase Advanced Trade"
, "type": "SPOT"
, "mktdata" : {
"class": "cvttpy_trading.exchanges.coinbase.spot.mkt_data.CoinbaseSpotMdFeed" # for 1.0.3
, "reconnect_secs": 2
, "max_connections": 10
, "price_throttle": true
, "api": {
"web_socket": {
"url": "wss://ws-feed.exchange.coinbase.com"
}
}
}
}
, "BNBSPOT": {
"exchange_id": "BNBSPOT"
, "name": "Binance Spot"
, "type": "SPOT"
, "mktdata" : {
"class": "cvttpy_trading.exchanges.binance.spot.mkt_data.BnbSpotMktDataFeed"
, "max_connections": 10
, "reconnect_secs": 2.0
, "api": {
"web_socket": {
"url": "wss://stream.binance.com/ws"
},
"REST": {
"depth_snapshot_url": ["GET", "https://api.binance.com/api/v3/depth"],
}
}
}
}
, "BNBFUT": {
"exchange_id": "BNBFUT"
, "name": "Binance Futures USD-M"
, "type": "FUTURES"
, "mktdata" : {
"class": "cvttpy_trading.exchanges.binance.futures.mkt_data.BnbFutMktDataFeed"
, "max_connections": 10
, "reconnect_secs": 2.0
, "api": {
"web_socket": {
"url": "wss://fstream.binance.com/ws"
},
"REST": {
"depth_snapshot_url": ["GET", "https://fapi.binance.com/fapi/v1/depth"],
}
}
}
}
}
}
, "comm": @inc=http://@env{CONFIG_SERVICE}/apps/common/comm
, "md_recorder": {
"instrument_groups": {
"BNBFUT_CLOUD29": [
"BNBFUT:PERP-BTC-USDT"
, "BNBFUT:PERP-ETH-USDT"
],
"BNBSPOT_CLOUD29": [
"BNBSPOT:PAIR-ADA-USDT"
, "BNBSPOT:PAIR-AVAX-USDT"
, "BNBSPOT:PAIR-BCH-USDT"
, "BNBSPOT:PAIR-BTC-USDT"
, "BNBSPOT:PAIR-DOT-USDT"
, "BNBSPOT:PAIR-ETH-USDT"
, "BNBSPOT:PAIR-LINK-USDT"
, "BNBSPOT:PAIR-LTC-USDT"
, "BNBSPOT:PAIR-SOL-USDT"
#, "BNBSPOT:PAIR-USDC-USDT"
, "BNBSPOT:PAIR-XRP-USDT"
],
"COINBASE_CLOUD29": [
"COINBASE:PAIR-ADA-USD"
, "COINBASE:PAIR-AVAX-USD"
, "COINBASE:PAIR-BCH-USD"
, "COINBASE:PAIR-BTC-USD"
, "COINBASE:PAIR-DOT-USD"
, "COINBASE:PAIR-ETH-USD"
, "COINBASE:PAIR-LINK-USD"
, "COINBASE:PAIR-LTC-USD"
, "COINBASE:PAIR-SOL-USD"
, "COINBASE:PAIR-XRP-USD"
],
}
, "db": {
"class": "cvttpy_tools.db.timescale.tsdb_client.TimescaleDbClient"
}
, "collections": {
"__dummy__": null
, "BNBSPOT": {
"instruments": {
"PAIR-ADA-USDT": ["TRADES", "BOOK_TOP"]
, "PAIR-AVAX-USDT": ["TRADES"]
, "PAIR-BCH-USDT": ["TRADES", "BOOK_TOP"]
, "PAIR-BTC-USDT": ["TRADES", "BOOK_TOP"]
, "PAIR-DOT-USDT": ["TRADES", "BOOK_TOP"]
, "PAIR-ETH-USDT": ["TRADES", "BOOK_TOP"]
, "PAIR-LINK-USDT": ["TRADES"]
, "PAIR-LTC-USDT": ["TRADES", "BOOK_TOP"]
, "PAIR-SOL-USDT": ["TRADES", "BOOK_TOP"]
, "PAIR-USDC-USDT": ["TRADES", "BOOK_TOP"]
, "PAIR-XRP-USDT": ["TRADES", "BOOK_TOP"]
}
, "tables": {
"trades": "bnbspot.md_trades"
, "booktops": "bnbspot.md_booktops"
, "booksnaps": "bnbspot.md_booksnaps"
}
}
, "BNBFUT": {
"instruments": {
"PERP-BTC-USDT": ["TRADES", "BOOK_TOP"]
, "PERP-ETH-USDT": ["TRADES", "BOOK_TOP"]
}
, "tables": {
"trades": "bnbfut.md_trades"
, "booktops": "bnbfut.md_booktops"
, "booksnaps": "bnbfut.md_booksnaps"
}
}
, "COINBASE": {
"instruments": {
"PAIR-ADA-USD": ["TRADES", "BOOK_TOP"]
, "PAIR-AVAX-USD": ["TRADES"]
, "PAIR-BCH-USD": ["TRADES", "BOOK_TOP"]
, "PAIR-BTC-USD": ["TRADES", "BOOK_TOP"]
, "PAIR-DOT-USD": ["TRADES", "BOOK_TOP"]
, "PAIR-ETH-USD": ["TRADES", "BOOK_TOP"]
, "PAIR-LINK-USD": ["TRADES"]
, "PAIR-LTC-USD": ["TRADES", "BOOK_TOP"]
, "PAIR-SOL-USD": ["TRADES", "BOOK_TOP"]
, "PAIR-XRP-USD": ["TRADES", "BOOK_TOP"]
}
, "tables": {
"trades": "coinbase.md_trades"
, "booktops": "coinbase.md_booktops"
, "booksnaps": "coinbase.md_booksnaps"
}
}
}
}
# ----------------------------------
"exchanges_settings": {
"*": {
"order_entry": {
"enabled": false
, "streaming": false
},
"mkt_data": {
"enabled": true
, "streaming": true
},
"accounting": {
"enabled": false
, "streaming": false
}
}
}
}
@@ -0,0 +1,9 @@
{
"refdata": @inc=http://@env{CONFIG_SERVICE}/refdata/refdata
, "comm": @inc=http://@env{CONFIG_SERVICE}/apps/common/comm
, "db": {
"class": "cvttpy_tools.db.timescale.tsdb_client.TimescaleDbClient",
"cred_key": "TSDB-CLD32-PROD-OHLCV-DIRECT-RO"
}
}
@@ -0,0 +1,145 @@
{
"refdata": @inc=http://@env{CONFIG_SERVICE}/refdata/refdata
, "comm": @inc=http://@env{CONFIG_SERVICE}/apps/common/comm
, "db": {
"cred_key": "TSDB-CLD32-PROD-OHLCV-DIRECT-RO"
}
, "instruments": [
# ------------- BINANCE
{
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-ADA-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-AVAX-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-BCH-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-BNB-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-BTC-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-DOGE-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-DOT-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-ETH-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-HBAR-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-LINK-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-LTC-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-SHIB-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-SOL-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-SUI-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-XLM-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-XRP-USDT"
}
# ------------- COINBASE
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-ADA-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-AVAX-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-BCH-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-BNB-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-BTC-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-DOGE-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-DOT-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-ETH-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-HBAR-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-LINK-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-LTC-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-SHIB-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-SOL-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-SUI-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-XLM-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-XRP-USD"
}
]
, "mmost": {
"cred_key": "MATTERMOST"
, "alert_channel": "Alerts-CVTT"
, "status_channel": "Status-CVTT"
}
}
@@ -0,0 +1,115 @@
@var GLOBAL_CHANNEL_PREFIX=BNBS_OHLCV_REC
{
"refdata": @inc=http://@env{CONFIG_SERVICE}/refdata/refdata
, "comm": @inc=http://@env{CONFIG_SERVICE}/apps/common/comm
, "algos": @inc=http://@env{CONFIG_SERVICE}/apps/common/algos
, "strategies": @inc=http://@env{CONFIG_SERVICE}/apps/common/strategies
, "risk_strategies": @inc=http://@env{CONFIG_SERVICE}/apps/common/risk_strategies
, "pubsub_settings": "@env{PUBSUB_SETTINGS_CONFIG_KEY}"
, "cache_settings": "@env{CACHE_SETTINGS_CONFIG_KEY}"
, "global_channel_prefix": ${GLOBAL_CHANNEL_PREFIX}
, "market_data_gateway": {
"exchanges_settings": {
"*": {
"mkt_data": {
"enabled": true
, "streaming": true
},
"order_entry": {
"enabled": false
, "streaming": false
},
"accounting": {
"enabled": false
, "streaming": false
},
},
}
, "channel_prefix": "${GLOBAL_CHANNEL_PREFIX}.MD_GW"
, "app_status_channel": "${GLOBAL_CHANNEL_PREFIX}.MD_GW_APP_STATUS"
, "exchanges": [
"BNBSPOT"
]
}
, "ohlcv_recorder": {
"app_status_channel": "${GLOBAL_CHANNEL_PREFIX}.OHLCV_RECORDER_STATUS"
, "historical_md": {
"db": {
"cred_key": "TSDB-CLD32-PROD-OHLCV-DCKR"
}
, "trades_recording": { # unconditional trades recording for 1min aggregates
"flush_interval_sec": 5.0
"instruments": [
{
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-ADA-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-AVAX-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-BCH-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-BNB-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-BTC-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-DOGE-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-DOT-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-ETH-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-HBAR-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-LINK-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-LTC-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-SHIB-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-SOL-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-SUI-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-XLM-USDT"
}
, {
"exch_acct": "BNBSPOT"
, "instrument_id": "PAIR-XRP-USDT"
}
]
}
}
}
}
@@ -0,0 +1,116 @@
@var GLOBAL_CHANNEL_PREFIX=CBASE_OHLCV_REC
{
"refdata": @inc=http://@env{CONFIG_SERVICE}/refdata/refdata
, "comm": @inc=http://@env{CONFIG_SERVICE}/apps/common/comm
, "algos": @inc=http://@env{CONFIG_SERVICE}/apps/common/algos
, "strategies": @inc=http://@env{CONFIG_SERVICE}/apps/common/strategies
, "risk_strategies": @inc=http://@env{CONFIG_SERVICE}/apps/common/risk_strategies
# new communication settings
, "pubsub_settings": "@env{PUBSUB_SETTINGS_CONFIG_KEY}"
, "cache_settings": "@env{CACHE_SETTINGS_CONFIG_KEY}"
, "global_channel_prefix": ${GLOBAL_CHANNEL_PREFIX}
, "market_data_gateway": {
"exchanges_settings": {
"*": {
"mkt_data": {
"enabled": true
, "streaming": true
},
"order_entry": {
"enabled": false
, "streaming": false
},
"accounting": {
"enabled": false
, "streaming": false
},
},
}
, "channel_prefix": "${GLOBAL_CHANNEL_PREFIX}.MD_GW"
, "app_status_channel": "${GLOBAL_CHANNEL_PREFIX}.MD_GW_APP_STATUS"
, "exchanges": [
"COINBASE_AT"
]
}
, "ohlcv_recorder": {
"app_status_channel": "${GLOBAL_CHANNEL_PREFIX}.OHLCV_RECORDER_STATUS"
, "historical_md": {
"db": {
"cred_key": "TSDB-CLD32-PROD-OHLCV-DCKR"
}
, "trades_recording": { # unconditional trades recording for 1min aggregates
"flush_interval_sec": 5.0
"instruments": [
{
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-ADA-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-AVAX-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-BCH-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-BNB-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-BTC-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-DOGE-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-DOT-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-ETH-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-HBAR-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-LINK-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-LTC-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-SHIB-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-SOL-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-SUI-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-XLM-USD"
}
, {
"exch_acct": "COINBASE_AT"
, "instrument_id": "PAIR-XRP-USD"
}
]
}
}
}
}