Browse Source

完善订单状态

master
shanji 3 years ago
parent
commit
afe5cecb1a
  1. 7
      Binance.TradeRobot.Business/Binance.TradeRobot.Business.xml
  2. 18
      Binance.TradeRobot.Business/Business/TradeBusiness/D21TradeBusiness.cs
  3. 29
      Binance.TradeRobot.Model/Base/Enums.cs
  4. 15
      Binance.TradeRobot.Model/Binance.TradeRobot.Model.xml
  5. 2
      Binance.TradeRobot.Model/Db/Order/SpotOrder.cs

7
Binance.TradeRobot.Business/Binance.TradeRobot.Business.xml

@ -144,5 +144,12 @@
</summary>
<param name="robot"></param>
</member>
<member name="M:Binance.TradeRobot.Business.GlobalContext.GetSpotNewestPrice(System.String)">
<summary>
获取指定交易对现货最新成交价
</summary>
<param name="symbol"></param>
<returns></returns>
</member>
</members>
</doc>

18
Binance.TradeRobot.Business/Business/TradeBusiness/D21TradeBusiness.cs

@ -20,7 +20,7 @@ namespace Binance.TradeRobot.Business
{
private DingBusiness dingBusiness;
private GlobalContext globalContext;
private IList<Enums.SpotOrderState> validStateList;
public Enums.TradePolicy TradePolicy => Enums.TradePolicy.D21;
public D21TradeBusiness(IFreeSql fsql,
@ -32,6 +32,12 @@ namespace Binance.TradeRobot.Business
{
this.dingBusiness = dingBusiness;
this.globalContext = globalContext;
validStateList = new List<Enums.SpotOrderState>()
{
Enums.SpotOrderState.Filled,
Enums.SpotOrderState.PartiallyFilled,
Enums.SpotOrderState.Expired
};
}
public void TrendChanged<T, T1>(T singalRequest, T1 robot) where T : BaseSingalRequest where T1 : RobotResponse
@ -121,6 +127,16 @@ namespace Binance.TradeRobot.Business
}
}
#endregion
#region 计算下单数量
var recentSellOrder = fsql.Select<SpotOrder>().Where(o => o.RobotId == robot.Id &&
o.TradeDirection == Enums.TradeDirection.Sell &&
validStateList.Contains(o.State))
.OrderByDescending(o => o.LastTradeTime)
.ToOne();
#endregion
}
catch (Exception ex)
{

29
Binance.TradeRobot.Model/Base/Enums.cs

@ -110,11 +110,34 @@ namespace Binance.TradeRobot.Model.Base
}
/// <summary>
/// 订单状态
/// 现货订单订单状态
/// </summary>
public enum OrderState
public enum SpotOrderState
{
Created
/// <summary>
/// 已创建
/// </summary>
Created,
/// <summary>
/// 部分成交
/// </summary>
PartiallyFilled,
/// <summary>
/// 完全成交
/// </summary>
Filled,
/// <summary>
/// 用户取消
/// </summary>
Canceled,
/// <summary>
/// 拒绝
/// </summary>
Rejected,
/// <summary>
/// 交易引擎取消 没有完全成交
/// </summary>
Expired
}
/// <summary>

15
Binance.TradeRobot.Model/Binance.TradeRobot.Model.xml

@ -707,5 +707,20 @@
最近一次小趋势信号
</summary>
</member>
<member name="P:Binance.TradeRobot.Model.RuningInfo.D21RuningInfo.ErrorCrossSingal">
<summary>
错误的交叉信号
</summary>
</member>
<member name="P:Binance.TradeRobot.Model.RuningInfo.D21RuningInfo.ErrorCrossSingalTime">
<summary>
错误交叉信号的K线时间戳
</summary>
</member>
<member name="P:Binance.TradeRobot.Model.RuningInfo.D21RuningInfo.RecentShortCrossSignalTradePrice">
<summary>
最近一次空交叉时的成交价
</summary>
</member>
</members>
</doc>

2
Binance.TradeRobot.Model/Db/Order/SpotOrder.cs

@ -50,7 +50,7 @@ namespace Binance.TradeRobot.Model.Db
[Column(MapType = typeof(int), DbType = "int")]
public Enums.OrderState State { get; set; }
public Enums.SpotOrderState State { get; set; }
[Column(MapType = typeof(int), DbType = "int")]
public Enums.TradeDirection TradeDirection { get; set; }

Loading…
Cancel
Save