박주니 개발 정리

실시간 시세 matic으로 전환 방법 본문

블록체인

실시간 시세 matic으로 전환 방법

박주니 2023. 6. 3. 14:52
728x90
반응형

설명 이유

nft 마켓을 만들다보면 판매하는 방법이 현금으로 판매할 수도 있고 해당되는 가상화폐로 판매할 수도 있습니다.

가상화폐 시세는 유동적이기 때문에 고정값으로 할 수 없기에 해결하는 방법을 알려드리고자 합니다. 

 

1. 현재 시세로 가상화폐 전환하는 것을 도와주는 Coingecko API를 이용합니다. 

  • 참고
  1. https://www.coingecko.com/en/api/documentation 접속합니다. 
 

Crypto API Documentation | CoinGecko

Power your application with our free & independently sourced crypto data such as live prices, trading volume, exchange volumes, trading pairs, & more.

www.coingecko.com

    2.  /coins/markets에서 vs_currency, ids parameter을 이용해서 가상화폐에 현재 시세를 가져올 것입니다. 

 

    const API_URL = "https://api.coingecko.com/api/v3/coins/markets";
    const CURRENCY = "krw"; // 한국 원화
    const COIN_ID = "matic-network"; // Matic Network의 심볼

    axios
      .get(`${API_URL}?vs_currency=${CURRENCY}&ids=${COIN_ID}`)
      .then((response) => {
        if (!response.data) {
          alert("API 서버로부터 데이터를 받아오는데 실패했습니다.");
          return;
        }
  • 코드 설명 
    • API_URL : Coingecko API 참고에서 /coins/markets에서 사용
    • CURRENCY : 저는 원화 기준으로 할 것이기 때문에 "krw"로 설정했습니다. 예를 들어 달러 기준이라면 "usd"로 설정하시면 됩니다. 
    • COIN_ID : 저는 matic을 사용할 것이기때문에 matic-network로 설정했습니다. 그외 가상화폐는 Coingecko API에서 사용되는 coin_id의 정확한 내부 규칙과 설정에 대한 자세한 정보를 확인하기 위해서는 Coingecko와 직접 연락하여 문의하는 것이 가장 좋습니다. (chatGPT에 물어보시면 해결 됩니다.)
    • vs_currency와 ids는 parameter이기 때문에 상단에 코드처럼 작성하시면 됩니다.

2. 현재 지정한 원화를 현재 시세 matic 금액으로 전환하기 

    const API_URL = "https://api.coingecko.com/api/v3/coins/markets";
    const CURRENCY = "krw"; // 한국 원화
    const COIN_ID = "matic-network"; // Matic Network의 심볼
    const TARGET_PRICE = 30000; // 타겟 가격 (3000원)
    axios
      .get(`${API_URL}?vs_currency=${CURRENCY}&ids=${COIN_ID}`)
      .then((response) => {
        if (!response.data) {
          alert("API 서버로부터 데이터를 받아오는데 실패했습니다.");
          return;
        }
        const maticPrice = response.data[0].current_price;
        let amount;
        amount = TARGET_PRICE / maticPrice; // 타겟 가격에 해당하는 Matic 양 계산
        console.log(amount)
      })
      .catch((error) => {
        console.error(error);
      });
  • 코드 설명 
    • maticPrice : 현재 vs_currency에 지정한 krw 기준으로 ids에 설정한 matic이 krw이 기준으로 값을 가지고 옵니다. 
    • amount : TARGET_PRICE를 임의로 30000원을 현재 시세 matic으로 전환할 것이기 때문에 TARGET_PRICE/maticPrice를 했습니다. 

amount

응용 

  • TARGET_PRICE가 원화가 아닌 matic으로 값을 넣으면 response.data[0].current_price에서 나온 현재 krw시세에 matic을 곱하면 됩니다. 그럼 원화에서 가상화폐로 가상화폐에서 원화로 전환이 가능합니다. 

폴리곤 기준 시세 확인 

https://www.coingecko.com/en/coins/polygon

  • polygon Concerter에서 변경할 금액 타입을 변경하고 금액을 입력하시면 전환된 matic을 확인하실 수 있습니다. 
728x90
반응형
Comments