Add economic calendar feature with n8n integration
All checks were successful
Deploy to Server / deploy (push) Successful in 36s
All checks were successful
Deploy to Server / deploy (push) Successful in 36s
- Add economic calendar tab with monthly view - Display today's events in header - Add weekly summary section - Integrate with Forex Factory via n8n webhook - Add Header Auth API authentication - Add KST timezone conversion - Add country filter (US, JP, CN) - Add importance-based event styling - Add more events modal for days with many events - Update calendar grid to show up to 4 events per day - Add n8n workflow configuration files
This commit is contained in:
156
n8n/README.md
Normal file
156
n8n/README.md
Normal file
@@ -0,0 +1,156 @@
|
||||
# n8n 경제 일정 워크플로우 설정 가이드
|
||||
|
||||
## 워크플로우 구성
|
||||
|
||||
두 개의 워크플로우로 구성됩니다:
|
||||
|
||||
1. **Economic Calendar Collector** - 주기적으로 실제 데이터 수집
|
||||
2. **Economic Calendar API** - Webhook으로 데이터 제공
|
||||
|
||||
```
|
||||
[Schedule: 6시간마다] → [HTTP: Forex Factory] → [Code: 변환] → [File: 저장]
|
||||
|
||||
[Webhook 요청] → [File: 읽기] → [Code: 파싱] → [Response: JSON]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 설정 방법
|
||||
|
||||
### 1. 데이터 수집 워크플로우 설정
|
||||
|
||||
1. n8n 웹 UI 접속 (예: `https://n8n.yourdomain.com`)
|
||||
2. **Workflows** → **Import from File**
|
||||
3. `economic-calendar-collector.json` 파일 선택
|
||||
4. **Save** 클릭
|
||||
5. **Active** 토글을 켜서 워크플로우 활성화
|
||||
6. 수동으로 한번 실행하여 초기 데이터 생성 (▶ 버튼 클릭)
|
||||
|
||||
### 2. API 워크플로우 설정
|
||||
|
||||
1. **Workflows** → **Import from File**
|
||||
2. `economic-calendar-api.json` 파일 선택
|
||||
3. **Save** 클릭
|
||||
4. **Active** 토글을 켜서 워크플로우 활성화
|
||||
|
||||
### 3. Webhook URL 확인
|
||||
|
||||
API 워크플로우 활성화 후, Webhook 노드를 클릭하면 Production URL이 표시됩니다:
|
||||
|
||||
```
|
||||
https://n8n.yourdomain.com/webhook/economic-calendar
|
||||
```
|
||||
|
||||
### 4. 프론트엔드 설정 수정
|
||||
|
||||
`app.js`에서 `dataUrl`을 n8n webhook URL로 변경:
|
||||
|
||||
```javascript
|
||||
this.dataUrl = 'https://n8n.yourdomain.com/webhook/economic-calendar';
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 데이터 소스
|
||||
|
||||
현재 **Investing.com**의 경제 캘린더 API를 사용합니다:
|
||||
- URL: `https://sslecal2.investing.com/economic-calendar/Service/getCalendarFilteredData`
|
||||
- 제공 데이터: 향후 30일간 경제 일정
|
||||
- 필터 국가: US(미국), JP(일본), KR(한국), CN(중국)
|
||||
- 필터 중요도: 2성, 3성 이벤트만
|
||||
- 시간대: KST (한국 표준시, timeZone=88)
|
||||
|
||||
### 데이터 수집 주기
|
||||
|
||||
기본값: **매일 새벽 3시 (KST)** 자동 수집
|
||||
|
||||
Cron 표현식: `0 3 * * *`
|
||||
|
||||
변경하려면 Collector 워크플로우의 Schedule Trigger 설정 수정:
|
||||
- 매일 새벽 3시: `0 3 * * *`
|
||||
- 매일 자정: `0 0 * * *`
|
||||
- 6시간마다: `field: "hours"`, `hoursInterval: 6`
|
||||
|
||||
---
|
||||
|
||||
## 파일 저장 경로
|
||||
|
||||
n8n Docker 컨테이너 내부: `/data/economic-calendar.json`
|
||||
|
||||
Docker Compose 볼륨 매핑 필요:
|
||||
```yaml
|
||||
volumes:
|
||||
- n8n_data:/home/node/.n8n
|
||||
- ./data:/data # 추가
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 대체 워크플로우 (수동 관리용)
|
||||
|
||||
실제 API 대신 수동으로 데이터를 관리하려면 기존 `economic-calendar-workflow.json` 사용:
|
||||
|
||||
1. `economic-calendar-workflow.json` import
|
||||
2. Code 노드에서 직접 이벤트 데이터 수정
|
||||
3. 활성화
|
||||
|
||||
---
|
||||
|
||||
## 일정 데이터 형식
|
||||
|
||||
```json
|
||||
{
|
||||
"date": "2025-01-15", // YYYY-MM-DD 형식
|
||||
"time": "04:00", // HH:MM 형식 (한국시간)
|
||||
"country": "US", // US, KR, CN, JP
|
||||
"name": "FOMC 금리 결정", // 일정 이름
|
||||
"importance": 3, // 1: 낮음, 2: 중간, 3: 높음
|
||||
"forecast": "4.50%", // 예상치
|
||||
"previous": "4.50%", // 이전값
|
||||
"actual": null // 실제값 (발표 전: null)
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 주요 경제 일정 목록 (참고용)
|
||||
|
||||
### 미국 (US)
|
||||
| 일정 | 중요도 | 발표 주기 |
|
||||
|------|--------|-----------|
|
||||
| FOMC 금리 결정 | ★★★ | 6주마다 |
|
||||
| 비농업 고용지수 (NFP) | ★★★ | 매월 첫째 금요일 |
|
||||
| CPI (소비자물가지수) | ★★★ | 매월 |
|
||||
| GDP | ★★★ | 분기 |
|
||||
| ISM 제조업 PMI | ★★★ | 매월 |
|
||||
| CB 소비자신뢰지수 | ★★★ | 매월 |
|
||||
|
||||
### 한국 (KR)
|
||||
| 일정 | 중요도 | 발표 주기 |
|
||||
|------|--------|-----------|
|
||||
| 한국은행 기준금리 | ★★★ | 연 8회 |
|
||||
| CPI | ★★★ | 매월 |
|
||||
| 산업생산 | ★★ | 매월 |
|
||||
| 수출입 | ★★ | 매월 |
|
||||
|
||||
### 중국 (CN)
|
||||
| 일정 | 중요도 | 발표 주기 |
|
||||
|------|--------|-----------|
|
||||
| 제조업 PMI | ★★★ | 매월 |
|
||||
| Caixin 제조업 PMI | ★★★ | 매월 |
|
||||
| GDP | ★★★ | 분기 |
|
||||
|
||||
### 일본 (JP)
|
||||
| 일정 | 중요도 | 발표 주기 |
|
||||
|------|--------|-----------|
|
||||
| 일본은행 금리 결정 | ★★★ | 연 8회 |
|
||||
| GDP | ★★★ | 분기 |
|
||||
| 실업률 | ★★ | 매월 |
|
||||
|
||||
---
|
||||
|
||||
## 경제 일정 데이터 소스
|
||||
|
||||
- [Investing.com 경제 캘린더](https://kr.investing.com/economic-calendar/)
|
||||
- [TradingEconomics](https://tradingeconomics.com/calendar)
|
||||
- [Forex Factory](https://www.forexfactory.com/calendar)
|
||||
Reference in New Issue
Block a user