Coding Is My Life

코딩은 인생

728x90

전체 글 108

[기타][앞으로 포스팅 계획]

포스팅의 전체적인 주제 이전글인 고점 저점 알고리즘을 이용한 추세 예측에 대한 매매 전략과 전략에서의 문제점의 대해서 포스팅을 할 계획이다. 이전에 분석 했던 내용은 바이낸스 BTC/USDT의 1d 데이터만을 가지고 단순히 최근 몇개의 데이터만을 테스트해보았지만 최근 1m 데이터를 가지고 여러방면으로 분석하고 교차검증한 결과 유의미한 모델이 나와서 이 모델에 대한 전략을 생성해서 자동매매를 해보았다. 여러가지 문제점이 있었지만 나름 안정적인 수익률이 나왔고 이 모델을 더 발전할 수 있는 방향과 보안점을 기점으로 포스팅하려고 한다. 포스팅 주제 1. 저점/고점 주변 몇%의 데이터를 저점/고점과 같이 라벨링과 하락추세와 상승추세 라벨링의 결합 기존의 추세 라벨링에서는 예측 클래스가 상승추세, 하락추세 두가지..

카테고리 없음 2022.11.05

[ML/AI][Bitcoin Trend Prediction with ML/머신러닝 활용한 비트코인 추세예측]

서론 기존의 주가예측은 가격 데이터 및 거시경제 데이터를 기반으로 다음날의 종가를 RNN, LSTM 같은 순환 신경망 모델로 예측하였다. 여러 논문의 예측 결과 그래프를 보면 거짓말같이 실제 주가와 거의 비슷하게 예측되는 결과물이 많이 있다. 하지만 자세히 보면 예측한 그래프가 원래 그래프 보다 1일 앞에 있는것과 비슷하다는 것을 알 수 있다. 이러한 이유는 모델이 학습을 할때 loss값이 현재 값- 전날 값이 가장 최적의 loss값이라고 판단했기 때문에 이러한 결과가 나오는 것이다. 그리고 다음날의 종가는 거의 랜덤한 값의 가깝기 때문에 정확하게 예측하는 것은 한계가 있다. 이러한 한계가 있기 때문에 주가 추세 예측에 대한 연구를 하게 되었다. 예측 모델로는 classification 모델인 Linea..

[ML/AI][Bitcoin Data Analysis And RNN Model Prediction]

거래소로부터 데이터 불러오기 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 import ccxt,pandas as pd import datetime def to_timestemp(dt): dt = datetime.datetime.timestamp(dt) dt = int(dt) * 1000 return dt binance = ccxt.binance() col = ['datetime', 'open', 'high', 'low', 'close', 'volume'] format = '%Y-%m-%d %H:%M:%S' dt = datetime.datetime.strptime('2018-01-01 00:00:00',format) dt = to_timestemp(dt) btc_ohlcv = binan..

[ML/AI][SimpleRNN with Keras]

RNN RNN은 은닉층의 노드에서 활성화 함수를 통해 나온 결과값을 출력층 방향으로도 보내면서, 다시 은닉층 노드의 다음 계산의 입력으로 보내는 특징을 갖고있습니다. x는 입력층의 입력 벡터, y는 출력층의 출력 벡터입니다. RNN에서 은닉층에서 활성화 함수를 통해 결과를 내보내는 역할을 하는 노드를 셀(Cell)이라고 하고 이전의 값을 기억하는 메모리 역할을 하므로 메모리 셀이라고 표현합니다. 현재 시점 변수를 t로 표현 t 시점의 메모리 셀은 t-1 시점의 메모리 셀이 보낸 은닉 상태값을 t 시점의 은닉 상태 계산을 위한 입력값으로 사용 뉴런 단위로 시각화 Keras SimpleRNN 위에서 설명했듯이 이전 timestep의 출력이 다음 timestep으로 완전히 연결된 모델을 keras에서는 sim..

[Django Project][주식 종목 추천 프로그램 웹에서 구현]

이번에는 저번에 만든 community사이트에 주식 종목을 추천해주는 프로그램을 구현해 보도록하겠다. 주식 추천 프로그램은 내 블로그에서 한번 소개했었던 envelope를 이용한 주식매매 프로그램을 사용하였다. https://kpumangyou.tistory.com/93?category=895793 [파이썬][보조지표 envelope를 이용한 코스피 200종목 분석] Envelope란? n일의 이동평균선에 +m%,-m%를 뜻한다. 분석 내용 보통 20일 이동평균선을 사용하고 m은 트레이더의 성향에 따라 많이 다르나 가장 보편적으로 사용되는 10으로 두고 분석해보겠다. 하향 e kpumangyou.tistory.com 일단 view코드를 보면 다음과 같다. import pandas as pd import ..

파이썬 2021.12.24
728x90