优化代码

This commit is contained in:
yhydev
2026-01-03 22:04:36 +08:00
parent d0fe4159d2
commit cc434d5108

View File

@@ -198,7 +198,7 @@ def submit_job(timeframe: str, timerange: str, pairs_chunk: List[str],
json={ json={
"name": f"backtest-{strategy}-{job_id}", "name": f"backtest-{strategy}-{job_id}",
"parameters": {"shell_script": script}, "parameters": {"shell_script": script},
"tags": [strategy, timeframe, timerange, start_datetime] "tags": [strategy, timeframe, timerange]
} }
) )
@@ -222,7 +222,7 @@ mkdir -p user_data/backtest_results/{start_datetime}
freqtrade backtesting \ freqtrade backtesting \
--timeframe {timeframe} \ --timeframe {timeframe} \
--timerange {timerange} \ --timerange {timerange} \
--pairs {, start_datetime' '.join(pairs_chunk)} \ --pairs {' '.join(pairs_chunk)} \
--strategy {strategy} \ --strategy {strategy} \
--export trades \ --export trades \
--export-directory user_data/backtest_results/{start_datetime}/job_{job_id}.json \ --export-directory user_data/backtest_results/{start_datetime}/job_{job_id}.json \
@@ -245,6 +245,7 @@ def main():
parser.add_argument("--max-pairs", type=int, help="Maximum pairs per job (higher priority than --jobs)") parser.add_argument("--max-pairs", type=int, help="Maximum pairs per job (higher priority than --jobs)")
parser.add_argument("--jobs", type=int, help="Number of jobs to create (ignored if --max-pairs is specified)") parser.add_argument("--jobs", type=int, help="Number of jobs to create (ignored if --max-pairs is specified)")
parser.add_argument("--strategy", required=True, help="Strategy to use for backtest") parser.add_argument("--strategy", required=True, help="Strategy to use for backtest")
parser.add_argument("--name", required=True, help="Name of the backtest")
parser.add_argument("--config", type=str, default="user_data/config.json", help="Config file path, default: user_data/config.json") parser.add_argument("--config", type=str, default="user_data/config.json", help="Config file path, default: user_data/config.json")
args = parser.parse_args() args = parser.parse_args()
@@ -262,7 +263,7 @@ def main():
# Split pairs into chunks # Split pairs into chunks
pair_chunks = split_pairs(filtered_pairs, args.jobs, args.max_pairs) pair_chunks = split_pairs(filtered_pairs, args.jobs, args.max_pairs)
dt = datetime.datetime.now().strftime("%Y%m%d%H%M%S") dt = args.name + "_" + datetime.datetime.now().strftime("%Y%m%d%H%M%S")
# Submit jobs # Submit jobs
for i, chunk in enumerate(pair_chunks): for i, chunk in enumerate(pair_chunks):