Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

jcm0314/Auto_Stock

Repository files navigation

Auto_Stock 📈

김덕륜과 함께하는 주식자동화 프로젝트(2024年12月14日 ~ )

📋 프로젝트 개요

이 프로젝트는 한국투자증권 API를 활용한 자동 주식 거래 시스템입니다. 지정된 종목들을 자동으로 매수/매도하여 수익을 극대화하는 것을 목표로 합니다.

🚀 주요 기능

  • 자동 매수/매도: 설정된 조건에 따라 자동으로 주식 거래
  • 실시간 모니터링: Discord를 통한 실시간 거래 알림
  • 거래 시간 관리: 주식 거래 시간(9:00-15:30)에만 거래 실행
  • 토큰 자동 관리: API 토큰 자동 갱신 및 관리
  • 포트폴리오 분산: 여러 종목에 자산 분산 투자

📁 프로젝트 구조

Auto_Stock/
├── main_program.py # 메인 프로그램
├── dependencies.py # 의존성 및 설정 로드
├── buy_stock.py # 주식 매수 기능
├── sell_stock.py # 주식 매도 기능
├── get_balance.py # 계좌 잔고 조회
├── get_stock_balance.py # 보유 주식 조회
├── get_current_price.py # 현재가 조회
├── get_target_price.py # 목표가 계산
├── get_access_token.py # API 토큰 발급
├── revoke_access_token.py # API 토큰 해지
├── send_message.py # Discord 메시지 전송
├── discord_bot.py # Discord 봇 기능
├── hashkey.py # API 인증 해시키 생성
├── stock_program.bat # Windows 실행 배치 파일
├── test.py # 테스트 코드
├── settings/ # 설정 파일들
│ ├── fake_config.yaml # 개발용 설정
│ ├── real_config.yaml # 운영용 설정
│ ├── token.yaml # API 토큰 저장
│ └── main.py # 설정 관리
├── data/ # 데이터 파일
│ └── report.csv # 거래 리포트
└── testing/ # 테스트 관련 파일들

🛠️ 설치 및 설정

1. 필수 요구사항

  • Python 3.7 이상
  • 한국투자증권 계좌
  • Discord 웹훅 URL

2. 의존성 설치

pip install requests
pip install pyyaml

3. 설정 파일 구성

settings/fake_config.yaml 또는 settings/real_config.yaml 파일을 다음과 같이 설정:

APP_KEY: "your_app_key"
APP_SECRET: "your_app_secret"
CANO: "your_account_number"
ACNT_PRDT_CD: "01"
DISCORD_WEBHOOK_URL: "your_discord_webhook_url"
URL_BASE: "https://openapi.koreainvestment.com:9443"

4. 실행 방법

Windows:

stock_program.bat

Python 직접 실행:

python main_program.py

⚙️ 설정 옵션

거래 설정

  • symbol_list: 매수 희망 종목 리스트 (종목코드)
  • target_buy_count: 매수할 종목 수
  • buy_percent: 종목당 매수 금액 비율 (0.33 = 33%)

거래 시간

  • 매수 시작: 09:00:05
  • 매도 시작: 15:15:00
  • 거래 종료: 15:29:30

📊 현재 지원 종목

기본 설정된 종목:

  • 005930: 삼성전자
  • 035720: 카카오
  • 000660: SK하이닉스
  • 069500: KODEX 200

🔔 알림 기능

Discord를 통해 다음 정보들을 실시간으로 받을 수 있습니다:

  • 거래 시작/종료 알림
  • 매수/매도 실행 알림
  • 계좌 잔고 정보
  • 보유 주식 현황
  • 에러 및 예외 상황

⚠️ 주의사항

  1. 실제 거래: 이 프로그램은 실제 돈으로 거래하므로 신중하게 사용하세요.
  2. API 제한: 한국투자증권 API 사용량 제한을 확인하세요.
  3. 시장 위험: 주식 투자는 원금 손실 위험이 있습니다.
  4. 테스트: 실제 거래 전에 충분한 테스트를 진행하세요.

🐛 문제 해결

일반적인 문제들

  1. 토큰 만료: 프로그램이 자동으로 토큰을 갱신합니다.
  2. 거래 시간 외: 거래 시간(9:00-15:30)에만 거래가 실행됩니다.
  3. 잔고 부족: 충분한 현금이 있는지 확인하세요.

📈 성능 모니터링

거래 결과는 data/report.csv 파일에 자동으로 저장됩니다.

🤝 기여하기

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📄 라이선스

이 프로젝트는 MIT 라이선스 하에 배포됩니다.

📞 연락처

프로젝트 관련 문의사항이 있으시면 이슈를 생성해 주세요.


⚠️ 투자 경고: 이 프로그램은 교육 및 연구 목적으로 제작되었습니다. 실제 투자에 사용하기 전에 충분한 검토와 테스트를 진행하시기 바랍니다.

About

김덕륜과 함께하는 주식자동화 프로젝트

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

AltStyle によって変換されたページ (->オリジナル) /