1、主单增加减仓、加仓状态

2、bug修复
This commit is contained in:
2025-02-20 12:00:04 +08:00
parent b132ee879b
commit ade768c28a
13 changed files with 312 additions and 52 deletions

View File

@ -111,16 +111,20 @@ func handleFutOrderByType(db *gorm.DB, preOrder *DbModels.LinePreOrder, orderSta
// 减仓回调
func handleReduceFilled(db *gorm.DB, preOrder *DbModels.LinePreOrder) {
if err := db.Model(&DbModels.LinePreOrderStatus{}).Where("order_id =? ", preOrder.MainId).Update("reduce_status", 1).Error; err != nil {
logger.Errorf("handleReduceFilled 更新主单减仓状态失败,订单号:%s", preOrder.OrderSn)
}
apiUserInfo, _ := GetApiInfo(preOrder.ApiId)
if apiUserInfo.Id == 0 {
logger.Errorf("handleMainReduceFilled 获取api信息失败,订单号:%s", preOrder.OrderSn)
logger.Errorf("handleReduceFilled 获取api信息失败,订单号:%s", preOrder.OrderSn)
return
}
tradeSet, err := GetTradeSet(preOrder.Symbol, 1)
if err != nil {
logger.Errorf("handleMainReduceFilled 获取交易对设置失败,订单号:%s", preOrder.OrderSn)
logger.Errorf("handleReduceFilled 获取交易对设置失败,订单号:%s", preOrder.OrderSn)
return
}
@ -128,7 +132,7 @@ func handleReduceFilled(db *gorm.DB, preOrder *DbModels.LinePreOrder) {
parentOrder, err := GetOrderById(db, preOrder.Pid)
if err != nil {
logger.Errorf("handleMainReduceFilled 获取主单失败,订单号:%s", preOrder.OrderSn)
logger.Errorf("handleReduceFilled 获取主单失败,订单号:%s", preOrder.OrderSn)
return
}
parentPrice := utility.StrToDecimal(parentOrder.Price)
@ -353,7 +357,7 @@ func removeFutLossAndAddPosition(preOrder *DbModels.LinePreOrder) {
// preOrder 主单
func handleFutMainOrderFilled(db *gorm.DB, preOrder *models.LinePreOrder) {
orders := []models.LinePreOrder{}
tradeSet, _ := GetTradeSet(preOrder.Symbol, 0)
tradeSet, _ := GetTradeSet(preOrder.Symbol, 1)
if tradeSet.Coin == "" {
logger.Error("获取交易对失败")
@ -366,6 +370,10 @@ func handleFutMainOrderFilled(db *gorm.DB, preOrder *models.LinePreOrder) {
}
if preOrder.OrderCategory == 3 {
if err := db.Model(&DbModels.LinePreOrderStatus{}).Where("order_id = ?", preOrder.MainId).Update("add_position_status", 1).Error; err != nil {
logger.Errorf("更新主单加仓状态失败, 主单号:%s, 错误信息:%v", preOrder.MainId, err)
}
if err := cancelSymbolTakeAndStop(db, preOrder.MainId, preOrder.SymbolType); err != nil {
logger.Errorf("取消止盈止损订单失败 orderSn:%s err:%v", preOrder.OrderSn, err)
}