remove dryrun log

This commit is contained in:
zhangkun9038@dingtalk.com 2025-05-14 02:44:25 +00:00
parent 8d071d1ef6
commit 114a0b584d
2 changed files with 7 additions and 31 deletions

View File

@ -3,9 +3,13 @@ from pandas import DataFrame
import numpy as np
import os
import datetime
import time
import pandas as pd
import talib.abstract as ta
import freqtrade.vendor.qtpylib.indicators as qtpylib
from freqtrade.persistence import Trade # 必须导入 Trade 类
from tempfile import NamedTemporaryFile
import shutil
class TheForceV7(IStrategy):
@ -145,6 +149,7 @@ class TheForceV7(IStrategy):
return dataframe
def populate_exit_trend(self, dataframe: DataFrame, metadata: dict) -> DataFrame:
dataframe.loc[
(
@ -192,35 +197,5 @@ class TheForceV7(IStrategy):
),
'exit_long'] = 1
return dataframe
def confirm_trade_entry(self, pair: str, order_type: str, amount: float, rate: float,
time_in_force: str, current_time: datetime, **kwargs) -> bool:
log_path = './user_data/dryrun_results/dry_run_trades.csv'
# 自动创建目录
os.makedirs(os.path.dirname(log_path), exist_ok=True)
# 写入日志
with open(log_path, 'a') as f:
f.write(f"{pair},{current_time},,,{rate},,{amount},,,,,,,,\n")
return True
def confirm_trade_exit(self, pair: str, trade: 'Trade', order_type: str, amount: float,
rate: float, time_in_force: str, exit_reason: str, current_time: 'datetime', **kwargs) -> bool:
log_path = './user_data/dryrun_results/dry_run_trades.csv'
# 自动创建目录
os.makedirs(os.path.dirname(log_path), exist_ok=True)
# 计算盈亏
profit_ratio = trade.calc_profit_ratio(rate)
profit_abs = trade.calc_profit(rate)
trade_duration = (current_time - trade.open_date).total_seconds() / 60
# 获取 min_rate 和 max_rate
df = self.trade_data.get(pair)
min_rate = max_rate = rate
if df is not None:
trade_period = df[(df['date'] >= trade.open_date) & (df['date'] <= current_time)]
min_rate = trade_period['low'].min() if not trade_period.empty else rate
max_rate = trade_period['high'].max() if not trade_period.empty else rate
# 写入日志
with open(log_path, 'a') as f:
f.write(f"{pair},{trade.open_date},{current_time},{trade.open_rate},{rate},"
f"{amount},{profit_ratio},{profit_abs},{exit_reason},"
f"{trade.fee_open},{trade.fee_close},{trade_duration},{min_rate},{max_rate}\n")
return True

View File

@ -8,6 +8,7 @@ cd ../
source .venv/bin/activate
rm -rf user_data/models/*
rm -rf ./freqtrade/user_data/data/backtest_results/*
rm -fr ./user_data/dryrun_results/*
#docker-compose -f docker-compose_backtest.yml run --rm freqtrade >output.log 2>&1
freqtrade backtesting \