Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 라즈베리파이
- 업비트
- codeigniter
- php
- Raspberry Pi
- C
- 우분투
- 맥
- FMS
- 맛집
- 20.04
- 프레임워크
- Selenium
- 라즈비안
- 회고
- 옵티머스g
- 옵지
- 셀레니움
- 우분투 20.04
- 제주도
- 라라벨
- 옵티머스 g
- TiL
- ubuntu
- upbit
- MySQL
- 코드이그나이터
- Ubuntu 20.04
- 옵G
- Laravel
Archives
- Today
- Total
평범한 이야기들
[PHP] PHP를 이용해 업비트(upbit) API 통신하기 #2 분, 일 캔들 정보 가져오기 본문
728x90
지난번에 이어서 이번에는 분, 일 캔들 정보를 가져올 예정입니다.
분봉, 일봉은 가장 기본적이 코인의 정보가 들어가 있습니다. 시가, 고가, 저가, 종가 등등 해당 코인의 거래 정보가 담겨있어서 이 정보를 이용해 다양한 보조지표가 나오게 됩니다. 레퍼런스를 확인해보면 분봉은 1, 3, 5, 15, 10, 30, 60, 240분 단위를 설정 할 수 있습니다. 일은 하루의 지표가 나오게 됩니다.
업비트에서 제공하는 캔들 정보는 REST API를 이용해 가져오게 되며 특별히 API 키를 사용하지 않고 가져올 수 있게 되어있습니다. 즉 누구나 해당 주소를 이용해 정보를 가져올 수 있습니다.
아래는 소스 코드 입니다. 분,일 캔들을 가져오는 URL를 만들어 전송한 후 데이터를 받습니다. 지난번에 이어 UpbitApi Class의 메서드로 추가했습니다.
// in UpbitApi Class
public function getMinutesCandles($requestData)
{
$unit = $requestData["unit"]; // 분 단위 1 3 5 15 10 30 60 240 분 캔들 조회
$market = $requestData["market"]; // 마켓 코드
$count = $requestData["count"]; // 캔들 갯수(최대 200개)
$to = $requestData["to"]; // 마지막 캔들 시각 포맷 (yyyy-MM-dd'T'HH:mm:ss'Z') 또는 (yyyy-MM-dd HH:mm:ss) 비어서 요청시 가장 최근 캔들
$url = "https://api.upbit.com/v1/candles/minutes/{$unit}?market={$market}&count={$count}&to={$to}";
$responseData = $this->call(array(
"url" => $url,
"header" => array(),
));
return $responseData;
}
public function getDaysCandles($requestData)
{
$market = $requestData["market"]; // 마켓 코드
$count = $requestData["count"]; // 캔들 갯수(최대 200개)
$to = $requestData["to"]; // 마지막 캔들 시각 포맷 (yyyy-MM-dd'T'HH:mm:ss'Z') 또는 (yyyy-MM-dd HH:mm:ss) 비어서 요청시 가장 최근 캔들
$convertingPriceUnit = $requestData["convertingPriceUnit"]; // 종가 환산 화폐 단위 (생략 가능 KRW로 명시할 시 원화 환산 가격을 반환)
$url = "https://api.upbit.com/v1/candles/days?market={$market}&count={$count}&to={$to}&convertingPriceUnit={$convertingPriceUnit}";
$responseData = $this->call(array(
"url" => $url,
"header" => array(),
));
return $responseData;
}
그리고 적당한 파라미터 값을 추가해서 테스트를 하면 아래와 같이 캔들 정보를 가져오게 됩니다.
이와 같은 방법으로 주, 월 캔들의 정보도 메서드로 구분하여 만들어서 사용하면 될 것 같습니다. 저는 일단 분, 일 캔들 정보를 이용하려고 따로 작업하지는 않았습니다.
728x90
Comments