mirror of
https://github.com/JKorf/CryptoExchange.Net.git
synced 2026-08-11 16:32:57 +00:00
Added DebuggerDisplay attributes to Shared models
This commit is contained in:
@@ -1,10 +1,12 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.Diagnostics;
|
||||||
|
|
||||||
namespace CryptoExchange.Net.SharedApis
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Asset info
|
/// Asset info
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("{Name,nq} - {Networks.Length} network(s)")]
|
||||||
public record SharedAsset
|
public record SharedAsset
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -32,6 +34,7 @@ namespace CryptoExchange.Net.SharedApis
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Asset network info
|
/// Asset network info
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("{Name,nq}")]
|
||||||
public record SharedAssetNetwork
|
public record SharedAssetNetwork
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -1,8 +1,11 @@
|
|||||||
namespace CryptoExchange.Net.SharedApis
|
using System.Diagnostics;
|
||||||
|
|
||||||
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Balance info
|
/// Balance info
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("{Available} {Asset, nq}")]
|
||||||
public record SharedBalance
|
public record SharedBalance
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -1,8 +1,11 @@
|
|||||||
namespace CryptoExchange.Net.SharedApis
|
using System.Diagnostics;
|
||||||
|
|
||||||
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Book ticker
|
/// Book ticker
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("{Symbol,nq} - {BestBidPrice} / {BestAskPrice}")]
|
||||||
public record SharedBookTicker : SharedSymbolModel
|
public record SharedBookTicker : SharedSymbolModel
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.Diagnostics;
|
||||||
|
|
||||||
namespace CryptoExchange.Net.SharedApis
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Deposit info
|
/// Deposit info
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("[{Timestamp}] {Quantity} {Asset,nq}")]
|
||||||
public record SharedDeposit
|
public record SharedDeposit
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -1,8 +1,11 @@
|
|||||||
namespace CryptoExchange.Net.SharedApis
|
using System.Diagnostics;
|
||||||
|
|
||||||
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Deposit address info
|
/// Deposit address info
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("{Asset,nq} - {Address,nq}")]
|
||||||
public record SharedDepositAddress
|
public record SharedDepositAddress
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -1,8 +1,11 @@
|
|||||||
namespace CryptoExchange.Net.SharedApis
|
using System.Diagnostics;
|
||||||
|
|
||||||
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Trading fee info
|
/// Trading fee info
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("{MakerFee} / {TakerFee}")]
|
||||||
public record SharedFee
|
public record SharedFee
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.Diagnostics;
|
||||||
|
|
||||||
namespace CryptoExchange.Net.SharedApis
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Funding rate
|
/// Funding rate
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("[{Timestamp}] {FundingRate}")]
|
||||||
public record SharedFundingRate
|
public record SharedFundingRate
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.Diagnostics;
|
||||||
|
|
||||||
namespace CryptoExchange.Net.SharedApis
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Mark/index price kline
|
/// Mark/index price kline
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("[{OpenTime}] O: {OpenPrice} H: {HighPrice} L: {LowPrice} C: {ClosePrice}")]
|
||||||
public record SharedFuturesKline : SharedSymbolModel
|
public record SharedFuturesKline : SharedSymbolModel
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -1,12 +1,19 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.Diagnostics;
|
||||||
|
|
||||||
namespace CryptoExchange.Net.SharedApis
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Futures order info
|
/// Futures order info
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("{DebugView,nq}")]
|
||||||
public record SharedFuturesOrder : SharedSymbolModel
|
public record SharedFuturesOrder : SharedSymbolModel
|
||||||
{
|
{
|
||||||
|
private string DebugView =>
|
||||||
|
$"[{CreateTime}] {OrderId} {(PositionSide != null ? $"{PositionSide} " : "")}{Symbol} - " +
|
||||||
|
$"{OrderType} {Side} {OrderQuantity}{(OrderPrice != null ? " @ " + OrderPrice : "")}, " +
|
||||||
|
$"{Status}{(QuantityFilled != null && Status != SharedOrderStatus.Canceled ? $" {QuantityFilled}" : "")}{(AveragePrice != null ? " @ " + AveragePrice : "")}";
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Id of the order
|
/// Id of the order
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@@ -1,12 +1,17 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.Diagnostics;
|
||||||
|
using System.Drawing;
|
||||||
|
|
||||||
namespace CryptoExchange.Net.SharedApis
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Futures symbol info
|
/// Futures symbol info
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("{DebugView,nq}")]
|
||||||
public record SharedFuturesSymbol : SharedSpotSymbol
|
public record SharedFuturesSymbol : SharedSpotSymbol
|
||||||
{
|
{
|
||||||
|
private string DebugView => $"{TradingMode} {Name}{(DeliveryTime != null ? $" Delivery: {DeliveryTime:yyyy-MM-dd}": "")}";
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The size of a single contract
|
/// The size of a single contract
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.Diagnostics;
|
||||||
|
|
||||||
namespace CryptoExchange.Net.SharedApis
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Futures ticker info
|
/// Futures ticker info
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("{Symbol,nq} High: {HighPrice}, Low: {LowPrice}, Last: {LastPrice}, Change: {ChangePercentage}%")]
|
||||||
public record SharedFuturesTicker: SharedSymbolModel
|
public record SharedFuturesTicker: SharedSymbolModel
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.Diagnostics;
|
||||||
|
|
||||||
namespace CryptoExchange.Net.SharedApis
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Kline info
|
/// Kline info
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("[{OpenTime}] O: {OpenPrice} H: {HighPrice} L: {LowPrice} C: {ClosePrice} V: {Volume}")]
|
||||||
public record SharedKline : SharedSymbolModel
|
public record SharedKline : SharedSymbolModel
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.Diagnostics;
|
||||||
|
|
||||||
namespace CryptoExchange.Net.SharedApis
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Position info
|
/// Position info
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("{Symbol,nq} {PositionSide}: {PositionSize} {AverageOpenPrice}")]
|
||||||
public record SharedPosition : SharedSymbolModel
|
public record SharedPosition : SharedSymbolModel
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.Diagnostics;
|
||||||
|
|
||||||
namespace CryptoExchange.Net.SharedApis
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Position history
|
/// Position history
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("[{Timestamp}] {Symbol,nq} {PositionSide}: {RealizedPnl}")]
|
||||||
public record SharedPositionHistory : SharedSymbolModel
|
public record SharedPositionHistory : SharedSymbolModel
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -1,12 +1,19 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.Diagnostics;
|
||||||
|
|
||||||
namespace CryptoExchange.Net.SharedApis
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Spot order info
|
/// Spot order info
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("{DebugView,nq}")]
|
||||||
public record SharedSpotOrder : SharedSymbolModel
|
public record SharedSpotOrder : SharedSymbolModel
|
||||||
{
|
{
|
||||||
|
private string DebugView =>
|
||||||
|
$"[{CreateTime}] {OrderId} {Symbol} - " +
|
||||||
|
$"{OrderType} {Side} {OrderQuantity}{(OrderPrice != null ? " @ " + OrderPrice : "")}, " +
|
||||||
|
$"{Status}{(QuantityFilled != null && Status != SharedOrderStatus.Canceled ? $" {QuantityFilled}" : "")}{(AveragePrice != null ? " @ " + AveragePrice : "")}";
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The id of the order
|
/// The id of the order
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@@ -1,8 +1,11 @@
|
|||||||
namespace CryptoExchange.Net.SharedApis
|
using System.Diagnostics;
|
||||||
|
|
||||||
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Symbol info
|
/// Symbol info
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("{TradingMode} {Name,nq}")]
|
||||||
public record SharedSpotSymbol
|
public record SharedSpotSymbol
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -1,8 +1,11 @@
|
|||||||
namespace CryptoExchange.Net.SharedApis
|
using System.Diagnostics;
|
||||||
|
|
||||||
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Ticker info
|
/// Ticker info
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("{Symbol,nq} High: {HighPrice}, Low: {LowPrice}, Last: {LastPrice}, Change: {ChangePercentage}%")]
|
||||||
public record SharedSpotTicker: SharedSymbolModel
|
public record SharedSpotTicker: SharedSymbolModel
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.Diagnostics;
|
||||||
|
|
||||||
namespace CryptoExchange.Net.SharedApis
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Public trade info
|
/// Public trade info
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("[{Timestamp}] {Symbol,nq} {Side.ToString(),nq} {Quantity} @ {Price}")]
|
||||||
public record SharedTrade : SharedSymbolModel
|
public record SharedTrade : SharedSymbolModel
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.Diagnostics;
|
||||||
|
|
||||||
namespace CryptoExchange.Net.SharedApis
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A user trade
|
/// A user trade
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("[{Timestamp}] {Id,nq} {Symbol,nq} {Side.ToString(),nq} {Quantity} @ {Price}")]
|
||||||
public record SharedUserTrade : SharedSymbolModel
|
public record SharedUserTrade : SharedSymbolModel
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.Diagnostics;
|
||||||
|
|
||||||
namespace CryptoExchange.Net.SharedApis
|
namespace CryptoExchange.Net.SharedApis
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A withdrawal record
|
/// A withdrawal record
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[DebuggerDisplay("[{Timestamp}] {Quantity} {Asset,nq}")]
|
||||||
public record SharedWithdrawal
|
public record SharedWithdrawal
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
using CryptoExchange.Net.Converters.SystemTextJson;
|
using CryptoExchange.Net.Converters.SystemTextJson;
|
||||||
|
using System.Text;
|
||||||
using System.Text.Json.Serialization;
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
namespace CryptoExchange.Net.SharedApis
|
namespace CryptoExchange.Net.SharedApis
|
||||||
@@ -35,6 +36,33 @@ namespace CryptoExchange.Net.SharedApis
|
|||||||
QuantityInQuoteAsset = quoteAssetQuantity;
|
QuantityInQuoteAsset = quoteAssetQuantity;
|
||||||
QuantityInContracts = contractQuantity;
|
QuantityInContracts = contractQuantity;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
|
public override string ToString()
|
||||||
|
{
|
||||||
|
var sb = new StringBuilder("[");
|
||||||
|
if (QuantityInBaseAsset != null)
|
||||||
|
sb.Append($"{QuantityInBaseAsset} base");
|
||||||
|
|
||||||
|
if (QuantityInQuoteAsset != null)
|
||||||
|
{
|
||||||
|
if (sb.Length > 1)
|
||||||
|
sb.Append(", ");
|
||||||
|
|
||||||
|
sb.Append($"{QuantityInQuoteAsset} quote");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (QuantityInContracts != null)
|
||||||
|
{
|
||||||
|
if (sb.Length > 1)
|
||||||
|
sb.Append(", ");
|
||||||
|
|
||||||
|
sb.Append($"{QuantityInContracts} contracts");
|
||||||
|
}
|
||||||
|
|
||||||
|
sb.Append("]");
|
||||||
|
return sb.ToString();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -53,6 +81,9 @@ namespace CryptoExchange.Net.SharedApis
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public SharedQuantity() : base(null, null, null) { }
|
public SharedQuantity() : base(null, null, null) { }
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
|
public override string ToString() => base.ToString();
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Specify quantity in base asset
|
/// Specify quantity in base asset
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -123,5 +154,8 @@ namespace CryptoExchange.Net.SharedApis
|
|||||||
: base(baseAssetQuantity, quoteAssetQuantity, contractQuantity)
|
: base(baseAssetQuantity, quoteAssetQuantity, contractQuantity)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
|
public override string ToString() => base.ToString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user