본문 바로가기

전체 글106

금융 포트폴리오 최적화 (feat. 파이썬) 포트폴리오 최적화는 목표를 이루기 위해 고려하고 있는 모든 포트폴리오 세트 중에서 최상의 포트폴리오(=자산 분배)를 선택하는 프로세스입니다. 목표는 일반적으로 기대 수익과 같은 요소를 최대화하고 재무 위험과 같은 비용을 최소화합니다. 이 포스팅을 통해서 파이썬을 이용한 효율적 투자선(=efficient frontier) 및 주식 포트폴리오를 최적화하는 방법을 설명해 드릴 예정입니다. 현대 포트폴리오 이론에 의하면 효율적 투자선은 위험-수익 스펙트럼에서 '효율적인' 위치에 있는 투자 포트폴리오입니다. 보통은 효율적 투자선은, 수익의 변동성이 동일할때 해당 포트폴리오보다 높은 기대수익을 주는 포트폴리오가 없는 것을 의미합니다. Sharpe Ratio는 실제로 투자 포트폴리오에서 사용되는 개념이며, 보유한 투.. 2020. 12. 25.
자금 흐름 지표를 이용한 알고리즘 투자 전략 (feat. 파이썬) 이 글은 교육적인 목적으로 작성되었습니다. 투자 조언으로 받아 들여서는 안되며, 투자는 본인의 재량에 따라 하십시오. 이번 글에서는 자금 흐름 지표(Money Flow Index, MFI)라는 거래 전략을 설명드리고 파이썬으로 코딩하는 방법을 알려드리겠습니다. MFI는 거래량 가중 상대적 강도 지수(Relative Strength Index, RSI)라고도 하며, 자산 중에서 과매수 또는 과매도 신호를 식별하기 위해 가격 및 거래량 데이터를 이용해 계산합니다. MFI 값이 80 이상이면 과매수(매도 타이밍)로 간주되고, 20 미만이면 과매도(매수 타이밍)로 간주됩니다. 또한 MFI값이 90 또는 10인 경우를 임계값 이라고 합니다. 매도 신호: MFI > 80 매수 신호: MFI < 20 화폐 흐름 지수.. 2020. 12. 25.
OBV 거래량 지표를 이용한 알고리즘 투자 전략 (feat. 파이썬) 주의: 이 글은 교육적인 목적으로 작성되었습니다. 투자 조언으로 받아 들여서는 안되며, 투자는 본인의 재량에 따라 하십시오. 이번 글에서는 On-Balance Volume이라는 거래량 지표와 파이썬 프로그래밍을 사용한 간단한 거래 전략에 대해 설명해 드리겠습니다. 주식 시장의 모멘텀 방향을 예측하는 것은 매우 어려운 일이긴 하지만 한번 시도해 보겠습니다. 통계와 확률에 대해 잘 이해하고있는 사람도 이번에 소개드릴 내용을 이해하고 프로그래밍하는데 어려움을 겼을 수 있습니다. 알고리즘 거래는 가격, 타이밍, 그리고 거래량과 같은 변수를 이용하여 미리 프로그래밍된 자동화 거래 지침을 사용하여 주문을 실행하는 프로세스입니다. 금융 분야에서 가장 인기 있는 프로그래밍 언어 중 하나인 파이썬과 On-Balance .. 2020. 12. 25.
이동평균선과 RSI를 이용한 알고리즘 투자전략 (feat. 파이썬) 이 글은 교육적인 목적으로 작성되었습니다. 투자 조언으로 받아 들여서는 안되며, 투자는 본인의 재량에 따라 하십시오. 주식 시장의 기술 지표란? 주식 시장의 기술 지표란 주식 가격의 추이 또는 회사의 재무 데이터를 해석하여 미래의 가격 변동을 예측하는데 사용되는 일종의 참고 자료라고 할 수 있습니다. 주식 시장의 기술 지표는 투자자가 보유하고 있는 종목을 매도 할 타이밍인지? 아니면, 새로운 종목을 매수 할 타이밍인지? 등을 결정하는데 참고로 활용할 수 있습니다. 기본적인 기술 지표 단순 이동 평균(Simple Moving Average, SMA) : 단순 이동 평균선은 "이평선"이라고도 불리며, 현재 주가의 트렌드가 계속 될지 또는 하락 추세를 반전하는 계기가 될지 여부를 판단하는데 도움이 될 수있는 .. 2020. 12. 25.
고차원 데이터의 차원 축소와 시각화 방법 (PCA vs. t-SNE) 데이터분석과 관련하여 가장 중요한 것은 데이터가 어떻게 생겼는지 탐색하는 과정입니다. 이 과정에 데이터의 특정 변수의 분포를 관찰할 수도 있고, 서로 상관관계가 있는 변수들이 어떻것이 있는지 살표보는 과정이 있을 수도 있다. 하지만, 최근에는 데이터셋이 갖고 있는 변수의 숫자가 늘어남에 따라서 몇몇 특정 변수의 분포를 살펴보는 것으로 데이터를 탐색한다고 말하기가 어려운 상황입니다. 고차원의 데이터로부터 핵심적인 정보를 추려내고 시각화 한 후에야 데이터가 어떤 특징을 갖고 있는지 탐색하는게 가능합니다. 이러한 문제점을 해결해 줄 수 있는 방법으로 고차원 데이터의 차원을 줄여서 시각화 하는 기술은 매우 중요합니다. 이러한 기술로 주성분분석(Principle Component Analysis, PCA)와 t-.. 2020. 12. 25.
추천시스템: 컨텐츠 기반 필터링 컨텐츠 기반 필터링이란? 컨텐츠 기반 필터링은 사용자가 과거에 경험했던 아이템 중 비슷한 아이템을 현재 시점에서 추천하는 것입니다. Information Retrieval과 Machine Learning의 중간 지점 정도라고 생각할 수 있습니다. 즉, 컨텐츠 기반 추천시스템은 정보(아이템)를 찾는 과정과 과거 정보를 활용해서 유저의 성향을 배우는 문제라고 볼 수 있습니다. 아래 그림에서 볼 수 있듯이, 협업필터링과는 개념이 다릅니다. 가령, 웹사이트, 블로그, 뉴스를 구독하고 있는 고객에서 비슷한 컨텐츠의 게시글(item)을 찾아서 추천해 주는 모델을 생각해 보시면 됩니다. 하지만, 컨텐츠 기반 추천시스템은 계속 편향적으로 유저에게 아이템을 추천하는 경우가 많으니 모형을 개발할때 주의해야 합니다. 컨텐츠.. 2020. 12. 18.