Pharos
Log

LogProfitReset()

重置收益统计,支持清空所有数据或保留最近N条记录。

语法

python
LogProfitReset()           # 清空所有收益数据
LogProfitReset(keep_count) # 保留最近 keep_count 条数据

参数

参数名类型必填说明
keep_countint保留最近N条收益数据,默认 0 表示清空所有数据

返回值

说明

LogProfitReset() 用于重置收益统计,支持两种模式:

  1. 清空模式 (keep_count=0,默认):删除所有收益历史数据,重新开始统计
  2. 保留模式 (keep_count>0):只保留最近 N 条收益记录,删除更早的数据

重置操作会记录到数据库,并在日志中显示相应信息。

示例

基本用法 - 清空所有数据

python
def init():
    # 策略启动时重置收益,清空所有历史数据
    LogProfitReset()
    Log("✅ 收益统计已重置(清空所有数据)")

保留最近数据

python
def init():
    # 只保留最近 100 条收益记录
    LogProfitReset(100)
    Log("✅ 收益统计已重置(保留最近100条)")
    
    # 只保留最近 10 条收益记录
    LogProfitReset(10)
    Log("✅ 收益统计已重置(保留最近10条)")

定期清理旧数据

python
def main():
    last_cleanup_time = time.time()
    
    while True:
        # 每7天清理一次旧数据,只保留最近500条
        if time.time() - last_cleanup_time > 7 * 86400:
            LogProfitReset(500)
            Log("🧹 已清理旧收益数据,保留最近500条")
            last_cleanup_time = time.time()
        
        # 交易逻辑...
        profit = do_trade()
        LogProfit(profit)
        
        Sleep(60000)

参数调整后重置

python
def main():
    current_params = get_params()
    
    while True:
        new_params = get_params()
        
        # 参数变化时完全重置收益
        if new_params != current_params:
            LogProfitReset()  # 清空所有数据
            Log("⚙️ 参数已调整,重置收益统计")
            current_params = new_params
        
        # 交易逻辑...
        Sleep(60000)

数据库空间管理

python
def main():
    trade_count = 0
    
    while True:
        # 执行交易...
        profit = do_trade()
        LogProfit(profit)
        trade_count += 1
        
        # 每1000笔交易后,只保留最近300条记录
        if trade_count % 1000 == 0:
            LogProfitReset(300)
            Log(f"📊 已完成 {trade_count} 笔交易,保留最近300条记录")
        
        Sleep(1000)

使用建议

何时使用清空模式 (keep_count=0)

  • ✅ 策略参数发生重大调整
  • ✅ 切换交易币种或市场
  • ✅ 重新开始回测或实盘
  • ✅ 收益曲线异常需要重置

何时使用保留模式 (keep_count>0)

  • ✅ 定期清理旧数据节省存储空间
  • ✅ 保持收益曲线连续性,只删除过早数据
  • ✅ 数据库文件过大需要瘦身
  • ✅ 只关注最近一段时间的收益表现

推荐的 keep_count 值

策略类型推荐值说明
高频策略500-1000保留最近几小时的数据
日内策略200-500保留最近几天的数据
中长期策略100-300保留最近几周的数据
网格策略300-500保留最近的网格交易记录

注意事项

⚠️ 数据删除不可恢复:重置操作会永久删除收益数据,请谨慎使用

⚠️ 影响收益曲线:删除数据后收益曲线会从删除点重新开始

💡 性能考虑:删除大量数据时可能需要几秒钟,建议在非交易时段执行

💡 备份建议:重要数据删除前建议先备份数据库文件

相关函数