Python(51)
-
MFI를 통한 주식 매수/매도 시점 분석
이번에는 주식을 분석하는 지표 중 지난번 OBV(On Balance Volume) 기법에 이어 MFI(Money Flow Index)를 통한 방법을 알아보겠다. 파이썬을 이용하여 원하는 주식 데이터를 다운받고 그 데이터를 활용하여 MFI를 계산하고 그 결과를 주식 데이터의 종가(Close Price)에 반영하여 매수와 매도 시점을 판단하는 데에 도움을 주도록 하는 것이 목적이다. 지난번에 OBV 기법을 통해 주식의 매도와 매수 시점을 판단해보았는데 하나의 기법으로만 주식의 흐름을 판단할 수 없으므로 MFI를 통해서도 매수와 매도 시점을 판단해봄으로써 주식 거래에 있어서 어느 정도의 도움이 되는지 확인해 보고자 했다. OBV 기법을 통한 주식 매도와 매수 시점 분석은 아래 링크에 있다. OBV를 통한 주식..
2021.04.11 -
파이썬을 이용한 가상화폐 시세 분석
이번에는 가상화폐 시세를 다운로드하여 분석하는 내용을 알아보겠다. 가상화폐 또는 암호화폐에 대해서 개인적으로 지식이 별로 없고 가상화폐를 가지고 있거나 거래를 해본 적도 없다. 가상화폐에 대해 잘 알지도 못하고 그동안 관심도 없었으면서 이 주제를 정한 이유는 가상화폐 이외에 데이터를 분석을 위한 파이썬 코드나 시각화와 관련된 코드에 대한 공부가 되기에 정리하게 되었다. 파이썬 코드를 공부하면서 자연스럽게 가상화폐에 대해 조금 알게 되었으며 나중에 기회가 되면 좀 사볼까 하는 생각이 들기도 했다. 여기서는 몇 개의 가상화폐 시세를 다운받아 그래프로 표현하고 각 가상화폐의 변동성을 분석하며 각 화폐 간 연관성 분석, 그리고 누적 수익률을 분석해 본다. 파이썬 코드는 유튜브 “Computer Science”의..
2021.03.21 -
OBV를 통한 주식 매입/매도 시점 분석
이번에는 파이썬을 이용하여 주식 데이터를 분석하는 방법에 대해 알아보겠다. 주식 데이터를 분석하는 방법에는 여러 가지 있으나, 이번에 알아볼 것은 OBV를 이용하는 방법이고 이를 파이썬을 통해 구현해 보겠다. 이전에도 얘기했지만 파이썬 공부를 위해 여러 가지 프로젝트를 해보고 있다. 파이썬 뿐만 아니라 주식에 대한 공부도 할 겸 이 주제를 정했으며 파이썬 코드는 유튜브 동영상 강의를 참고하였다. OBV에 대해 간단히 알아보겠다. 먼저 OBV는 On Balance Volume의 약자이며 주식의 거래량은 항상 주가에 선행한다는 것을 전제로 거래량을 통해 분석을 하는 기법이다. 거래량 분석을 통해 주식이 매집단계에 있는지 분산 단계에 있는지 알아낼 수 있으며 거래량이 중심이 된 투자 판단을 내릴 수 있다. O..
2021.01.31 -
Machine Learning을 이용한 간단 주식 예측
이번에는 비교적 간단한 Machine Learning을 이용하여 주식의 종가를 예측하는 것을 알아보겠다. 파이썬 코드는 자주 보는 유튜브 동영상 강의를 참조하였다. 예측 알고리즘은 Radial Basis Function(RBF) 커널을 사용한 SVM을 통하여 구현한다. 컴퓨터공학이나, 소프트웨어 전공이 아니라 Machine Learning에 대한 자세한 내용은 모르지만, 간단히 설명하면 다음과 같다. 서포트 백터 머신(SVM)은 딥러닝은 아니지만 이에 못지 않은 성능을 내는 Machine Learning 알고리즘이며 가볍다는 장점이 있어 분류(Classification)나 회귀(Regression)를 위해 많이 사용된다고 한다. 먼저 기본이 되는 선형 SVM이 있으며 이것은 데이터를 선형으로 분리하는 최..
2021.01.03 -
Python Machine Learning을 이용한 Lotto 번호 생성 프로그램 - (2)(UPDATE )
1부에서 Machine Learning을 통해 다음 차수의 1등 Lotto 번호 총 합 예측을 하였다.2부에서는 예측된 합에서 6개의 Lotto 번호 조합을 찾아보도록 하겠다. 1부 처음에 얘기했듯이 Lotto 번호의 조합은 과거에 나온 번호들 중에서 가장 많이 나온 번호 순대로 조합을 하여 찾는 방법과 거꾸로 가장 적게 나온 번호 순대로 조합을 찾는 방법으로 한다.소프트웨어나 컴퓨터 공학을 전공하지 않은 사람으로서 Python을 혼자 공부하면서 그동안은 대부분 다른 사람이 만들어 놓은 코드를 그대로 해보거나 약간의 수정만을 했었다.그러나 정해진 조건에서 특정 합을 이루는 6개의 숫자 조합을 찾는 부분은 직접 코드를 짜보는 데에 의미를 두었고 남들한테는 쉬울지 몰라도 비전공자로서 이러한 단순한 알고리즘을..
2021.01.03 -
Python Machine Learning을 이용한 Lotto 번호 생성 프로그램 - (1)
이번에 파이썬을 이용하여 Lotto 번호 6자리를 뽑아내는 프로그램을 만들어 보았다. 많은 사람들이 Lotto 번호를 만드는 프로그램을 만들었으며 대부분은 random() 함수를 이용하여 난수를 생성한다.그러나 여기서는 Machine Learning 중 XGBoost 알고리즘을 이용하고 그동안의 Lotto 번호 통계를 바탕으로 6개의 숫자를 뽑는 프로그램을 구현해 보았다. Lotto 는 45개의 숫자 중 순서에 상관없이 6개의 숫자가 모두 맞아야 하기 때문에 그 확률은 1/8,145,060 이 된다.또한, 이전 차수까지 많이 나온 숫자가 앞으로도 많이 나온다거나 아니면 앞으로는 적게 나온다거나 하지 않으므로 Lotto 1등 번호를 예측하기란 사실상 불가하다고 볼 수 있다. (어떻게 보면 다른 사람들이 많..
2020.12.13