どしゅん駆動設計~DDD~

QoLをダダ上がりさせていくWebエンジニアの雑記

C#で現在のビットコインの価格をCoinCheckのAPIから取得する

最近仮想通貨がアツイですね。

周りの人達がどんどんXEMやらRippleやらで儲けてるのを横目で見つつ、株でボロ負けを続けているどしゅんです。

自分もCoinCheckの口座は開設したのですが、なかなか過熱しすぎている相場に入れず、気がついたら触れない位置まで上がっちゃているパターンが多いですね。

本当に値動きが早すぎて追いつけません・・・。

CoinCheckにAPIがあったので、最新のTickerを取得するプログラムをC#でちょろっと書いてみました。

using Newtonsoft.Json;
using System;
using System.Net.Http;
using System.Threading.Tasks;

namespace BitCoinPriceChcker
{
    class Program
    {
        static void Main(string[] args)
        {

            var ticker = GetCurrentTicker().Result;

            Console.WriteLine($"Last:{ticker.Last} Bid:{ticker.Bid} Ask:{ticker.Ask} High:{ticker.Low} Volume:{ticker.Volume}");

        }

        public static async Task<Ticker> GetCurrentTicker()
        {
            var json = await (new HttpClient()).GetStringAsync("https://coincheck.com/api/ticker");
            var result = JsonConvert.DeserializeObject<Ticker>(json);
            return result;
        }


        public class Ticker
        {
            // 最後の取引の価格
            public double Last { get; set; }

            //現在の買い注文の最高価格
            public double Bid { get; set; }

            //現在の売り注文の最安価格
            public double Ask { get; set; }

            //24時間での最高取引価格
            public double High { get; set; }

            //24時間での最安取引価格
            public double Low { get; set; }

            //24時間での取引量
            public double Volume { get; set; }
        }
    }
    
}

取得結果

f:id:dosyun:20171220013020j:plain

仮想通貨は株と違ってAPIが普通に公開されているのがいいですね。

自動取引もやりやすそうです。