[INFO] fetching crate hyperliquid-backtest 0.1.1...
[INFO] testing hyperliquid-backtest-0.1.1 against beta-2025-09-21 for beta-1.91-3
[INFO] extracting crate hyperliquid-backtest 0.1.1 into /workspace/builds/worker-0-tc2/source
[INFO] started tweaking crates.io crate hyperliquid-backtest 0.1.1
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate hyperliquid-backtest 0.1.1
[INFO] tweaked toml for crates.io crate hyperliquid-backtest 0.1.1 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate hyperliquid-backtest 0.1.1 on toolchain beta-2025-09-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate hyperliquid-backtest 0.1.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d3b0ba3888d2f4cf63fc3c637046490395e63f1f360f940cab4546f7461be0d1
[INFO] running `Command { std: "docker" "start" "-a" "d3b0ba3888d2f4cf63fc3c637046490395e63f1f360f940cab4546f7461be0d1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d3b0ba3888d2f4cf63fc3c637046490395e63f1f360f940cab4546f7461be0d1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d3b0ba3888d2f4cf63fc3c637046490395e63f1f360f940cab4546f7461be0d1", kill_on_drop: false }`
[INFO] [stdout] d3b0ba3888d2f4cf63fc3c637046490395e63f1f360f940cab4546f7461be0d1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] befdc4333eeba477e2951bdb7a0075a74759d1287afa910b61d78bdeae153aa1
[INFO] running `Command { std: "docker" "start" "-a" "befdc4333eeba477e2951bdb7a0075a74759d1287afa910b61d78bdeae153aa1", kill_on_drop: false }`
[INFO] [stderr]    Compiling hashbrown v0.15.4
[INFO] [stderr]    Compiling cc v1.2.29
[INFO] [stderr]    Compiling rustversion v1.0.21
[INFO] [stderr]    Compiling winnow v0.7.12
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]    Compiling const_format_proc_macros v0.2.34
[INFO] [stderr]    Compiling socket2 v0.5.10
[INFO] [stderr]    Compiling mio v1.0.4
[INFO] [stderr]    Compiling semver v1.0.26
[INFO] [stderr]    Compiling log v0.4.27
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling zeroize v1.8.1
[INFO] [stderr]    Compiling futures-task v0.3.31
[INFO] [stderr]    Compiling parking_lot v0.12.4
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling slab v0.4.10
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling der v0.7.10
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling ff v0.13.1
[INFO] [stderr]    Compiling parity-scale-codec v3.7.5
[INFO] [stderr]    Compiling camino v1.1.10
[INFO] [stderr]    Compiling rustix v1.0.8
[INFO] [stderr]    Compiling indexmap v2.10.0
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling group v0.13.0
[INFO] [stderr]    Compiling sha3 v0.10.8
[INFO] [stderr]    Compiling crypto-bigint v0.5.5
[INFO] [stderr]    Compiling rfc6979 v0.4.0
[INFO] [stderr]    Compiling signature v2.2.0
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.100
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling const_format v0.2.34
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling openssl-sys v0.9.109
[INFO] [stderr]    Compiling fixed-hash v0.8.0
[INFO] [stderr]    Compiling spki v0.7.3
[INFO] [stderr]    Compiling sec1 v0.7.3
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling pkcs8 v0.10.2
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling time-macros v0.2.22
[INFO] [stderr]    Compiling rlp-derive v0.1.0
[INFO] [stderr]    Compiling const-hex v1.14.1
[INFO] [stderr]    Compiling inout v0.1.4
[INFO] [stderr]    Compiling prettyplease v0.2.35
[INFO] [stderr]    Compiling wasm-bindgen v0.2.100
[INFO] [stderr]    Compiling elliptic-curve v0.13.8
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]    Compiling ring v0.16.20
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling ecdsa v0.16.9
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.100
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling tempfile v3.20.0
[INFO] [stderr]    Compiling time v0.3.41
[INFO] [stderr]    Compiling eyre v0.6.12
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling k256 v0.13.4
[INFO] [stderr]    Compiling chrono v0.4.41
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling bs58 v0.5.1
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling rustls v0.21.12
[INFO] [stderr]    Compiling ripemd v0.1.3
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.100
[INFO] [stderr]    Compiling Inflector v0.11.4
[INFO] [stderr]    Compiling bech32 v0.9.1
[INFO] [stderr]    Compiling rustls v0.23.29
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling salsa20 v0.10.2
[INFO] [stderr]    Compiling freetype-sys v0.20.1
[INFO] [stderr]    Compiling pbkdf2 v0.11.0
[INFO] [stderr]    Compiling yeslogic-fontconfig-sys v6.0.0
[INFO] [stderr]    Compiling send_wrapper v0.4.0
[INFO] [stderr]    Compiling scrypt v0.10.0
[INFO] [stderr]    Compiling flate2 v1.1.2
[INFO] [stderr]    Compiling rustls-webpki v0.101.7
[INFO] [stderr]    Compiling sct v0.7.1
[INFO] [stderr]    Compiling rustls-webpki v0.103.4
[INFO] [stderr]    Compiling ctr v0.9.2
[INFO] [stderr]    Compiling aes v0.8.4
[INFO] [stderr]    Compiling pbkdf2 v0.12.2
[INFO] [stderr]    Compiling instant v0.1.13
[INFO] [stderr]    Compiling libloading v0.8.8
[INFO] [stderr]    Compiling color_quant v1.1.0
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling dlib v0.5.2
[INFO] [stderr]    Compiling png v0.17.16
[INFO] [stderr]    Compiling webpki-roots v1.0.1
[INFO] [stderr]    Compiling weezl v0.1.10
[INFO] [stderr]    Compiling font-kit v0.14.3
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling impl-trait-for-tuples v0.2.3
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling derive_more-impl v1.0.0
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling auto_impl v1.3.0
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.100
[INFO] [stderr]    Compiling derive_more v1.0.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.0
[INFO] [stderr]    Compiling bytemuck v1.23.1
[INFO] [stderr]    Compiling jpeg-decoder v0.3.2
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling zerovec v0.11.2
[INFO] [stderr]    Compiling zerotrie v0.2.2
[INFO] [stderr]    Compiling js-sys v0.3.77
[INFO] [stderr]    Compiling gif v0.12.0
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling image v0.24.9
[INFO] [stderr]    Compiling pin-project v1.1.10
[INFO] [stderr]    Compiling tracing-futures v0.2.5
[INFO] [stderr]    Compiling strum v0.26.3
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling futures-locks v0.7.1
[INFO] [stderr]    Compiling rmp v0.8.14
[INFO] [stderr]    Compiling is-terminal v0.4.16
[INFO] [stderr]    Compiling async-stream v0.3.6
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling csv-core v0.1.12
[INFO] [stderr]    Compiling ttf-parser v0.20.0
[INFO] [stderr]    Compiling humantime v2.2.0
[INFO] [stderr]    Compiling tinystr v0.8.1
[INFO] [stderr]    Compiling potential_utf v0.1.2
[INFO] [stderr]    Compiling simple_asn1 v0.6.3
[INFO] [stderr]    Compiling uuid v1.17.0
[INFO] [stderr]    Compiling icu_collections v2.0.0
[INFO] [stderr]    Compiling env_logger v0.10.2
[INFO] [stderr]    Compiling icu_locale_core v2.0.0
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling rand_distr v0.4.3
[INFO] [stderr]    Compiling plotters-bitmap v0.3.7
[INFO] [stderr]    Compiling icu_provider v2.0.0
[INFO] [stderr]    Compiling icu_properties v2.0.1
[INFO] [stderr]    Compiling icu_normalizer v2.0.0
[INFO] [stderr]    Compiling gloo-timers v0.2.6
[INFO] [stderr]    Compiling futures-timer v3.0.3
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.0.3
[INFO] [stderr]    Compiling url v2.5.4
[INFO] [stderr]    Compiling bytes v1.10.1
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling impl-serde v0.4.0
[INFO] [stderr]    Compiling cargo-platform v0.1.9
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling coins-core v0.8.7
[INFO] [stderr]    Compiling uuid v0.8.2
[INFO] [stderr]    Compiling csv v1.3.1
[INFO] [stderr]    Compiling tracing-serde v0.2.0
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling rmp-serde v1.3.0
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling coins-bip32 v0.8.7
[INFO] [stderr]    Compiling pathfinder_simd v0.5.5
[INFO] [stderr]    Compiling jsonwebtoken v8.3.0
[INFO] [stderr]    Compiling eth-keystore v0.5.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.19
[INFO] [stderr]    Compiling cargo_metadata v0.18.1
[INFO] [stderr]    Compiling coins-bip39 v0.8.7
[INFO] [stderr]    Compiling tokio v1.46.1
[INFO] [stderr]    Compiling rlp v0.5.2
[INFO] [stderr]    Compiling http v0.2.12
[INFO] [stderr]    Compiling http v1.3.1
[INFO] [stderr]    Compiling open-fastrlp-derive v0.1.1
[INFO] [stderr]    Compiling pathfinder_geometry v0.5.1
[INFO] [stderr]    Compiling impl-rlp v0.3.0
[INFO] [stderr]    Compiling enr v0.10.0
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling http-body v0.4.6
[INFO] [stderr]    Compiling tungstenite v0.20.1
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling proc-macro-crate v3.3.0
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling parity-scale-codec-derive v3.7.5
[INFO] [stderr]    Compiling scale-info-derive v2.11.6
[INFO] [stderr]    Compiling num_enum_derive v0.7.4
[INFO] [stderr]    Compiling num_enum v0.7.4
[INFO] [stderr]    Compiling tokio-util v0.7.15
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling tokio-rustls v0.24.1
[INFO] [stderr]    Compiling hyper v1.6.0
[INFO] [stderr]    Compiling tokio-rustls v0.26.2
[INFO] [stderr]    Compiling tower v0.5.2
[INFO] [stderr]    Compiling tokio-stream v0.1.17
[INFO] [stderr]    Compiling impl-codec v0.6.0
[INFO] [stderr]    Compiling scale-info v2.11.6
[INFO] [stderr]    Compiling tokio-tungstenite v0.20.1
[INFO] [stderr]    Compiling tower-http v0.6.6
[INFO] [stderr]    Compiling h2 v0.3.27
[INFO] [stderr]    Compiling tokio-test v0.4.4
[INFO] [stderr]    Compiling ethbloom v0.13.0
[INFO] [stderr]    Compiling primitive-types v0.12.2
[INFO] [stderr]    Compiling hyper-util v0.1.15
[INFO] [stderr]    Compiling ethereum-types v0.14.1
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling reqwest v0.12.22
[INFO] [stderr]    Compiling ethabi v18.0.0
[INFO] [stderr]    Compiling open-fastrlp v0.1.4
[INFO] [stderr]    Compiling hyper v0.14.32
[INFO] [stderr]    Compiling ethers-core v2.0.14
[INFO] [stderr]    Compiling yahoo_finance_api v2.4.0
[INFO] [stderr]    Compiling rs-backtester v0.1.2
[INFO] [stderr]    Compiling hyper-rustls v0.24.2
[INFO] [stderr]    Compiling hyper-tls v0.5.0
[INFO] [stderr]    Compiling reqwest v0.11.27
[INFO] [stderr]    Compiling ethers-providers v2.0.14
[INFO] [stderr]    Compiling ethers-contract-abigen v2.0.14
[INFO] [stderr]    Compiling ethers-signers v2.0.14
[INFO] [stderr]    Compiling ethers-etherscan v2.0.14
[INFO] [stderr]    Compiling ethers-addressbook v2.0.14
[INFO] [stderr]    Compiling ethers-contract-derive v2.0.14
[INFO] [stderr]    Compiling ethers-contract v2.0.14
[INFO] [stderr]    Compiling ethers-middleware v2.0.14
[INFO] [stderr]    Compiling ethers v2.0.14
[INFO] [stderr]    Compiling hyperliquid_rust_sdk v0.6.0
[INFO] [stderr]    Compiling hyperliquid-backtest v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `strategy`
[INFO] [stdout]    --> src/paper_trading.rs:681:53
[INFO] [stdout]     |
[INFO] [stdout] 681 |     async fn process_market_data_updates(&mut self, strategy: &dyn TradingStrategy) -> Result<(), PaperTradingError> {
[INFO] [stdout]     |                                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_strategy`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stream`
[INFO] [stdout]    --> src/paper_trading.rs:684:23
[INFO] [stdout]     |
[INFO] [stdout] 684 |             if let Ok(stream) = data_stream.lock() {
[INFO] [stdout]     |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `market_data`
[INFO] [stdout]    --> src/paper_trading.rs:695:13
[INFO] [stdout]     |
[INFO] [stdout] 695 |         for market_data in market_data_vec {
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_market_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `market_data`
[INFO] [stdout]    --> src/real_time_data_stream.rs:622:9
[INFO] [stdout]     |
[INFO] [stdout] 622 |         market_data: Arc<Mutex<HashMap<String, MarketData>>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_market_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `order_books`
[INFO] [stdout]    --> src/real_time_data_stream.rs:623:9
[INFO] [stdout]     |
[INFO] [stdout] 623 |         order_books: Arc<Mutex<HashMap<String, OrderBookSnapshot>>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_order_books`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `recent_trades`
[INFO] [stdout]    --> src/real_time_data_stream.rs:624:9
[INFO] [stdout]     |
[INFO] [stdout] 624 |         recent_trades: Arc<Mutex<HashMap<String, Vec<Trade>>>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recent_trades`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ws_manager`
[INFO] [stdout]    --> src/real_time_data_stream.rs:218:21
[INFO] [stdout]     |
[INFO] [stdout] 218 |         if let Some(ws_manager) = &self.ws_manager {
[INFO] [stdout]     |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ws_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `message_history`
[INFO] [stdout]    --> src/real_time_monitoring.rs:247:13
[INFO] [stdout]     |
[INFO] [stdout] 247 |         let message_history = self.message_history.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message_history`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx`
[INFO] [stdout]    --> src/real_time_monitoring.rs:415:14
[INFO] [stdout]     |
[INFO] [stdout] 415 |         let (tx, rx) = broadcast::channel(100);
[INFO] [stdout]     |              ^^ help: if this is intentional, prefix it with an underscore: `_tx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `now`
[INFO] [stdout]    --> src/live_trading.rs:511:13
[INFO] [stdout]     |
[INFO] [stdout] 511 |         let now = Utc::now().with_timezone(&FixedOffset::east_opt(0).unwrap());
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_now`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet`
[INFO] [stdout]     --> src/live_trading.rs:1109:13
[INFO] [stdout]      |
[INFO] [stdout] 1109 |         let wallet = self.wallet.as_ref().ok_or(LiveTradingError::WalletNotConfigured)?;
[INFO] [stdout]      |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `strategy`
[INFO] [stdout]     --> src/live_trading.rs:1295:53
[INFO] [stdout]      |
[INFO] [stdout] 1295 |     async fn process_market_data_updates(&mut self, strategy: &dyn TradingStrategy) -> Result<(), LiveTradingError> {
[INFO] [stdout]      |                                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_strategy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `market_data`
[INFO] [stdout]     --> src/live_trading.rs:1315:13
[INFO] [stdout]      |
[INFO] [stdout] 1315 |         for market_data in market_data_vec {
[INFO] [stdout]      |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_market_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]   --> src/backtest.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 | use std::io::Write;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TimeZone`
[INFO] [stdout]  --> src/utils.rs:3:37
[INFO] [stdout]   |
[INFO] [stdout] 3 | use chrono::{DateTime, FixedOffset, TimeZone, Utc};
[INFO] [stdout]   |                                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `position_sizes` is never read
[INFO] [stdout]     --> src/backtest.rs:1249:13
[INFO] [stdout]      |
[INFO] [stdout] 1249 |             position_sizes = vec![0.0; self.data.len()];
[INFO] [stdout]      |             ^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `trading_pnl`
[INFO] [stdout]     --> src/backtest.rs:1254:13
[INFO] [stdout]      |
[INFO] [stdout] 1254 |         let trading_pnl = if let Some(last) = self.trading_pnl.last() {
[INFO] [stdout]      |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_trading_pnl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/strategies.rs:234:35
[INFO] [stdout]     |
[INFO] [stdout] 234 | pub fn funding_arbitrage_strategy(data: Data, threshold: f64) -> Strategy {
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/strategies.rs:251:5
[INFO] [stdout]     |
[INFO] [stdout] 251 |     data: Data,
[INFO] [stdout]     |     ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `funding_config`
[INFO] [stdout]    --> src/strategies.rs:254:5
[INFO] [stdout]     |
[INFO] [stdout] 254 |     funding_config: FundingAwareConfig,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_funding_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position_sizes`
[INFO] [stdout]    --> src/funding_report.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |         position_sizes: &[f64],
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position_sizes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `strategy`
[INFO] [stdout]    --> src/trading_mode_impl.rs:242:48
[INFO] [stdout]     |
[INFO] [stdout] 242 |     fn execute_backtest_strategy<S>(&mut self, strategy: S) -> std::result::Result<TradingResult, TradingModeError>
[INFO] [stdout]     |                                                ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_strategy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `volatility_data`
[INFO] [stdout]    --> src/risk_manager.rs:523:21
[INFO] [stdout]     |
[INFO] [stdout] 523 |         if let Some(volatility_data) = self.volatility_data.get(&order.symbol) {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_volatility_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `private_key`
[INFO] [stdout]   --> src/live_trading.rs:50:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn new(private_key: &str) -> Result<Self, String> {
[INFO] [stdout]    |                ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_private_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `order`
[INFO] [stdout]     --> src/live_trading.rs:1223:40
[INFO] [stdout]      |
[INFO] [stdout] 1223 |     fn convert_to_client_cancel(&self, order: &OrderRequest, order_id: &str) -> Result<String, LiveTradingError> {
[INFO] [stdout]      |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_order`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `retry_policy`
[INFO] [stdout]   --> src/live_trading_safety.rs:99:13
[INFO] [stdout]    |
[INFO] [stdout] 99 |         let retry_policy = self.retry_policy.clone();
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_retry_policy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/live_trading_safety.rs:164:13
[INFO] [stdout]     |
[INFO] [stdout] 164 |         let config = self.safety_circuit_breaker_config.clone();
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `funding_pnl`
[INFO] [stdout]    --> src/mode_reporting.rs:754:13
[INFO] [stdout]     |
[INFO] [stdout] 754 |         let funding_pnl = positions.values()
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_funding_pnl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `margin_usage_pct`
[INFO] [stdout]    --> src/mode_reporting.rs:764:13
[INFO] [stdout]     |
[INFO] [stdout] 764 |         let margin_usage_pct = if total_equity > 0.0 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_margin_usage_pct`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current_leverage`
[INFO] [stdout]    --> src/mode_reporting.rs:770:13
[INFO] [stdout]     |
[INFO] [stdout] 770 |         let current_leverage = if total_equity > 0.0 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_leverage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `largest_position` is assigned to, but never used
[INFO] [stdout]    --> src/mode_reporting.rs:825:17
[INFO] [stdout]     |
[INFO] [stdout] 825 |         let mut largest_position = None;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_largest_position` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `most_profitable` is assigned to, but never used
[INFO] [stdout]    --> src/mode_reporting.rs:826:17
[INFO] [stdout]     |
[INFO] [stdout] 826 |         let mut most_profitable = None;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_most_profitable` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `least_profitable` is assigned to, but never used
[INFO] [stdout]    --> src/mode_reporting.rs:827:17
[INFO] [stdout]     |
[INFO] [stdout] 827 |         let mut least_profitable = None;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_least_profitable` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol`
[INFO] [stdout]    --> src/mode_reporting.rs:833:14
[INFO] [stdout]     |
[INFO] [stdout] 833 |         for (symbol, snapshot) in &position_snapshots {
[INFO] [stdout]     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `largest_position` is never read
[INFO] [stdout]    --> src/mode_reporting.rs:838:17
[INFO] [stdout]     |
[INFO] [stdout] 838 |                 largest_position = Some(snapshot.clone());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `most_profitable` is never read
[INFO] [stdout]    --> src/mode_reporting.rs:843:17
[INFO] [stdout]     |
[INFO] [stdout] 843 |                 most_profitable = Some(snapshot.clone());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `least_profitable` is never read
[INFO] [stdout]    --> src/mode_reporting.rs:848:17
[INFO] [stdout]     |
[INFO] [stdout] 848 |                 least_profitable = Some(snapshot.clone());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `circuit_breaker_status`
[INFO] [stdout]    --> src/mode_reporting.rs:906:13
[INFO] [stdout]     |
[INFO] [stdout] 906 |         let circuit_breaker_status = if current_drawdown_pct > 20.0 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_circuit_breaker_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `active_orders`
[INFO] [stdout]    --> src/mode_reporting.rs:741:41
[INFO] [stdout]     |
[INFO] [stdout] 741 | ...                   active_orders: usize,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_active_orders`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `total_funding_pnl` is never read
[INFO] [stdout]     --> src/mode_reporting.rs:1124:17
[INFO] [stdout]      |
[INFO] [stdout] 1124 |         let mut total_funding_pnl = 0.0;
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `metrics`
[INFO] [stdout]     --> src/mode_reporting.rs:1225:64
[INFO] [stdout]      |
[INFO] [stdout] 1225 |     pub fn calculate_risk_adjusted_returns_with_metrics(&self, metrics: &PerformanceMetrics) -> (f64, f64, f64) {
[INFO] [stdout]      |                                                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_metrics`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `fast_period` and `slow_period` are never read
[INFO] [stdout]    --> src/strategies.rs:339:5
[INFO] [stdout]     |
[INFO] [stdout] 337 | pub struct EnhancedSmaStrategy {
[INFO] [stdout]     |            ------------------- fields in this struct
[INFO] [stdout] 338 |     /// Fast period for SMA
[INFO] [stdout] 339 |     fast_period: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 340 |     /// Slow period for SMA
[INFO] [stdout] 341 |     slow_period: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `calculate_sma` is never used
[INFO] [stdout]    --> src/strategies.rs:357:8
[INFO] [stdout]     |
[INFO] [stdout] 346 | impl EnhancedSmaStrategy {
[INFO] [stdout]     | ------------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 357 |     fn calculate_sma(&self, data: &[f64], period: usize) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `last_update` is never read
[INFO] [stdout]    --> src/paper_trading.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout]  78 | pub struct PaperTradingEngine {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 114 |     last_update: DateTime<FixedOffset>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `info_client` and `max_reconnect_attempts` are never read
[INFO] [stdout]    --> src/real_time_data_stream.rs:110:5
[INFO] [stdout]     |
[INFO] [stdout] 105 | pub struct RealTimeDataStream {
[INFO] [stdout]     |            ------------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 110 |     info_client: InfoClient,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     max_reconnect_attempts: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `connected_at`, and `sender` are never read
[INFO] [stdout]    --> src/real_time_monitoring.rs:180:5
[INFO] [stdout]     |
[INFO] [stdout] 178 | struct ClientConnection {
[INFO] [stdout]     |        ---------------- fields in this struct
[INFO] [stdout] 179 |     /// Client ID
[INFO] [stdout] 180 |     id: String,
[INFO] [stdout]     |     ^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     connected_at: DateTime<FixedOffset>,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 189 |     sender: broadcast::Sender<String>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ClientConnection` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]    --> src/real_time_monitoring.rs:364:5
[INFO] [stdout]     |
[INFO] [stdout] 362 | pub struct MonitoringClient {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] 363 |     /// Client ID
[INFO] [stdout] 364 |     id: String,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `calculate_daily_pnl`, `calculate_win_rate`, `calculate_sharpe_ratio`, and `calculate_max_drawdown_pct` are never used
[INFO] [stdout]     --> src/real_time_monitoring.rs:1021:8
[INFO] [stdout]      |
[INFO] [stdout]  886 | impl LiveTradingEngine {
[INFO] [stdout]      | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1021 |     fn calculate_daily_pnl(&self) -> f64 {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1027 |     fn calculate_win_rate(&self) -> f64 {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1033 |     fn calculate_sharpe_ratio(&self) -> f64 {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1039 |     fn calculate_max_drawdown_pct(&self) -> f64 {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `historical_portfolio_values` is never read
[INFO] [stdout]    --> src/risk_manager.rs:320:5
[INFO] [stdout]     |
[INFO] [stdout] 285 | pub struct RiskManager {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 320 |     historical_portfolio_values: Vec<(DateTime<FixedOffset>, f64)>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RiskManager` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `max_connection_retries`, `price_history`, `initial_account_value`, and `recent_critical_alerts` are never read
[INFO] [stdout]    --> src/live_trading.rs:420:5
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct LiveTradingEngine {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 420 |     max_connection_retries: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 465 |     price_history: HashMap<String, VecDeque<(DateTime<FixedOffset>, f64)>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 468 |     initial_account_value: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 474 |     recent_critical_alerts: VecDeque<AlertMessage>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OrderRetryState` is never constructed
[INFO] [stdout]    --> src/live_trading_safety.rs:320:8
[INFO] [stdout]     |
[INFO] [stdout] 320 | struct OrderRetryState {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `start_time` is never read
[INFO] [stdout]    --> src/mode_reporting.rs:466:5
[INFO] [stdout]     |
[INFO] [stdout] 440 | pub struct ModeReportingManager {
[INFO] [stdout]     |            -------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 466 |     start_time: DateTime<FixedOffset>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused implementer of `std::future::Future` that must be used
[INFO] [stdout]    --> src/live_trading_safety.rs:244:13
[INFO] [stdout]     |
[INFO] [stdout] 244 |             self.emergency_stop();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: futures do nothing unless you `.await` or poll them
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused implementer of `std::future::Future` that must be used
[INFO] [stdout]    --> src/live_trading_safety.rs:257:17
[INFO] [stdout]     |
[INFO] [stdout] 257 |                 self.emergency_stop();
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: futures do nothing unless you `.await` or poll them
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused implementer of `std::future::Future` that must be used
[INFO] [stdout]    --> src/live_trading_safety.rs:270:17
[INFO] [stdout]     |
[INFO] [stdout] 270 |                 self.emergency_stop();
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: futures do nothing unless you `.await` or poll them
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 22s
[INFO] running `Command { std: "docker" "inspect" "befdc4333eeba477e2951bdb7a0075a74759d1287afa910b61d78bdeae153aa1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "befdc4333eeba477e2951bdb7a0075a74759d1287afa910b61d78bdeae153aa1", kill_on_drop: false }`
[INFO] [stdout] befdc4333eeba477e2951bdb7a0075a74759d1287afa910b61d78bdeae153aa1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4e9bc84ecf3d3eb0bbe4a42482d4b92d98961af6e219efb3c5f28c840621d688
[INFO] running `Command { std: "docker" "start" "-a" "4e9bc84ecf3d3eb0bbe4a42482d4b92d98961af6e219efb3c5f28c840621d688", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling url v2.5.4
[INFO] [stderr]    Compiling h2 v0.4.11
[INFO] [stderr]    Compiling gloo-timers v0.2.6
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling futures-locks v0.7.1
[INFO] [stderr]    Compiling csv-core v0.1.12
[INFO] [stderr]    Compiling half v2.6.0
[INFO] [stderr]    Compiling tempfile v3.20.0
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling futures-lite v1.13.0
[INFO] [stderr]    Compiling futures-timer v3.0.3
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling csv v1.3.1
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling uuid v1.17.0
[INFO] [stderr]    Compiling tungstenite v0.20.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling rand v0.9.1
[INFO] [stderr]    Compiling clap_builder v4.5.41
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling cargo_metadata v0.18.1
[INFO] [stderr]    Compiling jsonwebtoken v8.3.0
[INFO] [stderr]    Compiling eth-keystore v0.5.0
[INFO] [stderr]    Compiling assert-json-diff v2.0.2
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling serde_qs v0.8.5
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling rusty-fork v0.3.0
[INFO] [stderr]    Compiling deadpool v0.9.5
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling similar v2.7.0
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling proptest v1.7.0
[INFO] [stderr]    Compiling http-types v2.12.0
[INFO] [stderr]    Compiling sysinfo v0.29.11
[INFO] [stderr]    Compiling memory-stats v1.2.0
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling h2 v0.3.27
[INFO] [stderr]    Compiling tokio-tungstenite v0.20.1
[INFO] [stderr]    Compiling tower v0.5.2
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling hyper v1.6.0
[INFO] [stderr]    Compiling tower-http v0.6.6
[INFO] [stderr]    Compiling ethabi v18.0.0
[INFO] [stderr]    Compiling Inflector v0.11.4
[INFO] [stderr]    Compiling clap v4.5.41
[INFO] [stderr]    Compiling env_logger v0.10.2
[INFO] [stderr]    Compiling tracing-subscriber v0.3.19
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling ethers-core v2.0.14
[INFO] [stderr]    Compiling hyper-util v0.1.15
[INFO] [stderr]    Compiling hyper v0.14.32
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling mockito v1.7.0
[INFO] [stderr]    Compiling reqwest v0.12.22
[INFO] [stderr]    Compiling yahoo_finance_api v2.4.0
[INFO] [stderr]    Compiling hyper-rustls v0.24.2
[INFO] [stderr]    Compiling hyper-tls v0.5.0
[INFO] [stderr]    Compiling wiremock v0.5.22
[INFO] [stderr]    Compiling reqwest v0.11.27
[INFO] [stderr]    Compiling rs-backtester v0.1.2
[INFO] [stderr]    Compiling ethers-contract-abigen v2.0.14
[INFO] [stderr]    Compiling ethers-signers v2.0.14
[INFO] [stderr]    Compiling ethers-addressbook v2.0.14
[INFO] [stderr]    Compiling ethers-providers v2.0.14
[INFO] [stderr]    Compiling ethers-etherscan v2.0.14
[INFO] [stderr]    Compiling ethers-contract-derive v2.0.14
[INFO] [stderr]    Compiling ethers-contract v2.0.14
[INFO] [stderr]    Compiling ethers-middleware v2.0.14
[INFO] [stderr]    Compiling ethers v2.0.14
[INFO] [stderr]    Compiling hyperliquid_rust_sdk v0.6.0
[INFO] [stderr]    Compiling hyperliquid-backtest v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] error: expected one of `!` or `::`, found `comprehensive`
[INFO] [stdout]    --> src/tests/regression_tests.rs:720:7
[INFO] [stdout]     |
[INFO] [stdout] 720 |  Test comprehensive API compatibility across versions
[INFO] [stdout]     |       ^^^^^^^^^^^^^ expected one of `!` or `::`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `calculate_volatility_adjusted_position_size` is defined multiple times
[INFO] [stdout]     --> src/risk_manager.rs:1639:5
[INFO] [stdout]      |
[INFO] [stdout] 1304 |     fn calculate_volatility_adjusted_position_size(&self, symbol: &str, base_position_size: f64) -> f64 {
[INFO] [stdout]      |     --------------------------------------------------------------------------------------------------- previous definition of the value `calculate_volatility_adjusted_position_size` here
[INFO] [stdout] ...
[INFO] [stdout] 1639 |     pub fn calculate_volatility_adjusted_position_size(&self, symbol: &str, base_size: f64) -> f64 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `calculate_volatility_adjusted_position_size` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `calculate_volatility_adjusted_position_size` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `get_asset_class` is defined multiple times
[INFO] [stdout]     --> src/risk_manager.rs:1650:5
[INFO] [stdout]      |
[INFO] [stdout] 1205 |     pub fn get_asset_class(&self, symbol: &str) -> Option<&AssetClass> {
[INFO] [stdout]      |     ------------------------------------------------------------------ previous definition of the value `get_asset_class` here
[INFO] [stdout] ...
[INFO] [stdout] 1650 |     pub fn get_asset_class(&self, _symbol: &str) -> Option<String> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `get_asset_class` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `get_asset_class` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `calculate_concentration_after_order` is defined multiple times
[INFO] [stdout]     --> src/risk_manager.rs:1656:5
[INFO] [stdout]      |
[INFO] [stdout] 1215 | /     fn calculate_concentration_after_order(
[INFO] [stdout] 1216 | |         &self,
[INFO] [stdout] 1217 | |         current_positions: &HashMap<String, Position>,
[INFO] [stdout] 1218 | |         order: &OrderRequest,
[INFO] [stdout] ...    |
[INFO] [stdout] 1260 | |     }
[INFO] [stdout]      | |_____- previous definition of the value `calculate_concentration_after_order` here
[INFO] [stdout] ...
[INFO] [stdout] 1656 | /     pub fn calculate_concentration_after_order(
[INFO] [stdout] 1657 | |         &self, 
[INFO] [stdout] 1658 | |         current_positions: &HashMap<String, Position>, 
[INFO] [stdout] 1659 | |         order: &OrderRequest, 
[INFO] [stdout] ...    |
[INFO] [stdout] 1683 | |     }
[INFO] [stdout]      | |_____^ `calculate_concentration_after_order` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `calculate_concentration_after_order` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `validate_correlation_limits` is defined multiple times
[INFO] [stdout]     --> src/risk_manager.rs:1686:5
[INFO] [stdout]      |
[INFO] [stdout] 1385 |       fn validate_correlation_limits(&self, current_positions: &HashMap<String, Position>, order: &OrderRequest) -> Result<()> {
[INFO] [stdout]      |       ------------------------------------------------------------------------------------------------------------------------ previous definition of the value `validate_correlation_limits` here
[INFO] [stdout] ...
[INFO] [stdout] 1686 | /     pub fn validate_correlation_limits(
[INFO] [stdout] 1687 | |         &self, 
[INFO] [stdout] 1688 | |         current_positions: &HashMap<String, Position>, 
[INFO] [stdout] 1689 | |         order: &OrderRequest
[INFO] [stdout] ...    |
[INFO] [stdout] 1704 | |         Ok(())
[INFO] [stdout] 1705 | |     }
[INFO] [stdout]      | |_____^ `validate_correlation_limits` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `validate_correlation_limits` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `validate_portfolio_volatility` is defined multiple times
[INFO] [stdout]     --> src/risk_manager.rs:1708:5
[INFO] [stdout]      |
[INFO] [stdout] 1534 |       fn validate_portfolio_volatility(&self, current_positions: &HashMap<String, Position>, order: &OrderRequest) -> Result<()> {
[INFO] [stdout]      |       -------------------------------------------------------------------------------------------------------------------------- previous definition of the value `validate_portfolio_volatility` here
[INFO] [stdout] ...
[INFO] [stdout] 1708 | /     pub fn validate_portfolio_volatility(
[INFO] [stdout] 1709 | |         &self, 
[INFO] [stdout] 1710 | |         _current_positions: &HashMap<String, Position>, 
[INFO] [stdout] 1711 | |         _order: &OrderRequest
[INFO] [stdout] ...    |
[INFO] [stdout] 1720 | |         Ok(())
[INFO] [stdout] 1721 | |     }
[INFO] [stdout]      | |_____^ `validate_portfolio_volatility` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `validate_portfolio_volatility` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `create_test_hyperliquid_data` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:1652:1
[INFO] [stdout]      |
[INFO] [stdout]  891 | fn create_test_hyperliquid_data() -> HyperliquidData {
[INFO] [stdout]      | ---------------------------------------------------- previous definition of the value `create_test_hyperliquid_data` here
[INFO] [stdout] ...
[INFO] [stdout] 1652 | fn create_test_hyperliquid_data() -> HyperliquidData {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `create_test_hyperliquid_data` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `create_test_hyperliquid_data` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `create_large_test_data` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:1682:1
[INFO] [stdout]      |
[INFO] [stdout]  921 | fn create_large_test_data(size: usize) -> HyperliquidData {
[INFO] [stdout]      | --------------------------------------------------------- previous definition of the value `create_large_test_data` here
[INFO] [stdout] ...
[INFO] [stdout] 1682 | fn create_large_test_data(size: usize) -> HyperliquidData {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `create_large_test_data` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `create_large_test_data` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `create_realistic_test_data` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:1850:1
[INFO] [stdout]      |
[INFO] [stdout] 1259 | fn create_realistic_test_data(ticker: &str, size: usize) -> HyperliquidData {
[INFO] [stdout]      | --------------------------------------------------------------------------- previous definition of the value `create_realistic_test_data` here
[INFO] [stdout] ...
[INFO] [stdout] 1850 | fn create_realistic_test_data(ticker: &str, size: usize) -> HyperliquidData {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `create_realistic_test_data` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `create_realistic_test_data` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `create_v1_api_response` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:2033:1
[INFO] [stdout]      |
[INFO] [stdout] 1711 | fn create_v1_api_response() -> String {
[INFO] [stdout]      | ------------------------------------- previous definition of the value `create_v1_api_response` here
[INFO] [stdout] ...
[INFO] [stdout] 2033 | fn create_v1_api_response() -> String {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `create_v1_api_response` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `create_v1_api_response` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `create_v2_api_response` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:2049:1
[INFO] [stdout]      |
[INFO] [stdout] 1727 | fn create_v2_api_response() -> String {
[INFO] [stdout]      | ------------------------------------- previous definition of the value `create_v2_api_response` here
[INFO] [stdout] ...
[INFO] [stdout] 2049 | fn create_v2_api_response() -> String {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `create_v2_api_response` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `create_v2_api_response` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `parse_api_response` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:2066:1
[INFO] [stdout]      |
[INFO] [stdout] 1744 | fn parse_api_response(response: &str) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]      | ------------------------------------------------------------------------------- previous definition of the value `parse_api_response` here
[INFO] [stdout] ...
[INFO] [stdout] 2066 | fn parse_api_response(response: &str) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `parse_api_response` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `parse_api_response` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `validate_hyperliquid_data` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:2072:1
[INFO] [stdout]      |
[INFO] [stdout] 1750 | fn validate_hyperliquid_data(data: &HyperliquidData) -> Result<(), String> {
[INFO] [stdout]      | -------------------------------------------------------------------------- previous definition of the value `validate_hyperliquid_data` here
[INFO] [stdout] ...
[INFO] [stdout] 2072 | fn validate_hyperliquid_data(data: &HyperliquidData) -> Result<(), String> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `validate_hyperliquid_data` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `validate_hyperliquid_data` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `create_missing_ohlc_data` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:2089:1
[INFO] [stdout]      |
[INFO] [stdout] 1767 | fn create_missing_ohlc_data() -> HyperliquidData {
[INFO] [stdout]      | ------------------------------------------------ previous definition of the value `create_missing_ohlc_data` here
[INFO] [stdout] ...
[INFO] [stdout] 2089 | fn create_missing_ohlc_data() -> HyperliquidData {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `create_missing_ohlc_data` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `create_missing_ohlc_data` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `create_inconsistent_timestamp_data` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:2106:1
[INFO] [stdout]      |
[INFO] [stdout] 1784 | fn create_inconsistent_timestamp_data() -> HyperliquidData {
[INFO] [stdout]      | ---------------------------------------------------------- previous definition of the value `create_inconsistent_timestamp_data` here
[INFO] [stdout] ...
[INFO] [stdout] 2106 | fn create_inconsistent_timestamp_data() -> HyperliquidData {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `create_inconsistent_timestamp_data` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `create_inconsistent_timestamp_data` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `create_negative_price_data` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:2130:1
[INFO] [stdout]      |
[INFO] [stdout] 1808 | fn create_negative_price_data() -> HyperliquidData {
[INFO] [stdout]      | -------------------------------------------------- previous definition of the value `create_negative_price_data` here
[INFO] [stdout] ...
[INFO] [stdout] 2130 | fn create_negative_price_data() -> HyperliquidData {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `create_negative_price_data` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `create_negative_price_data` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `create_extreme_value_data` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:2151:1
[INFO] [stdout]      |
[INFO] [stdout] 1829 | fn create_extreme_value_data() -> HyperliquidData {
[INFO] [stdout]      | ------------------------------------------------- previous definition of the value `create_extreme_value_data` here
[INFO] [stdout] ...
[INFO] [stdout] 2151 | fn create_extreme_value_data() -> HyperliquidData {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `create_extreme_value_data` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `create_extreme_value_data` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `create_realistic_test_data` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:2172:1
[INFO] [stdout]      |
[INFO] [stdout] 1259 | fn create_realistic_test_data(ticker: &str, size: usize) -> HyperliquidData {
[INFO] [stdout]      | --------------------------------------------------------------------------- previous definition of the value `create_realistic_test_data` here
[INFO] [stdout] ...
[INFO] [stdout] 2172 | fn create_realistic_test_data(ticker: &str, size: usize) -> HyperliquidData {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `create_realistic_test_data` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `create_realistic_test_data` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `create_test_hyperliquid_data` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:2331:1
[INFO] [stdout]      |
[INFO] [stdout]  891 | fn create_test_hyperliquid_data() -> HyperliquidData {
[INFO] [stdout]      | ---------------------------------------------------- previous definition of the value `create_test_hyperliquid_data` here
[INFO] [stdout] ...
[INFO] [stdout] 2331 | fn create_test_hyperliquid_data() -> HyperliquidData {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `create_test_hyperliquid_data` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `create_test_hyperliquid_data` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `create_large_test_data` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:2336:1
[INFO] [stdout]      |
[INFO] [stdout]  921 | fn create_large_test_data(size: usize) -> HyperliquidData {
[INFO] [stdout]      | --------------------------------------------------------- previous definition of the value `create_large_test_data` here
[INFO] [stdout] ...
[INFO] [stdout] 2336 | fn create_large_test_data(size: usize) -> HyperliquidData {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `create_large_test_data` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `create_large_test_data` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `create_realistic_test_data` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:2341:1
[INFO] [stdout]      |
[INFO] [stdout] 1259 | fn create_realistic_test_data(ticker: &str, size: usize) -> HyperliquidData {
[INFO] [stdout]      | --------------------------------------------------------------------------- previous definition of the value `create_realistic_test_data` here
[INFO] [stdout] ...
[INFO] [stdout] 2341 | fn create_realistic_test_data(ticker: &str, size: usize) -> HyperliquidData {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `create_realistic_test_data` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `create_realistic_test_data` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `create_high_volatility_data` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:2381:1
[INFO] [stdout]      |
[INFO] [stdout] 1349 | fn create_high_volatility_data() -> HyperliquidData {
[INFO] [stdout]      | --------------------------------------------------- previous definition of the value `create_high_volatility_data` here
[INFO] [stdout] ...
[INFO] [stdout] 2381 | fn create_high_volatility_data(size: usize) -> HyperliquidData {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `create_high_volatility_data` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `create_high_volatility_data` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `test_api_rate_limiting_simulation` is defined multiple times
[INFO] [stdout]    --> src/tests/integration_tests.rs:950:7
[INFO] [stdout]     |
[INFO] [stdout] 851 | async fn test_api_rate_limiting_simulation() {
[INFO] [stdout]     |       -------------------------------------- previous definition of the value `test_api_rate_limiting_simulation` here
[INFO] [stdout] ...
[INFO] [stdout] 950 | async fn test_api_rate_limiting_simulation() {
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `test_api_rate_limiting_simulation` redefined here
[INFO] [stdout]     |
[INFO] [stdout]     = note: `test_api_rate_limiting_simulation` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `test_network_failure_resilience` is defined multiple times
[INFO] [stdout]    --> src/tests/integration_tests.rs:963:7
[INFO] [stdout]     |
[INFO] [stdout] 864 | async fn test_network_failure_resilience() {
[INFO] [stdout]     |       ------------------------------------ previous definition of the value `test_network_failure_resilience` here
[INFO] [stdout] ...
[INFO] [stdout] 963 | async fn test_network_failure_resilience() {
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `test_network_failure_resilience` redefined here
[INFO] [stdout]     |
[INFO] [stdout]     = note: `test_network_failure_resilience` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `test_data_integrity_validation` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:1567:7
[INFO] [stdout]      |
[INFO] [stdout]  986 | async fn test_data_integrity_validation() {
[INFO] [stdout]      |       ----------------------------------- previous definition of the value `test_data_integrity_validation` here
[INFO] [stdout] ...
[INFO] [stdout] 1567 | async fn test_data_integrity_validation() {
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `test_data_integrity_validation` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `test_data_integrity_validation` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `test_api_compatibility_regression` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:1892:7
[INFO] [stdout]      |
[INFO] [stdout] 1511 | async fn test_api_compatibility_regression() {
[INFO] [stdout]      |       -------------------------------------- previous definition of the value `test_api_compatibility_regression` here
[INFO] [stdout] ...
[INFO] [stdout] 1892 | async fn test_api_compatibility_regression() {
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `test_api_compatibility_regression` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `test_api_compatibility_regression` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `test_network_resilience` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:1920:7
[INFO] [stdout]      |
[INFO] [stdout] 1539 | async fn test_network_resilience() {
[INFO] [stdout]      |       ---------------------------- previous definition of the value `test_network_resilience` here
[INFO] [stdout] ...
[INFO] [stdout] 1920 | async fn test_network_resilience() {
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `test_network_resilience` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `test_network_resilience` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `test_data_integrity_validation` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:1948:7
[INFO] [stdout]      |
[INFO] [stdout]  986 | async fn test_data_integrity_validation() {
[INFO] [stdout]      |       ----------------------------------- previous definition of the value `test_data_integrity_validation` here
[INFO] [stdout] ...
[INFO] [stdout] 1948 | async fn test_data_integrity_validation() {
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `test_data_integrity_validation` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `test_data_integrity_validation` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `test_performance_under_load` is defined multiple times
[INFO] [stdout]     --> src/tests/integration_tests.rs:1977:7
[INFO] [stdout]      |
[INFO] [stdout] 1596 | async fn test_performance_under_load() {
[INFO] [stdout]      |       -------------------------------- previous definition of the value `test_performance_under_load` here
[INFO] [stdout] ...
[INFO] [stdout] 1977 | async fn test_performance_under_load() {
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `test_performance_under_load` redefined here
[INFO] [stdout]      |
[INFO] [stdout]      = note: `test_performance_under_load` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `strategy`
[INFO] [stdout]    --> src/paper_trading.rs:681:53
[INFO] [stdout]     |
[INFO] [stdout] 681 |     async fn process_market_data_updates(&mut self, strategy: &dyn TradingStrategy) -> Result<(), PaperTradingError> {
[INFO] [stdout]     |                                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_strategy`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stream`
[INFO] [stdout]    --> src/paper_trading.rs:684:23
[INFO] [stdout]     |
[INFO] [stdout] 684 |             if let Ok(stream) = data_stream.lock() {
[INFO] [stdout]     |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `market_data`
[INFO] [stdout]    --> src/paper_trading.rs:695:13
[INFO] [stdout]     |
[INFO] [stdout] 695 |         for market_data in market_data_vec {
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_market_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `market_data`
[INFO] [stdout]    --> src/real_time_data_stream.rs:622:9
[INFO] [stdout]     |
[INFO] [stdout] 622 |         market_data: Arc<Mutex<HashMap<String, MarketData>>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_market_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `order_books`
[INFO] [stdout]    --> src/real_time_data_stream.rs:623:9
[INFO] [stdout]     |
[INFO] [stdout] 623 |         order_books: Arc<Mutex<HashMap<String, OrderBookSnapshot>>>,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_order_books`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `recent_trades`
[INFO] [stdout]    --> src/real_time_data_stream.rs:624:9
[INFO] [stdout]     |
[INFO] [stdout] 624 |         recent_trades: Arc<Mutex<HashMap<String, Vec<Trade>>>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recent_trades`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ws_manager`
[INFO] [stdout]    --> src/real_time_data_stream.rs:218:21
[INFO] [stdout]     |
[INFO] [stdout] 218 |         if let Some(ws_manager) = &self.ws_manager {
[INFO] [stdout]     |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ws_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/strategy_consistency_tests.rs:230:1
[INFO] [stdout]     |
[INFO] [stdout] 230 | fn test_strategy_consistency_backtest_mode() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/strategy_consistency_tests.rs:337:1
[INFO] [stdout]     |
[INFO] [stdout] 337 | fn test_strategy_signals_consistency() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/strategy_consistency_tests.rs:437:1
[INFO] [stdout]     |
[INFO] [stdout] 437 | fn test_trading_mode_manager_consistency() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/performance_stress_tests.rs:195:1
[INFO] [stdout]     |
[INFO] [stdout] 195 | fn test_backtest_performance_small_dataset() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/performance_stress_tests.rs:221:1
[INFO] [stdout]     |
[INFO] [stdout] 221 | fn test_backtest_performance_medium_dataset() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/performance_stress_tests.rs:247:1
[INFO] [stdout]     |
[INFO] [stdout] 247 | fn test_backtest_performance_large_dataset() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/performance_stress_tests.rs:312:1
[INFO] [stdout]     |
[INFO] [stdout] 312 | fn test_multi_asset_backtest_performance() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/performance_stress_tests.rs:358:1
[INFO] [stdout]     |
[INFO] [stdout] 358 | fn test_funding_calculation_performance() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/performance_stress_tests.rs:385:1
[INFO] [stdout]     |
[INFO] [stdout] 385 | fn test_memory_usage_large_dataset() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/performance_stress_tests.rs:414:1
[INFO] [stdout]     |
[INFO] [stdout] 414 | fn test_stress_test_rapid_market_data() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/performance_stress_tests.rs:530:1
[INFO] [stdout]     |
[INFO] [stdout] 530 | fn test_stress_test_multiple_strategies() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]   --> src/tests/safety_validation_tests.rs:28:1
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn test_risk_manager_position_size_limits() {
[INFO] [stdout]    | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]   --> src/tests/safety_validation_tests.rs:71:1
[INFO] [stdout]    |
[INFO] [stdout] 71 | fn test_risk_manager_leverage_limits() {
[INFO] [stdout]    | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/safety_validation_tests.rs:128:1
[INFO] [stdout]     |
[INFO] [stdout] 128 | fn test_risk_manager_concentration_limits() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/safety_validation_tests.rs:172:1
[INFO] [stdout]     |
[INFO] [stdout] 172 | fn test_risk_manager_daily_loss_limits() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/safety_validation_tests.rs:216:1
[INFO] [stdout]     |
[INFO] [stdout] 216 | fn test_risk_manager_stop_loss_generation() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/safety_validation_tests.rs:285:1
[INFO] [stdout]     |
[INFO] [stdout] 285 | fn test_risk_manager_drawdown_protection() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/workflow_tests.rs:276:1
[INFO] [stdout]     |
[INFO] [stdout] 276 | fn test_complete_strategy_development_workflow() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/workflow_tests.rs:491:1
[INFO] [stdout]     |
[INFO] [stdout] 491 | fn test_mode_transition_workflow() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/workflow_tests.rs:625:1
[INFO] [stdout]     |
[INFO] [stdout] 625 | fn test_production_deployment_validation() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: the `async` keyword is missing from the function declaration
[INFO] [stdout]    --> src/tests/workflow_tests.rs:745:1
[INFO] [stdout]     |
[INFO] [stdout] 745 | fn test_regression_suite() {
[INFO] [stdout]     | ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `message_history`
[INFO] [stdout]    --> src/real_time_monitoring.rs:247:13
[INFO] [stdout]     |
[INFO] [stdout] 247 |         let message_history = self.message_history.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message_history`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1205:28
[INFO] [stdout]      |
[INFO] [stdout] 1205 |     pub fn get_asset_class(&self, symbol: &str) -> Option<&AssetClass> {
[INFO] [stdout]      |                            ^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1210:28
[INFO] [stdout]      |
[INFO] [stdout] 1210 |     pub fn set_asset_class(&mut self, symbol: String, asset_class: AssetClass) {
[INFO] [stdout]      |                            ^^^^^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1216:9
[INFO] [stdout]      |
[INFO] [stdout] 1216 |         &self,
[INFO] [stdout]      |         ^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1263:35
[INFO] [stdout]      |
[INFO] [stdout] 1263 |     pub fn update_volatility_data(&mut self, symbol: String, price_history: Vec<f64>) {
[INFO] [stdout]      |                                   ^^^^^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1304:52
[INFO] [stdout]      |
[INFO] [stdout] 1304 |     fn calculate_volatility_adjusted_position_size(&self, symbol: &str, base_position_size: f64) -> f64 {
[INFO] [stdout]      |                                                    ^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1322:36
[INFO] [stdout]      |
[INFO] [stdout] 1322 |     pub fn update_correlation_data(&mut self, symbol1: String, symbol2: String, price_history1: &[f64], price_history2: &[f64]) {
[INFO] [stdout]      |                                    ^^^^^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1379:28
[INFO] [stdout]      |
[INFO] [stdout] 1379 |     pub fn get_correlation(&self, symbol1: &str, symbol2: &str) -> Option<f64> {
[INFO] [stdout]      |                            ^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1385:36
[INFO] [stdout]      |
[INFO] [stdout] 1385 |     fn validate_correlation_limits(&self, current_positions: &HashMap<String, Position>, order: &OrderRequest) -> Result<()> {
[INFO] [stdout]      |                                    ^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1419:37
[INFO] [stdout]      |
[INFO] [stdout] 1419 |     pub fn update_portfolio_metrics(&mut self) {
[INFO] [stdout]      |                                     ^^^^^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1433:39
[INFO] [stdout]      |
[INFO] [stdout] 1433 |     fn calculate_portfolio_volatility(&mut self) {
[INFO] [stdout]      |                                       ^^^^^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1465:27
[INFO] [stdout]      |
[INFO] [stdout] 1465 |     fn calculate_drawdown(&mut self) {
[INFO] [stdout]      |                           ^^^^^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1495:32
[INFO] [stdout]      |
[INFO] [stdout] 1495 |     fn calculate_value_at_risk(&mut self) {
[INFO] [stdout]      |                                ^^^^^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1534:38
[INFO] [stdout]      |
[INFO] [stdout] 1534 |     fn validate_portfolio_volatility(&self, current_positions: &HashMap<String, Position>, order: &OrderRequest) -> Result<()> {
[INFO] [stdout]      |                                      ^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1582:48
[INFO] [stdout]      |
[INFO] [stdout] 1582 |     pub fn update_portfolio_value_with_history(&mut self, new_value: f64, realized_pnl_delta: f64) -> Result<()> {
[INFO] [stdout]      |                                                ^^^^^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1619:34
[INFO] [stdout]      |
[INFO] [stdout] 1619 |     pub fn get_portfolio_metrics(&self) -> &PortfolioMetrics {
[INFO] [stdout]      |                                  ^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1624:32
[INFO] [stdout]      |
[INFO] [stdout] 1624 |     pub fn get_volatility_data(&self, symbol: &str) -> Option<&VolatilityData> {
[INFO] [stdout]      |                                ^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1629:36
[INFO] [stdout]      |
[INFO] [stdout] 1629 |     pub fn get_all_volatility_data(&self) -> &HashMap<String, VolatilityData> {
[INFO] [stdout]      |                                    ^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1634:37
[INFO] [stdout]      |
[INFO] [stdout] 1634 |     pub fn get_all_correlation_data(&self) -> &HashMap<(String, String), CorrelationData> {
[INFO] [stdout]      |                                     ^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1639:56
[INFO] [stdout]      |
[INFO] [stdout] 1639 |     pub fn calculate_volatility_adjusted_position_size(&self, symbol: &str, base_size: f64) -> f64 {
[INFO] [stdout]      |                                                        ^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1650:28
[INFO] [stdout]      |
[INFO] [stdout] 1650 |     pub fn get_asset_class(&self, _symbol: &str) -> Option<String> {
[INFO] [stdout]      |                            ^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1657:9
[INFO] [stdout]      |
[INFO] [stdout] 1657 |         &self, 
[INFO] [stdout]      |         ^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1687:9
[INFO] [stdout]      |
[INFO] [stdout] 1687 |         &self, 
[INFO] [stdout]      |         ^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `self` parameter is only allowed in associated functions
[INFO] [stdout]     --> src/risk_manager.rs:1709:9
[INFO] [stdout]      |
[INFO] [stdout] 1709 |         &self, 
[INFO] [stdout]      |         ^^^^^ not semantically valid as function parameter
[INFO] [stdout]      |
[INFO] [stdout]      = note: associated functions are those in `impl` or `trait` definitions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `ethers`
[INFO] [stdout]  --> src/tests/live_trading_tests.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ethers::signers::LocalWallet;
[INFO] [stdout]   |     ^^^^^^ use of unresolved module or unlinked crate `ethers`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `ethers`, use `cargo add ethers` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `ethers`
[INFO] [stdout]     --> src/live_trading.rs:1504:9
[INFO] [stdout]      |
[INFO] [stdout] 1504 |     use ethers::signers::LocalWallet;
[INFO] [stdout]      |         ^^^^^^ use of unresolved module or unlinked crate `ethers`
[INFO] [stdout]      |
[INFO] [stdout]      = help: if you wanted to use a crate named `ethers`, use `cargo add ethers` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx`
[INFO] [stdout]    --> src/real_time_monitoring.rs:415:14
[INFO] [stdout]     |
[INFO] [stdout] 415 |         let (tx, rx) = broadcast::channel(100);
[INFO] [stdout]     |              ^^ help: if this is intentional, prefix it with an underscore: `_tx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `now`
[INFO] [stdout]    --> src/live_trading.rs:511:13
[INFO] [stdout]     |
[INFO] [stdout] 511 |         let now = Utc::now().with_timezone(&FixedOffset::east_opt(0).unwrap());
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_now`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::strategies::TradingStrategy`, `crate::strategies::create_funding_arbitrage_strategy`, `crate::strategies::create_enhanced_sma_strategy`, `crate::strategies::create_strategy_template`
[INFO] [stdout]  --> src/tests/strategies_tests.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |         TradingStrategy, FundingAwareConfig,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^ no `TradingStrategy` in `strategies`
[INFO] [stdout] 8 |         create_funding_arbitrage_strategy, create_enhanced_sma_strategy, create_strategy_template
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^ no `create_strategy_template` in `strategies`
[INFO] [stdout]   |         |                                  |
[INFO] [stdout]   |         |                                  no `create_enhanced_sma_strategy` in `strategies`
[INFO] [stdout]   |         no `create_funding_arbitrage_strategy` in `strategies`
[INFO] [stdout]   |         help: a similar name exists in the module: `funding_arbitrage_strategy`
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider importing one of these traits instead:
[INFO] [stdout]           crate::TradingStrategy
[INFO] [stdout]           crate::unified_data_impl::TradingStrategy
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet`
[INFO] [stdout]     --> src/live_trading.rs:1109:13
[INFO] [stdout]      |
[INFO] [stdout] 1109 |         let wallet = self.wallet.as_ref().ok_or(LiveTradingError::WalletNotConfigured)?;
[INFO] [stdout]      |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::trading_mode::TradingModeManager`
[INFO] [stdout]  --> src/tests/trading_mode_tests.rs:2:18
[INFO] [stdout]   |
[INFO] [stdout] 2 |     TradingMode, TradingModeManager, TradingConfig, RiskConfig, SlippageConfig, ApiConfig
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |                  |
[INFO] [stdout]   |                  no `TradingModeManager` in `trading_mode`
[INFO] [stdout]   |                  help: a similar name exists in the module: `TradingModeError`
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider importing this struct through its public re-export instead:
[INFO] [stdout]           crate::TradingModeManager
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `strategy`
[INFO] [stdout]     --> src/live_trading.rs:1295:53
[INFO] [stdout]      |
[INFO] [stdout] 1295 |     async fn process_market_data_updates(&mut self, strategy: &dyn TradingStrategy) -> Result<(), LiveTradingError> {
[INFO] [stdout]      |                                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_strategy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `market_data`
[INFO] [stdout]     --> src/live_trading.rs:1315:13
[INFO] [stdout]      |
[INFO] [stdout] 1315 |         for market_data in market_data_vec {
[INFO] [stdout]      |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_market_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::trading_mode_impl::OrderRequest`, `crate::trading_mode_impl::OrderSide`, `crate::trading_mode_impl::OrderType`, `crate::trading_mode_impl::TimeInForce`
[INFO] [stdout]  --> src/tests/risk_manager_tests.rs:6:42
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::trading_mode_impl::{Position, OrderRequest, OrderSide, OrderType, TimeInForce};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^ no `TimeInForce` in `trading_mode_impl`
[INFO] [stdout]   |                                          |             |          |
[INFO] [stdout]   |                                          |             |          no `OrderType` in `trading_mode_impl`
[INFO] [stdout]   |                                          |             no `OrderSide` in `trading_mode_impl`
[INFO] [stdout]   |                                          no `OrderRequest` in `trading_mode_impl`
[INFO] [stdout]   |                                          help: a similar name exists in the module: `OrderResult`
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider importing one of these structs instead:
[INFO] [stdout]           crate::OrderRequest
[INFO] [stdout]           crate::tests::standalone_unified_data_tests::OrderRequest
[INFO] [stdout]           crate::unified_data_impl::OrderRequest
[INFO] [stdout]   = help: consider importing one of these enums instead:
[INFO] [stdout]           crate::OrderSide
[INFO] [stdout]           crate::tests::standalone_unified_data_tests::OrderSide
[INFO] [stdout]           crate::unified_data_impl::OrderSide
[INFO] [stdout]   = help: consider importing one of these enums instead:
[INFO] [stdout]           crate::OrderType
[INFO] [stdout]           crate::tests::standalone_unified_data_tests::OrderType
[INFO] [stdout]           crate::unified_data::OrderType
[INFO] [stdout]           crate::unified_data_impl::OrderType
[INFO] [stdout]   = help: consider importing one of these enums instead:
[INFO] [stdout]           crate::TimeInForce
[INFO] [stdout]           crate::tests::standalone_unified_data_tests::TimeInForce
[INFO] [stdout]           crate::unified_data_impl::TimeInForce
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `ethers`
[INFO] [stdout]  --> src/tests/live_trading_safety_tests.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ethers::signers::LocalWallet;
[INFO] [stdout]   |     ^^^^^^ use of unresolved module or unlinked crate `ethers`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `ethers`, use `cargo add ethers` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::trading_mode_impl::OrderRequest`, `crate::trading_mode_impl::OrderSide`, `crate::trading_mode_impl::OrderType`, `crate::trading_mode_impl::TimeInForce`
[INFO] [stdout]  --> src/tests/advanced_risk_controls_tests.rs:8:46
[INFO] [stdout]   |
[INFO] [stdout] 8 |     use crate::trading_mode_impl::{Position, OrderRequest, OrderSide, OrderType, TimeInForce};
[INFO] [stdout]   |                                              ^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^ no `TimeInForce` in `trading_mode_impl`
[INFO] [stdout]   |                                              |             |          |
[INFO] [stdout]   |                                              |             |          no `OrderType` in `trading_mode_impl`
[INFO] [stdout]   |                                              |             no `OrderSide` in `trading_mode_impl`
[INFO] [stdout]   |                                              no `OrderRequest` in `trading_mode_impl`
[INFO] [stdout]   |                                              help: a similar name exists in the module: `OrderResult`
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider importing one of these structs instead:
[INFO] [stdout]           crate::OrderRequest
[INFO] [stdout]           crate::tests::standalone_unified_data_tests::OrderRequest
[INFO] [stdout]           crate::unified_data_impl::OrderRequest
[INFO] [stdout]   = help: consider importing one of these enums instead:
[INFO] [stdout]           crate::OrderSide
[INFO] [stdout]           crate::tests::standalone_unified_data_tests::OrderSide
[INFO] [stdout]           crate::unified_data_impl::OrderSide
[INFO] [stdout]   = help: consider importing one of these enums instead:
[INFO] [stdout]           crate::OrderType
[INFO] [stdout]           crate::tests::standalone_unified_data_tests::OrderType
[INFO] [stdout]           crate::unified_data::OrderType
[INFO] [stdout]           crate::unified_data_impl::OrderType
[INFO] [stdout]   = help: consider importing one of these enums instead:
[INFO] [stdout]           crate::TimeInForce
[INFO] [stdout]           crate::tests::standalone_unified_data_tests::TimeInForce
[INFO] [stdout]           crate::unified_data_impl::TimeInForce
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `ethers`
[INFO] [stdout]  --> src/tests/live_trading_integration_tests.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ethers::signers::LocalWallet;
[INFO] [stdout]   |     ^^^^^^ use of unresolved module or unlinked crate `ethers`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `ethers`, use `cargo add ethers` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::strategies::trading_strategy`
[INFO] [stdout]  --> src/tests/trading_strategy_tests.rs:8:28
[INFO] [stdout]   |
[INFO] [stdout] 8 |     use crate::strategies::trading_strategy::{
[INFO] [stdout]   |                            ^^^^^^^^^^^^^^^^ could not find `trading_strategy` in `strategies`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::trading_mode::TradingModeManager`
[INFO] [stdout]   --> src/tests/strategy_consistency_tests.rs:11:18
[INFO] [stdout]    |
[INFO] [stdout] 11 |     TradingMode, TradingModeManager, TradingConfig, RiskConfig, SlippageConfig, ApiConfig
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  no `TradingModeManager` in `trading_mode`
[INFO] [stdout]    |                  help: a similar name exists in the module: `TradingModeError`
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider importing this struct through its public re-export instead:
[INFO] [stdout]            crate::TradingModeManager
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::trading_mode::TradingModeManager`
[INFO] [stdout]   --> src/tests/workflow_tests.rs:11:18
[INFO] [stdout]    |
[INFO] [stdout] 11 |     TradingMode, TradingModeManager, TradingConfig, RiskConfig, SlippageConfig, ApiConfig
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  no `TradingModeManager` in `trading_mode`
[INFO] [stdout]    |                  help: a similar name exists in the module: `TradingModeError`
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider importing this struct through its public re-export instead:
[INFO] [stdout]            crate::TradingModeManager
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::unified_data::OrderFill`
[INFO] [stdout]   --> src/tests/workflow_tests.rs:16:47
[INFO] [stdout]    |
[INFO] [stdout] 16 |     TradingStrategy, Signal, SignalDirection, OrderFill, FundingPayment
[INFO] [stdout]    |                                               ^^^^^^^^^
[INFO] [stdout]    |                                               |
[INFO] [stdout]    |                                               no `OrderFill` in `unified_data`
[INFO] [stdout]    |                                               help: a similar name exists in the module: `OrderSide`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `rs_backtester::prelude`
[INFO] [stdout]    --> src/tests/integration_tests.rs:390:24
[INFO] [stdout]     |
[INFO] [stdout] 390 |     use rs_backtester::prelude::*;
[INFO] [stdout]     |                        ^^^^^^^ could not find `prelude` in `rs_backtester`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `rs_backtester::prelude`
[INFO] [stdout]     --> src/tests/integration_tests.rs:2266:24
[INFO] [stdout]      |
[INFO] [stdout] 2266 |     use rs_backtester::prelude::*;
[INFO] [stdout]      |                        ^^^^^^^ could not find `prelude` in `rs_backtester`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: struct import `Position` is private
[INFO] [stdout]   --> src/tests/risk_manager_tests.rs:6:32
[INFO] [stdout]    |
[INFO] [stdout]  6 | use crate::trading_mode_impl::{Position, OrderRequest, OrderSide, OrderType, TimeInForce};
[INFO] [stdout]    |                                ^^^^^^^^ private struct import
[INFO] [stdout]    |
[INFO] [stdout] note: the struct import `Position` is defined here...
[INFO] [stdout]   --> src/trading_mode_impl.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     Position, OrderResult
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] note: ...and refers to the struct `Position` which is defined here
[INFO] [stdout]   --> src/unified_data.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct Position {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^ you could import this directly
[INFO] [stdout] help: import `Position` directly
[INFO] [stdout]    |
[INFO] [stdout]  6 | use crate::trading_mode_impl::{unified_data::Position, OrderRequest, OrderSide, OrderType, TimeInForce};
[INFO] [stdout]    |                                ++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: struct import `Position` is private
[INFO] [stdout]   --> src/tests/advanced_risk_controls_tests.rs:8:36
[INFO] [stdout]    |
[INFO] [stdout]  8 |     use crate::trading_mode_impl::{Position, OrderRequest, OrderSide, OrderType, TimeInForce};
[INFO] [stdout]    |                                    ^^^^^^^^ private struct import
[INFO] [stdout]    |
[INFO] [stdout] note: the struct import `Position` is defined here...
[INFO] [stdout]   --> src/trading_mode_impl.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     Position, OrderResult
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] note: ...and refers to the struct `Position` which is defined here
[INFO] [stdout]   --> src/unified_data.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct Position {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^ you could import this directly
[INFO] [stdout] help: import `Position` directly
[INFO] [stdout]    |
[INFO] [stdout]  8 |     use crate::trading_mode_impl::{unified_data::Position, OrderRequest, OrderSide, OrderType, TimeInForce};
[INFO] [stdout]    |                                    ++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: struct import `FundingPayment` is private
[INFO] [stdout]    --> src/tests/workflow_tests.rs:16:58
[INFO] [stdout]     |
[INFO] [stdout]  16 |     TradingStrategy, Signal, SignalDirection, OrderFill, FundingPayment
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^^ private struct import
[INFO] [stdout]     |
[INFO] [stdout] note: the struct import `FundingPayment` is defined here...
[INFO] [stdout]    --> src/unified_data.rs:18:5
[INFO] [stdout]     |
[INFO] [stdout]  18 | use crate::backtest::FundingPayment;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: ...and refers to the struct `FundingPayment` which is defined here
[INFO] [stdout]    --> src/backtest.rs:272:1
[INFO] [stdout]     |
[INFO] [stdout] 272 | pub struct FundingPayment {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^ you could import this directly
[INFO] [stdout] help: import `FundingPayment` directly
[INFO] [stdout]     |
[INFO] [stdout]  16 |     TradingStrategy, Signal, SignalDirection, OrderFill, backtest::FundingPayment
[INFO] [stdout]     |                                                          ++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: struct import `FundingPayment` is private
[INFO] [stdout]     --> src/live_trading.rs:1546:74
[INFO] [stdout]      |
[INFO] [stdout] 1546 |         fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> std::result::Result<(), String> {
[INFO] [stdout]      |                                                                          ^^^^^^^^^^^^^^ private struct import
[INFO] [stdout]      |
[INFO] [stdout] note: the struct import `FundingPayment` is defined here...
[INFO] [stdout]     --> src/unified_data.rs:18:5
[INFO] [stdout]      |
[INFO] [stdout]   18 | use crate::backtest::FundingPayment;
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: ...and refers to the struct `FundingPayment` which is defined here
[INFO] [stdout]     --> src/backtest.rs:272:1
[INFO] [stdout]      |
[INFO] [stdout]  272 | pub struct FundingPayment {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^ you could import this directly
[INFO] [stdout] help: consider importing this struct through its public re-export instead
[INFO] [stdout]      |
[INFO] [stdout] 1546 -         fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> std::result::Result<(), String> {
[INFO] [stdout] 1546 +         fn on_funding_payment(&mut self, _payment: &crate::FundingPayment) -> std::result::Result<(), String> {
[INFO] [stdout]      |
[INFO] [stdout] help: import `FundingPayment` directly
[INFO] [stdout]      |
[INFO] [stdout] 1546 -         fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> std::result::Result<(), String> {
[INFO] [stdout] 1546 +         fn on_funding_payment(&mut self, _payment: &backtest::FundingPayment) -> std::result::Result<(), String> {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: struct import `FundingPayment` is private
[INFO] [stdout]    --> src/tests/live_trading_tests.rs:33:70
[INFO] [stdout]     |
[INFO] [stdout]  33 |     fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |                                                                      ^^^^^^^^^^^^^^ private struct import
[INFO] [stdout]     |
[INFO] [stdout] note: the struct import `FundingPayment` is defined here...
[INFO] [stdout]    --> src/unified_data.rs:18:5
[INFO] [stdout]     |
[INFO] [stdout]  18 | use crate::backtest::FundingPayment;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: ...and refers to the struct `FundingPayment` which is defined here
[INFO] [stdout]    --> src/backtest.rs:272:1
[INFO] [stdout]     |
[INFO] [stdout] 272 | pub struct FundingPayment {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^ you could import this directly
[INFO] [stdout] help: consider importing this struct through its public re-export instead
[INFO] [stdout]     |
[INFO] [stdout]  33 -     fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout]  33 +     fn on_funding_payment(&mut self, _payment: &crate::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |
[INFO] [stdout] help: import `FundingPayment` directly
[INFO] [stdout]     |
[INFO] [stdout]  33 -     fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout]  33 +     fn on_funding_payment(&mut self, _payment: &backtest::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: struct import `FundingPayment` is private
[INFO] [stdout]    --> src/tests/live_trading_safety_tests.rs:36:70
[INFO] [stdout]     |
[INFO] [stdout]  36 |     fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |                                                                      ^^^^^^^^^^^^^^ private struct import
[INFO] [stdout]     |
[INFO] [stdout] note: the struct import `FundingPayment` is defined here...
[INFO] [stdout]    --> src/unified_data.rs:18:5
[INFO] [stdout]     |
[INFO] [stdout]  18 | use crate::backtest::FundingPayment;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: ...and refers to the struct `FundingPayment` which is defined here
[INFO] [stdout]    --> src/backtest.rs:272:1
[INFO] [stdout]     |
[INFO] [stdout] 272 | pub struct FundingPayment {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^ you could import this directly
[INFO] [stdout] help: consider importing this struct through its public re-export instead
[INFO] [stdout]     |
[INFO] [stdout]  36 -     fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout]  36 +     fn on_funding_payment(&mut self, _payment: &crate::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |
[INFO] [stdout] help: import `FundingPayment` directly
[INFO] [stdout]     |
[INFO] [stdout]  36 -     fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout]  36 +     fn on_funding_payment(&mut self, _payment: &backtest::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: struct import `FundingPayment` is private
[INFO] [stdout]    --> src/tests/paper_trading_tests.rs:71:70
[INFO] [stdout]     |
[INFO] [stdout]  71 |     fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |                                                                      ^^^^^^^^^^^^^^ private struct import
[INFO] [stdout]     |
[INFO] [stdout] note: the struct import `FundingPayment` is defined here...
[INFO] [stdout]    --> src/unified_data.rs:18:5
[INFO] [stdout]     |
[INFO] [stdout]  18 | use crate::backtest::FundingPayment;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: ...and refers to the struct `FundingPayment` which is defined here
[INFO] [stdout]    --> src/backtest.rs:272:1
[INFO] [stdout]     |
[INFO] [stdout] 272 | pub struct FundingPayment {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^ you could import this directly
[INFO] [stdout] help: consider importing this struct through its public re-export instead
[INFO] [stdout]     |
[INFO] [stdout]  71 -     fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout]  71 +     fn on_funding_payment(&mut self, _payment: &crate::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |
[INFO] [stdout] help: import `FundingPayment` directly
[INFO] [stdout]     |
[INFO] [stdout]  71 -     fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout]  71 +     fn on_funding_payment(&mut self, _payment: &backtest::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: struct import `FundingPayment` is private
[INFO] [stdout]    --> src/tests/live_trading_integration_tests.rs:74:70
[INFO] [stdout]     |
[INFO] [stdout]  74 |     fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |                                                                      ^^^^^^^^^^^^^^ private struct import
[INFO] [stdout]     |
[INFO] [stdout] note: the struct import `FundingPayment` is defined here...
[INFO] [stdout]    --> src/unified_data.rs:18:5
[INFO] [stdout]     |
[INFO] [stdout]  18 | use crate::backtest::FundingPayment;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: ...and refers to the struct `FundingPayment` which is defined here
[INFO] [stdout]    --> src/backtest.rs:272:1
[INFO] [stdout]     |
[INFO] [stdout] 272 | pub struct FundingPayment {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^ you could import this directly
[INFO] [stdout] help: consider importing this struct through its public re-export instead
[INFO] [stdout]     |
[INFO] [stdout]  74 -     fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout]  74 +     fn on_funding_payment(&mut self, _payment: &crate::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |
[INFO] [stdout] help: import `FundingPayment` directly
[INFO] [stdout]     |
[INFO] [stdout]  74 -     fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout]  74 +     fn on_funding_payment(&mut self, _payment: &backtest::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: struct import `FundingPayment` is private
[INFO] [stdout]    --> src/tests/strategy_consistency_tests.rs:166:70
[INFO] [stdout]     |
[INFO] [stdout] 166 |     fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |                                                                      ^^^^^^^^^^^^^^ private struct import
[INFO] [stdout]     |
[INFO] [stdout] note: the struct import `FundingPayment` is defined here...
[INFO] [stdout]    --> src/unified_data.rs:18:5
[INFO] [stdout]     |
[INFO] [stdout]  18 | use crate::backtest::FundingPayment;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: ...and refers to the struct `FundingPayment` which is defined here
[INFO] [stdout]    --> src/backtest.rs:272:1
[INFO] [stdout]     |
[INFO] [stdout] 272 | pub struct FundingPayment {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^ you could import this directly
[INFO] [stdout] help: consider importing this struct through its public re-export instead
[INFO] [stdout]     |
[INFO] [stdout] 166 -     fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout] 166 +     fn on_funding_payment(&mut self, _payment: &crate::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |
[INFO] [stdout] help: import `FundingPayment` directly
[INFO] [stdout]     |
[INFO] [stdout] 166 -     fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout] 166 +     fn on_funding_payment(&mut self, _payment: &backtest::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: struct import `FundingPayment` is private
[INFO] [stdout]    --> src/tests/performance_stress_tests.rs:109:70
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |                                                                      ^^^^^^^^^^^^^^ private struct import
[INFO] [stdout]     |
[INFO] [stdout] note: the struct import `FundingPayment` is defined here...
[INFO] [stdout]    --> src/unified_data.rs:18:5
[INFO] [stdout]     |
[INFO] [stdout]  18 | use crate::backtest::FundingPayment;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: ...and refers to the struct `FundingPayment` which is defined here
[INFO] [stdout]    --> src/backtest.rs:272:1
[INFO] [stdout]     |
[INFO] [stdout] 272 | pub struct FundingPayment {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^ you could import this directly
[INFO] [stdout] help: consider importing this struct through its public re-export instead
[INFO] [stdout]     |
[INFO] [stdout] 109 -     fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout] 109 +     fn on_funding_payment(&mut self, _payment: &crate::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |
[INFO] [stdout] help: import `FundingPayment` directly
[INFO] [stdout]     |
[INFO] [stdout] 109 -     fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout] 109 +     fn on_funding_payment(&mut self, _payment: &backtest::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: struct import `FundingPayment` is private
[INFO] [stdout]    --> src/tests/performance_stress_tests.rs:485:74
[INFO] [stdout]     |
[INFO] [stdout] 485 |         fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^^^ private struct import
[INFO] [stdout]     |
[INFO] [stdout] note: the struct import `FundingPayment` is defined here...
[INFO] [stdout]    --> src/unified_data.rs:18:5
[INFO] [stdout]     |
[INFO] [stdout]  18 | use crate::backtest::FundingPayment;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: ...and refers to the struct `FundingPayment` which is defined here
[INFO] [stdout]    --> src/backtest.rs:272:1
[INFO] [stdout]     |
[INFO] [stdout] 272 | pub struct FundingPayment {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^ you could import this directly
[INFO] [stdout] help: consider importing this struct through its public re-export instead
[INFO] [stdout]     |
[INFO] [stdout] 485 -         fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout] 485 +         fn on_funding_payment(&mut self, _payment: &crate::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |
[INFO] [stdout] help: import `FundingPayment` directly
[INFO] [stdout]     |
[INFO] [stdout] 485 -         fn on_funding_payment(&mut self, _payment: &crate::unified_data::FundingPayment) -> Result<(), String> {
[INFO] [stdout] 485 +         fn on_funding_payment(&mut self, _payment: &backtest::FundingPayment) -> Result<(), String> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]    --> src/paper_trading.rs:926:9
[INFO] [stdout]     |
[INFO] [stdout] 926 |     use std::sync::Arc;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `chrono::TimeZone`
[INFO] [stdout]    --> src/risk_manager.rs:928:9
[INFO] [stdout]     |
[INFO] [stdout] 928 |     use chrono::TimeZone;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/tests/backtest_tests.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | use chrono::{DateTime, FixedOffset, TimeZone};
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/tests/strategies_tests.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 |     use chrono::{DateTime, FixedOffset, Utc};
[INFO] [stdout]   |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FundingAwareConfig`
[INFO] [stdout]  --> src/tests/strategies_tests.rs:7:26
[INFO] [stdout]   |
[INFO] [stdout] 7 |         TradingStrategy, FundingAwareConfig,
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OrderRequest`
[INFO] [stdout]   --> src/tests/strategies_tests.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 |         MarketData, OrderRequest, OrderResult, FundingPayment,
[INFO] [stdout]    |                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::errors::Result`
[INFO] [stdout]  --> src/tests/indicators_tests.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::errors::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime`, `FixedOffset`, and `TimeZone`
[INFO] [stdout]  --> src/tests/indicators_tests.rs:5:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use chrono::{DateTime, FixedOffset, TimeZone};
[INFO] [stdout]   |              ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::VecDeque`
[INFO] [stdout]  --> src/tests/indicators_tests.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::VecDeque;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::errors::Result`
[INFO] [stdout]  --> src/tests/indicators_tests_extended.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::errors::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime`, `FixedOffset`, and `TimeZone`
[INFO] [stdout]  --> src/tests/indicators_tests_extended.rs:5:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use chrono::{DateTime, FixedOffset, TimeZone};
[INFO] [stdout]   |              ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::VecDeque`
[INFO] [stdout]  --> src/tests/indicators_tests_extended.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::VecDeque;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]   --> src/tests/funding_report_tests.rs:11:14
[INFO] [stdout]    |
[INFO] [stdout] 11 | use chrono::{DateTime, FixedOffset, TimeZone};
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/tests/funding_report_tests.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime`, `FixedOffset`, and `TimeZone`
[INFO] [stdout]   --> src/tests/csv_export_tests_enhanced.rs:11:14
[INFO] [stdout]    |
[INFO] [stdout] 11 | use chrono::{DateTime, FixedOffset, TimeZone};
[INFO] [stdout]    |              ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::errors::Result`
[INFO] [stdout]  --> src/tests/data_price_tests.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::errors::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/tests/data_price_tests.rs:5:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use chrono::{DateTime, FixedOffset, TimeZone};
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/tests/data_conversion_tests.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/tests/commission_tests.rs:8:14
[INFO] [stdout]   |
[INFO] [stdout] 8 | use chrono::{DateTime, FixedOffset, TimeZone};
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::hash_map::DefaultHasher`
[INFO] [stdout]  --> src/tests/commission_tests.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::collections::hash_map::DefaultHasher;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Hash` and `Hasher`
[INFO] [stdout]   --> src/tests/commission_tests.rs:10:17
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::hash::{Hash, Hasher};
[INFO] [stdout]    |                 ^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EnhancedMetrics`, `FundingPayment`, and `OrderTypeStrategy`
[INFO] [stdout]  --> src/tests/funding_payment_tests.rs:4:49
[INFO] [stdout]   |
[INFO] [stdout] 4 |     HyperliquidBacktest, HyperliquidCommission, FundingPayment,
[INFO] [stdout]   |                                                 ^^^^^^^^^^^^^^
[INFO] [stdout] 5 |     EnhancedMetrics, OrderTypeStrategy
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/tests/funding_payment_tests.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 | use chrono::{DateTime, FixedOffset, TimeZone, Timelike};
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]  --> src/tests/mock_data.rs:5:47
[INFO] [stdout]   |
[INFO] [stdout] 5 | use chrono::{DateTime, FixedOffset, TimeZone, Duration};
[INFO] [stdout]   |                                               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TimeZone` and `Utc`
[INFO] [stdout]   --> src/tests/integration_tests.rs:10:37
[INFO] [stdout]    |
[INFO] [stdout] 10 | use chrono::{DateTime, FixedOffset, TimeZone, Utc};
[INFO] [stdout]    |                                     ^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_test`
[INFO] [stdout]   --> src/tests/integration_tests.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tokio_test;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ProcessExt` and `System`
[INFO] [stdout]   --> src/tests/integration_tests.rs:16:15
[INFO] [stdout]    |
[INFO] [stdout] 16 | use sysinfo::{System, SystemExt, ProcessExt};
[INFO] [stdout]    |               ^^^^^^             ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/tests/integration_tests.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicUsize` and `Ordering`
[INFO] [stdout]   --> src/tests/integration_tests.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::sync::atomic::{AtomicUsize, Ordering};
[INFO] [stdout]    |                         ^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tempfile::TempDir`
[INFO] [stdout]   --> src/tests/integration_tests.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use tempfile::TempDir;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]   --> src/tests/integration_tests.rs:20:27
[INFO] [stdout]    |
[INFO] [stdout] 20 | use tracing::{info, warn, error};
[INFO] [stdout]    |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/tests/performance_tests.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicUsize` and `Ordering`
[INFO] [stdout]   --> src/tests/performance_tests.rs:11:25
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::sync::atomic::{AtomicUsize, Ordering};
[INFO] [stdout]    |                         ^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]   --> src/tests/performance_tests.rs:13:21
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tracing::{info, warn};
[INFO] [stdout]    |                     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/tests/unified_data_tests.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, FixedOffset, TimeZone, Utc};
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/tests/unified_data_impl_tests.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, FixedOffset, TimeZone, Utc};
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ApiConfig`, `OrderBookLevel`, `OrderBookSnapshot`, `OrderResult`, `OrderStatus`, `SignalDirection`, `Signal`, `SlippageConfig`, and `Trade`
[INFO] [stdout]  --> src/tests/unified_data_impl_tests.rs:5:29
[INFO] [stdout]   |
[INFO] [stdout] 5 |     Position, OrderRequest, OrderResult, MarketData, Signal, SignalDirection,
[INFO] [stdout]   |                             ^^^^^^^^^^^              ^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 6 |     OrderSide, OrderType, TimeInForce, OrderStatus, TradingConfig, RiskConfig,
[INFO] [stdout]   |                                        ^^^^^^^^^^^
[INFO] [stdout] 7 |     SlippageConfig, ApiConfig, OrderBookLevel, OrderBookSnapshot, Trade
[INFO] [stdout]   |     ^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/tests/risk_manager_tests.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 | use chrono::{DateTime, FixedOffset, Utc};
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RiskError` and `RiskOrder`
[INFO] [stdout]  --> src/tests/risk_manager_tests.rs:4:40
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::risk_manager::{RiskManager, RiskError, RiskOrder};
[INFO] [stdout]   |                                        ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/tests/advanced_risk_controls_tests.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 |     use chrono::{DateTime, FixedOffset, Utc};
[INFO] [stdout]   |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `VolatilityData`
[INFO] [stdout]  --> src/tests/advanced_risk_controls_tests.rs:6:67
[INFO] [stdout]   |
[INFO] [stdout] 6 |     use crate::risk_manager::{RiskManager, RiskError, AssetClass, VolatilityData};
[INFO] [stdout]   |                                                                   ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/tests/live_trading_tests.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/tests/live_trading_tests.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime`, `FixedOffset`, and `Utc`
[INFO] [stdout]  --> src/tests/live_trading_tests.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use chrono::{DateTime, FixedOffset, Utc};
[INFO] [stdout]   |              ^^^^^^^^  ^^^^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::test`
[INFO] [stdout]  --> src/tests/live_trading_tests.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::test;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LiveTradingEngine` and `LiveTradingError`
[INFO] [stdout]  --> src/tests/live_trading_tests.rs:8:27
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::live_trading::{LiveTradingEngine, LiveTradingError};
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OrderResult`, `OrderSide`, `OrderStatus`, `OrderType`, `Position`, and `TimeInForce`
[INFO] [stdout]   --> src/tests/live_trading_tests.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Position, OrderRequest, OrderResult, MarketData, 
[INFO] [stdout]    |     ^^^^^^^^                ^^^^^^^^^^^
[INFO] [stdout] 12 |     OrderSide, OrderType, TimeInForce, OrderStatus,
[INFO] [stdout]    |     ^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/tests/live_trading_safety_tests.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/tests/live_trading_safety_tests.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime`, `FixedOffset`, and `Utc`
[INFO] [stdout]  --> src/tests/live_trading_safety_tests.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use chrono::{DateTime, FixedOffset, Utc};
[INFO] [stdout]   |              ^^^^^^^^  ^^^^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::test`
[INFO] [stdout]  --> src/tests/live_trading_safety_tests.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::test;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AlertLevel`, `AlertMessage`, `LiveTradingEngine`, `LiveTradingError`, `RetryPolicy`, and `SafetyCircuitBreakerConfig`
[INFO] [stdout]   --> src/tests/live_trading_safety_tests.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  9 |     LiveTradingEngine, LiveTradingError, AlertLevel, AlertMessage, 
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 10 |     RetryPolicy, SafetyCircuitBreakerConfig
[INFO] [stdout]    |     ^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OrderResult`, `OrderStatus`, and `Position`
[INFO] [stdout]   --> src/tests/live_trading_safety_tests.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     Position, OrderRequest, OrderResult, MarketData, 
[INFO] [stdout]    |     ^^^^^^^^                ^^^^^^^^^^^
[INFO] [stdout] 15 |     OrderSide, OrderType, TimeInForce, OrderStatus,
[INFO] [stdout]    |                                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MonitoringMessage` and `TradeExecutionUpdate`
[INFO] [stdout]  --> src/tests/real_time_monitoring_tests.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |         MonitoringMessage, TradeExecutionUpdate, ConnectionStatus
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]  --> src/tests/trading_strategy_tests.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 |     use std::path::PathBuf;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/tests/trading_strategy_tests.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 |     use chrono::{DateTime, FixedOffset, Utc};
[INFO] [stdout]   |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/tests/paper_trading_tests.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 | use chrono::{DateTime, FixedOffset, Utc};
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::test`
[INFO] [stdout]  --> src/tests/paper_trading_tests.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tokio::test;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PaperTradingMetrics`, `SimulatedOrder`, and `TradeLogEntry`
[INFO] [stdout]  --> src/tests/paper_trading_tests.rs:7:44
[INFO] [stdout]   |
[INFO] [stdout] 7 |     PaperTradingEngine, PaperTradingError, SimulatedOrder, PaperTradingMetrics, TradeLogEntry
[INFO] [stdout]   |                                            ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TradingModeError`
[INFO] [stdout]  --> src/tests/paper_trading_tests.rs:9:43
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::trading_mode::{SlippageConfig, TradingModeError};
[INFO] [stdout]   |                                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OrderResult`, `OrderType`, and `TimeInForce`
[INFO] [stdout]   --> src/tests/paper_trading_tests.rs:11:29
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Position, OrderRequest, OrderResult, MarketData, 
[INFO] [stdout]    |                             ^^^^^^^^^^^
[INFO] [stdout] 12 |     OrderSide, OrderType, TimeInForce, OrderStatus,
[INFO] [stdout]    |                ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/tests/live_trading_integration_tests.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc`, `AtomicBool`, `Mutex`, and `Ordering`
[INFO] [stdout]  --> src/tests/live_trading_integration_tests.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::{Arc, Mutex, atomic::{AtomicBool, Ordering}};
[INFO] [stdout]   |                 ^^^  ^^^^^           ^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime`, `FixedOffset`, and `Utc`
[INFO] [stdout]  --> src/tests/live_trading_integration_tests.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use chrono::{DateTime, FixedOffset, Utc};
[INFO] [stdout]   |              ^^^^^^^^  ^^^^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::test`
[INFO] [stdout]  --> src/tests/live_trading_integration_tests.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::test;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlertMessage`
[INFO] [stdout]  --> src/tests/live_trading_integration_tests.rs:9:54
[INFO] [stdout]   |
[INFO] [stdout] 9 |     LiveTradingEngine, LiveTradingError, AlertLevel, AlertMessage, 
[INFO] [stdout]   |                                                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OrderResult` and `Position`
[INFO] [stdout]   --> src/tests/live_trading_integration_tests.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     Position, OrderRequest, OrderResult, MarketData, 
[INFO] [stdout]    |     ^^^^^^^^                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::real_time_data_stream::RealTimeDataStream`
[INFO] [stdout]   --> src/tests/live_trading_integration_tests.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::real_time_data_stream::RealTimeDataStream;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/tests/strategy_consistency_tests.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/tests/strategy_consistency_tests.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 | use chrono::{DateTime, FixedOffset, Utc};
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::live_trading::LiveTradingEngine`
[INFO] [stdout]  --> src/tests/strategy_consistency_tests.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::live_trading::LiveTradingEngine;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OrderResult`, `OrderStatus`, `OrderType`, `Position`, and `TimeInForce`
[INFO] [stdout]   --> src/tests/strategy_consistency_tests.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     Position, OrderRequest, OrderResult, MarketData, 
[INFO] [stdout]    |     ^^^^^^^^                ^^^^^^^^^^^
[INFO] [stdout] 15 |     OrderSide, OrderType, TimeInForce, OrderStatus,
[INFO] [stdout]    |                ^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::real_time_data_stream::RealTimeDataStream`
[INFO] [stdout]   --> src/tests/strategy_consistency_tests.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::real_time_data_stream::RealTimeDataStream;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/tests/performance_stress_tests.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/tests/performance_stress_tests.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use chrono::{DateTime, FixedOffset, Utc};
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OrderResult`, `OrderStatus`, `OrderType`, `Position`, `SignalDirection`, and `TimeInForce`
[INFO] [stdout]   --> src/tests/performance_stress_tests.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     Position, OrderRequest, OrderResult, MarketData, 
[INFO] [stdout]    |     ^^^^^^^^                ^^^^^^^^^^^
[INFO] [stdout] 13 |     OrderSide, OrderType, TimeInForce, OrderStatus,
[INFO] [stdout]    |                ^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 14 |     TradingStrategy, Signal, SignalDirection
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc`, `AtomicBool`, `Mutex`, and `Ordering`
[INFO] [stdout]  --> src/tests/safety_validation_tests.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex, atomic::{AtomicBool, Ordering}};
[INFO] [stdout]   |                 ^^^  ^^^^^           ^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/tests/safety_validation_tests.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 | use chrono::{DateTime, FixedOffset, Utc};
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ApiConfig` and `SlippageConfig`
[INFO] [stdout]  --> src/tests/safety_validation_tests.rs:6:27
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::trading_mode::{ApiConfig, RiskConfig, SlippageConfig};
[INFO] [stdout]   |                           ^^^^^^^^^              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OrderResult`, `OrderStatus`, `OrderType`, `Signal`, `TimeInForce`, and `TradingStrategy`
[INFO] [stdout]   --> src/tests/safety_validation_tests.rs:8:29
[INFO] [stdout]    |
[INFO] [stdout]  8 |     Position, OrderRequest, OrderResult, MarketData, 
[INFO] [stdout]    |                             ^^^^^^^^^^^
[INFO] [stdout]  9 |     OrderSide, OrderType, TimeInForce, OrderStatus,
[INFO] [stdout]    |                ^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 10 |     TradingStrategy, Signal
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RiskOrder`
[INFO] [stdout]   --> src/tests/safety_validation_tests.rs:12:51
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::risk_manager::{RiskManager, RiskError, RiskOrder};
[INFO] [stdout]    |                                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/tests/workflow_tests.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]  --> src/tests/workflow_tests.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 | use chrono::{DateTime, FixedOffset, Utc};
[INFO] [stdout]   |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::live_trading::LiveTradingEngine`
[INFO] [stdout]  --> src/tests/workflow_tests.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::live_trading::LiveTradingEngine;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ApiConfig`
[INFO] [stdout]   --> src/tests/workflow_tests.rs:11:81
[INFO] [stdout]    |
[INFO] [stdout] 11 |     TradingMode, TradingModeManager, TradingConfig, RiskConfig, SlippageConfig, ApiConfig
[INFO] [stdout]    |                                                                                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OrderResult`, `OrderStatus`, `OrderType`, `Position`, and `TimeInForce`
[INFO] [stdout]   --> src/tests/workflow_tests.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     Position, OrderRequest, OrderResult, MarketData, 
[INFO] [stdout]    |     ^^^^^^^^                ^^^^^^^^^^^
[INFO] [stdout] 15 |     OrderSide, OrderType, TimeInForce, OrderStatus,
[INFO] [stdout]    |                ^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::real_time_data_stream::RealTimeDataStream`
[INFO] [stdout]   --> src/tests/workflow_tests.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::real_time_data_stream::RealTimeDataStream;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/tests/standalone_position_tests.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime` and `TimeZone`
[INFO] [stdout]  --> src/tests/standalone_position_tests.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 | use chrono::{DateTime, FixedOffset, TimeZone, Utc};
[INFO] [stdout]   |              ^^^^^^^^               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]     --> src/tests/integration_tests.rs:1492:36
[INFO] [stdout]      |
[INFO] [stdout] 1492 | fn create_invalid_format_data() -> Result<HyperliquidData, &'static str> {
[INFO] [stdout]      |                                    ^^^^^^                -------------- help: remove the unnecessary generic argument
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    expected 1 generic argument
[INFO] [stdout]      |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]     --> src/errors.rs:7:10
[INFO] [stdout]      |
[INFO] [stdout]    7 | pub type Result<T> = std::result::Result<T, HyperliquidBacktestError>;
[INFO] [stdout]      |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]     --> src/tests/integration_tests.rs:1498:39
[INFO] [stdout]      |
[INFO] [stdout] 1498 | fn create_missing_timestamp_data() -> Result<HyperliquidData, &'static str> {
[INFO] [stdout]      |                                       ^^^^^^                -------------- help: remove the unnecessary generic argument
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       expected 1 generic argument
[INFO] [stdout]      |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]     --> src/errors.rs:7:10
[INFO] [stdout]      |
[INFO] [stdout]    7 | pub type Result<T> = std::result::Result<T, HyperliquidBacktestError>;
[INFO] [stdout]      |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]     --> src/tests/integration_tests.rs:1504:41
[INFO] [stdout]      |
[INFO] [stdout] 1504 | fn create_inconsistent_length_data() -> Result<HyperliquidData, &'static str> {
[INFO] [stdout]      |                                         ^^^^^^                -------------- help: remove the unnecessary generic argument
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         expected 1 generic argument
[INFO] [stdout]      |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]     --> src/errors.rs:7:10
[INFO] [stdout]      |
[INFO] [stdout]    7 | pub type Result<T> = std::result::Result<T, HyperliquidBacktestError>;
[INFO] [stdout]      |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]     --> src/tests/integration_tests.rs:1744:42
[INFO] [stdout]      |
[INFO] [stdout] 1744 | fn parse_api_response(response: &str) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]      |                                          ^^^^^^   ---------------------------- help: remove the unnecessary generic argument
[INFO] [stdout]      |                                          |
[INFO] [stdout]      |                                          expected 1 generic argument
[INFO] [stdout]      |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]     --> src/errors.rs:7:10
[INFO] [stdout]      |
[INFO] [stdout]    7 | pub type Result<T> = std::result::Result<T, HyperliquidBacktestError>;
[INFO] [stdout]      |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]     --> src/tests/integration_tests.rs:1750:57
[INFO] [stdout]      |
[INFO] [stdout] 1750 | fn validate_hyperliquid_data(data: &HyperliquidData) -> Result<(), String> {
[INFO] [stdout]      |                                                         ^^^^^^   -------- help: remove the unnecessary generic argument
[INFO] [stdout]      |                                                         |
[INFO] [stdout]      |                                                         expected 1 generic argument
[INFO] [stdout]      |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]     --> src/errors.rs:7:10
[INFO] [stdout]      |
[INFO] [stdout]    7 | pub type Result<T> = std::result::Result<T, HyperliquidBacktestError>;
[INFO] [stdout]      |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]     --> src/tests/integration_tests.rs:2066:42
[INFO] [stdout]      |
[INFO] [stdout] 2066 | fn parse_api_response(response: &str) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]      |                                          ^^^^^^   ---------------------------- help: remove the unnecessary generic argument
[INFO] [stdout]      |                                          |
[INFO] [stdout]      |                                          expected 1 generic argument
[INFO] [stdout]      |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]     --> src/errors.rs:7:10
[INFO] [stdout]      |
[INFO] [stdout]    7 | pub type Result<T> = std::result::Result<T, HyperliquidBacktestError>;
[INFO] [stdout]      |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]     --> src/tests/integration_tests.rs:2072:57
[INFO] [stdout]      |
[INFO] [stdout] 2072 | fn validate_hyperliquid_data(data: &HyperliquidData) -> Result<(), String> {
[INFO] [stdout]      |                                                         ^^^^^^   -------- help: remove the unnecessary generic argument
[INFO] [stdout]      |                                                         |
[INFO] [stdout]      |                                                         expected 1 generic argument
[INFO] [stdout]      |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]     --> src/errors.rs:7:10
[INFO] [stdout]      |
[INFO] [stdout]    7 | pub type Result<T> = std::result::Result<T, HyperliquidBacktestError>;
[INFO] [stdout]      |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0428, E0432, E0433, E0603.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hyperliquid-backtest` (lib test) due to 105 previous errors; 89 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]   --> src/backtest.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 | use std::io::Write;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TimeZone`
[INFO] [stdout]  --> src/utils.rs:3:37
[INFO] [stdout]   |
[INFO] [stdout] 3 | use chrono::{DateTime, FixedOffset, TimeZone, Utc};
[INFO] [stdout]   |                                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `position_sizes` is never read
[INFO] [stdout]     --> src/backtest.rs:1249:13
[INFO] [stdout]      |
[INFO] [stdout] 1249 |             position_sizes = vec![0.0; self.data.len()];
[INFO] [stdout]      |             ^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `trading_pnl`
[INFO] [stdout]     --> src/backtest.rs:1254:13
[INFO] [stdout]      |
[INFO] [stdout] 1254 |         let trading_pnl = if let Some(last) = self.trading_pnl.last() {
[INFO] [stdout]      |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_trading_pnl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/strategies.rs:234:35
[INFO] [stdout]     |
[INFO] [stdout] 234 | pub fn funding_arbitrage_strategy(data: Data, threshold: f64) -> Strategy {
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/strategies.rs:251:5
[INFO] [stdout]     |
[INFO] [stdout] 251 |     data: Data,
[INFO] [stdout]     |     ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `funding_config`
[INFO] [stdout]    --> src/strategies.rs:254:5
[INFO] [stdout]     |
[INFO] [stdout] 254 |     funding_config: FundingAwareConfig,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_funding_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position_sizes`
[INFO] [stdout]    --> src/funding_report.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |         position_sizes: &[f64],
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position_sizes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `strategy`
[INFO] [stdout]    --> src/trading_mode_impl.rs:242:48
[INFO] [stdout]     |
[INFO] [stdout] 242 |     fn execute_backtest_strategy<S>(&mut self, strategy: S) -> std::result::Result<TradingResult, TradingModeError>
[INFO] [stdout]     |                                                ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_strategy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `volatility_data`
[INFO] [stdout]    --> src/risk_manager.rs:523:21
[INFO] [stdout]     |
[INFO] [stdout] 523 |         if let Some(volatility_data) = self.volatility_data.get(&order.symbol) {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_volatility_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `private_key`
[INFO] [stdout]   --> src/live_trading.rs:50:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn new(private_key: &str) -> Result<Self, String> {
[INFO] [stdout]    |                ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_private_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `order`
[INFO] [stdout]     --> src/live_trading.rs:1223:40
[INFO] [stdout]      |
[INFO] [stdout] 1223 |     fn convert_to_client_cancel(&self, order: &OrderRequest, order_id: &str) -> Result<String, LiveTradingError> {
[INFO] [stdout]      |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_order`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `retry_policy`
[INFO] [stdout]   --> src/live_trading_safety.rs:99:13
[INFO] [stdout]    |
[INFO] [stdout] 99 |         let retry_policy = self.retry_policy.clone();
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_retry_policy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/live_trading_safety.rs:164:13
[INFO] [stdout]     |
[INFO] [stdout] 164 |         let config = self.safety_circuit_breaker_config.clone();
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `funding_pnl`
[INFO] [stdout]    --> src/mode_reporting.rs:754:13
[INFO] [stdout]     |
[INFO] [stdout] 754 |         let funding_pnl = positions.values()
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_funding_pnl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `margin_usage_pct`
[INFO] [stdout]    --> src/mode_reporting.rs:764:13
[INFO] [stdout]     |
[INFO] [stdout] 764 |         let margin_usage_pct = if total_equity > 0.0 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_margin_usage_pct`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current_leverage`
[INFO] [stdout]    --> src/mode_reporting.rs:770:13
[INFO] [stdout]     |
[INFO] [stdout] 770 |         let current_leverage = if total_equity > 0.0 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_leverage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `largest_position` is assigned to, but never used
[INFO] [stdout]    --> src/mode_reporting.rs:825:17
[INFO] [stdout]     |
[INFO] [stdout] 825 |         let mut largest_position = None;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_largest_position` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `most_profitable` is assigned to, but never used
[INFO] [stdout]    --> src/mode_reporting.rs:826:17
[INFO] [stdout]     |
[INFO] [stdout] 826 |         let mut most_profitable = None;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_most_profitable` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `least_profitable` is assigned to, but never used
[INFO] [stdout]    --> src/mode_reporting.rs:827:17
[INFO] [stdout]     |
[INFO] [stdout] 827 |         let mut least_profitable = None;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_least_profitable` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol`
[INFO] [stdout]    --> src/mode_reporting.rs:833:14
[INFO] [stdout]     |
[INFO] [stdout] 833 |         for (symbol, snapshot) in &position_snapshots {
[INFO] [stdout]     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `largest_position` is never read
[INFO] [stdout]    --> src/mode_reporting.rs:838:17
[INFO] [stdout]     |
[INFO] [stdout] 838 |                 largest_position = Some(snapshot.clone());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `most_profitable` is never read
[INFO] [stdout]    --> src/mode_reporting.rs:843:17
[INFO] [stdout]     |
[INFO] [stdout] 843 |                 most_profitable = Some(snapshot.clone());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `least_profitable` is never read
[INFO] [stdout]    --> src/mode_reporting.rs:848:17
[INFO] [stdout]     |
[INFO] [stdout] 848 |                 least_profitable = Some(snapshot.clone());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `circuit_breaker_status`
[INFO] [stdout]    --> src/mode_reporting.rs:906:13
[INFO] [stdout]     |
[INFO] [stdout] 906 |         let circuit_breaker_status = if current_drawdown_pct > 20.0 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_circuit_breaker_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `active_orders`
[INFO] [stdout]    --> src/mode_reporting.rs:741:41
[INFO] [stdout]     |
[INFO] [stdout] 741 | ...                   active_orders: usize,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_active_orders`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `total_funding_pnl` is never read
[INFO] [stdout]     --> src/mode_reporting.rs:1124:17
[INFO] [stdout]      |
[INFO] [stdout] 1124 |         let mut total_funding_pnl = 0.0;
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `metrics`
[INFO] [stdout]     --> src/mode_reporting.rs:1225:64
[INFO] [stdout]      |
[INFO] [stdout] 1225 |     pub fn calculate_risk_adjusted_returns_with_metrics(&self, metrics: &PerformanceMetrics) -> (f64, f64, f64) {
[INFO] [stdout]      |                                                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_metrics`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `fast_period` and `slow_period` are never read
[INFO] [stdout]    --> src/strategies.rs:339:5
[INFO] [stdout]     |
[INFO] [stdout] 337 | pub struct EnhancedSmaStrategy {
[INFO] [stdout]     |            ------------------- fields in this struct
[INFO] [stdout] 338 |     /// Fast period for SMA
[INFO] [stdout] 339 |     fast_period: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 340 |     /// Slow period for SMA
[INFO] [stdout] 341 |     slow_period: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `calculate_sma` is never used
[INFO] [stdout]    --> src/strategies.rs:357:8
[INFO] [stdout]     |
[INFO] [stdout] 346 | impl EnhancedSmaStrategy {
[INFO] [stdout]     | ------------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 357 |     fn calculate_sma(&self, data: &[f64], period: usize) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `last_update` is never read
[INFO] [stdout]    --> src/paper_trading.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout]  78 | pub struct PaperTradingEngine {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 114 |     last_update: DateTime<FixedOffset>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `info_client` and `max_reconnect_attempts` are never read
[INFO] [stdout]    --> src/real_time_data_stream.rs:110:5
[INFO] [stdout]     |
[INFO] [stdout] 105 | pub struct RealTimeDataStream {
[INFO] [stdout]     |            ------------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 110 |     info_client: InfoClient,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     max_reconnect_attempts: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `connected_at`, and `sender` are never read
[INFO] [stdout]    --> src/real_time_monitoring.rs:180:5
[INFO] [stdout]     |
[INFO] [stdout] 178 | struct ClientConnection {
[INFO] [stdout]     |        ---------------- fields in this struct
[INFO] [stdout] 179 |     /// Client ID
[INFO] [stdout] 180 |     id: String,
[INFO] [stdout]     |     ^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     connected_at: DateTime<FixedOffset>,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 189 |     sender: broadcast::Sender<String>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ClientConnection` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]    --> src/real_time_monitoring.rs:364:5
[INFO] [stdout]     |
[INFO] [stdout] 362 | pub struct MonitoringClient {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] 363 |     /// Client ID
[INFO] [stdout] 364 |     id: String,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `calculate_daily_pnl`, `calculate_win_rate`, `calculate_sharpe_ratio`, and `calculate_max_drawdown_pct` are never used
[INFO] [stdout]     --> src/real_time_monitoring.rs:1021:8
[INFO] [stdout]      |
[INFO] [stdout]  886 | impl LiveTradingEngine {
[INFO] [stdout]      | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1021 |     fn calculate_daily_pnl(&self) -> f64 {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1027 |     fn calculate_win_rate(&self) -> f64 {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1033 |     fn calculate_sharpe_ratio(&self) -> f64 {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1039 |     fn calculate_max_drawdown_pct(&self) -> f64 {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `historical_portfolio_values` is never read
[INFO] [stdout]    --> src/risk_manager.rs:320:5
[INFO] [stdout]     |
[INFO] [stdout] 285 | pub struct RiskManager {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 320 |     historical_portfolio_values: Vec<(DateTime<FixedOffset>, f64)>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RiskManager` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `max_connection_retries`, `price_history`, `initial_account_value`, and `recent_critical_alerts` are never read
[INFO] [stdout]    --> src/live_trading.rs:420:5
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct LiveTradingEngine {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 420 |     max_connection_retries: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 465 |     price_history: HashMap<String, VecDeque<(DateTime<FixedOffset>, f64)>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 468 |     initial_account_value: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 474 |     recent_critical_alerts: VecDeque<AlertMessage>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OrderRetryState` is never constructed
[INFO] [stdout]    --> src/live_trading_safety.rs:320:8
[INFO] [stdout]     |
[INFO] [stdout] 320 | struct OrderRetryState {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `start_time` is never read
[INFO] [stdout]    --> src/mode_reporting.rs:466:5
[INFO] [stdout]     |
[INFO] [stdout] 440 | pub struct ModeReportingManager {
[INFO] [stdout]     |            -------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 466 |     start_time: DateTime<FixedOffset>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused implementer of `std::future::Future` that must be used
[INFO] [stdout]    --> src/live_trading_safety.rs:244:13
[INFO] [stdout]     |
[INFO] [stdout] 244 |             self.emergency_stop();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: futures do nothing unless you `.await` or poll them
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused implementer of `std::future::Future` that must be used
[INFO] [stdout]    --> src/live_trading_safety.rs:257:17
[INFO] [stdout]     |
[INFO] [stdout] 257 |                 self.emergency_stop();
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: futures do nothing unless you `.await` or poll them
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused implementer of `std::future::Future` that must be used
[INFO] [stdout]    --> src/live_trading_safety.rs:270:17
[INFO] [stdout]     |
[INFO] [stdout] 270 |                 self.emergency_stop();
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: futures do nothing unless you `.await` or poll them
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "4e9bc84ecf3d3eb0bbe4a42482d4b92d98961af6e219efb3c5f28c840621d688", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4e9bc84ecf3d3eb0bbe4a42482d4b92d98961af6e219efb3c5f28c840621d688", kill_on_drop: false }`
[INFO] [stdout] 4e9bc84ecf3d3eb0bbe4a42482d4b92d98961af6e219efb3c5f28c840621d688
