전체 글
-
AWS Lightsail에서 가상화폐 자동매매 봇 돌리기 - 초보자도 이해 가능기타/가상화폐 2021. 9. 19. 16:52
우선 이 글은 초보자를 위해 쓰여졌다. 내가 초보자고, 이거 하나 알아내는 데도 정말 많은 노력이 들었기 때문에 나랑 비슷한 수준인 사람들이 구글링 좀 덜하고 자동매매 돌릴 수 있었으면 해서 썼다. 굳이 서버를 이용하는 이유 컴퓨터를 항상 켜둘 수는 없고, 항상 켜두더라도 그게 24시간 제대로 작동할 거라는 보장이 없기 때문이다. 하필이며 내가 자고 있을 때 인터넷 연결 문제로 포지션 진입은 했는데 청산이 되지 않았다고 해보자. 오버나잇한 포지션에서 얼마나 무시무시한 일이 일어날 수 있을지는 가상화폐에 투자해본 사람은 모두 알 것이다. 한달에 한번 정도는 시장이 발작을 일으키며 미친듯이 떨어지고, 어제까지만 해도 수익에 기뻐하다가도 하룻밤 사이에 모든 수익이 다 날아가는 게 가상화폐 시장이다. 그래서 웹..
-
FTX 거래소 API 이용하기 - 펀딩피 불러오기기타/가상화폐 2021. 9. 13. 10:21
잘 알려져 있지도 않고, 거래량이 많은 것도 아니며, 수수료가 싼 것도 아닌 FTX를 굳이 이용하려는 사람은 대부분 일반적인 트레이딩은 잘 하지 않을 것이다. 펀딩피 받아먹는 걸 좋아하는 사람이 많을 거라고 본다. 다른 거래소와 다르게 매시간 펀딩피를 지급하기 때문이다. 나도 그거 외의 경우엔 거의 안 쓴다. FTX의 펀딩피 데이터를 받는 경로는 세 가지가 있다. 1. 홈페이지에서 csv 파일로 받기 2. CCXT 라이브러리 이용하기 3. api 이용하기 그런데 홈페이지에서 다운로드하는 건 번거롭고, ccxt에서는 무슨 방법을 써도 펀딩피 데이터가 안 불러와진다. 펀딩피를 불러오는 함수는 있지만 거래소 자체가 따로 지원을 안 하는 것 같다. 그래서 파이썬으로 FTX의 api를 이용해서 펀딩피 데이터를 가..
-
파이썬 Pandas 연습문제 공유기타 2021. 9. 7. 15:46
코딩 공부에는 대체로 자기가 만들고 싶은 걸 만드는 게 가장 효과적이라고 한다. 그런데 기본이 부족하면 자주 막히게돼서 재미가 점점 떨어지고, 결국 그만두게 된다. 그래서 무언가를 만드는 데 도전하더라도 기본적인 부분은 손이 기억할 정도로 연습하는 게 좋은 것 같다. 내가 Pandas를 처음 접하고 한창 연습했을 때, 오랜만에 쓰게되어 조금 어색할 때면 항상 풀었던 문제를 공유한다 https://github.com/guipsamora/pandas_exercises GitHub - guipsamora/pandas_exercises: Practice your pandas skills! Practice your pandas skills! Contribute to guipsamora/pandas_exercise..
-
파이썬으로 바이낸스에서 데이터 크롤링하기기타/가상화폐 2021. 7. 11. 10:57
CCXT(CryptoCurrency eXchange Trading) 라이브러리를 이용하면 코인거래소에서 가격을 불러올 수 있다. 바이낸스뿐만 아니라 FTX나 고팍스, 빗썸 등도 지원하는데 코드 한 줄 바꾸는 것만으로 서로다른 거래소의 가격을 불러올 수 있어서 매우 편리한 방법이다. 나는 주로 USDT시장의 가격을 불러와서 백테스팅하고, 봇을 만들고 이 글을 보고있을 사람들도 대부분 그게 목적일테니 1. 바이낸스에 상장된 티커들을 불러와서 2. 그 중 USDT시장 데이터만 뽑아내서 3. 가격을 조회하는 방법 에 대해 알아보자 설치와 기본 준비 !pip install ccxt #ccxt 라이브러리 설치 import ccxt #라이브러리 임포트 exchange = ccxt.binance() #바이낸스 객체 생..
-
백준 파이썬 1850번 - 최대공약수기타/알고리즘 2021. 6. 27. 23:30
1850번: 최대공약수 모든 자리가 1로만 이루어져있는 두 자연수 A와 B가 주어진다. 이때, A와 B의 최대 공약수를 구하는 프로그램을 작성하시오. 예를 들어, A가 111이고, B가 1111인 경우에 A와 B의 최대공약수는 1이고, A www.acmicpc.net 1로만 이루어져있는 수들을 차례로 소인수분해하거나, 최대공약수를 구하다보면 규칙성이 보이기 시작한다 두 자연수 A와 B의 1의 개수가 a, b개라면 A,B의 최대공약수는 a,b의 최대공약수와 같다 즉, gcd(A,B) = gcd(a,b)인 것이다 그러므로 gcd(a,b)=k라면 1이 k개로 구성된 수가 정답이 된다 def gcd(a,b): if b == 0: return a aa = a%b return gcd(b,aa) a, b = map(..
-
백준 파이썬 9613번 - GCD 합기타/알고리즘 2021. 6. 27. 14:16
9613번: GCD 합 첫째 줄에 테스트 케이스의 개수 t (1 ≤ t ≤ 100)이 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있다. 각 테스트 케이스는 수의 개수 n (1 < n ≤ 100)가 주어지고, 다음에는 n개의 수가 주어진 www.acmicpc.net 포인터 두 개를 이용하여 모든 경우의 수에 대해 GCD를 구하여 answer에 더해나가는 식으로 구하였다 숫자 리스트의 첫 번째 요소가 수의 개수를 나타내므로, 포인터의 인덱스를 1부터 시작하도록 설정했다 def gcd(a,b): if b == 0: return a aa = a%b return gcd(b,aa) t = int(input()) for _ in range(t): a = list(map(int,input().split())) a..
-
백준 파이썬 9417번 - 최대GCD기타/알고리즘 2021. 6. 27. 13:57
9417번: 최대 GCD 첫째 줄에 테스트 케이스의 개수 N (1 < N < 100)이 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 양의 정수 M (1 < M < 100)개가 주어진다. 모든 수는 -231보다 크거나 같고, 231 -1보다 작거나 www.acmicpc.net 정수가 여러개 주어졌을 때 모든 두 수의 쌍 중에서 가장 큰 최대공약수를 찾아야 한다 포인터 두 개를 이용하여 모든 두 쌍의 GCD를 구하는 방법을 이용했다 길이가 n인 리스트가 존재한다면 for i in range(n-1): for j in range(i+1,n): 이렇게 처음 반복문은 가장 처음부터 마지막 두 번째 숫자까지 (0 to n-1) 두 번째 반복문은 처음 포인터의 다음 숫자부터 마지막 숫자까지 (i+1 to..
-
가상화폐 알고리즘 투자, 헤이비트 2달 투자후기기타/가상화폐 2021. 6. 6. 10:06
헤이비트는 알고리즘을 이용하여 가상화폐를 대신 투자해주는 서비스다 예전에는 변동성 돌파 전략과 FF전략 두 가지를 운용했고, 전자는 무료로 제공했는데 'FF전략 대비 변동성 돌파 전략이 모든 면에서 뒤지기 때문에' 현재 폐지되었고 FF전략만 제공하고 있다 FF전략의 성과는 꽤 좋다 약 7개월간 138%의 수익을 거뒀는데, 수익 자체는 가상화폐시장의 변동성을 생각해보면 별 것 아닌 것 같기도 하다. 오르는 걸 잘 잡으면 2~3일만에도 얻을 수 있는 수익이고, 가상화폐에 몇개월동안 투자해본 사람이면 한번쯤은 경험해봤을 것이다 주목해야할 건 최대 낙폭이다. 하루에도 10%, 20%씩 떨어지는 시장에서 최대 낙폭(전고점에서 떨어진 정도)이 10%밖에 되지 않는다. 100만원이 하루아침에 200만원이 됐다가 며칠..