kiwoom-client 0.1.13__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. kiwoom_client-0.1.13/.env.example +6 -0
  2. kiwoom_client-0.1.13/.github/ISSUE_TEMPLATE/bug_report.md +29 -0
  3. kiwoom_client-0.1.13/.github/ISSUE_TEMPLATE/feature_request.md +18 -0
  4. kiwoom_client-0.1.13/.github/workflows/ci.yml +28 -0
  5. kiwoom_client-0.1.13/.github/workflows/publish.yml +29 -0
  6. kiwoom_client-0.1.13/.gitignore +14 -0
  7. kiwoom_client-0.1.13/CONTRIBUTING.md +32 -0
  8. kiwoom_client-0.1.13/LICENSE +21 -0
  9. kiwoom_client-0.1.13/PKG-INFO +625 -0
  10. kiwoom_client-0.1.13/README.md +591 -0
  11. kiwoom_client-0.1.13/README_EN.md +139 -0
  12. kiwoom_client-0.1.13/examples/README.md +49 -0
  13. kiwoom_client-0.1.13/examples/basic_usage.py +50 -0
  14. kiwoom_client-0.1.13/examples/market_data.py +64 -0
  15. kiwoom_client-0.1.13/examples/pandas_usage.py +72 -0
  16. kiwoom_client-0.1.13/examples/realtime_websocket.py +91 -0
  17. kiwoom_client-0.1.13/examples/trading.py +92 -0
  18. kiwoom_client-0.1.13/pyproject.toml +58 -0
  19. kiwoom_client-0.1.13/src/kiwoom_rest_api/__init__.py +230 -0
  20. kiwoom_client-0.1.13/src/kiwoom_rest_api/auth.py +69 -0
  21. kiwoom_client-0.1.13/src/kiwoom_rest_api/base.py +172 -0
  22. kiwoom_client-0.1.13/src/kiwoom_rest_api/domestic/__init__.py +35 -0
  23. kiwoom_client-0.1.13/src/kiwoom_rest_api/domestic/account.py +218 -0
  24. kiwoom_client-0.1.13/src/kiwoom_rest_api/domestic/chart.py +146 -0
  25. kiwoom_client-0.1.13/src/kiwoom_rest_api/domestic/condition_search.py +37 -0
  26. kiwoom_client-0.1.13/src/kiwoom_rest_api/domestic/credit_order.py +44 -0
  27. kiwoom_client-0.1.13/src/kiwoom_rest_api/domestic/elw.py +86 -0
  28. kiwoom_client-0.1.13/src/kiwoom_rest_api/domestic/etf.py +74 -0
  29. kiwoom_client-0.1.13/src/kiwoom_rest_api/domestic/foreign_institution.py +44 -0
  30. kiwoom_client-0.1.13/src/kiwoom_rest_api/domestic/market.py +170 -0
  31. kiwoom_client-0.1.13/src/kiwoom_rest_api/domestic/order.py +68 -0
  32. kiwoom_client-0.1.13/src/kiwoom_rest_api/domestic/ranking.py +158 -0
  33. kiwoom_client-0.1.13/src/kiwoom_rest_api/domestic/sector.py +56 -0
  34. kiwoom_client-0.1.13/src/kiwoom_rest_api/domestic/short_selling.py +26 -0
  35. kiwoom_client-0.1.13/src/kiwoom_rest_api/domestic/slb.py +44 -0
  36. kiwoom_client-0.1.13/src/kiwoom_rest_api/domestic/stock_info.py +206 -0
  37. kiwoom_client-0.1.13/src/kiwoom_rest_api/domestic/theme.py +32 -0
  38. kiwoom_client-0.1.13/src/kiwoom_rest_api/py.typed +0 -0
  39. kiwoom_client-0.1.13/src/kiwoom_rest_api/rate_limiter.py +33 -0
  40. kiwoom_client-0.1.13/src/kiwoom_rest_api/websocket.py +172 -0
  41. kiwoom_client-0.1.13/tests/__init__.py +0 -0
  42. kiwoom_client-0.1.13/tests/test_auth.py +28 -0
  43. kiwoom_client-0.1.13/tests/test_base.py +103 -0
  44. kiwoom_client-0.1.13/tests/test_modules.py +169 -0
  45. kiwoom_client-0.1.13/tests/test_rate_limiter.py +65 -0
@@ -0,0 +1,6 @@
1
+ # 키움 REST API 인증 정보
2
+ # https://openapi.kiwoom.com 에서 발급받은 키를 입력하세요.
3
+
4
+ KIWOOM_APP_KEY="your_app_key"
5
+ KIWOOM_APP_SECRET="your_app_secret"
6
+ KIWOOM_ACCOUNT_NO="your_account_number"
@@ -0,0 +1,29 @@
1
+ ---
2
+ name: Bug Report
3
+ about: 버그를 신고합니다
4
+ title: "[Bug] "
5
+ labels: bug
6
+ ---
7
+
8
+ ## 환경
9
+
10
+ - **Python 버전**: (예: 3.12)
11
+ - **kiwoom-rest-api 버전**: (예: 0.1.12)
12
+ - **OS**: (예: Windows 11, macOS 15, Ubuntu 24.04)
13
+ - **서버**: 모의투자 / 실전투자
14
+
15
+ ## 재현 방법
16
+
17
+ 1.
18
+ 2.
19
+ 3.
20
+
21
+ ## 기대 동작
22
+
23
+ ## 실제 동작
24
+
25
+ ## 에러 메시지 (있는 경우)
26
+
27
+ ```
28
+ 에러 메시지를 여기에 붙여넣기
29
+ ```
@@ -0,0 +1,18 @@
1
+ ---
2
+ name: Feature Request
3
+ about: 새로운 기능을 제안합니다
4
+ title: "[Feature] "
5
+ labels: enhancement
6
+ ---
7
+
8
+ ## 설명
9
+
10
+ 어떤 기능이 필요한지 설명해주세요.
11
+
12
+ ## 사용 사례
13
+
14
+ 이 기능이 어떤 상황에서 유용한지 알려주세요.
15
+
16
+ ## 고려한 대안
17
+
18
+ 다른 방법을 시도해보셨나요?
@@ -0,0 +1,28 @@
1
+ name: CI
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ pull_request:
7
+ branches: [main]
8
+
9
+ jobs:
10
+ test:
11
+ runs-on: ubuntu-latest
12
+ strategy:
13
+ matrix:
14
+ python-version: ["3.10", "3.11", "3.12", "3.13"]
15
+
16
+ steps:
17
+ - uses: actions/checkout@v4
18
+
19
+ - name: Set up Python ${{ matrix.python-version }}
20
+ uses: actions/setup-python@v5
21
+ with:
22
+ python-version: ${{ matrix.python-version }}
23
+
24
+ - name: Install dependencies
25
+ run: pip install -e ".[dev]"
26
+
27
+ - name: Run tests
28
+ run: pytest tests/ -v
@@ -0,0 +1,29 @@
1
+ name: Publish to PyPI
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - "v*"
7
+
8
+ jobs:
9
+ publish:
10
+ runs-on: ubuntu-latest
11
+ environment: release
12
+ permissions:
13
+ id-token: write
14
+
15
+ steps:
16
+ - uses: actions/checkout@v4
17
+
18
+ - uses: actions/setup-python@v5
19
+ with:
20
+ python-version: "3.12"
21
+
22
+ - name: Install build
23
+ run: pip install build
24
+
25
+ - name: Build
26
+ run: python -m build
27
+
28
+ - name: Publish to PyPI
29
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,14 @@
1
+ __pycache__/
2
+ *.py[cod]
3
+ *.egg-info/
4
+ dist/
5
+ build/
6
+ .venv/
7
+ .env
8
+ .pytest_cache/
9
+ *.egg
10
+ .omc/
11
+ uv.lock
12
+ .mypy_cache/
13
+ .ruff_cache/
14
+ *.so
@@ -0,0 +1,32 @@
1
+ # Contributing
2
+
3
+ kiwoom-rest-api에 기여해주셔서 감사합니다!
4
+
5
+ ## 개발 환경 설정
6
+
7
+ ```bash
8
+ git clone https://github.com/younghwan91/kiwoom-rest-api.git
9
+ cd kiwoom-rest-api
10
+ pip install -e ".[dev]"
11
+ # 또는
12
+ uv pip install -e ".[dev]"
13
+ ```
14
+
15
+ Python **3.10 이상**이 필요합니다.
16
+
17
+ ## 테스트 실행
18
+
19
+ ```bash
20
+ pytest tests/ -v
21
+ ```
22
+
23
+ ## PR 가이드라인
24
+
25
+ 1. `main` 브랜치에서 새 브랜치를 생성합니다.
26
+ 2. 변경 사항을 커밋합니다.
27
+ 3. 모든 테스트가 통과하는지 확인합니다: `pytest tests/ -v`
28
+ 4. PR을 생성합니다.
29
+
30
+ ## 버그 리포트 & 기능 요청
31
+
32
+ [GitHub Issues](https://github.com/younghwan91/kiwoom-rest-api/issues)에서 이슈를 생성해주세요.
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Younghwan Chae
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.