"가장 적은 코드로 가장 확실한 안전을"
불필요한 기능(벤틀리)을 제거하고, [안전 지연]과 [물리적 방어]라는 본질에 집중한 자전거형 데몬 아키텍처입니다.
시스템 호출 및 데이터 흐름도
1단계: 환경 조립 (setting_daemon_trading.php)
DB 접속(PDO), API Key 인증, 주문 공통 함수 로드
2단계: 점검 감시 (Main 내장 로직)
최근 시세 5분 지연 시 즉시 5시간 Sleep (최전방 방어)
3단계: 상황 전처리 (live_daemon_code.php)
실시간 KRW 잔고, 보유 수량 확보 및 종료 플래그(Kill-Flag) 체크
4단계: 전략 수립 (brain_engine_1.php & 2.php)
시세 데이터 정제 후 BUY/SELL 신호($ENGINE2_SIGNALS) 생성
5단계: 최종 집행 (live_daemon_order_logic.php)
**DB 원장 대조**: 오늘 매수 이력 조회
**API 전송**: 검증 통과 시 주문 집행
6단계: 보고 (db_daemon.php)
루프 종료 전 생존 신고(Tick) 및 결과 기록
핵심 안전장치 (Safety Mechanism)
업비트 점검 자동 대응
- 5분 이상 시세 미수신 시 거래소 점검으로 간주
- 5시간(18,000초) 동안 루프 일시 동결 (Sleep)
- 5시간 후 자동 기상하여 시세 재확인 및 복구
물리적 원장 기반 제동
- 메모리가 아닌 Maria DB(Oldboy/Maria) 실시간 조회
- 당일 매수 이력이 있을 경우 절대 주문 불가능
- 데몬 재시작 시에도 1일 1회 원칙 물리적 보존
운영 및 관리 가이드
웹 어드민 툴 우선 관리 (SQL Admin)
1
daemon_status_table 조회로 생존 시간(Tick) 실시간 모니터링
2
daemon_trading 원장 테이블 조회로 매매 성공/실패 즉시 대조
STOP
d_kill_flag를 1로 수정하여 데몬 안전 종료 (터미널 접속 불필요)
터미널 필수 명령
# 기동 (Background)
nohup php daemon_upbit_trading_multi.php &
# 로그 확인
tail -f [파일명].log
실매매 테스트 (Live Beta) 돌입 시 유의사항
최초 가동 시 로그에 "매수 스킵(이미 원장 존재)" 혹은 "매수 성공"이 정확히 기록되는지 MySQL 어드민 툴을 통해 반드시 원장을 대조하십시오.
Safe Trading, Smart Management