[fix] notife
This commit is contained in:
parent
7bb439f8d3
commit
2288f0ffe2
|
@ -47,6 +47,7 @@ exchangeStrategies:
|
||||||
profitRange: 2%
|
profitRange: 2%
|
||||||
lossRange: 1%
|
lossRange: 1%
|
||||||
amount: 20
|
amount: 20
|
||||||
|
place: true
|
||||||
# recalculate: false
|
# recalculate: false
|
||||||
# dry_run: false
|
# dry_run: false
|
||||||
# # quantity: 3
|
# # quantity: 3
|
||||||
|
|
|
@ -32,6 +32,7 @@ type Strategy struct {
|
||||||
Interval types.Interval `json:"interval"`
|
Interval types.Interval `json:"interval"`
|
||||||
NrCount int `json:"nrCount"`
|
NrCount int `json:"nrCount"`
|
||||||
StrictMode bool `json:"strictMode"`
|
StrictMode bool `json:"strictMode"`
|
||||||
|
Place bool `json:"place"`
|
||||||
DryRun bool `json:"dryRun"`
|
DryRun bool `json:"dryRun"`
|
||||||
CCIWindow int `json:"cciWindow"`
|
CCIWindow int `json:"cciWindow"`
|
||||||
LongCCI fixedpoint.Value `json:"longCCI"`
|
LongCCI fixedpoint.Value `json:"longCCI"`
|
||||||
|
@ -39,6 +40,7 @@ type Strategy struct {
|
||||||
Leverage fixedpoint.Value `json:"leverage"`
|
Leverage fixedpoint.Value `json:"leverage"`
|
||||||
ProfitRange fixedpoint.Value `json:"profitRange"`
|
ProfitRange fixedpoint.Value `json:"profitRange"`
|
||||||
LossRange fixedpoint.Value `json:"lossRange"`
|
LossRange fixedpoint.Value `json:"lossRange"`
|
||||||
|
|
||||||
qbtrade.QuantityOrAmount
|
qbtrade.QuantityOrAmount
|
||||||
|
|
||||||
//Position *types.Position `persistence:"position"`
|
//Position *types.Position `persistence:"position"`
|
||||||
|
@ -151,10 +153,19 @@ func (s *Strategy) generateOrders(ctx context.Context, kline types.KLine) ([]typ
|
||||||
//midPrice := (kline.High.Add(kline.Low)).Div(fixedpoint.Value(2.0))
|
//midPrice := (kline.High.Add(kline.Low)).Div(fixedpoint.Value(2.0))
|
||||||
//midP := (kline.High + kline.Low) / 2
|
//midP := (kline.High + kline.Low) / 2
|
||||||
if s.TradeType[symbol] == "long" {
|
if s.TradeType[symbol] == "long" {
|
||||||
placePrice = kline.High
|
if s.Place {
|
||||||
|
placePrice = kline.High
|
||||||
|
} else {
|
||||||
|
placePrice = kline.Low
|
||||||
|
}
|
||||||
//placePrice = midP
|
//placePrice = midP
|
||||||
} else if s.TradeType[symbol] == "short" {
|
} else if s.TradeType[symbol] == "short" {
|
||||||
placePrice = kline.Low
|
if s.Place {
|
||||||
|
placePrice = kline.Low
|
||||||
|
} else {
|
||||||
|
placePrice = kline.High
|
||||||
|
}
|
||||||
|
|
||||||
//placePrice = midP
|
//placePrice = midP
|
||||||
} else {
|
} else {
|
||||||
return orders, nil
|
return orders, nil
|
||||||
|
@ -290,7 +301,7 @@ func (s *Strategy) notifyProfit(ctx context.Context, symbol string) {
|
||||||
}
|
}
|
||||||
|
|
||||||
msg := fmt.Sprintf("交易完成:\n 币种: %s, 方向:%v, 收益:%v, 手续费:%v \n Trade详情:\n 开仓Trade:\n %s\n 清仓Trade:\n %s",
|
msg := fmt.Sprintf("交易完成:\n 币种: %s, 方向:%v, 收益:%v, 手续费:%v \n Trade详情:\n 开仓Trade:\n %s\n 清仓Trade:\n %s",
|
||||||
symbol, s.TradeType, profit, free.Float64(), strings.Join(openMsgs, "\n"), strings.Join(endMsgs, "\n"))
|
symbol, s.TradeType[symbol], profit, free.Float64(), strings.Join(openMsgs, "\n"), strings.Join(endMsgs, "\n"))
|
||||||
log.Infof(msg)
|
log.Infof(msg)
|
||||||
qbtrade.Notify(msg)
|
qbtrade.Notify(msg)
|
||||||
|
|
||||||
|
@ -412,7 +423,7 @@ func (s *Strategy) Run(ctx context.Context, orderExecutor qbtrade.OrderExecutor,
|
||||||
order, order.OrderID, orderSymbol, order.Type, order.Status)
|
order, order.OrderID, orderSymbol, order.Type, order.Status)
|
||||||
s.Traded[orderSymbol] = true
|
s.Traded[orderSymbol] = true
|
||||||
s.TradeRetry[orderSymbol] = 0
|
s.TradeRetry[orderSymbol] = 0
|
||||||
qbtrade.Notify("订单成交通知:\n 币种:%s, 方向:%s, 价格:%s, 数量:%s", order.Symbol, s.TradeType,
|
qbtrade.Notify("订单成交通知:\n 币种:%s, 方向:%s, 价格:%s, 数量:%s", order.Symbol, s.TradeType[orderSymbol],
|
||||||
order.Price, order.Quantity)
|
order.Price, order.Quantity)
|
||||||
}
|
}
|
||||||
if order.Type == types.OrderTypeLimit && order.Side == types.SideTypeSell {
|
if order.Type == types.OrderTypeLimit && order.Side == types.SideTypeSell {
|
||||||
|
@ -420,7 +431,7 @@ func (s *Strategy) Run(ctx context.Context, orderExecutor qbtrade.OrderExecutor,
|
||||||
order, order.OrderID, orderSymbol, order.Type, order.Status)
|
order, order.OrderID, orderSymbol, order.Type, order.Status)
|
||||||
s.Traded[orderSymbol] = true
|
s.Traded[orderSymbol] = true
|
||||||
s.TradeRetry[orderSymbol] = 0
|
s.TradeRetry[orderSymbol] = 0
|
||||||
qbtrade.Notify("订单成交通知:\n 币种:%s, 方向:%s, 价格:%s, 数量:%s", order.Symbol, s.TradeType,
|
qbtrade.Notify("订单成交通知:\n 币种:%s, 方向:%s, 价格:%s, 数量:%s", order.Symbol, s.TradeType[orderSymbol],
|
||||||
order.Price, order.Quantity)
|
order.Price, order.Quantity)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user