ShareInvest.Crypto 1.0.0.2

dotnet add package ShareInvest.Crypto --version 1.0.0.2                
NuGet\Install-Package ShareInvest.Crypto -Version 1.0.0.2                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="ShareInvest.Crypto" Version="1.0.0.2" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add ShareInvest.Crypto --version 1.0.0.2                
#r "nuget: ShareInvest.Crypto, 1.0.0.2"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install ShareInvest.Crypto as a Cake Addin
#addin nuget:?package=ShareInvest.Crypto&version=1.0.0.2

// Install ShareInvest.Crypto as a Cake Tool
#tool nuget:?package=ShareInvest.Crypto&version=1.0.0.2                

NuGet

using Newtonsoft.Json;

using ShareInvest.Binance;
using ShareInvest.Binance.Models;

IEnumerable<Ticker> tickers;

using (var api = new Quotation())
{
    tickers = await api.GetEntireDayTickerAsync() ?? [];
}

using (var socket = new WebSocket())
{
    socket.SendTicker += (sender, e) =>
    {
        Console.WriteLine(JsonConvert.SerializeObject(e.Ticker, Formatting.Indented));
    };
    await socket.ConnectAsync();

    var task = Task.Run(socket.ReceiveAsync);

    await socket.RequestAsync("SUBSCRIBE", "!ticker@arr");
    await task;
}

NuGet

using Newtonsoft.Json;

using ShareInvest.Coinone;
using ShareInvest.Coinone.Models;

IEnumerable<Ticker> tickers;

using (var api = new Quotation())
{
    var market = await api.GetMarketAsync();

    var response = await api.GetTickerAsync(true);

    tickers = response?.Tickers;

    foreach (var ticker in tickers)
    {
        Console.WriteLine(ticker.Code);
    }
}

using (var socket = new WebSocket())
{
    socket.SendTicker += (sender, e) =>
    {
        Console.WriteLine(JsonConvert.SerializeObject(e.Ticker, Formatting.Indented));
    };
    await socket.ConnectAsync();

    var task = Task.Run(socket.ReceiveAsync);

    await socket.RequestPingAsync();

    foreach (var ticker in tickers)
    {
        await socket.RequestAsync("SUBSCRIBE", "TICKER", "KRW", ticker.Code.ToUpperInvariant());
    }
    await task;
}

NuGet

using Newtonsoft.Json;

using ShareInvest.UPbit;

using (var api = new Quotation())
{
    var market = await api.GetMarketAsync();

    var tickers = await api.GetTickerAsync(market);

    foreach (var ticker in tickers)
    {
        Console.WriteLine(ticker.Code);
    }
    using (var socket = new WebSocket())
    {
        socket.SendTicker += (sender, e) =>
        {
            Console.WriteLine(JsonConvert.SerializeObject(e.Ticker, Formatting.Indented));
        };
        await socket.ConnectAsync();

        var task = Task.Run(socket.ReceiveAsync);

        await socket.RequestAsync(new
        {
            ticket = Guid.NewGuid()
        }, new
        {
            type = "ticker",
            codes = tickers.Select(e => e.Code)
        });
        await task;
    }
}

NuGet

using Newtonsoft.Json;

using ShareInvest.Bithumb;

using (var api = new Quotation())
{
    var market = await api.GetMarketAsync();

    var tickers = await api.GetTickerAsync(market);

    foreach (var ticker in tickers)
    {
        Console.WriteLine(ticker.Code);
    }
    using (var socket = new WebSocket())
    {
        socket.SendTicker += (sender, e) =>
        {
            Console.WriteLine(JsonConvert.SerializeObject(e.Ticker, Formatting.Indented));
        };
        await socket.ConnectAsync();

        var task = Task.Run(socket.ReceiveAsync);

        static string swapStr(string? str)
        {
            var parts = str?.Split('-');

            return string.Join('_', parts?[^1], parts?[0]);
        }

        var bithumb = from ticker in tickers
                      where !string.IsNullOrEmpty(ticker.Code)
                      select swapStr(ticker.Code);

        await socket.RequestAsync("ticker", [.. bithumb], "30M", "1H", "12H", "24H", "MID");

        await task;
    }
}
Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (4)

Showing the top 4 NuGet packages that depend on ShareInvest.Crypto:

Package Downloads
ShareInvest.UPbit

Package Description

ShareInvest.bithumb

Package Description

ShareInvest.Binance

https://developers.binance.com/docs

ShareInvest.Coinone

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.0.2 140 5/20/2024
1.0.0.1 121 5/20/2024 1.0.0.1 is deprecated because it has critical bugs.
1.0.0 128 5/19/2024