Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
Tags
- 연금
- 오블완
- isa
- JEPQ
- ace 미국30년국채액티브(h)
- 미국주식
- 티스토리챌린지
- 재테크
- rise 200고배당커버드콜atm
- chatGPT
- 직투
- SCHD
- 삼성전자
- Python
- 자동매매
- IRP
- 퇴직연금
- N잡
- 업비트
- S&P500
- 앱테크
- 주식
- 강환국
- OXY
- 국장
- 개인연금
- 토스
- 매일매수
- ETF
- 삼성전자우
Archives
- Today
- Total
재테크 A2Z
Google Sheets + 텔레그램 알림봇 본문
Google Sheets + 텔레그램 알림봇 조합은,
📈 예약매도 조건 체결 여부
📉 손절가 하락 도달 여부
🧾 현재 수익률 변화
등을 감지해서 텔레그램으로 자동 알림을 받는 아주 효율적인 방식입니다.
✅ 목표
- Google Sheets에 실시간 TQQQ 가격을 받아오고
- 설정한 가격 도달 시 텔레그램으로 알림 전송
🧰 준비물
- Google 계정 (Sheets 사용용)
- 텔레그램 봇 (@BotFather) 생성
- 텔레그램 채팅 ID 확인
- Google Apps Script 작성
- TQQQ 실시간 가격 가져오기 (GoogleFinance + 보조스크립트)
⚙️ STEP 1. 텔레그램 봇 만들기
- @BotFather에 접속 → /newbot
- 봇 이름과 사용자이름 설정
- API Token 받기 → 예: 123456789:ABCdefGhIjklMNopQRstUvWxYZ
⚙️ STEP 2. 채팅 ID 확인
- 텔레그램에서 https://t.me/your_bot_username 접속 → 아무 말이나 입력
- 아래 URL에 접속
- "chat":{"id": 뒤에 나오는 숫자가 Chat ID
⚙️ STEP 3. Google Sheets 구성
A열B열C열D열
| 시각 | 현재가 | 목표가 | 상태 |
| 06:00 | 81.42 | 88 | 대기 중 |
| 06:00 | 81.42 | 89 | 대기 중 |
| ... | ... | ... | ... |
⚙️ STEP 4. Apps Script 작성
Tools > Apps Script > 코드 입력:
const TELEGRAM_TOKEN = '123456789:ABCdefGhIjklMNopQRstUvWxYZ'; // 봇 토큰
const CHAT_ID = '123456789'; // 채팅 ID
function checkPriceAndNotify() {
const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
const data = sheet.getRange("A2:D100").getValues();
for (let i = 0; i < data.length; i++) {
let nowPrice = parseFloat(data[i][1]);
let targetPrice = parseFloat(data[i][2]);
let status = data[i][3];
if (status !== "매도 완료" && nowPrice >= targetPrice) {
sendTelegram(`🔔 TQQQ 목표가 도달: ${targetPrice}달러`);
sheet.getRange(i + 2, 4).setValue("매도 완료");
}
}
}
function sendTelegram(message) {
const url = `https://api.telegram.org/bot${TELEGRAM_TOKEN}/sendMessage?chat_id=${CHAT_ID}&text=${encodeURIComponent(message)}`;
UrlFetchApp.fetch(url);
}
⚙️ STEP 5. 시간 기반 자동 실행 설정
- Apps Script에서 → ⏰ Triggers 메뉴
- 함수: checkPriceAndNotify
- 시간 설정: 매 5분마다 실행
STEP 5. 시간 기반 자동 실행 설정 자세히 설명
Google Apps Script는 특정 함수를 정해진 시간에 자동으로 실행할 수 있는 트리거(Triggers) 기능을 제공합니다. 이 기능을 사용하여 checkPriceAndNotify 함수를 5분마다 자동으로 실행하도록 설정할 수 있습니다.
설정 방법
- Apps Script 프로젝트 열기: Google Sheets에서 도구(Tools) > 스크립트 편집기(Apps Script)를 클릭하여 현재 스크립트 프로젝트를 엽니다.
- 트리거 메뉴 접속: Apps Script 편집기 왼쪽 사이드바에 있는 알람 시계 아이콘(⏰) 모양의 트리거(Triggers) 메뉴를 클릭합니다.
- 만약 트리거가 하나도 설정되어 있지 않다면 "아직 트리거가 없습니다. 지금 추가하세요." 또는 이와 유사한 메시지가 표시될 것입니다.
- 새 트리거 추가: 화면 오른쪽 하단에 있는 + 트리거 추가(Add Trigger) 버튼을 클릭합니다.
- 트리거 설정 구성: 새 트리거 설정 화면이 나타나면 다음과 같이 옵션을 설정합니다.
- 실행할 함수 선택(Choose which function to run): 드롭다운 메뉴에서 checkPriceAndNotify 함수를 선택합니다.
- 이전에 작성한 스크립트에 이 함수가 없다면 목록에 표시되지 않습니다. 스크립트가 올바르게 저장되었는지 확인하세요.
- 이벤트 소스 선택(Choose which event source): 시간 기반(Time-driven)을 선택합니다.
- 이는 특정 시간 간격으로 함수를 실행하겠다는 의미입니다.
- 시간 기반 트리거 유형 선택(Select type of time-driven trigger): 분 타이머(Minutes timer)를 선택합니다.
- 분 타이머는 지정된 분 간격으로 함수를 실행합니다.
- 시간 간격 선택(Select minute interval): 드롭다운 메뉴에서 5분(every 5 minutes)을 선택합니다.
- 이렇게 설정하면 스크립트가 약 5분마다 자동으로 실행됩니다.
- 실행할 함수 선택(Choose which function to run): 드롭다운 메뉴에서 checkPriceAndNotify 함수를 선택합니다.
- 저장: 모든 설정을 마쳤다면 오른쪽 하단에 있는 저장(Save) 버튼을 클릭합니다.
권한 승인 (최초 1회)
트리거를 처음 설정하거나 스크립트가 Sheets 데이터 또는 외부 서비스(Telegram API)에 접근해야 할 경우, Google 계정 권한 승인 요청 팝업이 나타날 수 있습니다.
- 계정 선택: 현재 사용 중인 Google 계정을 선택합니다.
- 경고 메시지 확인: "Google에서 확인하지 않은 앱"이라는 경고가 뜰 수 있습니다. 이는 개발자가 직접 만든 스크립트이기 때문에 나타나는 정상적인 메시지입니다. 고급(Advanced)을 클릭합니다.
- "안전하지 않은 앱으로 이동" 클릭: (프로젝트 이름)으로 이동(Go to [Project Name] (unsafe)) 링크를 클릭하여 스크립트 실행을 허용합니다.
- 이 과정은 스크립트가 Google Sheets 읽기/쓰기 및 외부 URL 호출 권한이 필요하기 때문에 발생합니다.
🧪 실시간 가격 자동 갱신 (옵션)
- =GOOGLEFINANCE("NASDAQ:TQQQ", "price")
단점: 지연 가격이므로 실시간은 아님
→ Yahoo Finance 크롤링 or API 연동 원하면 별도 코드 제공 가능
📌 결과
- 예약매도 가격 도달 시마다 텔레그램으로 알림 전송
- 알림 메시지 예: 🔔 TQQQ 목표가 도달: 88달러
p.s. 텔레그램 봇 생성방법
✅ 1단계: 텔레그램 봇 생성 (BotFather)
- 텔레그램에서 @BotFather 검색 후 클릭
- 아래 명령어 입력:
-
복사편집/newbot
- bash
- 봇 이름, 사용자이름(예: my_tqqq_bot)을 입력
- 봇이 생성되면, 아래와 같은 토큰이 제공됨:
kotlin
복사편집
✅ Use this token to access the HTTP API: 123456789:ABCdefGhIjklMNopQRstUvWxYZ
📌 이게 바로 TELEGRAM_TOKEN
✅ 2단계: 채팅 ID 확인
방법 A: 봇에게 메시지 보내고 직접 API로 확인
- 텔레그램 앱에서 방금 만든 봇 (@your_bot_name) 채널로 이동
- 아무 메시지 하나 보내기 (예: "hi")
- 이제 아래 주소에 브라우저로 접속:
예시:
ruby
복사편집
https://api.telegram.org/bot123456789:ABCdefGhIjklMNopQRstUvWxYZ/getUpdates
- 결과에서 아래처럼 "chat" 항목을 찾으세요:
json
복사편집
"chat":{"id":123456789,"first_name":"John","type":"private"}
📌 이때 "id":123456789 이 숫자가 당신의 CHAT_ID
'재테크' 카테고리의 다른 글
| 25년간 연복리 20% ETF 전략 (1) | 2025.06.28 |
|---|---|
| SCHD 계속 보유해야할까? (0) | 2025.06.28 |
| TQQQ 매도전략 (0) | 2025.06.28 |
| 현대차 차트 기반 매도 전략 (2) | 2025.06.15 |
| TIGER200 vs. RISE 200 (0) | 2025.06.15 |
