본문 바로가기
카테고리 없음

나만의 코인 ETF를 운영해보자!! (4) - 시작(w. Python)

by 일등박사 2022. 2. 14.
728x90

2021.12.16 - [Coin Market Review/자동매매알고리즘탐구] - 나만의 코인 ETF를 운영해보자!! (1)

2021.12.18 - [Coin Market Review/자동매매알고리즘탐구] - 나만의 코인 ETF를 운영해보자!! (2)

2022.02.14 - [Coin Market Review/자동매매알고리즘탐구] - 나만의 코인 ETF를 운영해보자!! (3) - 리밸런싱

 


이제는 행동으로 옮길 때가 되었습니다

이번 포스팅에서는

각 코인당 1만원씩!

190개의 코인에 투자해보겠습니다!

총 190만원!! 

1000% 상승 가즈아!!!!

 

for루프 190개로 코인 구매중!!

 

총 190만원어치 코인 구매 완료!~!

 

190개의 코인을 가지고 있는 나의 지갑!!

 

앞으로 이 코인들을 리배런싱 해보며

나만의 황썸 ETF를 운영해 보겠습니다!!

 

 

아래 Python Code를 공유합니다!!^^

from datetime import datetime
from datetime import timedelta
import pandas as pd
import numpy as np
import requests
import time
import pickle
import json
import time
import re
from bs4 import BeautifulSoup
from datetime import date
import math

import pybithumb
# 거래내역을 남기기 위해 MongoDB를 연결합니다.
from pymongo import MongoClient
my_client = MongoClient("mongodb://localhost:27017/")

# 거래내역 추출 함수
def get_trans_result_dict(trans_res):
    
        my_dict ={
                  'timestamp': datetime.now().strftime("%Y%m%d-%H%M%S"),
                  'coin_nm' :  coin_nm ,
                  'trans_type' : trans_res['data']['type'],  ## ASK 가 팔자 BID 가 사자
                  'trans_qty':   trans_res['data'][ 'contract'][0]['units'],
                  'trans_price': trans_res['data'][ 'contract'][0]['price'],
                  'trans_won':   trans_res['data'][ 'contract'][0]['total'],
                  'trans_fee':   trans_res['data'][ 'contract'][0]['fee'],
        }
        return my_dict

## pybithumb를 이용합니다.
tickers = pybithumb.get_tickers()
con_key = "{API_ID}"
sec_key = "{API_KEY}"
mybithumb = pybithumb.Bithumb(con_key, sec_key)

## Database 접속!!
mydb = my_client['BITHUMB']
mycol = mydb['ALL_ETH']

## 1만원씩 구매 고고고!!!!
buying_price_won = 10000
cnt = 1
for coin_nm in tickers:
    price = pybithumb.get_current_price(coin_nm)
    print(cnt, ' / ',coin_nm,' / PRICE : ', price,' / BUYING_CNT : ', buying_price_won / price)
    trans_req =   mybithumb.buy_market_order(coin_nm, buying_price_won / price)
    trans_res =   mybithumb.get_order_completed(trans_req)
    cnt += 1
    time.sleep(0.2)
    if trans_res['status'] =='0000':
        my_dict = get_trans_result_dict(trans_res)
        mycol.insert_one(my_dict)
    else:
        break

 

감사합니다.

728x90

댓글