🧩 LangChain 핵심 구성요소

| 구성요소 | 역할 | 시스템 트레이딩 예시 |
| 1. LLM (Language Model) |
자연어를 이해하고 응답을 생성하는 중심 두뇌 | GPT-4를 사용해 사용자의 질문 “5일 이동평균이 20일선을 돌파하면 매수해야 하나요?”에 대해 전략적 설명 생성 |
| 2. Prompts (프롬프트 템플릿) |
모델이 일관되게 답변하도록 질문 형식과 지침 정의 | 프롬프트 예시: “아래 전략 문서를 참고하여 질문에 답하시오. 문서에 없는 내용은 추측하지 마시오.\n문서: {context}\n질문: {question}” |
| 3. Index (문서 인덱싱/검색) |
다양한 전략 문서, 리서치 리포트 등을 벡터로 저장하고 검색 | 사용자가 업로드한 “피라미딩 매매 전략.pdf”를 벡터화하여 “이 전략은 RSI를 어떻게 쓰나요?”에 관련 부분 검색 |
| 4. Memory (대화 기억) |
이전 대화의 흐름이나 정보 유지, 문맥 연결 | 사용자: “RSI 전략 알려줘” → 다음에 “그 전략으로 코드를 짜줘” 했을 때, 이전 내용을 기억하고 반영 |
| 5. Chain (처리 흐름 파이프라인) |
여러 단계의 작업(프롬프트 생성, 검색, 응답 등)을 자동 연결 | 문서 → 분할 → 유사도 검색 → 요약 → 응답 생성 등의 과정을 하나의 체인으로 구성 예: load_qa_chain, map_reduce_chain |
| 6. Agents (도구 활용 컨트롤러) |
LLM이 계산기, 웹 검색, 데이터 API 등을 스스로 호출하여 복잡한 문제 해결 | 사용자: “삼성전자 현재 RSI 값 알려줘” → 에이전트가 주가 API 호출 + RSI 계산기 실행 → 응답: “현재 RSI는 67.3이며, 과매수 구간에 가까워지고 있습니다.” |
✅ 시스템 트레이딩 예시 흐름 요약
사용자가 질문:
“이 전략에서 RSI가 70을 넘으면 매도하라고 되어 있는데, 지금 삼성전자는 어떤가요?”
LangChain 구성 요소:
- Index: 전략 문서에서 “RSI 70 이상 → 매도” 조건 검색
- Agent: 삼성전자 주가 데이터를 외부 API에서 가져옴
- Agent: RSI 계산 도구를 사용해 현재 값 계산
- Prompt: 검색된 전략 문서와 계산된 RSI를 바탕으로 질문을 구성
- LLM: 응답 생성
- Memory: 다음 대화에서 이 정보를 다시 활용 가능
🧾 최종 요약표
| 구성요소 | 기능 설명 | 시스템 트레이딩 적용 예 |
| LLM | 자연어 이해 및 응답 생성 | 전략 조건 설명, 코드 생성 등 |
| Prompts | 질문 구조와 지시 설정 | 문서 기반 응답, 환각 방지 |
| Index | 문서 유사도 검색 | 전략서에서 조건 추출 |
| Memory | 대화 내용 기억 | 전략 흐름 유지, 재사용 가능 |
| Chain | 작업 자동화 흐름 | 문서 분석 → 응답 생성 파이프라인 |
| Agents | 외부 도구 활용 | API 호출, RSI 계산 등 |
LangChain을 활용한 시스템 트레이딩 분석 도구를 구축한다고 할 때, 전형적인 문서 기반 질의응답 흐름은 다음과 같은 5단계로 구성됩니다:
📊 LangChain 처리 흐름 : 문서 업로드 → 답변 생성까지

| 단계 | 설명 | 시스템 트레이딩 적용 예시 |
| 1. 문서 업로드 (Document Upload) |
사용자가 매매 전략, 리서치 리포트, 공시 문서 등을 업로드 | 예: 피라미딩 매매 전략.pdf, 삼성전자 2025 1Q 실적.txt 업로드 |
| 2. 문서 분할 (Text Splitting) |
문서를 토큰 수 제한에 맞게 **작은 청크(chunk)**로 나눔 | 전략 문서의 각 챕터나 조건을 기준으로 문단 분할 (예: 1,000자 단위) |
| 3. 문서 임베딩 (Embedding) |
각 청크를 벡터로 변환하여 Vector Store에 저장 | Chroma, FAISS, Weaviate 등을 사용해 문서 벡터 저장 |
| 4. 임베딩 검색 (Similarity Search) |
사용자의 질문과 가장 유사한 문서 청크를 검색 | 질문: “RSI 조건이 어디에 있나요?” → “3장: 기술적 지표 매매 조건” 청크 반환 |
| 5. 답변 생성 (LLM + Prompt) |
검색된 문서를 기반으로 LLM이 답변 생성 프롬프트로 문서 외 환각 방지 |
“해당 전략에서는 RSI > 70일 때 매도합니다. 문서 3장을 참고했습니다.” |
🔁 전체 흐름 예시
사용자가 질문:
“이 전략에서 RSI가 70 넘으면 매도하라고 되어 있는데, 정확히 어디에 나와 있나요?”
LangChain의 처리 과정:
- 📄 문서 업로드: 피라미딩 전략.pdf 업로드
- ✂️ 문서 분할: 전략 문서를 문단 단위로 분할
- 🧠 임베딩 저장: 각 분할된 문단을 벡터로 변환하고 Chroma에 저장
- 🔍 질문 → 유사 문단 검색: “RSI 70”이라는 키워드가 포함된 문단 검색
- 💬 LLM이 응답 생성:
프롬프트:응답: - “전략 문서 3.2절에 따르면, RSI가 70 이상일 경우 매도 신호로 간주됩니다.”
- "아래 문서를 참고하여 질문에 답하고, 문서에 없는 내용은 추측하지 마세요.\n문서:\n{retrieved_context}\n질문: {user_question}"
🧠 구성도 요약
[사용자 문서 업로드]
↓
[문서 분할 (TextSplitter)]
↓
[임베딩 생성 → VectorStore 저장]
↓
[질문 입력 → 유사 문서 검색]
↓
[LLM이 문서 기반 답변 생성]
✅ 시스템 트레이딩에 특히 유용한 활용 사례
| 활용 목적 | 질문 예시 | LangChain 기능 |
| 전략 조건 추출 | “이 전략의 진입 조건은?” | 문서 검색 + LLM 요약 |
| 공시 기반 판단 | “이번 분기 실적은 어떤가요?” | 실적 보고서 임베딩 + 답변 |
| 위험 관리 규칙 확인 | “손절 조건은 몇 %인가요?” | 문서 중 ‘리스크 관리’ 섹션 검색 |
| 전략 자동화 코드 생성 | “이 조건으로 파이썬 매매 코드 짜줘” | 조건 추출 + 코드 생성 프롬프트 |
'인공지능 > 랭체인' 카테고리의 다른 글
| 인공지능 API 중에 무료로 써볼 수 있는것은? (10) | 2025.06.23 |
|---|---|
| ChatGPT API Key 발급 및 연동 (1) | 2025.06.23 |
| Open Source LLM 과 Closed Source LLM (시스템 트레이딩에 적합한 것은?) (16) | 2025.06.22 |
| 시스템 트레이딩 시 ChatGPT의 한계와 LangChain 개선 (6) | 2025.06.22 |
| 시스템 트레이딩도 인공지능으로~ (+랭체인 합체) (4) | 2025.06.22 |

