금융 자산 시세 자동 갱신 구글 시트 만들기

매달 주식, 코인, 금·은 시세를 구글 시트에 수동으로 입력하던 작업을 자동화한 경험을 공유합니다. Gemini AI의 코칭을 받으며 진행했고, 세 가지 방법을 단계적으로 적용했습니다.

목표

시트를 열기만 하면 내가 관리하는 모든 금융 자산의 시세가 자동으로 갱신되는 구조를 만드는 것.

단계 1. GOOGLEFINANCE 함수 활용

구글 시트에 내장된 GOOGLEFINANCE() 함수로 국내외 주식 시세를 실시간으로 가져올 수 있습니다.

=GOOGLEFINANCE("KRX:015760", "price")   // 한국전력 현재가
=GOOGLEFINANCE("NASDAQ:AAPL", "price")  // 애플 현재가

방법: 내 구글 시트를 Gemini에게 읽혀서 각 종목에 맞는 수식 리스트를 자동 생성했습니다.

주의: Gemini가 종목 코드를 가끔 잘못 인식하거나 엉뚱한 수식을 생성할 때가 있습니다. 하나씩 검증하면서 적용해야 합니다.

단계 2. Open API 호출

GOOGLEFINANCE로 가져올 수 없는 자산(예: 업비트 코인 현재가)은 해당 플랫폼의 공개 API를 활용합니다.

구글 시트의 Apps Script에 아래와 같은 함수를 등록하면 시트에서 직접 호출이 가능합니다.

/**
 * 업비트의 특정 코인 원화(KRW) 현재가를 가져옵니다.
 * 사용법: =UPBIT_PRICE("USDT") 또는 =UPBIT_PRICE("BTC")
 */
function UPBIT_PRICE(symbol) {
  try {
    const url = "https://api.upbit.com/v1/ticker?markets=KRW-" + symbol.toUpperCase();
    const response = UrlFetchApp.fetch(url);
    const data = JSON.parse(response.getContentText());
    return data[0].trade_price;
  } catch (e) {
    return "연결 오류";
  }
}

API 호출 코드는 Gemini가 작성해줬습니다. 오류가 날 때는 AI와 주고받으며 수정했습니다.

단계 3. 웹 크롤링으로 해결

Open API조차 제공하지 않는 데이터(예: 금은방 매입 시세)는 크롤링이 필요했습니다. 특정 사이트를 직접 파싱하는 건 복잡하지만, 유료 모드 (Pro) Gemini가 크롬의 개발자 도구를 활용해 해당 사이트가 내부적으로 호출하는 API를 찾아내 주었습니다. 그 API를 직접 호출하는 Apps Script를 작성해 원하는 값을 추출할 수 있었습니다.

결과

이제 시트를 열기만 하면 모든 자산의 시세가 자동으로 갱신됩니다.

방법 적합한 자산 유형 난이도
GOOGLEFINANCE 국내외 주식, ETF ⭐ 쉬움
Open API 코인, 외환 ⭐⭐ 보통
크롤링 API 없는 특수 데이터 ⭐⭐⭐ 높음

여기서 한 걸음 더 나아가면, 이 자산 현황 시트를 AI에게 읽혀두고 투자 전략을 함께 논의하는 것도 가능합니다. 자산 관리의 시작은 데이터를 자동화하는 것에서부터입니다.