Google Gemini를 활용해서 마치 AI 증권사 직원처럼 행동하도록 만들고,
사용자가 입력한 주식 정보로 매수 전략을 제안받는 시스템 트레이딩 예제를 만들어볼 거예요.
말만 해도 설레죠?
🧾 예제 시나리오
"삼성전자 80%, 카카오 20% 비중으로 매수하고 싶어"
👉 그러면 Gemini가 "좋아요. 삼성전자는 현재 시장 흐름에 비춰볼 때... 카카오는..." 이렇게 전략을 세워주는 겁니다!
✅ Step 1. 필요한 라이브러리 호출
import os
from langchain_google_genai import ChatGoogleGenerativeAI
from langchain.prompts import (
SystemMessagePromptTemplate,
HumanMessagePromptTemplate,
ChatPromptTemplate,
)
이건 마치 AI 증권사 오피스를 차리는 과정입니다.
- os: API 키 등록용
- ChatGoogleGenerativeAI: Gemini 모델 불러오기
- PromptTemplate 시리즈: Gemini에게 업무를 시킬 말풍선들
🔐 Step 2. API 키 등록
os.environ["GOOGLE_API_KEY"] = "YOUR_GOOGLE_API_KEY"
Gemini와 연결할 수 있도록 **열쇠(API 키)**를 등록합니다.
증권사 직원도 보안 카드 찍어야 입장하잖아요? 😉
👨💼 Step 3. AI 증권맨 호출
gemini = ChatGoogleGenerativeAI(model="gemini-2.0-flash", temperature=0)
드디어 등장한 우리의 AI 트레이더!
temperature=0은 신중하고 일관된 판단을 원할 때 사용합니다.
(우린 아무래도 주식이라... 신중해야죠?)
🎓 Step 4. 역할을 부여합니다 – "너는 증권사 주식 매매 전문가야!"
template = (
"너는 경험 많은 증권사 직원이야. "
"사용자가 입력한 종목과 비중을 보고 매수 전략을 제안해줘. "
"시장 상황도 간단히 고려해서 설명해줘."
)
system_message_prompt = SystemMessagePromptTemplate.from_template(template)
Gemini에게 역할을 줘야 혼란스럽지 않아요.
“너는 그냥 챗봇이 아니고, 증권사 직원이야!” 라고 딱 못을 박습니다.
💬 Step 5. 사용자의 매수 의도 입력 템플릿 만들기
human_template = "{매수요청}"
human_message_prompt = HumanMessagePromptTemplate.from_template(human_template)
사용자는 다음처럼 말할 수 있어요:
"삼성전자 80%, 카카오 20% 비중으로 1천만 원 매수하고 싶습니다."
그걸 그대로 Gemini에게 전달할 템플릿입니다.
🧠 Step 6. 대화 프롬프트 조합하기
chat_prompt = ChatPromptTemplate.from_messages([
system_message_prompt, human_message_prompt
])
이제 역할 설정과 사용자 질문을 하나로 묶어줍니다.
AI 트레이더가 고객의 요청을 정확히 이해할 수 있도록요.
🚀 Step 7. 요청 실행 – AI에게 주식 매수 전략 요청!
answer = gemini(chat_prompt.format_prompt(
매수요청="삼성전자 80%, 카카오 20% 비중으로 1천만 원 매수하고 싶습니다."
).to_messages())
print(answer.content)
Gemini에게 요청을 보내면, 다음처럼 말해줄 수 있어요:
"현재 삼성전자는 반도체 업황 회복 기대감으로 강세를 보이고 있으며, 80% 집중 투자 전략은 유효합니다. 카카오는 기술적 반등 구간이지만 리스크 관리가 필요하므로 20% 비중은 적절합니다..."
와우! AI가 시장까지 고려한 전략을 말해줍니다. 😮
📦 Step 8. 전체 코드 보기
# 1. API KEY 저장을 위한 os 라이브러리 호출
import os
# 2. Google Gemini LLM 로드를 위한 라이브러리 호출
from langchain_google_genai import ChatGoogleGenerativeAI
# 3. 프롬프트 템플릿 관련 라이브러리 호출
from langchain.prompts import (
SystemMessagePromptTemplate,
HumanMessagePromptTemplate,
ChatPromptTemplate,
)
# 4. Google Gemini API 키 환경변수에 저장
os.environ["GOOGLE_API_KEY"] = "YOUR_GOOGLE_API_KEY" # 실제 API 키로 변경
# 5. Gemini 모델을 로드합니다.
gemini = ChatGoogleGenerativeAI(model="gemini-2.0-flash", temperature=0)
# 6. 역할 프롬프트 템플릿 정의
template = (
"너는 경험 많은 증권사 직원이야. "
"사용자가 입력한 종목과 비중을 보고 매수 전략을 제안해줘. "
"시장 상황도 간단히 고려해서 설명해줘."
)
system_message_prompt = SystemMessagePromptTemplate.from_template(template)
# 7. 사용자가 입력할 매개변수 템플릿 선언
human_template = "{매수요청}"
human_message_prompt = HumanMessagePromptTemplate.from_template(human_template)
# 8. ChatPromptTemplate에 system + human 메시지를 결합
chat_prompt = ChatPromptTemplate.from_messages([
system_message_prompt, human_message_prompt
])
# 9. Gemini에게 매수 전략 요청!
answer = gemini(chat_prompt.format_prompt(
매수요청="삼성전자 80%, 카카오 20% 비중으로 1천만 원 매수하고 싶습니다."
).to_messages())
# 10. 결과 출력
print(answer.content)
두구 두구 두둥~~ 결과는 다음과 같습니다.
## 삼성전자 80%, 카카오 20% 매수 전략 (1천만 원)
**현재 시장 상황:**
최근 시장은 금리 인상, 인플레이션 우려, 지정학적 리스크 등 다양한 요인으로 인해 변동성이 큰 상황입니다. 특히, 기술주 중심의 성장주들은 금리 인상에 민감하게 반응하며 조정세를 보이기도 합니다. 하지만 장기적인 관점에서 볼 때, 한국 경제를 이끄는 대장주인 삼성전자와 플랫폼 기업인 카카오는 여전히 매력적인 투자 대상입니다.
**매수 전략:**
1. **분할 매수:** 현재 시장 변동성이 크므로, 1천만 원을 한 번에 모두 투자하기보다는 분할 매수를 통해 리스크를 관리하는 것이 좋습니다. 예를 들어, 3~4회에 걸쳐 나누어 매수하는 것을 고려해볼 수 있습니다.
2. **삼성전자 (800만 원):**
* **장점:** 반도체 업황 회복 기대감, 안정적인 실적, 높은 배당 수익률
* **매수 시점:** 단기적인 주가 조정 시 매수 기회로 활용
* **투자 포인트:** 삼성전자는 메모리 반도체 시장의 선두 주자이며, 파운드리 사업 확장, 인공지능, 전장 등 미래 성장 동력 확보에 적극적으로 나서고 있습니다. 장기적인 관점에서 꾸준히 모아간다면 안정적인 수익을 기대할 수 있습니다.
3. **카카오 (200만 원):**
* **장점:** 플랫폼 경쟁력, 다양한 사업 포트폴리오 (광고, 커머스, 모빌리티, 금융 등), 성장 가능성
* **매수 시점:** 규제 이슈 완화, 실적 개선 추세 확인 후 매수 고려
* **투자 포인트:** 카카오는 국민 메신저 카카오톡을 기반으로 다양한 서비스를 제공하며 성장해왔습니다. 최근 플랫폼 규제 이슈로 주가가 조정을 받았지만, 장기적인 관점에서 디지털 전환 시대에 더욱 성장할 가능성이 높습니다. 다만, 카카오의 경우 성장주로 분류되어 시장 변동성에 민감하게 반응할 수 있으므로 투자에 유의해야 합니다.
**추가 조언:**
* **투자 목표 설정:** 투자 기간, 목표 수익률 등을 명확히 설정하고 투자 전략을 수립하는 것이 중요합니다.
* **포트폴리오 다변화:** 삼성전자와 카카오 외에도 다양한 종목에 분산 투자하여 리스크를 줄이는 것을 고려해볼 수 있습니다.
* **정기적인 점검:** 시장 상황과 투자 종목의 변화를 꾸준히 점검하고 필요에 따라 투자 전략을 수정해야 합니다.
* **전문가 활용:** 투자에 어려움을 느낀다면 증권사 PB나 투자 전문가의 도움을 받는 것도 좋은 방법입니다.
**Disclaimer:**
본 정보는 투자 자문이 아니며, 투자 결정은 본인의 판단과 책임 하에 이루어져야 합니다. 투자에는 항상 위험이 따르므로 신중하게 결정하시기 바랍니다.
💡 마무리
이처럼 LangChain과 Gemini를 조합하면 AI 주식 상담사, 트레이딩 어시스턴트, 심지어 포트폴리오 추천 시스템까지 만들 수 있습니다!
'인공지능 > 랭체인' 카테고리의 다른 글
| LangChain + Gemini로 시스템 트레이딩 전략 만들기 (feat. Few-shot) (16) | 2025.07.01 |
|---|---|
| Gemini 에 사전 지식을 알려주자 (6) | 2025.06.28 |
| Colab에서 LangChain + Gemini 실행하기 (5) | 2025.06.28 |
| 무료 Gemini API 사용법 (8) | 2025.06.25 |
| 인공지능 API 중에 무료로 써볼 수 있는것은? (10) | 2025.06.23 |


