다음 받은 pycharm 설치 파일을 클릭합니다.

제가 다운 받을 때는 설치 파일은 pycharm-community-2024.3.4.exe 이였고 용량은 570MB 정도 였습니다.

[다음]을 클릭합니다.

 

기본 설치 폴더로 [다음]을 클릭합니다.

 

이미지와 같이 체크를 변경하고 [다음]을 클릭합니다.

[데스크톱 바로가기 생성]은 바탕화면에 PyCharm 아이콘을 생성해주는 옵션입니다. 
 [컨텍스트 메뉴 업데이트]는 마우스 오른쪽 버튼을 누를 때 PyCharm 관련 메뉴가 나타나게 해줍니다. 
 [연결 생성]은 확장자가 py인 파일에 대해서 PyCharm으로 실행되도록 해줍니다.

[PATH 변수 업데이트]의 경우 PyCharm 의 bin 폴더에 있는 명령을 Windows 환경변수인 PATH 에 추가하는 것입니다.

이 것을 체크하면 Windows 명령 프롬프트에서 pycharm 이라고 치면 pycharm 을 실행 시킬 수 있습니다.

위 변수를 체크해도 되며 PyCharm 실행 시 바탕화면이나 Windows 메뉴에서 PyCharm 선택 후 실행해도 되기 때문에 저는 선택하지 않았습니다.

기본값을 변경하지 않고 [설치]를 클릭합니다.

 

설치에 시간이 걸립니다. 느긋하게 기다리세요. 커피 한잔 드셔도 됩니다. Anaconda 보다는 설치가 빠릅니다.

 

[마침]을 클릭합니다.

Posted by 제이브레인
,

다음 URL 접속합니다.

https://www.jetbrains.com/pycharm/download/?section=windows

 

Download PyCharm: The Python IDE for data science and web development by JetBrains

Download the latest version of PyCharm for Windows, macOS or Linux.

www.jetbrains.com

 

페이지 상단에는 유료버전인 PyCharm Professional 이 있습니다.

 

PyCharm Professional 을 다운로드하는 30일 Trial 기간이 있고 이후에는 결제를 해야 사용이 가능합니다.

무료 버전인 PyCharm Community Edition 은 스크롤을 아래로 한참 내리면 보입니다.

역시 기업은 무료보다는 유료가 가장 눈에 띄는 곳에 배치를 하는 것 같습니다.

뭐랄까요~

해당 업체가 이러는 것 같아요. 유료 버전을 설치해서 쓰게 해드릴게요.

단 30일까지만요~~ 뭐라구요? 무료 쓰고 싶으시다고요?

그럼~~ 찾아보세요~~ 홈페이지 어딘가에는 있습니다. 하하하~~

암튼 스크롤을 한참 아래로 내리면 PyCharm Community Edition 이라는 무료 버전이 있습니다.

이름도 좀 그렇습니다. 저도 처음에는 Free 라는 단어가 있을 줄알았는데 없더군요.

Community 라는 의미가 처음에는 바로 알기 힘들었습니다.

Community 라는 단어에서 아파트 커뮤니티 센터가 생각이 나더군요.

Community Edition 이 뭐지?  기업용 버전인가? 채팅기능같이 다른 사람들과 의사소통하는 기능 제공하나?

무료 버전이란 말이 없어서 인터넷 찾아보고 무료 버전이라는 것을 알았습니다.

참고로 유료 버전에서는 추가 기능이 더 지원된다고 합니다.

웹 프레임워크 지원 (Django, Flask, FastAPI), 데이터베이스 & SQL 지원 등이 더 지원된다고 합니다.

그러나 무료 버전도 개발에는 문제가 없습니다.

나중에 무료 버전 쓰다가 추가 기능이 그리울 때는 유료 버전을 사면 됩니다.

[Download] 를 클릭하여 다운로드 하면 됩니다.

 

Posted by 제이브레인
,

Python 으로 개발 시 메모장 등으로도 작성할 수 있지만 디버깅과 코드 수정 시에 많이 불편합니다.
그래서 통합 개발환경이라고 하는 IDE(Integrated Development Environment) 를 이용해 개발하는 편입니다.
파이썬 IDE 중에 인기가 높은 JetBrains의 PyCharm 을 사용하겠습니다.

 

Posted by 제이브레인
,

국내 증권사 API 를 이용하기 위해서는 Python 32비트 환경이 필요하고
용량이 큰 데이터 처리를 위해서는 64비트 환경이 필요합니다.
그래서 가상 환경으로 32비트와 64비트를 만들겠습니다.

1) 64비트 가상 환경 만들기

Windows 검색에서 anaconda 라고 치면 Anaconda Prompt 가 표시됩니다.

 

마우스 우측 클릭 후에 관리자 권한으로 실행합니다.

2) 64 비트 패키지 다운로드 설정

conda config --env --set subdir win-64

현재 활성화된 Conda 환경(또는 새로 만들 환경)에 대해 win-64(Windows 64비트)용 패키지를 다운로드하도록 설정합니다.
기본적으로 Conda는 운영 체제의 아키텍처에 맞는 패키지를 가져오는데, 이 명령을 실행하면 강제로 32비트용 패키지를 설치하도록 합니다.
--env 옵션을 사용하면 현재 활성화된 환경에만 적용되며, 글로벌 설정은 변경되지 않습니다.
만약 명령 실행 시에 다음과 같은 에러가 발생했다면 관리자 권한으로 실행이 되지 않고 일반 권한으로 실행이 된 것입니다.

CondaError: Cannot write to condarc file at C:\anaconda3\.condarc
Caused by PermissionError(13, 'Permission denied')

꼭 권리자 권한으로 실행하세요.

3) 가상 환경 생성

conda create --name py38_64 python=3.8

py38_64라는 새로운 Conda 가상 환경을 생성하고, Python 3.8을 설치합니다.
앞서 설정한 win-64 서브디렉토리를 사용하여 64비트용 Python을 설치합니다.

패키지 설치를 물으면 y를 입력하여 설치합니다.
done 이라 표시되면 정상 설치된 것입니다.

4) 가상 환경 활성화

conda activate py38_64

위 명령 실행 후 명령 프롬프트 앞단의 (base) 가 (py38_64) 로 변경이 되면 정상적으로 가상 환경이 활성화 된 것입니다.

5) 가상 환경 테스트

python -V
python -c "import struct; print(struct.calcsize('P') * 8)"

python 버전이 3.8.x 이고 64 라고 표시되면 64비트 python 3.8 버전이 정상적으로 설치 된 것입니다

 
참고할 점은 32비트와 64비트로 설치된 Python 마이너 버전이 다를 수 있다는 것입니다.
32비트 : 3.8.13
64비트 : 3.8.20

1.5) 가상 환경 비활성화

conda deactivate

conda deactivate 명령 실행 후 명령 프롬프트 앞 문자열이 (base)로 바뀌면 정상적으로 해제된 것입니다.

실행한 전체 명령은 다음과 같습니다.

conda config --env --set subdir win-64
conda create --name py38_64 python=3.8
conda activate py38_64
python -V
python -c "import struct; print(struct.calcsize('P') * 8)"
conda deactivate

 

Posted by 제이브레인
,

국내 증권사 API 를 이용하기 위해서는 Python 32비트 환경이 필요하고
용량이 큰 데이터 처리를 위해서는 64비트 환경이 필요합니다.
그래서 가상 환경으로 32비트와 64비트를 만들겠습니다.

1) 32비트 가상 환경 만들기

Windows 검색에서 anaconda 라고 치면 Anaconda Prompt 가 표시됩니다.

 

마우스 우측 클릭 후에 관리자 권한으로 실행합니다.

2) 32 비트 패키지 다운로드 설정

conda config --env --set subdir win-32

현재 활성화된 Conda 환경(또는 새로 만들 환경)에 대해 win-32(Windows 32비트)용 패키지를 다운로드하도록 설정합니다.
기본적으로 Conda는 운영 체제의 아키텍처에 맞는 패키지를 가져오는데, 이 명령을 실행하면 강제로 32비트용 패키지를 설치하도록 합니다.
--env 옵션을 사용하면 현재 활성화된 환경에만 적용되며, 글로벌 설정은 변경되지 않습니다.
만약 명령 실행 시에 다음과 같은 에러가 발생했다면 관리자 권한으로 실행이 되지 않고 일반 권한으로 실행이 된 것입니다.

CondaError: Cannot write to condarc file at C:\anaconda3\.condarc
Caused by PermissionError(13, 'Permission denied')

꼭 권리자 권한으로 실행하세요.

3) 가상 환경 생성

conda create --name py38_32 python=3.8

py38_32라는 새로운 Conda 가상 환경을 생성하고, Python 3.8을 설치합니다.
앞서 설정한 win-32 서브디렉토리를 사용하여 32비트용 Python을 설치합니다.
 

패키지 설치를 물으면 y를 입력하여 설치합니다.
done 이라 표시되면 정상 설치된 것입니다.

4) 가상 환경 활성화

conda activate py38_32

위 명령 실행 후 명령 프롬프트 앞단의 (base) 가 (py38_32) 로 변경이 되면 정상적으로 가상 환경이 활성화 된 것입니다.

5) 가상 환경 테스트

python -V
python -c "import struct; print(struct.calcsize('P') * 8)"

python 버전이 3.8.x 이고 32 라고 표시되면 32비트 python 3.8 버전이 정상적으로 설치 된 것입니다.

6) 가상 환경 비활성화

conda deactivate

conda deactivate 명령 실행 후 명령 프롬프트 앞 문자열이 (base)로 바뀌면 정상적으로 해제된 것입니다.

 
실행한 전체 명령은 다음과 같습니다.

conda config --env --set subdir win-32
conda create --name py38_32 python=3.8
conda activate py38_32
python -V
python -c "import struct; print(struct.calcsize('P') * 8)"
conda deactivate
Posted by 제이브레인
,

다운받은 아나콘다를 선택 후 마우스 오른쪽을 클릭 후 관리자 권한으로 실행합니다.

 

 

[Next] 를 클릭합니다.

 

 

[I Agree]를 클릭합니다.

 

 

기본 선택인 All Users 가 체크된 상태로 [Next] 클릭합니다.

 

 

설치 경로를 기본인 C:\ProgramData\anaconda3 -> C:\anaconda3 로 변경합니다. 변경을 하지 않아도 되지만 설치 된 패키지 확인 시에 경로가 적은 것이 편하므로 변경하도록 하겠습니다. C 드라이브에 용량이 적은 분들은 D 드라이브로 변경하셔도 됩니다. [Next] 를 클릭합니다.

 

 

기본값 그대로 된 상태에서 [Install]을 클릭합니다.

 

 

설치에 시간이 시간이 걸립니다. 느긋하게 기다리세요.

 

Install Complete 라도 뜨면 정상적으로 설치가 된 것입니다. [Next]를 클릭하세요.

 

[Next]를 클릭합니다.

 

[Finish]를 클릭하면 설치는 완료된 것입니다.

Posted by 제이브레인
,

국내 증권사 API를 정상적으로 사용하려면 반드시 32비트를 사용해야 합니다.

그런데 백테스트 등 대용량 데이터를 사용하게 되면 Python 64 비트가 필요할 수 있습니다.

그러면 32비트를 설치하느냐 아니면 64비트를 설치하느냐 하는 갈등이 생깁니다.

PC 가 2개가 있어서 PC 1대는 32비트를 설치하고 다른 PC 1대는 64비트를 설치하는 방법도 있지만 너무 번거롭습니다.

방법은 2가지가 있습니다.

1). 아나콘다 32비트를 설치한다.

2). 아나콘다 64비트를 설치하고 32비트와 64비트 가상환경을 만든다.

저는 대용량 데이터 분석도 하고 싶은 마음이 크기 때문에 2번으로 진행하겠습니다.

참고로 아나콘다의 공식 웹사이트에서는 기본적으로 64비트 버전만 제공됩니다. 32비트 버전을 설치하려면 이전 버전의 설치 파일을 찾아야 합니다.

다음 URL로 이동하여 과거 버전을 다운로드하세요.

파일은 다음과 같이 xxx-x86.exe 를 다운로드 받으면 됩니다. (Anaconda3-2021.11-Windows-x86.exe)
https://repo.anaconda.com/archive/

 

Index of /

Anaconda-2.3.0-Linux-x86.sh 309.6M 2015-07-01 13:35:09 73fdbbb3e38207ed18e5059f71676d18d48fdccbc455a1272eb45a60376cd818

repo.anaconda.com

 

저는 꿈이 큰 관계로 64비트를 다운로드를 한 후에 32비트, 64비트 가상환경을 만들겠습니다.

아나콘다 공식 사이트에 접속합니다.

https://www.anaconda.com/

 

Anaconda | Built to Advance Open Source AI

Anaconda simplifies, safeguards, and accelerates open-source AI with a trusted platform, enabling secure scaling, real-time insights, and community collaboration.

www.anaconda.com

 

다운로드 방법이 계속 변경이 되는 것 같습니다.

글을 쓰고 난 후에도 다른 방식으로 변경이 될 수도 있습니다.

우측 상단을 보면 Free Download 가 있습니다.

[Free Download]를 클릭합니다.

 

아래와 같이 다운로드를 위해서는 email 을 넣으라고 합니다.

해당 email 로 다운로드 링크가 전달이 됩니다.

그러므로 실제 확인이 가능한 email 을 입력해야 합니다.

email 을 입력하고 Submit 을 클릭합니다.

 

Submit 후에 기다리면 다운로드 링크가 포함된 email 옵니다.

이를 클릭하여 다운로드 합니다.

 

메일의 다운로드 링크를 누른다고 바로 다운로드가 되는 것은 아니며 다운로드 가능한 웹 페이지로 이동됩니다.

여기서 다시 왼쪽 하단의 [Download] 를 클릭해야 최종적으로 다운로드 됩니다.

아무튼 여러 단계를 거치도록 만들어놓았습니다.

 

저는 다운로드를 해보니 Anaconda3-2024.10-1-Windows-x86_64.exe 라는 약 950MB 정도 크기의 파일이 다운로드 되었습니다.

Posted by 제이브레인
,

Python 으로 개발하기 위해서는 우선 Python 환경 설정을 해야 합니다.

파이썬 개발 환경을 만들 때 가장 많이 사용되는 두 가지 방법이 있습니다.

  1. Python 공식 홈페이지에서 다운로드하여 설치하는 방법
  2. Anaconda를 설치하는 방법

각 방법의 차이점과 장단점을 비교해 보겠습니다.

Python 공식 홈페이지(https://www.python.org)에서 직접 다운로드하여 설치하는 방법입니다.

가볍고 최소한의 설치 → 필요한 라이브러리만 개별 설치 가능합니다.

Anaconda는 데이터 과학 및 머신러닝 개발에 특화된 파이썬 배포판으로, 다양한 패키지와 함께 제공됩니다.

데이터 과학, 머신러닝, 딥러닝 관련 패키지 기본 포함되어 있습니다.

비교 요약

설치 크기 가벼움 (~30MB) 무거움 (~500MB)
패키지 관리 pip, venv 사용 conda 사용 (더 강력)
데이터 과학/AI 직접 설치 필요 기본 포함
가상 환경 관리 venv 사용 (기본 제공) conda 사용 (더 편리)
초보자 접근성 환경 설정 필요 쉽게 사용 가능
웹 개발 추천 불필요하게 무거움
데이터 분석, 머신러닝 추가 설치 필요 추천

 

JbTrader 의 경우 데이터 분석이 많이 필요하므로 Anaconda 를 설치하는 방법으로 진행하겠습니다.

Posted by 제이브레인
,
Posted by 제이브레인
,

python 으로 시스템 트레이딩 프로그램을 만들 계획입니다.
PyQt 로 UI 를 만들 생각입니다.
주변에 자료를 찾아보니 관련 자료가 있는데 대부분 초기 UI 만 설계되어 있고 설명은 매우 부족한 편입니다.
기능과 더불어 어떻게 동작하는지 설명을 많이 추가할 생각입니다.

시스템 트레이딩을 만들려는 이유는 평소 회사일로 바빠서 주가를 제대로 확인할 수가 없었습니다.
특히 국내 주식의 경우 잠시 한눈을 팔고 있으면 오너리스크, 분할상장, 횡령, 한반도의 지리적 리스크 등 이슈가 끊임없이 나옵니다.
몇일 전에는 L모 주식을 샀는데 오너가 중복상장이 뭐가 문제냐 상장 후 주식을 안사면 된다고해서 주식이 많이 떨어졌습니다.
해당 발언 전에는 주가가 플러스였었습니다.
그날은 회사일이 바빠서 주가를 집에 퇴근 후 확인했더니
왠걸 주식이 폭락했습니다.
뭐지~ 뭐지~ 하면서 인터넷을 뒤지고 내용을 확인후에 알았습니다.
정말 그날은 기분도 안좋고 잠도 제대로 자지 못했습니다.
계속 시스템 트레이딩을 만들 생각만 했지 실천을 하지 못하고 있었습니다.
이대로는 안되겠다는 생각이 들고 뭔가 껍데기라도 만들어야겠다는 생각으로 시작하게 되었습니다.
한국 주식은 곳곳에 크레바스같은 것이 널려있습니다.
잘못 밟으면 끝장이다. 대응을 늦게 해도 끝장입니다.
계속적으로 살펴야 하고 낌세가 이상하면 바로 도망쳐야 합니다.
그런데 바쁜 회사생활을 하면서 계속적으로 주가를 확인할 수는 없습니다.
회사에 눈치도 보이도 계속 주식을 보고 있는 모습을 보이면 회사도 좋아할리가 없습니다.
시스템 트레이딩 프로그램을 JbTrader 라고 지은 이유는 그냥 이름에서 따온겁니다.
이름 이니셜에서 성을 제외한 이름 이니셜을 땄습니다.
너무 무성의 한 것 아닌각 생각할지 모르지만 우선 껍데기라고 만든다는 의미로 시작하게 됬습니다.
그리고 예전부터 시스템 트레이딩 프로그램을 만들고 싶다는 생각은 있었지만 계속 미루고 있었습니다.
뭐든 혼자하는 것 보다는 같이 하는 것이 좀더 실행력이 있는 것 같습니다.
식사도 혼자 있으면 대충 라면 이나 인스턴트 음식으로 때우게 되지만 식구가 같이 있으면 그래도 뭐라도 더 챙겨서 식사하게 되잖아요.
그렇습니다. 혼자 가는 것이 아니고 같이 간다는 느낌으로 자료를 공유하면서 만들면 좀더 실행력이 생기지 않을까하는 생각이 불현듯 들었습니다. 
솔직히 주식 폭망이 동기를 자극했다고 할까요
고마워요~~ L모 회사 회장님~~ 당신이 그동안 못했던 내 시스템 프로그램에 대한 동기를 자극해줬어요~~.
고마워요~~ 한국시장~~ 불안한 개인 투자자의 마음에 역쉬~ 나 하는 안도감을 줬어요~~~.
대단해요~~ 한국시장에서 수익내시는 모든 분들~~ 이런 환경에서 수익을 내는 것이 더욱 대단하다고 느껴져요~~
알았어요~~ 다시 한번 알았어요~ 한국시장에서 더더욱 바쁜 한국인은 수익내기 힘들다는 사실이요.
결심했어요~~시스템 트레딩 한번 만들어보겠어요.
아~~ 속이 후련하네요~ 산에서 야호~ 외친 기분이 드네요.
이건 뭐~~ 지극히 개인적이고 그럴 듯 안그럴 듯한 저의 생각이었습니다

코드는 github 에서 관리할 예정이며 각 chapter 코드는 독립된 예제 코드와 JbTrader 코드로 나뉠 것입니다
예제 코드는 첨부와 github repository 위치를 알려주고
각 chapter 별 JbTrader 코드는 tag 로구분할 것 입니다
 
Example git url: https://github.com/jbpark/JbTraderExample
JbTrader git url  : https://github.com/jbpark/JbTrader

 

GitHub - jbpark/JbTrader

Contribute to jbpark/JbTrader development by creating an account on GitHub.

github.com

 

Posted by 제이브레인
,