fix(config): ops 사이징 fallback을 100%로 정정
.env.example의 OPS_BUY/SELL_CASH_PCT를 1.0으로 맞추고 live 운영 관련 env 템플릿을 보강한다. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
38
.env.example
38
.env.example
@@ -77,9 +77,9 @@ OPS_MTF_ENABLED=false
|
|||||||
OPS_TREND_GATE_ENABLED=false
|
OPS_TREND_GATE_ENABLED=false
|
||||||
OPS_DAILY_MAX_TRADES=10000
|
OPS_DAILY_MAX_TRADES=10000
|
||||||
OPS_MIN_ORDER_KRW=5000
|
OPS_MIN_ORDER_KRW=5000
|
||||||
# 튜닝 기준값 — 실제 비율은 1_tune_order_sizing.py → sizing_rules.json
|
# fallback 비율. fractal live: data/spot/operations/sizing_rules.json(100%)이 우선 적용
|
||||||
OPS_BUY_CASH_PCT=0.10
|
OPS_BUY_CASH_PCT=1.0
|
||||||
OPS_SELL_COIN_PCT=0.10
|
OPS_SELL_COIN_PCT=1.0
|
||||||
OPS_SLIPPAGE_RATE=0.0005
|
OPS_SLIPPAGE_RATE=0.0005
|
||||||
# 빗썸 시장가 매수: 주문금액+예약수수료 lock (insufficient_funds 방지)
|
# 빗썸 시장가 매수: 주문금액+예약수수료 lock (insufficient_funds 방지)
|
||||||
OPS_EXCHANGE_FEE_LOCK_RATE=0.0025
|
OPS_EXCHANGE_FEE_LOCK_RATE=0.0025
|
||||||
@@ -90,8 +90,36 @@ OPS_SYNC_CANDLES=true
|
|||||||
# 비우면 DOWNLOAD_INTERVALS 전체 증분 sync
|
# 비우면 DOWNLOAD_INTERVALS 전체 증분 sync
|
||||||
# OPS_SYNC_INTERVALS=
|
# OPS_SYNC_INTERVALS=
|
||||||
OPS_SIGNAL_TAIL_BARS=800
|
OPS_SIGNAL_TAIL_BARS=800
|
||||||
# live 2층 방어: 최근 N봉(3분봉 기준) 미체결 신호 재시도 (10=30분)
|
# live 2층 방어: 최근 N봉(3분봉) 미체결 신호 재시도 (480=24시간)
|
||||||
OPS_CATCHUP_BARS=10
|
OPS_CATCHUP_BARS=480
|
||||||
|
# trade_history 원장 기반 pending 스캔 lookback (일)
|
||||||
|
OPS_LEDGER_LOOKBACK_DAYS=1
|
||||||
|
# live API 체결 허용: 신호 시각 기준 N분 초과 backlog는 스킵 정산만
|
||||||
|
OPS_LEDGER_EXECUTE_MAX_AGE_MINUTES=45
|
||||||
|
# tick당 backlog 처리 상한 (재시작·누적 신호 폭주 방지)
|
||||||
|
OPS_MAX_BACKLOG_PER_TICK=20
|
||||||
|
# live tick마다 tail 신호 강제 재계산 (stale 캐시 방지)
|
||||||
|
OPS_LIVE_FORCE_TAIL_REFRESH=true
|
||||||
|
# last_tick_completed_at 갱신 없음 알림 (초, 0=비활성)
|
||||||
|
OPS_WATCHDOG_STALE_SEC=600
|
||||||
|
# tick 소요 시간 경고 (초)
|
||||||
|
OPS_TICK_WARN_SEC=120
|
||||||
|
# 운영 tick 로그 (append)
|
||||||
|
OPS_LOG_JSON=data/spot/operations/live_run.log
|
||||||
|
# live: 거래소 체결과 미정산 신호 대조 (재주문 방지)
|
||||||
|
OPS_EXCHANGE_RECONCILE=true
|
||||||
|
OPS_EXCHANGE_ORDER_LOOKBACK_HOURS=48
|
||||||
|
OPS_EXCHANGE_MATCH_WINDOW_MIN=720
|
||||||
|
# loop·watch tick 공유 lock (중복 체결 방지)
|
||||||
|
OPS_TICK_LOCK_PATH=data/spot/operations/ops.tick.lock
|
||||||
|
OPS_LOOP_PID_FILE=data/spot/operations/ops_loop.pid
|
||||||
|
# read-only 감시 (cron 5분): bash scripts/3_run_watch_cron.sh
|
||||||
|
OPS_WATCH_SIGNAL_GRACE_MIN=5
|
||||||
|
OPS_WATCH_TICK_STALE_MIN=12
|
||||||
|
OPS_WATCH_LOOKBACK_MIN=30
|
||||||
|
OPS_WATCH_AUTO_REMEDIATE=true
|
||||||
|
OPS_WATCH_AUTO_RESTART=true
|
||||||
|
# OPS_WATCH_LOOP_START_CMD=
|
||||||
# OPS_PERSIST_SIGNAL_CACHE=false
|
# OPS_PERSIST_SIGNAL_CACHE=false
|
||||||
OPS_STATE_JSON=data/spot/operations/fractal_ops_state.json
|
OPS_STATE_JSON=data/spot/operations/fractal_ops_state.json
|
||||||
OPS_REPORT_JSON=docs/spot/3_operations/fractal_ops_report.json
|
OPS_REPORT_JSON=docs/spot/3_operations/fractal_ops_report.json
|
||||||
|
|||||||
Reference in New Issue
Block a user