RSI DCA 전략 (신규) - rsi_dca_engine/runner/control: 1분봉 RSI(14) 종목별 기준선 상향 돌파 시 정액 매수, 일 상한, 신호 45분 유효, 킬스위치, 인터벌 변경 시 커서 재초기화, 체결가 거래소 보정 - scripts: 3_run_rsi_dca(.py/_cron.sh), 백테스트·인터벌 비교, go-live 스위치 - 설정: RSI_DCA_* (모드·종목·기준선·종목별 오버라이드·일 상한 등) 모니터 (vol_live_monitor / vol_monitor_chart) - 분봉 탭(/api/candles), RSI(14) 패널·종목별 기준선, 3패널 시간축 정렬, KST 표기 - 자동매수 ON/OFF 패널(/api/rsi/status·toggle), 빌드 해시 기반 자동 새로고침, 지연 경고 - 요약표: 거래소 평균매입가 기준 보유원금·수익률, 총평가 손익, 수익률순 동적 정렬 - 잔고 스냅샷을 계좌 전체 조회 1회로 통합, 실시간 시세 반영 데이터·수집 - candle_store/loader: SQL 범위·LIMIT 조회로 대형 테이블 전량 스캔 제거 - 절전·재부팅 후 공백 자동 백필(gap_backfill, 00_backfill_gaps) 및 cron 연동 - 수집 cron 분할(매분 핵심 분봉·5분 전체), 프로젝트 한정 lock 패턴, exec 제거로 lock 정리 복구 - 모니터 종목(VOL_MONITOR_SYMBOLS)·수집 종목 7종 분리, 한글 코인명 추가 Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
19 lines
722 B
Bash
Executable File
19 lines
722 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# RSI DCA 정액 매수 tick (cron 1분). 모드는 .env RSI_DCA_MODE (기본 paper).
|
|
set -euo pipefail
|
|
# shellcheck source=scripts/_cron_env.sh
|
|
source "$(dirname "$0")/_cron_env.sh"
|
|
|
|
ensure_cron_log_dir "data/spot/operations"
|
|
LOCKDIR="data/spot/operations/rsi.tick.lock.d"
|
|
RSI_SCRIPT="${CRON_PROJECT_ROOT}/scripts/3_run_rsi_dca.py"
|
|
if ! acquire_cron_lock "$LOCKDIR" "$RSI_SCRIPT" 600; then
|
|
exit 0
|
|
fi
|
|
|
|
PYTHON="$(resolve_bithumb_python)" || exit 1
|
|
# 같은 분에 시작하는 캔들 수집(핵심 분봉 12~21초)이 끝난 뒤 판정하도록 지연 → 봉 마감 후 약 1.5분 내 매수
|
|
sleep "${RSI_DCA_TICK_DELAY_SEC:-25}"
|
|
echo "$(date '+%Y-%m-%d %H:%M:%S') tick"
|
|
"$PYTHON" "$RSI_SCRIPT" "$@"
|