develop custom_top_html:no
default debug random = 3 / type = READ / detected = READ

안녕하세요. 코딩도 코인도 모르는 코린이입니다.

이번에 취미삼아 파이썬으로 코인 자동매매 봇을 만들어보려고 하는데요..조언이 필요합니다.

전체적인 구상은 이렇습니다.

 

1. 해당 항목을 일정 현재가 기준으로 일정 퍼센트 단위로 예약 매수. (아래로 매수 걸어놓기)

- 총 10개를 매수하겠다고 하면 -1%에 1개, -2%되면 1개 ... 이런식으로 주문

 

2. 매수가 되면 윗 단계에 예약매도

- -1%때 샀으면 0%때 매도하도록 매도주문 걸기.

 

3. 판매가 되면 바로 아래 단계에 예약매수

- 2번과 동일한 방식

 

여기서.. 1번은 여차저차 구현했는데 2,3번은 어떻게 해야할지 모르겠습니다. ㅠㅠ

 

질문1. 매수/매도가 된 순간을 어떻게 파악할지(주문마다 주소가 있던데 이 주소는 영원한건가요? 예를들어 297원에 주문을 걸어놨고 팔린 이후에도 주소가 같은건가요? 찾아보니 주문 확인 코드가 있더라구요..!

질문2. 매수/매도 된 순간 예약을 걸어야하는데 현재가 기준 -1%,-2%,-3% 이런 가격대에 주소를 정해줄 수 있는지..

   ex) 예를들어 300원이 현재가인데 297원의 주소는 m1, 294원의 주소는 m2, 뭐 이런식으로..?

        처음 프로그램 시작하면 m1~m10까지 예약매수를 걸어놓고 m1이 사지면 m0의 가격에 예약매도 걸어라. 뭐 이런식으로 하고싶습니다.

질문3. 처음 실행시 매수 10개짜리를 쭈르륵 넣으면 도중에 에러가 납니다. 그래서 딜레이를 0.5초정도 줬더니 주문이 잘 되는데 적절한 주문시간이 있을까요?

 

누군가 알려주셨으면 좋겠습니다 ㅠㅠ

 

지금까지 한 코드는 아래와 같습니다.

 

 

 

import pyupbit
import time

f = open("#######.txt")
lines = f.readlines()
access = lines[0].strip()   # access key "\n"
secret = lines[1].strip()   # secret key '\n'
f.close()

upbit = pyupbit.Upbit(access, secret)   # class instance, object
balance = upbit.get_balance("KRW")

print(balance)

price_current = pyupbit.get_current_price("KRW-ETH") # 현재가격
max_price = 3000000 # 최대 금액
min_price = 1000000 # 최소 금액
investment = 60000 # 투입금
num_crossover = 10 # 교차수
price_CrossOrder = round(investment/num_crossover,0) # 교차당 투입금
profit_rate = 0.002
print("교차당 주문가격은", price_CrossOrder, "원")

funds_required = 5001*num_crossover

    

price_init = price_current

if (price_CrossOrder < 5001 ):
    print("현재 교차당 투입금=", price_CrossOrder,"원")
    print("총 투입금은", funds_required ,"원 이상이어야 합니다")
else:
    print("현재 교차당 투입금=", price_CrossOrder,"원")

    num_order = round(price_CrossOrder/price_current,3) # 주문 개수
    ret = upbit.buy_limit_order("KRW-ETH", price_current, num_order)
    print(price_current,"가격에 ", num_order, "개 매수 예약!!!")
    
    for n in list(range(0, num_crossover)):
            price_order = round(price_init-price_current*profit_rate,-3) # 주문가격
            num_order = round(price_CrossOrder/price_order,3) # 주문 개수
            ret = upbit.buy_limit_order("KRW-ETH", price_order, num_order)
            print(price_order,"가격에 ", num_order, "개 매수 예약")
            price_init = price_order # 다음 주문가격
            time.sleep(0.5)
            

901
댓글 9
  • ?
    일단 위험한 코딩을 하시고 계신듯 합니다........
    코딩을 설계하시기 전에. 매수/매도에 코인가격이 올라갈때(가정을 하면요)...는
    매수를 한다하더라고 가격이 올라간다고 생각할 수 있겠지요...
    하지만 코인가격이 떨어질때 대응이 될지요???
    알고리즘에 대한 수학적이 고민이 필요해 보일듯 합니다.
    쉽게는 고등학교 수학시간에 배운 순서도라는 것이 있습니다.
    알고리즘은 이 순서도를 업그레이한 버전이 라고 생각하시면 됩니다.
    코딩을 설계를 할때 기본적으로 메인이 되는 순서도가 시작이 되지만
    예외적인 변수가 많기 때문에 이를 고려한 예외처리를 위한 알고리즘(순서도)가 필요합니다.
    요즘 알고리즘은 머신러닝...딥러닝... 이딴것들이 있는데....
    순서도를 로직이라고~~~ 들 합니다.
    파이썬정도 하시는 거보니... if else문! switch문! while문! 정도의 코딩문법은 이해하고 계신듯 합니다.

    화이팅입니당^^!!
  • ?
    @에라2
    돈버는 알고리즘은 사실 잘 모르겠습니다..ㅎㅎㅎㅎㅎㅎ 그냥 생각대로 돌아가게만 만들어보고싶어요 우선은!!
    퇴근하고 어떻게하면 벌릴까 고민도 해보는데.. 모르겠더라구요 ㅠㅠㅠㅠㅠㅠㅠㅠ
  • ?
    @소다파이
    단순로직이면.... 일단 코딩시작단계이시니까.
    하나씩하나씩 하세요. 일단 코인 1개 매수하는 코딩파일 저장하시고 다음에
    2개 매수하는 코딩 만드시고 파일명 버전 변경해서 ex) ver01.py -> ver02.py
    3개 정도가 되면 감이 잡히실듯 합니다.

    일단 매수하는 프로그램 코딩하시고 그다음 매도하는 프로그램도 만들어 보세요.
    그다음 매수/매도 프로그램을 다시 만들어야 하는데....

    이것도 반복 하셔야 할듯 하네요.

    근데.. 이건 사용자가 임의로 작성한 코드이고. 실제 트레이딩 데이터가 무엇이 나오는지 코드분석을 하실수 있어야 합니다. 물론, 어떤 데이터가 나올지 예측이 가능한것도 있겠지만, 모르는 것이 있으면 그것두 개발코드에 반영할 지 않할지 생각하셔야 하고요.

    아주 기초적인 수준의 답변이었습니다. ㅎ.
    암튼 화이팅이요.
  • ?
    질문1. 주문번호는 유니크한게 맞을 겁니다. 주기적으로 주문번호로 거래내역을 조회해서 매수/매도가 모두 완료 되었는지 확인해볼 수 있을꺼 같네요.

    질문2. 당연히 가능한거 아닐까요? 다만 1%, 2% 에 해당하는 금액을 계산해서 넘여야 할 것 같습니다.
    100만원에 0.123코인을 샀다면, 0.123코인을 101만원에 판매하겠다고 주문을 넣으면 될꺼 같네요.
    ex 부분도 조금만 응용해서 생각해보시면 될꺼 같네요.

    질문3. 원래 외부 api 쓸때는 적당히 딜레이 줘 가면서 쓰는겁니다. 혼자쓰는것도 아닌데, 서버 입장도 생각해 줘야죠.
    어디나 그래요.
    그냥 넉넉히 2~3초 줘가면서 하세요. 10개면 30초인데, 그정도에 막 수익이 손해로 바뀌거나 그렇지 않습니다.
  • ?
    @비폭력무저항
    0.5초로 하니 적당하더라구요ㅎㅎ 매수 후 매도는 다시 1.01을 곱해줘야겠네요 감사합니다 ㅎㅎ
  • ?
    주문시간 간격은 업비트에서 제한하고 있는 사항이므로 개발자문서를 확인하셔서 간격 설정하시면 됩니다.
  • @Tobit
    Tobit님 축하합니다. 20 보너스 캐시에 당첨되셨습니다.!!
  • ?
    저도 트레이딩 봇을 만들어 쓰고있으나 위험성이 매우 높습니다.
    수익을 조금이라도 안전하게 보고자 한다면 캔들스틱 api 호출해서 수신하는 데이터에 대해서도 분석 고민하시는게 좋아요.

    실제로 저도 쿠폰 사용을 하고 장 상태가 좋을때는 하루종일 3~4퍼 먹을떄도 있지만 잃을때는 무한정으로 잃을 때도 있습니다.
    그래서 손실금 얼마 이하까지 내려간 경우 트레이딩을 정해진 시간까지 멈추는데 이 마저도 실제 안전을 위해 작성한 코드임에도 불구하고 손실 이후 오는 불장에 대해 대응이 안되 손실이 이어지는 경우도 있습니다.

    수익 로직은 좀더 본인이 생각하는 수익실현방법을 분석하셔서 작성하시는게 좋을것 같네요
  • ?
    굉장히 위험함 쫌더 언어 숙지하시고 하시는게 좋을거같습니더
default debug random = 0 / type = READ / detected = READ

List of Articles
번호 분류 제목 추천 수 조회 수 글쓴이 날짜
80 질문 헤쉬에 관해 문의드립니다       오전 9시되면 24시간 채굴량은 알수 있는데요. 24시간 헤쉬량은 알수 없는건가요? 평균헤쉬는 말구요.하루 총헤쉬. 아시는분 계시면 부탁드립니다.                 1 0 7460
천리코
2021.02.13
79 개발 채린이의 채굴장 관리 프로그램(자동재부팅, 모니터링, 기타 셋팅 설정) 안녕하세요! 취미로 채굴 및 코딩을 하고있는 직장인겸 투자자 그랑굴러입니다.   채린이 입장에서 직접 채굴해보고, 필요한것이 뭘까 생각하며 만들어 보았습니다. 소개글: https://www.ddengle... 55 file 14 14599
그랑굴러
2021.02.14
78 개발 코인 지갑 개발           안녕하세요 형님들 지금 코인/주식 커뮤니티를 만들고있습니다. 이제 회원들이 원하는 콘텐츠를 사이트내에 넣어드리려구하는데 이제 후원게시판? 을만들어서 코인지갑을 사이트내부에... 4 1 7635
련둥신
2021.02.15
77 개발 트레이딩뷰에서 liquidation 정보 관련   안녕하세요.  현재 코인관련한 사이트를 만들고 있습니다. 기획을 진행하다가 보니.. 비트맥스나 바이낸스의 트레이딩뷰를 통해 liquidation 정보를  확인 할 수 있더군요.(아래 사이트 참조) ... 1 0 7001
부자아들
2021.02.16
76 개발 이더리움 풀노드 전체 데이타 드립니다.   이더리움 풀노드 전체 데이타 드립니다. 이더리움 풀노드 구축해드려요.   이더리움 풀노드 구축시에  geth 로 다운로드 받을 시 20일 정도 걸리실텐데요, 서버 셋팅해주시면 geth 풀노드를 최... 16 1 7897
김대박
2021.02.21
75 개발 기존 안드로이드앱에 자체(ERC-20)지갑 및 코인결제 시스템     안녕하세요.   제목처럼 기존 안드로이드앱에 자체(ERC-20)지갑 및 코인결제 시스템 개발을 하려합니다. 혹시 가능하신분이나 업체 계실까요?               4 0 5374
LOCOKO
2021.02.26
74 질문 주식모의투자 시스템           안녕하세요 코인,주식 커뮤니티 운영진입니다. 고진감래커뮤니티입니다. 그 뭐야 지금현재 코인모의투자 기능은넣었고 주식,해외선물 모의투자 시스템을 도입하고싶은데 자문을 좀 구... 0 3084
련둥신
2021.03.09
73 개발 업비트 api 지정가 매수 / 익절 / 손절 #프로그램         안녕하세요 !   혹시 업비트에 api활용해서   지정가에 매수 / 익절 / 손절 지정할수있는 프로그램이 있을까요 ??   여러종목 동시에 가능하고  텔레그램으로 알림도 가능하다면 좋구요 ... 10 2 4930
양봉이
2021.03.09
72 질문 이더리움 프라이빗 네트워크에서의 거래 승인에 대한 질문입니다. 아래는 구글링하다 발견한 &quot;블록체인의 다변화 채굴 없는 블록체인의 확산&quot; 이라는 문서입니다. 논문같기도 하고... 이더리움에 한해서 정의한 내용은 아니고 그냥 블록체인 전반에 대한 내용인 ... 9 file 0 619
비폭력무저항
2021.03.24
71 개발 GGoletn (꼴렸뜬) 프로젝트를 아십니까?   GGoletn (꼴렸뜬) 프로젝트를 아십니까? 제가 생각하는 개선된 블록체인 프로젝트 입니다.   땅바닥X 라는 깨똑 회사 산하 클레튼 블록체인 프로젝트 입니다. 훌어보니, 나름 ETH 를 많이 참조... 5 1 873
안씨아저씨
2021.03.29
질문 코딩 왕초보입니다. 업비트 자동매매 봇을 만들고있는데 어떻게 해야할지 모르겠습니다. 도와주세요!! 안녕하세요. 코딩도 코인도 모르는 코린이입니다. 이번에 취미삼아 파이썬으로 코인 자동매매 봇을 만들어보려고 하는데요..조언이 필요합니다. 전체적인 구상은 이렇습니다.   1. 해당 항목을 ... 9 0 3440
소다파이
2021.04.01
69 질문 바이비트 API관련문의         혹시 바이비트에서 실시간 금액이나 레버리지같은설정값등을 가져올수있는 방법이있나요? API는 발급만 있던데..   자동매매프로그램을 만들어볼까하는데 어디를 참고해야될지모르겟어요... 1 0 666
연두부
2021.04.05
68 개발 파이션 시세 라이버러리 4종 소개   1. CryptoCompare pip3 install cryptocompare   import cryptocompare price = cryptocompare.get_price('BTC', 'USD') print(price)     2. Cryptofeed   pip3 install cryptofeed from cryp... 1 1 864
Mkms
2021.04.07
67 개발 코인 커뮤니티 차트표 제작완료         코인모의투자 시스템 빗썸 api 연동한거구매해서 사이트에 붙혀넣고 코인차트표 거래소들 api 연동해서 제작해봤는데 어떠신지 한번 봐주실분계신가요 https://coin-score.com 여기입니... 4 0 1124
련둥신
2021.04.11
66 질문 타오바오발 라이저카드 전파법 저촉될까요? 해쉬늘리려고 은근 많아사둿는데 어어 하다보니 글카값이 20퍼이상은 다 올라버렸네요.. 전파법관련 이슈들도많은데 이걸 그대로 팔자니 검색해봐도 나오는것도 없고 애매하네요. 전파법걸린다면... 14 0 727
이더1000
2021.04.28
65 질문 업비트 웹소켓 이용해서 시세 받아오는데 질문이요 자바스크립트 사용하고있는데 codes 에 &quot;KRW-BTC&quot;,&quot;KRW-XRP&quot; 이런식으로 2개 넣었는데    출력은 btc만 나오네요   한번에 여러개의 코인 시세를 불러오고싶은데 해결법 아시는분     업비트 웹... 1 0 1456
난폭킴
2021.05.05
64 질문 파이코인과 채굴, 블록체인 대해서 질문입니다.         제가 알기로는 채굴이란 간단하게 내 컴퓨터의 자원을 활용해서 코인의 위변조를 막는것이고, 이게 블록체인의 바탕이 되는 것입니다. 파이코인은 이러한 자기자원의 소모없이 간단한 출... 2 0 728
체어킹
2021.05.09
63 개발 지갑 전문가님 연락 주세요.   안녕 하세요. 코인 지갑을 운영하고 싶습니다. btc,eth,usdt,erc20,bep20,trc10, 이렇게 몇가지를 사용하고,  1) 개인의 비밀키 내보내기 기능을 넣고, 2) 코인간 스왑 기능을 넣고, 3) 회원간... 1 0 506
스타이로
2021.05.18
62 개발 업비트, 바이비트 지표 알람 봇 텔레그램으로 이용 가능한 업비트 및 바이비트 지표 알람 봇입니다. 다수가 참여하는 방이 아니므로 개인의 취향에 따라 코인을 선택적으로 알람 받을 수 있습니다. 업비트 및 바이비트 공지사항... 4 file 0 2041
hany1146
2021.05.21
61 개발 반복적인 빗썸의 지연  최근 빗썸에 거래량이 몰리는 경우, 거래가 지연되는 현상이 간혹 있었습니다. 매수/매도를 걸면 30분 후에 거래가 된다던지, 잔액이 맞지 않는 다는 지 등등..    업비트도 간혹 거래가 몰려서... 1 0 928
gondre
2021.05.21
Board Pagination Prev 1 ... 83 84 85 86 87 88 89 90 91 92 Next
/ 92
default debug random = 0 / type = READ / detected = READ