Last active 2 days ago

1.log Raw
1❯ vitest run src/mastra/super/skills/backtest-runner/skill.spec.ts
2
3 RUN v4.0.16 /home/dex/Документы/Work/santiment-ai/strategy-agent
4
5stdout | src/mastra/super/skills/backtest-runner/skill.spec.ts > Backtest Runner: Copytrading Strategy Test (Real Docker) > should successfully prepare env, fetch data, and run freqtrade via docker
6[Isolation] Environment prepared for run 9c19c475-6cf9-4474-a93c-7d45338d033b
7
8stdout | src/mastra/super/skills/backtest-runner/skill.spec.ts > Backtest Runner: Copytrading Strategy Test (Real Docker) > should successfully prepare env, fetch data, and run freqtrade via docker
9[RunBacktest] Enforcing config overrides: {
10 trading_mode: 'futures',
11 margin_mode: 'isolated',
12 dataformat_ohlcv: 'json',
13 dataformat_trades: 'json'
14}
15
16stdout | src/mastra/super/skills/backtest-runner/skill.spec.ts > Backtest Runner: Copytrading Strategy Test (Real Docker) > should successfully prepare env, fetch data, and run freqtrade via docker
17[DataFetcher] Downloading 1 pairs...
18
19stdout | src/mastra/super/skills/backtest-runner/skill.spec.ts > Backtest Runner: Copytrading Strategy Test (Real Docker) > should successfully prepare env, fetch data, and run freqtrade via docker
20[DataFetcher] Completed. Processed: 1
21
22stdout | src/mastra/super/skills/backtest-runner/skill.spec.ts > Backtest Runner: Copytrading Strategy Test (Real Docker) > should successfully prepare env, fetch data, and run freqtrade via docker
23Checking/Rebuilding Docker image "mastra-freqtrade:latest"...
24Docker command: cd /home/dex/Документы/Work/santiment-ai/strategy-agent/docker/freqtrade && docker build -t mastra-freqtrade:latest .
25
26stdout | src/mastra/super/skills/backtest-runner/skill.spec.ts > Backtest Runner: Copytrading Strategy Test (Real Docker) > should successfully prepare env, fetch data, and run freqtrade via docker
27Sending build context to Docker daemon 221.2kB
28Step 1/7 : FROM freqtradeorg/freqtrade:stable
29 ---> dfd23153a7f2
30Step 2/7 : COPY requirements.txt /freqtrade/
31 ---> Using cache
32 ---> 2d950a4622c1
33Step 3/7 : RUN pip install --no-cache-dir -r /freqtrade/requirements.txt
34 ---> Using cache
35 ---> 298f67123821
36Step 4/7 : COPY add_pair.py /freqtrade/add_pair.py
37 ---> Using cache
38 ---> e3274112fd45
39Step 5/7 : COPY pairs.json /freqtrade/pairs.json
40 ---> Using cache
41 ---> d4fc1270df5a
42Step 6/7 : COPY exchange.py /freqtrade/freqtrade/exchange/exchange.py
43 ---> Using cache
44 ---> 04e7579357c7
45Step 7/7 : RUN python /freqtrade/add_pair.py
46 ---> Using cache
47 ---> 2d26f279b9b1
48Successfully built 2d26f279b9b1
49Successfully tagged mastra-freqtrade:latest
50
51Docker image "mastra-freqtrade:latest" is ready ✅
52
53stdout | src/mastra/super/skills/backtest-runner/skill.spec.ts > Backtest Runner: Copytrading Strategy Test (Real Docker) > should successfully prepare env, fetch data, and run freqtrade via docker
54[DOCKER CMD] docker run --rm --memory 1g -v "/home/dex/Документы/Work/santiment-ai/strategy-agent/data/freqtrade_runs/9c19c475-6cf9-4474-a93c-7d45338d033b:/freqtrade/user_data" -v "/home/dex/Документы/Work/santiment-ai/strategy-agent/data/market_cache/binance:/freqtrade/user_data/data/binance" mastra-freqtrade:latest backtesting --config /freqtrade/user_data/config.json --strategy Strategy --timerange 20251201-20251230 --export trades --data-format-ohlcv json --logfile /freqtrade/user_data/logs/freqtrade.log
55
56stdout | src/mastra/super/skills/backtest-runner/skill.spec.ts > Backtest Runner: Copytrading Strategy Test (Real Docker) > should successfully prepare env, fetch data, and run freqtrade via docker
57Backtest result: {
58 success: true,
59 runId: '9c19c475-6cf9-4474-a93c-7d45338d033b',
60 logTail: 'Result for strategy Strategy\n' +
61 ' BACKTESTING REPORT \n' +
62 '┏━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓\n' +
63 '┃ Pair ┃ Trades ┃ Avg Profit % ┃ Tot Profit USDT ┃ Tot Profit % ┃ Avg Duration ┃ Win Draw Loss Win% ┃\n' +
64 '┡━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩\n' +
65 '│ BTC/USDT:USDT │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │\n' +
66 '│ TOTAL │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │\n' +
67 '└───────────────┴────────┴──────────────┴─────────────────┴──────────────┴─────────────────┴────────────────────────┘\n' +
68 ' LEFT OPEN TRADES REPORT \n' +
69 '┏━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓\n' +
70 '┃ Pair ┃ Trades ┃ Avg Profit % ┃ Tot Profit USDT ┃ Tot Profit % ┃ Avg Duration ┃ Win Draw Loss Win% ┃\n' +
71 '┡━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩\n' +
72 '│ BTC/USDT:USDT │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │\n' +
73 '│ TOTAL │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │\n' +
74 '└───────────────┴────────┴──────────────┴─────────────────┴──────────────┴─────────────────┴────────────────────────┘\n' +
75 ' ENTER TAG STATS \n' +
76 '┏━━━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓\n' +
77 '┃ Enter Tag ┃ Entries ┃ Avg Profit % ┃ Tot Profit USDT ┃ Tot Profit % ┃ Avg Duration ┃ Win Draw Loss Win% ┃\n' +
78 '┡━━━━━━━━━━━╇━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩\n' +
79 '│ OTHER │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │\n' +
80 '│ TOTAL │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │\n' +
81 '└───────────┴─────────┴──────────────┴─────────────────┴──────────────┴─────────────────┴────────────────────────┘\n' +
82 ' EXIT REASON STATS \n' +
83 '┏━━━━━━━━━━━━━┳━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓\n' +
84 '┃ Exit Reason ┃ Exits ┃ Avg Profit % ┃ Tot Profit USDT ┃ Tot Profit % ┃ Avg Duration ┃ Win Draw Loss Win% ┃\n' +
85 '┡━━━━━━━━━━━━━╇━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩\n' +
86 '│ force_exit │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │\n' +
87 '│ TOTAL │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │\n' +
88 '└─────────────┴───────┴──────────────┴─────────────────┴──────────────┴─────────────────┴────────────────────────┘\n' +
89 ' MIXED TAG STATS \n' +
90 '┏━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓\n' +
91 '┃ Enter Tag ┃ Exit Reason ┃ Trades ┃ Avg Profit % ┃ Tot Profit USDT ┃ Tot Profit % ┃ Avg Duration ┃ Win Draw Loss Win% ┃\n' +
92 '┡━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩\n' +
93 '│ │ force_exit │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │\n' +
94 '│ TOTAL │ │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │\n' +
95 '└───────────┴─────────────┴────────┴──────────────┴─────────────────┴──────────────┴─────────────────┴────────────────────────┘\n' +
96 ' SUMMARY METRICS \n' +
97 '┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\n' +
98 '┃ Metric ┃ Value ┃\n' +
99 '┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩\n' +
100 '│ Backtesting from │ 2025-12-09 00:00:00 │\n' +
101 '│ Backtesting to │ 2025-12-30 00:00:00 │\n' +
102 '│ Trading Mode │ Isolated Futures │\n' +
103 '│ Max open trades │ 1 │\n' +
104 '│ │ │\n' +
105 '│ Total/Daily Avg Trades │ 1 / 0.05 │\n' +
106 '│ Starting balance │ 1000 USDT │\n' +
107 '│ Final balance │ 998.389 USDT │\n' +
108 '│ Absolute profit │ -1.611 USDT │\n' +
109 '│ Total profit % │ -0.16% │\n' +
110 '│ CAGR % │ -2.76% │\n' +
111 '│ Sortino │ -100.00 │\n' +
112 '│ Sharpe │ -100.00 │\n' +
113 '│ Calmar │ -90.98 │\n' +
114 '│ SQN │ -100.00 │\n' +
115 '│ Profit factor │ 0.00 │\n' +
116 '│ Expectancy (Ratio) │ -1.61 (-1.00) │\n' +
117 '│ Avg. daily profit │ -0.077 USDT │\n' +
118 '│ Avg. stake amount │ 88.531 USDT │\n' +
119 '│ Total trade volume │ 175.751 USDT │\n' +
120 '│ │ │\n' +
121 '│ Best Pair │ BTC/USDT:USDT -0.16% │\n' +
122 '│ Worst Pair │ BTC/USDT:USDT -0.16% │\n' +
123 '│ Best trade │ BTC/USDT:USDT -1.82% │\n' +
124 '│ Worst trade │ BTC/USDT:USDT -1.82% │\n' +
125 '│ Best day │ -1.611 USDT │\n' +
126 '│ Worst day │ -1.611 USDT │\n' +
127 '│ Days win/draw/lose │ 0 / 0 / 1 │\n' +
128 '│ Min/Max/Avg. Duration Winners │ 0d 00:00 / 0d 00:00 / 0d 00:00 │\n' +
129 '│ Min/Max/Avg. Duration Losers │ 7d 00:00 / 7d 00:00 / 7d 00:00 │\n' +
130 '│ Max Consecutive Wins / Loss │ 0 / 1 │\n' +
131 '│ Rejected Entry signals │ 0 │\n' +
132 '│ Entry/Exit Timeouts │ 0 / 0 │\n' +
133 '│ │ │\n' +
134 '│ Min balance │ 998.389 USDT │\n' +
135 '│ Max balance │ 998.389 USDT │\n' +
136 '│ Max % of account underwater │ 0.16% │\n' +
137 '│ Absolute drawdown │ 1.611 USDT (0.16%) │\n' +
138 '│ Drawdown duration │ 0 days 00:00:00 │\n' +
139 '│ Profit at drawdown start │ 0 USDT │\n' +
140 '│ Profit at drawdown end │ -1.611 USDT │\n' +
141 '│ Drawdown start │ 2025-12-30 00:00:00 │\n' +
142 '│ Drawdown end │ 2025-12-30 00:00:00 │\n' +
143 '│ Market change │ -4.60% │\n' +
144 '└───────────────────────────────┴────────────────────────────────┘\n' +
145 '\n' +
146 'Backtested 2025-12-09 00:00:00 -> 2025-12-30 00:00:00 | Max open trades : 1\n' +
147 ' STRATEGY SUMMARY \n' +
148 '┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓\n' +
149 '┃ Strategy ┃ Trades ┃ Avg Profit % ┃ Tot Profit USDT ┃ Tot Profit % ┃ Avg Duration ┃ Win Draw Loss Win% ┃ Drawdown ┃\n' +
150 '┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩\n' +
151 '│ Strategy │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │ 1.611 USDT 0.16% │\n' +
152 '└──────────┴────────┴──────────────┴─────────────────┴──────────────┴─────────────────┴────────────────────────┴───────────────────┘\n' +
153 '2026-01-09 13:21:46,122 - freqtrade - INFO - freqtrade 2025.12\n' +
154 '2026-01-09 13:21:46,652 - numexpr.utils - INFO - NumExpr defaulting to 8 threads.\n' +
155 '2026-01-09 13:21:48,161 - freqtrade.configuration.load_config - INFO - Using config: /freqtrade/user_data/config.json ...\n' +
156 '2026-01-09 13:21:48,164 - freqtrade.loggers - INFO - Enabling colorized output.\n' +
157 '2026-01-09 13:21:48,164 - freqtrade.loggers - INFO - Logfile configured\n' +
158 '2026-01-09 13:21:48,165 - freqtrade.loggers - INFO - Verbosity set to 0\n' +
159 '2026-01-09 13:21:48,165 - freqtrade.configuration.configuration - INFO - Using max_open_trades: None ...\n' +
160 '2026-01-09 13:21:48,166 - freqtrade.configuration.configuration - INFO - Parameter --timerange detected: 20251201-20251230 ...\n' +
161 '2026-01-09 13:21:48,179 - freqtrade.configuration.configuration - INFO - Using user-data directory: /freqtrade/user_data ...\n' +
162 '2026-01-09 13:21:48,179 - freqtrade.configuration.configuration - INFO - Using data directory: /freqtrade/user_data/data/binance ...\n' +
163 '2026-01-09 13:21:48,180 - freqtrade.configuration.configuration - INFO - Parameter --export detected: trades ...\n' +
164 '2026-01-09 13:21:48,180 - freqtrade.configuration.configuration - INFO - Parameter --cache=day detected ...\n' +
165 '2026-01-09 13:21:48,180 - freqtrade.configuration.configuration - INFO - Using "json" to store OHLCV data.\n' +
166 '2026-01-09 13:21:48,181 - freqtrade.configuration.configuration - INFO - Filter trades by timerange: 20251201-20251230\n' +
167 '2026-01-09 13:21:48,181 - freqtrade.exchange.check_exchange - INFO - Checking exchange...\n' +
168 '2026-01-09 13:21:48,192 - freqtrade.exchange.check_exchange - INFO - Exchange "binance" is officially supported by the Freqtrade developm'... 27101 more characters
169}
170
171stdout | src/mastra/super/skills/backtest-runner/skill.spec.ts > Backtest Runner: Copytrading Strategy Test (Real Docker)
172[Test Info] Artifacts preserved for threadId: copytrading-test-1767964901498
173
174 ❯ src/mastra/super/skills/backtest-runner/skill.spec.ts (1 test | 1 failed) 23712ms
175 ❯ Backtest Runner: Copytrading Strategy Test (Real Docker) (1)
176 × should successfully prepare env, fetch data, and run freqtrade via docker 23711ms
177
178⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
179
180 FAIL src/mastra/super/skills/backtest-runner/skill.spec.ts > Backtest Runner: Copytrading Strategy Test (Real Docker) > should successfully prepare env, fetch data, and run freqtrade via docker
181AssertionError: expected 'Result for strategy Strategy\n …' to match /TOTAL\s+1\s+-1.82\s+-1.611\s+-0.16\s+…/
182
183- Expected:
184/TOTAL\s+1\s+-1.82\s+-1.611\s+-0.16\s+7 days, 0:00:00\s+0\s+0\s+1\s+0/
185
186+ Received:
187"Result for strategy Strategy
188 BACKTESTING REPORT
189┏━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓
190┃ Pair ┃ Trades ┃ Avg Profit % ┃ Tot Profit USDT ┃ Tot Profit % ┃ Avg Duration ┃ Win Draw Loss Win% ┃
191┡━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩
192│ BTC/USDT:USDT │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │
193│ TOTAL │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │
194└───────────────┴────────┴──────────────┴─────────────────┴──────────────┴─────────────────┴────────────────────────┘
195 LEFT OPEN TRADES REPORT
196┏━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓
197┃ Pair ┃ Trades ┃ Avg Profit % ┃ Tot Profit USDT ┃ Tot Profit % ┃ Avg Duration ┃ Win Draw Loss Win% ┃
198┡━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩
199│ BTC/USDT:USDT │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │
200│ TOTAL │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │
201└───────────────┴────────┴──────────────┴─────────────────┴──────────────┴─────────────────┴────────────────────────┘
202 ENTER TAG STATS
203┏━━━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓
204┃ Enter Tag ┃ Entries ┃ Avg Profit % ┃ Tot Profit USDT ┃ Tot Profit % ┃ Avg Duration ┃ Win Draw Loss Win% ┃
205┡━━━━━━━━━━━╇━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩
206│ OTHER │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │
207│ TOTAL │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │
208└───────────┴─────────┴──────────────┴─────────────────┴──────────────┴─────────────────┴────────────────────────┘
209 EXIT REASON STATS
210┏━━━━━━━━━━━━━┳━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓
211┃ Exit Reason ┃ Exits ┃ Avg Profit % ┃ Tot Profit USDT ┃ Tot Profit % ┃ Avg Duration ┃ Win Draw Loss Win% ┃
212┡━━━━━━━━━━━━━╇━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩
213│ force_exit │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │
214│ TOTAL │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │
215└─────────────┴───────┴──────────────┴─────────────────┴──────────────┴─────────────────┴────────────────────────┘
216 MIXED TAG STATS
217┏━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓
218┃ Enter Tag ┃ Exit Reason ┃ Trades ┃ Avg Profit % ┃ Tot Profit USDT ┃ Tot Profit % ┃ Avg Duration ┃ Win Draw Loss Win% ┃
219┡━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩
220│ │ force_exit │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │
221│ TOTAL │ │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │
222└───────────┴─────────────┴────────┴──────────────┴─────────────────┴──────────────┴─────────────────┴────────────────────────┘
223 SUMMARY METRICS
224┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
225┃ Metric ┃ Value ┃
226┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
227│ Backtesting from │ 2025-12-09 00:00:00 │
228│ Backtesting to │ 2025-12-30 00:00:00 │
229│ Trading Mode │ Isolated Futures │
230│ Max open trades │ 1 │
231│ │ │
232│ Total/Daily Avg Trades │ 1 / 0.05 │
233│ Starting balance │ 1000 USDT │
234│ Final balance │ 998.389 USDT │
235│ Absolute profit │ -1.611 USDT │
236│ Total profit % │ -0.16% │
237│ CAGR % │ -2.76% │
238│ Sortino │ -100.00 │
239│ Sharpe │ -100.00 │
240│ Calmar │ -90.98 │
241│ SQN │ -100.00 │
242│ Profit factor │ 0.00 │
243│ Expectancy (Ratio) │ -1.61 (-1.00) │
244│ Avg. daily profit │ -0.077 USDT │
245│ Avg. stake amount │ 88.531 USDT │
246│ Total trade volume │ 175.751 USDT │
247│ │ │
248│ Best Pair │ BTC/USDT:USDT -0.16% │
249│ Worst Pair │ BTC/USDT:USDT -0.16% │
250│ Best trade │ BTC/USDT:USDT -1.82% │
251│ Worst trade │ BTC/USDT:USDT -1.82% │
252│ Best day │ -1.611 USDT │
253│ Worst day │ -1.611 USDT │
254│ Days win/draw/lose │ 0 / 0 / 1 │
255│ Min/Max/Avg. Duration Winners │ 0d 00:00 / 0d 00:00 / 0d 00:00 │
256│ Min/Max/Avg. Duration Losers │ 7d 00:00 / 7d 00:00 / 7d 00:00 │
257│ Max Consecutive Wins / Loss │ 0 / 1 │
258│ Rejected Entry signals │ 0 │
259│ Entry/Exit Timeouts │ 0 / 0 │
260│ │ │
261│ Min balance │ 998.389 USDT │
262│ Max balance │ 998.389 USDT │
263│ Max % of account underwater │ 0.16% │
264│ Absolute drawdown │ 1.611 USDT (0.16%) │
265│ Drawdown duration │ 0 days 00:00:00 │
266│ Profit at drawdown start │ 0 USDT │
267│ Profit at drawdown end │ -1.611 USDT │
268│ Drawdown start │ 2025-12-30 00:00:00 │
269│ Drawdown end │ 2025-12-30 00:00:00 │
270│ Market change │ -4.60% │
271└───────────────────────────────┴────────────────────────────────┘
272
273Backtested 2025-12-09 00:00:00 -> 2025-12-30 00:00:00 | Max open trades : 1
274 STRATEGY SUMMARY
275┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓
276┃ Strategy ┃ Trades ┃ Avg Profit % ┃ Tot Profit USDT ┃ Tot Profit % ┃ Avg Duration ┃ Win Draw Loss Win% ┃ Drawdown ┃
277┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩
278│ Strategy │ 1 │ -1.82 │ -1.611 │ -0.16 │ 7 days, 0:00:00 │ 0 0 1 0 │ 1.611 USDT 0.16% │
279└──────────┴────────┴──────────────┴─────────────────┴──────────────┴─────────────────┴────────────────────────┴───────────────────┘
2802026-01-09 13:21:46,122 - freqtrade - INFO - freqtrade 2025.12
2812026-01-09 13:21:46,652 - numexpr.utils - INFO - NumExpr defaulting to 8 threads.
2822026-01-09 13:21:48,161 - freqtrade.configuration.load_config - INFO - Using config: /freqtrade/user_data/config.json ...
2832026-01-09 13:21:48,164 - freqtrade.loggers - INFO - Enabling colorized output.
2842026-01-09 13:21:48,164 - freqtrade.loggers - INFO - Logfile configured
2852026-01-09 13:21:48,165 - freqtrade.loggers - INFO - Verbosity set to 0
2862026-01-09 13:21:48,165 - freqtrade.configuration.configuration - INFO - Using max_open_trades: None ...
2872026-01-09 13:21:48,166 - freqtrade.configuration.configuration - INFO - Parameter --timerange detected: 20251201-20251230 ...
2882026-01-09 13:21:48,179 - freqtrade.configuration.configuration - INFO - Using user-data directory: /freqtrade/user_data ...
2892026-01-09 13:21:48,179 - freqtrade.configuration.configuration - INFO - Using data directory: /freqtrade/user_data/data/binance ...
2902026-01-09 13:21:48,180 - freqtrade.configuration.configuration - INFO - Parameter --export detected: trades ...
2912026-01-09 13:21:48,180 - freqtrade.configuration.configuration - INFO - Parameter --cache=day detected ...
2922026-01-09 13:21:48,180 - freqtrade.configuration.configuration - INFO - Using \"json\" to store OHLCV data.
2932026-01-09 13:21:48,181 - freqtrade.configuration.configuration - INFO - Filter trades by timerange: 20251201-20251230
2942026-01-09 13:21:48,181 - freqtrade.exchange.check_exchange - INFO - Checking exchange...
2952026-01-09 13:21:48,192 - freqtrade.exchange.check_exchange - INFO - Exchange \"binance\" is officially supported by the Freqtrade development team.
2962026-01-09 13:21:48,192 - freqtrade.configuration.configuration - INFO - Using pairlist from configuration.
2972026-01-09 13:21:48,192 - freqtrade.configuration.config_validation - INFO - Validating configuration ...
2982026-01-09 13:21:48,194 - freqtrade.commands.optimize_commands - INFO - Starting freqtrade in Backtesting mode
2992026-01-09 13:21:48,194 - freqtrade.exchange.exchange - INFO - Instance is running with dry_run enabled
3002026-01-09 13:21:48,195 - freqtrade.exchange.exchange - INFO - Using CCXT 4.5.29
3012026-01-09 13:21:48,195 - freqtrade.exchange.exchange - INFO - Applying additional ccxt config: {'options': {'defaultType': 'swap'}}
3022026-01-09 13:21:48,204 - freqtrade.exchange.exchange - INFO - Applying additional ccxt config: {'options': {'defaultType': 'swap'}}
3032026-01-09 13:21:48,215 - freqtrade.exchange.exchange - INFO - Using Exchange \"Binance\"
3042026-01-09 13:21:50,833 - freqtrade.resolvers.exchange_resolver - INFO - Using resolved exchange 'Binance'...
3052026-01-09 13:21:50,864 - freqtrade.resolvers.iresolver - INFO - Using resolved strategy Strategy from '/freqtrade/user_data/strategies/strategy.py'...
3062026-01-09 13:21:50,865 - freqtrade.strategy.hyper - INFO - Found no parameter file.
3072026-01-09 13:21:50,865 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'timeframe' with value from the configuration: 1d.
3082026-01-09 13:21:50,866 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stake_currency' with value from the configuration: USDT.
3092026-01-09 13:21:50,866 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stake_amount' with value from the configuration: 100.
3102026-01-09 13:21:50,866 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using minimal_roi: {'0': 0.03}
3112026-01-09 13:21:50,867 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using timeframe: 1d
3122026-01-09 13:21:50,867 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stoploss: -0.05
3132026-01-09 13:21:50,867 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop: False
3142026-01-09 13:21:50,868 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop_positive_offset: 0.0
3152026-01-09 13:21:50,868 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_only_offset_is_reached: False
3162026-01-09 13:21:50,868 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using use_custom_stoploss: False
3172026-01-09 13:21:50,868 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using process_only_new_candles: True
3182026-01-09 13:21:50,868 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using order_types: {'entry': 'limit', 'exit': 'limit', 'stoploss': 'limit', 'stoploss_on_exchange': False,
319'stoploss_on_exchange_interval': 60}
3202026-01-09 13:21:50,869 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using order_time_in_force: {'entry': 'GTC', 'exit': 'GTC'}
3212026-01-09 13:21:50,869 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stake_currency: USDT
3222026-01-09 13:21:50,869 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stake_amount: 100
3232026-01-09 13:21:50,869 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using startup_candle_count: 10
3242026-01-09 13:21:50,870 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using use_exit_signal: True
3252026-01-09 13:21:50,870 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using exit_profit_only: False
3262026-01-09 13:21:50,870 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using ignore_roi_if_entry_signal: False
3272026-01-09 13:21:50,870 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using exit_profit_offset: 0.0
3282026-01-09 13:21:50,871 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using disable_dataframe_checks: False
3292026-01-09 13:21:50,871 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using ignore_buying_expired_candle_after: 0
3302026-01-09 13:21:50,871 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using position_adjustment_enable: False
3312026-01-09 13:21:50,871 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using max_entry_position_adjustment: -1
3322026-01-09 13:21:50,871 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using max_open_trades: inf
3332026-01-09 13:21:50,872 - freqtrade.configuration.config_validation - INFO - Validating configuration ...
3342026-01-09 13:21:50,875 - freqtrade.resolvers.iresolver - INFO - Using resolved pairlist StaticPairList from '/freqtrade/freqtrade/plugins/pairlist/StaticPairList.py'...
3352026-01-09 13:21:50,880 - freqtrade.optimize.backtesting - INFO - Using fee 0.0500% - worst case fee from exchange (lowest tier).
3362026-01-09 13:21:50,883 - freqtrade.data.history.datahandlers.idatahandler - WARNING - /freqtrade/user_data/data/binance/futures/BTC_USDT_USDT-1h-futures.json exists already, can't migrate BTC/USDT.
3372026-01-09 13:21:50,888 - freqtrade.data.history.datahandlers.idatahandler - WARNING - BTC/USDT:USDT, futures, 1d, data starts at 2025-11-29 00:00:00
3382026-01-09 13:21:50,896 - freqtrade.optimize.backtesting - INFO - Loading data from 2025-11-29 00:00:00 up to 2025-12-30 00:00:00 (31 days).
3392026-01-09 13:21:50,916 - freqtrade.optimize.backtesting - INFO - Dataload complete. Calculating indicators
3402026-01-09 13:21:50,917 - freqtrade.optimize.backtesting - INFO - Running backtesting for Strategy Strategy
3412026-01-09 13:21:50,919 - freqtrade.optimize.backtesting - INFO - Backtesting with data from 2025-12-09 00:00:00 up to 2025-12-30 00:00:00 (21 days).
3422026-01-09 13:21:50,920 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-11-29 00:00:00+00:00 to 2025-11-30 00:00:00+00:00, direction='any'
3432026-01-09 13:21:50,921 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
3442026-01-09 13:21:50,921 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-11-29T00:00:00Z', 'endDate':
345'2025-11-30T00:00:00Z', 'direction': 'any'}
3462026-01-09 13:21:51,352 - sdk - INFO - Received 0 predictions for symbols: []
3472026-01-09 13:21:51,352 - sdk - INFO - Returning 0 predictions after filtering by direction.
3482026-01-09 13:21:51,353 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-11-30 00:00:00+00:00 to 2025-12-01 00:00:00+00:00, direction='any'
3492026-01-09 13:21:51,353 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
3502026-01-09 13:21:51,353 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-11-30T00:00:00Z', 'endDate':
351'2025-12-01T00:00:00Z', 'direction': 'any'}
3522026-01-09 13:21:51,731 - sdk - INFO - Received 0 predictions for symbols: []
3532026-01-09 13:21:51,731 - sdk - INFO - Returning 0 predictions after filtering by direction.
3542026-01-09 13:21:51,732 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-01 00:00:00+00:00 to 2025-12-02 00:00:00+00:00, direction='any'
3552026-01-09 13:21:51,732 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
3562026-01-09 13:21:51,733 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-01T00:00:00Z', 'endDate':
357'2025-12-02T00:00:00Z', 'direction': 'any'}
3582026-01-09 13:21:52,291 - sdk - INFO - Received 0 predictions for symbols: []
3592026-01-09 13:21:52,291 - sdk - INFO - Returning 0 predictions after filtering by direction.
3602026-01-09 13:21:52,292 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-02 00:00:00+00:00 to 2025-12-03 00:00:00+00:00, direction='any'
3612026-01-09 13:21:52,292 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
3622026-01-09 13:21:52,292 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-02T00:00:00Z', 'endDate':
363'2025-12-03T00:00:00Z', 'direction': 'any'}
3642026-01-09 13:21:52,681 - sdk - INFO - Received 0 predictions for symbols: []
3652026-01-09 13:21:52,681 - sdk - INFO - Returning 0 predictions after filtering by direction.
3662026-01-09 13:21:52,682 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-03 00:00:00+00:00 to 2025-12-04 00:00:00+00:00, direction='any'
3672026-01-09 13:21:52,683 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
3682026-01-09 13:21:52,683 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-03T00:00:00Z', 'endDate':
369'2025-12-04T00:00:00Z', 'direction': 'any'}
3702026-01-09 13:21:53,061 - sdk - INFO - Received 0 predictions for symbols: []
3712026-01-09 13:21:53,061 - sdk - INFO - Returning 0 predictions after filtering by direction.
3722026-01-09 13:21:53,062 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-04 00:00:00+00:00 to 2025-12-05 00:00:00+00:00, direction='any'
3732026-01-09 13:21:53,062 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
3742026-01-09 13:21:53,063 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-04T00:00:00Z', 'endDate':
375'2025-12-05T00:00:00Z', 'direction': 'any'}
3762026-01-09 13:21:53,451 - sdk - INFO - Received 1 predictions for symbols: ['ETH/USDT']
3772026-01-09 13:21:53,452 - sdk - INFO - Returning 1 predictions after filtering by direction.
3782026-01-09 13:21:53,452 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-05 00:00:00+00:00 to 2025-12-06 00:00:00+00:00, direction='any'
3792026-01-09 13:21:53,453 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
3802026-01-09 13:21:53,453 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-05T00:00:00Z', 'endDate':
381'2025-12-06T00:00:00Z', 'direction': 'any'}
3822026-01-09 13:21:54,011 - sdk - INFO - Received 0 predictions for symbols: []
3832026-01-09 13:21:54,011 - sdk - INFO - Returning 0 predictions after filtering by direction.
3842026-01-09 13:21:54,012 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-06 00:00:00+00:00 to 2025-12-07 00:00:00+00:00, direction='any'
3852026-01-09 13:21:54,012 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
3862026-01-09 13:21:54,012 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-06T00:00:00Z', 'endDate':
387'2025-12-07T00:00:00Z', 'direction': 'any'}
3882026-01-09 13:21:54,585 - sdk - INFO - Received 0 predictions for symbols: []
3892026-01-09 13:21:54,585 - sdk - INFO - Returning 0 predictions after filtering by direction.
3902026-01-09 13:21:54,586 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-07 00:00:00+00:00 to 2025-12-08 00:00:00+00:00, direction='any'
3912026-01-09 13:21:54,586 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
3922026-01-09 13:21:54,587 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-07T00:00:00Z', 'endDate':
393'2025-12-08T00:00:00Z', 'direction': 'any'}
3942026-01-09 13:21:54,971 - sdk - INFO - Received 0 predictions for symbols: []
3952026-01-09 13:21:54,971 - sdk - INFO - Returning 0 predictions after filtering by direction.
3962026-01-09 13:21:54,972 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-08 00:00:00+00:00 to 2025-12-09 00:00:00+00:00, direction='any'
3972026-01-09 13:21:54,972 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
3982026-01-09 13:21:54,972 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-08T00:00:00Z', 'endDate':
399'2025-12-09T00:00:00Z', 'direction': 'any'}
4002026-01-09 13:21:55,361 - sdk - INFO - Received 0 predictions for symbols: []
4012026-01-09 13:21:55,361 - sdk - INFO - Returning 0 predictions after filtering by direction.
4022026-01-09 13:21:55,362 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-09 00:00:00+00:00 to 2025-12-10 00:00:00+00:00, direction='any'
4032026-01-09 13:21:55,362 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
4042026-01-09 13:21:55,363 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-09T00:00:00Z', 'endDate':
405'2025-12-10T00:00:00Z', 'direction': 'any'}
4062026-01-09 13:21:55,931 - sdk - INFO - Received 0 predictions for symbols: []
4072026-01-09 13:21:55,932 - sdk - INFO - Returning 0 predictions after filtering by direction.
4082026-01-09 13:21:55,933 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-10 00:00:00+00:00 to 2025-12-11 00:00:00+00:00, direction='any'
4092026-01-09 13:21:55,933 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
4102026-01-09 13:21:55,933 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-10T00:00:00Z', 'endDate':
411'2025-12-11T00:00:00Z', 'direction': 'any'}
4122026-01-09 13:21:56,321 - sdk - INFO - Received 0 predictions for symbols: []
4132026-01-09 13:21:56,322 - sdk - INFO - Returning 0 predictions after filtering by direction.
4142026-01-09 13:21:56,323 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-11 00:00:00+00:00 to 2025-12-12 00:00:00+00:00, direction='any'
4152026-01-09 13:21:56,323 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
4162026-01-09 13:21:56,324 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-11T00:00:00Z', 'endDate':
417'2025-12-12T00:00:00Z', 'direction': 'any'}
4182026-01-09 13:21:56,742 - sdk - INFO - Received 0 predictions for symbols: []
4192026-01-09 13:21:56,743 - sdk - INFO - Returning 0 predictions after filtering by direction.
4202026-01-09 13:21:56,744 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-12 00:00:00+00:00 to 2025-12-13 00:00:00+00:00, direction='any'
4212026-01-09 13:21:56,744 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
4222026-01-09 13:21:56,745 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-12T00:00:00Z', 'endDate':
423'2025-12-13T00:00:00Z', 'direction': 'any'}
4242026-01-09 13:21:57,142 - sdk - INFO - Received 0 predictions for symbols: []
4252026-01-09 13:21:57,142 - sdk - INFO - Returning 0 predictions after filtering by direction.
4262026-01-09 13:21:57,143 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-13 00:00:00+00:00 to 2025-12-14 00:00:00+00:00, direction='any'
4272026-01-09 13:21:57,143 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
4282026-01-09 13:21:57,144 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-13T00:00:00Z', 'endDate':
429'2025-12-14T00:00:00Z', 'direction': 'any'}
4302026-01-09 13:21:57,521 - sdk - INFO - Received 0 predictions for symbols: []
4312026-01-09 13:21:57,521 - sdk - INFO - Returning 0 predictions after filtering by direction.
4322026-01-09 13:21:57,522 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-14 00:00:00+00:00 to 2025-12-15 00:00:00+00:00, direction='any'
4332026-01-09 13:21:57,522 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
4342026-01-09 13:21:57,523 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-14T00:00:00Z', 'endDate':
435'2025-12-15T00:00:00Z', 'direction': 'any'}
4362026-01-09 13:21:57,902 - sdk - INFO - Received 0 predictions for symbols: []
4372026-01-09 13:21:57,903 - sdk - INFO - Returning 0 predictions after filtering by direction.
4382026-01-09 13:21:57,904 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-15 00:00:00+00:00 to 2025-12-16 00:00:00+00:00, direction='any'
4392026-01-09 13:21:57,904 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
4402026-01-09 13:21:57,904 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-15T00:00:00Z', 'endDate':
441'2025-12-16T00:00:00Z', 'direction': 'any'}
4422026-01-09 13:21:58,292 - sdk - INFO - Received 0 predictions for symbols: []
4432026-01-09 13:21:58,292 - sdk - INFO - Returning 0 predictions after filtering by direction.
4442026-01-09 13:21:58,293 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-16 00:00:00+00:00 to 2025-12-17 00:00:00+00:00, direction='any'
4452026-01-09 13:21:58,294 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
4462026-01-09 13:21:58,294 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-16T00:00:00Z', 'endDate':
447'2025-12-17T00:00:00Z', 'direction': 'any'}
4482026-01-09 13:21:58,681 - sdk - INFO - Received 0 predictions for symbols: []
4492026-01-09 13:21:58,681 - sdk - INFO - Returning 0 predictions after filtering by direction.
4502026-01-09 13:21:58,682 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-17 00:00:00+00:00 to 2025-12-18 00:00:00+00:00, direction='any'
4512026-01-09 13:21:58,682 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
4522026-01-09 13:21:58,682 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-17T00:00:00Z', 'endDate':
453'2025-12-18T00:00:00Z', 'direction': 'any'}
4542026-01-09 13:21:59,071 - sdk - INFO - Received 0 predictions for symbols: []
4552026-01-09 13:21:59,071 - sdk - INFO - Returning 0 predictions after filtering by direction.
4562026-01-09 13:21:59,072 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-18 00:00:00+00:00 to 2025-12-19 00:00:00+00:00, direction='any'
4572026-01-09 13:21:59,073 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
4582026-01-09 13:21:59,073 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-18T00:00:00Z', 'endDate':
459'2025-12-19T00:00:00Z', 'direction': 'any'}
4602026-01-09 13:21:59,461 - sdk - INFO - Received 0 predictions for symbols: []
4612026-01-09 13:21:59,461 - sdk - INFO - Returning 0 predictions after filtering by direction.
4622026-01-09 13:21:59,462 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-19 00:00:00+00:00 to 2025-12-20 00:00:00+00:00, direction='any'
4632026-01-09 13:21:59,462 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
4642026-01-09 13:21:59,462 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-19T00:00:00Z', 'endDate':
465'2025-12-20T00:00:00Z', 'direction': 'any'}
4662026-01-09 13:21:59,841 - sdk - INFO - Received 0 predictions for symbols: []
4672026-01-09 13:21:59,841 - sdk - INFO - Returning 0 predictions after filtering by direction.
4682026-01-09 13:21:59,842 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-20 00:00:00+00:00 to 2025-12-21 00:00:00+00:00, direction='any'
4692026-01-09 13:21:59,843 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
4702026-01-09 13:21:59,843 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-20T00:00:00Z', 'endDate':
471'2025-12-21T00:00:00Z', 'direction': 'any'}
4722026-01-09 13:22:00,221 - sdk - INFO - Received 0 predictions for symbols: []
4732026-01-09 13:22:00,221 - sdk - INFO - Returning 0 predictions after filtering by direction.
4742026-01-09 13:22:00,222 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-21 00:00:00+00:00 to 2025-12-22 00:00:00+00:00, direction='any'
4752026-01-09 13:22:00,222 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
4762026-01-09 13:22:00,222 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-21T00:00:00Z', 'endDate':
477'2025-12-22T00:00:00Z', 'direction': 'any'}
4782026-01-09 13:22:00,601 - sdk - INFO - Received 0 predictions for symbols: []
4792026-01-09 13:22:00,601 - sdk - INFO - Returning 0 predictions after filtering by direction.
4802026-01-09 13:22:00,602 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-22 00:00:00+00:00 to 2025-12-23 00:00:00+00:00, direction='any'
4812026-01-09 13:22:00,602 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
4822026-01-09 13:22:00,603 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-22T00:00:00Z', 'endDate':
483'2025-12-23T00:00:00Z', 'direction': 'any'}
4842026-01-09 13:22:00,981 - sdk - INFO - Received 3 predictions for symbols: ['ETH/USDT', 'BTC/USDT', 'BTC/USDT']
4852026-01-09 13:22:00,981 - sdk - INFO - Returning 3 predictions after filtering by direction.
4862026-01-09 13:22:00,982 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-23 00:00:00+00:00 to 2025-12-24 00:00:00+00:00, direction='any'
4872026-01-09 13:22:00,982 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
4882026-01-09 13:22:00,983 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-23T00:00:00Z', 'endDate':
489'2025-12-24T00:00:00Z', 'direction': 'any'}
4902026-01-09 13:22:01,372 - sdk - INFO - Received 0 predictions for symbols: []
4912026-01-09 13:22:01,372 - sdk - INFO - Returning 0 predictions after filtering by direction.
4922026-01-09 13:22:01,373 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-24 00:00:00+00:00 to 2025-12-25 00:00:00+00:00, direction='any'
4932026-01-09 13:22:01,374 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
4942026-01-09 13:22:01,374 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-24T00:00:00Z', 'endDate':
495'2025-12-25T00:00:00Z', 'direction': 'any'}
4962026-01-09 13:22:01,751 - sdk - INFO - Received 1 predictions for symbols: ['ETH/USDT']
4972026-01-09 13:22:01,751 - sdk - INFO - Returning 1 predictions after filtering by direction.
4982026-01-09 13:22:01,752 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-25 00:00:00+00:00 to 2025-12-26 00:00:00+00:00, direction='any'
4992026-01-09 13:22:01,752 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
5002026-01-09 13:22:01,753 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-25T00:00:00Z', 'endDate':
501'2025-12-26T00:00:00Z', 'direction': 'any'}
5022026-01-09 13:22:02,311 - sdk - INFO - Received 0 predictions for symbols: []
5032026-01-09 13:22:02,311 - sdk - INFO - Returning 0 predictions after filtering by direction.
5042026-01-09 13:22:02,312 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-26 00:00:00+00:00 to 2025-12-27 00:00:00+00:00, direction='any'
5052026-01-09 13:22:02,313 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
5062026-01-09 13:22:02,313 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-26T00:00:00Z', 'endDate':
507'2025-12-27T00:00:00Z', 'direction': 'any'}
5082026-01-09 13:22:02,701 - sdk - INFO - Received 0 predictions for symbols: []
5092026-01-09 13:22:02,701 - sdk - INFO - Returning 0 predictions after filtering by direction.
5102026-01-09 13:22:02,702 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-27 00:00:00+00:00 to 2025-12-28 00:00:00+00:00, direction='any'
5112026-01-09 13:22:02,702 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
5122026-01-09 13:22:02,703 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-27T00:00:00Z', 'endDate':
513'2025-12-28T00:00:00Z', 'direction': 'any'}
5142026-01-09 13:22:03,091 - sdk - INFO - Received 0 predictions for symbols: []
5152026-01-09 13:22:03,092 - sdk - INFO - Returning 0 predictions after filtering by direction.
5162026-01-09 13:22:03,093 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-28 00:00:00+00:00 to 2025-12-29 00:00:00+00:00, direction='any'
5172026-01-09 13:22:03,093 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
5182026-01-09 13:22:03,093 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-28T00:00:00Z', 'endDate':
519'2025-12-29T00:00:00Z', 'direction': 'any'}
5202026-01-09 13:22:03,511 - sdk - INFO - Received 0 predictions for symbols: []
5212026-01-09 13:22:03,511 - sdk - INFO - Returning 0 predictions after filtering by direction.
5222026-01-09 13:22:03,512 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-29 00:00:00+00:00 to 2025-12-30 00:00:00+00:00, direction='any'
5232026-01-09 13:22:03,512 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
5242026-01-09 13:22:03,513 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-29T00:00:00Z', 'endDate':
525'2025-12-30T00:00:00Z', 'direction': 'any'}
5262026-01-09 13:22:03,891 - sdk - INFO - Received 0 predictions for symbols: []
5272026-01-09 13:22:03,891 - sdk - INFO - Returning 0 predictions after filtering by direction.
5282026-01-09 13:22:03,892 - sdk - INFO - Fetching predictions for issuer='agent_phoenix', range=2025-12-30 00:00:00+00:00 to 2025-12-31 00:00:00+00:00, direction='any'
5292026-01-09 13:22:03,892 - sdk - INFO - TIMERANGE env var not set. Using direct API fetch.
5302026-01-09 13:22:03,893 - sdk - INFO - Sending request to https://sanr-proxy.uxna.me/predictions with params: {'issuerUsername': 'agent_phoenix', 'startDate': '2025-12-30T00:00:00Z', 'endDate':
531'2025-12-31T00:00:00Z', 'direction': 'any'}
5322026-01-09 13:22:04,271 - sdk - INFO - Received 0 predictions for symbols: []
5332026-01-09 13:22:04,271 - sdk - INFO - Returning 0 predictions after filtering by direction.
5342026-01-09 13:22:04,415 - freqtrade.misc - INFO - dumping json to \"/freqtrade/user_data/backtest_results/backtest-result-2026-01-09_13-22-04.meta.json\"
535"
536
537 ❯ src/mastra/super/skills/backtest-runner/skill.spec.ts:209:28
538 207|
539 208| // 1. Проверки общей сводки стратегии
540 209| expect(output.logTail).toMatch(/TOTAL\s+1\s+-1.82\s+-1.611\s+-0.16\s+7 days, 0:00:00\s+0\s+0\s+1\s+0/);
541 | ^
542 210| expect(output.logTail).toContain('Total/Daily Avg Trades │ 1 / 0.05');
543 211| expect(output.logTail).toContain('Total profit % │ -0.16%');
544