[암호화폐] 귀차니즘 때문에..

in SteemCoinPan •  8 months ago  (Edited)

요즘 참여하는 DeFi가 많다보니, 매일같이 채굴한거 수거해서 파는 것도 큰일입니다. 단순 반복 작업을 하는데도 꽤 시간이 걸립니다. 그래서 지난 연휴기간 동안 이걸 자동화해보고자 smart contract에 대하여 공부를 했습니다.

Smart Contract와 관련된 예제는 node.js는 많은데 파이썬은 거의 없더군요. 그렇다고 이제와서 node.js를 공부하기도 좀 애매한 상황입니다. 그래서 문의했더니 @wonsama님께서 web3.py를 사용하면 된다고 알려주셨습니다. 지면을 빌어 감사의 말을 전합니다. 덕분에 시간을 많이 줄였습니다.

하지만 smart contract에 대한 이해가 부족하여 기초부터 배우면서 개발하느라 시간이 많이 걸렸습니다. 3/1일이 휴일이어서 정말 다행이었습니다.

연휴기간을 불태운 결과 smart contract를 어느 정도 이해를 하였고, 사이트별로 사용하는 smart contract에 대해서도 이해를 하게 되었습니다. 이를 바탕으로 인터넷 어디에도 없는 web3.py를 활용하여 파이썬을 이용한 smart contract 정보를 검색하는 예제 프로그램을 완성하였습니다.

사실 이 프로젝트의 출발은 https://yieldwatch.net/ 사이트입니다. eth 주소만 입력하면 본인이 투자한 defi LP에 대한 정보가 일목요연하게 보이죠. 이런 걸 만들고 싶었으나, 웹 페이지를 다룰 줄 몰라서 그냥 text terminal에 출력하는 것으로 만족을 합니다.

본문으로 들어갑니다.

가장 많이 사용하는 pancakeswap을 예로 들겠습니다.

pancakeswap에 특이하게도 제공하는 채굴 풀 전체가 MasterChef라고 하는 smart contract입니다. MasterChef안에 있는 채굴 풀 각각도 smart contract이고 특정 채굴 풀안에 있는 코인들도 smart contract입니다.

각각의 smart contract 주소는 아래와 같습니다.

# MasterChef : 0x73feaa1eE314F8c655E354234017bE2193C9E24E
#  |
#  +-- Cake-BNB LP : 0xA527a61703D82139F8a06Bc30097cC9CAA2df5A6
#    |
#    + Cake : 0x0E09FaBB73Bd3Ade0a17ECC321fD13a19e81cE82
#    + Bnb : 0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c

bscscan.com에 접속하여 MasterChef smart contract 주소를 입력한 후 contract 파트에 있는 ABI 값을 복사하여 사용하면 됩니다. 다른 defi 사이트도 smart contract 주소를 알아낸 후 같은 방식으로 ABI 값을 얻으면 됩니다.

아래는 프로그램 실행 결과입니다. pancakeswap에서 보이는 값과 정확하게 일치하는 값을 볼 수 있습니다.

스팀엔진 관련 다양한 서비스를 웹으로 보여주시는 @goodhello님!! 믿습니다. 이 프로그램을 바탕으로 web version을 곳 선보여주실 것을..

앞으로 할 일은 채굴된 코인을 자동으로 claim하는 부분과, claim한 코인을 usdt로 파는 부분입니다. 이렇게 되면 가끔씩 지갑에 있는 잔고만 확인하면 될 것 같습니다.

아 그리고보니, telegram bot과 연동하여 일 채굴 결과를 자동으로 알려주는 것도 가능하겠군요. 개발하고 싶은 것은 많은데...


프로그램에 대한 자세한 설명은 아래 글을 참고하시기 바랍니다.
https://money-expert.tistory.com/49
https://money-expert.tistory.com/50

관련 파이썬 소스 코드는 아래 github에 있습니다.
https://github.com/multizone-quant/DeFi/blob/main/WatchingDeFi.py

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

대..대단하십니다.

[US$49.00](▼14%)[Nespresso]스타벅스 네스프레소 호환 캡슐 7종 / 120 캡슐 골라담기 / 20개씩 총 6종류 교차 선택 가능 / 중복 선택 가능 / 재고 확보 / 무료배송 / 개당 약 486원 최저가★

WWW.QOO10.COM

천재이십니다형님

대단하십니다...

트아님 정말 대단하십니다!! ㅎㅎㅎ 배움에 대한 열의가 정말..!!

저도 늙어 죽을 때까지 배움은 쉬지 않아야겠네요. 특히 코딩은 말이죠!! ㅎㅎ

클레임 하는것과, 잔고, pendingRewards 등도 텔레그램 연동해서 텔레그램으로 클레임을 하도록 하는 것도 꽤나 재미가 쏠쏠합니다!!

그러게요. 하고 싶은게 너무 많은데.. ㅎ

대단하십니다! 저도 한 번 따라해보겠습니다! 인스타댑? 같은 통합인터페이스도 있던데 혹시 이런 서비스 이용은 어떻게 생각하시는지요??

인스타댑은 어떤 것인지요? 좋은 서비스가 있다면 이용해야죠.

https://instadapp.io/
저도 이용은 아직 안해봤는데, 시간되면 해보시길! ㅎ

워우!!정말 무시무시하십니다 ㅎㅎ
저는 node.js로 ㅎㅎㅎ

node.js하시는 분들이 제일 부러움.

@tradingideas transfered 15 KRWP to @krwp.burn. voting percent : 57.44%, voting power : 79.34%, steem power : 1719834.23, STU KRW : 1200.
@tradingideas staking status : 7500 KRWP
@tradingideas limit for KRWP voting service : 15 KRWP (rate : 0.002)
What you sent : 15 KRWP [51686380 - 4afc7516700fbd875f56574e7ba606a3b4b9b84a]

추천을 안 할 수 없는 열정이십니다~^^

오 대박입니당! 저도 웹버젼으로 해보고싶네요 ㅎㅎ

기다리고 있겠습니다. ㅎ

귀찮이즘이라기 보다는 시간이 부족한 것이 아닌가요?

둘 다 입니다. ㅎ smart contract가 궁금하기도 했고요.

jacobyu gave tradingideas gifts(3 SCT).

ㅋㅋㅋㅋ 대단한 투자겸 개발자 ㅎㅎㅎㅎㅎㅎ

채굴이 뭔가 복잡한거 같은데... 대단하십니다~