본문 바로가기

반응형

시스템 트레이딩

(12)
[트레이딩] 시스템 트레이딩을 위한 클라우드 서비스 추천 시스템 트레이딩을 위한 준비물 3가지 1. 데스크탑 or 서버 2. 운영체제 및 HTS 3. 인터넷 회선 시스템 트레이딩을 하기 위해서는 당연히 트레이딩툴을 돌리기 위한 PC가 필요하다. 그리고 일반적으로 국내 증권사의 경우 트레이딩툴이든, API든 윈도우 환경에서만 작동하기 때문에 윈도우 운영체제를 설치해야 한다. 다음으로 당연하게도 PC는 인터넷에 연결되어 있어야 증권사 서버와 연결되어 트레이딩이 가능하다. 그런데, 좀더 들여다보면 쉽게 결정할 수 있는 문제가 아니다. 데스크탑은 어느 사양으로 맞춰야 하고, 윈도우 운영체제는 어떤 버전을 설치해야 하는지, 그리고 인터넷은 어떤 업체를 선택해야 하는지.. 1. 데스크탑 결론적으로 이야기하자면 고빈도매매를 제외한 일반적인 시스템 트레이딩을 위한 데스크탑은..
[트레이딩] 월 복리 재투자 기준 투자 성과 시뮬레이션 분석 현재 시스템 트레이딩 전략을 테스트하고 운용하면서 목표로 삼고 있는 수익률은 월 단위로 월초 자본금의 5% 정도이다. 지금까지는 목표 수익률을 잘 달성하고 있지만, 앞으로 이보다 낮아질지 높아질지 불확실한 상황에서 향후 5년간 특정 수익률 하에서 재투자하는 경우 어느정도까지 수익이 발생할 수 있을지 시뮬레이션을 해봤다. 나 스스로도 욕심내서 시드 금액을 대책없이 늘리거나 무리하게 투자하지 않기 위해서 필요한 시뮬레이션이다. 초기 투자금 : 20,000,000원 종목 진입금액 : 1,000,000원 (자본금의 5%) 월 수익률 : 5% 5년간 재투자를 가정했을 때 월 수익금과 진입금액은은 1백만원에서 17.8백만원으로 증가하였고, 자본금은 2천만원에서 3.7억으로 증가하는 것으로 나타났다. 그렇다면 수익률..
[트레이딩] 예스트레이더와 MariaDB 연동 이전글 : bizanalytics.tistory.com/102 [시스템트레이딩] 예스트레이더로 DB 조회, 입력, 삭제하기 이전글 : [시스템 트레이딩] 예스트레이더와 파이썬 간 DB를 통한 연동 테스트 [시스템 트레이딩] 예스트레이더와 파이썬 간 DB를 통한 연동 테스트 개요 예스트레이더의 경우 예스스팟을 사용하� bizanalytics.tistory.com 이전 글에서 예스트레이더와 예스스팟을 통해 DB에 연결하는 내용을 쓴 적이 있다. 이때 사용한 DB는 SQLite인데, 실제로 트레이딩에 사용하다 보니 몇가지 문제가 발생하는 것을 확인했다. 데이터 동시 입출력시 DB에 Lock이 걸려 매매주문이 제대로 실행되지 않을 뿐더러 예스트레이더 자체가 강제 종료되는 현상이 발생한다. 아무래도 SQLite가..
[트레이딩] 상승,하락률과 시총 대비 거래량 회전율 간 상관관계 간만에 조금 여유가 생겨서 그동안 미뤄놨던 코스피, 코스닥 체결 데이터 분석을 해보았다. 하루치 데이터의 용량이 5~6gb를 넘어가는 관계로 데이터를 읽어오는 데만 해도 상당한 시간이 걸려서 분석이 다소 어려운 부분이 있었다. 어쨌든 체결 데이터를 분석하다 보니 한가지 눈에 띄는 것이 있었는데, 바로 전일대비 주가변동률과 거래금액 회전율 간의 상관관계이다. 일반적으로 회전율(Turnover Ratio)은 유통주식 총수 대비 거래량 비율을 사용하는데, 현재 수집한 데이터에는 유통주식 총수가 포함되어 있지 않아, 대신 시가총액과 누적거래금액을 기준으로 회전율을 계산하였다. 우선, 지난 금요일(2020.8.7)을 기준으로 코스피, 코스닥 상장사들의 주가변동률과 회전율을 분석해보았다. 전체적으로 회전율은 0%에..
[시스템트레이딩] 예스트레이더로 DB 조회, 입력, 삭제하기 이전글 : [시스템 트레이딩] 예스트레이더와 파이썬 간 DB를 통한 연동 테스트 [시스템 트레이딩] 예스트레이더와 파이썬 간 DB를 통한 연동 테스트 개요 예스트레이더의 경우 예스스팟을 사용하면 진입신호를 잡아서 매수하는 것은 문제가 없으나, 청산할 때 복잡한 조건을 사용하기가 어렵다. 단일 종목으로 트레이딩하는 경우 예스랭귀지�� bizanalytics.tistory.com 이전 글에 이어서, 예스트레이더와 예스스팟을 통해서 DB에 데이터를 읽고 쓰는 방법을 통해 포트폴리오를 관리하는 방법을 소개해 보려고 한다. 이번 글에서는 DB 테이블에 매수 종목을 추가하고, 조회, 삭제하는 정도만 다뤄보겠다. 1. DB 객체 연결 및 데이터 조회 DB의 테이블에서 데이터를 읽어오기 위해서는 Select 함수를 사..
[트레이딩] '20.4월~7월 약 4개월 간 시스템트레이딩 결과 올해 4월부터 하이투자증권과 예스트레이더를 사용해서 국내 거래소 상장 종목에 대한 시스템 트레이딩을 시작했다. 우선 4월은 ETF만으로 몇가지 전략을 구성해서 트레이딩을 했고, 5월부터는 개별 종목에 대한 트레이딩 전략을 추가했다. 그리고 4개월이 지난 현재 아직 개선할 점이 많긴 하지만 어느정도 만족스러운 결과를 얻은 듯 하다. 트레이딩 결과 자본금 2천만원, 매번 각 종목 진입 시에 1백만원 고정금액을 투자하는 것으로 하였고, 4개월 간 총 223번 트레이딩 해서 매번 평균 1.56%, 총 합계 348.05%의 수익을 내었다. 즉, 4개월 간 348만원 수익을 올린 것이다. 자본금 기준으로는 누적 17.4%, 월별로는 평균 4.35%의 수익률을 기록했다. 처음 시스템 트레이딩을 시작할때 자본금 기준 ..
[시스템트레이딩] 예스트레이더와 파이썬 간 DB를 통한 연동 테스트 개요 예스트레이더의 경우 예스스팟을 사용하면 진입신호를 잡아서 매수하는 것은 문제가 없으나, 청산할 때 복잡한 조건을 사용하기가 어렵다. 단일 종목으로 트레이딩하는 경우 예스랭귀지로 쉽게 구현 가능하지만, 종목 검색을 통해서 여러 종목을 매매하는 경우에는 일일이 차트를 띄우고 시스템을 적용해서 관리하기가 어렵다. 그마저도 100개로 제한이 되고, 메모리 부족으로 뻗어버리는 경우도 간혹 있는 듯 하다. 그리고 예스스팟에서는 보유중인 종목에 대해서 지표 값을 가져오는 것이 매우 어렵다. GetIndicatorData 함수를 사용하면 가져올 수 있을 것 같은데, 여러 종목에 대해서 수식으로 동적으로 확장차트를 생성하는 경우에는 이 함수가 사용이 되질 않는다. 혹시나 해서 예스스탁 홈페이지에서 검색을 해봤지만 ..
[주식] 스토캐스틱 진입 / RSI, Momentum 필터 전략 몬테카를로 시뮬레이션에 의한 임의추출 결과 진입 : 스토캐스틱(5일) Fast K값이 37을 하향돌파 필터 : RSI(10일) 75이상, 모멘텀(10일) 170 이하 수수료 및 슬리피지 : 0.5%p 재현 및 백테스팅 결과 1. 5% 손절 / 10%, -2% 트레일링 스탑 / 최대보유기간 5일 KOSDAQ 승률 0.45 손익비 1.53 평균수익률 0.0048 총수익률 3.5624 거래횟수 743 보유기간 1.4 최대이익 0.0547 최대손실 -0.0362 최대투자액 9,987,537 strategy_swing_5 2. 5% 손절 / 10%, -2% 트레일링 스탑 / 최대보유기간 10일 KOSDAQ 승률 0.46 손익비 1.51 평균수익률 0.0055 총수익률 4.0737 거래횟수 741 보유기간 2.2 ..

반응형