반응형

전체 글 78

TQQQ, TMF 수익곡선 모멘텀 백테스트

그동안 6편의 글을 통해 고정 비중 전략부터 상대모멘텀, 절대 모멘텀, 평균모멘텀 순서로 백테스트를 수행하고 누적 수익을 확인해 보았다. 오늘은 수익곡선 모멘텀으로 백테스트한 결과를 올려보겠다. 먼저 수익곡선 모멘텀이 무엇을 말하는 것인지 알아보기 전에 모멘텀이라는 용어부터 확인해보면 용어 자체는 물리학 용어로 물체가 한 방향으로 지속적으로 변동하려는 경향을 의미한다. 이러한 개념이 증권시장에도 적용되어 가격의 추세를 의미하는 표현으로 사용되는 것이다. 그리고 상대모멘텀, 절대 모멘텀, 평균모멘텀과 같은 것들이 이 추세를 판단하는 여러 기준들이다. 마찬가지로 수익곡선 모멘텀도 추세를 판단하는 방법중의 하나인 것이다. 우리는 지난 6편의 백테스트들에서 각각의 방식에 따른 누적수익률 곡선들을 보아왔다. 수익..

자산배분 2023.01.18

구글 스프레드 시트에서 실시간 가상화폐 현재가격 가져오기

나는 2023년 올해부터 구글 스프레드 시트를 활용하여 나의 자산관리를 실시간에 가깝게 관리하고 있다. 한국 및 미국 주식은 googlefinance() 함수를 사용하고 펀드 기준가격 및 가상화페 현재가격은 importxml() 함수를 이용하고 있다. 이와 관련된 이전의 글들은 본문 하단의 링크를 참고하면 된다. 보름 정도 구글 스프레드 시트를 이용하여 관리하다 보니 몇가지 문제점들이 발생하였다. 첫번째는 googlefinance() 함수가 오류를 반환하는 경우가 있고 이를 해결하는 방법을 아래와 같이 포스팅한 적이 있다. googlefinance() 함수의 #N/A 오류 시 importxml()로 웹 크롤링 하기 자산관리를 위해 구글 스프레드 시트를 사용하면서 (20분 지연된)실시간 데이터의 반영이 가..

IT,참고자료 2023.01.16

TQQQ, TMF 평균 모멘텀 스코어 백테스트

TQQQ, TMF 백테스트 기록을 올리기 시작한 이후 6번째 글이다. 앞으로 2번 정도 더 올릴 예정이다. 번외편으로 1~2번 더 올라갈 수도 있다. 오늘은 평균 모멘텀 스코어 방식에 따른 백테스트 결과를 공유한다. 상대 모멘텀이나 절대 모멘텀 방식이 모멘텀을 산출하기 위한 기간을 특정하여 백테스트를 수행하는 반면에 평균 모멘텀 스코어 방식은 1~12개월의 모든 모멘텀의 평균으로 자산의 비중을 결정한다. 보다 더 자세한 내용은 아래 글을 참고하자. 평균모멘텀 스코어 전략 모멘텀 전략은 크게 두가지가 있다. 상대모멘텀 전략과 절대모멘텀 전략이다. 모멘텀 전략은 최근에 오르는 자산이 계속해서 오르는 경향성에 투자하는 전략이다. 가격에 모든 정보가 적시에 myportfolio.tistory.com 간단히 백테..

자산배분 2023.01.12

TQQQ, TMF 듀얼 모멘텀 백테스트

TQQQ, TMF 종목으로 백테스트 결과를 공유하기 시작한 지 벌써 한달이 되었다. 진작에 다 올렸어야 하는데 게으르다 보니 많이 늦어졌다. 오늘부터 마음을 다잡고 다시 부지런히 올려보겠다. 지난글에서 1~12개월 절대 모멘텀을 살펴보았고 이번글에서는 평균모멘텀 방식의 결과를 공유하려 했으나 순서를 바꾸어서 이번글에서는 듀얼 모멘텀을 테스트해 보려한다. 먼저 간단하게 듀얼 모멘텀을 알아보면 널리 잘 알려진 듀얼 모멘텀 전략들이 있다. 원조 격이라고 할 수 있는 게리 안토나치의 오리지널 듀얼 모맨텀 전략이 대표적이고 이를 변형한 가속 듀얼 모멘텀 전략도 있으며 조금씩 변형된 많은 전략들이 존재하지만 듀얼 모멘텀은 기본적으로 투자자산, 비교자산, 안전자산의 3가지의 자산군으로 구성되고 기본적인 동작 원리는 ..

자산배분 2023.01.09

googlefinance() 함수의 #N/A 오류 시 importxml()로 웹 크롤링 하기

자산관리를 위해 구글 스프레드 시트를 사용하면서 (20분 지연된)실시간 데이터의 반영이 가능해졌다. 하지만 실제 보름 정도 사용해보니 googlefinance() 함수에서 의외로 #N/A를 반환하는 경우가 종종 발생한다. 정확한 이유는 알 수가 없다. 구글링 해봐도 비슷한 이슈들이 있는 듯 하다. 그래서 내가 사용하고 있는 방법은 googlefinance() 함수에서 #N/A를 반환할 때 차선책으로 다른 사이트에서 importxml() 함수를 사용해서 웹 크롤링 해오는 방법을 사용하고 있다. googlefinance() 에서 #N/A를 반환하는 경우에 국내 주식의 현재가 정보는 서울경제 사이트에서 가져온다. 서울경제 사이트는 특정 종목의 현재가 정보를 https://www.sedaily.com/Stock..

IT,참고자료 2023.01.05

2022년 한 해를 돌아보며 결산

2022년은 나에게 새로운 시작의 한해로 기억될 것이다. 만 50세로서 본격적으로 은퇴를 생각하기 시작했고 아이러니 하게도 은퇴를 생각할 나이에 본격적인 주식투자를 시작하기도 했으며 30대 중반에 4~5년간 왕성하게? 활동했던 블로그를 15년만에 다시 시작하기도 했다. 주식투자를 시작하며 한 해 동안에 어마어마하게 다양하고 많은 책을 읽기도 했으며.. 아마 그 이전 최근 10년 동안에 읽은 책보다도 훨씬 많을 것 같다. 결과적으로 2022년 주식투자 실적은 당연히 좋지않다. 시장 자체가 하락장에 진입한 시기였기에 시장을 이길 수는 없었다. 하지만 희망은 굳건하다. 2023년에는 바닥을 찍을 것으로 믿는다. 그동안에는 지치지 않고 인내하며 계속 주식을 적립해나갈 것이다. 다행이도 앞으로 최소 5년에서 최대..

결산 2023.01.04

파이썬에서 구글 스프레드 시트 연동 준비

나는 2022년 한 해 동안 아이패드의 기본앱인 넘버스로 자산관리를 하고 있다가 2022년이 지나기 직전에 구글 스프레드 시트를 기반으로 Appsheet 를 통해 모바일 앱으로 만들었다. 그리고 2023년 부터는 내가 직접 제작한 자산관리 앱을 사용하여 자산관리를 시작했다. 2022.12.29 - [IT,참고자료] - 앱시트(Appsheet)를 활용한 나만의 자산관리 어플 2022.12.23 - [IT,참고자료] - 구글 스프레드 시트를 활용한 나만의 자산관리 그리고 구글 스프레드 시트의 웹 게시 기능을 이용해서 나의 자산의 포트폴리오 현황과 포트폴리오 수익률을 실시간으로 공개되도록 공지사항에 게시하였다. 2022.12.21 - [분류 전체보기] - 실시간 마이 포트폴리오 2023.01.02 - [분류 ..

IT,참고자료 2023.01.03

Window환경에서 작업 스케줄러 활용한 작업 예약

실시간 자산관리를 하기 위해 구글 스프레드 시트를 활용하여 주식, 펀드 그리고 가상자산의 실시간 시세를 획득할 수가 있었지만 한가지 해결할 수 없는 점이 있었다. 바로 젠포트를 통해 자동매매를 실행하고 있는 계좌의 평가금과 잔고정보는 자동으로 얻어올 수가 없다는 점이다. 내가 선택한 방법은 키움OpenAPI를 이용해서 해당 정보를 획득하고 주기적으로 구글 스프레드 시트에 갱신하는 방법이였다. 하지만 막상 개발해서 테스트해보니 이것도 문제가 생겼다. 바로 키움OpenAPI는 동시접속이 안된다는 것이다. 즉, 젠포트 자동매매시스템에서 키움OpenAPI를 사용하고 있기 때문에 내가 작성한 프로그램으로 키움OpenAPI를 통해 로그인하면 젠포트 자동매매의 접속이 끊긴다는 점이다. 결국 하루에 한번만 접속해서 평..

IT,참고자료 2023.01.02

앱시트(Appsheet)를 활용한 나만의 자산관리 어플

며칠전에 구글 스프레드 시트를 활용한 자산관리에 관한 글을 올린 적이 있다. 오늘은 조금 더 나아가서 나만의 자산관리 앱을 소개해본다. Appsheet는 구글 스프레드시트나 엑셀 그리고 그밖의 다양한 데이터 소스와 연동하여 코딩 없이 모바일앱을 만들 수 있는 개발도구 이다. 구글 스프레드 시트를 활용한 나만의 자산관리 나는 최근 일년 동안은 나의 자산관리를 주로 아이패드의 넘버스 어플을 활용해서 관리해왔다. 그 이전에는 엑셀을 이용해서 20년이 넘게 기록해오고 있었다. 그러다 최근 구글 스프레드 시트에 myportfolio.tistory.com 20여년이 넘게 개발자로 살아오며 C, C++, C#, Java, ActiveX, JSP, ASP, 오라클, MSSQL, 메모리DB, 초고속 미들웨어, 웹서버, ..

IT,참고자료 2022.12.29

TQQQ, TMF 절대 모멘텀 백테스트(2)

지난글에서는 TQQQ 한 종목만으로 1~12개월 절대 모멘텀을 기준으로 백테스트를 수행하여 보았다. 결과는 만족스럽지 못했다. 이번 글에서는 TQQQ와 TMF 2개의 종목으로 1~12개월 절대 모멘텀 기준의 백테스트 결과를 공유하고 절대 모멘텀 기준을 만족하는 종목을 선택하기 위해 bt패키지의 Algo클래스를 상속해서 재정의한 SelectAbsoluteMomentum 클래스를 설명한다. 먼저 전략을 생성하고 해당 전략으로 백테스트 객체를 생성하는 코드를 살펴보자. # 절대모멘텀 백테스트 def AbsoluteMomentum_BT(assets, rank, months, start_day, run_on_end_of_period=False, lag=1, name='Absolute Momentum'): #전략 ..

자산배분 2022.12.26
반응형