fix
This commit is contained in:
parent
658db450ec
commit
9aa25a1582
@ -395,6 +395,19 @@ class GridManager:
|
||||
self.total_invested = trade.stake_amount
|
||||
self.avg_entry_price = trade.open_rate
|
||||
|
||||
# 重新初始化 grid_levels(仅保留当前持仓)
|
||||
self.grid_levels.clear()
|
||||
if self.total_quantity > 0 and self.avg_entry_price > 0:
|
||||
# 创建一个体现当前持仓的网格点
|
||||
# 依据平均价格找最接近的网格位置
|
||||
grid_price = round(self.avg_entry_price / self.step) * self.step
|
||||
self.grid_levels[grid_price] = GridLevel(
|
||||
price=grid_price,
|
||||
quantity=self.total_quantity,
|
||||
entry_time=candle_index,
|
||||
status="open"
|
||||
)
|
||||
|
||||
# 如果 trade 有多个 entry(加仓的情况)
|
||||
if hasattr(trade, 'trades') and trade.trades:
|
||||
entries = [t for t in trade.trades if t.entry_side == 'entry']
|
||||
@ -403,7 +416,8 @@ class GridManager:
|
||||
print(f"[GridManager] {self.pair} 从 Trade 对象同步状态 - "
|
||||
f"持仓: {self.total_quantity:.6f}, "
|
||||
f"投入: {self.total_invested:.2f} USDT, "
|
||||
f"平均价: {self.avg_entry_price:.2f}",
|
||||
f"平均价: {self.avg_entry_price:.2f}, "
|
||||
f"网格点数: {len(self.grid_levels)}",
|
||||
file=sys.stderr, flush=True)
|
||||
|
||||
def record_pending_order(self, order_id: str, adjustment: PositionRecord) -> None:
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user