From 4ef72a93cde3c40cd7d56bd835409872f2d22a91 Mon Sep 17 00:00:00 2001 From: Ubuntu Date: Fri, 8 Aug 2025 16:31:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=AF=E6=8C=81pairRemoteList?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tools/backtest.sh | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/tools/backtest.sh b/tools/backtest.sh index c3877e89..4cb3b672 100755 --- a/tools/backtest.sh +++ b/tools/backtest.sh @@ -24,7 +24,30 @@ echo "Using testBranch: $TEST_BRANCH" # Parse command line arguments START_DATE=${1:-$(date -d "2 days ago" +"%Y%m%d")} END_DATE=${2:-$(date -d "tomorrow" +"%Y%m%d")} -PAIRS_ARG=${3:-""} # Optional --pairs argument for docker-compose +# Fetch pairlist from API or use default values +if [ -z "$3" ]; then + # Check if END_DATE is greater than 2025-08-05 + END_DATE_TS=$(date -d "$END_DATE_RAW" +"%s") + CUTOFF_DATE_TS=$(date -d "2025-08-05" +"%s") + + if [ "$END_DATE_TS" -gt "$CUTOFF_DATE_TS" ]; then + echo "Fetching pairlist from API with date: $END_DATE_RAW..." + PAIRS_RESPONSE=$(curl -s "http://pairlist.xl.home/api/pairlist?mute=true&count=30&date=$END_DATE_RAW") + PAIRS_ARG=$(echo "$PAIRS_RESPONSE" | jq -r '.pairlist | join(",")') + else + echo "Using static default pairlist..." + PAIRS_ARG="BTC/USDT,ETH/USDT,LTC/USDT" + fi +else + PAIRS_ARG="$3" +fi + +# If PAIRS_ARG is provided, format it for docker-compose +if [ -n "$PAIRS_ARG" ]; then + PAIRS_FLAG="--pairs $PAIRS_ARG" +else + PAIRS_FLAG="" +fi PARAMS_NAME=$(echo "$STRATEGY_NAME" | tr '[:upper:]' '[:lower:]') # If PAIRS_ARG is provided, format it for docker-compose if [ -n "$PAIRS_ARG" ]; then