Files
TradeBot/.env.example
T

141 lines
4.3 KiB
Bash

TRADING_MODE=paper
HOST=127.0.0.1
PORT=8787
# Keep 127.0.0.1 when the reverse proxy is local. This Dell deployment uses
# 0.0.0.0 because Caddy reaches port 8787 from a separate LAN host.
TRADEBOT_BIND_ADDRESS=127.0.0.1
BYBIT_TESTNET=false
# Official regional public endpoints for this deployment. Before future live
# trading they must match the Bybit site where the API key was created.
BYBIT_REST_BASE_URL=https://api.bybit.kz
BYBIT_WEBSOCKET_URL=wss://stream.bybit.kz/v5/public/spot
BYBIT_API_KEY=
BYBIT_API_SECRET=
STARTING_BALANCE_USDT=100
AUTO_SELECT_SYMBOLS=true
TOP_SYMBOLS_COUNT=12
# Leave empty to discover the most liquid eligible USDT Spot pairs from Bybit.
SYMBOLS=
STRATEGY_MODE=torch_forecast
BASE_INTERVAL=60
KLINE_LIMIT=240
TREND_INTERVAL=D
TREND_KLINE_LIMIT=260
LOOP_INTERVAL_SECONDS=5
FAST_TRADING_ENABLED=false
FAST_LOOP_INTERVAL_SECONDS=1
FAST_ENTRY_COOLDOWN_SECONDS=20
MAX_ENTRIES_PER_MINUTE=12
WEBSOCKET_ENABLED=true
MARKET_OBSERVATION_ENABLED=true
MARKET_OBSERVATION_SAMPLE_SECONDS=30
MIN_SIGNAL_CONFIDENCE=0.64
MAX_SPREAD_PERCENT=0.18
MIN_24H_TURNOVER_USDT=1000000
PATTERN_ANALYSIS_ENABLED=true
PATTERN_SCORE_WEIGHT=0.18
LEARNING_ENABLED=true
LEARNING_LOOKBACK_TRADES=120
LEARNING_MIN_SAMPLES=3
LEARNING_MAX_ADJUSTMENT=0.12
LEARNING_MAX_POSITION_MULTIPLIER=1.6
MIN_POSITION_USDT=1
MAX_POSITION_USDT=8
MAX_SYMBOL_EXPOSURE_USDT=25
MAX_TOTAL_EXPOSURE_USDT=75
MAX_OPEN_POSITIONS=24
MAX_POSITIONS_PER_SYMBOL=6
GRID_TRADING_ENABLED=false
GRID_ENTRY_CONFIDENCE=0.58
GRID_BUY_ZONE=0.45
GRID_MAX_POSITION_USDT=8
REBOUND_TRADING_ENABLED=true
REBOUND_ENTRY_CONFIDENCE=0.55
REBOUND_MIN_PROBABILITY=0.55
REBOUND_MAX_POSITION_USDT=6
KELLY_SIZING_ENABLED=true
KELLY_FRACTION=0.25
KELLY_MAX_FRACTION=0.20
RISK_PER_TRADE_PERCENT=0.01
RISK_GUARD_ENABLED=true
RISK_RECENT_TRADE_WINDOW=20
RISK_MAX_CONSECUTIVE_LOSSES=4
RISK_MIN_RECENT_PROFIT_FACTOR=0.85
RISK_REDUCE_MULTIPLIER=0.50
ATR_TRAILING_MULTIPLIER=2.2
TREND_RSI_MIN=45
TREND_RSI_MAX=65
TIME_SERIES_FORECAST_ENABLED=true
TIME_SERIES_MIN_CANDLES=120
TIME_SERIES_FORECAST_HORIZON=3
TIME_SERIES_MIN_EDGE_PERCENT=0.10
TIME_SERIES_MIN_PROBABILITY_UP=0.47
TIME_SERIES_MIN_CONFIDENCE=0.4
TIME_SERIES_MAX_ADJUSTMENT=0.08
TIME_SERIES_LSTM_ENABLED=true
TIME_SERIES_LSTM_MODEL_PATH=runtime/lstm_forecaster.json
TIME_SERIES_PROBE_ENABLED=true
TIME_SERIES_PROBE_MIN_EDGE_PERCENT=0.02
TIME_SERIES_PROBE_MIN_PROBABILITY_UP=0.55
TIME_SERIES_PROBE_SIZE_MULTIPLIER=0.40
TIME_SERIES_REBOUND_FALLBACK_ENABLED=false
# Use the independently guarded trend/MACD strategy while no accepted fresh
# Torch model is available. The rejected model is never used for entries.
TIME_SERIES_TREND_FALLBACK_ENABLED=true
TIME_SERIES_FALLBACK_MODE=legacy
TIME_SERIES_REQUIRE_QUALITY_GATE=true
# Emergency paper-only override. Keep false unless a failed guard is accepted manually.
TIME_SERIES_MANUAL_QUALITY_OVERRIDE=false
TIME_SERIES_REQUIRE_FRESH_MODEL=true
TIME_SERIES_MODEL_MAX_AGE_HOURS=48
MARKET_TICKER_MAX_AGE_SECONDS=45
STOP_LOSS_PERCENT=0.04
TAKE_PROFIT_PERCENT=0.035
TRAILING_STOP_PERCENT=0.015
MIN_HOLD_SECONDS=180
ENTRY_COOLDOWN_SECONDS=180
MAX_DAILY_DRAWDOWN_USDT=6
MIN_CASH_RESERVE_USDT=5
TAKER_FEE_RATE=0.001
SLIPPAGE_RATE=0.0003
# Real trading is locked unless all three values are set explicitly.
ENABLE_LIVE_TRADING=false
LIVE_TRADING_CONFIRM=
LIVE_ORDER_MAX_USDT=10
LIVE_ORDER_FILL_TIMEOUT_SECONDS=20
LIVE_RECONCILIATION_INTERVAL_SECONDS=30
LIVE_PROTECTIVE_STOP_ENABLED=true
# Required for direct API access. If a trusted reverse proxy authenticates
# requests, set TRUSTED_PROXY_USER_HEADER to the header injected by that proxy.
TRADEBOT_API_TOKEN=
TRADEBOT_TRAINING_TOKEN=
TRUSTED_PROXY_USER_HEADER=
HOLD_SIGNAL_SAMPLE_SECONDS=60
STORAGE_RETENTION_DAYS=30
STORAGE_PRUNE_INTERVAL_SECONDS=3600
# Windows trainer keeps this final tail untouched by training and early stopping.
TORCH_RETRAIN_HOLDOUT_WINDOW=1000
TORCH_ORDERBOOK_DB=runtime/orderbook_observations.sqlite3
TORCH_ORDERBOOK_MIN_SAMPLES_PER_BUCKET=20
TORCH_ORDERBOOK_MIN_COVERED_BUCKETS=240
TORCH_ORDERBOOK_MIN_SYMBOLS=2
# Forward-only gate for an offline-approved shadow model. Promotion remains an
# explicit authenticated API action after every check has passed.
SHADOW_GATE_MIN_SETTLED=300
SHADOW_GATE_MIN_ELIGIBLE=30
SHADOW_GATE_MIN_SYMBOLS=2
SHADOW_GATE_MIN_PROFIT_FACTOR=1.10
SHADOW_GATE_MIN_DIRECTION_ACCURACY=0.52
SHADOW_GATE_MAX_BRIER=0.25
DATABASE_PATH=runtime/tradebot.sqlite3
LOG_PATH=runtime/tradebot.log