위와 같은 System Trading 을 만들려고 하다가
일단 한 Trader가 자신의 Portfolio를 구성하는것이 가장 기반이 되어야 한다고 생각 했기 때문에
구조가 바뀌었다.
사실이 그런것이, 어떤 종목에 투자할지 , 어떤 성향의 Trade를 할 지 정하지 않은 상태에서
데이터를 모으로 매매를 한다는 것 자체가 무의미하기 때문에
Portfolio 구성이 먼저 되고,
해당 필요 종목에 대해서만 데이터수집과 DB구성, 그리고 예측이 행해져야 한다.
그렇다면 플로우차트는 아래와 같이 수정 되어야 한다.
다시 또 다시 플로우차트를 그렸다.
그래서 다시 순서를 정해본다.
모듈들이 모두 동시에 구성이 되면 좋겠지만 일단 기본적인 형태만 띄도록 구성 해가며 만들어본다.
일단 아래 처럼 구성이 되겠다..
- Python기초와 대신크레온API 연결 - 메인시스템명령부 ( Commander )
- 대신크레온API를 이용 데이터 수집과 개인 DB구축 ( Stock DB Control module, My Stock DB )
- 트레이딩을 위한 Portfolio 구성( Portfolio Module )
- Portfolio 위에서 Trading Signal Generater 만들기 ( Trading Signal Generater ML / DL 포함 구성 )
- Trading Signal 받아 실제로 Traiding 을 하기. ( System Trading Module )
- News / Sentimental / Other data 로 신뢰도 높이는 작업 ( 추가작업 )
Python을 이용해 메인명령부가
현재 사용자는 일단 '데이트레이더' 라는 가정을 해주고 시작한다.
나중에 기법이 고도화된다면 오버나잇을 시작하도록 한다.
현재는 리스크 줄이기가 가장 중요한 요소이므로,
리스크가 낮고, 적당한 변동성으로 당일 수익을 줄 종목에 진입해 그날 청산하고 나와
포지션이 없는 상태를 유지할 수 있는 '데이트레이더'를 목적으로 만들어본다.
Portfolio를 구성하면서 필요한 DB를 구축한다.
Portfolio Optimization을 위해 Machine Learning for Trading 를 참조해보자.
구체적으로 계좌에 얼마를 가지고 있고 ( 이는 가정이 가능, ex $10,000 ),
어떤 reasoning을 거쳐 어떤 종목을 어느정도의 proportion을 가져갈 것인지
Risk를 줄이고 Return을 최대한 높이는 Portfolio Optimization을 어떻게 할 것인지
먼저 만들어야 한다.
< 시작 >
OS : Windows 10
Language : Python 3.7 ( Anaconda 32bit required )
증권 API : CREON API ( 32bit )
Code share & Version control : Git repository - jonstock
Python IDE : Pycharm community ver.
Database : MariaDB image on a container on the Docker
Training & Referencing framework : Tensorflow & Keras
타겟 증권 상품 : 국내 현물 부터 시작. 후에 주식선물, 해외선물 까지 가능
AR : 일단 Anaconda 32bit 설치, IDE 확정 ( Jupyter Notebook 으로 일단 시작..? ), Creon API설치 후 동작 확인.
그리고 portfolio 구성으로 넘어가서 어떻게 종목을 선별할지 결정.. !
< Portfolio 의 구성 >
참조할 class : Machine Learning for Trading
Portfolio의 구성은 종목 발굴로 귀결되며 Risk Management 까지 포함한다.
현재 포트폴리오를 어떻게 하면 가장 최적의 결과를 ( 최고수익 X 최저리스크 ) 주는지를
알려주는 모듈. 어느종목을 몇% 보유할지 결정하게 된다.
일반적인 조건들 + ML Score로 최종 후보들을 뽑아내게 될 것이다.
기본적으로 CREON API 사용이 필요하다.
일반적인 조건들은
No etf, no etn, 코스피 100에 드는 종목 등등 으로 일단 거래가 잘 안되는 리스크 소멸, 무분별한 시세 조정 리스크 소멸 등이 있다.
실시간 조건을 통해 좋은 종목을 편입 하기도 한다.
ML Score 는 최소의 Risk로 High return을 기대하는 종목들을 간추릴 것이고
Hedge 등을 위해 종목간 Correlation이나 미국 / 중국 시장 선물, 뉴스 , SNS에서의 Sentimental 지표등을 이용할 수 있을 것이다.
실시간 referencing 을 통해 좋은 종목을 편입하기도 한다.
< Trading Signal Generater >
아마 가장 많은 연구가 필요한 부분이 될것 같다.
Portfolio 에 편입된 종목을 ( 언제 / 얼마에 / 어느만큼 / 어떻게 ) 사고 팔 것인지 신호를 내어 주는 곳.
현재 어떤 트렌드가 있고,
어떤 연구가 진행되고 있는지 살펴볼 필요가 있음.
'System Trading' 카테고리의 다른 글
5. 전체 플랫폼 재구성 (0) | 2020.11.14 |
---|---|
4. Ubuntu 18.04 LTS 에 Docker + MariaDB 설치 (0) | 2020.07.28 |
3.Reference WiKi for System Trading with ML/DL (0) | 2020.07.28 |
2.Python기초와 대신크레온API 연결 - 메인시스템명령부 ( Commander ) (0) | 2020.06.27 |
0. AI System Trading 구성 (0) | 2020.05.10 |