전 봉 BB·일목 조합 분석 및 simulation 단일 실행으로 통합
9개 간격(1~1440분) BB·일목 위치 특징을 3분 타임라인에 맞춰 분석하고, discover로 매수·매도 규칙을 찾은 뒤 HTML 차트에 해당 체결만 표시한다. simulation_1h.py를 simulation.py로 변경했으며, 파라미터 없이 실행하면 analyze→discover→차트가 한 번에 수행된다. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
84
README.md
84
README.md
@@ -1,50 +1,64 @@
|
||||
# DeepCoin — WLD 볼린저 MTF
|
||||
# DeepCoin — WLD 전봉 BB·일목 조합 매매
|
||||
|
||||
빗썸 KRW-WLD 현물 전용. **모든 봉**에 동일한 BB 규칙을 적용하고, 봉별 상태를 비교해 실행·확인 봉을 정합니다.
|
||||
빗썸 KRW-WLD 현물. **1, 3, 5, 10, 15, 30, 60, 240, 1440분** 모든 봉에서
|
||||
볼린저 밴드·일목균형표 **캔들 위치**를 분석하고, 봉 조합으로 매수·매도 규칙을 탐색합니다.
|
||||
|
||||
## BB 기본 규칙 (모든 간격 동일)
|
||||
## 구조
|
||||
|
||||
| 구분 | 조건 |
|
||||
|------|------|
|
||||
| 매수 | 이전 종가 ≤ 하단, 현재 종가 > 하단 (하단 **상향 돌파**) |
|
||||
| 매도 | 이전 종가 < 상단, 현재 종가 ≥ 상단 (상단 **상향 돌파**) |
|
||||
| 손절(선택) | 하단 재이탈 |
|
||||
```text
|
||||
downloader.py → coins.db (전 간격 증분)
|
||||
indicators.py → BB·일목 계산
|
||||
candle_features.py → 봉별 위치 특징 → 3분 타임라인 행렬
|
||||
combination_analyzer.py → 조합 분석·combination_report.json
|
||||
rule_discovery.py → discovered_rules.json
|
||||
strategy.py → 실시간 evaluate_discovered_live
|
||||
monitor_coin.py → 실거래 루프
|
||||
simulation.py → 백테스트·HTML 차트
|
||||
```
|
||||
|
||||
**MTF 적용** (`mtf_bb.py`, `ACTIVE_MTF_POLICY` / `mtf_bb_policy.json`)
|
||||
## 봉별 분석 항목
|
||||
|
||||
- 실행 봉: 3·10·15·30·60분 중 백테스트 수익률 1위
|
||||
- 확인 봉: 60분·일봉 등 상위 봉 상태가 매수/매도에 맞을 때만 체결
|
||||
- 하락 추세: 매수 차단 (설정 시)
|
||||
### 볼린저
|
||||
- 이벤트: `cross_up_lower`, `cross_up_upper`, `inside_band`, `squeeze` …
|
||||
- 구간: `bb_zone_bottom` ~ `bb_zone_top` (%B)
|
||||
|
||||
봉별 상태: `inside`, `cross_up_lower`, `cross_up_upper`, `below_lower`, `above_upper`, `squeeze` 등
|
||||
### 일목균형표
|
||||
- `ichi_above_cloud`, `ichi_below_cloud`, `ichi_in_cloud`
|
||||
- `ichi_tk_bull` / `ichi_tk_cross_up`, `ichi_cloud_bull` …
|
||||
|
||||
## 파일
|
||||
### 조합
|
||||
- 3분 기준 `merge_asof`로 모든 봉 특징을 한 행에 정렬
|
||||
- `discover`가 AND/OR 조합으로 매수·매도 규칙 탐색
|
||||
|
||||
| 파일 | 역할 |
|
||||
|------|------|
|
||||
| `strategy.py` | 신호·금액·매도 비율 |
|
||||
| `monitor.py` | MTF 데이터, `process_wld_mtf`, 현물 주문 |
|
||||
| `monitor_coin.py` | 실시간 루프 |
|
||||
| `downloader.py` | `coins.db` (3분·1시간·일봉) |
|
||||
| `mtf_bb.py` | 봉별 BB 비교·정책 추천 |
|
||||
| `simulation_1h.py` | 백테스트 차트 |
|
||||
|
||||
## 실행
|
||||
## 실행 순서
|
||||
|
||||
```bash
|
||||
cp .env.example .env
|
||||
python downloader.py
|
||||
python simulation_1h.py discover # 모든 봉·캔들 특징 탐색 → discovered_rules.json
|
||||
python simulation_1h.py # 탐색 규칙 HTML 차트 (기본)
|
||||
python simulation_1h.py compare # 9종 조합 순위
|
||||
python simulation_1h.py mtf # 봉별 BB 비교 (실거래 전 참고)
|
||||
python monitor_coin.py # 실거래는 HTML 최적화 후 연동 예정
|
||||
python downloader.py # 1분봉 2개월, 나머지 6개월
|
||||
python simulation.py # analyze → discover → HTML (탐색 매수·매도 규칙 표시)
|
||||
python monitor_coin.py # 실거래
|
||||
```
|
||||
|
||||
`DOWNLOAD_MONTHS=6` — 간격: **3, 10, 15, 30, 60, 240, 1440**분.
|
||||
**증분 저장**: DB `MAX(ymdhms)` 이후 봉만 INSERT (재실행 시 전체 삭제 없음).
|
||||
HTML 차트에는 `discovered_rules.json` 에서 찾은 **매수·매도 규칙**의 체결만 표시합니다.
|
||||
고급: `analyze`, `discover`, `compare`, `mtf`.
|
||||
|
||||
## 환경 변수
|
||||
## 설정 (`config.py`)
|
||||
|
||||
`BITHUMB_ACCESS_KEY`, `BITHUMB_SECRET_KEY`, `COIN_TELEGRAM_*`,
|
||||
`BUY_COOLDOWN_SEC`(기본 300), `SELL_COOLDOWN_SEC`(180), `DEFAULT_BUY_KRW` 등 — `.env.example` 참고.
|
||||
| 항목 | 설명 |
|
||||
|------|------|
|
||||
| `ALL_INTERVALS` | 1,3,5,10,15,30,60,240,1440 |
|
||||
| `ENTRY_INTERVAL` | 조합 행렬 기준 3분 |
|
||||
| `DOWNLOAD_MONTHS_1M` | 1분봉 보관 개월 (기본 2) |
|
||||
| `USE_DISCOVERED_LIVE` | 실거래에 discovered_rules 사용 |
|
||||
|
||||
## 출력 파일
|
||||
|
||||
| 파일 | 내용 |
|
||||
|------|------|
|
||||
| `combination_report.json` | 봉별 최신 위치·매수/매도 힌트 |
|
||||
| `discovered_rules.json` | 탐색된 매매 규칙 |
|
||||
| `reports/wld_bb_simulation.html` | 시뮬 차트 |
|
||||
|
||||
## 면책
|
||||
|
||||
실거래 손실 책임은 사용자에게 있습니다.
|
||||
|
||||
Reference in New Issue
Block a user