币安量化交易
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

72 lines
2.3 KiB

using Binance.TradeRobot.Model.Base;
using System;
namespace Binance.TradeRobot.Model.Dto
{
public class RobotResponse
{
public long Id { get; set; }
public DateTime CreateTime { get; set; }
public Enums.TradePolicy TradePolicy { get; set; }
/// <summary>
/// 运行时长(s)
/// </summary>
public long RunningTime { get; set; } = 0;
public Enums.RobotState State { get; set; }
public string Symbol { get; set; }
public Enums.BusinessType BusinessType { get; set; }
public Enums.Exchange ExchangeId { get; set; }
public virtual string ExecuteKey { get { return $"Execute-{ExchangeId}-{TradePolicy}-{Symbol}"; } }
public virtual string KLineKey { get { return $"KLine-{ExchangeId}-{BusinessType}-{Symbol}"; } }
/// <summary>
/// 订单推送监听实例Key
/// </summary>
public virtual string OrderPublishListenKey
{
get
{
string key = string.Empty;
if (ExchangeId == Enums.Exchange.Binance)
{
if (BusinessType == Enums.BusinessType.IsolateMargin)
key = $"{BusinessType}-{ExchangeAPIKey.AccountId}-{Symbol}"; //币安逐仓杠杆,同一个账户内的每个交易对需要区分websocket实例
else
key = $"{BusinessType}-{ExchangeAPIKey.AccountId}"; //币安现货,币安合约,同一个账户内不区分websocket实例
}
return $"OrderPublish(Origin)-{ExchangeId}-{key}";
}
}
/// <summary>
/// 订单推送日志Key
/// </summary>
public virtual string OrderPublishLogKey
{
get
{
return $"OrderPublish-{ExchangeId}-{BusinessType}-{Symbol}";
}
}
public SymbolInfoResponse SymbolInfo { get; set; }
/// <summary>
/// 机器人账户对象
/// </summary>
public RobotAccountResponse RobotAccount { get; set; }
/// <summary>
/// 机器人绑定的交易所APIKey对象
/// </summary>
public SimpleExchangeAPIKeyResponse ExchangeAPIKey { get; set; }
}
}