Trading Bot: 1.0.0 Binned Random Forrest 3d PH 3%


Details

Unique Key
TEST-binned-ph-rf-p3-seq3-v1.0.0
Current Version
1
Description
None
Ledger
paper-binned-ph-rf-p3-seq3-v1.0.0
Paper, $50,000 initial, 1.0.0 Binned Random Forrest 3d PH 3% Filtered
Last Run
Dec. 3, 2025, 8:33 a.m.
Strategy
days_held: 3
buy_filter: {'rsi_2d__lte': 50, 'volume__gte': 1000000}
basket_size: 2000
max_positions: 20
trading_pulse: 60
buffer_percent: 0.25
gain_percentage: 0.03
trailing_gain_loss: 0.2
stop_loss_percentage: 0.1
stop_loss_time_threshold: 3600

Basket Performance

Thu
OVID ┆ 3.8%
Ticker:
OVID
Quantity:
1,563
Buy Date:
2025-12-04 @ 06:45:21 EST
Buy Price:
$ 1.56
Sell Date:
2025-12-04 @ 09:57:42 EST
Sell Price:
$ 1.62
Profit/Loss:
$ 19.02
Profit/Loss %:
3.8 %
REAL ┆ -0.3%
Ticker:
REAL
Current Price:
$ 14.21
Quantity:
173
Buy Date:
2025-12-04 @ 06:45:22 EST
Buy Price:
$ 14.25
Sell Date:
EST
Sell Price:
$ 0.00
Profit/Loss:
$ -0.04
Profit/Loss %:
-0.3 %
NB ┆ 4.9%
Ticker:
NB
Quantity:
400
Buy Date:
2025-12-04 @ 06:45:22 EST
Buy Price:
$ 5.97
Sell Date:
2025-12-04 @ 09:31:55 EST
Sell Price:
$ 6.26
Profit/Loss:
$ 68.73
Profit/Loss %:
4.9 %
HUMA ┆ 1.6%
Ticker:
HUMA
Current Price:
$ 1.30
Quantity:
1,856
Buy Date:
2025-12-04 @ 06:45:22 EST
Buy Price:
$ 1.28
Sell Date:
EST
Sell Price:
$ 0.00
Profit/Loss:
$ 0.02
Profit/Loss %:
1.6 %
PLG ┆ -0.8%
Ticker:
PLG
Current Price:
$ 2.39
Quantity:
937
Buy Date:
2025-12-04 @ 06:45:22 EST
Buy Price:
$ 2.41
Sell Date:
EST
Sell Price:
$ 0.00
Profit/Loss:
$ -0.02
Profit/Loss %:
-0.8 %
IMNM ┆ 3.7%
Ticker:
IMNM
Quantity:
123
Buy Date:
2025-12-04 @ 06:45:23 EST
Buy Price:
$ 19.29
Sell Date:
2025-12-04 @ 11:01:46 EST
Sell Price:
$ 20.01
Profit/Loss:
$ 88.56
Profit/Loss %:
3.7 %
COSM ┆ 3.4%
Ticker:
COSM
Quantity:
4,717
Buy Date:
2025-12-04 @ 06:45:23 EST
Buy Price:
$ 0.50
Sell Date:
2025-12-04 @ 14:23:47 EST
Sell Price:
$ 0.52
Profit/Loss:
$ 79.72
Profit/Loss %:
3.4 %
Wed
APLT ┆ 2.3%
Ticker:
APLT
Quantity:
14,831
Buy Date:
2025-12-03 @ 06:51:35 EST
Buy Price:
$ 0.21
Sell Date:
2025-12-04 @ 09:43:19 EST
Sell Price:
$ 0.22
Profit/Loss:
$ 19.36
Profit/Loss %:
2.3 %
ASST ┆ -6.0%
Ticker:
ASST
Current Price:
$ 0.99
Quantity:
2,713
Buy Date:
2025-12-03 @ 06:51:35 EST
Buy Price:
$ 1.05
Sell Date:
EST
Sell Price:
$ 0.00
Profit/Loss:
$ -0.06
Profit/Loss %:
-6.0 %
CHGG ┆ -5.4%
Ticker:
CHGG
Current Price:
$ 0.90
Quantity:
3,068
Buy Date:
2025-12-03 @ 06:51:35 EST
Buy Price:
$ 0.95
Sell Date:
EST
Sell Price:
$ 0.00
Profit/Loss:
$ -0.05
Profit/Loss %:
-5.4 %
EVGO ┆ 7.6%
Ticker:
EVGO
Quantity:
900
Buy Date:
2025-12-03 @ 06:51:35 EST
Buy Price:
$ 3.15
Sell Date:
2025-12-04 @ 09:54:38 EST
Sell Price:
$ 3.39
Profit/Loss:
$ 216.00
Profit/Loss %:
7.6 %
CODX ┆ 2.9%
Ticker:
CODX
Quantity:
7,587
Buy Date:
2025-12-03 @ 06:51:36 EST
Buy Price:
$ 0.36
Sell Date:
2025-12-04 @ 09:49:27 EST
Sell Price:
$ 0.37
Profit/Loss:
$ 19.95
Profit/Loss %:
2.9 %
SGBX ┆ 3.3%
Ticker:
SGBX
Quantity:
842
Buy Date:
2025-12-03 @ 06:51:37 EST
Buy Price:
$ 3.05
Sell Date:
2025-12-03 @ 10:36:43 EST
Sell Price:
$ 3.15
Profit/Loss:
$ 84.10
Profit/Loss %:
3.3 %
ATYR ┆ 16.4%
Ticker:
ATYR
Quantity:
3,616
Buy Date:
2025-12-03 @ 06:51:37 EST
Buy Price:
$ 0.71
Sell Date:
2025-12-04 @ 15:46:51 EST
Sell Price:
$ 0.82
Profit/Loss:
$ 350.71
Profit/Loss %:
16.4 %
DFLI ┆ 3.7%
Ticker:
DFLI
Quantity:
3,606
Buy Date:
2025-12-03 @ 06:51:37 EST
Buy Price:
$ 0.70
Sell Date:
2025-12-03 @ 09:58:50 EST
Sell Price:
$ 0.73
Profit/Loss:
$ 0.52
Profit/Loss %:
3.7 %
KURA ┆ 3.3%
Ticker:
KURA
Quantity:
232
Buy Date:
2025-12-03 @ 06:51:37 EST
Buy Price:
$ 11.49
Sell Date:
2025-12-03 @ 09:35:18 EST
Sell Price:
$ 11.87
Profit/Loss:
$ 51.68
Profit/Loss %:
3.3 %
BNAI ┆ -18.3%
Ticker:
BNAI
Quantity:
18,945
Buy Date:
2025-12-03 @ 09:34:16 EST
Buy Price:
$ 0.33
Sell Date:
2025-12-04 @ 10:26:11 EST
Sell Price:
$ 0.27
Profit/Loss:
$ -1,146.18
Profit/Loss %:
-18.3 %
AMRX ┆ -2.6%
Ticker:
AMRX
Current Price:
$ 11.83
Quantity:
491
Buy Date:
2025-12-03 @ 09:34:16 EST
Buy Price:
$ 12.15
Sell Date:
EST
Sell Price:
$ 0.00
Profit/Loss:
$ -0.32
Profit/Loss %:
-2.6 %
PDSB ┆ 3.8%
Ticker:
PDSB
Quantity:
7,528
Buy Date:
2025-12-03 @ 09:34:16 EST
Buy Price:
$ 0.79
Sell Date:
2025-12-03 @ 12:58:08 EST
Sell Price:
$ 0.82
Profit/Loss:
$ 227.35
Profit/Loss %:
3.8 %
ASPI ┆ 5.9%
Ticker:
ASPI
Quantity:
1,077
Buy Date:
2025-12-03 @ 09:34:17 EST
Buy Price:
$ 5.38
Sell Date:
2025-12-03 @ 15:46:55 EST
Sell Price:
$ 5.70
Profit/Loss:
$ 344.64
Profit/Loss %:
5.9 %
Tue
DRCT ┆ -17.7%
Ticker:
DRCT
Quantity:
23,461
Buy Date:
2025-12-02 @ 06:50:54 EST
Buy Price:
$ 0.11
Sell Date:
2025-12-03 @ 10:12:08 EST
Sell Price:
$ 0.09
Profit/Loss:
$ -170.96
Profit/Loss %:
-17.7 %
IRBT ┆ 3.7%
Ticker:
IRBT
Quantity:
1,665
Buy Date:
2025-12-02 @ 06:50:54 EST
Buy Price:
$ 1.62
Sell Date:
2025-12-02 @ 09:31:33 EST
Sell Price:
$ 1.68
Profit/Loss:
$ 55.50
Profit/Loss %:
3.7 %
GPUS ┆ -3.1%
Ticker:
GPUS
Quantity:
9,631
Buy Date:
2025-12-02 @ 06:50:55 EST
Buy Price:
$ 0.30
Sell Date:
2025-12-04 @ 14:41:02 EST
Sell Price:
$ 0.29
Profit/Loss:
$ -90.53
Profit/Loss %:
-3.1 %
PACB ┆ 3.1%
Ticker:
PACB
Quantity:
1,143
Buy Date:
2025-12-02 @ 06:50:55 EST
Buy Price:
$ 2.24
Sell Date:
2025-12-02 @ 10:15:22 EST
Sell Price:
$ 2.31
Profit/Loss:
$ 37.24
Profit/Loss %:
3.1 %
RZLV ┆ -11.7%
Ticker:
RZLV
Quantity:
938
Buy Date:
2025-12-02 @ 06:50:55 EST
Buy Price:
$ 2.81
Sell Date:
2025-12-03 @ 10:33:41 EST
Sell Price:
$ 2.48
Profit/Loss:
$ -60.06
Profit/Loss %:
-11.7 %
CMND ┆ 1.5%
Ticker:
CMND
Quantity:
20,019
Buy Date:
2025-12-02 @ 06:50:56 EST
Buy Price:
$ 0.13
Sell Date:
2025-12-02 @ 12:09:06 EST
Sell Price:
$ 0.13
Profit/Loss:
$ 40.04
Profit/Loss %:
1.5 %
MSAI ┆ 5.5%
Ticker:
MSAI
Quantity:
4,511
Buy Date:
2025-12-02 @ 06:50:56 EST
Buy Price:
$ 0.55
Sell Date:
2025-12-02 @ 10:12:19 EST
Sell Price:
$ 0.58
Profit/Loss:
$ 103.02
Profit/Loss %:
5.5 %
WTI ┆ 6.5%
Ticker:
WTI
Quantity:
1,397
Buy Date:
2025-12-02 @ 06:50:56 EST
Buy Price:
$ 1.70
Sell Date:
2025-12-04 @ 11:35:18 EST
Sell Price:
$ 1.81
Profit/Loss:
$ 47.30
Profit/Loss %:
6.5 %
INHD ┆ -15.3%
Ticker:
INHD
Quantity:
15,207
Buy Date:
2025-12-02 @ 06:50:56 EST
Buy Price:
$ 0.16
Sell Date:
2025-12-03 @ 10:34:41 EST
Sell Price:
$ 0.14
Profit/Loss:
$ -265.81
Profit/Loss %:
-15.3 %
METC ┆ 3.9%
Ticker:
METC
Quantity:
157
Buy Date:
2025-12-02 @ 06:50:56 EST
Buy Price:
$ 15.24
Sell Date:
2025-12-02 @ 09:37:40 EST
Sell Price:
$ 15.84
Profit/Loss:
$ 80.40
Profit/Loss %:
3.9 %
Mon
NVTS ┆ 1.4%
Ticker:
NVTS
Quantity:
367
Buy Date:
2025-12-01 @ 08:45:07 EST
Buy Price:
$ 8.45
Sell Date:
2025-12-03 @ 13:55:13 EST
Sell Price:
$ 8.57
Profit/Loss:
$ 33.12
Profit/Loss %:
1.4 %
COMP ┆ 3.2%
Ticker:
COMP
Quantity:
293
Buy Date:
2025-12-01 @ 08:45:07 EST
Buy Price:
$ 10.22
Sell Date:
2025-12-01 @ 15:13:11 EST
Sell Price:
$ 10.55
Profit/Loss:
$ 96.69
Profit/Loss %:
3.2 %
EDIT ┆ -10.6%
Ticker:
EDIT
Quantity:
1,270
Buy Date:
2025-12-01 @ 08:45:07 EST
Buy Price:
$ 2.36
Sell Date:
2025-12-02 @ 12:13:09 EST
Sell Price:
$ 2.11
Profit/Loss:
$ -103.00
Profit/Loss %:
-10.6 %
ONDS ┆ 3.5%
Ticker:
ONDS
Quantity:
363
Buy Date:
2025-12-01 @ 08:45:08 EST
Buy Price:
$ 7.96
Sell Date:
2025-12-02 @ 10:20:27 EST
Sell Price:
$ 8.24
Profit/Loss:
$ 60.76
Profit/Loss %:
3.5 %
Fri
IRWD ┆ -8.6%
Ticker:
IRWD
Quantity:
782
Buy Date:
2025-11-28 @ 06:46:21 EST
Buy Price:
$ 3.83
Sell Date:
2025-12-02 @ 14:37:11 EST
Sell Price:
$ 3.50
Profit/Loss:
$ -208.56
Profit/Loss %:
-8.6 %
YYAI ┆ -11.9%
Ticker:
YYAI
Quantity:
2,569
Buy Date:
2025-11-28 @ 06:46:22 EST
Buy Price:
$ 1.08
Sell Date:
2025-12-01 @ 10:34:19 EST
Sell Price:
$ 0.95
Profit/Loss:
$ -328.83
Profit/Loss %:
-11.9 %
MBRX ┆ 2,755.6%
Ticker:
MBRX
Current Price:
$ 7.71
Quantity:
10,382
Buy Date:
2025-11-28 @ 06:46:23 EST
Buy Price:
$ 0.27
Sell Date:
EST
Sell Price:
$ 0.00
Profit/Loss:
$ 7.44
Profit/Loss %:
2,755.6 %
AVDL ┆ -0.5%
Ticker:
AVDL
Quantity:
127
Buy Date:
2025-11-28 @ 06:46:23 EST
Buy Price:
$ 21.47
Sell Date:
2025-12-02 @ 15:46:00 EST
Sell Price:
$ 21.36
Profit/Loss:
$ -13.97
Profit/Loss %:
-0.5 %
Wed
PALI ┆ -12.4%
Ticker:
PALI
Quantity:
1,937
Buy Date:
2025-11-26 @ 06:50:41 EST
Buy Price:
$ 2.17
Sell Date:
2025-12-01 @ 11:11:50 EST
Sell Price:
$ 1.90
Profit/Loss:
$ -180.90
Profit/Loss %:
-12.4 %
ACHV ┆ 6.3%
Ticker:
ACHV
Quantity:
835
Buy Date:
2025-11-26 @ 06:50:42 EST
Buy Price:
$ 4.59
Sell Date:
2025-11-26 @ 09:32:12 EST
Sell Price:
$ 4.88
Profit/Loss:
$ 41.47
Profit/Loss %:
6.3 %
Tue
WULF ┆ 9.4%
Ticker:
WULF
Quantity:
230
Buy Date:
2025-11-25 @ 06:50:17 EST
Buy Price:
$ 12.42
Sell Date:
2025-11-25 @ 09:41:50 EST
Sell Price:
$ 13.59
Profit/Loss:
$ 268.10
Profit/Loss %:
9.4 %
GEVO ┆ 3.9%
Ticker:
GEVO
Quantity:
1,383
Buy Date:
2025-11-25 @ 06:50:18 EST
Buy Price:
$ 2.03
Sell Date:
2025-11-28 @ 10:48:05 EST
Sell Price:
$ 2.11
Profit/Loss:
$ 110.64
Profit/Loss %:
3.9 %
BTCS ┆ 3.9%
Ticker:
BTCS
Quantity:
867
Buy Date:
2025-11-25 @ 06:50:18 EST
Buy Price:
$ 3.10
Sell Date:
2025-11-28 @ 09:32:01 EST
Sell Price:
$ 3.22
Profit/Loss:
$ 10.80
Profit/Loss %:
3.9 %
BLNK ┆ -3.8%
Ticker:
BLNK
Quantity:
2,054
Buy Date:
2025-11-25 @ 06:50:19 EST
Buy Price:
$ 1.31
Sell Date:
2025-12-01 @ 15:45:31 EST
Sell Price:
$ 1.26
Profit/Loss:
$ -64.90
Profit/Loss %:
-3.8 %
ACB ┆ 3.4%
Ticker:
ACB
Quantity:
603
Buy Date:
2025-11-25 @ 06:50:19 EST
Buy Price:
$ 4.38
Sell Date:
2025-11-26 @ 11:29:53 EST
Sell Price:
$ 4.53
Profit/Loss:
$ 90.45
Profit/Loss %:
3.4 %
RZLV ┆ -11.2%
Ticker:
RZLV
Quantity:
849
Buy Date:
2025-11-25 @ 06:50:19 EST
Buy Price:
$ 3.12
Sell Date:
2025-12-01 @ 14:41:44 EST
Sell Price:
$ 2.77
Profit/Loss:
$ -297.15
Profit/Loss %:
-11.2 %
Mon
AGL ┆ 3.9%
Ticker:
AGL
Quantity:
4,370
Buy Date:
2025-11-24 @ 06:46:25 EST
Buy Price:
$ 0.62
Sell Date:
2025-11-24 @ 10:10:44 EST
Sell Price:
$ 0.64
Profit/Loss:
$ 94.01
Profit/Loss %:
3.9 %
FIGS ┆ 1.3%
Ticker:
FIGS
Quantity:
264
Buy Date:
2025-11-24 @ 06:46:25 EST
Buy Price:
$ 9.67
Sell Date:
2025-11-28 @ 12:38:40 EST
Sell Price:
$ 9.80
Profit/Loss:
$ 6.76
Profit/Loss %:
1.3 %
SKIN ┆ 8.3%
Ticker:
SKIN
Quantity:
1,822
Buy Date:
2025-11-24 @ 06:46:25 EST
Buy Price:
$ 1.33
Sell Date:
2025-11-26 @ 11:48:07 EST
Sell Price:
$ 1.44
Profit/Loss:
$ 195.69
Profit/Loss %:
8.3 %
CLOV ┆ 3.5%
Ticker:
CLOV
Quantity:
1,166
Buy Date:
2025-11-24 @ 06:46:26 EST
Buy Price:
$ 2.31
Sell Date:
2025-11-24 @ 09:32:03 EST
Sell Price:
$ 2.39
Profit/Loss:
$ 45.52
Profit/Loss %:
3.5 %
OPAD ┆ 3.2%
Ticker:
OPAD
Quantity:
1,397
Buy Date:
2025-11-24 @ 06:46:26 EST
Buy Price:
$ 1.90
Sell Date:
2025-11-25 @ 09:31:40 EST
Sell Price:
$ 1.96
Profit/Loss:
$ 27.00
Profit/Loss %:
3.2 %
BB ┆ -3.3%
Ticker:
BB
Quantity:
604
Buy Date:
2025-11-24 @ 06:46:27 EST
Buy Price:
$ 4.20
Sell Date:
2025-12-02 @ 15:46:00 EST
Sell Price:
$ 4.06
Profit/Loss:
$ -71.40
Profit/Loss %:
-3.3 %
Fri
NVNO ┆ 1.9%
Ticker:
NVNO
Quantity:
9,031
Buy Date:
2025-11-21 @ 06:50:18 EST
Buy Price:
$ 0.32
Sell Date:
2025-11-21 @ 13:04:31 EST
Sell Price:
$ 0.33
Profit/Loss:
$ 18.13
Profit/Loss %:
1.9 %
SLDP ┆ 0.8%
Ticker:
SLDP
Quantity:
588
Buy Date:
2025-11-21 @ 06:50:19 EST
Buy Price:
$ 5.04
Sell Date:
2025-11-25 @ 12:59:48 EST
Sell Price:
$ 5.08
Profit/Loss:
$ 23.52
Profit/Loss %:
0.8 %
EBS ┆ 19.9%
Ticker:
EBS
Quantity:
282
Buy Date:
2025-11-21 @ 06:50:19 EST
Buy Price:
$ 9.13
Sell Date:
2025-12-01 @ 09:32:22 EST
Sell Price:
$ 10.95
Profit/Loss:
$ 345.22
Profit/Loss %:
19.9 %
ARRY ┆ 5.4%
Ticker:
ARRY
Quantity:
417
Buy Date:
2025-11-21 @ 06:50:19 EST
Buy Price:
$ 6.71
Sell Date:
2025-11-21 @ 10:32:08 EST
Sell Price:
$ 7.07
Profit/Loss:
$ 20.16
Profit/Loss %:
5.4 %
CTM ┆ 0.0%
Ticker:
CTM
Quantity:
2,799
Buy Date:
2025-11-21 @ 06:50:19 EST
Buy Price:
$ 1.02
Sell Date:
2025-11-25 @ 15:45:16 EST
Sell Price:
$ 1.02
Profit/Loss:
$ 0.00
Profit/Loss %:
0.0 %
ACDC ┆ -0.3%
Ticker:
ACDC
Quantity:
848
Buy Date:
2025-11-21 @ 06:50:19 EST
Buy Price:
$ 3.33
Sell Date:
2025-11-25 @ 15:45:17 EST
Sell Price:
$ 3.32
Profit/Loss:
$ -8.48
Profit/Loss %:
-0.3 %
ATAI ┆ 3.3%
Ticker:
ATAI
Quantity:
766
Buy Date:
2025-11-21 @ 06:50:20 EST
Buy Price:
$ 3.66
Sell Date:
2025-11-21 @ 13:03:30 EST
Sell Price:
$ 3.78
Profit/Loss:
$ 91.92
Profit/Loss %:
3.3 %
NVVE ┆ -13.3%
Ticker:
NVVE
Quantity:
11,322
Buy Date:
2025-11-21 @ 06:50:20 EST
Buy Price:
$ 0.26
Sell Date:
2025-11-21 @ 12:17:53 EST
Sell Price:
$ 0.23
Profit/Loss:
$ -397.40
Profit/Loss %:
-13.3 %
PBM ┆ 3.2%
Ticker:
PBM
Quantity:
1,896
Buy Date:
2025-11-21 @ 06:50:20 EST
Buy Price:
$ 1.56
Sell Date:
2025-11-21 @ 09:31:57 EST
Sell Price:
$ 1.61
Profit/Loss:
$ 0.35
Profit/Loss %:
3.2 %

Pick List

Ticker Rank O: ℹ︎+ ℹ︎〇 ℹ︎- Δℹ︎ Δ% Δ% 2d RSI 7d RSI Vol (M) OPG Vol $ Open $ Close
WOOF 0.60 3 17 6 -20 -0.9 0.00% 0.64% 47 21 03.10 19,570 $ 2.78 $ 2.63
NVNO 0.60 0 2 1 -3 -0.1 -0.86% 20.00% 0 41 01.15 26,030 $ 0.31 $ 0.32
UAMY 0.60 5 19 13 -27 -0.1 0.38% 28.00% 33 41 11.59 145,084 $ 6.93 $ 5.88
SLDP 0.60 1 24 2 -25 0.0 1.25% 1.67% 0 24 12.00 304,115 $ 5.77 $ 5.02
EBS 0.59 0 12 0 -12 0.0 0.00% 0.00% 32 28 01.16 6,579 $ 10.00 $ 9.08
ARRY 0.59 0 3 2 -5 -0.9 0.00% 0.05% 0 27 10.16 106,103 $ 7.35 $ 6.68
CTM 0.59 2 1 2 -1 0.0 -0.20% -0.11% 50 44 02.06 15,922 $ 1.08 $ 1.03
ACDC 0.58 0 1 5 -6 -0.8 0.00% 0.00% 7 41 01.95 5,857 $ 3.63 $ 3.31
ATAI 0.58 1 4 1 -4 0.0 0.80% -0.62% 36 40 06.71 153,205 $ 3.88 $ 3.66
NVVE 0.57 1 6 3 -8 0.6 0.47% 0.00% 0 47 72.02 110,483 $ 0.19 $ 0.16
PBM 0.57 3 4 5 -6 0.4 15.25% -0.88% 50 71 20.41 126,167 $ 2.11 $ 1.72

Matching Picks

{'rsi_2d__lte': 50, 'volume__gte': 1000000}
Ticker Rank O: ℹ︎+ ℹ︎〇 ℹ︎- Δℹ︎ Δ% Δ% 2d RSI 7d RSI Vol (M) OPG Vol $ Open $ Close
WOOF 0.60 3 17 6 -20 -0.9 0.00% 0.64% 47 21 03.10 19,570 $ 2.78 $ 2.63
NVNO 0.60 0 2 1 -3 -0.1 -0.86% 20.00% 0 41 01.15 26,030 $ 0.31 $ 0.32
UAMY 0.60 5 19 13 -27 -0.1 0.38% 28.00% 33 41 11.59 145,084 $ 6.93 $ 5.88
SLDP 0.60 1 24 2 -25 0.0 1.25% 1.67% 0 24 12.00 304,115 $ 5.77 $ 5.02
EBS 0.59 0 12 0 -12 0.0 0.00% 0.00% 32 28 01.16 6,579 $ 10.00 $ 9.08
XRX 0.59 1 18 4 -21 0.0 4.11% 10.75% 0 0 03.57 49,031 $ 2.42 $ 2.34
ARRY 0.59 0 3 2 -5 -0.9 0.00% 0.05% 0 27 10.16 106,103 $ 7.35 $ 6.68
CTM 0.59 2 1 2 -1 0.0 -0.20% -0.11% 50 44 02.06 15,922 $ 1.08 $ 1.03
ACDC 0.58 0 1 5 -6 -0.8 0.00% 0.00% 7 41 01.95 5,857 $ 3.63 $ 3.31
ATAI 0.58 1 4 1 -4 0.0 0.80% -0.62% 36 40 06.71 153,205 $ 3.88 $ 3.66
NVVE 0.57 1 6 3 -8 0.6 0.47% 0.00% 0 47 72.02 110,483 $ 0.19 $ 0.16
PBM 0.57 3 4 5 -6 0.4 15.25% -0.88% 50 71 20.41 126,167 $ 2.11 $ 1.72
UNIT 0.57 2 71 3 -72 0.2 -0.13% -0.22% 0 41 02.06 18,245 $ 6.07 $ 5.86
YYAI 0.57 1 54 5 -58 -0.1 7.00% -0.84% 25 25 02.38 78,852 $ 1.06 $ 0.94
IRBT 0.57 0 7 2 -9 -0.8 -0.93% 42.50% 13 9 03.13 19,676 $ 1.71 $ 1.42
TLRY 0.57 2 53 15 -66 -0.5 -0.29% 2.16% 27 15 04.22 $ 10.10 $ 8.99
AUID 0.56 12 17 2 -7 0.5 0.00% 0.00% 0 29 63.39 621,114 $ 2.08 $ 1.71
RANI 0.56 1 3 1 -3 0.0 0.80% -0.43% 0 62 03.24 22,623 $ 1.76 $ 1.54
SNDX 0.56 0 2 2 -4 -0.3 -0.70% 20.50% 22 70 03.11 58,175 $ 17.10 $ 17.05
ATYR 0.55 0 1 2 -3 -0.6 1.00% -0.21% 50 38 04.35 36,866 $ 0.69 $ 0.65
SCYX 0.55 1 7 3 -9 -0.2 -0.78% 28.00% 33 25 02.72 2,630 $ 0.61 $ 0.69
TOVX 0.55 0 5 2 -7 -0.2 0.00% 0.00% 50 43 04.02 27,567 $ 0.23 $ 0.21
ACHV 0.55 0 3 0 -3 0.1 12.00% -0.97% 33 62 01.05 14,180 $ 4.32 $ 3.88
RC 0.55 0 25 1 -26 -0.5 0.00% 0.00% 0 28 02.11 21,900 $ 2.42 $ 2.33
HOTH 0.55 4 1 1 2 0.8 0.00% 0.00% 33 44 01.95 25,087 $ 1.20 $ 1.03
SES 0.55 4 16 2 -14 0.5 2.16% -0.70% 50 30 09.49 138,326 $ 1.91 $ 1.80
VZLA 0.54 1 10 0 -9 0.4 7.80% 2.50% 0 54 58.03 625,269 $ 4.03 $ 3.99
DAWN 0.54 4 6 33 -35 -0.1 0.00% 0.00% 0 37 01.96 13,873 $ 8.57 $ 8.29
SABR 0.54 1 6 0 -5 0.1 5.00% -0.95% 10 4 07.98 129,563 $ 1.67 $ 1.56
SGD 0.54 0 5 0 -5 0.0 0.00% 0.00% 0 38 01.93 14,273 $ 0.86 $ 0.83
QSI 0.53 7 7 1 -1 0.2 -0.41% 1.00% 50 30 06.78 179,463 $ 1.37 $ 1.24
HOLO 0.53 3 16 1 -14 0.0 0.86% -0.92% 40 39 01.03 9,301 $ 3.05 $ 2.96
PTON 0.52 0 1 4 -5 -0.8 -0.97% 42.50% 32 42 14.40 179,931 $ 7.04 $ 6.39
GANX 0.51 6 8 0 -2 0.5 0.00% 0.00% 43 57 01.52 31,541 $ 2.75 $ 2.85
CGEM 0.50 0 4 0 -4 0.0 0.00% 0.00% 0 89 01.08 6,339 $ 8.63 $ 8.72
MFA 0.49 4 3 0 1 0.0 -0.84% 2.00% 0 23 01.11 17,722 $ 9.06 $ 8.94

© 2025 - PennyLoupe LLC. Austin, TX.

DJDT

Versions

Package Name Version
Django 5.2.1
Python 3.11.8
coverage Coverage 7.4.4
debug_toolbar Debug Toolbar 4.3.0
django_extensions Django Extensions 5.2.1
grappelli Grappelli 4.0.2

Time

Resource usage

Resource Value
User CPU time 528.162 msec
System CPU time 0.000 msec
Total CPU time 528.162 msec
Elapsed time 781.772 msec
Context switches 61 voluntary, 3 involuntary

Browser timing

Timing attribute Timeline Milliseconds since navigation start (+length)

Settings from app.settings

Setting Value
ABSOLUTE_URL_OVERRIDES {}
ADMINS []
ALLOWED_HOSTS ['*']
APPEND_SLASH True
AUTH0_CLIENT_ID '********************'
AUTH0_CLIENT_SECRET '********************'
AUTH0_DOMAIN '********************'
AUTHENTICATION_BACKENDS '********************'
AUTH_PASSWORD_VALIDATORS '********************'
AUTH_USER_MODEL '********************'
BASE_DIR PosixPath('/mnt/disks/pennyloupe_disk/pennyloupe')
CACHES {'default': {'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache', 'LOCATION': '/var/tmp/django_cache'}}
CACHE_MIDDLEWARE_ALIAS 'default'
CACHE_MIDDLEWARE_KEY_PREFIX '********************'
CACHE_MIDDLEWARE_SECONDS 600
CELERY_BROKER_URL 'redis://localhost:6379'
CELERY_RESULT_BACKEND 'redis://localhost:6379'
CSRF_COOKIE_AGE 31449600
CSRF_COOKIE_DOMAIN None
CSRF_COOKIE_HTTPONLY False
CSRF_COOKIE_NAME 'csrftoken'
CSRF_COOKIE_PATH '/'
CSRF_COOKIE_SAMESITE 'Lax'
CSRF_COOKIE_SECURE False
CSRF_FAILURE_VIEW 'django.views.csrf.csrf_failure'
CSRF_HEADER_NAME 'HTTP_X_CSRFTOKEN'
CSRF_TRUSTED_ORIGINS []
CSRF_USE_SESSIONS False
DATABASES {'default': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_HEALTH_CHECKS': False, 'CONN_MAX_AGE': 0, 'ENGINE': 'django.db.backends.postgresql', 'HOST': '34.125.28.12', 'NAME': 'pennyloupe', 'OPTIONS': {}, 'PASSWORD': '********************', 'PORT': '5432', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIGRATE': True, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': 'pennyloupe'}}
DATABASE_ROUTERS []
DATA_UPLOAD_MAX_MEMORY_SIZE 2621440
DATA_UPLOAD_MAX_NUMBER_FIELDS 1000
DATA_UPLOAD_MAX_NUMBER_FILES 100
DATETIME_FORMAT 'N j, Y, P'
DATETIME_INPUT_FORMATS ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f', '%Y-%m-%d %H:%M', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M']
DATE_FORMAT 'N j, Y'
DATE_INPUT_FORMATS ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y']
DEBUG True
DEBUG_PROPAGATE_EXCEPTIONS False
DEBUG_TOOLBAR_CONFIG {'SHOW_TOOLBAR_CALLBACK': <function <lambda> at 0x7f3fcd3ef1a0>}
DECIMAL_SEPARATOR '.'
DEFAULT_AUTO_FIELD 'django.db.models.BigAutoField'
DEFAULT_CHARSET 'utf-8'
DEFAULT_EXCEPTION_REPORTER 'django.views.debug.ExceptionReporter'
DEFAULT_EXCEPTION_REPORTER_FILTER 'django.views.debug.SafeExceptionReporterFilter'
DEFAULT_FROM_EMAIL 'webmaster@localhost'
DEFAULT_INDEX_TABLESPACE ''
DEFAULT_TABLESPACE ''
DISALLOWED_USER_AGENTS []
EMAIL_BACKEND 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST 'localhost'
EMAIL_HOST_PASSWORD '********************'
EMAIL_HOST_USER ''
EMAIL_PORT 25
EMAIL_SSL_CERTFILE None
EMAIL_SSL_KEYFILE '********************'
EMAIL_SUBJECT_PREFIX '[Django] '
EMAIL_TIMEOUT None
EMAIL_USE_LOCALTIME False
EMAIL_USE_SSL False
EMAIL_USE_TLS False
FIELD_ENCRYPTION_KEY '********************'
FILE_UPLOAD_DIRECTORY_PERMISSIONS None
FILE_UPLOAD_HANDLERS ['django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler']
FILE_UPLOAD_MAX_MEMORY_SIZE 2621440
FILE_UPLOAD_PERMISSIONS 420
FILE_UPLOAD_TEMP_DIR None
FIRST_DAY_OF_WEEK 0
FIXTURE_DIRS []
FORCE_SCRIPT_NAME None
FORMAT_MODULE_PATH None
FORMS_URLFIELD_ASSUME_HTTPS False
FORM_RENDERER 'django.forms.renderers.DjangoTemplates'
GCP_LOCATION 'us-central1'
GCP_PROJECT_ID 'advance-honor-411011'
GCP_PROJECT_NUMBER '268856636042'
GCP_SERVICE_ACCOUNT '/Users/kcallahan/.config/gcloud/vector-search-user.json'
GCP_VERTEX_BUCKET 'pennyloupe-us-central1'
GCP_VERTEX_INDEX_ID '2477861603379249152'
GRAPPELLI_ADMIN_TITLE 'Penny Loupe'
GRAPPELLI_AUTOCOMPLETE_SEARCH_FIELDS {'auth': '********************'}
IGNORABLE_404_URLS []
INSTALLED_APPS ['coverage', 'grappelli', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.humanize', 'django.contrib.messages', 'django.contrib.postgres', 'django.contrib.sessions', 'django.contrib.staticfiles', 'django_htmx', 'app.core.apps.CoreConfig', 'django_extensions', 'debug_toolbar']
INTERNAL_IPS ['127.0.0.1']
LANGUAGES [('en', 'English')]
LANGUAGES_BIDI ['he', 'ar', 'ar-dz', 'ckb', 'fa', 'ug', 'ur']
LANGUAGE_CODE 'en-us'
LANGUAGE_COOKIE_AGE None
LANGUAGE_COOKIE_DOMAIN None
LANGUAGE_COOKIE_HTTPONLY False
LANGUAGE_COOKIE_NAME 'django_language'
LANGUAGE_COOKIE_PATH '/'
LANGUAGE_COOKIE_SAMESITE None
LANGUAGE_COOKIE_SECURE False
LOCALE_PATHS []
LOGGING {}
LOGGING_CONFIG 'logging.config.dictConfig'
LOGIN_REDIRECT_URL '/accounts/profile/'
LOGIN_URL '/accounts/login/'
LOGOUT_REDIRECT_URL None
MANAGERS []
MEDIA_ROOT PosixPath('/mnt/disks/pennyloupe_disk/pennyloupe/media')
MEDIA_URL '/media/'
MESSAGE_STORAGE 'django.contrib.messages.storage.fallback.FallbackStorage'
MIDDLEWARE ['django.middleware.security.SecurityMiddleware', 'whitenoise.middleware.WhiteNoiseMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.cache.UpdateCacheMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'django_htmx.middleware.HtmxMiddleware', 'debug_toolbar.middleware.DebugToolbarMiddleware']
MIGRATION_MODULES {}
MONTH_DAY_FORMAT 'F j'
NUMBER_GROUPING 0
OPENAI_API_KEY '********************'
PASSWORD_HASHERS '********************'
PASSWORD_RESET_TIMEOUT '********************'
POLYGON_API_KEY '********************'
PREPEND_WWW False
QT_API_KEY '********************'
QT_APP_ID '13d3cbab'
QT_PASSWORD '********************'
QT_USERNAME 'kevin+dev3@pennyloupe.com'
ROOT_URLCONF 'app.urls'
SALT_KEY '********************'
SCRAPER_API_KEY '********************'
SECRET_KEY '********************'
SECRET_KEY_FALLBACKS '********************'
SECURE_CONTENT_TYPE_NOSNIFF True
SECURE_CROSS_ORIGIN_OPENER_POLICY 'same-origin'
SECURE_HSTS_INCLUDE_SUBDOMAINS False
SECURE_HSTS_PRELOAD False
SECURE_HSTS_SECONDS 0
SECURE_PROXY_SSL_HEADER None
SECURE_REDIRECT_EXEMPT []
SECURE_REFERRER_POLICY 'same-origin'
SECURE_SSL_HOST None
SECURE_SSL_REDIRECT False
SERVER_EMAIL 'root@localhost'
SESSION_CACHE_ALIAS 'default'
SESSION_COOKIE_AGE 1209600
SESSION_COOKIE_DOMAIN None
SESSION_COOKIE_HTTPONLY True
SESSION_COOKIE_NAME 'sessionid'
SESSION_COOKIE_PATH '/'
SESSION_COOKIE_SAMESITE 'Lax'
SESSION_COOKIE_SECURE False
SESSION_ENGINE 'django.contrib.sessions.backends.db'
SESSION_EXPIRE_AT_BROWSER_CLOSE False
SESSION_FILE_PATH None
SESSION_SAVE_EVERY_REQUEST False
SESSION_SERIALIZER 'django.contrib.sessions.serializers.JSONSerializer'
SETTINGS_MODULE 'app.settings'
SHORT_DATETIME_FORMAT 'm/d/Y P'
SHORT_DATE_FORMAT 'm/d/Y'
SIGNING_BACKEND 'django.core.signing.TimestampSigner'
SILENCED_SYSTEM_CHECKS []
SQL_FILES_DIR '/mnt/disks/pennyloupe_disk/pennyloupe/app/core/sql'
STATICFILES_DIRS []
STATICFILES_FINDERS ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder']
STATIC_ROOT PosixPath('/mnt/disks/pennyloupe_disk/pennyloupe/static')
STATIC_URL '/static/'
STORAGES {'default': {'BACKEND': 'django.core.files.storage.FileSystemStorage'}, 'staticfiles': {'BACKEND': 'django.contrib.staticfiles.storage.StaticFilesStorage'}}
TEMPLATES [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['templates'], 'OPTIONS': {'context_processors': ['django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages']}}]
TEST_NON_SERIALIZED_APPS []
TEST_RUNNER 'django.test.runner.DiscoverRunner'
THOUSAND_SEPARATOR ','
TIME_FORMAT 'P'
TIME_INPUT_FORMATS ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M']
TIME_ZONE 'UTC'
USE_I18N True
USE_THOUSAND_SEPARATOR False
USE_TZ True
USE_X_FORWARDED_HOST False
USE_X_FORWARDED_PORT False
WSGI_APPLICATION 'app.wsgi.application'
X_FRAME_OPTIONS 'DENY'
YEAR_MONTH_FORMAT 'F Y'

Headers

Request headers

Key Value
Accept */*
Accept-Encoding gzip, br, zstd, deflate
Host pennyloupe.com
User-Agent Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)

Response headers

Key Value
Content-Type text/html; charset=utf-8

WSGI environ

Since the WSGI environ inherits the environment of the server, only a significant subset is shown below.

Key Value
CONTENT_LENGTH
CONTENT_TYPE
PATH_INFO /trade/bot/54
QUERY_STRING date_pick=2025-11-21&panel=picklist
REMOTE_ADDR 216.73.216.112
REQUEST_METHOD GET
SCRIPT_NAME
SERVER_NAME pennyloupe.com
SERVER_PORT 443
SERVER_PROTOCOL HTTP/1.1

Request

View information

View function Arguments Keyword arguments URL name
app.core.views.app.trade_bot_detail () {'id': 54} trade_bot_detail

No cookies

No session data

GET data

Variable Value
'date_pick' '2025-11-21'
'panel' 'picklist'

No POST data

SQL queries from 1 connection

  • default 45.71 ms (15 queries )
Query Timeline Time (ms) Action
SELECT "pl_trade_bot"."created_dt",
       "pl_trade_bot"."updated_dt",
       "pl_trade_bot"."status_id",
       "pl_trade_bot"."id",
       "pl_trade_bot"."name",
       "pl_trade_bot"."description",
       "pl_trade_bot"."key",
       "pl_trade_bot"."last_run_dt",
       "pl_trade_bot"."strategy",
       "pl_trade_bot"."version",
       "pl_trade_bot"."account_id",
       "pl_trade_bot"."trade_ledger_id",
       "pl_trade_bot"."model_id",
       "pl_trade_ledger"."created_dt",
       "pl_trade_ledger"."updated_dt",
       "pl_trade_ledger"."status_id",
       "pl_trade_ledger"."id",
       "pl_trade_ledger"."user_id",
       "pl_trade_ledger"."key",
       "pl_trade_ledger"."description",
       "pl_trade_ledger"."initial_cash_value",
       "pl_trade_ledger"."is_paper",
       "pl_trade_ledger"."account_number",
       "pl_trade_ledger"."account_provider",
       "pl_trade_ledger"."account_id",
       "pl_trade_ledger"."trade_account_id",
       "pl_model"."created_dt",
       "pl_model"."updated_dt",
       "pl_model"."status_id",
       "pl_model"."id",
       "pl_model"."key",
       "pl_model"."name",
       "pl_model"."description",
       "pl_model"."type",
       "pl_model"."version",
       "pl_model"."last_trained_dt",
       "pl_model"."last_run_dt",
       "pl_model"."end_point_url",
       "pl_model"."meta",
       "pl_model"."account_id"
  FROM "pl_trade_bot"
 INNER JOIN "pl_trade_ledger"
    ON ("pl_trade_bot"."trade_ledger_id" = "pl_trade_ledger"."id")
  LEFT OUTER JOIN "pl_model"
    ON ("pl_trade_bot"."model_id" = "pl_model"."id")
 WHERE "pl_trade_bot"."id" = 54
 LIMIT 21
SELECT ••• FROM "pl_trade_bot" INNER JOIN "pl_trade_ledger" ON ("pl_trade_bot"."trade_ledger_id" = "pl_trade_ledger"."id") LEFT OUTER JOIN "pl_model" ON ("pl_trade_bot"."model_id" = "pl_model"."id") WHERE "pl_trade_bot"."id" = 54 LIMIT 21
3.99

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in trade_bot_detail(2583)
  trade_bot = TradeBot.objects.select_related("model", "ledger").get(pk=id)

SELECT "pl_trade_position"."ticker" AS "ticker"
  FROM "pl_trade_position"
 WHERE "pl_trade_position"."trade_ledger_id" = 79
SELECT ••• FROM "pl_trade_position" WHERE "pl_trade_position"."trade_ledger_id" = 79
1.12

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in trade_bot_detail(2586)
  trade_positions = get_ledger_positions(ledger_id=trade_bot.ledger.id)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/service/ledger.py in get_ledger_positions(27)
  tickers = list(tickers)

SELECT "pl_trade_order"."created_dt",
       "pl_trade_order"."updated_dt",
       "pl_trade_order"."status_id",
       "pl_trade_order"."id",
       "pl_trade_order"."key",
       "pl_trade_order"."trader_ref_id",
       "pl_trade_order"."ext_id",
       "pl_trade_order"."model",
       "pl_trade_order"."trade_strategy",
       "pl_trade_order"."ticker",
       "pl_trade_order"."action",
       "pl_trade_order"."reason",
       "pl_trade_order"."quantity",
       "pl_trade_order"."quantity_filled",
       "pl_trade_order"."price",
       "pl_trade_order"."total",
       "pl_trade_order"."note",
       "pl_trade_order"."history",
       "pl_trade_order"."trade_basket_id",
       "pl_trade_order"."trade_bot_id",
       "pl_trade_order"."trade_ledger_id",
       "pl_trade_order"."model_id",
       "pl_trade_basket"."created_dt",
       "pl_trade_basket"."updated_dt",
       "pl_trade_basket"."status_id",
       "pl_trade_basket"."id",
       "pl_trade_basket"."date",
       "pl_trade_basket"."trade_bot_id"
  FROM "pl_trade_order"
 INNER JOIN "pl_trade_basket"
    ON ("pl_trade_order"."trade_basket_id" = "pl_trade_basket"."id")
 WHERE ("pl_trade_order"."trade_basket_id" IN (SELECT U0."id" AS "id" FROM "pl_trade_basket" U0 WHERE (U0."status_id" = 10 AND U0."trade_bot_id" = 54 AND U0."date" >= '2025-11-21'::date AND U0."date" <= '2025-12-05'::date)) AND "pl_trade_order"."status_id" = 10)
 ORDER BY "pl_trade_order"."created_dt" ASC
SELECT ••• FROM "pl_trade_order" INNER JOIN "pl_trade_basket" ON ("pl_trade_order"."trade_basket_id" = "pl_trade_basket"."id") WHERE ("pl_trade_order"."trade_basket_id" IN (SELECT U0."id" AS "id" FROM "pl_trade_basket" U0 WHERE (U0."status_id" = 10 AND U0."trade_bot_id" = 54 AND U0."date" >= '2025-11-21'::date AND U0."date" <= '2025-12-05'::date)) AND "pl_trade_order"."status_id" = 10) ORDER BY "pl_trade_order"."created_dt" ASC
5.83

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in trade_bot_detail(2609)
  for order in trade_orders:

SELECT MAX("pl_symbol_history_stat"."report_date") AS "report_date__max"
  FROM "pl_symbol_history_stat"
 WHERE "pl_symbol_history_stat"."report_date" < '2025-11-21'::date
SELECT ••• FROM "pl_symbol_history_stat" WHERE "pl_symbol_history_stat"."report_date" < '2025-11-21'::date
1.48

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in trade_bot_detail(2709)
  .aggregate(Max("report_date"))

SELECT DISTINCT "pl_trade_basket_pick"."ticker" AS "ticker",
       "pl_trade_basket_pick"."probability"
  FROM "pl_trade_basket_pick"
 INNER JOIN "pl_trade_basket"
    ON ("pl_trade_basket_pick"."trade_basket_id" = "pl_trade_basket"."id")
 WHERE ("pl_trade_basket"."date" = '2025-11-21'::date AND "pl_trade_basket"."status_id" = 10 AND "pl_trade_basket"."trade_bot_id" = 54 AND "pl_trade_basket_pick"."status_id" = 10)
 ORDER BY "pl_trade_basket_pick"."probability" DESC
SELECT ••• FROM "pl_trade_basket_pick" INNER JOIN "pl_trade_basket" ON ("pl_trade_basket_pick"."trade_basket_id" = "pl_trade_basket"."id") WHERE ("pl_trade_basket"."date" = '2025-11-21'::date AND "pl_trade_basket"."status_id" = 10 AND "pl_trade_basket"."trade_bot_id" = 54 AND "pl_trade_basket_pick"."status_id" = 10) ORDER BY "pl_trade_basket_pick"."probability" DESC
2.14

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in trade_bot_detail(2736)
  tickers = list(

SELECT "pl_symbol_option_history"."id",
       "pl_symbol_option_history"."date",
       "pl_symbol_option_history"."ticker",
       "pl_symbol_option_history"."call_count",
       "pl_symbol_option_history"."put_count",
       "pl_symbol_option_history"."fetch_ref_id"
  FROM "pl_symbol_option_history"
 WHERE ("pl_symbol_option_history"."date" = '2025-11-20'::date AND "pl_symbol_option_history"."ticker" IN ('WOOF', 'NVNO', 'UAMY', 'SLDP', 'EBS', 'ARRY', 'CTM', 'ACDC', 'ATAI', 'NVVE', 'PBM'))
SELECT ••• FROM "pl_symbol_option_history" WHERE ("pl_symbol_option_history"."date" = '2025-11-20'::date AND "pl_symbol_option_history"."ticker" IN ('WOOF', 'NVNO', 'UAMY', 'SLDP', 'EBS', 'ARRY', 'CTM', 'ACDC', 'ATAI', 'NVVE', 'PBM'))
1.80

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in trade_bot_detail(2740)
  option_lookup = {

SELECT "pl_symbol_report_stat"."id",
       "pl_symbol_report_stat"."report_date",
       "pl_symbol_report_stat"."ticker",
       "pl_symbol_report_stat"."items_count",
       "pl_symbol_report_stat"."items_count_1d",
       "pl_symbol_report_stat"."items_count_7d_avg",
       "pl_symbol_report_stat"."items_count_30d_avg",
       "pl_symbol_report_stat"."items_count_delta_1d",
       "pl_symbol_report_stat"."items_count_delta_1d_pct",
       "pl_symbol_report_stat"."items_count_delta_7d_avg",
       "pl_symbol_report_stat"."items_count_delta_7d_avg_pct",
       "pl_symbol_report_stat"."items_count_delta_30d_avg",
       "pl_symbol_report_stat"."items_count_delta_30d_avg_pct",
       "pl_symbol_report_stat"."items_positive_count",
       "pl_symbol_report_stat"."items_positive_count_1d",
       "pl_symbol_report_stat"."items_positive_count_7d_avg",
       "pl_symbol_report_stat"."items_positive_count_30d_avg",
       "pl_symbol_report_stat"."items_positive_count_delta_1d",
       "pl_symbol_report_stat"."items_positive_count_delta_1d_pct",
       "pl_symbol_report_stat"."items_positive_count_delta_7d_avg",
       "pl_symbol_report_stat"."items_positive_count_delta_7d_avg_pct",
       "pl_symbol_report_stat"."items_positive_count_delta_30d_avg",
       "pl_symbol_report_stat"."items_positive_count_delta_30d_avg_pct",
       "pl_symbol_report_stat"."items_negative_count",
       "pl_symbol_report_stat"."items_negative_count_1d",
       "pl_symbol_report_stat"."items_negative_count_7d_avg",
       "pl_symbol_report_stat"."items_negative_count_30d_avg",
       "pl_symbol_report_stat"."items_negative_count_delta_1d",
       "pl_symbol_report_stat"."items_negative_count_delta_1d_pct",
       "pl_symbol_report_stat"."items_negative_count_delta_7d_avg",
       "pl_symbol_report_stat"."items_negative_count_delta_7d_avg_pct",
       "pl_symbol_report_stat"."items_negative_count_delta_30d_avg",
       "pl_symbol_report_stat"."items_negative_count_delta_30d_avg_pct",
       "pl_symbol_report_stat"."items_neutral_count",
       "pl_symbol_report_stat"."items_neutral_count_id",
       "pl_symbol_report_stat"."items_neutral_count_7d_avg",
       "pl_symbol_report_stat"."items_neutral_count_30d_avg",
       "pl_symbol_report_stat"."items_neutral_count_delta_1d",
       "pl_symbol_report_stat"."items_neutral_count_delta_1d_pct",
       "pl_symbol_report_stat"."items_neutral_count_delta_7d_avg",
       "pl_symbol_report_stat"."items_neutral_count_delta_7d_avg_pct",
       "pl_symbol_report_stat"."items_neutral_count_delta_30d_avg",
       "pl_symbol_report_stat"."items_neutral_count_delta_30d_avg_pct",
       "pl_symbol_report_stat"."authors_count",
       "pl_symbol_report_stat"."authors_count_1d",
       "pl_symbol_report_stat"."authors_count_7d_avg",
       "pl_symbol_report_stat"."authors_count_30d_avg",
       "pl_symbol_report_stat"."authors_count_delta_1d",
       "pl_symbol_report_stat"."authors_count_delta_1d_pct",
       "pl_symbol_report_stat"."authors_count_delta_7d_avg",
       "pl_symbol_report_stat"."authors_count_delta_7d_avg_pct",
       "pl_symbol_report_stat"."authors_count_delta_30d_avg",
       "pl_symbol_report_stat"."authors_count_delta_30d_avg_pct",
       "pl_symbol_report_stat"."authors_positive_count",
       "pl_symbol_report_stat"."authors_positive_count_1d",
       "pl_symbol_report_stat"."authors_positive_count_7d_avg",
       "pl_symbol_report_stat"."authors_positive_count_30d_avg",
       "pl_symbol_report_stat"."authors_positive_count_delta_1d",
       "pl_symbol_report_stat"."authors_positive_count_delta_1d_pct",
       "pl_symbol_report_stat"."authors_positive_count_delta_7d_avg",
       "pl_symbol_report_stat"."authors_positive_count_delta_7d_avg_pct",
       "pl_symbol_report_stat"."authors_positive_count_delta_30d_avg",
       "pl_symbol_report_stat"."authors_positive_count_delta_30d_avg_pct",
       "pl_symbol_report_stat"."authors_negative_count",
       "pl_symbol_report_stat"."authors_negative_count_1d",
       "pl_symbol_report_stat"."authors_negative_count_7d_avg",
       "pl_symbol_report_stat"."authors_negative_count_30d_avg",
       "pl_symbol_report_stat"."authors_negative_count_delta_1d",
       "pl_symbol_report_stat"."authors_negative_count_delta_1d_pct",
       "pl_symbol_report_stat"."authors_negative_count_delta_7d_avg",
       "pl_symbol_report_stat"."authors_negative_count_delta_7d_avg_pct",
       "pl_symbol_report_stat"."authors_negative_count_delta_30d_avg",
       "pl_symbol_report_stat"."authors_negative_count_delta_30d_avg_pct",
       "pl_symbol_report_stat"."authors_neutral_count",
       "pl_symbol_report_stat"."authors_neutral_count_1d",
       "pl_symbol_report_stat"."authors_neutral_count_7d_avg",
       "pl_symbol_report_stat"."authors_neutral_count_30d_avg",
       "pl_symbol_report_stat"."authors_neutral_count_delta_1d",
       "pl_symbol_report_stat"."authors_neutral_count_delta_1d_pct",
       "pl_symbol_report_stat"."authors_neutral_count_delta_7d_avg",
       "pl_symbol_report_stat"."authors_neutral_count_delta_7d_avg_pct",
       "pl_symbol_report_stat"."authors_neutral_count_delta_30d_avg",
       "pl_symbol_report_stat"."authors_neutral_count_delta_30d_avg_pct",
       "pl_symbol_report_stat"."sentiment_avg",
       "pl_symbol_report_stat"."sentiment_avg_1d",
       "pl_symbol_report_stat"."sentiment_7d_avg",
       "pl_symbol_report_stat"."sentiment_30d_avg",
       "pl_symbol_report_stat"."sentiment_delta_1d",
       "pl_symbol_report_stat"."sentiment_delta_1d_pct",
       "pl_symbol_report_stat"."sentiment_delta_7d_avg",
       "pl_symbol_report_stat"."sentiment_delta_7d_avg_pct",
       "pl_symbol_report_stat"."sentiment_delta_30d_avg",
       "pl_symbol_report_stat"."sentiment_delta_30d_avg_pct",
       "pl_symbol_report_stat"."sentiment_positive",
       "pl_symbol_report_stat"."sentiment_positive_1d",
       "pl_symbol_report_stat"."sentiment_positive_7d_avg",
       "pl_symbol_report_stat"."sentiment_positive_30d_avg",
       "pl_symbol_report_stat"."sentiment_positive_delta_1d",
       "pl_symbol_report_stat"."sentiment_positive_delta_1d_pct",
       "pl_symbol_report_stat"."sentiment_positive_delta_7d_avg",
       "pl_symbol_report_stat"."sentiment_positive_delta_7d_avg_pct",
       "pl_symbol_report_stat"."sentiment_positive_delta_30d_avg",
       "pl_symbol_report_stat"."sentiment_positive_delta_30d_avg_pct",
       "pl_symbol_report_stat"."sentiment_negative",
       "pl_symbol_report_stat"."sentiment_negative_1d",
       "pl_symbol_report_stat"."sentiment_negative_7d_avg",
       "pl_symbol_report_stat"."sentiment_negative_30d_avg",
       "pl_symbol_report_stat"."sentiment_negative_delta_1d",
       "pl_symbol_report_stat"."sentiment_negative_delta_1d_pct",
       "pl_symbol_report_stat"."sentiment_negative_delta_7d_avg",
       "pl_symbol_report_stat"."sentiment_negative_delta_7d_avg_pct",
       "pl_symbol_report_stat"."sentiment_negative_delta_30d_avg",
       "pl_symbol_report_stat"."sentiment_negative_delta_30d_avg_pct",
       "pl_symbol_report_stat"."sentiment_neutral",
       "pl_symbol_report_stat"."sentiment_neutral_1d",
       "pl_symbol_report_stat"."sentiment_neutral_7d_avg",
       "pl_symbol_report_stat"."sentiment_neutral_30d_avg",
       "pl_symbol_report_stat"."sentiment_neutral_delta_1d",
       "pl_symbol_report_stat"."sentiment_neutral_delta_1d_pct",
       "pl_symbol_report_stat"."sentiment_neutral_delta_7d_avg",
       "pl_symbol_report_stat"."sentiment_neutral_delta_7d_avg_pct",
       "pl_symbol_report_stat"."sentiment_neutral_delta_30d_avg",
       "pl_symbol_report_stat"."sentiment_neutral_delta_30d_avg_pct",
       "pl_symbol_report_stat"."relevance_avg_score",
       "pl_symbol_report_stat"."relevance_avg_score_1d",
       "pl_symbol_report_stat"."relevance_avg_score_7d",
       "pl_symbol_report_stat"."relevance_avg_score_30d",
       "pl_symbol_report_stat"."relevance_avg_score_delta_1d",
       "pl_symbol_report_stat"."relevance_avg_score_delta_1d_pct",
       "pl_symbol_report_stat"."relevance_avg_score_delta_7d_avg",
       "pl_symbol_report_stat"."relevance_avg_score_delta_7d_avg_pct",
       "pl_symbol_report_stat"."relevance_avg_score_delta_30d_avg",
       "pl_symbol_report_stat"."relevance_avg_score_delta_30d_avg_pct",
       "pl_symbol_report_stat"."citation_flow_avg",
       "pl_symbol_report_stat"."trust_flow_avg"
  FROM "pl_symbol_report_stat"
 WHERE ("pl_symbol_report_stat"."report_date" = '2025-11-20'::date AND "pl_symbol_report_stat"."ticker" IN ('WOOF', 'NVNO', 'UAMY', 'SLDP', 'EBS', 'ARRY', 'CTM', 'ACDC', 'ATAI', 'NVVE', 'PBM'))
SELECT ••• FROM "pl_symbol_report_stat" WHERE ("pl_symbol_report_stat"."report_date" = '2025-11-20'::date AND "pl_symbol_report_stat"."ticker" IN ('WOOF', 'NVNO', 'UAMY', 'SLDP', 'EBS', 'ARRY', 'CTM', 'ACDC', 'ATAI', 'NVVE', 'PBM'))
4.75

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in trade_bot_detail(2745)
  report_lookup = {

SELECT "pl_symbol_history_stat"."id",
       "pl_symbol_history_stat"."report_date",
       "pl_symbol_history_stat"."ticker",
       "pl_symbol_history_stat"."price_open",
       "pl_symbol_history_stat"."price_close",
       "pl_symbol_history_stat"."price_change",
       "pl_symbol_history_stat"."price_low",
       "pl_symbol_history_stat"."price_high",
       "pl_symbol_history_stat"."price_spread",
       "pl_symbol_history_stat"."true_range",
       "pl_symbol_history_stat"."volume",
       "pl_symbol_history_stat"."volume_open",
       "pl_symbol_history_stat"."volume_close",
       "pl_symbol_history_stat"."transactions",
       "pl_symbol_history_stat"."vwap",
       "pl_symbol_history_stat"."vwap_open",
       "pl_symbol_history_stat"."vwap_close",
       "pl_symbol_history_stat"."gain_1d",
       "pl_symbol_history_stat"."loss_1d",
       "pl_symbol_history_stat"."price_close_1d",
       "pl_symbol_history_stat"."price_close_delta_1d",
       "pl_symbol_history_stat"."price_close_delta_1d_pct",
       "pl_symbol_history_stat"."spread_1d",
       "pl_symbol_history_stat"."spread_delta_1d",
       "pl_symbol_history_stat"."spread_delta_1d_pct",
       "pl_symbol_history_stat"."volume_1d",
       "pl_symbol_history_stat"."volume_delta_1d",
       "pl_symbol_history_stat"."volume_delta_1d_pct",
       "pl_symbol_history_stat"."gain_2d_avg",
       "pl_symbol_history_stat"."loss_2d_avg",
       "pl_symbol_history_stat"."rs_2d",
       "pl_symbol_history_stat"."rsi_2d",
       "pl_symbol_history_stat"."atr_2d",
       "pl_symbol_history_stat"."price_close_2d",
       "pl_symbol_history_stat"."price_close_delta_2d",
       "pl_symbol_history_stat"."price_close_delta_2d_pct",
       "pl_symbol_history_stat"."price_close_2d_avg",
       "pl_symbol_history_stat"."price_close_delta_2d_avg",
       "pl_symbol_history_stat"."price_close_delta_2d_avg_pct",
       "pl_symbol_history_stat"."spread_2d_avg",
       "pl_symbol_history_stat"."spread_delta_2d_avg",
       "pl_symbol_history_stat"."spread_delta_2d_avg_pct",
       "pl_symbol_history_stat"."volume_2d_avg",
       "pl_symbol_history_stat"."volume_delta_2d_avg",
       "pl_symbol_history_stat"."volume_delta_2d_avg_pct",
       "pl_symbol_history_stat"."gain_7d_avg",
       "pl_symbol_history_stat"."loss_7d_avg",
       "pl_symbol_history_stat"."rs_7d",
       "pl_symbol_history_stat"."rsi_7d",
       "pl_symbol_history_stat"."atr_7d",
       "pl_symbol_history_stat"."price_close_7d",
       "pl_symbol_history_stat"."price_close_delta_7d",
       "pl_symbol_history_stat"."price_close_delta_7d_pct",
       "pl_symbol_history_stat"."price_close_7d_avg",
       "pl_symbol_history_stat"."price_close_delta_7d_avg",
       "pl_symbol_history_stat"."price_close_delta_7d_avg_pct",
       "pl_symbol_history_stat"."spread_7d_avg",
       "pl_symbol_history_stat"."spread_delta_7d_avg",
       "pl_symbol_history_stat"."spread_delta_7d_avg_pct",
       "pl_symbol_history_stat"."volume_7d_avg",
       "pl_symbol_history_stat"."volume_delta_7d_avg",
       "pl_symbol_history_stat"."volume_delta_7d_avg_pct",
       "pl_symbol_history_stat"."gain_30d_avg",
       "pl_symbol_history_stat"."loss_30d_avg",
       "pl_symbol_history_stat"."rs_30d",
       "pl_symbol_history_stat"."rsi_30d",
       "pl_symbol_history_stat"."atr_30d",
       "pl_symbol_history_stat"."price_close_30d",
       "pl_symbol_history_stat"."price_close_delta_30d",
       "pl_symbol_history_stat"."price_close_delta_30d_pct",
       "pl_symbol_history_stat"."price_close_30d_avg",
       "pl_symbol_history_stat"."price_close_delta_30d_avg",
       "pl_symbol_history_stat"."price_close_delta_30d_avg_pct",
       "pl_symbol_history_stat"."spread_30d_avg",
       "pl_symbol_history_stat"."spread_delta_30d_avg",
       "pl_symbol_history_stat"."spread_delta_30d_avg_pct",
       "pl_symbol_history_stat"."volume_30d_avg",
       "pl_symbol_history_stat"."volume_delta_30d_avg",
       "pl_symbol_history_stat"."volume_delta_30d_avg_pct"
  FROM "pl_symbol_history_stat"
 WHERE ("pl_symbol_history_stat"."report_date" = '2025-11-20'::date AND "pl_symbol_history_stat"."ticker" IN ('WOOF', 'NVNO', 'UAMY', 'SLDP', 'EBS', 'ARRY', 'CTM', 'ACDC', 'ATAI', 'NVVE', 'PBM'))
SELECT ••• FROM "pl_symbol_history_stat" WHERE ("pl_symbol_history_stat"."report_date" = '2025-11-20'::date AND "pl_symbol_history_stat"."ticker" IN ('WOOF', 'NVNO', 'UAMY', 'SLDP', 'EBS', 'ARRY', 'CTM', 'ACDC', 'ATAI', 'NVVE', 'PBM'))
2.15

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in trade_bot_detail(2750)
  history_lookup = {

SELECT "pl_trade_basket_pick"."created_dt",
       "pl_trade_basket_pick"."updated_dt",
       "pl_trade_basket_pick"."status_id",
       "pl_trade_basket_pick"."id",
       "pl_trade_basket_pick"."ticker",
       "pl_trade_basket_pick"."probability",
       "pl_trade_basket_pick"."trade_basket_id",
       "pl_trade_basket"."date" AS "pick_date"
  FROM "pl_trade_basket_pick"
 INNER JOIN "pl_trade_basket"
    ON ("pl_trade_basket_pick"."trade_basket_id" = "pl_trade_basket"."id")
 WHERE ("pl_trade_basket"."date" = '2025-11-21'::date AND "pl_trade_basket"."status_id" = 10 AND "pl_trade_basket"."trade_bot_id" = 54 AND "pl_trade_basket_pick"."status_id" = 10)
 ORDER BY "pl_trade_basket_pick"."probability" DESC
SELECT ••• FROM "pl_trade_basket_pick" INNER JOIN "pl_trade_basket" ON ("pl_trade_basket_pick"."trade_basket_id" = "pl_trade_basket"."id") WHERE ("pl_trade_basket"."date" = '2025-11-21'::date AND "pl_trade_basket"."status_id" = 10 AND "pl_trade_basket"."trade_bot_id" = 54 AND "pl_trade_basket_pick"."status_id" = 10) ORDER BY "pl_trade_basket_pick"."probability" DESC
1.19

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in trade_bot_detail(2756)
  for row in picklist_results:

SELECT "pl_model_pick"."ticker" AS "ticker"
  FROM "pl_model_pick"
 WHERE ("pl_model_pick"."model_id" = 192 AND "pl_model_pick"."pick_date" = '2025-11-21'::date AND "pl_model_pick"."status_id" = 10)
 ORDER BY "pl_model_pick"."probability" DESC
SELECT ••• FROM "pl_model_pick" WHERE ("pl_model_pick"."model_id" = 192 AND "pl_model_pick"."pick_date" = '2025-11-21'::date AND "pl_model_pick"."status_id" = 10) ORDER BY "pl_model_pick"."probability" DESC
1.26

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in trade_bot_detail(2815)
  tickers = list(

SELECT "pl_symbol_option_history"."id",
       "pl_symbol_option_history"."date",
       "pl_symbol_option_history"."ticker",
       "pl_symbol_option_history"."call_count",
       "pl_symbol_option_history"."put_count",
       "pl_symbol_option_history"."fetch_ref_id"
  FROM "pl_symbol_option_history"
 WHERE ("pl_symbol_option_history"."date" = '2025-11-20'::date AND "pl_symbol_option_history"."ticker" IN ('PRTS', 'RVPH', 'WOOF', 'ASM', 'CMCT', 'NVNO', 'UAMY', 'SLDP', 'EBS', 'LINK', 'ABCL', 'CNET', 'XRX', 'ARRY', 'BLDP', 'CTM', 'FORD', 'SBC', 'ACDC', 'CETX', 'ATRA', 'CDT', 'CURI', 'RZLV', 'ATAI', 'EKSO', 'GAME', 'SLI', 'AZ', 'REKR', 'MSAI', 'RR', 'SMX', 'SOND', 'CHPT', 'NVVE', 'PBM', 'UNIT', 'YYAI', 'FLWS', 'ATOM', 'CIFR', 'ENSC', 'BRCC', 'IRBT', 'LDI', 'OSTX', 'PSQH', 'TLRY', 'OCG', 'PERI', 'SCLX', 'AUID', 'DSGN', 'ONFO', 'PUMP', 'EPM', 'MATH', 'RANI', 'AEON', 'AIMD', 'BDTX', 'OFS', 'SNDX', 'STXS', 'ORKA', 'ADD', 'CYBN', 'DPRO', 'FGL', 'RNXT', 'SENS', 'ATYR', 'MGX', 'NKTX', 'POET', 'SHIP', 'WULF', 'MNY', 'SCYX', 'TOVX', 'TRUE', 'ZVIA', 'ACHV', 'BW', 'RC', 'ROMA', 'WKHS', 'HOTH', 'SES', 'COOK', 'PET', 'VZLA', 'CAMP', 'CLNN', 'DAWN', 'GV', 'LAW', 'PROF', 'ECOR', 'EQ', 'FFWM', 'LOOP', 'SABR', 'SGD', 'VIVK', 'CRIS', 'ICU', 'SLQT', 'UMAC', 'DLNG', 'DUO', 'GP', 'NOTE', 'ZYXI', 'CATO', 'MAIA', 'GILT', 'PAPL', 'QSI', 'TURN', 'EGY', 'EQS', 'HOLO', 'PAYS', 'RDZN', 'TTEC', 'DSX', 'CLIR', 'IRWD', 'REVB', 'PRSO', 'VS', 'LRHC', 'PTON', 'LION', 'GREE', 'PSTV', 'TORO', 'AUNA', 'GANX', 'OPI', 'AHT', 'MLSS', 'NESR', 'TYRA', 'CGEM', 'ADGM', 'PCSA', 'FF', 'IMMR', 'MFA', 'INBS'))
SELECT ••• FROM "pl_symbol_option_history" WHERE ("pl_symbol_option_history"."date" = '2025-11-20'::date AND "pl_symbol_option_history"."ticker" IN ('PRTS', 'RVPH', 'WOOF', 'ASM', 'CMCT', 'NVNO', 'UAMY', 'SLDP', 'EBS', 'LINK', 'ABCL', 'CNET', 'XRX', 'ARRY', 'BLDP', 'CTM', 'FORD', 'SBC', 'ACDC', 'CETX', 'ATRA', 'CDT', 'CURI', 'RZLV', 'ATAI', 'EKSO', 'GAME', 'SLI', 'AZ', 'REKR', 'MSAI', 'RR', 'SMX', 'SOND', 'CHPT', 'NVVE', 'PBM', 'UNIT', 'YYAI', 'FLWS', 'ATOM', 'CIFR', 'ENSC', 'BRCC', 'IRBT', 'LDI', 'OSTX', 'PSQH', 'TLRY', 'OCG', 'PERI', 'SCLX', 'AUID', 'DSGN', 'ONFO', 'PUMP', 'EPM', 'MATH', 'RANI', 'AEON', 'AIMD', 'BDTX', 'OFS', 'SNDX', 'STXS', 'ORKA', 'ADD', 'CYBN', 'DPRO', 'FGL', 'RNXT', 'SENS', 'ATYR', 'MGX', 'NKTX', 'POET', 'SHIP', 'WULF', 'MNY', 'SCYX', 'TOVX', 'TRUE', 'ZVIA', 'ACHV', 'BW', 'RC', 'ROMA', 'WKHS', 'HOTH', 'SES', 'COOK', 'PET', 'VZLA', 'CAMP', 'CLNN', 'DAWN', 'GV', 'LAW', 'PROF', 'ECOR', 'EQ', 'FFWM', 'LOOP', 'SABR', 'SGD', 'VIVK', 'CRIS', 'ICU', 'SLQT', 'UMAC', 'DLNG', 'DUO', 'GP', 'NOTE', 'ZYXI', 'CATO', 'MAIA', 'GILT', 'PAPL', 'QSI', 'TURN', 'EGY', 'EQS', 'HOLO', 'PAYS', 'RDZN', 'TTEC', 'DSX', 'CLIR', 'IRWD', 'REVB', 'PRSO', 'VS', 'LRHC', 'PTON', 'LION', 'GREE', 'PSTV', 'TORO', 'AUNA', 'GANX', 'OPI', 'AHT', 'MLSS', 'NESR', 'TYRA', 'CGEM', 'ADGM', 'PCSA', 'FF', 'IMMR', 'MFA', 'INBS'))
4.05

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in trade_bot_detail(2819)
  option_lookup = {

SELECT "pl_symbol_report_stat"."id",
       "pl_symbol_report_stat"."report_date",
       "pl_symbol_report_stat"."ticker",
       "pl_symbol_report_stat"."items_count",
       "pl_symbol_report_stat"."items_count_1d",
       "pl_symbol_report_stat"."items_count_7d_avg",
       "pl_symbol_report_stat"."items_count_30d_avg",
       "pl_symbol_report_stat"."items_count_delta_1d",
       "pl_symbol_report_stat"."items_count_delta_1d_pct",
       "pl_symbol_report_stat"."items_count_delta_7d_avg",
       "pl_symbol_report_stat"."items_count_delta_7d_avg_pct",
       "pl_symbol_report_stat"."items_count_delta_30d_avg",
       "pl_symbol_report_stat"."items_count_delta_30d_avg_pct",
       "pl_symbol_report_stat"."items_positive_count",
       "pl_symbol_report_stat"."items_positive_count_1d",
       "pl_symbol_report_stat"."items_positive_count_7d_avg",
       "pl_symbol_report_stat"."items_positive_count_30d_avg",
       "pl_symbol_report_stat"."items_positive_count_delta_1d",
       "pl_symbol_report_stat"."items_positive_count_delta_1d_pct",
       "pl_symbol_report_stat"."items_positive_count_delta_7d_avg",
       "pl_symbol_report_stat"."items_positive_count_delta_7d_avg_pct",
       "pl_symbol_report_stat"."items_positive_count_delta_30d_avg",
       "pl_symbol_report_stat"."items_positive_count_delta_30d_avg_pct",
       "pl_symbol_report_stat"."items_negative_count",
       "pl_symbol_report_stat"."items_negative_count_1d",
       "pl_symbol_report_stat"."items_negative_count_7d_avg",
       "pl_symbol_report_stat"."items_negative_count_30d_avg",
       "pl_symbol_report_stat"."items_negative_count_delta_1d",
       "pl_symbol_report_stat"."items_negative_count_delta_1d_pct",
       "pl_symbol_report_stat"."items_negative_count_delta_7d_avg",
       "pl_symbol_report_stat"."items_negative_count_delta_7d_avg_pct",
       "pl_symbol_report_stat"."items_negative_count_delta_30d_avg",
       "pl_symbol_report_stat"."items_negative_count_delta_30d_avg_pct",
       "pl_symbol_report_stat"."items_neutral_count",
       "pl_symbol_report_stat"."items_neutral_count_id",
       "pl_symbol_report_stat"."items_neutral_count_7d_avg",
       "pl_symbol_report_stat"."items_neutral_count_30d_avg",
       "pl_symbol_report_stat"."items_neutral_count_delta_1d",
       "pl_symbol_report_stat"."items_neutral_count_delta_1d_pct",
       "pl_symbol_report_stat"."items_neutral_count_delta_7d_avg",
       "pl_symbol_report_stat"."items_neutral_count_delta_7d_avg_pct",
       "pl_symbol_report_stat"."items_neutral_count_delta_30d_avg",
       "pl_symbol_report_stat"."items_neutral_count_delta_30d_avg_pct",
       "pl_symbol_report_stat"."authors_count",
       "pl_symbol_report_stat"."authors_count_1d",
       "pl_symbol_report_stat"."authors_count_7d_avg",
       "pl_symbol_report_stat"."authors_count_30d_avg",
       "pl_symbol_report_stat"."authors_count_delta_1d",
       "pl_symbol_report_stat"."authors_count_delta_1d_pct",
       "pl_symbol_report_stat"."authors_count_delta_7d_avg",
       "pl_symbol_report_stat"."authors_count_delta_7d_avg_pct",
       "pl_symbol_report_stat"."authors_count_delta_30d_avg",
       "pl_symbol_report_stat"."authors_count_delta_30d_avg_pct",
       "pl_symbol_report_stat"."authors_positive_count",
       "pl_symbol_report_stat"."authors_positive_count_1d",
       "pl_symbol_report_stat"."authors_positive_count_7d_avg",
       "pl_symbol_report_stat"."authors_positive_count_30d_avg",
       "pl_symbol_report_stat"."authors_positive_count_delta_1d",
       "pl_symbol_report_stat"."authors_positive_count_delta_1d_pct",
       "pl_symbol_report_stat"."authors_positive_count_delta_7d_avg",
       "pl_symbol_report_stat"."authors_positive_count_delta_7d_avg_pct",
       "pl_symbol_report_stat"."authors_positive_count_delta_30d_avg",
       "pl_symbol_report_stat"."authors_positive_count_delta_30d_avg_pct",
       "pl_symbol_report_stat"."authors_negative_count",
       "pl_symbol_report_stat"."authors_negative_count_1d",
       "pl_symbol_report_stat"."authors_negative_count_7d_avg",
       "pl_symbol_report_stat"."authors_negative_count_30d_avg",
       "pl_symbol_report_stat"."authors_negative_count_delta_1d",
       "pl_symbol_report_stat"."authors_negative_count_delta_1d_pct",
       "pl_symbol_report_stat"."authors_negative_count_delta_7d_avg",
       "pl_symbol_report_stat"."authors_negative_count_delta_7d_avg_pct",
       "pl_symbol_report_stat"."authors_negative_count_delta_30d_avg",
       "pl_symbol_report_stat"."authors_negative_count_delta_30d_avg_pct",
       "pl_symbol_report_stat"."authors_neutral_count",
       "pl_symbol_report_stat"."authors_neutral_count_1d",
       "pl_symbol_report_stat"."authors_neutral_count_7d_avg",
       "pl_symbol_report_stat"."authors_neutral_count_30d_avg",
       "pl_symbol_report_stat"."authors_neutral_count_delta_1d",
       "pl_symbol_report_stat"."authors_neutral_count_delta_1d_pct",
       "pl_symbol_report_stat"."authors_neutral_count_delta_7d_avg",
       "pl_symbol_report_stat"."authors_neutral_count_delta_7d_avg_pct",
       "pl_symbol_report_stat"."authors_neutral_count_delta_30d_avg",
       "pl_symbol_report_stat"."authors_neutral_count_delta_30d_avg_pct",
       "pl_symbol_report_stat"."sentiment_avg",
       "pl_symbol_report_stat"."sentiment_avg_1d",
       "pl_symbol_report_stat"."sentiment_7d_avg",
       "pl_symbol_report_stat"."sentiment_30d_avg",
       "pl_symbol_report_stat"."sentiment_delta_1d",
       "pl_symbol_report_stat"."sentiment_delta_1d_pct",
       "pl_symbol_report_stat"."sentiment_delta_7d_avg",
       "pl_symbol_report_stat"."sentiment_delta_7d_avg_pct",
       "pl_symbol_report_stat"."sentiment_delta_30d_avg",
       "pl_symbol_report_stat"."sentiment_delta_30d_avg_pct",
       "pl_symbol_report_stat"."sentiment_positive",
       "pl_symbol_report_stat"."sentiment_positive_1d",
       "pl_symbol_report_stat"."sentiment_positive_7d_avg",
       "pl_symbol_report_stat"."sentiment_positive_30d_avg",
       "pl_symbol_report_stat"."sentiment_positive_delta_1d",
       "pl_symbol_report_stat"."sentiment_positive_delta_1d_pct",
       "pl_symbol_report_stat"."sentiment_positive_delta_7d_avg",
       "pl_symbol_report_stat"."sentiment_positive_delta_7d_avg_pct",
       "pl_symbol_report_stat"."sentiment_positive_delta_30d_avg",
       "pl_symbol_report_stat"."sentiment_positive_delta_30d_avg_pct",
       "pl_symbol_report_stat"."sentiment_negative",
       "pl_symbol_report_stat"."sentiment_negative_1d",
       "pl_symbol_report_stat"."sentiment_negative_7d_avg",
       "pl_symbol_report_stat"."sentiment_negative_30d_avg",
       "pl_symbol_report_stat"."sentiment_negative_delta_1d",
       "pl_symbol_report_stat"."sentiment_negative_delta_1d_pct",
       "pl_symbol_report_stat"."sentiment_negative_delta_7d_avg",
       "pl_symbol_report_stat"."sentiment_negative_delta_7d_avg_pct",
       "pl_symbol_report_stat"."sentiment_negative_delta_30d_avg",
       "pl_symbol_report_stat"."sentiment_negative_delta_30d_avg_pct",
       "pl_symbol_report_stat"."sentiment_neutral",
       "pl_symbol_report_stat"."sentiment_neutral_1d",
       "pl_symbol_report_stat"."sentiment_neutral_7d_avg",
       "pl_symbol_report_stat"."sentiment_neutral_30d_avg",
       "pl_symbol_report_stat"."sentiment_neutral_delta_1d",
       "pl_symbol_report_stat"."sentiment_neutral_delta_1d_pct",
       "pl_symbol_report_stat"."sentiment_neutral_delta_7d_avg",
       "pl_symbol_report_stat"."sentiment_neutral_delta_7d_avg_pct",
       "pl_symbol_report_stat"."sentiment_neutral_delta_30d_avg",
       "pl_symbol_report_stat"."sentiment_neutral_delta_30d_avg_pct",
       "pl_symbol_report_stat"."relevance_avg_score",
       "pl_symbol_report_stat"."relevance_avg_score_1d",
       "pl_symbol_report_stat"."relevance_avg_score_7d",
       "pl_symbol_report_stat"."relevance_avg_score_30d",
       "pl_symbol_report_stat"."relevance_avg_score_delta_1d",
       "pl_symbol_report_stat"."relevance_avg_score_delta_1d_pct",
       "pl_symbol_report_stat"."relevance_avg_score_delta_7d_avg",
       "pl_symbol_report_stat"."relevance_avg_score_delta_7d_avg_pct",
       "pl_symbol_report_stat"."relevance_avg_score_delta_30d_avg",
       "pl_symbol_report_stat"."relevance_avg_score_delta_30d_avg_pct",
       "pl_symbol_report_stat"."citation_flow_avg",
       "pl_symbol_report_stat"."trust_flow_avg"
  FROM "pl_symbol_report_stat"
 WHERE ("pl_symbol_report_stat"."report_date" = '2025-11-20'::date AND "pl_symbol_report_stat"."ticker" IN ('PRTS', 'RVPH', 'WOOF', 'ASM', 'CMCT', 'NVNO', 'UAMY', 'SLDP', 'EBS', 'LINK', 'ABCL', 'CNET', 'XRX', 'ARRY', 'BLDP', 'CTM', 'FORD', 'SBC', 'ACDC', 'CETX', 'ATRA', 'CDT', 'CURI', 'RZLV', 'ATAI', 'EKSO', 'GAME', 'SLI', 'AZ', 'REKR', 'MSAI', 'RR', 'SMX', 'SOND', 'CHPT', 'NVVE', 'PBM', 'UNIT', 'YYAI', 'FLWS', 'ATOM', 'CIFR', 'ENSC', 'BRCC', 'IRBT', 'LDI', 'OSTX', 'PSQH', 'TLRY', 'OCG', 'PERI', 'SCLX', 'AUID', 'DSGN', 'ONFO', 'PUMP', 'EPM', 'MATH', 'RANI', 'AEON', 'AIMD', 'BDTX', 'OFS', 'SNDX', 'STXS', 'ORKA', 'ADD', 'CYBN', 'DPRO', 'FGL', 'RNXT', 'SENS', 'ATYR', 'MGX', 'NKTX', 'POET', 'SHIP', 'WULF', 'MNY', 'SCYX', 'TOVX', 'TRUE', 'ZVIA', 'ACHV', 'BW', 'RC', 'ROMA', 'WKHS', 'HOTH', 'SES', 'COOK', 'PET', 'VZLA', 'CAMP', 'CLNN', 'DAWN', 'GV', 'LAW', 'PROF', 'ECOR', 'EQ', 'FFWM', 'LOOP', 'SABR', 'SGD', 'VIVK', 'CRIS', 'ICU', 'SLQT', 'UMAC', 'DLNG', 'DUO', 'GP', 'NOTE', 'ZYXI', 'CATO', 'MAIA', 'GILT', 'PAPL', 'QSI', 'TURN', 'EGY', 'EQS', 'HOLO', 'PAYS', 'RDZN', 'TTEC', 'DSX', 'CLIR', 'IRWD', 'REVB', 'PRSO', 'VS', 'LRHC', 'PTON', 'LION', 'GREE', 'PSTV', 'TORO', 'AUNA', 'GANX', 'OPI', 'AHT', 'MLSS', 'NESR', 'TYRA', 'CGEM', 'ADGM', 'PCSA', 'FF', 'IMMR', 'MFA', 'INBS'))
SELECT ••• FROM "pl_symbol_report_stat" WHERE ("pl_symbol_report_stat"."report_date" = '2025-11-20'::date AND "pl_symbol_report_stat"."ticker" IN ('PRTS', 'RVPH', 'WOOF', 'ASM', 'CMCT', 'NVNO', 'UAMY', 'SLDP', 'EBS', 'LINK', 'ABCL', 'CNET', 'XRX', 'ARRY', 'BLDP', 'CTM', 'FORD', 'SBC', 'ACDC', 'CETX', 'ATRA', 'CDT', 'CURI', 'RZLV', 'ATAI', 'EKSO', 'GAME', 'SLI', 'AZ', 'REKR', 'MSAI', 'RR', 'SMX', 'SOND', 'CHPT', 'NVVE', 'PBM', 'UNIT', 'YYAI', 'FLWS', 'ATOM', 'CIFR', 'ENSC', 'BRCC', 'IRBT', 'LDI', 'OSTX', 'PSQH', 'TLRY', 'OCG', 'PERI', 'SCLX', 'AUID', 'DSGN', 'ONFO', 'PUMP', 'EPM', 'MATH', 'RANI', 'AEON', 'AIMD', 'BDTX', 'OFS', 'SNDX', 'STXS', 'ORKA', 'ADD', 'CYBN', 'DPRO', 'FGL', 'RNXT', 'SENS', 'ATYR', 'MGX', 'NKTX', 'POET', 'SHIP', 'WULF', 'MNY', 'SCYX', 'TOVX', 'TRUE', 'ZVIA', 'ACHV', 'BW', 'RC', 'ROMA', 'WKHS', 'HOTH', 'SES', 'COOK', 'PET', 'VZLA', 'CAMP', 'CLNN', 'DAWN', 'GV', 'LAW', 'PROF', 'ECOR', 'EQ', 'FFWM', 'LOOP', 'SABR', 'SGD', 'VIVK', 'CRIS', 'ICU', 'SLQT', 'UMAC', 'DLNG', 'DUO', 'GP', 'NOTE', 'ZYXI', 'CATO', 'MAIA', 'GILT', 'PAPL', 'QSI', 'TURN', 'EGY', 'EQS', 'HOLO', 'PAYS', 'RDZN', 'TTEC', 'DSX', 'CLIR', 'IRWD', 'REVB', 'PRSO', 'VS', 'LRHC', 'PTON', 'LION', 'GREE', 'PSTV', 'TORO', 'AUNA', 'GANX', 'OPI', 'AHT', 'MLSS', 'NESR', 'TYRA', 'CGEM', 'ADGM', 'PCSA', 'FF', 'IMMR', 'MFA', 'INBS'))
7.63

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in trade_bot_detail(2823)
  report_lookup = {

SELECT "pl_symbol_history_stat"."id",
       "pl_symbol_history_stat"."report_date",
       "pl_symbol_history_stat"."ticker",
       "pl_symbol_history_stat"."price_open",
       "pl_symbol_history_stat"."price_close",
       "pl_symbol_history_stat"."price_change",
       "pl_symbol_history_stat"."price_low",
       "pl_symbol_history_stat"."price_high",
       "pl_symbol_history_stat"."price_spread",
       "pl_symbol_history_stat"."true_range",
       "pl_symbol_history_stat"."volume",
       "pl_symbol_history_stat"."volume_open",
       "pl_symbol_history_stat"."volume_close",
       "pl_symbol_history_stat"."transactions",
       "pl_symbol_history_stat"."vwap",
       "pl_symbol_history_stat"."vwap_open",
       "pl_symbol_history_stat"."vwap_close",
       "pl_symbol_history_stat"."gain_1d",
       "pl_symbol_history_stat"."loss_1d",
       "pl_symbol_history_stat"."price_close_1d",
       "pl_symbol_history_stat"."price_close_delta_1d",
       "pl_symbol_history_stat"."price_close_delta_1d_pct",
       "pl_symbol_history_stat"."spread_1d",
       "pl_symbol_history_stat"."spread_delta_1d",
       "pl_symbol_history_stat"."spread_delta_1d_pct",
       "pl_symbol_history_stat"."volume_1d",
       "pl_symbol_history_stat"."volume_delta_1d",
       "pl_symbol_history_stat"."volume_delta_1d_pct",
       "pl_symbol_history_stat"."gain_2d_avg",
       "pl_symbol_history_stat"."loss_2d_avg",
       "pl_symbol_history_stat"."rs_2d",
       "pl_symbol_history_stat"."rsi_2d",
       "pl_symbol_history_stat"."atr_2d",
       "pl_symbol_history_stat"."price_close_2d",
       "pl_symbol_history_stat"."price_close_delta_2d",
       "pl_symbol_history_stat"."price_close_delta_2d_pct",
       "pl_symbol_history_stat"."price_close_2d_avg",
       "pl_symbol_history_stat"."price_close_delta_2d_avg",
       "pl_symbol_history_stat"."price_close_delta_2d_avg_pct",
       "pl_symbol_history_stat"."spread_2d_avg",
       "pl_symbol_history_stat"."spread_delta_2d_avg",
       "pl_symbol_history_stat"."spread_delta_2d_avg_pct",
       "pl_symbol_history_stat"."volume_2d_avg",
       "pl_symbol_history_stat"."volume_delta_2d_avg",
       "pl_symbol_history_stat"."volume_delta_2d_avg_pct",
       "pl_symbol_history_stat"."gain_7d_avg",
       "pl_symbol_history_stat"."loss_7d_avg",
       "pl_symbol_history_stat"."rs_7d",
       "pl_symbol_history_stat"."rsi_7d",
       "pl_symbol_history_stat"."atr_7d",
       "pl_symbol_history_stat"."price_close_7d",
       "pl_symbol_history_stat"."price_close_delta_7d",
       "pl_symbol_history_stat"."price_close_delta_7d_pct",
       "pl_symbol_history_stat"."price_close_7d_avg",
       "pl_symbol_history_stat"."price_close_delta_7d_avg",
       "pl_symbol_history_stat"."price_close_delta_7d_avg_pct",
       "pl_symbol_history_stat"."spread_7d_avg",
       "pl_symbol_history_stat"."spread_delta_7d_avg",
       "pl_symbol_history_stat"."spread_delta_7d_avg_pct",
       "pl_symbol_history_stat"."volume_7d_avg",
       "pl_symbol_history_stat"."volume_delta_7d_avg",
       "pl_symbol_history_stat"."volume_delta_7d_avg_pct",
       "pl_symbol_history_stat"."gain_30d_avg",
       "pl_symbol_history_stat"."loss_30d_avg",
       "pl_symbol_history_stat"."rs_30d",
       "pl_symbol_history_stat"."rsi_30d",
       "pl_symbol_history_stat"."atr_30d",
       "pl_symbol_history_stat"."price_close_30d",
       "pl_symbol_history_stat"."price_close_delta_30d",
       "pl_symbol_history_stat"."price_close_delta_30d_pct",
       "pl_symbol_history_stat"."price_close_30d_avg",
       "pl_symbol_history_stat"."price_close_delta_30d_avg",
       "pl_symbol_history_stat"."price_close_delta_30d_avg_pct",
       "pl_symbol_history_stat"."spread_30d_avg",
       "pl_symbol_history_stat"."spread_delta_30d_avg",
       "pl_symbol_history_stat"."spread_delta_30d_avg_pct",
       "pl_symbol_history_stat"."volume_30d_avg",
       "pl_symbol_history_stat"."volume_delta_30d_avg",
       "pl_symbol_history_stat"."volume_delta_30d_avg_pct"
  FROM "pl_symbol_history_stat"
 WHERE ("pl_symbol_history_stat"."report_date" = '2025-11-20'::date AND "pl_symbol_history_stat"."ticker" IN ('PRTS', 'RVPH', 'WOOF', 'ASM', 'CMCT', 'NVNO', 'UAMY', 'SLDP', 'EBS', 'LINK', 'ABCL', 'CNET', 'XRX', 'ARRY', 'BLDP', 'CTM', 'FORD', 'SBC', 'ACDC', 'CETX', 'ATRA', 'CDT', 'CURI', 'RZLV', 'ATAI', 'EKSO', 'GAME', 'SLI', 'AZ', 'REKR', 'MSAI', 'RR', 'SMX', 'SOND', 'CHPT', 'NVVE', 'PBM', 'UNIT', 'YYAI', 'FLWS', 'ATOM', 'CIFR', 'ENSC', 'BRCC', 'IRBT', 'LDI', 'OSTX', 'PSQH', 'TLRY', 'OCG', 'PERI', 'SCLX', 'AUID', 'DSGN', 'ONFO', 'PUMP', 'EPM', 'MATH', 'RANI', 'AEON', 'AIMD', 'BDTX', 'OFS', 'SNDX', 'STXS', 'ORKA', 'ADD', 'CYBN', 'DPRO', 'FGL', 'RNXT', 'SENS', 'ATYR', 'MGX', 'NKTX', 'POET', 'SHIP', 'WULF', 'MNY', 'SCYX', 'TOVX', 'TRUE', 'ZVIA', 'ACHV', 'BW', 'RC', 'ROMA', 'WKHS', 'HOTH', 'SES', 'COOK', 'PET', 'VZLA', 'CAMP', 'CLNN', 'DAWN', 'GV', 'LAW', 'PROF', 'ECOR', 'EQ', 'FFWM', 'LOOP', 'SABR', 'SGD', 'VIVK', 'CRIS', 'ICU', 'SLQT', 'UMAC', 'DLNG', 'DUO', 'GP', 'NOTE', 'ZYXI', 'CATO', 'MAIA', 'GILT', 'PAPL', 'QSI', 'TURN', 'EGY', 'EQS', 'HOLO', 'PAYS', 'RDZN', 'TTEC', 'DSX', 'CLIR', 'IRWD', 'REVB', 'PRSO', 'VS', 'LRHC', 'PTON', 'LION', 'GREE', 'PSTV', 'TORO', 'AUNA', 'GANX', 'OPI', 'AHT', 'MLSS', 'NESR', 'TYRA', 'CGEM', 'ADGM', 'PCSA', 'FF', 'IMMR', 'MFA', 'INBS'))
SELECT ••• FROM "pl_symbol_history_stat" WHERE ("pl_symbol_history_stat"."report_date" = '2025-11-20'::date AND "pl_symbol_history_stat"."ticker" IN ('PRTS', 'RVPH', 'WOOF', 'ASM', 'CMCT', 'NVNO', 'UAMY', 'SLDP', 'EBS', 'LINK', 'ABCL', 'CNET', 'XRX', 'ARRY', 'BLDP', 'CTM', 'FORD', 'SBC', 'ACDC', 'CETX', 'ATRA', 'CDT', 'CURI', 'RZLV', 'ATAI', 'EKSO', 'GAME', 'SLI', 'AZ', 'REKR', 'MSAI', 'RR', 'SMX', 'SOND', 'CHPT', 'NVVE', 'PBM', 'UNIT', 'YYAI', 'FLWS', 'ATOM', 'CIFR', 'ENSC', 'BRCC', 'IRBT', 'LDI', 'OSTX', 'PSQH', 'TLRY', 'OCG', 'PERI', 'SCLX', 'AUID', 'DSGN', 'ONFO', 'PUMP', 'EPM', 'MATH', 'RANI', 'AEON', 'AIMD', 'BDTX', 'OFS', 'SNDX', 'STXS', 'ORKA', 'ADD', 'CYBN', 'DPRO', 'FGL', 'RNXT', 'SENS', 'ATYR', 'MGX', 'NKTX', 'POET', 'SHIP', 'WULF', 'MNY', 'SCYX', 'TOVX', 'TRUE', 'ZVIA', 'ACHV', 'BW', 'RC', 'ROMA', 'WKHS', 'HOTH', 'SES', 'COOK', 'PET', 'VZLA', 'CAMP', 'CLNN', 'DAWN', 'GV', 'LAW', 'PROF', 'ECOR', 'EQ', 'FFWM', 'LOOP', 'SABR', 'SGD', 'VIVK', 'CRIS', 'ICU', 'SLQT', 'UMAC', 'DLNG', 'DUO', 'GP', 'NOTE', 'ZYXI', 'CATO', 'MAIA', 'GILT', 'PAPL', 'QSI', 'TURN', 'EGY', 'EQS', 'HOLO', 'PAYS', 'RDZN', 'TTEC', 'DSX', 'CLIR', 'IRWD', 'REVB', 'PRSO', 'VS', 'LRHC', 'PTON', 'LION', 'GREE', 'PSTV', 'TORO', 'AUNA', 'GANX', 'OPI', 'AHT', 'MLSS', 'NESR', 'TYRA', 'CGEM', 'ADGM', 'PCSA', 'FF', 'IMMR', 'MFA', 'INBS'))
5.83

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in trade_bot_detail(2827)
  history_lookup = {

SELECT "pl_model_pick"."created_dt",
       "pl_model_pick"."updated_dt",
       "pl_model_pick"."status_id",
       "pl_model_pick"."id",
       "pl_model_pick"."pick_date",
       "pl_model_pick"."ticker",
       "pl_model_pick"."probability",
       "pl_model_pick"."model_id"
  FROM "pl_model_pick"
 WHERE ("pl_model_pick"."model_id" = 192 AND "pl_model_pick"."pick_date" = '2025-11-21'::date AND "pl_model_pick"."status_id" = 10)
 ORDER BY "pl_model_pick"."probability" DESC
SELECT ••• FROM "pl_model_pick" WHERE ("pl_model_pick"."model_id" = 192 AND "pl_model_pick"."pick_date" = '2025-11-21'::date AND "pl_model_pick"."status_id" = 10) ORDER BY "pl_model_pick"."probability" DESC
1.33

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in trade_bot_detail(2833)
  for row in matching_results:

SELECT "pl_trade_basket"."created_dt",
       "pl_trade_basket"."updated_dt",
       "pl_trade_basket"."status_id",
       "pl_trade_basket"."id",
       "pl_trade_basket"."date",
       "pl_trade_basket"."trade_bot_id"
  FROM "pl_trade_basket"
 WHERE ("pl_trade_basket"."status_id" = 10 AND "pl_trade_basket"."trade_bot_id" = 54 AND "pl_trade_basket"."date" >= '2025-11-21'::date AND "pl_trade_basket"."date" <= '2025-12-05'::date)
 ORDER BY "pl_trade_basket"."date" DESC
SELECT ••• FROM "pl_trade_basket" WHERE ("pl_trade_basket"."status_id" = 10 AND "pl_trade_basket"."trade_bot_id" = 54 AND "pl_trade_basket"."date" >= '2025-11-21'::date AND "pl_trade_basket"."date" <= '2025-12-05'::date) ORDER BY "pl_trade_basket"."date" DESC
1.18

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in trade_bot_detail(2899)
  return render(request, "trade_bot_detail.html", context)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/shortcuts.py in render(25)
  content = loader.render_to_string(template_name, context, request, using=using)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/template/base.py in render(171)
  return self._render(context)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/template/defaulttags.py in render(199)
  len_values = len(values)

165 </ul>
166 </div>
167
168 {% for basket in trade_baskets %}
169
170 <div class="basket uk-flex uk-flex-middle">
171
172 <div class="day" uk-tooltip="Basket #{{ basket.id }}">

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/trade_bot_detail.html

Static files (720 found, 2 used)

Static file paths

None

Static file apps

  1. grappelli
  2. django.contrib.admin
  3. django_htmx
  4. app.core
  5. django_extensions
  6. debug_toolbar

Static files

css/pennyloupe.css
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/css/pennyloupe.css
img/penny_loupe_logo.png
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/img/penny_loupe_logo.png

django.contrib.staticfiles.finders.AppDirectoriesFinder (720 files)

Path Location
.DS_Store /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/.DS_Store
grappelli/.DS_Store /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/.DS_Store
grappelli/js/grappelli.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/grappelli.js
grappelli/js/jquery.grp_related_m2m.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_related_m2m.js
grappelli/js/jquery.grp_autocomplete_fk.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_autocomplete_fk.js
grappelli/js/jquery.grp_autocomplete_generic.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_autocomplete_generic.js
grappelli/js/jquery.grp_timepicker.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_timepicker.js
grappelli/js/jquery.grp_collapsible_group.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_collapsible_group.js
grappelli/js/jquery.grp_related_generic.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_related_generic.js
grappelli/js/jquery.grp_related_fk.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_related_fk.js
grappelli/js/jquery.grp_collapsible.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_collapsible.js
grappelli/js/grappelli.min.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/grappelli.min.js
grappelli/js/jquery.grp_autocomplete_m2m.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_autocomplete_m2m.js
grappelli/js/jquery.grp_inline.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_inline.js
grappelli/images/spritesheet-1694777276.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/spritesheet-1694777276.png
grappelli/images/backgrounds/loading-small.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/backgrounds/loading-small.gif
grappelli/images/backgrounds/changelist-results.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/backgrounds/changelist-results.png
grappelli/images/backgrounds/ui-sortable-placeholder.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/backgrounds/ui-sortable-placeholder.png
grappelli/images/backgrounds/nav-grabber.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/backgrounds/nav-grabber.gif
grappelli/images/backgrounds/messagelist.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/backgrounds/messagelist.png
grappelli/images/icons/ui-datepicker-next.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/ui-datepicker-next.png
grappelli/images/icons/link-external-small_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-external-small_hover.png
grappelli/images/icons/tools-arrow-up-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-arrow-up-handler_hover.png
grappelli/images/icons/date-hierarchy-back.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/date-hierarchy-back.png
grappelli/images/icons/tools-delete-handler-predelete.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-delete-handler-predelete.png
grappelli/images/icons/breadcrumbs-rtl.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/breadcrumbs-rtl.png
grappelli/images/icons/datepicker_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/datepicker_hover.png
grappelli/images/icons/tools-trash-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-trash-handler_hover.png
grappelli/images/icons/selector-add-m2m-vertical_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/selector-add-m2m-vertical_hover.png
grappelli/images/icons/tools-related-remove-handler-small_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-remove-handler-small_hover.png
grappelli/images/icons/sorted-descending.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/sorted-descending.png
grappelli/images/icons/breadcrumbs_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/breadcrumbs_hover.png
grappelli/images/icons/tools-viewsite-link_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-viewsite-link_hover.png
grappelli/images/icons/object-tools-add-link.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/object-tools-add-link.png
grappelli/images/icons/tools-related-edit-handler-small-disabled.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-edit-handler-small-disabled.png
grappelli/images/icons/tools-related-remove-handler-small-disabled.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-remove-handler-small-disabled.png
grappelli/images/icons/sorted-ascending.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/sorted-ascending.png
grappelli/images/icons/link-internal-rtl-small_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-internal-rtl-small_hover.png
grappelli/images/icons/pulldown-handler_selected.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/pulldown-handler_selected.png
grappelli/images/icons/tools-delete-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-delete-handler_hover.png
grappelli/images/icons/tools-trash-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-trash-handler.png
grappelli/images/icons/related-lookup-m2m_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/related-lookup-m2m_hover.png
grappelli/images/icons/tools-arrow-down-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-arrow-down-handler.png
grappelli/images/icons/tools-arrow-down-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-arrow-down-handler_hover.png
grappelli/images/icons/selector-filter.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/selector-filter.png
grappelli/images/icons/link-external-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-external-small.png
grappelli/images/icons/link-external-rtl-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-external-rtl-small.png
grappelli/images/icons/date-hierarchy-back_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/date-hierarchy-back_hover.png
grappelli/images/icons/change-link-small_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/change-link-small_hover.png
grappelli/images/icons/datetime-now.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/datetime-now.png
grappelli/images/icons/change-link-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/change-link-small.png
grappelli/images/icons/sort-remove_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/sort-remove_hover.png
grappelli/images/icons/tools-related-edit-handler-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-edit-handler-small.png
grappelli/images/icons/link-internal-small_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-internal-small_hover.png
grappelli/images/icons/th-ascending.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/th-ascending.png
grappelli/images/icons/related-lookup-m2m.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/related-lookup-m2m.png
grappelli/images/icons/tools-related-remove-handler-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-remove-handler-small.png
grappelli/images/icons/autocomplete-single-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/autocomplete-single-small.png
grappelli/images/icons/breadcrumbs.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/breadcrumbs.png
grappelli/images/icons/selector-add-m2m-horizontal_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/selector-add-m2m-horizontal_hover.png
grappelli/images/icons/tools-related-add-handler-small_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-add-handler-small_hover.png
grappelli/images/icons/add-link-small_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/add-link-small_hover.png
grappelli/images/icons/add-link-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/add-link-small.png
grappelli/images/icons/add-another.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/add-another.png
grappelli/images/icons/tools-drag-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-drag-handler_hover.png
grappelli/images/icons/related-remove_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/related-remove_hover.png
grappelli/images/icons/pulldown-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/pulldown-handler.png
grappelli/images/icons/ui-datepicker-prev.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/ui-datepicker-prev.png
grappelli/images/icons/selector-remove-m2m-horizontal_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/selector-remove-m2m-horizontal_hover.png
grappelli/images/icons/tools-close-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-close-handler_hover.png
grappelli/images/icons/tools-trash-list-toggle-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-trash-list-toggle-handler.png
grappelli/images/icons/tools-related-remove-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-remove-handler.png
grappelli/images/icons/link-internal-rtl_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-internal-rtl_hover.png
grappelli/images/icons/object-tools-viewsite-link.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/object-tools-viewsite-link.png
grappelli/images/icons/tools-related-remove-handler-disabled.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-remove-handler-disabled.png
grappelli/images/icons/timepicker.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/timepicker.png
grappelli/images/icons/tools-related-edit-handler-small_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-edit-handler-small_hover.png
grappelli/images/icons/selector-add-m2m-vertical.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/selector-add-m2m-vertical.png
grappelli/images/icons/date-hierarchy-back-rtl.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/date-hierarchy-back-rtl.png
grappelli/images/icons/selector-remove-m2m-vertical_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/selector-remove-m2m-vertical_hover.png
grappelli/images/icons/datepicker.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/datepicker.png
grappelli/images/icons/datetime-now_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/datetime-now_hover.png
grappelli/images/icons/breadcrumbs-rtl_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/breadcrumbs-rtl_hover.png
grappelli/images/icons/selector-add-m2m-horizontal.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/selector-add-m2m-horizontal.png
grappelli/images/icons/status-no.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/status-no.png
grappelli/images/icons/status-unknown.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/status-unknown.png
grappelli/images/icons/tools-open-handler-hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-open-handler-hover.png
grappelli/images/icons/pulldown-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/pulldown-handler_hover.png
grappelli/images/icons/back-link-rtl.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/back-link-rtl.png
grappelli/images/icons/tools-remove-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-remove-handler.png
grappelli/images/icons/ui-datepicker-next_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/ui-datepicker-next_hover.png
grappelli/images/icons/date-hierarchy-back-rtl_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/date-hierarchy-back-rtl_hover.png
grappelli/images/icons/delete-link-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/delete-link-small.png
grappelli/images/icons/tools-edit-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-edit-handler_hover.png
grappelli/images/icons/tools-viewsite-link.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-viewsite-link.png
grappelli/images/icons/tools-open-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-open-handler.png
grappelli/images/icons/tools-add-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-add-handler.png
grappelli/images/icons/th-descending.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/th-descending.png
grappelli/images/icons/tools-drag-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-drag-handler.png
grappelli/images/icons/tools-related-edit-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-edit-handler.png
grappelli/images/icons/tools-related-add-handler-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-add-handler-small.png
grappelli/images/icons/sort-remove-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/sort-remove-small.png
grappelli/images/icons/related-lookup.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/related-lookup.png
grappelli/images/icons/tools-trash-list-toggle-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-trash-list-toggle-handler_hover.png
grappelli/images/icons/sort-remove.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/sort-remove.png
grappelli/images/icons/autocomplete-multiple-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/autocomplete-multiple-small.png
grappelli/images/icons/back-link-rtl_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/back-link-rtl_hover.png
grappelli/images/icons/link-internal-rtl.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-internal-rtl.png
grappelli/images/icons/link-external-rtl-small_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-external-rtl-small_hover.png
grappelli/images/icons/tools-add-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-add-handler_hover.png
grappelli/images/icons/tools-close-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-close-handler.png
grappelli/images/icons/back-link.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/back-link.png
grappelli/images/icons/selector-remove-m2m-vertical.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/selector-remove-m2m-vertical.png
grappelli/images/icons/status-yes.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/status-yes.png
grappelli/images/icons/form-select.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/form-select.png
grappelli/images/icons/tools-related-add-handler-small-disabled.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-add-handler-small-disabled.png
grappelli/images/icons/related-remove.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/related-remove.png
grappelli/images/icons/tools-edit-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-edit-handler.png
grappelli/images/icons/tools-remove-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-remove-handler_hover.png
grappelli/images/icons/tools-delete-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-delete-handler.png
grappelli/images/icons/tools-arrow-up-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-arrow-up-handler.png
grappelli/images/icons/ui-datepicker-prev_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/ui-datepicker-prev_hover.png
grappelli/images/icons/timepicker_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/timepicker_hover.png
grappelli/images/icons/filter-choice-selected-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/filter-choice-selected-small.png
grappelli/images/icons/related-lookup_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/related-lookup_hover.png
grappelli/images/icons/link-internal-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-internal-small.png
grappelli/images/icons/link-internal-rtl-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-internal-rtl-small.png
grappelli/images/icons/tools-related-remove-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-remove-handler_hover.png
grappelli/images/icons/add-another_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/add-another_hover.png
grappelli/images/icons/selector-remove-m2m-horizontal.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/selector-remove-m2m-horizontal.png
grappelli/images/icons/searchbox.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/searchbox.png
grappelli/images/icons/back-link_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/back-link_hover.png
grappelli/img/admin/arrow-up.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/img/admin/arrow-up.gif
grappelli/img/admin/arrow-down.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/img/admin/arrow-down.gif
grappelli/tinymce_setup/tinymce_setup.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce_setup/tinymce_setup.js
grappelli/stylesheets/screen.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/stylesheets/screen.css
grappelli/stylesheets/rtl.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/stylesheets/rtl.css
grappelli/stylesheets/mueller/screen.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/stylesheets/mueller/screen.css
grappelli/stylesheets/mueller/grid/output.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/stylesheets/mueller/grid/output.css
grappelli/stylesheets/mueller/grid/output-rtl.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/stylesheets/mueller/grid/output-rtl.css
grappelli/stylesheets/partials/custom/tinymce.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/stylesheets/partials/custom/tinymce.css
grappelli/tinymce/.DS_Store /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/.DS_Store
grappelli/tinymce/changelog.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/changelog.txt
grappelli/tinymce/examples/word.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/word.html
grappelli/tinymce/examples/simple.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/simple.html
grappelli/tinymce/examples/skins.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/skins.html
grappelli/tinymce/examples/.DS_Store /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/.DS_Store
grappelli/tinymce/examples/index.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/index.html
grappelli/tinymce/examples/full.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/full.html
grappelli/tinymce/examples/menu.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/menu.html
grappelli/tinymce/examples/custom_formats.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/custom_formats.html
grappelli/tinymce/examples/accessibility.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/accessibility.html
grappelli/tinymce/examples/templates/layout1.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/templates/layout1.htm
grappelli/tinymce/examples/templates/snippet1.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/templates/snippet1.htm
grappelli/tinymce/examples/lists/template_list.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/lists/template_list.js
grappelli/tinymce/examples/lists/media_list.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/lists/media_list.js
grappelli/tinymce/examples/lists/image_list.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/lists/image_list.js
grappelli/tinymce/examples/lists/link_list.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/lists/link_list.js
grappelli/tinymce/examples/css/word.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/css/word.css
grappelli/tinymce/examples/css/content.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/css/content.css
grappelli/tinymce/examples/media/sample.ram /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/media/sample.ram
grappelli/tinymce/examples/media/sample.mov /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/media/sample.mov
grappelli/tinymce/examples/media/sample.rm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/media/sample.rm
grappelli/tinymce/examples/media/sample.avi /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/media/sample.avi
grappelli/tinymce/examples/media/sample.swf /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/media/sample.swf
grappelli/tinymce/examples/media/sample.dcr /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/media/sample.dcr
grappelli/tinymce/examples/media/logo.jpg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/media/logo.jpg
grappelli/tinymce/examples/media/sample.flv /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/media/sample.flv
grappelli/tinymce/examples/media/logo_over.jpg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/media/logo_over.jpg
grappelli/tinymce/jscripts/tiny_mce/tiny_mce_popup.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/tiny_mce_popup.js
grappelli/tinymce/jscripts/tiny_mce/license.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/license.txt
grappelli/tinymce/jscripts/tiny_mce/tiny_mce.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/tiny_mce.js
grappelli/tinymce/jscripts/tiny_mce/tiny_mce_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/tiny_mce_src.js
grappelli/tinymce/jscripts/tiny_mce/utils/mctabs.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/utils/mctabs.js
grappelli/tinymce/jscripts/tiny_mce/utils/form_utils.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/utils/form_utils.js
grappelli/tinymce/jscripts/tiny_mce/utils/editable_selects.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/utils/editable_selects.js
grappelli/tinymce/jscripts/tiny_mce/utils/validate.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/utils/validate.js
grappelli/tinymce/jscripts/tiny_mce/themes/simple/editor_template.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/simple/editor_template.js
grappelli/tinymce/jscripts/tiny_mce/themes/simple/editor_template_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/simple/editor_template_src.js
grappelli/tinymce/jscripts/tiny_mce/themes/simple/img/icons.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/simple/img/icons.gif
grappelli/tinymce/jscripts/tiny_mce/themes/simple/langs/en.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/simple/langs/en.js
grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/default/ui.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/default/ui.css
grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/default/content.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/default/content.css
grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/ui.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/ui.css
grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/content.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/content.css
grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/img/button_bg.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/img/button_bg.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/color_picker.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/color_picker.htm
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/charmap.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/charmap.htm
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/editor_template.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/editor_template.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/image.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/image.htm
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/anchor.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/anchor.htm
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/source_editor.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/source_editor.htm
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/shortcuts.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/shortcuts.htm
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/editor_template_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/editor_template_src.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/about.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/about.htm
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/source_editor.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/source_editor.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/charmap.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/charmap.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/image.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/image.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/about.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/about.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/link.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/link.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/color_picker.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/color_picker.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/anchor.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/anchor.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/shockwave.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/shockwave.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/quicktime.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/quicktime.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/iframe.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/iframe.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/icons.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/icons.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/video.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/video.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/trans.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/trans.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/colorpicker.jpg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/colorpicker.jpg
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/realmedia.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/realmedia.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/flash.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/flash.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/pagebreak.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/pagebreak.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/windowsmedia.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/windowsmedia.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/langs/en.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/langs/en.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure_pl.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure_pl.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_base.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_base.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_typography.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_typography.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/ui.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/ui.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/customized.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/customized.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure_de.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure_de.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure_en.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure_en.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure_cs.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure_cs.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_grid.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_grid.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/dialog.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/dialog.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/icon-fb_show.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/icon-fb_show.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/icon-fb_show-hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/icon-fb_show-hover.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/icon-mceResize.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/icon-mceResize.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/menu/icon-mceOpen.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/menu/icon-mceOpen.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/customized/button_pagebreak.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/customized/button_pagebreak.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/customized/pagebreak.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/customized/pagebreak.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/unlink.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/unlink.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/visualchars.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/visualchars.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_row_after.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_row_after.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/justifycenter.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/justifycenter.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/redo.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/redo.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/link.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/link.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_delete_row.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_delete_row.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/pasteword.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/pasteword.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/italic.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/italic.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/fullscreen.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/fullscreen.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/code.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/code.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/image.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/image.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/justifyright.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/justifyright.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_row_before.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_row_before.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/template.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/template.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/show_advanced.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/show_advanced.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_row_props.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_row_props.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/undo.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/undo.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/justifyleft.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/justifyleft.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/underline.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/underline.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_delete_col.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_delete_col.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/media.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/media.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/justifyfull.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/justifyfull.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_merge_cells.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_merge_cells.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_col_after.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_col_after.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_split_cells.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_split_cells.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_col_before.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_col_before.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/bold.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/bold.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/charmap.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/charmap.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/numlist.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/numlist.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/bullist.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/bullist.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_cell_props.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_cell_props.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/search.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/search.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/blockquote.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/blockquote.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/cleanup.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/cleanup.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/ui.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/ui.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/content.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/content.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/dialog.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/dialog.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/buttons.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/buttons.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/tabs.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/tabs.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_check.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_check.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/progress.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/progress.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/items.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/items.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/ui_silver.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/ui_silver.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/ui.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/ui.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/content.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/content.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/dialog.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/dialog.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/ui_black.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/ui_black.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_silver.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_silver.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_black.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_black.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/highcontrast/ui.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/highcontrast/ui.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/highcontrast/content.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/highcontrast/content.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/highcontrast/dialog.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/highcontrast/dialog.css
grappelli/tinymce/jscripts/tiny_mce/langs/en.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/langs/en.js
grappelli/tinymce/jscripts/tiny_mce/plugins/table/merge_cells.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/merge_cells.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/table/table.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/table.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/table/row.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/row.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/table/cell.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/cell.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/table/js/row.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/js/row.js
grappelli/tinymce/jscripts/tiny_mce/plugins/table/js/merge_cells.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/js/merge_cells.js
grappelli/tinymce/jscripts/tiny_mce/plugins/table/js/cell.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/js/cell.js
grappelli/tinymce/jscripts/tiny_mce/plugins/table/js/table.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/js/table.js
grappelli/tinymce/jscripts/tiny_mce/plugins/table/css/row.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/css/row.css
grappelli/tinymce/jscripts/tiny_mce/plugins/table/css/table.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/css/table.css
grappelli/tinymce/jscripts/tiny_mce/plugins/table/css/cell.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/css/cell.css
grappelli/tinymce/jscripts/tiny_mce/plugins/table/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/image.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/image.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/js/image.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/js/image.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/img/sample.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/img/sample.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/css/advimage.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/css/advimage.css
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/style/readme.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/style/readme.txt
grappelli/tinymce/jscripts/tiny_mce/plugins/style/props.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/style/props.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/style/js/props.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/style/js/props.js
grappelli/tinymce/jscripts/tiny_mce/plugins/style/css/props.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/style/css/props.css
grappelli/tinymce/jscripts/tiny_mce/plugins/style/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/style/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/fullpage.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/fullpage.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/js/fullpage.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/js/fullpage.js
grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/css/fullpage.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/css/fullpage.css
grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/moxieplayer.swf /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/moxieplayer.swf
grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/media.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/media.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/js/media.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/js/media.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/js/embed.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/js/embed.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/css/media.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/css/media.css
grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/preview/example.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/preview/example.html
grappelli/tinymce/jscripts/tiny_mce/plugins/preview/preview.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/preview/preview.html
grappelli/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/embed.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/embed.js
grappelli/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/blank.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/blank.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/template.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/template.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/js/template.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/js/template.js
grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/css/template.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/css/template.css
grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/img/visualchars.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/img/visualchars.png
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/img/show_advanced.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/img/show_advanced.png
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/fr.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/fr.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/cs.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/cs.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/pl.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/pl.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/en.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/en.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/de.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/de.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/ru.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/ru.js
grappelli/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/image.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/image.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/js/image.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/js/image.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/sample.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/sample.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/advimage.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/advimage.css
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste/pastetext.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste/pastetext.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/paste/pasteword.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste/pasteword.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/paste/js/pasteword.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste/js/pasteword.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste/js/pastetext.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste/js/pastetext.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/visualblocks/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/visualblocks/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/visualblocks/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/visualblocks/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/visualblocks/css/visualblocks.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/visualblocks/css/visualblocks.css
grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/rule.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/rule.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/js/rule.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/js/rule.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/css/advhr.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/css/advhr.css
grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/fullscreen/fullscreen.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/fullscreen/fullscreen.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/example_dependency/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/example_dependency/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/example_dependency/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/example_dependency/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/lists/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/lists/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/lists/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/lists/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/pastetext.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/pastetext.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/pasteword.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/pasteword.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/pasteword.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/pasteword.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/pastetext.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/pastetext.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/template/blank.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template/blank.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/template/template.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template/template.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/template/js/template.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template/js/template.js
grappelli/tinymce/jscripts/tiny_mce/plugins/template/css/template.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template/css/template.css
grappelli/tinymce/jscripts/tiny_mce/plugins/template/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/template.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/template.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/window.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/window.css
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/corners.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/corners.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/confirm.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/confirm.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/button.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/button.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/searchreplace.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/searchreplace.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/searchreplace.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/searchreplace.js
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/searchreplace.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/searchreplace.css
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/link.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/link.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/js/advlink.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/js/advlink.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/css/advlink.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/css/advlink.css
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/example/dialog.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/example/dialog.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/example/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/example/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/example/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/example/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/example/js/dialog.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/example/js/dialog.js
grappelli/tinymce/jscripts/tiny_mce/plugins/example/img/example.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/example/img/example.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/example/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/example/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/example/langs/en.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/example/langs/en.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/cite.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/cite.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/del.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/del.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/acronym.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/acronym.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/ins.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/ins.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/abbr.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/abbr.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/attributes.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/attributes.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/ins.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/ins.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/cite.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/cite.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/acronym.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/acronym.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/attributes.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/attributes.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/element_common.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/element_common.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/abbr.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/abbr.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/del.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/del.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/popup.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/popup.css
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/attributes.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/attributes.css
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/fr.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/fr.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/cs.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/cs.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/pl.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/pl.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/en.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/en.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/de.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/de.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/ru.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/ru.js
grappelli/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/autolink/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/autolink/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/autolink/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/autolink/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/wordcount/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/wordcount/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/wordcount/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/wordcount/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/emotions.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/emotions.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/js/emotions.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/js/emotions.js
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-tongue-out.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-tongue-out.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-smile.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-smile.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-laughing.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-laughing.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cool.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cool.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-money-mouth.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-money-mouth.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-foot-in-mouth.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-foot-in-mouth.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-kiss.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-kiss.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-surprised.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-surprised.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-wink.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-wink.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-sealed.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-sealed.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-frown.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-frown.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cry.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cry.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-embarassed.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-embarassed.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-undecided.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-undecided.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-yell.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-yell.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-innocent.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-innocent.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/link.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/link.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/advlink.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/advlink.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/advlink.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/advlink.css
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/wline.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/wline.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/content.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/content.css
grappelli/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/searchreplace.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/searchreplace.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/searchreplace.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/searchreplace.js
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/searchreplace.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/searchreplace.css
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media/moxieplayer.swf /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media/moxieplayer.swf
grappelli/tinymce/jscripts/tiny_mce/plugins/media/media.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media/media.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media/js/media.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media/js/media.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media/js/embed.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media/js/embed.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media/css/media.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media/css/media.css
grappelli/tinymce/jscripts/tiny_mce/plugins/media/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin.js
grappelli/jquery/jquery.min.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/jquery.min.js
grappelli/jquery/jquery.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/jquery.js
grappelli/jquery/LICENSE-JQUERY.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/LICENSE-JQUERY.txt
grappelli/jquery/.DS_Store /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/.DS_Store
grappelli/jquery/jquery-migrate-3.0.1.min.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/jquery-migrate-3.0.1.min.js
grappelli/jquery/LICENSE.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/LICENSE.txt
grappelli/jquery/jquery-migrate-3.0.1.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/jquery-migrate-3.0.1.js
grappelli/jquery/ui/jquery-ui.structure.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/jquery-ui.structure.css
grappelli/jquery/ui/jquery-ui.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/jquery-ui.css
grappelli/jquery/ui/jquery-ui.structure.min.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/jquery-ui.structure.min.css
grappelli/jquery/ui/jquery-ui.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/jquery-ui.js
grappelli/jquery/ui/AUTHORS.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/AUTHORS.txt
grappelli/jquery/ui/.DS_Store /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/.DS_Store
grappelli/jquery/ui/jquery-ui.theme.min.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/jquery-ui.theme.min.css
grappelli/jquery/ui/index.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/index.html
grappelli/jquery/ui/LICENSE.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/LICENSE.txt
grappelli/jquery/ui/jquery-ui.min.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/jquery-ui.min.css
grappelli/jquery/ui/jquery-ui.theme.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/jquery-ui.theme.css
grappelli/jquery/ui/jquery-ui.min.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/jquery-ui.min.js
grappelli/jquery/ui/images/ui-icons_cc0000_256x240.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/images/ui-icons_cc0000_256x240.png
grappelli/jquery/ui/images/ui-icons_777620_256x240.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/images/ui-icons_777620_256x240.png
grappelli/jquery/ui/images/ui-icons_555555_256x240.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/images/ui-icons_555555_256x240.png
grappelli/jquery/ui/images/ui-icons_777777_256x240.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/images/ui-icons_777777_256x240.png
grappelli/jquery/ui/images/ui-icons_444444_256x240.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/images/ui-icons_444444_256x240.png
grappelli/jquery/ui/images/ui-icons_ffffff_256x240.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/images/ui-icons_ffffff_256x240.png
grappelli/jquery/ui/external/jquery/jquery.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/external/jquery/jquery.js
admin/js/actions.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/admin/js/actions.js
admin/js/admin/.DS_Store /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/admin/js/admin/.DS_Store
admin/js/admin/DateTimeShortcuts.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/admin/js/admin/DateTimeShortcuts.js
admin/js/admin/RelatedObjectLookups.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/admin/js/admin/RelatedObjectLookups.js
admin/js/nav_sidebar.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/nav_sidebar.js
admin/js/autocomplete.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/autocomplete.js
admin/js/jquery.init.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/jquery.init.js
admin/js/urlify.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/urlify.js
admin/js/unusable_password_field.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/unusable_password_field.js
admin/js/calendar.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/calendar.js
admin/js/actions.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/actions.js
admin/js/core.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/core.js
admin/js/SelectFilter2.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/SelectFilter2.js
admin/js/prepopulate_init.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/prepopulate_init.js
admin/js/change_form.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/change_form.js
admin/js/inlines.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/inlines.js
admin/js/cancel.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/cancel.js
admin/js/prepopulate.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/prepopulate.js
admin/js/theme.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/theme.js
admin/js/popup_response.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/popup_response.js
admin/js/SelectBox.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/SelectBox.js
admin/js/filters.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/filters.js
admin/js/vendor/xregexp/LICENSE.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/LICENSE.txt
admin/js/vendor/xregexp/xregexp.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/xregexp.js
admin/js/vendor/xregexp/xregexp.min.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/xregexp.min.js
admin/js/vendor/select2/LICENSE.md /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/LICENSE.md
admin/js/vendor/select2/select2.full.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/select2.full.js
admin/js/vendor/select2/select2.full.min.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/select2.full.min.js
admin/js/vendor/select2/i18n/bs.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/bs.js
admin/js/vendor/select2/i18n/ja.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ja.js
admin/js/vendor/select2/i18n/sr.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sr.js
admin/js/vendor/select2/i18n/he.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/he.js
admin/js/vendor/select2/i18n/ca.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ca.js
admin/js/vendor/select2/i18n/bn.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/bn.js
admin/js/vendor/select2/i18n/sk.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sk.js
admin/js/vendor/select2/i18n/hr.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hr.js
admin/js/vendor/select2/i18n/ar.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ar.js
admin/js/vendor/select2/i18n/hy.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hy.js
admin/js/vendor/select2/i18n/th.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/th.js
admin/js/vendor/select2/i18n/vi.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/vi.js
admin/js/vendor/select2/i18n/mk.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/mk.js
admin/js/vendor/select2/i18n/hi.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hi.js
admin/js/vendor/select2/i18n/lt.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/lt.js
admin/js/vendor/select2/i18n/tk.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/tk.js
admin/js/vendor/select2/i18n/fr.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/fr.js
admin/js/vendor/select2/i18n/fi.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/fi.js
admin/js/vendor/select2/i18n/zh-CN.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/zh-CN.js
admin/js/vendor/select2/i18n/sr-Cyrl.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sr-Cyrl.js
admin/js/vendor/select2/i18n/pt-BR.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/pt-BR.js
admin/js/vendor/select2/i18n/ne.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ne.js
admin/js/vendor/select2/i18n/ko.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ko.js
admin/js/vendor/select2/i18n/et.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/et.js
admin/js/vendor/select2/i18n/pt.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/pt.js
admin/js/vendor/select2/i18n/da.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/da.js
admin/js/vendor/select2/i18n/bg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/bg.js
admin/js/vendor/select2/i18n/es.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/es.js
admin/js/vendor/select2/i18n/is.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/is.js
admin/js/vendor/select2/i18n/hu.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hu.js
admin/js/vendor/select2/i18n/af.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/af.js
admin/js/vendor/select2/i18n/cs.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/cs.js
admin/js/vendor/select2/i18n/nl.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/nl.js
admin/js/vendor/select2/i18n/sv.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sv.js
admin/js/vendor/select2/i18n/el.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/el.js
admin/js/vendor/select2/i18n/fa.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/fa.js
admin/js/vendor/select2/i18n/it.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/it.js
admin/js/vendor/select2/i18n/dsb.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/dsb.js
admin/js/vendor/select2/i18n/zh-TW.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/zh-TW.js
admin/js/vendor/select2/i18n/ro.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ro.js
admin/js/vendor/select2/i18n/km.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/km.js
admin/js/vendor/select2/i18n/pl.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/pl.js
admin/js/vendor/select2/i18n/ms.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ms.js
admin/js/vendor/select2/i18n/ps.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ps.js
admin/js/vendor/select2/i18n/tr.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/tr.js
admin/js/vendor/select2/i18n/en.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/en.js
admin/js/vendor/select2/i18n/nb.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/nb.js
admin/js/vendor/select2/i18n/gl.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/gl.js
admin/js/vendor/select2/i18n/de.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/de.js
admin/js/vendor/select2/i18n/eu.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/eu.js
admin/js/vendor/select2/i18n/id.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/id.js
admin/js/vendor/select2/i18n/ru.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ru.js
admin/js/vendor/select2/i18n/hsb.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hsb.js
admin/js/vendor/select2/i18n/az.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/az.js
admin/js/vendor/select2/i18n/lv.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/lv.js
admin/js/vendor/select2/i18n/ka.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ka.js
admin/js/vendor/select2/i18n/sl.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sl.js
admin/js/vendor/select2/i18n/uk.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/uk.js
admin/js/vendor/select2/i18n/sq.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sq.js
admin/js/vendor/jquery/jquery.min.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/jquery.min.js
admin/js/vendor/jquery/jquery.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/jquery.js
admin/js/vendor/jquery/LICENSE.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/LICENSE.txt
admin/js/admin/DateTimeShortcuts.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/admin/DateTimeShortcuts.js
admin/js/admin/RelatedObjectLookups.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/admin/RelatedObjectLookups.js
admin/img/search.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/search.svg
admin/img/icon-unknown.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-unknown.svg
admin/img/tooltag-arrowright.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/tooltag-arrowright.svg
admin/img/icon-deletelink.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-deletelink.svg
admin/img/icon-viewlink.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-viewlink.svg
admin/img/icon-alert.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-alert.svg
admin/img/inline-delete.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/inline-delete.svg
admin/img/icon-addlink.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-addlink.svg
admin/img/selector-icons.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/selector-icons.svg
admin/img/tooltag-add.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/tooltag-add.svg
admin/img/icon-calendar.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-calendar.svg
admin/img/icon-unknown-alt.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-unknown-alt.svg
admin/img/icon-clock.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-clock.svg
admin/img/icon-no.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-no.svg
admin/img/LICENSE /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/LICENSE
admin/img/icon-hidelink.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-hidelink.svg
admin/img/README.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/README.txt
admin/img/sorting-icons.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/sorting-icons.svg
admin/img/icon-changelink.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-changelink.svg
admin/img/calendar-icons.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/calendar-icons.svg
admin/img/icon-yes.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-yes.svg
admin/img/gis/move_vertex_off.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/gis/move_vertex_off.svg
admin/img/gis/move_vertex_on.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/gis/move_vertex_on.svg
admin/css/unusable_password_field.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/unusable_password_field.css
admin/css/base.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/base.css
admin/css/dark_mode.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/dark_mode.css
admin/css/login.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/login.css
admin/css/responsive_rtl.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/responsive_rtl.css
admin/css/responsive.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/responsive.css
admin/css/rtl.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/rtl.css
admin/css/widgets.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/widgets.css
admin/css/autocomplete.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/autocomplete.css
admin/css/dashboard.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/dashboard.css
admin/css/nav_sidebar.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/nav_sidebar.css
admin/css/changelists.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/changelists.css
admin/css/forms.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/forms.css
admin/css/vendor/select2/LICENSE-SELECT2.md /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/vendor/select2/LICENSE-SELECT2.md
admin/css/vendor/select2/select2.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/vendor/select2/select2.css
admin/css/vendor/select2/select2.min.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/vendor/select2/select2.min.css
django_htmx/htmx.min.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/static/django_htmx/htmx.min.js
django_htmx/htmx.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/static/django_htmx/htmx.js
django_htmx/django-htmx.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/static/django_htmx/django-htmx.js
js/htmx.min.js /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/js/htmx.min.js
js/tradingview/charting_library/charting_library.standalone.js /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/js/tradingview/charting_library/charting_library.standalone.js
img/how-it-works.png /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/img/how-it-works.png
img/penny_loupe_logo_bw.png /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/img/penny_loupe_logo_bw.png
img/volatility.png /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/img/volatility.png
img/penny_loupe_bg.png /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/img/penny_loupe_bg.png
img/penny_loupe_logo.png /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/img/penny_loupe_logo.png
img/news_sites.png /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/img/news_sites.png
img/pennyloupe_icon.png /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/img/pennyloupe_icon.png
img/penny_loupe_logo_inv.png /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/img/penny_loupe_logo_inv.png
css/pennyloupe.css /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/css/pennyloupe.css
django_extensions/js/jquery.ajaxQueue.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_extensions/static/django_extensions/js/jquery.ajaxQueue.js
django_extensions/js/jquery.bgiframe.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_extensions/static/django_extensions/js/jquery.bgiframe.js
django_extensions/js/jquery.autocomplete.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_extensions/static/django_extensions/js/jquery.autocomplete.js
django_extensions/img/indicator.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_extensions/static/django_extensions/img/indicator.gif
django_extensions/css/jquery.autocomplete.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_extensions/static/django_extensions/css/jquery.autocomplete.css
debug_toolbar/js/utils.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/utils.js
debug_toolbar/js/history.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/history.js
debug_toolbar/js/toolbar.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/toolbar.js
debug_toolbar/js/timer.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/timer.js
debug_toolbar/js/redirect.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/redirect.js
debug_toolbar/css/toolbar.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/css/toolbar.css
debug_toolbar/css/print.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/css/print.css

Templates (5 rendered)

Template path

  1. templates

Templates

trade_bot_detail.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/trade_bot_detail.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: ' "'U5QfSjol0dsbp7hGH6GmiL7qTHaQTc02R3Z3IlCc6eKeKzwJ5D9WiejNwal8xl33'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/trade/bot/54?date_pick=2025-11-21&panel=picklist'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f3fb5692480>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f3fb5692480>>'} {'buy_filter': {'rsi_2d__lte': 50, 'volume__gte': 1000000}, 'date_from': datetime.date(2025, 11, 21), 'date_pick': datetime.date(2025, 11, 21), 'date_to': datetime.date(2025, 12, 5), 'matching_results': [<ModelPick: 2025-11-21: WOOF (0.604)>, <ModelPick: 2025-11-21: NVNO (0.602)>, <ModelPick: 2025-11-21: UAMY (0.598)>, <ModelPick: 2025-11-21: SLDP (0.596)>, <ModelPick: 2025-11-21: EBS (0.594)>, <ModelPick: 2025-11-21: XRX (0.592)>, <ModelPick: 2025-11-21: ARRY (0.59)>, <ModelPick: 2025-11-21: CTM (0.59)>, <ModelPick: 2025-11-21: ACDC (0.584)>, <ModelPick: 2025-11-21: ATAI (0.58)>, <ModelPick: 2025-11-21: NVVE (0.572)>, <ModelPick: 2025-11-21: PBM (0.572)>, <ModelPick: 2025-11-21: UNIT (0.572)>, <ModelPick: 2025-11-21: YYAI (0.572)>, <ModelPick: 2025-11-21: IRBT (0.566)>, <ModelPick: 2025-11-21: TLRY (0.566)>, <ModelPick: 2025-11-21: AUID (0.562)>, <ModelPick: 2025-11-21: RANI (0.56)>, <ModelPick: 2025-11-21: SNDX (0.558)>, <ModelPick: 2025-11-21: ATYR (0.552)>, <ModelPick: 2025-11-21: SCYX (0.55)>, <ModelPick: 2025-11-21: TOVX (0.55)>, <ModelPick: 2025-11-21: ACHV (0.548)>, <ModelPick: 2025-11-21: RC (0.548)>, <ModelPick: 2025-11-21: HOTH (0.546)>, <ModelPick: 2025-11-21: SES (0.546)>, <ModelPick: 2025-11-21: VZLA (0.544)>, <ModelPick: 2025-11-21: DAWN (0.542)>, <ModelPick: 2025-11-21: SABR (0.54)>, <ModelPick: 2025-11-21: SGD (0.54)>, <ModelPick: 2025-11-21: QSI (0.532)>, <ModelPick: 2025-11-21: HOLO (0.53)>, <ModelPick: 2025-11-21: PTON (0.518)>, <ModelPick: 2025-11-21: GANX (0.51)>, <ModelPick: 2025-11-21: CGEM (0.502)>, <ModelPick: 2025-11-21: MFA (0.488)>], 'order_pairs': {626: {'ACDC': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 902931, tzinfo=datetime.timezone.utc), 'buy_price': 3.33, 'buy_reason': 'recommend', 'buy_total': 2823.84, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -8.480000000000018, 'profit_loss_pct': -0.30030030030030097, 'qty': 848.0, 'sell_date': datetime.datetime(2025, 11, 25, 20, 45, 17, 26866, tzinfo=datetime.timezone.utc), 'sell_price': 3.32, 'sell_reason': 'hold_dt expired', 'sell_total': 2815.36, 'ticker': 'ACDC'}, 'ARRY': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 473964, tzinfo=datetime.timezone.utc), 'buy_price': 6.71, 'buy_reason': 'recommend', 'buy_total': 375.76, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 20.160000000000025, 'profit_loss_pct': 5.365126676602093, 'qty': 417.0, 'sell_date': datetime.datetime(2025, 11, 21, 15, 32, 8, 539060, tzinfo=datetime.timezone.utc), 'sell_price': 7.07, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 395.92, 'ticker': 'ARRY'}, 'ATAI': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 20, 116898, tzinfo=datetime.timezone.utc), 'buy_price': 3.66, 'buy_reason': 'recommend', 'buy_total': 2803.56, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 91.92000000000007, 'profit_loss_pct': 3.2786885245901667, 'qty': 766.0, 'sell_date': datetime.datetime(2025, 11, 21, 18, 3, 30, 71736, tzinfo=datetime.timezone.utc), 'sell_price': 3.78, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2895.48, 'ticker': 'ATAI'}, 'CTM': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 687591, tzinfo=datetime.timezone.utc), 'buy_price': 1.02, 'buy_reason': 'recommend', 'buy_total': 2027.76, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 0.0, 'profit_loss_pct': 0.0, 'qty': 2799.0, 'sell_date': datetime.datetime(2025, 11, 25, 20, 45, 16, 876312, tzinfo=datetime.timezone.utc), 'sell_price': 1.02, 'sell_reason': 'hold_dt expired', 'sell_total': 2027.76, 'ticker': 'CTM'}, 'EBS': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 258527, tzinfo=datetime.timezone.utc), 'buy_price': 9.13, 'buy_reason': 'recommend', 'buy_total': 1734.7, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 345.22, 'profit_loss_pct': 19.900847408773853, 'qty': 282.0, 'sell_date': datetime.datetime(2025, 12, 1, 14, 32, 22, 290536, tzinfo=datetime.timezone.utc), 'sell_price': 10.95, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2079.92, 'ticker': 'EBS'}, 'NVNO': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 18, 613370, tzinfo=datetime.timezone.utc), 'buy_price': 0.32, 'buy_reason': 'recommend', 'buy_total': 978.8, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 18.129999999999995, 'profit_loss_pct': 1.8522680833673884, 'qty': 9031.0, 'sell_date': datetime.datetime(2025, 11, 21, 18, 4, 31, 15436, tzinfo=datetime.timezone.utc), 'sell_price': 0.33, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 996.93, 'ticker': 'NVNO'}, 'NVVE': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 20, 331076, tzinfo=datetime.timezone.utc), 'buy_price': 0.26, 'buy_reason': 'recommend', 'buy_total': 2996.93, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -397.39999999999964, 'profit_loss_pct': -13.26023630848901, 'qty': 11322.0, 'sell_date': datetime.datetime(2025, 11, 21, 17, 17, 53, 516772, tzinfo=datetime.timezone.utc), 'sell_price': 0.23, 'sell_reason': 'stop-loss', 'sell_total': 2599.53, 'ticker': 'NVVE'}, 'PBM': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 20, 545101, tzinfo=datetime.timezone.utc), 'buy_price': 1.56, 'buy_reason': 'recommend', 'buy_total': 10.92, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 0.34999999999999964, 'profit_loss_pct': 3.205128205128202, 'qty': 1896.0, 'sell_date': datetime.datetime(2025, 11, 21, 14, 31, 57, 512293, tzinfo=datetime.timezone.utc), 'sell_price': 1.61, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 11.27, 'ticker': 'PBM'}, 'SLDP': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 42489, tzinfo=datetime.timezone.utc), 'buy_price': 5.04, 'buy_reason': 'recommend', 'buy_total': 2963.52, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 23.519999999999982, 'profit_loss_pct': 0.793650793650793, 'qty': 588.0, 'sell_date': datetime.datetime(2025, 11, 25, 17, 59, 48, 293036, tzinfo=datetime.timezone.utc), 'sell_price': 5.08, 'sell_reason': 'hold_dt expired', 'sell_total': 2987.04, 'ticker': 'SLDP'}}, 627: {'AGL': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 25, 532349, tzinfo=datetime.timezone.utc), 'buy_price': 0.62, 'buy_reason': 'recommend', 'buy_total': 2407.86, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 94.00999999999976, 'profit_loss_pct': 3.9042967614396087, 'qty': 4370.0, 'sell_date': datetime.datetime(2025, 11, 24, 15, 10, 44, 591150, tzinfo=datetime.timezone.utc), 'sell_price': 0.64, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2501.87, 'ticker': 'AGL'}, 'BB': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 27, 540158, tzinfo=datetime.timezone.utc), 'buy_price': 4.2, 'buy_reason': 'recommend', 'buy_total': 2142.0, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -71.40000000000009, 'profit_loss_pct': -3.3333333333333375, 'qty': 604.0, 'sell_date': datetime.datetime(2025, 12, 2, 20, 46, 0, 488804, tzinfo=datetime.timezone.utc), 'sell_price': 4.06, 'sell_reason': 'hold_dt expired', 'sell_total': 2070.6, 'ticker': 'BB'}, 'CLOV': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 26, 438227, tzinfo=datetime.timezone.utc), 'buy_price': 2.31, 'buy_reason': 'recommend', 'buy_total': 1314.39, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 45.51999999999998, 'profit_loss_pct': 3.463203463203462, 'qty': 1166.0, 'sell_date': datetime.datetime(2025, 11, 24, 14, 32, 3, 431219, tzinfo=datetime.timezone.utc), 'sell_price': 2.39, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1359.91, 'ticker': 'CLOV'}, 'FIGS': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 25, 775541, tzinfo=datetime.timezone.utc), 'buy_price': 9.67, 'buy_reason': 'recommend', 'buy_total': 502.84, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 6.760000000000048, 'profit_loss_pct': 1.3443640124095235, 'qty': 264.0, 'sell_date': datetime.datetime(2025, 11, 28, 17, 38, 40, 775631, tzinfo=datetime.timezone.utc), 'sell_price': 9.8, 'sell_reason': 'hold_dt expired', 'sell_total': 509.6, 'ticker': 'FIGS'}, 'OPAD': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 26, 878798, tzinfo=datetime.timezone.utc), 'buy_price': 1.9, 'buy_reason': 'recommend', 'buy_total': 855.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 27.0, 'profit_loss_pct': 3.1578947368421053, 'qty': 1397.0, 'sell_date': datetime.datetime(2025, 11, 25, 14, 31, 40, 461044, tzinfo=datetime.timezone.utc), 'sell_price': 1.96, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 882.0, 'ticker': 'OPAD'}, 'SKIN': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 25, 995956, tzinfo=datetime.timezone.utc), 'buy_price': 1.33, 'buy_reason': 'recommend', 'buy_total': 2366.07, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 195.69000000000005, 'profit_loss_pct': 8.270676691729326, 'qty': 1822.0, 'sell_date': datetime.datetime(2025, 11, 26, 16, 48, 7, 954917, tzinfo=datetime.timezone.utc), 'sell_price': 1.44, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2561.76, 'ticker': 'SKIN'}}, 628: {'ACB': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 19, 465792, tzinfo=datetime.timezone.utc), 'buy_price': 4.38, 'buy_reason': 'recommend', 'buy_total': 2641.14, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 90.45000000000027, 'profit_loss_pct': 3.4246575342465855, 'qty': 603.0, 'sell_date': datetime.datetime(2025, 11, 26, 16, 29, 53, 893780, tzinfo=datetime.timezone.utc), 'sell_price': 4.53, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2731.59, 'ticker': 'ACB'}, 'BLNK': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 19, 258785, tzinfo=datetime.timezone.utc), 'buy_price': 1.31, 'buy_reason': 'recommend', 'buy_total': 1700.38, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -64.90000000000009, 'profit_loss_pct': -3.816793893129776, 'qty': 2054.0, 'sell_date': datetime.datetime(2025, 12, 1, 20, 45, 31, 996842, tzinfo=datetime.timezone.utc), 'sell_price': 1.26, 'sell_reason': 'hold_dt expired', 'sell_total': 1635.48, 'ticker': 'BLNK'}, 'BTCS': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 18, 839809, tzinfo=datetime.timezone.utc), 'buy_price': 3.1, 'buy_reason': 'recommend', 'buy_total': 279.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 10.800000000000011, 'profit_loss_pct': 3.8709677419354884, 'qty': 867.0, 'sell_date': datetime.datetime(2025, 11, 28, 14, 32, 1, 959345, tzinfo=datetime.timezone.utc), 'sell_price': 3.22, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 289.8, 'ticker': 'BTCS'}, 'GEVO': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 18, 215129, tzinfo=datetime.timezone.utc), 'buy_price': 2.03, 'buy_reason': 'recommend', 'buy_total': 2807.49, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 110.64000000000033, 'profit_loss_pct': 3.9408866995074012, 'qty': 1383.0, 'sell_date': datetime.datetime(2025, 11, 28, 15, 48, 5, 333577, tzinfo=datetime.timezone.utc), 'sell_price': 2.11, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2918.13, 'ticker': 'GEVO'}, 'RZLV': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 19, 674730, tzinfo=datetime.timezone.utc), 'buy_price': 3.12, 'buy_reason': 'recommend', 'buy_total': 2648.88, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -297.1500000000001, 'profit_loss_pct': -11.21794871794872, 'qty': 849.0, 'sell_date': datetime.datetime(2025, 12, 1, 19, 41, 44, 121349, tzinfo=datetime.timezone.utc), 'sell_price': 2.77, 'sell_reason': 'stop-loss', 'sell_total': 2351.73, 'ticker': 'RZLV'}, 'WULF': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 17, 571143, tzinfo=datetime.timezone.utc), 'buy_price': 12.42, 'buy_reason': 'recommend', 'buy_total': 2857.6, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 268.0999999999999, 'profit_loss_pct': 9.381998880179168, 'qty': 230.0, 'sell_date': datetime.datetime(2025, 11, 25, 14, 41, 50, 533040, tzinfo=datetime.timezone.utc), 'sell_price': 13.59, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 3125.7, 'ticker': 'WULF'}}, 630: {'ACHV': {'buy_date': datetime.datetime(2025, 11, 26, 11, 50, 42, 861143, tzinfo=datetime.timezone.utc), 'buy_price': 4.59, 'buy_reason': 'recommend', 'buy_total': 656.37, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 41.47000000000003, 'profit_loss_pct': 6.3180827886710285, 'qty': 835.0, 'sell_date': datetime.datetime(2025, 11, 26, 14, 32, 12, 212225, tzinfo=datetime.timezone.utc), 'sell_price': 4.88, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 697.84, 'ticker': 'ACHV'}, 'PALI': {'buy_date': datetime.datetime(2025, 11, 26, 11, 50, 41, 722199, tzinfo=datetime.timezone.utc), 'buy_price': 2.17, 'buy_reason': 'recommend', 'buy_total': 1453.9, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -180.9000000000001, 'profit_loss_pct': -12.44239631336406, 'qty': 1937.0, 'sell_date': datetime.datetime(2025, 12, 1, 16, 11, 50, 943576, tzinfo=datetime.timezone.utc), 'sell_price': 1.9, 'sell_reason': 'stop-loss', 'sell_total': 1273.0, 'ticker': 'PALI'}}, 632: {'AVDL': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 23, 690983, tzinfo=datetime.timezone.utc), 'buy_price': 21.47, 'buy_reason': 'recommend', 'buy_total': 2726.69, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -13.970000000000255, 'profit_loss_pct': -0.5123428039124454, 'qty': 127.0, 'sell_date': datetime.datetime(2025, 12, 2, 20, 46, 0, 629378, tzinfo=datetime.timezone.utc), 'sell_price': 21.36, 'sell_reason': 'hold_dt expired', 'sell_total': 2712.72, 'ticker': 'AVDL'}, 'IRWD': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 21, 574652, tzinfo=datetime.timezone.utc), 'buy_price': 3.83, 'buy_reason': 'recommend', 'buy_total': 2420.56, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -208.55999999999995, 'profit_loss_pct': -8.616187989556133, 'qty': 782.0, 'sell_date': datetime.datetime(2025, 12, 2, 19, 37, 11, 303291, tzinfo=datetime.timezone.utc), 'sell_price': 3.5, 'sell_reason': 'hold_dt expired', 'sell_total': 2212.0, 'ticker': 'IRWD'}, 'MBRX': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 23, 479749, tzinfo=datetime.timezone.utc), 'buy_price': 0.27, 'buy_reason': 'recommend', 'buy_total': 2631.31, 'css_class': 'uk-label-gaining', 'current_price': 7.71, 'profit_loss': 7.4399999999999995, 'profit_loss_pct': 2755.555555555555, 'qty': 10382.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'MBRX'}, 'YYAI': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 22, 218880, tzinfo=datetime.timezone.utc), 'buy_price': 1.08, 'buy_reason': 'recommend', 'buy_total': 2774.52, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -328.8299999999999, 'profit_loss_pct': -11.8517797673111, 'qty': 2569.0, 'sell_date': datetime.datetime(2025, 12, 1, 15, 34, 19, 416045, tzinfo=datetime.timezone.utc), 'sell_price': 0.95, 'sell_reason': 'stop-loss', 'sell_total': 2445.69, 'ticker': 'YYAI'}}, 635: {'COMP': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 7, 681373, tzinfo=datetime.timezone.utc), 'buy_price': 10.22, 'buy_reason': 'recommend', 'buy_total': 2994.46, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 96.69000000000005, 'profit_loss_pct': 3.228962818003916, 'qty': 293.0, 'sell_date': datetime.datetime(2025, 12, 1, 20, 13, 11, 234345, tzinfo=datetime.timezone.utc), 'sell_price': 10.55, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 3091.15, 'ticker': 'COMP'}, 'EDIT': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 7, 895448, tzinfo=datetime.timezone.utc), 'buy_price': 2.36, 'buy_reason': 'recommend', 'buy_total': 972.32, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -103.0, 'profit_loss_pct': -10.59322033898305, 'qty': 1270.0, 'sell_date': datetime.datetime(2025, 12, 2, 17, 13, 9, 670952, tzinfo=datetime.timezone.utc), 'sell_price': 2.11, 'sell_reason': 'stop-loss', 'sell_total': 869.32, 'ticker': 'EDIT'}, 'NVTS': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 7, 48264, tzinfo=datetime.timezone.utc), 'buy_price': 8.45, 'buy_reason': 'recommend', 'buy_total': 2332.2, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 33.120000000000346, 'profit_loss_pct': 1.420118343195281, 'qty': 367.0, 'sell_date': datetime.datetime(2025, 12, 3, 18, 55, 13, 980374, tzinfo=datetime.timezone.utc), 'sell_price': 8.57, 'sell_reason': 'hold_dt expired', 'sell_total': 2365.32, 'ticker': 'NVTS'}, 'ONDS': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 8, 564772, tzinfo=datetime.timezone.utc), 'buy_price': 7.96, 'buy_reason': 'recommend', 'buy_total': 1727.32, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 60.75999999999999, 'profit_loss_pct': 3.5175879396984917, 'qty': 363.0, 'sell_date': datetime.datetime(2025, 12, 2, 15, 20, 27, 589653, tzinfo=datetime.timezone.utc), 'sell_price': 8.24, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1788.08, 'ticker': 'ONDS'}}, 636: {'CMND': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 127982, tzinfo=datetime.timezone.utc), 'buy_price': 0.13, 'buy_reason': 'recommend', 'buy_total': 2658.52, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 40.039999999999964, 'profit_loss_pct': 1.5061011389795813, 'qty': 20019.0, 'sell_date': datetime.datetime(2025, 12, 2, 17, 9, 6, 43859, tzinfo=datetime.timezone.utc), 'sell_price': 0.13, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2698.56, 'ticker': 'CMND'}, 'DRCT': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 54, 647092, tzinfo=datetime.timezone.utc), 'buy_price': 0.11, 'buy_reason': 'recommend', 'buy_total': 967.88, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -170.96000000000004, 'profit_loss_pct': -17.663346695871393, 'qty': 23461.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 12, 8, 676995, tzinfo=datetime.timezone.utc), 'sell_price': 0.09, 'sell_reason': 'stop-loss', 'sell_total': 796.92, 'ticker': 'DRCT'}, 'GPUS': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 55, 290523, tzinfo=datetime.timezone.utc), 'buy_price': 0.3, 'buy_reason': 'recommend', 'buy_total': 2887.37, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -90.52999999999975, 'profit_loss_pct': -3.135379255169921, 'qty': 9631.0, 'sell_date': datetime.datetime(2025, 12, 4, 19, 41, 2, 227311, tzinfo=datetime.timezone.utc), 'sell_price': 0.29, 'sell_reason': 'hold_dt expired', 'sell_total': 2796.84, 'ticker': 'GPUS'}, 'INHD': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 761055, tzinfo=datetime.timezone.utc), 'buy_price': 0.16, 'buy_reason': 'recommend', 'buy_total': 1738.68, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -265.8100000000002, 'profit_loss_pct': -15.288034600961659, 'qty': 15207.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 34, 41, 489513, tzinfo=datetime.timezone.utc), 'sell_price': 0.14, 'sell_reason': 'stop-loss', 'sell_total': 1472.87, 'ticker': 'INHD'}, 'IRBT': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 54, 867198, tzinfo=datetime.timezone.utc), 'buy_price': 1.62, 'buy_reason': 'recommend', 'buy_total': 1498.5, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 55.5, 'profit_loss_pct': 3.7037037037037033, 'qty': 1665.0, 'sell_date': datetime.datetime(2025, 12, 2, 14, 31, 33, 495866, tzinfo=datetime.timezone.utc), 'sell_price': 1.68, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1554.0, 'ticker': 'IRBT'}, 'METC': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 967363, tzinfo=datetime.timezone.utc), 'buy_price': 15.24, 'buy_reason': 'recommend', 'buy_total': 2042.16, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 80.39999999999986, 'profit_loss_pct': 3.937007874015741, 'qty': 157.0, 'sell_date': datetime.datetime(2025, 12, 2, 14, 37, 40, 899647, tzinfo=datetime.timezone.utc), 'sell_price': 15.84, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2122.56, 'ticker': 'METC'}, 'MSAI': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 340358, tzinfo=datetime.timezone.utc), 'buy_price': 0.55, 'buy_reason': 'recommend', 'buy_total': 1869.32, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 103.01999999999998, 'profit_loss_pct': 5.511094943615859, 'qty': 4511.0, 'sell_date': datetime.datetime(2025, 12, 2, 15, 12, 19, 33365, tzinfo=datetime.timezone.utc), 'sell_price': 0.58, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1972.34, 'ticker': 'MSAI'}, 'PACB': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 55, 508048, tzinfo=datetime.timezone.utc), 'buy_price': 2.24, 'buy_reason': 'recommend', 'buy_total': 1191.68, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 37.24000000000001, 'profit_loss_pct': 3.125000000000001, 'qty': 1143.0, 'sell_date': datetime.datetime(2025, 12, 2, 15, 15, 22, 402922, tzinfo=datetime.timezone.utc), 'sell_price': 2.31, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1228.92, 'ticker': 'PACB'}, 'RZLV': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 55, 718791, tzinfo=datetime.timezone.utc), 'buy_price': 2.81, 'buy_reason': 'recommend', 'buy_total': 511.42, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -60.06, 'profit_loss_pct': -11.743772241992882, 'qty': 938.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 33, 41, 125015, tzinfo=datetime.timezone.utc), 'sell_price': 2.48, 'sell_reason': 'stop-loss', 'sell_total': 451.36, 'ticker': 'RZLV'}, 'WTI': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 551982, tzinfo=datetime.timezone.utc), 'buy_price': 1.7, 'buy_reason': 'recommend', 'buy_total': 731.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 47.299999999999955, 'profit_loss_pct': 6.4705882352941115, 'qty': 1397.0, 'sell_date': datetime.datetime(2025, 12, 4, 16, 35, 18, 918746, tzinfo=datetime.timezone.utc), 'sell_price': 1.81, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 778.3, 'ticker': 'WTI'}}, 639: {'AMRX': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 16, 673053, tzinfo=datetime.timezone.utc), 'buy_price': 12.15, 'buy_reason': 'recommend', 'buy_total': 5965.65, 'css_class': 'uk-label-losing', 'current_price': 11.83, 'profit_loss': -0.3200000000000003, 'profit_loss_pct': -2.6337448559670804, 'qty': 491.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'AMRX'}, 'APLT': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 19507, tzinfo=datetime.timezone.utc), 'buy_price': 0.21, 'buy_reason': 'recommend', 'buy_total': 843.57, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 19.3599999999999, 'profit_loss_pct': 2.295008120250827, 'qty': 14831.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 43, 19, 992220, tzinfo=datetime.timezone.utc), 'sell_price': 0.22, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 862.93, 'ticker': 'APLT'}, 'ASPI': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 17, 98435, tzinfo=datetime.timezone.utc), 'buy_price': 5.38, 'buy_reason': 'recommend', 'buy_total': 5794.26, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 344.6399999999994, 'profit_loss_pct': 5.947955390334562, 'qty': 1077.0, 'sell_date': datetime.datetime(2025, 12, 3, 20, 46, 55, 405923, tzinfo=datetime.timezone.utc), 'sell_price': 5.7, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 6138.9, 'ticker': 'ASPI'}, 'ASST': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 249381, tzinfo=datetime.timezone.utc), 'buy_price': 1.05, 'buy_reason': 'recommend', 'buy_total': 2764.65, 'css_class': 'uk-label-losing', 'current_price': 0.987, 'profit_loss': -0.06300000000000006, 'profit_loss_pct': -6.000000000000005, 'qty': 2713.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'ASST'}, 'ATYR': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 296997, tzinfo=datetime.timezone.utc), 'buy_price': 0.71, 'buy_reason': 'recommend', 'buy_total': 2142.71, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 350.71000000000004, 'profit_loss_pct': 16.367590574552786, 'qty': 3616.0, 'sell_date': datetime.datetime(2025, 12, 4, 20, 46, 51, 107327, tzinfo=datetime.timezone.utc), 'sell_price': 0.82, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2493.42, 'ticker': 'ATYR'}, 'BNAI': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 16, 463159, tzinfo=datetime.timezone.utc), 'buy_price': 0.33, 'buy_reason': 'recommend', 'buy_total': 6249.96, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -1146.1800000000003, 'profit_loss_pct': -18.338997369583172, 'qty': 18945.0, 'sell_date': datetime.datetime(2025, 12, 4, 15, 26, 11, 578220, tzinfo=datetime.timezone.utc), 'sell_price': 0.27, 'sell_reason': 'stop-loss', 'sell_total': 5103.78, 'ticker': 'BNAI'}, 'CHGG': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 483289, tzinfo=datetime.timezone.utc), 'buy_price': 0.95, 'buy_reason': 'recommend', 'buy_total': 2912.45, 'css_class': 'uk-label-losing', 'current_price': 0.8985, 'profit_loss': -0.05149999999999999, 'profit_loss_pct': -5.421052631578947, 'qty': 3068.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'CHGG'}, 'CODX': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 36, 155921, tzinfo=datetime.timezone.utc), 'buy_price': 0.36, 'buy_reason': 'recommend', 'buy_total': 684.48, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 19.949999999999932, 'profit_loss_pct': 2.9146213183730616, 'qty': 7587.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 49, 27, 753635, tzinfo=datetime.timezone.utc), 'sell_price': 0.37, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 704.43, 'ticker': 'CODX'}, 'DFLI': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 506258, tzinfo=datetime.timezone.utc), 'buy_price': 0.7, 'buy_reason': 'recommend', 'buy_total': 13.98, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 0.5199999999999996, 'profit_loss_pct': 3.7195994277539306, 'qty': 3606.0, 'sell_date': datetime.datetime(2025, 12, 3, 14, 58, 50, 998949, tzinfo=datetime.timezone.utc), 'sell_price': 0.73, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 14.5, 'ticker': 'DFLI'}, 'EVGO': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 705308, tzinfo=datetime.timezone.utc), 'buy_price': 3.15, 'buy_reason': 'recommend', 'buy_total': 2835.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 216.0, 'profit_loss_pct': 7.6190476190476195, 'qty': 900.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 54, 38, 906532, tzinfo=datetime.timezone.utc), 'sell_price': 3.39, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 3051.0, 'ticker': 'EVGO'}, 'KURA': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 719758, tzinfo=datetime.timezone.utc), 'buy_price': 11.49, 'buy_reason': 'recommend', 'buy_total': 1562.64, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 51.679999999999836, 'profit_loss_pct': 3.30722367275891, 'qty': 232.0, 'sell_date': datetime.datetime(2025, 12, 3, 14, 35, 18, 596065, tzinfo=datetime.timezone.utc), 'sell_price': 11.87, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1614.32, 'ticker': 'KURA'}, 'PDSB': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 16, 887969, tzinfo=datetime.timezone.utc), 'buy_price': 0.79, 'buy_reason': 'recommend', 'buy_total': 5947.12, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 227.35000000000036, 'profit_loss_pct': 3.822858795517837, 'qty': 7528.0, 'sell_date': datetime.datetime(2025, 12, 3, 17, 58, 8, 755181, tzinfo=datetime.timezone.utc), 'sell_price': 0.82, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 6174.47, 'ticker': 'PDSB'}, 'SGBX': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 53849, tzinfo=datetime.timezone.utc), 'buy_price': 3.05, 'buy_reason': 'recommend', 'buy_total': 2565.05, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 84.09999999999991, 'profit_loss_pct': 3.27868852459016, 'qty': 842.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 36, 43, 864040, tzinfo=datetime.timezone.utc), 'sell_price': 3.15, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2649.15, 'ticker': 'SGBX'}}, 640: {'COSM': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 23, 330294, tzinfo=datetime.timezone.utc), 'buy_price': 0.5, 'buy_reason': 'recommend', 'buy_total': 2353.78, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 79.7199999999998, 'profit_loss_pct': 3.3868925727977888, 'qty': 4717.0, 'sell_date': datetime.datetime(2025, 12, 4, 19, 23, 47, 960501, tzinfo=datetime.timezone.utc), 'sell_price': 0.52, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2433.5, 'ticker': 'COSM'}, 'HUMA': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 484476, tzinfo=datetime.timezone.utc), 'buy_price': 1.28, 'buy_reason': 'recommend', 'buy_total': 321.28, 'css_class': 'uk-label-gaining', 'current_price': 1.3, 'profit_loss': 0.020000000000000018, 'profit_loss_pct': 1.5625000000000013, 'qty': 1856.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'HUMA'}, 'IMNM': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 23, 118346, tzinfo=datetime.timezone.utc), 'buy_price': 19.29, 'buy_reason': 'recommend', 'buy_total': 2372.67, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 88.55999999999995, 'profit_loss_pct': 3.732503888024881, 'qty': 123.0, 'sell_date': datetime.datetime(2025, 12, 4, 16, 1, 46, 753544, tzinfo=datetime.timezone.utc), 'sell_price': 20.01, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2461.23, 'ticker': 'IMNM'}, 'NB': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 275021, tzinfo=datetime.timezone.utc), 'buy_price': 5.97, 'buy_reason': 'recommend', 'buy_total': 1414.89, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 68.72999999999979, 'profit_loss_pct': 4.857621440535998, 'qty': 400.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 31, 55, 74801, tzinfo=datetime.timezone.utc), 'sell_price': 6.26, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1483.62, 'ticker': 'NB'}, 'OVID': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 21, 853553, tzinfo=datetime.timezone.utc), 'buy_price': 1.56, 'buy_reason': 'recommend', 'buy_total': 494.52, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 19.019999999999982, 'profit_loss_pct': 3.8461538461538427, 'qty': 1563.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 57, 42, 491668, tzinfo=datetime.timezone.utc), 'sell_price': 1.62, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 513.54, 'ticker': 'OVID'}, 'PLG': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 694605, tzinfo=datetime.timezone.utc), 'buy_price': 2.41, 'buy_reason': 'recommend', 'buy_total': 2258.17, 'css_class': 'uk-label-losing', 'current_price': 2.39, 'profit_loss': -0.020000000000000018, 'profit_loss_pct': -0.8298755186721999, 'qty': 937.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'PLG'}, 'REAL': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 64339, tzinfo=datetime.timezone.utc), 'buy_price': 14.25, 'buy_reason': 'recommend', 'buy_total': 2465.25, 'css_class': 'uk-label-losing', 'current_price': 14.21, 'profit_loss': -0.03999999999999915, 'profit_loss_pct': -0.28070175438595896, 'qty': 173.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'REAL'}}}, 'panel': 'picklist', 'picklist_results': '<<queryset of core.TradeBasketPick>>', 'trade_baskets': '<<queryset of core.TradeBasket>>', 'trade_bot': <TradeBot: 1.0.0 Binned Random Forrest 3d PH 3%>}
base.html
/mnt/disks/pennyloupe_disk/pennyloupe/templates/base.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: ' "'U5QfSjol0dsbp7hGH6GmiL7qTHaQTc02R3Z3IlCc6eKeKzwJ5D9WiejNwal8xl33'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/trade/bot/54?date_pick=2025-11-21&panel=picklist'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f3fb5692480>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f3fb5692480>>'} {'buy_filter': {'rsi_2d__lte': 50, 'volume__gte': 1000000}, 'date_from': datetime.date(2025, 11, 21), 'date_pick': datetime.date(2025, 11, 21), 'date_to': datetime.date(2025, 12, 5), 'matching_results': [<ModelPick: 2025-11-21: WOOF (0.604)>, <ModelPick: 2025-11-21: NVNO (0.602)>, <ModelPick: 2025-11-21: UAMY (0.598)>, <ModelPick: 2025-11-21: SLDP (0.596)>, <ModelPick: 2025-11-21: EBS (0.594)>, <ModelPick: 2025-11-21: XRX (0.592)>, <ModelPick: 2025-11-21: ARRY (0.59)>, <ModelPick: 2025-11-21: CTM (0.59)>, <ModelPick: 2025-11-21: ACDC (0.584)>, <ModelPick: 2025-11-21: ATAI (0.58)>, <ModelPick: 2025-11-21: NVVE (0.572)>, <ModelPick: 2025-11-21: PBM (0.572)>, <ModelPick: 2025-11-21: UNIT (0.572)>, <ModelPick: 2025-11-21: YYAI (0.572)>, <ModelPick: 2025-11-21: IRBT (0.566)>, <ModelPick: 2025-11-21: TLRY (0.566)>, <ModelPick: 2025-11-21: AUID (0.562)>, <ModelPick: 2025-11-21: RANI (0.56)>, <ModelPick: 2025-11-21: SNDX (0.558)>, <ModelPick: 2025-11-21: ATYR (0.552)>, <ModelPick: 2025-11-21: SCYX (0.55)>, <ModelPick: 2025-11-21: TOVX (0.55)>, <ModelPick: 2025-11-21: ACHV (0.548)>, <ModelPick: 2025-11-21: RC (0.548)>, <ModelPick: 2025-11-21: HOTH (0.546)>, <ModelPick: 2025-11-21: SES (0.546)>, <ModelPick: 2025-11-21: VZLA (0.544)>, <ModelPick: 2025-11-21: DAWN (0.542)>, <ModelPick: 2025-11-21: SABR (0.54)>, <ModelPick: 2025-11-21: SGD (0.54)>, <ModelPick: 2025-11-21: QSI (0.532)>, <ModelPick: 2025-11-21: HOLO (0.53)>, <ModelPick: 2025-11-21: PTON (0.518)>, <ModelPick: 2025-11-21: GANX (0.51)>, <ModelPick: 2025-11-21: CGEM (0.502)>, <ModelPick: 2025-11-21: MFA (0.488)>], 'order_pairs': {626: {'ACDC': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 902931, tzinfo=datetime.timezone.utc), 'buy_price': 3.33, 'buy_reason': 'recommend', 'buy_total': 2823.84, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -8.480000000000018, 'profit_loss_pct': -0.30030030030030097, 'qty': 848.0, 'sell_date': datetime.datetime(2025, 11, 25, 20, 45, 17, 26866, tzinfo=datetime.timezone.utc), 'sell_price': 3.32, 'sell_reason': 'hold_dt expired', 'sell_total': 2815.36, 'ticker': 'ACDC'}, 'ARRY': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 473964, tzinfo=datetime.timezone.utc), 'buy_price': 6.71, 'buy_reason': 'recommend', 'buy_total': 375.76, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 20.160000000000025, 'profit_loss_pct': 5.365126676602093, 'qty': 417.0, 'sell_date': datetime.datetime(2025, 11, 21, 15, 32, 8, 539060, tzinfo=datetime.timezone.utc), 'sell_price': 7.07, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 395.92, 'ticker': 'ARRY'}, 'ATAI': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 20, 116898, tzinfo=datetime.timezone.utc), 'buy_price': 3.66, 'buy_reason': 'recommend', 'buy_total': 2803.56, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 91.92000000000007, 'profit_loss_pct': 3.2786885245901667, 'qty': 766.0, 'sell_date': datetime.datetime(2025, 11, 21, 18, 3, 30, 71736, tzinfo=datetime.timezone.utc), 'sell_price': 3.78, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2895.48, 'ticker': 'ATAI'}, 'CTM': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 687591, tzinfo=datetime.timezone.utc), 'buy_price': 1.02, 'buy_reason': 'recommend', 'buy_total': 2027.76, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 0.0, 'profit_loss_pct': 0.0, 'qty': 2799.0, 'sell_date': datetime.datetime(2025, 11, 25, 20, 45, 16, 876312, tzinfo=datetime.timezone.utc), 'sell_price': 1.02, 'sell_reason': 'hold_dt expired', 'sell_total': 2027.76, 'ticker': 'CTM'}, 'EBS': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 258527, tzinfo=datetime.timezone.utc), 'buy_price': 9.13, 'buy_reason': 'recommend', 'buy_total': 1734.7, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 345.22, 'profit_loss_pct': 19.900847408773853, 'qty': 282.0, 'sell_date': datetime.datetime(2025, 12, 1, 14, 32, 22, 290536, tzinfo=datetime.timezone.utc), 'sell_price': 10.95, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2079.92, 'ticker': 'EBS'}, 'NVNO': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 18, 613370, tzinfo=datetime.timezone.utc), 'buy_price': 0.32, 'buy_reason': 'recommend', 'buy_total': 978.8, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 18.129999999999995, 'profit_loss_pct': 1.8522680833673884, 'qty': 9031.0, 'sell_date': datetime.datetime(2025, 11, 21, 18, 4, 31, 15436, tzinfo=datetime.timezone.utc), 'sell_price': 0.33, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 996.93, 'ticker': 'NVNO'}, 'NVVE': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 20, 331076, tzinfo=datetime.timezone.utc), 'buy_price': 0.26, 'buy_reason': 'recommend', 'buy_total': 2996.93, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -397.39999999999964, 'profit_loss_pct': -13.26023630848901, 'qty': 11322.0, 'sell_date': datetime.datetime(2025, 11, 21, 17, 17, 53, 516772, tzinfo=datetime.timezone.utc), 'sell_price': 0.23, 'sell_reason': 'stop-loss', 'sell_total': 2599.53, 'ticker': 'NVVE'}, 'PBM': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 20, 545101, tzinfo=datetime.timezone.utc), 'buy_price': 1.56, 'buy_reason': 'recommend', 'buy_total': 10.92, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 0.34999999999999964, 'profit_loss_pct': 3.205128205128202, 'qty': 1896.0, 'sell_date': datetime.datetime(2025, 11, 21, 14, 31, 57, 512293, tzinfo=datetime.timezone.utc), 'sell_price': 1.61, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 11.27, 'ticker': 'PBM'}, 'SLDP': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 42489, tzinfo=datetime.timezone.utc), 'buy_price': 5.04, 'buy_reason': 'recommend', 'buy_total': 2963.52, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 23.519999999999982, 'profit_loss_pct': 0.793650793650793, 'qty': 588.0, 'sell_date': datetime.datetime(2025, 11, 25, 17, 59, 48, 293036, tzinfo=datetime.timezone.utc), 'sell_price': 5.08, 'sell_reason': 'hold_dt expired', 'sell_total': 2987.04, 'ticker': 'SLDP'}}, 627: {'AGL': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 25, 532349, tzinfo=datetime.timezone.utc), 'buy_price': 0.62, 'buy_reason': 'recommend', 'buy_total': 2407.86, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 94.00999999999976, 'profit_loss_pct': 3.9042967614396087, 'qty': 4370.0, 'sell_date': datetime.datetime(2025, 11, 24, 15, 10, 44, 591150, tzinfo=datetime.timezone.utc), 'sell_price': 0.64, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2501.87, 'ticker': 'AGL'}, 'BB': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 27, 540158, tzinfo=datetime.timezone.utc), 'buy_price': 4.2, 'buy_reason': 'recommend', 'buy_total': 2142.0, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -71.40000000000009, 'profit_loss_pct': -3.3333333333333375, 'qty': 604.0, 'sell_date': datetime.datetime(2025, 12, 2, 20, 46, 0, 488804, tzinfo=datetime.timezone.utc), 'sell_price': 4.06, 'sell_reason': 'hold_dt expired', 'sell_total': 2070.6, 'ticker': 'BB'}, 'CLOV': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 26, 438227, tzinfo=datetime.timezone.utc), 'buy_price': 2.31, 'buy_reason': 'recommend', 'buy_total': 1314.39, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 45.51999999999998, 'profit_loss_pct': 3.463203463203462, 'qty': 1166.0, 'sell_date': datetime.datetime(2025, 11, 24, 14, 32, 3, 431219, tzinfo=datetime.timezone.utc), 'sell_price': 2.39, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1359.91, 'ticker': 'CLOV'}, 'FIGS': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 25, 775541, tzinfo=datetime.timezone.utc), 'buy_price': 9.67, 'buy_reason': 'recommend', 'buy_total': 502.84, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 6.760000000000048, 'profit_loss_pct': 1.3443640124095235, 'qty': 264.0, 'sell_date': datetime.datetime(2025, 11, 28, 17, 38, 40, 775631, tzinfo=datetime.timezone.utc), 'sell_price': 9.8, 'sell_reason': 'hold_dt expired', 'sell_total': 509.6, 'ticker': 'FIGS'}, 'OPAD': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 26, 878798, tzinfo=datetime.timezone.utc), 'buy_price': 1.9, 'buy_reason': 'recommend', 'buy_total': 855.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 27.0, 'profit_loss_pct': 3.1578947368421053, 'qty': 1397.0, 'sell_date': datetime.datetime(2025, 11, 25, 14, 31, 40, 461044, tzinfo=datetime.timezone.utc), 'sell_price': 1.96, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 882.0, 'ticker': 'OPAD'}, 'SKIN': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 25, 995956, tzinfo=datetime.timezone.utc), 'buy_price': 1.33, 'buy_reason': 'recommend', 'buy_total': 2366.07, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 195.69000000000005, 'profit_loss_pct': 8.270676691729326, 'qty': 1822.0, 'sell_date': datetime.datetime(2025, 11, 26, 16, 48, 7, 954917, tzinfo=datetime.timezone.utc), 'sell_price': 1.44, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2561.76, 'ticker': 'SKIN'}}, 628: {'ACB': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 19, 465792, tzinfo=datetime.timezone.utc), 'buy_price': 4.38, 'buy_reason': 'recommend', 'buy_total': 2641.14, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 90.45000000000027, 'profit_loss_pct': 3.4246575342465855, 'qty': 603.0, 'sell_date': datetime.datetime(2025, 11, 26, 16, 29, 53, 893780, tzinfo=datetime.timezone.utc), 'sell_price': 4.53, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2731.59, 'ticker': 'ACB'}, 'BLNK': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 19, 258785, tzinfo=datetime.timezone.utc), 'buy_price': 1.31, 'buy_reason': 'recommend', 'buy_total': 1700.38, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -64.90000000000009, 'profit_loss_pct': -3.816793893129776, 'qty': 2054.0, 'sell_date': datetime.datetime(2025, 12, 1, 20, 45, 31, 996842, tzinfo=datetime.timezone.utc), 'sell_price': 1.26, 'sell_reason': 'hold_dt expired', 'sell_total': 1635.48, 'ticker': 'BLNK'}, 'BTCS': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 18, 839809, tzinfo=datetime.timezone.utc), 'buy_price': 3.1, 'buy_reason': 'recommend', 'buy_total': 279.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 10.800000000000011, 'profit_loss_pct': 3.8709677419354884, 'qty': 867.0, 'sell_date': datetime.datetime(2025, 11, 28, 14, 32, 1, 959345, tzinfo=datetime.timezone.utc), 'sell_price': 3.22, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 289.8, 'ticker': 'BTCS'}, 'GEVO': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 18, 215129, tzinfo=datetime.timezone.utc), 'buy_price': 2.03, 'buy_reason': 'recommend', 'buy_total': 2807.49, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 110.64000000000033, 'profit_loss_pct': 3.9408866995074012, 'qty': 1383.0, 'sell_date': datetime.datetime(2025, 11, 28, 15, 48, 5, 333577, tzinfo=datetime.timezone.utc), 'sell_price': 2.11, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2918.13, 'ticker': 'GEVO'}, 'RZLV': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 19, 674730, tzinfo=datetime.timezone.utc), 'buy_price': 3.12, 'buy_reason': 'recommend', 'buy_total': 2648.88, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -297.1500000000001, 'profit_loss_pct': -11.21794871794872, 'qty': 849.0, 'sell_date': datetime.datetime(2025, 12, 1, 19, 41, 44, 121349, tzinfo=datetime.timezone.utc), 'sell_price': 2.77, 'sell_reason': 'stop-loss', 'sell_total': 2351.73, 'ticker': 'RZLV'}, 'WULF': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 17, 571143, tzinfo=datetime.timezone.utc), 'buy_price': 12.42, 'buy_reason': 'recommend', 'buy_total': 2857.6, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 268.0999999999999, 'profit_loss_pct': 9.381998880179168, 'qty': 230.0, 'sell_date': datetime.datetime(2025, 11, 25, 14, 41, 50, 533040, tzinfo=datetime.timezone.utc), 'sell_price': 13.59, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 3125.7, 'ticker': 'WULF'}}, 630: {'ACHV': {'buy_date': datetime.datetime(2025, 11, 26, 11, 50, 42, 861143, tzinfo=datetime.timezone.utc), 'buy_price': 4.59, 'buy_reason': 'recommend', 'buy_total': 656.37, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 41.47000000000003, 'profit_loss_pct': 6.3180827886710285, 'qty': 835.0, 'sell_date': datetime.datetime(2025, 11, 26, 14, 32, 12, 212225, tzinfo=datetime.timezone.utc), 'sell_price': 4.88, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 697.84, 'ticker': 'ACHV'}, 'PALI': {'buy_date': datetime.datetime(2025, 11, 26, 11, 50, 41, 722199, tzinfo=datetime.timezone.utc), 'buy_price': 2.17, 'buy_reason': 'recommend', 'buy_total': 1453.9, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -180.9000000000001, 'profit_loss_pct': -12.44239631336406, 'qty': 1937.0, 'sell_date': datetime.datetime(2025, 12, 1, 16, 11, 50, 943576, tzinfo=datetime.timezone.utc), 'sell_price': 1.9, 'sell_reason': 'stop-loss', 'sell_total': 1273.0, 'ticker': 'PALI'}}, 632: {'AVDL': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 23, 690983, tzinfo=datetime.timezone.utc), 'buy_price': 21.47, 'buy_reason': 'recommend', 'buy_total': 2726.69, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -13.970000000000255, 'profit_loss_pct': -0.5123428039124454, 'qty': 127.0, 'sell_date': datetime.datetime(2025, 12, 2, 20, 46, 0, 629378, tzinfo=datetime.timezone.utc), 'sell_price': 21.36, 'sell_reason': 'hold_dt expired', 'sell_total': 2712.72, 'ticker': 'AVDL'}, 'IRWD': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 21, 574652, tzinfo=datetime.timezone.utc), 'buy_price': 3.83, 'buy_reason': 'recommend', 'buy_total': 2420.56, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -208.55999999999995, 'profit_loss_pct': -8.616187989556133, 'qty': 782.0, 'sell_date': datetime.datetime(2025, 12, 2, 19, 37, 11, 303291, tzinfo=datetime.timezone.utc), 'sell_price': 3.5, 'sell_reason': 'hold_dt expired', 'sell_total': 2212.0, 'ticker': 'IRWD'}, 'MBRX': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 23, 479749, tzinfo=datetime.timezone.utc), 'buy_price': 0.27, 'buy_reason': 'recommend', 'buy_total': 2631.31, 'css_class': 'uk-label-gaining', 'current_price': 7.71, 'profit_loss': 7.4399999999999995, 'profit_loss_pct': 2755.555555555555, 'qty': 10382.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'MBRX'}, 'YYAI': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 22, 218880, tzinfo=datetime.timezone.utc), 'buy_price': 1.08, 'buy_reason': 'recommend', 'buy_total': 2774.52, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -328.8299999999999, 'profit_loss_pct': -11.8517797673111, 'qty': 2569.0, 'sell_date': datetime.datetime(2025, 12, 1, 15, 34, 19, 416045, tzinfo=datetime.timezone.utc), 'sell_price': 0.95, 'sell_reason': 'stop-loss', 'sell_total': 2445.69, 'ticker': 'YYAI'}}, 635: {'COMP': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 7, 681373, tzinfo=datetime.timezone.utc), 'buy_price': 10.22, 'buy_reason': 'recommend', 'buy_total': 2994.46, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 96.69000000000005, 'profit_loss_pct': 3.228962818003916, 'qty': 293.0, 'sell_date': datetime.datetime(2025, 12, 1, 20, 13, 11, 234345, tzinfo=datetime.timezone.utc), 'sell_price': 10.55, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 3091.15, 'ticker': 'COMP'}, 'EDIT': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 7, 895448, tzinfo=datetime.timezone.utc), 'buy_price': 2.36, 'buy_reason': 'recommend', 'buy_total': 972.32, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -103.0, 'profit_loss_pct': -10.59322033898305, 'qty': 1270.0, 'sell_date': datetime.datetime(2025, 12, 2, 17, 13, 9, 670952, tzinfo=datetime.timezone.utc), 'sell_price': 2.11, 'sell_reason': 'stop-loss', 'sell_total': 869.32, 'ticker': 'EDIT'}, 'NVTS': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 7, 48264, tzinfo=datetime.timezone.utc), 'buy_price': 8.45, 'buy_reason': 'recommend', 'buy_total': 2332.2, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 33.120000000000346, 'profit_loss_pct': 1.420118343195281, 'qty': 367.0, 'sell_date': datetime.datetime(2025, 12, 3, 18, 55, 13, 980374, tzinfo=datetime.timezone.utc), 'sell_price': 8.57, 'sell_reason': 'hold_dt expired', 'sell_total': 2365.32, 'ticker': 'NVTS'}, 'ONDS': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 8, 564772, tzinfo=datetime.timezone.utc), 'buy_price': 7.96, 'buy_reason': 'recommend', 'buy_total': 1727.32, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 60.75999999999999, 'profit_loss_pct': 3.5175879396984917, 'qty': 363.0, 'sell_date': datetime.datetime(2025, 12, 2, 15, 20, 27, 589653, tzinfo=datetime.timezone.utc), 'sell_price': 8.24, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1788.08, 'ticker': 'ONDS'}}, 636: {'CMND': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 127982, tzinfo=datetime.timezone.utc), 'buy_price': 0.13, 'buy_reason': 'recommend', 'buy_total': 2658.52, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 40.039999999999964, 'profit_loss_pct': 1.5061011389795813, 'qty': 20019.0, 'sell_date': datetime.datetime(2025, 12, 2, 17, 9, 6, 43859, tzinfo=datetime.timezone.utc), 'sell_price': 0.13, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2698.56, 'ticker': 'CMND'}, 'DRCT': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 54, 647092, tzinfo=datetime.timezone.utc), 'buy_price': 0.11, 'buy_reason': 'recommend', 'buy_total': 967.88, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -170.96000000000004, 'profit_loss_pct': -17.663346695871393, 'qty': 23461.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 12, 8, 676995, tzinfo=datetime.timezone.utc), 'sell_price': 0.09, 'sell_reason': 'stop-loss', 'sell_total': 796.92, 'ticker': 'DRCT'}, 'GPUS': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 55, 290523, tzinfo=datetime.timezone.utc), 'buy_price': 0.3, 'buy_reason': 'recommend', 'buy_total': 2887.37, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -90.52999999999975, 'profit_loss_pct': -3.135379255169921, 'qty': 9631.0, 'sell_date': datetime.datetime(2025, 12, 4, 19, 41, 2, 227311, tzinfo=datetime.timezone.utc), 'sell_price': 0.29, 'sell_reason': 'hold_dt expired', 'sell_total': 2796.84, 'ticker': 'GPUS'}, 'INHD': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 761055, tzinfo=datetime.timezone.utc), 'buy_price': 0.16, 'buy_reason': 'recommend', 'buy_total': 1738.68, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -265.8100000000002, 'profit_loss_pct': -15.288034600961659, 'qty': 15207.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 34, 41, 489513, tzinfo=datetime.timezone.utc), 'sell_price': 0.14, 'sell_reason': 'stop-loss', 'sell_total': 1472.87, 'ticker': 'INHD'}, 'IRBT': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 54, 867198, tzinfo=datetime.timezone.utc), 'buy_price': 1.62, 'buy_reason': 'recommend', 'buy_total': 1498.5, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 55.5, 'profit_loss_pct': 3.7037037037037033, 'qty': 1665.0, 'sell_date': datetime.datetime(2025, 12, 2, 14, 31, 33, 495866, tzinfo=datetime.timezone.utc), 'sell_price': 1.68, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1554.0, 'ticker': 'IRBT'}, 'METC': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 967363, tzinfo=datetime.timezone.utc), 'buy_price': 15.24, 'buy_reason': 'recommend', 'buy_total': 2042.16, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 80.39999999999986, 'profit_loss_pct': 3.937007874015741, 'qty': 157.0, 'sell_date': datetime.datetime(2025, 12, 2, 14, 37, 40, 899647, tzinfo=datetime.timezone.utc), 'sell_price': 15.84, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2122.56, 'ticker': 'METC'}, 'MSAI': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 340358, tzinfo=datetime.timezone.utc), 'buy_price': 0.55, 'buy_reason': 'recommend', 'buy_total': 1869.32, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 103.01999999999998, 'profit_loss_pct': 5.511094943615859, 'qty': 4511.0, 'sell_date': datetime.datetime(2025, 12, 2, 15, 12, 19, 33365, tzinfo=datetime.timezone.utc), 'sell_price': 0.58, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1972.34, 'ticker': 'MSAI'}, 'PACB': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 55, 508048, tzinfo=datetime.timezone.utc), 'buy_price': 2.24, 'buy_reason': 'recommend', 'buy_total': 1191.68, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 37.24000000000001, 'profit_loss_pct': 3.125000000000001, 'qty': 1143.0, 'sell_date': datetime.datetime(2025, 12, 2, 15, 15, 22, 402922, tzinfo=datetime.timezone.utc), 'sell_price': 2.31, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1228.92, 'ticker': 'PACB'}, 'RZLV': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 55, 718791, tzinfo=datetime.timezone.utc), 'buy_price': 2.81, 'buy_reason': 'recommend', 'buy_total': 511.42, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -60.06, 'profit_loss_pct': -11.743772241992882, 'qty': 938.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 33, 41, 125015, tzinfo=datetime.timezone.utc), 'sell_price': 2.48, 'sell_reason': 'stop-loss', 'sell_total': 451.36, 'ticker': 'RZLV'}, 'WTI': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 551982, tzinfo=datetime.timezone.utc), 'buy_price': 1.7, 'buy_reason': 'recommend', 'buy_total': 731.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 47.299999999999955, 'profit_loss_pct': 6.4705882352941115, 'qty': 1397.0, 'sell_date': datetime.datetime(2025, 12, 4, 16, 35, 18, 918746, tzinfo=datetime.timezone.utc), 'sell_price': 1.81, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 778.3, 'ticker': 'WTI'}}, 639: {'AMRX': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 16, 673053, tzinfo=datetime.timezone.utc), 'buy_price': 12.15, 'buy_reason': 'recommend', 'buy_total': 5965.65, 'css_class': 'uk-label-losing', 'current_price': 11.83, 'profit_loss': -0.3200000000000003, 'profit_loss_pct': -2.6337448559670804, 'qty': 491.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'AMRX'}, 'APLT': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 19507, tzinfo=datetime.timezone.utc), 'buy_price': 0.21, 'buy_reason': 'recommend', 'buy_total': 843.57, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 19.3599999999999, 'profit_loss_pct': 2.295008120250827, 'qty': 14831.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 43, 19, 992220, tzinfo=datetime.timezone.utc), 'sell_price': 0.22, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 862.93, 'ticker': 'APLT'}, 'ASPI': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 17, 98435, tzinfo=datetime.timezone.utc), 'buy_price': 5.38, 'buy_reason': 'recommend', 'buy_total': 5794.26, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 344.6399999999994, 'profit_loss_pct': 5.947955390334562, 'qty': 1077.0, 'sell_date': datetime.datetime(2025, 12, 3, 20, 46, 55, 405923, tzinfo=datetime.timezone.utc), 'sell_price': 5.7, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 6138.9, 'ticker': 'ASPI'}, 'ASST': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 249381, tzinfo=datetime.timezone.utc), 'buy_price': 1.05, 'buy_reason': 'recommend', 'buy_total': 2764.65, 'css_class': 'uk-label-losing', 'current_price': 0.987, 'profit_loss': -0.06300000000000006, 'profit_loss_pct': -6.000000000000005, 'qty': 2713.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'ASST'}, 'ATYR': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 296997, tzinfo=datetime.timezone.utc), 'buy_price': 0.71, 'buy_reason': 'recommend', 'buy_total': 2142.71, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 350.71000000000004, 'profit_loss_pct': 16.367590574552786, 'qty': 3616.0, 'sell_date': datetime.datetime(2025, 12, 4, 20, 46, 51, 107327, tzinfo=datetime.timezone.utc), 'sell_price': 0.82, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2493.42, 'ticker': 'ATYR'}, 'BNAI': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 16, 463159, tzinfo=datetime.timezone.utc), 'buy_price': 0.33, 'buy_reason': 'recommend', 'buy_total': 6249.96, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -1146.1800000000003, 'profit_loss_pct': -18.338997369583172, 'qty': 18945.0, 'sell_date': datetime.datetime(2025, 12, 4, 15, 26, 11, 578220, tzinfo=datetime.timezone.utc), 'sell_price': 0.27, 'sell_reason': 'stop-loss', 'sell_total': 5103.78, 'ticker': 'BNAI'}, 'CHGG': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 483289, tzinfo=datetime.timezone.utc), 'buy_price': 0.95, 'buy_reason': 'recommend', 'buy_total': 2912.45, 'css_class': 'uk-label-losing', 'current_price': 0.8985, 'profit_loss': -0.05149999999999999, 'profit_loss_pct': -5.421052631578947, 'qty': 3068.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'CHGG'}, 'CODX': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 36, 155921, tzinfo=datetime.timezone.utc), 'buy_price': 0.36, 'buy_reason': 'recommend', 'buy_total': 684.48, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 19.949999999999932, 'profit_loss_pct': 2.9146213183730616, 'qty': 7587.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 49, 27, 753635, tzinfo=datetime.timezone.utc), 'sell_price': 0.37, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 704.43, 'ticker': 'CODX'}, 'DFLI': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 506258, tzinfo=datetime.timezone.utc), 'buy_price': 0.7, 'buy_reason': 'recommend', 'buy_total': 13.98, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 0.5199999999999996, 'profit_loss_pct': 3.7195994277539306, 'qty': 3606.0, 'sell_date': datetime.datetime(2025, 12, 3, 14, 58, 50, 998949, tzinfo=datetime.timezone.utc), 'sell_price': 0.73, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 14.5, 'ticker': 'DFLI'}, 'EVGO': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 705308, tzinfo=datetime.timezone.utc), 'buy_price': 3.15, 'buy_reason': 'recommend', 'buy_total': 2835.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 216.0, 'profit_loss_pct': 7.6190476190476195, 'qty': 900.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 54, 38, 906532, tzinfo=datetime.timezone.utc), 'sell_price': 3.39, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 3051.0, 'ticker': 'EVGO'}, 'KURA': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 719758, tzinfo=datetime.timezone.utc), 'buy_price': 11.49, 'buy_reason': 'recommend', 'buy_total': 1562.64, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 51.679999999999836, 'profit_loss_pct': 3.30722367275891, 'qty': 232.0, 'sell_date': datetime.datetime(2025, 12, 3, 14, 35, 18, 596065, tzinfo=datetime.timezone.utc), 'sell_price': 11.87, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1614.32, 'ticker': 'KURA'}, 'PDSB': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 16, 887969, tzinfo=datetime.timezone.utc), 'buy_price': 0.79, 'buy_reason': 'recommend', 'buy_total': 5947.12, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 227.35000000000036, 'profit_loss_pct': 3.822858795517837, 'qty': 7528.0, 'sell_date': datetime.datetime(2025, 12, 3, 17, 58, 8, 755181, tzinfo=datetime.timezone.utc), 'sell_price': 0.82, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 6174.47, 'ticker': 'PDSB'}, 'SGBX': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 53849, tzinfo=datetime.timezone.utc), 'buy_price': 3.05, 'buy_reason': 'recommend', 'buy_total': 2565.05, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 84.09999999999991, 'profit_loss_pct': 3.27868852459016, 'qty': 842.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 36, 43, 864040, tzinfo=datetime.timezone.utc), 'sell_price': 3.15, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2649.15, 'ticker': 'SGBX'}}, 640: {'COSM': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 23, 330294, tzinfo=datetime.timezone.utc), 'buy_price': 0.5, 'buy_reason': 'recommend', 'buy_total': 2353.78, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 79.7199999999998, 'profit_loss_pct': 3.3868925727977888, 'qty': 4717.0, 'sell_date': datetime.datetime(2025, 12, 4, 19, 23, 47, 960501, tzinfo=datetime.timezone.utc), 'sell_price': 0.52, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2433.5, 'ticker': 'COSM'}, 'HUMA': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 484476, tzinfo=datetime.timezone.utc), 'buy_price': 1.28, 'buy_reason': 'recommend', 'buy_total': 321.28, 'css_class': 'uk-label-gaining', 'current_price': 1.3, 'profit_loss': 0.020000000000000018, 'profit_loss_pct': 1.5625000000000013, 'qty': 1856.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'HUMA'}, 'IMNM': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 23, 118346, tzinfo=datetime.timezone.utc), 'buy_price': 19.29, 'buy_reason': 'recommend', 'buy_total': 2372.67, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 88.55999999999995, 'profit_loss_pct': 3.732503888024881, 'qty': 123.0, 'sell_date': datetime.datetime(2025, 12, 4, 16, 1, 46, 753544, tzinfo=datetime.timezone.utc), 'sell_price': 20.01, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2461.23, 'ticker': 'IMNM'}, 'NB': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 275021, tzinfo=datetime.timezone.utc), 'buy_price': 5.97, 'buy_reason': 'recommend', 'buy_total': 1414.89, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 68.72999999999979, 'profit_loss_pct': 4.857621440535998, 'qty': 400.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 31, 55, 74801, tzinfo=datetime.timezone.utc), 'sell_price': 6.26, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1483.62, 'ticker': 'NB'}, 'OVID': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 21, 853553, tzinfo=datetime.timezone.utc), 'buy_price': 1.56, 'buy_reason': 'recommend', 'buy_total': 494.52, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 19.019999999999982, 'profit_loss_pct': 3.8461538461538427, 'qty': 1563.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 57, 42, 491668, tzinfo=datetime.timezone.utc), 'sell_price': 1.62, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 513.54, 'ticker': 'OVID'}, 'PLG': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 694605, tzinfo=datetime.timezone.utc), 'buy_price': 2.41, 'buy_reason': 'recommend', 'buy_total': 2258.17, 'css_class': 'uk-label-losing', 'current_price': 2.39, 'profit_loss': -0.020000000000000018, 'profit_loss_pct': -0.8298755186721999, 'qty': 937.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'PLG'}, 'REAL': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 64339, tzinfo=datetime.timezone.utc), 'buy_price': 14.25, 'buy_reason': 'recommend', 'buy_total': 2465.25, 'css_class': 'uk-label-losing', 'current_price': 14.21, 'profit_loss': -0.03999999999999915, 'profit_loss_pct': -0.28070175438595896, 'qty': 173.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'REAL'}}}, 'panel': 'picklist', 'picklist_results': '<<queryset of core.TradeBasketPick>>', 'trade_baskets': '<<queryset of core.TradeBasket>>', 'trade_bot': <TradeBot: 1.0.0 Binned Random Forrest 3d PH 3%>}
components/leftnav.html
/mnt/disks/pennyloupe_disk/pennyloupe/templates/components/leftnav.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: ' "'U5QfSjol0dsbp7hGH6GmiL7qTHaQTc02R3Z3IlCc6eKeKzwJ5D9WiejNwal8xl33'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/trade/bot/54?date_pick=2025-11-21&panel=picklist'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f3fb5692480>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f3fb5692480>>'} {'buy_filter': {'rsi_2d__lte': 50, 'volume__gte': 1000000}, 'date_from': datetime.date(2025, 11, 21), 'date_pick': datetime.date(2025, 11, 21), 'date_to': datetime.date(2025, 12, 5), 'matching_results': [<ModelPick: 2025-11-21: WOOF (0.604)>, <ModelPick: 2025-11-21: NVNO (0.602)>, <ModelPick: 2025-11-21: UAMY (0.598)>, <ModelPick: 2025-11-21: SLDP (0.596)>, <ModelPick: 2025-11-21: EBS (0.594)>, <ModelPick: 2025-11-21: XRX (0.592)>, <ModelPick: 2025-11-21: ARRY (0.59)>, <ModelPick: 2025-11-21: CTM (0.59)>, <ModelPick: 2025-11-21: ACDC (0.584)>, <ModelPick: 2025-11-21: ATAI (0.58)>, <ModelPick: 2025-11-21: NVVE (0.572)>, <ModelPick: 2025-11-21: PBM (0.572)>, <ModelPick: 2025-11-21: UNIT (0.572)>, <ModelPick: 2025-11-21: YYAI (0.572)>, <ModelPick: 2025-11-21: IRBT (0.566)>, <ModelPick: 2025-11-21: TLRY (0.566)>, <ModelPick: 2025-11-21: AUID (0.562)>, <ModelPick: 2025-11-21: RANI (0.56)>, <ModelPick: 2025-11-21: SNDX (0.558)>, <ModelPick: 2025-11-21: ATYR (0.552)>, <ModelPick: 2025-11-21: SCYX (0.55)>, <ModelPick: 2025-11-21: TOVX (0.55)>, <ModelPick: 2025-11-21: ACHV (0.548)>, <ModelPick: 2025-11-21: RC (0.548)>, <ModelPick: 2025-11-21: HOTH (0.546)>, <ModelPick: 2025-11-21: SES (0.546)>, <ModelPick: 2025-11-21: VZLA (0.544)>, <ModelPick: 2025-11-21: DAWN (0.542)>, <ModelPick: 2025-11-21: SABR (0.54)>, <ModelPick: 2025-11-21: SGD (0.54)>, <ModelPick: 2025-11-21: QSI (0.532)>, <ModelPick: 2025-11-21: HOLO (0.53)>, <ModelPick: 2025-11-21: PTON (0.518)>, <ModelPick: 2025-11-21: GANX (0.51)>, <ModelPick: 2025-11-21: CGEM (0.502)>, <ModelPick: 2025-11-21: MFA (0.488)>], 'order_pairs': {626: {'ACDC': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 902931, tzinfo=datetime.timezone.utc), 'buy_price': 3.33, 'buy_reason': 'recommend', 'buy_total': 2823.84, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -8.480000000000018, 'profit_loss_pct': -0.30030030030030097, 'qty': 848.0, 'sell_date': datetime.datetime(2025, 11, 25, 20, 45, 17, 26866, tzinfo=datetime.timezone.utc), 'sell_price': 3.32, 'sell_reason': 'hold_dt expired', 'sell_total': 2815.36, 'ticker': 'ACDC'}, 'ARRY': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 473964, tzinfo=datetime.timezone.utc), 'buy_price': 6.71, 'buy_reason': 'recommend', 'buy_total': 375.76, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 20.160000000000025, 'profit_loss_pct': 5.365126676602093, 'qty': 417.0, 'sell_date': datetime.datetime(2025, 11, 21, 15, 32, 8, 539060, tzinfo=datetime.timezone.utc), 'sell_price': 7.07, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 395.92, 'ticker': 'ARRY'}, 'ATAI': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 20, 116898, tzinfo=datetime.timezone.utc), 'buy_price': 3.66, 'buy_reason': 'recommend', 'buy_total': 2803.56, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 91.92000000000007, 'profit_loss_pct': 3.2786885245901667, 'qty': 766.0, 'sell_date': datetime.datetime(2025, 11, 21, 18, 3, 30, 71736, tzinfo=datetime.timezone.utc), 'sell_price': 3.78, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2895.48, 'ticker': 'ATAI'}, 'CTM': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 687591, tzinfo=datetime.timezone.utc), 'buy_price': 1.02, 'buy_reason': 'recommend', 'buy_total': 2027.76, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 0.0, 'profit_loss_pct': 0.0, 'qty': 2799.0, 'sell_date': datetime.datetime(2025, 11, 25, 20, 45, 16, 876312, tzinfo=datetime.timezone.utc), 'sell_price': 1.02, 'sell_reason': 'hold_dt expired', 'sell_total': 2027.76, 'ticker': 'CTM'}, 'EBS': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 258527, tzinfo=datetime.timezone.utc), 'buy_price': 9.13, 'buy_reason': 'recommend', 'buy_total': 1734.7, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 345.22, 'profit_loss_pct': 19.900847408773853, 'qty': 282.0, 'sell_date': datetime.datetime(2025, 12, 1, 14, 32, 22, 290536, tzinfo=datetime.timezone.utc), 'sell_price': 10.95, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2079.92, 'ticker': 'EBS'}, 'NVNO': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 18, 613370, tzinfo=datetime.timezone.utc), 'buy_price': 0.32, 'buy_reason': 'recommend', 'buy_total': 978.8, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 18.129999999999995, 'profit_loss_pct': 1.8522680833673884, 'qty': 9031.0, 'sell_date': datetime.datetime(2025, 11, 21, 18, 4, 31, 15436, tzinfo=datetime.timezone.utc), 'sell_price': 0.33, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 996.93, 'ticker': 'NVNO'}, 'NVVE': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 20, 331076, tzinfo=datetime.timezone.utc), 'buy_price': 0.26, 'buy_reason': 'recommend', 'buy_total': 2996.93, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -397.39999999999964, 'profit_loss_pct': -13.26023630848901, 'qty': 11322.0, 'sell_date': datetime.datetime(2025, 11, 21, 17, 17, 53, 516772, tzinfo=datetime.timezone.utc), 'sell_price': 0.23, 'sell_reason': 'stop-loss', 'sell_total': 2599.53, 'ticker': 'NVVE'}, 'PBM': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 20, 545101, tzinfo=datetime.timezone.utc), 'buy_price': 1.56, 'buy_reason': 'recommend', 'buy_total': 10.92, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 0.34999999999999964, 'profit_loss_pct': 3.205128205128202, 'qty': 1896.0, 'sell_date': datetime.datetime(2025, 11, 21, 14, 31, 57, 512293, tzinfo=datetime.timezone.utc), 'sell_price': 1.61, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 11.27, 'ticker': 'PBM'}, 'SLDP': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 42489, tzinfo=datetime.timezone.utc), 'buy_price': 5.04, 'buy_reason': 'recommend', 'buy_total': 2963.52, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 23.519999999999982, 'profit_loss_pct': 0.793650793650793, 'qty': 588.0, 'sell_date': datetime.datetime(2025, 11, 25, 17, 59, 48, 293036, tzinfo=datetime.timezone.utc), 'sell_price': 5.08, 'sell_reason': 'hold_dt expired', 'sell_total': 2987.04, 'ticker': 'SLDP'}}, 627: {'AGL': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 25, 532349, tzinfo=datetime.timezone.utc), 'buy_price': 0.62, 'buy_reason': 'recommend', 'buy_total': 2407.86, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 94.00999999999976, 'profit_loss_pct': 3.9042967614396087, 'qty': 4370.0, 'sell_date': datetime.datetime(2025, 11, 24, 15, 10, 44, 591150, tzinfo=datetime.timezone.utc), 'sell_price': 0.64, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2501.87, 'ticker': 'AGL'}, 'BB': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 27, 540158, tzinfo=datetime.timezone.utc), 'buy_price': 4.2, 'buy_reason': 'recommend', 'buy_total': 2142.0, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -71.40000000000009, 'profit_loss_pct': -3.3333333333333375, 'qty': 604.0, 'sell_date': datetime.datetime(2025, 12, 2, 20, 46, 0, 488804, tzinfo=datetime.timezone.utc), 'sell_price': 4.06, 'sell_reason': 'hold_dt expired', 'sell_total': 2070.6, 'ticker': 'BB'}, 'CLOV': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 26, 438227, tzinfo=datetime.timezone.utc), 'buy_price': 2.31, 'buy_reason': 'recommend', 'buy_total': 1314.39, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 45.51999999999998, 'profit_loss_pct': 3.463203463203462, 'qty': 1166.0, 'sell_date': datetime.datetime(2025, 11, 24, 14, 32, 3, 431219, tzinfo=datetime.timezone.utc), 'sell_price': 2.39, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1359.91, 'ticker': 'CLOV'}, 'FIGS': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 25, 775541, tzinfo=datetime.timezone.utc), 'buy_price': 9.67, 'buy_reason': 'recommend', 'buy_total': 502.84, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 6.760000000000048, 'profit_loss_pct': 1.3443640124095235, 'qty': 264.0, 'sell_date': datetime.datetime(2025, 11, 28, 17, 38, 40, 775631, tzinfo=datetime.timezone.utc), 'sell_price': 9.8, 'sell_reason': 'hold_dt expired', 'sell_total': 509.6, 'ticker': 'FIGS'}, 'OPAD': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 26, 878798, tzinfo=datetime.timezone.utc), 'buy_price': 1.9, 'buy_reason': 'recommend', 'buy_total': 855.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 27.0, 'profit_loss_pct': 3.1578947368421053, 'qty': 1397.0, 'sell_date': datetime.datetime(2025, 11, 25, 14, 31, 40, 461044, tzinfo=datetime.timezone.utc), 'sell_price': 1.96, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 882.0, 'ticker': 'OPAD'}, 'SKIN': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 25, 995956, tzinfo=datetime.timezone.utc), 'buy_price': 1.33, 'buy_reason': 'recommend', 'buy_total': 2366.07, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 195.69000000000005, 'profit_loss_pct': 8.270676691729326, 'qty': 1822.0, 'sell_date': datetime.datetime(2025, 11, 26, 16, 48, 7, 954917, tzinfo=datetime.timezone.utc), 'sell_price': 1.44, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2561.76, 'ticker': 'SKIN'}}, 628: {'ACB': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 19, 465792, tzinfo=datetime.timezone.utc), 'buy_price': 4.38, 'buy_reason': 'recommend', 'buy_total': 2641.14, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 90.45000000000027, 'profit_loss_pct': 3.4246575342465855, 'qty': 603.0, 'sell_date': datetime.datetime(2025, 11, 26, 16, 29, 53, 893780, tzinfo=datetime.timezone.utc), 'sell_price': 4.53, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2731.59, 'ticker': 'ACB'}, 'BLNK': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 19, 258785, tzinfo=datetime.timezone.utc), 'buy_price': 1.31, 'buy_reason': 'recommend', 'buy_total': 1700.38, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -64.90000000000009, 'profit_loss_pct': -3.816793893129776, 'qty': 2054.0, 'sell_date': datetime.datetime(2025, 12, 1, 20, 45, 31, 996842, tzinfo=datetime.timezone.utc), 'sell_price': 1.26, 'sell_reason': 'hold_dt expired', 'sell_total': 1635.48, 'ticker': 'BLNK'}, 'BTCS': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 18, 839809, tzinfo=datetime.timezone.utc), 'buy_price': 3.1, 'buy_reason': 'recommend', 'buy_total': 279.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 10.800000000000011, 'profit_loss_pct': 3.8709677419354884, 'qty': 867.0, 'sell_date': datetime.datetime(2025, 11, 28, 14, 32, 1, 959345, tzinfo=datetime.timezone.utc), 'sell_price': 3.22, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 289.8, 'ticker': 'BTCS'}, 'GEVO': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 18, 215129, tzinfo=datetime.timezone.utc), 'buy_price': 2.03, 'buy_reason': 'recommend', 'buy_total': 2807.49, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 110.64000000000033, 'profit_loss_pct': 3.9408866995074012, 'qty': 1383.0, 'sell_date': datetime.datetime(2025, 11, 28, 15, 48, 5, 333577, tzinfo=datetime.timezone.utc), 'sell_price': 2.11, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2918.13, 'ticker': 'GEVO'}, 'RZLV': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 19, 674730, tzinfo=datetime.timezone.utc), 'buy_price': 3.12, 'buy_reason': 'recommend', 'buy_total': 2648.88, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -297.1500000000001, 'profit_loss_pct': -11.21794871794872, 'qty': 849.0, 'sell_date': datetime.datetime(2025, 12, 1, 19, 41, 44, 121349, tzinfo=datetime.timezone.utc), 'sell_price': 2.77, 'sell_reason': 'stop-loss', 'sell_total': 2351.73, 'ticker': 'RZLV'}, 'WULF': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 17, 571143, tzinfo=datetime.timezone.utc), 'buy_price': 12.42, 'buy_reason': 'recommend', 'buy_total': 2857.6, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 268.0999999999999, 'profit_loss_pct': 9.381998880179168, 'qty': 230.0, 'sell_date': datetime.datetime(2025, 11, 25, 14, 41, 50, 533040, tzinfo=datetime.timezone.utc), 'sell_price': 13.59, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 3125.7, 'ticker': 'WULF'}}, 630: {'ACHV': {'buy_date': datetime.datetime(2025, 11, 26, 11, 50, 42, 861143, tzinfo=datetime.timezone.utc), 'buy_price': 4.59, 'buy_reason': 'recommend', 'buy_total': 656.37, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 41.47000000000003, 'profit_loss_pct': 6.3180827886710285, 'qty': 835.0, 'sell_date': datetime.datetime(2025, 11, 26, 14, 32, 12, 212225, tzinfo=datetime.timezone.utc), 'sell_price': 4.88, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 697.84, 'ticker': 'ACHV'}, 'PALI': {'buy_date': datetime.datetime(2025, 11, 26, 11, 50, 41, 722199, tzinfo=datetime.timezone.utc), 'buy_price': 2.17, 'buy_reason': 'recommend', 'buy_total': 1453.9, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -180.9000000000001, 'profit_loss_pct': -12.44239631336406, 'qty': 1937.0, 'sell_date': datetime.datetime(2025, 12, 1, 16, 11, 50, 943576, tzinfo=datetime.timezone.utc), 'sell_price': 1.9, 'sell_reason': 'stop-loss', 'sell_total': 1273.0, 'ticker': 'PALI'}}, 632: {'AVDL': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 23, 690983, tzinfo=datetime.timezone.utc), 'buy_price': 21.47, 'buy_reason': 'recommend', 'buy_total': 2726.69, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -13.970000000000255, 'profit_loss_pct': -0.5123428039124454, 'qty': 127.0, 'sell_date': datetime.datetime(2025, 12, 2, 20, 46, 0, 629378, tzinfo=datetime.timezone.utc), 'sell_price': 21.36, 'sell_reason': 'hold_dt expired', 'sell_total': 2712.72, 'ticker': 'AVDL'}, 'IRWD': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 21, 574652, tzinfo=datetime.timezone.utc), 'buy_price': 3.83, 'buy_reason': 'recommend', 'buy_total': 2420.56, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -208.55999999999995, 'profit_loss_pct': -8.616187989556133, 'qty': 782.0, 'sell_date': datetime.datetime(2025, 12, 2, 19, 37, 11, 303291, tzinfo=datetime.timezone.utc), 'sell_price': 3.5, 'sell_reason': 'hold_dt expired', 'sell_total': 2212.0, 'ticker': 'IRWD'}, 'MBRX': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 23, 479749, tzinfo=datetime.timezone.utc), 'buy_price': 0.27, 'buy_reason': 'recommend', 'buy_total': 2631.31, 'css_class': 'uk-label-gaining', 'current_price': 7.71, 'profit_loss': 7.4399999999999995, 'profit_loss_pct': 2755.555555555555, 'qty': 10382.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'MBRX'}, 'YYAI': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 22, 218880, tzinfo=datetime.timezone.utc), 'buy_price': 1.08, 'buy_reason': 'recommend', 'buy_total': 2774.52, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -328.8299999999999, 'profit_loss_pct': -11.8517797673111, 'qty': 2569.0, 'sell_date': datetime.datetime(2025, 12, 1, 15, 34, 19, 416045, tzinfo=datetime.timezone.utc), 'sell_price': 0.95, 'sell_reason': 'stop-loss', 'sell_total': 2445.69, 'ticker': 'YYAI'}}, 635: {'COMP': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 7, 681373, tzinfo=datetime.timezone.utc), 'buy_price': 10.22, 'buy_reason': 'recommend', 'buy_total': 2994.46, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 96.69000000000005, 'profit_loss_pct': 3.228962818003916, 'qty': 293.0, 'sell_date': datetime.datetime(2025, 12, 1, 20, 13, 11, 234345, tzinfo=datetime.timezone.utc), 'sell_price': 10.55, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 3091.15, 'ticker': 'COMP'}, 'EDIT': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 7, 895448, tzinfo=datetime.timezone.utc), 'buy_price': 2.36, 'buy_reason': 'recommend', 'buy_total': 972.32, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -103.0, 'profit_loss_pct': -10.59322033898305, 'qty': 1270.0, 'sell_date': datetime.datetime(2025, 12, 2, 17, 13, 9, 670952, tzinfo=datetime.timezone.utc), 'sell_price': 2.11, 'sell_reason': 'stop-loss', 'sell_total': 869.32, 'ticker': 'EDIT'}, 'NVTS': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 7, 48264, tzinfo=datetime.timezone.utc), 'buy_price': 8.45, 'buy_reason': 'recommend', 'buy_total': 2332.2, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 33.120000000000346, 'profit_loss_pct': 1.420118343195281, 'qty': 367.0, 'sell_date': datetime.datetime(2025, 12, 3, 18, 55, 13, 980374, tzinfo=datetime.timezone.utc), 'sell_price': 8.57, 'sell_reason': 'hold_dt expired', 'sell_total': 2365.32, 'ticker': 'NVTS'}, 'ONDS': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 8, 564772, tzinfo=datetime.timezone.utc), 'buy_price': 7.96, 'buy_reason': 'recommend', 'buy_total': 1727.32, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 60.75999999999999, 'profit_loss_pct': 3.5175879396984917, 'qty': 363.0, 'sell_date': datetime.datetime(2025, 12, 2, 15, 20, 27, 589653, tzinfo=datetime.timezone.utc), 'sell_price': 8.24, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1788.08, 'ticker': 'ONDS'}}, 636: {'CMND': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 127982, tzinfo=datetime.timezone.utc), 'buy_price': 0.13, 'buy_reason': 'recommend', 'buy_total': 2658.52, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 40.039999999999964, 'profit_loss_pct': 1.5061011389795813, 'qty': 20019.0, 'sell_date': datetime.datetime(2025, 12, 2, 17, 9, 6, 43859, tzinfo=datetime.timezone.utc), 'sell_price': 0.13, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2698.56, 'ticker': 'CMND'}, 'DRCT': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 54, 647092, tzinfo=datetime.timezone.utc), 'buy_price': 0.11, 'buy_reason': 'recommend', 'buy_total': 967.88, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -170.96000000000004, 'profit_loss_pct': -17.663346695871393, 'qty': 23461.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 12, 8, 676995, tzinfo=datetime.timezone.utc), 'sell_price': 0.09, 'sell_reason': 'stop-loss', 'sell_total': 796.92, 'ticker': 'DRCT'}, 'GPUS': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 55, 290523, tzinfo=datetime.timezone.utc), 'buy_price': 0.3, 'buy_reason': 'recommend', 'buy_total': 2887.37, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -90.52999999999975, 'profit_loss_pct': -3.135379255169921, 'qty': 9631.0, 'sell_date': datetime.datetime(2025, 12, 4, 19, 41, 2, 227311, tzinfo=datetime.timezone.utc), 'sell_price': 0.29, 'sell_reason': 'hold_dt expired', 'sell_total': 2796.84, 'ticker': 'GPUS'}, 'INHD': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 761055, tzinfo=datetime.timezone.utc), 'buy_price': 0.16, 'buy_reason': 'recommend', 'buy_total': 1738.68, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -265.8100000000002, 'profit_loss_pct': -15.288034600961659, 'qty': 15207.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 34, 41, 489513, tzinfo=datetime.timezone.utc), 'sell_price': 0.14, 'sell_reason': 'stop-loss', 'sell_total': 1472.87, 'ticker': 'INHD'}, 'IRBT': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 54, 867198, tzinfo=datetime.timezone.utc), 'buy_price': 1.62, 'buy_reason': 'recommend', 'buy_total': 1498.5, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 55.5, 'profit_loss_pct': 3.7037037037037033, 'qty': 1665.0, 'sell_date': datetime.datetime(2025, 12, 2, 14, 31, 33, 495866, tzinfo=datetime.timezone.utc), 'sell_price': 1.68, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1554.0, 'ticker': 'IRBT'}, 'METC': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 967363, tzinfo=datetime.timezone.utc), 'buy_price': 15.24, 'buy_reason': 'recommend', 'buy_total': 2042.16, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 80.39999999999986, 'profit_loss_pct': 3.937007874015741, 'qty': 157.0, 'sell_date': datetime.datetime(2025, 12, 2, 14, 37, 40, 899647, tzinfo=datetime.timezone.utc), 'sell_price': 15.84, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2122.56, 'ticker': 'METC'}, 'MSAI': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 340358, tzinfo=datetime.timezone.utc), 'buy_price': 0.55, 'buy_reason': 'recommend', 'buy_total': 1869.32, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 103.01999999999998, 'profit_loss_pct': 5.511094943615859, 'qty': 4511.0, 'sell_date': datetime.datetime(2025, 12, 2, 15, 12, 19, 33365, tzinfo=datetime.timezone.utc), 'sell_price': 0.58, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1972.34, 'ticker': 'MSAI'}, 'PACB': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 55, 508048, tzinfo=datetime.timezone.utc), 'buy_price': 2.24, 'buy_reason': 'recommend', 'buy_total': 1191.68, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 37.24000000000001, 'profit_loss_pct': 3.125000000000001, 'qty': 1143.0, 'sell_date': datetime.datetime(2025, 12, 2, 15, 15, 22, 402922, tzinfo=datetime.timezone.utc), 'sell_price': 2.31, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1228.92, 'ticker': 'PACB'}, 'RZLV': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 55, 718791, tzinfo=datetime.timezone.utc), 'buy_price': 2.81, 'buy_reason': 'recommend', 'buy_total': 511.42, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -60.06, 'profit_loss_pct': -11.743772241992882, 'qty': 938.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 33, 41, 125015, tzinfo=datetime.timezone.utc), 'sell_price': 2.48, 'sell_reason': 'stop-loss', 'sell_total': 451.36, 'ticker': 'RZLV'}, 'WTI': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 551982, tzinfo=datetime.timezone.utc), 'buy_price': 1.7, 'buy_reason': 'recommend', 'buy_total': 731.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 47.299999999999955, 'profit_loss_pct': 6.4705882352941115, 'qty': 1397.0, 'sell_date': datetime.datetime(2025, 12, 4, 16, 35, 18, 918746, tzinfo=datetime.timezone.utc), 'sell_price': 1.81, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 778.3, 'ticker': 'WTI'}}, 639: {'AMRX': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 16, 673053, tzinfo=datetime.timezone.utc), 'buy_price': 12.15, 'buy_reason': 'recommend', 'buy_total': 5965.65, 'css_class': 'uk-label-losing', 'current_price': 11.83, 'profit_loss': -0.3200000000000003, 'profit_loss_pct': -2.6337448559670804, 'qty': 491.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'AMRX'}, 'APLT': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 19507, tzinfo=datetime.timezone.utc), 'buy_price': 0.21, 'buy_reason': 'recommend', 'buy_total': 843.57, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 19.3599999999999, 'profit_loss_pct': 2.295008120250827, 'qty': 14831.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 43, 19, 992220, tzinfo=datetime.timezone.utc), 'sell_price': 0.22, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 862.93, 'ticker': 'APLT'}, 'ASPI': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 17, 98435, tzinfo=datetime.timezone.utc), 'buy_price': 5.38, 'buy_reason': 'recommend', 'buy_total': 5794.26, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 344.6399999999994, 'profit_loss_pct': 5.947955390334562, 'qty': 1077.0, 'sell_date': datetime.datetime(2025, 12, 3, 20, 46, 55, 405923, tzinfo=datetime.timezone.utc), 'sell_price': 5.7, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 6138.9, 'ticker': 'ASPI'}, 'ASST': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 249381, tzinfo=datetime.timezone.utc), 'buy_price': 1.05, 'buy_reason': 'recommend', 'buy_total': 2764.65, 'css_class': 'uk-label-losing', 'current_price': 0.987, 'profit_loss': -0.06300000000000006, 'profit_loss_pct': -6.000000000000005, 'qty': 2713.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'ASST'}, 'ATYR': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 296997, tzinfo=datetime.timezone.utc), 'buy_price': 0.71, 'buy_reason': 'recommend', 'buy_total': 2142.71, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 350.71000000000004, 'profit_loss_pct': 16.367590574552786, 'qty': 3616.0, 'sell_date': datetime.datetime(2025, 12, 4, 20, 46, 51, 107327, tzinfo=datetime.timezone.utc), 'sell_price': 0.82, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2493.42, 'ticker': 'ATYR'}, 'BNAI': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 16, 463159, tzinfo=datetime.timezone.utc), 'buy_price': 0.33, 'buy_reason': 'recommend', 'buy_total': 6249.96, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -1146.1800000000003, 'profit_loss_pct': -18.338997369583172, 'qty': 18945.0, 'sell_date': datetime.datetime(2025, 12, 4, 15, 26, 11, 578220, tzinfo=datetime.timezone.utc), 'sell_price': 0.27, 'sell_reason': 'stop-loss', 'sell_total': 5103.78, 'ticker': 'BNAI'}, 'CHGG': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 483289, tzinfo=datetime.timezone.utc), 'buy_price': 0.95, 'buy_reason': 'recommend', 'buy_total': 2912.45, 'css_class': 'uk-label-losing', 'current_price': 0.8985, 'profit_loss': -0.05149999999999999, 'profit_loss_pct': -5.421052631578947, 'qty': 3068.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'CHGG'}, 'CODX': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 36, 155921, tzinfo=datetime.timezone.utc), 'buy_price': 0.36, 'buy_reason': 'recommend', 'buy_total': 684.48, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 19.949999999999932, 'profit_loss_pct': 2.9146213183730616, 'qty': 7587.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 49, 27, 753635, tzinfo=datetime.timezone.utc), 'sell_price': 0.37, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 704.43, 'ticker': 'CODX'}, 'DFLI': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 506258, tzinfo=datetime.timezone.utc), 'buy_price': 0.7, 'buy_reason': 'recommend', 'buy_total': 13.98, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 0.5199999999999996, 'profit_loss_pct': 3.7195994277539306, 'qty': 3606.0, 'sell_date': datetime.datetime(2025, 12, 3, 14, 58, 50, 998949, tzinfo=datetime.timezone.utc), 'sell_price': 0.73, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 14.5, 'ticker': 'DFLI'}, 'EVGO': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 705308, tzinfo=datetime.timezone.utc), 'buy_price': 3.15, 'buy_reason': 'recommend', 'buy_total': 2835.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 216.0, 'profit_loss_pct': 7.6190476190476195, 'qty': 900.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 54, 38, 906532, tzinfo=datetime.timezone.utc), 'sell_price': 3.39, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 3051.0, 'ticker': 'EVGO'}, 'KURA': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 719758, tzinfo=datetime.timezone.utc), 'buy_price': 11.49, 'buy_reason': 'recommend', 'buy_total': 1562.64, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 51.679999999999836, 'profit_loss_pct': 3.30722367275891, 'qty': 232.0, 'sell_date': datetime.datetime(2025, 12, 3, 14, 35, 18, 596065, tzinfo=datetime.timezone.utc), 'sell_price': 11.87, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1614.32, 'ticker': 'KURA'}, 'PDSB': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 16, 887969, tzinfo=datetime.timezone.utc), 'buy_price': 0.79, 'buy_reason': 'recommend', 'buy_total': 5947.12, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 227.35000000000036, 'profit_loss_pct': 3.822858795517837, 'qty': 7528.0, 'sell_date': datetime.datetime(2025, 12, 3, 17, 58, 8, 755181, tzinfo=datetime.timezone.utc), 'sell_price': 0.82, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 6174.47, 'ticker': 'PDSB'}, 'SGBX': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 53849, tzinfo=datetime.timezone.utc), 'buy_price': 3.05, 'buy_reason': 'recommend', 'buy_total': 2565.05, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 84.09999999999991, 'profit_loss_pct': 3.27868852459016, 'qty': 842.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 36, 43, 864040, tzinfo=datetime.timezone.utc), 'sell_price': 3.15, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2649.15, 'ticker': 'SGBX'}}, 640: {'COSM': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 23, 330294, tzinfo=datetime.timezone.utc), 'buy_price': 0.5, 'buy_reason': 'recommend', 'buy_total': 2353.78, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 79.7199999999998, 'profit_loss_pct': 3.3868925727977888, 'qty': 4717.0, 'sell_date': datetime.datetime(2025, 12, 4, 19, 23, 47, 960501, tzinfo=datetime.timezone.utc), 'sell_price': 0.52, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2433.5, 'ticker': 'COSM'}, 'HUMA': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 484476, tzinfo=datetime.timezone.utc), 'buy_price': 1.28, 'buy_reason': 'recommend', 'buy_total': 321.28, 'css_class': 'uk-label-gaining', 'current_price': 1.3, 'profit_loss': 0.020000000000000018, 'profit_loss_pct': 1.5625000000000013, 'qty': 1856.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'HUMA'}, 'IMNM': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 23, 118346, tzinfo=datetime.timezone.utc), 'buy_price': 19.29, 'buy_reason': 'recommend', 'buy_total': 2372.67, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 88.55999999999995, 'profit_loss_pct': 3.732503888024881, 'qty': 123.0, 'sell_date': datetime.datetime(2025, 12, 4, 16, 1, 46, 753544, tzinfo=datetime.timezone.utc), 'sell_price': 20.01, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2461.23, 'ticker': 'IMNM'}, 'NB': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 275021, tzinfo=datetime.timezone.utc), 'buy_price': 5.97, 'buy_reason': 'recommend', 'buy_total': 1414.89, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 68.72999999999979, 'profit_loss_pct': 4.857621440535998, 'qty': 400.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 31, 55, 74801, tzinfo=datetime.timezone.utc), 'sell_price': 6.26, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1483.62, 'ticker': 'NB'}, 'OVID': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 21, 853553, tzinfo=datetime.timezone.utc), 'buy_price': 1.56, 'buy_reason': 'recommend', 'buy_total': 494.52, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 19.019999999999982, 'profit_loss_pct': 3.8461538461538427, 'qty': 1563.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 57, 42, 491668, tzinfo=datetime.timezone.utc), 'sell_price': 1.62, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 513.54, 'ticker': 'OVID'}, 'PLG': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 694605, tzinfo=datetime.timezone.utc), 'buy_price': 2.41, 'buy_reason': 'recommend', 'buy_total': 2258.17, 'css_class': 'uk-label-losing', 'current_price': 2.39, 'profit_loss': -0.020000000000000018, 'profit_loss_pct': -0.8298755186721999, 'qty': 937.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'PLG'}, 'REAL': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 64339, tzinfo=datetime.timezone.utc), 'buy_price': 14.25, 'buy_reason': 'recommend', 'buy_total': 2465.25, 'css_class': 'uk-label-losing', 'current_price': 14.21, 'profit_loss': -0.03999999999999915, 'profit_loss_pct': -0.28070175438595896, 'qty': 173.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'REAL'}}}, 'panel': 'picklist', 'picklist_results': '<<queryset of core.TradeBasketPick>>', 'trade_baskets': '<<queryset of core.TradeBasket>>', 'trade_bot': <TradeBot: 1.0.0 Binned Random Forrest 3d PH 3%>} {'block': <Block Node: leftnav. Contents: [<TextNode: '\n <div'>, <IncludeNode: template=<FilterExpression '"components/leftnav.html"'>>, <TextNode: '\n </di'>]>}
components/header.html
/mnt/disks/pennyloupe_disk/pennyloupe/templates/components/header.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: ' "'U5QfSjol0dsbp7hGH6GmiL7qTHaQTc02R3Z3IlCc6eKeKzwJ5D9WiejNwal8xl33'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/trade/bot/54?date_pick=2025-11-21&panel=picklist'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f3fb5692480>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f3fb5692480>>'} {'buy_filter': {'rsi_2d__lte': 50, 'volume__gte': 1000000}, 'date_from': datetime.date(2025, 11, 21), 'date_pick': datetime.date(2025, 11, 21), 'date_to': datetime.date(2025, 12, 5), 'matching_results': [<ModelPick: 2025-11-21: WOOF (0.604)>, <ModelPick: 2025-11-21: NVNO (0.602)>, <ModelPick: 2025-11-21: UAMY (0.598)>, <ModelPick: 2025-11-21: SLDP (0.596)>, <ModelPick: 2025-11-21: EBS (0.594)>, <ModelPick: 2025-11-21: XRX (0.592)>, <ModelPick: 2025-11-21: ARRY (0.59)>, <ModelPick: 2025-11-21: CTM (0.59)>, <ModelPick: 2025-11-21: ACDC (0.584)>, <ModelPick: 2025-11-21: ATAI (0.58)>, <ModelPick: 2025-11-21: NVVE (0.572)>, <ModelPick: 2025-11-21: PBM (0.572)>, <ModelPick: 2025-11-21: UNIT (0.572)>, <ModelPick: 2025-11-21: YYAI (0.572)>, <ModelPick: 2025-11-21: IRBT (0.566)>, <ModelPick: 2025-11-21: TLRY (0.566)>, <ModelPick: 2025-11-21: AUID (0.562)>, <ModelPick: 2025-11-21: RANI (0.56)>, <ModelPick: 2025-11-21: SNDX (0.558)>, <ModelPick: 2025-11-21: ATYR (0.552)>, <ModelPick: 2025-11-21: SCYX (0.55)>, <ModelPick: 2025-11-21: TOVX (0.55)>, <ModelPick: 2025-11-21: ACHV (0.548)>, <ModelPick: 2025-11-21: RC (0.548)>, <ModelPick: 2025-11-21: HOTH (0.546)>, <ModelPick: 2025-11-21: SES (0.546)>, <ModelPick: 2025-11-21: VZLA (0.544)>, <ModelPick: 2025-11-21: DAWN (0.542)>, <ModelPick: 2025-11-21: SABR (0.54)>, <ModelPick: 2025-11-21: SGD (0.54)>, <ModelPick: 2025-11-21: QSI (0.532)>, <ModelPick: 2025-11-21: HOLO (0.53)>, <ModelPick: 2025-11-21: PTON (0.518)>, <ModelPick: 2025-11-21: GANX (0.51)>, <ModelPick: 2025-11-21: CGEM (0.502)>, <ModelPick: 2025-11-21: MFA (0.488)>], 'order_pairs': {626: {'ACDC': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 902931, tzinfo=datetime.timezone.utc), 'buy_price': 3.33, 'buy_reason': 'recommend', 'buy_total': 2823.84, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -8.480000000000018, 'profit_loss_pct': -0.30030030030030097, 'qty': 848.0, 'sell_date': datetime.datetime(2025, 11, 25, 20, 45, 17, 26866, tzinfo=datetime.timezone.utc), 'sell_price': 3.32, 'sell_reason': 'hold_dt expired', 'sell_total': 2815.36, 'ticker': 'ACDC'}, 'ARRY': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 473964, tzinfo=datetime.timezone.utc), 'buy_price': 6.71, 'buy_reason': 'recommend', 'buy_total': 375.76, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 20.160000000000025, 'profit_loss_pct': 5.365126676602093, 'qty': 417.0, 'sell_date': datetime.datetime(2025, 11, 21, 15, 32, 8, 539060, tzinfo=datetime.timezone.utc), 'sell_price': 7.07, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 395.92, 'ticker': 'ARRY'}, 'ATAI': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 20, 116898, tzinfo=datetime.timezone.utc), 'buy_price': 3.66, 'buy_reason': 'recommend', 'buy_total': 2803.56, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 91.92000000000007, 'profit_loss_pct': 3.2786885245901667, 'qty': 766.0, 'sell_date': datetime.datetime(2025, 11, 21, 18, 3, 30, 71736, tzinfo=datetime.timezone.utc), 'sell_price': 3.78, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2895.48, 'ticker': 'ATAI'}, 'CTM': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 687591, tzinfo=datetime.timezone.utc), 'buy_price': 1.02, 'buy_reason': 'recommend', 'buy_total': 2027.76, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 0.0, 'profit_loss_pct': 0.0, 'qty': 2799.0, 'sell_date': datetime.datetime(2025, 11, 25, 20, 45, 16, 876312, tzinfo=datetime.timezone.utc), 'sell_price': 1.02, 'sell_reason': 'hold_dt expired', 'sell_total': 2027.76, 'ticker': 'CTM'}, 'EBS': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 258527, tzinfo=datetime.timezone.utc), 'buy_price': 9.13, 'buy_reason': 'recommend', 'buy_total': 1734.7, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 345.22, 'profit_loss_pct': 19.900847408773853, 'qty': 282.0, 'sell_date': datetime.datetime(2025, 12, 1, 14, 32, 22, 290536, tzinfo=datetime.timezone.utc), 'sell_price': 10.95, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2079.92, 'ticker': 'EBS'}, 'NVNO': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 18, 613370, tzinfo=datetime.timezone.utc), 'buy_price': 0.32, 'buy_reason': 'recommend', 'buy_total': 978.8, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 18.129999999999995, 'profit_loss_pct': 1.8522680833673884, 'qty': 9031.0, 'sell_date': datetime.datetime(2025, 11, 21, 18, 4, 31, 15436, tzinfo=datetime.timezone.utc), 'sell_price': 0.33, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 996.93, 'ticker': 'NVNO'}, 'NVVE': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 20, 331076, tzinfo=datetime.timezone.utc), 'buy_price': 0.26, 'buy_reason': 'recommend', 'buy_total': 2996.93, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -397.39999999999964, 'profit_loss_pct': -13.26023630848901, 'qty': 11322.0, 'sell_date': datetime.datetime(2025, 11, 21, 17, 17, 53, 516772, tzinfo=datetime.timezone.utc), 'sell_price': 0.23, 'sell_reason': 'stop-loss', 'sell_total': 2599.53, 'ticker': 'NVVE'}, 'PBM': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 20, 545101, tzinfo=datetime.timezone.utc), 'buy_price': 1.56, 'buy_reason': 'recommend', 'buy_total': 10.92, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 0.34999999999999964, 'profit_loss_pct': 3.205128205128202, 'qty': 1896.0, 'sell_date': datetime.datetime(2025, 11, 21, 14, 31, 57, 512293, tzinfo=datetime.timezone.utc), 'sell_price': 1.61, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 11.27, 'ticker': 'PBM'}, 'SLDP': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 42489, tzinfo=datetime.timezone.utc), 'buy_price': 5.04, 'buy_reason': 'recommend', 'buy_total': 2963.52, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 23.519999999999982, 'profit_loss_pct': 0.793650793650793, 'qty': 588.0, 'sell_date': datetime.datetime(2025, 11, 25, 17, 59, 48, 293036, tzinfo=datetime.timezone.utc), 'sell_price': 5.08, 'sell_reason': 'hold_dt expired', 'sell_total': 2987.04, 'ticker': 'SLDP'}}, 627: {'AGL': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 25, 532349, tzinfo=datetime.timezone.utc), 'buy_price': 0.62, 'buy_reason': 'recommend', 'buy_total': 2407.86, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 94.00999999999976, 'profit_loss_pct': 3.9042967614396087, 'qty': 4370.0, 'sell_date': datetime.datetime(2025, 11, 24, 15, 10, 44, 591150, tzinfo=datetime.timezone.utc), 'sell_price': 0.64, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2501.87, 'ticker': 'AGL'}, 'BB': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 27, 540158, tzinfo=datetime.timezone.utc), 'buy_price': 4.2, 'buy_reason': 'recommend', 'buy_total': 2142.0, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -71.40000000000009, 'profit_loss_pct': -3.3333333333333375, 'qty': 604.0, 'sell_date': datetime.datetime(2025, 12, 2, 20, 46, 0, 488804, tzinfo=datetime.timezone.utc), 'sell_price': 4.06, 'sell_reason': 'hold_dt expired', 'sell_total': 2070.6, 'ticker': 'BB'}, 'CLOV': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 26, 438227, tzinfo=datetime.timezone.utc), 'buy_price': 2.31, 'buy_reason': 'recommend', 'buy_total': 1314.39, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 45.51999999999998, 'profit_loss_pct': 3.463203463203462, 'qty': 1166.0, 'sell_date': datetime.datetime(2025, 11, 24, 14, 32, 3, 431219, tzinfo=datetime.timezone.utc), 'sell_price': 2.39, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1359.91, 'ticker': 'CLOV'}, 'FIGS': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 25, 775541, tzinfo=datetime.timezone.utc), 'buy_price': 9.67, 'buy_reason': 'recommend', 'buy_total': 502.84, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 6.760000000000048, 'profit_loss_pct': 1.3443640124095235, 'qty': 264.0, 'sell_date': datetime.datetime(2025, 11, 28, 17, 38, 40, 775631, tzinfo=datetime.timezone.utc), 'sell_price': 9.8, 'sell_reason': 'hold_dt expired', 'sell_total': 509.6, 'ticker': 'FIGS'}, 'OPAD': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 26, 878798, tzinfo=datetime.timezone.utc), 'buy_price': 1.9, 'buy_reason': 'recommend', 'buy_total': 855.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 27.0, 'profit_loss_pct': 3.1578947368421053, 'qty': 1397.0, 'sell_date': datetime.datetime(2025, 11, 25, 14, 31, 40, 461044, tzinfo=datetime.timezone.utc), 'sell_price': 1.96, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 882.0, 'ticker': 'OPAD'}, 'SKIN': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 25, 995956, tzinfo=datetime.timezone.utc), 'buy_price': 1.33, 'buy_reason': 'recommend', 'buy_total': 2366.07, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 195.69000000000005, 'profit_loss_pct': 8.270676691729326, 'qty': 1822.0, 'sell_date': datetime.datetime(2025, 11, 26, 16, 48, 7, 954917, tzinfo=datetime.timezone.utc), 'sell_price': 1.44, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2561.76, 'ticker': 'SKIN'}}, 628: {'ACB': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 19, 465792, tzinfo=datetime.timezone.utc), 'buy_price': 4.38, 'buy_reason': 'recommend', 'buy_total': 2641.14, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 90.45000000000027, 'profit_loss_pct': 3.4246575342465855, 'qty': 603.0, 'sell_date': datetime.datetime(2025, 11, 26, 16, 29, 53, 893780, tzinfo=datetime.timezone.utc), 'sell_price': 4.53, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2731.59, 'ticker': 'ACB'}, 'BLNK': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 19, 258785, tzinfo=datetime.timezone.utc), 'buy_price': 1.31, 'buy_reason': 'recommend', 'buy_total': 1700.38, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -64.90000000000009, 'profit_loss_pct': -3.816793893129776, 'qty': 2054.0, 'sell_date': datetime.datetime(2025, 12, 1, 20, 45, 31, 996842, tzinfo=datetime.timezone.utc), 'sell_price': 1.26, 'sell_reason': 'hold_dt expired', 'sell_total': 1635.48, 'ticker': 'BLNK'}, 'BTCS': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 18, 839809, tzinfo=datetime.timezone.utc), 'buy_price': 3.1, 'buy_reason': 'recommend', 'buy_total': 279.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 10.800000000000011, 'profit_loss_pct': 3.8709677419354884, 'qty': 867.0, 'sell_date': datetime.datetime(2025, 11, 28, 14, 32, 1, 959345, tzinfo=datetime.timezone.utc), 'sell_price': 3.22, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 289.8, 'ticker': 'BTCS'}, 'GEVO': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 18, 215129, tzinfo=datetime.timezone.utc), 'buy_price': 2.03, 'buy_reason': 'recommend', 'buy_total': 2807.49, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 110.64000000000033, 'profit_loss_pct': 3.9408866995074012, 'qty': 1383.0, 'sell_date': datetime.datetime(2025, 11, 28, 15, 48, 5, 333577, tzinfo=datetime.timezone.utc), 'sell_price': 2.11, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2918.13, 'ticker': 'GEVO'}, 'RZLV': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 19, 674730, tzinfo=datetime.timezone.utc), 'buy_price': 3.12, 'buy_reason': 'recommend', 'buy_total': 2648.88, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -297.1500000000001, 'profit_loss_pct': -11.21794871794872, 'qty': 849.0, 'sell_date': datetime.datetime(2025, 12, 1, 19, 41, 44, 121349, tzinfo=datetime.timezone.utc), 'sell_price': 2.77, 'sell_reason': 'stop-loss', 'sell_total': 2351.73, 'ticker': 'RZLV'}, 'WULF': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 17, 571143, tzinfo=datetime.timezone.utc), 'buy_price': 12.42, 'buy_reason': 'recommend', 'buy_total': 2857.6, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 268.0999999999999, 'profit_loss_pct': 9.381998880179168, 'qty': 230.0, 'sell_date': datetime.datetime(2025, 11, 25, 14, 41, 50, 533040, tzinfo=datetime.timezone.utc), 'sell_price': 13.59, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 3125.7, 'ticker': 'WULF'}}, 630: {'ACHV': {'buy_date': datetime.datetime(2025, 11, 26, 11, 50, 42, 861143, tzinfo=datetime.timezone.utc), 'buy_price': 4.59, 'buy_reason': 'recommend', 'buy_total': 656.37, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 41.47000000000003, 'profit_loss_pct': 6.3180827886710285, 'qty': 835.0, 'sell_date': datetime.datetime(2025, 11, 26, 14, 32, 12, 212225, tzinfo=datetime.timezone.utc), 'sell_price': 4.88, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 697.84, 'ticker': 'ACHV'}, 'PALI': {'buy_date': datetime.datetime(2025, 11, 26, 11, 50, 41, 722199, tzinfo=datetime.timezone.utc), 'buy_price': 2.17, 'buy_reason': 'recommend', 'buy_total': 1453.9, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -180.9000000000001, 'profit_loss_pct': -12.44239631336406, 'qty': 1937.0, 'sell_date': datetime.datetime(2025, 12, 1, 16, 11, 50, 943576, tzinfo=datetime.timezone.utc), 'sell_price': 1.9, 'sell_reason': 'stop-loss', 'sell_total': 1273.0, 'ticker': 'PALI'}}, 632: {'AVDL': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 23, 690983, tzinfo=datetime.timezone.utc), 'buy_price': 21.47, 'buy_reason': 'recommend', 'buy_total': 2726.69, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -13.970000000000255, 'profit_loss_pct': -0.5123428039124454, 'qty': 127.0, 'sell_date': datetime.datetime(2025, 12, 2, 20, 46, 0, 629378, tzinfo=datetime.timezone.utc), 'sell_price': 21.36, 'sell_reason': 'hold_dt expired', 'sell_total': 2712.72, 'ticker': 'AVDL'}, 'IRWD': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 21, 574652, tzinfo=datetime.timezone.utc), 'buy_price': 3.83, 'buy_reason': 'recommend', 'buy_total': 2420.56, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -208.55999999999995, 'profit_loss_pct': -8.616187989556133, 'qty': 782.0, 'sell_date': datetime.datetime(2025, 12, 2, 19, 37, 11, 303291, tzinfo=datetime.timezone.utc), 'sell_price': 3.5, 'sell_reason': 'hold_dt expired', 'sell_total': 2212.0, 'ticker': 'IRWD'}, 'MBRX': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 23, 479749, tzinfo=datetime.timezone.utc), 'buy_price': 0.27, 'buy_reason': 'recommend', 'buy_total': 2631.31, 'css_class': 'uk-label-gaining', 'current_price': 7.71, 'profit_loss': 7.4399999999999995, 'profit_loss_pct': 2755.555555555555, 'qty': 10382.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'MBRX'}, 'YYAI': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 22, 218880, tzinfo=datetime.timezone.utc), 'buy_price': 1.08, 'buy_reason': 'recommend', 'buy_total': 2774.52, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -328.8299999999999, 'profit_loss_pct': -11.8517797673111, 'qty': 2569.0, 'sell_date': datetime.datetime(2025, 12, 1, 15, 34, 19, 416045, tzinfo=datetime.timezone.utc), 'sell_price': 0.95, 'sell_reason': 'stop-loss', 'sell_total': 2445.69, 'ticker': 'YYAI'}}, 635: {'COMP': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 7, 681373, tzinfo=datetime.timezone.utc), 'buy_price': 10.22, 'buy_reason': 'recommend', 'buy_total': 2994.46, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 96.69000000000005, 'profit_loss_pct': 3.228962818003916, 'qty': 293.0, 'sell_date': datetime.datetime(2025, 12, 1, 20, 13, 11, 234345, tzinfo=datetime.timezone.utc), 'sell_price': 10.55, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 3091.15, 'ticker': 'COMP'}, 'EDIT': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 7, 895448, tzinfo=datetime.timezone.utc), 'buy_price': 2.36, 'buy_reason': 'recommend', 'buy_total': 972.32, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -103.0, 'profit_loss_pct': -10.59322033898305, 'qty': 1270.0, 'sell_date': datetime.datetime(2025, 12, 2, 17, 13, 9, 670952, tzinfo=datetime.timezone.utc), 'sell_price': 2.11, 'sell_reason': 'stop-loss', 'sell_total': 869.32, 'ticker': 'EDIT'}, 'NVTS': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 7, 48264, tzinfo=datetime.timezone.utc), 'buy_price': 8.45, 'buy_reason': 'recommend', 'buy_total': 2332.2, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 33.120000000000346, 'profit_loss_pct': 1.420118343195281, 'qty': 367.0, 'sell_date': datetime.datetime(2025, 12, 3, 18, 55, 13, 980374, tzinfo=datetime.timezone.utc), 'sell_price': 8.57, 'sell_reason': 'hold_dt expired', 'sell_total': 2365.32, 'ticker': 'NVTS'}, 'ONDS': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 8, 564772, tzinfo=datetime.timezone.utc), 'buy_price': 7.96, 'buy_reason': 'recommend', 'buy_total': 1727.32, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 60.75999999999999, 'profit_loss_pct': 3.5175879396984917, 'qty': 363.0, 'sell_date': datetime.datetime(2025, 12, 2, 15, 20, 27, 589653, tzinfo=datetime.timezone.utc), 'sell_price': 8.24, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1788.08, 'ticker': 'ONDS'}}, 636: {'CMND': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 127982, tzinfo=datetime.timezone.utc), 'buy_price': 0.13, 'buy_reason': 'recommend', 'buy_total': 2658.52, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 40.039999999999964, 'profit_loss_pct': 1.5061011389795813, 'qty': 20019.0, 'sell_date': datetime.datetime(2025, 12, 2, 17, 9, 6, 43859, tzinfo=datetime.timezone.utc), 'sell_price': 0.13, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2698.56, 'ticker': 'CMND'}, 'DRCT': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 54, 647092, tzinfo=datetime.timezone.utc), 'buy_price': 0.11, 'buy_reason': 'recommend', 'buy_total': 967.88, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -170.96000000000004, 'profit_loss_pct': -17.663346695871393, 'qty': 23461.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 12, 8, 676995, tzinfo=datetime.timezone.utc), 'sell_price': 0.09, 'sell_reason': 'stop-loss', 'sell_total': 796.92, 'ticker': 'DRCT'}, 'GPUS': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 55, 290523, tzinfo=datetime.timezone.utc), 'buy_price': 0.3, 'buy_reason': 'recommend', 'buy_total': 2887.37, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -90.52999999999975, 'profit_loss_pct': -3.135379255169921, 'qty': 9631.0, 'sell_date': datetime.datetime(2025, 12, 4, 19, 41, 2, 227311, tzinfo=datetime.timezone.utc), 'sell_price': 0.29, 'sell_reason': 'hold_dt expired', 'sell_total': 2796.84, 'ticker': 'GPUS'}, 'INHD': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 761055, tzinfo=datetime.timezone.utc), 'buy_price': 0.16, 'buy_reason': 'recommend', 'buy_total': 1738.68, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -265.8100000000002, 'profit_loss_pct': -15.288034600961659, 'qty': 15207.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 34, 41, 489513, tzinfo=datetime.timezone.utc), 'sell_price': 0.14, 'sell_reason': 'stop-loss', 'sell_total': 1472.87, 'ticker': 'INHD'}, 'IRBT': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 54, 867198, tzinfo=datetime.timezone.utc), 'buy_price': 1.62, 'buy_reason': 'recommend', 'buy_total': 1498.5, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 55.5, 'profit_loss_pct': 3.7037037037037033, 'qty': 1665.0, 'sell_date': datetime.datetime(2025, 12, 2, 14, 31, 33, 495866, tzinfo=datetime.timezone.utc), 'sell_price': 1.68, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1554.0, 'ticker': 'IRBT'}, 'METC': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 967363, tzinfo=datetime.timezone.utc), 'buy_price': 15.24, 'buy_reason': 'recommend', 'buy_total': 2042.16, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 80.39999999999986, 'profit_loss_pct': 3.937007874015741, 'qty': 157.0, 'sell_date': datetime.datetime(2025, 12, 2, 14, 37, 40, 899647, tzinfo=datetime.timezone.utc), 'sell_price': 15.84, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2122.56, 'ticker': 'METC'}, 'MSAI': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 340358, tzinfo=datetime.timezone.utc), 'buy_price': 0.55, 'buy_reason': 'recommend', 'buy_total': 1869.32, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 103.01999999999998, 'profit_loss_pct': 5.511094943615859, 'qty': 4511.0, 'sell_date': datetime.datetime(2025, 12, 2, 15, 12, 19, 33365, tzinfo=datetime.timezone.utc), 'sell_price': 0.58, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1972.34, 'ticker': 'MSAI'}, 'PACB': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 55, 508048, tzinfo=datetime.timezone.utc), 'buy_price': 2.24, 'buy_reason': 'recommend', 'buy_total': 1191.68, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 37.24000000000001, 'profit_loss_pct': 3.125000000000001, 'qty': 1143.0, 'sell_date': datetime.datetime(2025, 12, 2, 15, 15, 22, 402922, tzinfo=datetime.timezone.utc), 'sell_price': 2.31, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1228.92, 'ticker': 'PACB'}, 'RZLV': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 55, 718791, tzinfo=datetime.timezone.utc), 'buy_price': 2.81, 'buy_reason': 'recommend', 'buy_total': 511.42, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -60.06, 'profit_loss_pct': -11.743772241992882, 'qty': 938.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 33, 41, 125015, tzinfo=datetime.timezone.utc), 'sell_price': 2.48, 'sell_reason': 'stop-loss', 'sell_total': 451.36, 'ticker': 'RZLV'}, 'WTI': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 551982, tzinfo=datetime.timezone.utc), 'buy_price': 1.7, 'buy_reason': 'recommend', 'buy_total': 731.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 47.299999999999955, 'profit_loss_pct': 6.4705882352941115, 'qty': 1397.0, 'sell_date': datetime.datetime(2025, 12, 4, 16, 35, 18, 918746, tzinfo=datetime.timezone.utc), 'sell_price': 1.81, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 778.3, 'ticker': 'WTI'}}, 639: {'AMRX': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 16, 673053, tzinfo=datetime.timezone.utc), 'buy_price': 12.15, 'buy_reason': 'recommend', 'buy_total': 5965.65, 'css_class': 'uk-label-losing', 'current_price': 11.83, 'profit_loss': -0.3200000000000003, 'profit_loss_pct': -2.6337448559670804, 'qty': 491.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'AMRX'}, 'APLT': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 19507, tzinfo=datetime.timezone.utc), 'buy_price': 0.21, 'buy_reason': 'recommend', 'buy_total': 843.57, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 19.3599999999999, 'profit_loss_pct': 2.295008120250827, 'qty': 14831.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 43, 19, 992220, tzinfo=datetime.timezone.utc), 'sell_price': 0.22, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 862.93, 'ticker': 'APLT'}, 'ASPI': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 17, 98435, tzinfo=datetime.timezone.utc), 'buy_price': 5.38, 'buy_reason': 'recommend', 'buy_total': 5794.26, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 344.6399999999994, 'profit_loss_pct': 5.947955390334562, 'qty': 1077.0, 'sell_date': datetime.datetime(2025, 12, 3, 20, 46, 55, 405923, tzinfo=datetime.timezone.utc), 'sell_price': 5.7, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 6138.9, 'ticker': 'ASPI'}, 'ASST': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 249381, tzinfo=datetime.timezone.utc), 'buy_price': 1.05, 'buy_reason': 'recommend', 'buy_total': 2764.65, 'css_class': 'uk-label-losing', 'current_price': 0.987, 'profit_loss': -0.06300000000000006, 'profit_loss_pct': -6.000000000000005, 'qty': 2713.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'ASST'}, 'ATYR': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 296997, tzinfo=datetime.timezone.utc), 'buy_price': 0.71, 'buy_reason': 'recommend', 'buy_total': 2142.71, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 350.71000000000004, 'profit_loss_pct': 16.367590574552786, 'qty': 3616.0, 'sell_date': datetime.datetime(2025, 12, 4, 20, 46, 51, 107327, tzinfo=datetime.timezone.utc), 'sell_price': 0.82, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2493.42, 'ticker': 'ATYR'}, 'BNAI': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 16, 463159, tzinfo=datetime.timezone.utc), 'buy_price': 0.33, 'buy_reason': 'recommend', 'buy_total': 6249.96, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -1146.1800000000003, 'profit_loss_pct': -18.338997369583172, 'qty': 18945.0, 'sell_date': datetime.datetime(2025, 12, 4, 15, 26, 11, 578220, tzinfo=datetime.timezone.utc), 'sell_price': 0.27, 'sell_reason': 'stop-loss', 'sell_total': 5103.78, 'ticker': 'BNAI'}, 'CHGG': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 483289, tzinfo=datetime.timezone.utc), 'buy_price': 0.95, 'buy_reason': 'recommend', 'buy_total': 2912.45, 'css_class': 'uk-label-losing', 'current_price': 0.8985, 'profit_loss': -0.05149999999999999, 'profit_loss_pct': -5.421052631578947, 'qty': 3068.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'CHGG'}, 'CODX': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 36, 155921, tzinfo=datetime.timezone.utc), 'buy_price': 0.36, 'buy_reason': 'recommend', 'buy_total': 684.48, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 19.949999999999932, 'profit_loss_pct': 2.9146213183730616, 'qty': 7587.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 49, 27, 753635, tzinfo=datetime.timezone.utc), 'sell_price': 0.37, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 704.43, 'ticker': 'CODX'}, 'DFLI': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 506258, tzinfo=datetime.timezone.utc), 'buy_price': 0.7, 'buy_reason': 'recommend', 'buy_total': 13.98, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 0.5199999999999996, 'profit_loss_pct': 3.7195994277539306, 'qty': 3606.0, 'sell_date': datetime.datetime(2025, 12, 3, 14, 58, 50, 998949, tzinfo=datetime.timezone.utc), 'sell_price': 0.73, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 14.5, 'ticker': 'DFLI'}, 'EVGO': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 705308, tzinfo=datetime.timezone.utc), 'buy_price': 3.15, 'buy_reason': 'recommend', 'buy_total': 2835.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 216.0, 'profit_loss_pct': 7.6190476190476195, 'qty': 900.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 54, 38, 906532, tzinfo=datetime.timezone.utc), 'sell_price': 3.39, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 3051.0, 'ticker': 'EVGO'}, 'KURA': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 719758, tzinfo=datetime.timezone.utc), 'buy_price': 11.49, 'buy_reason': 'recommend', 'buy_total': 1562.64, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 51.679999999999836, 'profit_loss_pct': 3.30722367275891, 'qty': 232.0, 'sell_date': datetime.datetime(2025, 12, 3, 14, 35, 18, 596065, tzinfo=datetime.timezone.utc), 'sell_price': 11.87, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1614.32, 'ticker': 'KURA'}, 'PDSB': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 16, 887969, tzinfo=datetime.timezone.utc), 'buy_price': 0.79, 'buy_reason': 'recommend', 'buy_total': 5947.12, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 227.35000000000036, 'profit_loss_pct': 3.822858795517837, 'qty': 7528.0, 'sell_date': datetime.datetime(2025, 12, 3, 17, 58, 8, 755181, tzinfo=datetime.timezone.utc), 'sell_price': 0.82, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 6174.47, 'ticker': 'PDSB'}, 'SGBX': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 53849, tzinfo=datetime.timezone.utc), 'buy_price': 3.05, 'buy_reason': 'recommend', 'buy_total': 2565.05, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 84.09999999999991, 'profit_loss_pct': 3.27868852459016, 'qty': 842.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 36, 43, 864040, tzinfo=datetime.timezone.utc), 'sell_price': 3.15, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2649.15, 'ticker': 'SGBX'}}, 640: {'COSM': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 23, 330294, tzinfo=datetime.timezone.utc), 'buy_price': 0.5, 'buy_reason': 'recommend', 'buy_total': 2353.78, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 79.7199999999998, 'profit_loss_pct': 3.3868925727977888, 'qty': 4717.0, 'sell_date': datetime.datetime(2025, 12, 4, 19, 23, 47, 960501, tzinfo=datetime.timezone.utc), 'sell_price': 0.52, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2433.5, 'ticker': 'COSM'}, 'HUMA': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 484476, tzinfo=datetime.timezone.utc), 'buy_price': 1.28, 'buy_reason': 'recommend', 'buy_total': 321.28, 'css_class': 'uk-label-gaining', 'current_price': 1.3, 'profit_loss': 0.020000000000000018, 'profit_loss_pct': 1.5625000000000013, 'qty': 1856.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'HUMA'}, 'IMNM': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 23, 118346, tzinfo=datetime.timezone.utc), 'buy_price': 19.29, 'buy_reason': 'recommend', 'buy_total': 2372.67, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 88.55999999999995, 'profit_loss_pct': 3.732503888024881, 'qty': 123.0, 'sell_date': datetime.datetime(2025, 12, 4, 16, 1, 46, 753544, tzinfo=datetime.timezone.utc), 'sell_price': 20.01, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2461.23, 'ticker': 'IMNM'}, 'NB': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 275021, tzinfo=datetime.timezone.utc), 'buy_price': 5.97, 'buy_reason': 'recommend', 'buy_total': 1414.89, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 68.72999999999979, 'profit_loss_pct': 4.857621440535998, 'qty': 400.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 31, 55, 74801, tzinfo=datetime.timezone.utc), 'sell_price': 6.26, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1483.62, 'ticker': 'NB'}, 'OVID': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 21, 853553, tzinfo=datetime.timezone.utc), 'buy_price': 1.56, 'buy_reason': 'recommend', 'buy_total': 494.52, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 19.019999999999982, 'profit_loss_pct': 3.8461538461538427, 'qty': 1563.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 57, 42, 491668, tzinfo=datetime.timezone.utc), 'sell_price': 1.62, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 513.54, 'ticker': 'OVID'}, 'PLG': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 694605, tzinfo=datetime.timezone.utc), 'buy_price': 2.41, 'buy_reason': 'recommend', 'buy_total': 2258.17, 'css_class': 'uk-label-losing', 'current_price': 2.39, 'profit_loss': -0.020000000000000018, 'profit_loss_pct': -0.8298755186721999, 'qty': 937.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'PLG'}, 'REAL': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 64339, tzinfo=datetime.timezone.utc), 'buy_price': 14.25, 'buy_reason': 'recommend', 'buy_total': 2465.25, 'css_class': 'uk-label-losing', 'current_price': 14.21, 'profit_loss': -0.03999999999999915, 'profit_loss_pct': -0.28070175438595896, 'qty': 173.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'REAL'}}}, 'panel': 'picklist', 'picklist_results': '<<queryset of core.TradeBasketPick>>', 'trade_baskets': '<<queryset of core.TradeBasket>>', 'trade_bot': <TradeBot: 1.0.0 Binned Random Forrest 3d PH 3%>} {'block': <Block Node: header. Contents: [<TextNode: '\n\n '>, <IncludeNode: template=<FilterExpression '"components/header.html"'>>, <TextNode: '\n\n '>]>}
components/footer.html
/mnt/disks/pennyloupe_disk/pennyloupe/templates/components/footer.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: ' "'U5QfSjol0dsbp7hGH6GmiL7qTHaQTc02R3Z3IlCc6eKeKzwJ5D9WiejNwal8xl33'>", 'messages': <FallbackStorage: request=<WSGIRequest: GET '/trade/bot/54?date_pick=2025-11-21&panel=picklist'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f3fb5692480>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f3fb5692480>>'} {'buy_filter': {'rsi_2d__lte': 50, 'volume__gte': 1000000}, 'date_from': datetime.date(2025, 11, 21), 'date_pick': datetime.date(2025, 11, 21), 'date_to': datetime.date(2025, 12, 5), 'matching_results': [<ModelPick: 2025-11-21: WOOF (0.604)>, <ModelPick: 2025-11-21: NVNO (0.602)>, <ModelPick: 2025-11-21: UAMY (0.598)>, <ModelPick: 2025-11-21: SLDP (0.596)>, <ModelPick: 2025-11-21: EBS (0.594)>, <ModelPick: 2025-11-21: XRX (0.592)>, <ModelPick: 2025-11-21: ARRY (0.59)>, <ModelPick: 2025-11-21: CTM (0.59)>, <ModelPick: 2025-11-21: ACDC (0.584)>, <ModelPick: 2025-11-21: ATAI (0.58)>, <ModelPick: 2025-11-21: NVVE (0.572)>, <ModelPick: 2025-11-21: PBM (0.572)>, <ModelPick: 2025-11-21: UNIT (0.572)>, <ModelPick: 2025-11-21: YYAI (0.572)>, <ModelPick: 2025-11-21: IRBT (0.566)>, <ModelPick: 2025-11-21: TLRY (0.566)>, <ModelPick: 2025-11-21: AUID (0.562)>, <ModelPick: 2025-11-21: RANI (0.56)>, <ModelPick: 2025-11-21: SNDX (0.558)>, <ModelPick: 2025-11-21: ATYR (0.552)>, <ModelPick: 2025-11-21: SCYX (0.55)>, <ModelPick: 2025-11-21: TOVX (0.55)>, <ModelPick: 2025-11-21: ACHV (0.548)>, <ModelPick: 2025-11-21: RC (0.548)>, <ModelPick: 2025-11-21: HOTH (0.546)>, <ModelPick: 2025-11-21: SES (0.546)>, <ModelPick: 2025-11-21: VZLA (0.544)>, <ModelPick: 2025-11-21: DAWN (0.542)>, <ModelPick: 2025-11-21: SABR (0.54)>, <ModelPick: 2025-11-21: SGD (0.54)>, <ModelPick: 2025-11-21: QSI (0.532)>, <ModelPick: 2025-11-21: HOLO (0.53)>, <ModelPick: 2025-11-21: PTON (0.518)>, <ModelPick: 2025-11-21: GANX (0.51)>, <ModelPick: 2025-11-21: CGEM (0.502)>, <ModelPick: 2025-11-21: MFA (0.488)>], 'order_pairs': {626: {'ACDC': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 902931, tzinfo=datetime.timezone.utc), 'buy_price': 3.33, 'buy_reason': 'recommend', 'buy_total': 2823.84, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -8.480000000000018, 'profit_loss_pct': -0.30030030030030097, 'qty': 848.0, 'sell_date': datetime.datetime(2025, 11, 25, 20, 45, 17, 26866, tzinfo=datetime.timezone.utc), 'sell_price': 3.32, 'sell_reason': 'hold_dt expired', 'sell_total': 2815.36, 'ticker': 'ACDC'}, 'ARRY': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 473964, tzinfo=datetime.timezone.utc), 'buy_price': 6.71, 'buy_reason': 'recommend', 'buy_total': 375.76, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 20.160000000000025, 'profit_loss_pct': 5.365126676602093, 'qty': 417.0, 'sell_date': datetime.datetime(2025, 11, 21, 15, 32, 8, 539060, tzinfo=datetime.timezone.utc), 'sell_price': 7.07, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 395.92, 'ticker': 'ARRY'}, 'ATAI': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 20, 116898, tzinfo=datetime.timezone.utc), 'buy_price': 3.66, 'buy_reason': 'recommend', 'buy_total': 2803.56, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 91.92000000000007, 'profit_loss_pct': 3.2786885245901667, 'qty': 766.0, 'sell_date': datetime.datetime(2025, 11, 21, 18, 3, 30, 71736, tzinfo=datetime.timezone.utc), 'sell_price': 3.78, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2895.48, 'ticker': 'ATAI'}, 'CTM': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 687591, tzinfo=datetime.timezone.utc), 'buy_price': 1.02, 'buy_reason': 'recommend', 'buy_total': 2027.76, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 0.0, 'profit_loss_pct': 0.0, 'qty': 2799.0, 'sell_date': datetime.datetime(2025, 11, 25, 20, 45, 16, 876312, tzinfo=datetime.timezone.utc), 'sell_price': 1.02, 'sell_reason': 'hold_dt expired', 'sell_total': 2027.76, 'ticker': 'CTM'}, 'EBS': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 258527, tzinfo=datetime.timezone.utc), 'buy_price': 9.13, 'buy_reason': 'recommend', 'buy_total': 1734.7, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 345.22, 'profit_loss_pct': 19.900847408773853, 'qty': 282.0, 'sell_date': datetime.datetime(2025, 12, 1, 14, 32, 22, 290536, tzinfo=datetime.timezone.utc), 'sell_price': 10.95, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2079.92, 'ticker': 'EBS'}, 'NVNO': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 18, 613370, tzinfo=datetime.timezone.utc), 'buy_price': 0.32, 'buy_reason': 'recommend', 'buy_total': 978.8, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 18.129999999999995, 'profit_loss_pct': 1.8522680833673884, 'qty': 9031.0, 'sell_date': datetime.datetime(2025, 11, 21, 18, 4, 31, 15436, tzinfo=datetime.timezone.utc), 'sell_price': 0.33, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 996.93, 'ticker': 'NVNO'}, 'NVVE': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 20, 331076, tzinfo=datetime.timezone.utc), 'buy_price': 0.26, 'buy_reason': 'recommend', 'buy_total': 2996.93, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -397.39999999999964, 'profit_loss_pct': -13.26023630848901, 'qty': 11322.0, 'sell_date': datetime.datetime(2025, 11, 21, 17, 17, 53, 516772, tzinfo=datetime.timezone.utc), 'sell_price': 0.23, 'sell_reason': 'stop-loss', 'sell_total': 2599.53, 'ticker': 'NVVE'}, 'PBM': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 20, 545101, tzinfo=datetime.timezone.utc), 'buy_price': 1.56, 'buy_reason': 'recommend', 'buy_total': 10.92, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 0.34999999999999964, 'profit_loss_pct': 3.205128205128202, 'qty': 1896.0, 'sell_date': datetime.datetime(2025, 11, 21, 14, 31, 57, 512293, tzinfo=datetime.timezone.utc), 'sell_price': 1.61, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 11.27, 'ticker': 'PBM'}, 'SLDP': {'buy_date': datetime.datetime(2025, 11, 21, 11, 50, 19, 42489, tzinfo=datetime.timezone.utc), 'buy_price': 5.04, 'buy_reason': 'recommend', 'buy_total': 2963.52, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 23.519999999999982, 'profit_loss_pct': 0.793650793650793, 'qty': 588.0, 'sell_date': datetime.datetime(2025, 11, 25, 17, 59, 48, 293036, tzinfo=datetime.timezone.utc), 'sell_price': 5.08, 'sell_reason': 'hold_dt expired', 'sell_total': 2987.04, 'ticker': 'SLDP'}}, 627: {'AGL': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 25, 532349, tzinfo=datetime.timezone.utc), 'buy_price': 0.62, 'buy_reason': 'recommend', 'buy_total': 2407.86, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 94.00999999999976, 'profit_loss_pct': 3.9042967614396087, 'qty': 4370.0, 'sell_date': datetime.datetime(2025, 11, 24, 15, 10, 44, 591150, tzinfo=datetime.timezone.utc), 'sell_price': 0.64, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2501.87, 'ticker': 'AGL'}, 'BB': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 27, 540158, tzinfo=datetime.timezone.utc), 'buy_price': 4.2, 'buy_reason': 'recommend', 'buy_total': 2142.0, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -71.40000000000009, 'profit_loss_pct': -3.3333333333333375, 'qty': 604.0, 'sell_date': datetime.datetime(2025, 12, 2, 20, 46, 0, 488804, tzinfo=datetime.timezone.utc), 'sell_price': 4.06, 'sell_reason': 'hold_dt expired', 'sell_total': 2070.6, 'ticker': 'BB'}, 'CLOV': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 26, 438227, tzinfo=datetime.timezone.utc), 'buy_price': 2.31, 'buy_reason': 'recommend', 'buy_total': 1314.39, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 45.51999999999998, 'profit_loss_pct': 3.463203463203462, 'qty': 1166.0, 'sell_date': datetime.datetime(2025, 11, 24, 14, 32, 3, 431219, tzinfo=datetime.timezone.utc), 'sell_price': 2.39, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1359.91, 'ticker': 'CLOV'}, 'FIGS': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 25, 775541, tzinfo=datetime.timezone.utc), 'buy_price': 9.67, 'buy_reason': 'recommend', 'buy_total': 502.84, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 6.760000000000048, 'profit_loss_pct': 1.3443640124095235, 'qty': 264.0, 'sell_date': datetime.datetime(2025, 11, 28, 17, 38, 40, 775631, tzinfo=datetime.timezone.utc), 'sell_price': 9.8, 'sell_reason': 'hold_dt expired', 'sell_total': 509.6, 'ticker': 'FIGS'}, 'OPAD': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 26, 878798, tzinfo=datetime.timezone.utc), 'buy_price': 1.9, 'buy_reason': 'recommend', 'buy_total': 855.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 27.0, 'profit_loss_pct': 3.1578947368421053, 'qty': 1397.0, 'sell_date': datetime.datetime(2025, 11, 25, 14, 31, 40, 461044, tzinfo=datetime.timezone.utc), 'sell_price': 1.96, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 882.0, 'ticker': 'OPAD'}, 'SKIN': {'buy_date': datetime.datetime(2025, 11, 24, 11, 46, 25, 995956, tzinfo=datetime.timezone.utc), 'buy_price': 1.33, 'buy_reason': 'recommend', 'buy_total': 2366.07, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 195.69000000000005, 'profit_loss_pct': 8.270676691729326, 'qty': 1822.0, 'sell_date': datetime.datetime(2025, 11, 26, 16, 48, 7, 954917, tzinfo=datetime.timezone.utc), 'sell_price': 1.44, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2561.76, 'ticker': 'SKIN'}}, 628: {'ACB': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 19, 465792, tzinfo=datetime.timezone.utc), 'buy_price': 4.38, 'buy_reason': 'recommend', 'buy_total': 2641.14, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 90.45000000000027, 'profit_loss_pct': 3.4246575342465855, 'qty': 603.0, 'sell_date': datetime.datetime(2025, 11, 26, 16, 29, 53, 893780, tzinfo=datetime.timezone.utc), 'sell_price': 4.53, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2731.59, 'ticker': 'ACB'}, 'BLNK': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 19, 258785, tzinfo=datetime.timezone.utc), 'buy_price': 1.31, 'buy_reason': 'recommend', 'buy_total': 1700.38, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -64.90000000000009, 'profit_loss_pct': -3.816793893129776, 'qty': 2054.0, 'sell_date': datetime.datetime(2025, 12, 1, 20, 45, 31, 996842, tzinfo=datetime.timezone.utc), 'sell_price': 1.26, 'sell_reason': 'hold_dt expired', 'sell_total': 1635.48, 'ticker': 'BLNK'}, 'BTCS': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 18, 839809, tzinfo=datetime.timezone.utc), 'buy_price': 3.1, 'buy_reason': 'recommend', 'buy_total': 279.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 10.800000000000011, 'profit_loss_pct': 3.8709677419354884, 'qty': 867.0, 'sell_date': datetime.datetime(2025, 11, 28, 14, 32, 1, 959345, tzinfo=datetime.timezone.utc), 'sell_price': 3.22, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 289.8, 'ticker': 'BTCS'}, 'GEVO': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 18, 215129, tzinfo=datetime.timezone.utc), 'buy_price': 2.03, 'buy_reason': 'recommend', 'buy_total': 2807.49, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 110.64000000000033, 'profit_loss_pct': 3.9408866995074012, 'qty': 1383.0, 'sell_date': datetime.datetime(2025, 11, 28, 15, 48, 5, 333577, tzinfo=datetime.timezone.utc), 'sell_price': 2.11, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2918.13, 'ticker': 'GEVO'}, 'RZLV': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 19, 674730, tzinfo=datetime.timezone.utc), 'buy_price': 3.12, 'buy_reason': 'recommend', 'buy_total': 2648.88, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -297.1500000000001, 'profit_loss_pct': -11.21794871794872, 'qty': 849.0, 'sell_date': datetime.datetime(2025, 12, 1, 19, 41, 44, 121349, tzinfo=datetime.timezone.utc), 'sell_price': 2.77, 'sell_reason': 'stop-loss', 'sell_total': 2351.73, 'ticker': 'RZLV'}, 'WULF': {'buy_date': datetime.datetime(2025, 11, 25, 11, 50, 17, 571143, tzinfo=datetime.timezone.utc), 'buy_price': 12.42, 'buy_reason': 'recommend', 'buy_total': 2857.6, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 268.0999999999999, 'profit_loss_pct': 9.381998880179168, 'qty': 230.0, 'sell_date': datetime.datetime(2025, 11, 25, 14, 41, 50, 533040, tzinfo=datetime.timezone.utc), 'sell_price': 13.59, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 3125.7, 'ticker': 'WULF'}}, 630: {'ACHV': {'buy_date': datetime.datetime(2025, 11, 26, 11, 50, 42, 861143, tzinfo=datetime.timezone.utc), 'buy_price': 4.59, 'buy_reason': 'recommend', 'buy_total': 656.37, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 41.47000000000003, 'profit_loss_pct': 6.3180827886710285, 'qty': 835.0, 'sell_date': datetime.datetime(2025, 11, 26, 14, 32, 12, 212225, tzinfo=datetime.timezone.utc), 'sell_price': 4.88, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 697.84, 'ticker': 'ACHV'}, 'PALI': {'buy_date': datetime.datetime(2025, 11, 26, 11, 50, 41, 722199, tzinfo=datetime.timezone.utc), 'buy_price': 2.17, 'buy_reason': 'recommend', 'buy_total': 1453.9, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -180.9000000000001, 'profit_loss_pct': -12.44239631336406, 'qty': 1937.0, 'sell_date': datetime.datetime(2025, 12, 1, 16, 11, 50, 943576, tzinfo=datetime.timezone.utc), 'sell_price': 1.9, 'sell_reason': 'stop-loss', 'sell_total': 1273.0, 'ticker': 'PALI'}}, 632: {'AVDL': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 23, 690983, tzinfo=datetime.timezone.utc), 'buy_price': 21.47, 'buy_reason': 'recommend', 'buy_total': 2726.69, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -13.970000000000255, 'profit_loss_pct': -0.5123428039124454, 'qty': 127.0, 'sell_date': datetime.datetime(2025, 12, 2, 20, 46, 0, 629378, tzinfo=datetime.timezone.utc), 'sell_price': 21.36, 'sell_reason': 'hold_dt expired', 'sell_total': 2712.72, 'ticker': 'AVDL'}, 'IRWD': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 21, 574652, tzinfo=datetime.timezone.utc), 'buy_price': 3.83, 'buy_reason': 'recommend', 'buy_total': 2420.56, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -208.55999999999995, 'profit_loss_pct': -8.616187989556133, 'qty': 782.0, 'sell_date': datetime.datetime(2025, 12, 2, 19, 37, 11, 303291, tzinfo=datetime.timezone.utc), 'sell_price': 3.5, 'sell_reason': 'hold_dt expired', 'sell_total': 2212.0, 'ticker': 'IRWD'}, 'MBRX': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 23, 479749, tzinfo=datetime.timezone.utc), 'buy_price': 0.27, 'buy_reason': 'recommend', 'buy_total': 2631.31, 'css_class': 'uk-label-gaining', 'current_price': 7.71, 'profit_loss': 7.4399999999999995, 'profit_loss_pct': 2755.555555555555, 'qty': 10382.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'MBRX'}, 'YYAI': {'buy_date': datetime.datetime(2025, 11, 28, 11, 46, 22, 218880, tzinfo=datetime.timezone.utc), 'buy_price': 1.08, 'buy_reason': 'recommend', 'buy_total': 2774.52, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -328.8299999999999, 'profit_loss_pct': -11.8517797673111, 'qty': 2569.0, 'sell_date': datetime.datetime(2025, 12, 1, 15, 34, 19, 416045, tzinfo=datetime.timezone.utc), 'sell_price': 0.95, 'sell_reason': 'stop-loss', 'sell_total': 2445.69, 'ticker': 'YYAI'}}, 635: {'COMP': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 7, 681373, tzinfo=datetime.timezone.utc), 'buy_price': 10.22, 'buy_reason': 'recommend', 'buy_total': 2994.46, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 96.69000000000005, 'profit_loss_pct': 3.228962818003916, 'qty': 293.0, 'sell_date': datetime.datetime(2025, 12, 1, 20, 13, 11, 234345, tzinfo=datetime.timezone.utc), 'sell_price': 10.55, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 3091.15, 'ticker': 'COMP'}, 'EDIT': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 7, 895448, tzinfo=datetime.timezone.utc), 'buy_price': 2.36, 'buy_reason': 'recommend', 'buy_total': 972.32, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -103.0, 'profit_loss_pct': -10.59322033898305, 'qty': 1270.0, 'sell_date': datetime.datetime(2025, 12, 2, 17, 13, 9, 670952, tzinfo=datetime.timezone.utc), 'sell_price': 2.11, 'sell_reason': 'stop-loss', 'sell_total': 869.32, 'ticker': 'EDIT'}, 'NVTS': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 7, 48264, tzinfo=datetime.timezone.utc), 'buy_price': 8.45, 'buy_reason': 'recommend', 'buy_total': 2332.2, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 33.120000000000346, 'profit_loss_pct': 1.420118343195281, 'qty': 367.0, 'sell_date': datetime.datetime(2025, 12, 3, 18, 55, 13, 980374, tzinfo=datetime.timezone.utc), 'sell_price': 8.57, 'sell_reason': 'hold_dt expired', 'sell_total': 2365.32, 'ticker': 'NVTS'}, 'ONDS': {'buy_date': datetime.datetime(2025, 12, 1, 13, 45, 8, 564772, tzinfo=datetime.timezone.utc), 'buy_price': 7.96, 'buy_reason': 'recommend', 'buy_total': 1727.32, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 60.75999999999999, 'profit_loss_pct': 3.5175879396984917, 'qty': 363.0, 'sell_date': datetime.datetime(2025, 12, 2, 15, 20, 27, 589653, tzinfo=datetime.timezone.utc), 'sell_price': 8.24, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1788.08, 'ticker': 'ONDS'}}, 636: {'CMND': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 127982, tzinfo=datetime.timezone.utc), 'buy_price': 0.13, 'buy_reason': 'recommend', 'buy_total': 2658.52, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 40.039999999999964, 'profit_loss_pct': 1.5061011389795813, 'qty': 20019.0, 'sell_date': datetime.datetime(2025, 12, 2, 17, 9, 6, 43859, tzinfo=datetime.timezone.utc), 'sell_price': 0.13, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2698.56, 'ticker': 'CMND'}, 'DRCT': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 54, 647092, tzinfo=datetime.timezone.utc), 'buy_price': 0.11, 'buy_reason': 'recommend', 'buy_total': 967.88, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -170.96000000000004, 'profit_loss_pct': -17.663346695871393, 'qty': 23461.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 12, 8, 676995, tzinfo=datetime.timezone.utc), 'sell_price': 0.09, 'sell_reason': 'stop-loss', 'sell_total': 796.92, 'ticker': 'DRCT'}, 'GPUS': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 55, 290523, tzinfo=datetime.timezone.utc), 'buy_price': 0.3, 'buy_reason': 'recommend', 'buy_total': 2887.37, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -90.52999999999975, 'profit_loss_pct': -3.135379255169921, 'qty': 9631.0, 'sell_date': datetime.datetime(2025, 12, 4, 19, 41, 2, 227311, tzinfo=datetime.timezone.utc), 'sell_price': 0.29, 'sell_reason': 'hold_dt expired', 'sell_total': 2796.84, 'ticker': 'GPUS'}, 'INHD': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 761055, tzinfo=datetime.timezone.utc), 'buy_price': 0.16, 'buy_reason': 'recommend', 'buy_total': 1738.68, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -265.8100000000002, 'profit_loss_pct': -15.288034600961659, 'qty': 15207.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 34, 41, 489513, tzinfo=datetime.timezone.utc), 'sell_price': 0.14, 'sell_reason': 'stop-loss', 'sell_total': 1472.87, 'ticker': 'INHD'}, 'IRBT': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 54, 867198, tzinfo=datetime.timezone.utc), 'buy_price': 1.62, 'buy_reason': 'recommend', 'buy_total': 1498.5, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 55.5, 'profit_loss_pct': 3.7037037037037033, 'qty': 1665.0, 'sell_date': datetime.datetime(2025, 12, 2, 14, 31, 33, 495866, tzinfo=datetime.timezone.utc), 'sell_price': 1.68, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1554.0, 'ticker': 'IRBT'}, 'METC': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 967363, tzinfo=datetime.timezone.utc), 'buy_price': 15.24, 'buy_reason': 'recommend', 'buy_total': 2042.16, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 80.39999999999986, 'profit_loss_pct': 3.937007874015741, 'qty': 157.0, 'sell_date': datetime.datetime(2025, 12, 2, 14, 37, 40, 899647, tzinfo=datetime.timezone.utc), 'sell_price': 15.84, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2122.56, 'ticker': 'METC'}, 'MSAI': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 340358, tzinfo=datetime.timezone.utc), 'buy_price': 0.55, 'buy_reason': 'recommend', 'buy_total': 1869.32, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 103.01999999999998, 'profit_loss_pct': 5.511094943615859, 'qty': 4511.0, 'sell_date': datetime.datetime(2025, 12, 2, 15, 12, 19, 33365, tzinfo=datetime.timezone.utc), 'sell_price': 0.58, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1972.34, 'ticker': 'MSAI'}, 'PACB': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 55, 508048, tzinfo=datetime.timezone.utc), 'buy_price': 2.24, 'buy_reason': 'recommend', 'buy_total': 1191.68, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 37.24000000000001, 'profit_loss_pct': 3.125000000000001, 'qty': 1143.0, 'sell_date': datetime.datetime(2025, 12, 2, 15, 15, 22, 402922, tzinfo=datetime.timezone.utc), 'sell_price': 2.31, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1228.92, 'ticker': 'PACB'}, 'RZLV': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 55, 718791, tzinfo=datetime.timezone.utc), 'buy_price': 2.81, 'buy_reason': 'recommend', 'buy_total': 511.42, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -60.06, 'profit_loss_pct': -11.743772241992882, 'qty': 938.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 33, 41, 125015, tzinfo=datetime.timezone.utc), 'sell_price': 2.48, 'sell_reason': 'stop-loss', 'sell_total': 451.36, 'ticker': 'RZLV'}, 'WTI': {'buy_date': datetime.datetime(2025, 12, 2, 11, 50, 56, 551982, tzinfo=datetime.timezone.utc), 'buy_price': 1.7, 'buy_reason': 'recommend', 'buy_total': 731.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 47.299999999999955, 'profit_loss_pct': 6.4705882352941115, 'qty': 1397.0, 'sell_date': datetime.datetime(2025, 12, 4, 16, 35, 18, 918746, tzinfo=datetime.timezone.utc), 'sell_price': 1.81, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 778.3, 'ticker': 'WTI'}}, 639: {'AMRX': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 16, 673053, tzinfo=datetime.timezone.utc), 'buy_price': 12.15, 'buy_reason': 'recommend', 'buy_total': 5965.65, 'css_class': 'uk-label-losing', 'current_price': 11.83, 'profit_loss': -0.3200000000000003, 'profit_loss_pct': -2.6337448559670804, 'qty': 491.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'AMRX'}, 'APLT': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 19507, tzinfo=datetime.timezone.utc), 'buy_price': 0.21, 'buy_reason': 'recommend', 'buy_total': 843.57, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 19.3599999999999, 'profit_loss_pct': 2.295008120250827, 'qty': 14831.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 43, 19, 992220, tzinfo=datetime.timezone.utc), 'sell_price': 0.22, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 862.93, 'ticker': 'APLT'}, 'ASPI': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 17, 98435, tzinfo=datetime.timezone.utc), 'buy_price': 5.38, 'buy_reason': 'recommend', 'buy_total': 5794.26, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 344.6399999999994, 'profit_loss_pct': 5.947955390334562, 'qty': 1077.0, 'sell_date': datetime.datetime(2025, 12, 3, 20, 46, 55, 405923, tzinfo=datetime.timezone.utc), 'sell_price': 5.7, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 6138.9, 'ticker': 'ASPI'}, 'ASST': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 249381, tzinfo=datetime.timezone.utc), 'buy_price': 1.05, 'buy_reason': 'recommend', 'buy_total': 2764.65, 'css_class': 'uk-label-losing', 'current_price': 0.987, 'profit_loss': -0.06300000000000006, 'profit_loss_pct': -6.000000000000005, 'qty': 2713.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'ASST'}, 'ATYR': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 296997, tzinfo=datetime.timezone.utc), 'buy_price': 0.71, 'buy_reason': 'recommend', 'buy_total': 2142.71, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 350.71000000000004, 'profit_loss_pct': 16.367590574552786, 'qty': 3616.0, 'sell_date': datetime.datetime(2025, 12, 4, 20, 46, 51, 107327, tzinfo=datetime.timezone.utc), 'sell_price': 0.82, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2493.42, 'ticker': 'ATYR'}, 'BNAI': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 16, 463159, tzinfo=datetime.timezone.utc), 'buy_price': 0.33, 'buy_reason': 'recommend', 'buy_total': 6249.96, 'css_class': 'uk-label-loss', 'current_price': None, 'profit_loss': -1146.1800000000003, 'profit_loss_pct': -18.338997369583172, 'qty': 18945.0, 'sell_date': datetime.datetime(2025, 12, 4, 15, 26, 11, 578220, tzinfo=datetime.timezone.utc), 'sell_price': 0.27, 'sell_reason': 'stop-loss', 'sell_total': 5103.78, 'ticker': 'BNAI'}, 'CHGG': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 483289, tzinfo=datetime.timezone.utc), 'buy_price': 0.95, 'buy_reason': 'recommend', 'buy_total': 2912.45, 'css_class': 'uk-label-losing', 'current_price': 0.8985, 'profit_loss': -0.05149999999999999, 'profit_loss_pct': -5.421052631578947, 'qty': 3068.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'CHGG'}, 'CODX': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 36, 155921, tzinfo=datetime.timezone.utc), 'buy_price': 0.36, 'buy_reason': 'recommend', 'buy_total': 684.48, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 19.949999999999932, 'profit_loss_pct': 2.9146213183730616, 'qty': 7587.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 49, 27, 753635, tzinfo=datetime.timezone.utc), 'sell_price': 0.37, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 704.43, 'ticker': 'CODX'}, 'DFLI': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 506258, tzinfo=datetime.timezone.utc), 'buy_price': 0.7, 'buy_reason': 'recommend', 'buy_total': 13.98, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 0.5199999999999996, 'profit_loss_pct': 3.7195994277539306, 'qty': 3606.0, 'sell_date': datetime.datetime(2025, 12, 3, 14, 58, 50, 998949, tzinfo=datetime.timezone.utc), 'sell_price': 0.73, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 14.5, 'ticker': 'DFLI'}, 'EVGO': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 35, 705308, tzinfo=datetime.timezone.utc), 'buy_price': 3.15, 'buy_reason': 'recommend', 'buy_total': 2835.0, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 216.0, 'profit_loss_pct': 7.6190476190476195, 'qty': 900.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 54, 38, 906532, tzinfo=datetime.timezone.utc), 'sell_price': 3.39, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 3051.0, 'ticker': 'EVGO'}, 'KURA': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 719758, tzinfo=datetime.timezone.utc), 'buy_price': 11.49, 'buy_reason': 'recommend', 'buy_total': 1562.64, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 51.679999999999836, 'profit_loss_pct': 3.30722367275891, 'qty': 232.0, 'sell_date': datetime.datetime(2025, 12, 3, 14, 35, 18, 596065, tzinfo=datetime.timezone.utc), 'sell_price': 11.87, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1614.32, 'ticker': 'KURA'}, 'PDSB': {'buy_date': datetime.datetime(2025, 12, 3, 14, 34, 16, 887969, tzinfo=datetime.timezone.utc), 'buy_price': 0.79, 'buy_reason': 'recommend', 'buy_total': 5947.12, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 227.35000000000036, 'profit_loss_pct': 3.822858795517837, 'qty': 7528.0, 'sell_date': datetime.datetime(2025, 12, 3, 17, 58, 8, 755181, tzinfo=datetime.timezone.utc), 'sell_price': 0.82, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 6174.47, 'ticker': 'PDSB'}, 'SGBX': {'buy_date': datetime.datetime(2025, 12, 3, 11, 51, 37, 53849, tzinfo=datetime.timezone.utc), 'buy_price': 3.05, 'buy_reason': 'recommend', 'buy_total': 2565.05, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 84.09999999999991, 'profit_loss_pct': 3.27868852459016, 'qty': 842.0, 'sell_date': datetime.datetime(2025, 12, 3, 15, 36, 43, 864040, tzinfo=datetime.timezone.utc), 'sell_price': 3.15, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2649.15, 'ticker': 'SGBX'}}, 640: {'COSM': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 23, 330294, tzinfo=datetime.timezone.utc), 'buy_price': 0.5, 'buy_reason': 'recommend', 'buy_total': 2353.78, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 79.7199999999998, 'profit_loss_pct': 3.3868925727977888, 'qty': 4717.0, 'sell_date': datetime.datetime(2025, 12, 4, 19, 23, 47, 960501, tzinfo=datetime.timezone.utc), 'sell_price': 0.52, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2433.5, 'ticker': 'COSM'}, 'HUMA': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 484476, tzinfo=datetime.timezone.utc), 'buy_price': 1.28, 'buy_reason': 'recommend', 'buy_total': 321.28, 'css_class': 'uk-label-gaining', 'current_price': 1.3, 'profit_loss': 0.020000000000000018, 'profit_loss_pct': 1.5625000000000013, 'qty': 1856.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'HUMA'}, 'IMNM': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 23, 118346, tzinfo=datetime.timezone.utc), 'buy_price': 19.29, 'buy_reason': 'recommend', 'buy_total': 2372.67, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 88.55999999999995, 'profit_loss_pct': 3.732503888024881, 'qty': 123.0, 'sell_date': datetime.datetime(2025, 12, 4, 16, 1, 46, 753544, tzinfo=datetime.timezone.utc), 'sell_price': 20.01, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 2461.23, 'ticker': 'IMNM'}, 'NB': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 275021, tzinfo=datetime.timezone.utc), 'buy_price': 5.97, 'buy_reason': 'recommend', 'buy_total': 1414.89, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 68.72999999999979, 'profit_loss_pct': 4.857621440535998, 'qty': 400.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 31, 55, 74801, tzinfo=datetime.timezone.utc), 'sell_price': 6.26, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 1483.62, 'ticker': 'NB'}, 'OVID': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 21, 853553, tzinfo=datetime.timezone.utc), 'buy_price': 1.56, 'buy_reason': 'recommend', 'buy_total': 494.52, 'css_class': 'uk-label-gain', 'current_price': None, 'profit_loss': 19.019999999999982, 'profit_loss_pct': 3.8461538461538427, 'qty': 1563.0, 'sell_date': datetime.datetime(2025, 12, 4, 14, 57, 42, 491668, tzinfo=datetime.timezone.utc), 'sell_price': 1.62, 'sell_reason': 'profit: trailing stop-loss', 'sell_total': 513.54, 'ticker': 'OVID'}, 'PLG': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 694605, tzinfo=datetime.timezone.utc), 'buy_price': 2.41, 'buy_reason': 'recommend', 'buy_total': 2258.17, 'css_class': 'uk-label-losing', 'current_price': 2.39, 'profit_loss': -0.020000000000000018, 'profit_loss_pct': -0.8298755186721999, 'qty': 937.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'PLG'}, 'REAL': {'buy_date': datetime.datetime(2025, 12, 4, 11, 45, 22, 64339, tzinfo=datetime.timezone.utc), 'buy_price': 14.25, 'buy_reason': 'recommend', 'buy_total': 2465.25, 'css_class': 'uk-label-losing', 'current_price': 14.21, 'profit_loss': -0.03999999999999915, 'profit_loss_pct': -0.28070175438595896, 'qty': 173.0, 'sell_date': None, 'sell_price': 0, 'sell_reason': None, 'sell_total': 0, 'ticker': 'REAL'}}}, 'panel': 'picklist', 'picklist_results': '<<queryset of core.TradeBasketPick>>', 'trade_baskets': '<<queryset of core.TradeBasket>>', 'trade_bot': <TradeBot: 1.0.0 Binned Random Forrest 3d PH 3%>} {'block': <Block Node: footer. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"components/footer.html"'>>, <TextNode: '\n '>]>}

Context processors

django.template.context_processors.csrf
Toggle context {'csrf_token': <SimpleLazyObject: 'U5QfSjol0dsbp7hGH6GmiL7qTHaQTc02R3Z3IlCc6eKeKzwJ5D9WiejNwal8xl33'>}
django.template.context_processors.debug
Toggle context {}
django.template.context_processors.request
Toggle context {'request': <WSGIRequest: GET '/trade/bot/54?date_pick=2025-11-21&panel=picklist'>}
django.contrib.auth.context_processors.auth
Toggle context {'user': <SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f3fb5692480>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f3fb5692480>>)}
django.contrib.messages.context_processors.messages
Toggle context {'messages': <FallbackStorage: request=<WSGIRequest: GET '/trade/bot/54?date_pick=2025-11-21&panel=picklist'>>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}}

Cache calls from 1 backend

Summary

Total calls Total time Cache hits Cache misses
0 0 ms 0 0

Commands

add get set get_or_set touch delete clear get_many set_many delete_many has_key incr decr incr_version decr_version
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Signals

Signal Receivers
class_prepared
connection_created register_type_handlers
got_request_exception
m2m_changed
post_delete
post_init
post_migrate create_permissions, create_contenttypes
post_save create_initial_trade_position
pre_delete
pre_init
pre_migrate inject_rename_contenttypes_operations
pre_save
request_finished close_old_connections, close_caches, reset_urlconf
request_started reset_queries, close_old_connections
setting_changed reset_cache, clear_cache_handlers, update_installed_apps, update_connections_time_zone, clear_routers_cache, reset_template_engines, storages_changed, clear_serializers_cache, language_changed, localize_settings_changed, complex_setting_changed, root_urlconf_changed, static_storage_changed, static_finders_changed, form_renderer_changed, auth_password_validators_changed, user_model_swapped, update_toolbar_config, reset_hashers, Options.setting_changed, update_level_tags, uninstall_if_needed, clear_caches, StaticFilesStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties