[INFO] cloning repository https://github.com/orielsanchez/algotrading [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/orielsanchez/algotrading" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Forielsanchez%2Falgotrading", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Forielsanchez%2Falgotrading'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] cda45cf19ccea918b64d0cf95d2af74a8ab9c92a [INFO] checking orielsanchez/algotrading against try#29194e8f603400afdb2f86c9418e9fccb1628ea0 for pr-135331-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Forielsanchez%2Falgotrading" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/orielsanchez/algotrading [INFO] finished tweaking git repo https://github.com/orielsanchez/algotrading [INFO] tweaked toml for git repo https://github.com/orielsanchez/algotrading written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/orielsanchez/algotrading on toolchain 29194e8f603400afdb2f86c9418e9fccb1628ea0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+29194e8f603400afdb2f86c9418e9fccb1628ea0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/orielsanchez/algotrading 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" "+29194e8f603400afdb2f86c9418e9fccb1628ea0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+29194e8f603400afdb2f86c9418e9fccb1628ea0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 40b32e4950d11e74ce1f8e06a95331079f547038869f67387fea3f710220249e [INFO] running `Command { std: "docker" "start" "-a" "40b32e4950d11e74ce1f8e06a95331079f547038869f67387fea3f710220249e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "40b32e4950d11e74ce1f8e06a95331079f547038869f67387fea3f710220249e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "40b32e4950d11e74ce1f8e06a95331079f547038869f67387fea3f710220249e", kill_on_drop: false }` [INFO] [stdout] 40b32e4950d11e74ce1f8e06a95331079f547038869f67387fea3f710220249e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+29194e8f603400afdb2f86c9418e9fccb1628ea0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b8e0efa72da87bc10c1de4209a52eb4efdc8bf0d3891d3a2ee673c9cf66df095 [INFO] running `Command { std: "docker" "start" "-a" "b8e0efa72da87bc10c1de4209a52eb4efdc8bf0d3891d3a2ee673c9cf66df095", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.95 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling libm v0.2.15 [INFO] [stderr] Compiling version_check v0.9.5 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Checking once_cell v1.21.3 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Checking either v1.15.0 [INFO] [stderr] Checking memchr v2.7.5 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking allocator-api2 v0.2.21 [INFO] [stderr] Compiling libc v0.2.174 [INFO] [stderr] Checking equivalent v1.0.2 [INFO] [stderr] Checking foldhash v0.1.5 [INFO] [stderr] Checking pin-project-lite v0.2.16 [INFO] [stderr] Checking itoa v1.0.15 [INFO] [stderr] Checking smallvec v1.15.1 [INFO] [stderr] Checking futures-core v0.3.31 [INFO] [stderr] Checking iana-time-zone v0.1.63 [INFO] [stderr] Checking stable_deref_trait v1.2.0 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Checking futures-sink v0.3.31 [INFO] [stderr] Checking slab v0.4.10 [INFO] [stderr] Checking parking_lot_core v0.9.11 [INFO] [stderr] Checking mio v1.0.4 [INFO] [stderr] Checking socket2 v0.5.10 [INFO] [stderr] Checking futures-io v0.3.31 [INFO] [stderr] Checking ryu v1.0.20 [INFO] [stderr] Checking futures-channel v0.3.31 [INFO] [stderr] Checking static_assertions v1.1.0 [INFO] [stderr] Checking futures-task v0.3.31 [INFO] [stderr] Checking writeable v0.6.1 [INFO] [stderr] Checking litemap v0.8.0 [INFO] [stderr] Checking base64 v0.22.1 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling siphasher v1.0.1 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Checking parking_lot v0.12.4 [INFO] [stderr] Compiling icu_normalizer_data v2.0.0 [INFO] [stderr] Compiling icu_properties_data v2.0.1 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Checking zeroize v1.8.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Checking rustls-pki-types v1.12.0 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Checking tracing-core v0.1.34 [INFO] [stderr] Checking untrusted v0.9.0 [INFO] [stderr] Compiling phf_shared v0.11.3 [INFO] [stderr] Compiling httparse v1.10.1 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Checking percent-encoding v2.3.1 [INFO] [stderr] Checking try-lock v0.2.5 [INFO] [stderr] Compiling syn v2.0.104 [INFO] [stderr] Compiling rustls v0.23.28 [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Checking atomic-waker v1.1.2 [INFO] [stderr] Checking tower-service v0.3.3 [INFO] [stderr] Compiling jobserver v0.1.33 [INFO] [stderr] Checking want v0.3.1 [INFO] [stderr] Checking subtle v2.6.1 [INFO] [stderr] Checking log v0.4.27 [INFO] [stderr] Checking form_urlencoded v1.2.1 [INFO] [stderr] Checking sync_wrapper v1.0.2 [INFO] [stderr] Compiling rustversion v1.0.21 [INFO] [stderr] Checking tower-layer v0.3.3 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking utf8_iter v1.0.4 [INFO] [stderr] Checking openssl-probe v0.1.6 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Compiling cc v1.2.29 [INFO] [stderr] Compiling pkg-config v0.3.32 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Checking ipnet v2.11.0 [INFO] [stderr] Checking rustls-native-certs v0.8.1 [INFO] [stderr] Compiling thiserror v2.0.12 [INFO] [stderr] Checking iri-string v0.7.8 [INFO] [stderr] Checking simdutf8 v0.1.5 [INFO] [stderr] Checking rand v0.9.1 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking crossbeam-deque v0.8.6 [INFO] [stderr] Checking num-complex v0.4.6 [INFO] [stderr] Checking array-init-cursor v0.2.1 [INFO] [stderr] Checking same-file v1.0.6 [INFO] [stderr] Compiling phf_generator v0.11.3 [INFO] [stderr] Checking zlib-rs v0.5.1 [INFO] [stderr] Checking adler2 v2.0.1 [INFO] [stderr] Checking num-bigint v0.4.6 [INFO] [stderr] Compiling phf_codegen v0.11.3 [INFO] [stderr] Checking walkdir v2.5.0 [INFO] [stderr] Checking miniz_oxide v0.8.9 [INFO] [stderr] Compiling slotmap v1.0.7 [INFO] [stderr] Checking itertools v0.14.0 [INFO] [stderr] Checking crc32fast v1.4.2 [INFO] [stderr] Checking humantime v2.2.0 [INFO] [stderr] Compiling zstd-safe v7.2.4 [INFO] [stderr] Checking phf v0.11.3 [INFO] [stderr] Checking castaway v0.2.3 [INFO] [stderr] Checking rmp v0.8.14 [INFO] [stderr] Checking rayon v1.10.0 [INFO] [stderr] Compiling polars-utils v0.49.1 [INFO] [stderr] Compiling polars-schema v0.49.1 [INFO] [stderr] Checking memmap2 v0.9.5 [INFO] [stderr] Checking num-iter v0.1.45 [INFO] [stderr] Compiling polars-arrow v0.49.1 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Checking half v2.6.0 [INFO] [stderr] Compiling polars-compute v0.49.1 [INFO] [stderr] Checking ethnum v1.5.2 [INFO] [stderr] Checking dyn-clone v1.0.19 [INFO] [stderr] Checking debug_unsafe v0.1.3 [INFO] [stderr] Checking streaming-iterator v0.1.9 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Checking skiplist v0.5.1 [INFO] [stderr] Checking atoi_simd v0.16.1 [INFO] [stderr] Compiling rustix v1.0.7 [INFO] [stderr] Checking libz-rs-sys v0.5.1 [INFO] [stderr] Checking flate2 v1.1.2 [INFO] [stderr] Checking strength_reduce v0.2.4 [INFO] [stderr] Checking fast-float2 v0.2.3 [INFO] [stderr] Checking num-rational v0.4.2 [INFO] [stderr] Checking arrow-schema v55.2.0 [INFO] [stderr] Checking rand_distr v0.4.3 [INFO] [stderr] Checking linux-raw-sys v0.9.4 [INFO] [stderr] Compiling polars-core v0.49.1 [INFO] [stderr] Checking unicode-segmentation v1.12.0 [INFO] [stderr] Checking unicode-width v0.2.1 [INFO] [stderr] Checking num v0.4.3 [INFO] [stderr] Checking lexical-util v1.0.6 [INFO] [stderr] Compiling polars-ops v0.49.1 [INFO] [stderr] Checking uuid v1.17.0 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling zstd-sys v2.0.15+zstd.1.5.7 [INFO] [stderr] Compiling psm v0.1.26 [INFO] [stderr] Compiling stacker v0.1.21 [INFO] [stderr] Compiling lz4-sys v1.11.1+lz4-1.10.0 [INFO] [stderr] Checking xxhash-rust v0.8.15 [INFO] [stderr] Checking boxcar v0.2.13 [INFO] [stderr] Compiling blake3 v1.8.2 [INFO] [stderr] Checking argminmax v0.6.3 [INFO] [stderr] Checking fallible-streaming-iterator v0.1.9 [INFO] [stderr] Compiling semver v1.0.26 [INFO] [stderr] Checking streaming-decompression v0.1.2 [INFO] [stderr] Checking arrayvec v0.7.6 [INFO] [stderr] Checking constant_time_eq v0.3.1 [INFO] [stderr] Checking arrayref v0.3.9 [INFO] [stderr] Compiling polars-plan v0.49.1 [INFO] [stderr] Checking home v0.5.11 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Checking lexical-parse-integer v1.0.5 [INFO] [stderr] Checking lexical-write-integer v1.0.5 [INFO] [stderr] Checking glob v0.3.2 [INFO] [stderr] Checking concurrent-queue v2.5.0 [INFO] [stderr] Checking lexical-parse-float v1.0.5 [INFO] [stderr] Checking parking v2.2.1 [INFO] [stderr] Checking atoi v2.0.0 [INFO] [stderr] Checking crossbeam-queue v0.3.12 [INFO] [stderr] Checking crossbeam-channel v0.5.15 [INFO] [stderr] Compiling matrixmultiply v0.3.10 [INFO] [stderr] Checking lexical-write-float v1.0.5 [INFO] [stderr] Compiling xml-rs v0.8.26 [INFO] [stderr] Checking event-listener v5.4.0 [INFO] [stderr] Compiling polars-stream v0.49.1 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling num-conv v0.1.0 [INFO] [stderr] Compiling typenum v1.18.0 [INFO] [stderr] Checking alloc-no-stdlib v2.0.4 [INFO] [stderr] Checking anstyle v1.0.11 [INFO] [stderr] Compiling flatbuffers v25.2.10 [INFO] [stderr] Compiling time-core v0.1.4 [INFO] [stderr] Checking lexical-core v1.0.5 [INFO] [stderr] Checking event-listener-strategy v0.5.4 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Checking powerfmt v0.2.0 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Checking rawpointer v0.2.1 [INFO] [stderr] Checking alloc-stdlib v0.2.2 [INFO] [stderr] Checking async-channel v2.5.0 [INFO] [stderr] Compiling time-macros v0.2.22 [INFO] [stderr] Checking approx v0.5.1 [INFO] [stderr] Checking csv-core v0.1.12 [INFO] [stderr] Compiling polars-lazy v0.49.1 [INFO] [stderr] Compiling parse-zoneinfo v0.3.1 [INFO] [stderr] Compiling mockall_derive v0.13.1 [INFO] [stderr] Checking predicates-core v1.0.9 [INFO] [stderr] Compiling snap v1.1.1 [INFO] [stderr] Checking num_threads v0.1.7 [INFO] [stderr] Checking utf8parse v0.2.2 [INFO] [stderr] Compiling chrono-tz-build v0.4.1 [INFO] [stderr] Checking fastrand v2.3.0 [INFO] [stderr] Checking anstyle-parse v0.2.7 [INFO] [stderr] Checking brotli-decompressor v5.0.0 [INFO] [stderr] Checking ordered-float v2.10.1 [INFO] [stderr] Compiling polars v0.49.1 [INFO] [stderr] Checking wait-timeout v0.2.1 [INFO] [stderr] Checking integer-encoding v3.0.4 [INFO] [stderr] Checking twox-hash v2.1.1 [INFO] [stderr] Checking colorchoice v1.0.4 [INFO] [stderr] Checking termtree v0.5.1 [INFO] [stderr] Checking is_terminal_polyfill v1.70.1 [INFO] [stderr] Checking quick-error v1.2.3 [INFO] [stderr] Compiling anyhow v1.0.98 [INFO] [stderr] Checking bit-vec v0.8.0 [INFO] [stderr] Compiling cfg-if v1.0.1 [INFO] [stderr] Checking anstyle-query v1.1.3 [INFO] [stderr] Checking predicates-tree v1.0.12 [INFO] [stderr] Checking lz4_flex v0.11.5 [INFO] [stderr] Checking anstream v0.6.19 [INFO] [stderr] Checking predicates v3.1.3 [INFO] [stderr] Compiling chrono-tz v0.10.3 [INFO] [stderr] Checking bit-set v0.8.0 [INFO] [stderr] Checking crossbeam v0.8.4 [INFO] [stderr] Checking rand_xorshift v0.4.0 [INFO] [stderr] Checking thrift v0.17.0 [INFO] [stderr] Checking lazy_static v1.5.0 [INFO] [stderr] Compiling seq-macro v0.3.6 [INFO] [stderr] Checking jiff v0.2.15 [INFO] [stderr] Checking downcast v0.11.0 [INFO] [stderr] Checking fragile v2.0.1 [INFO] [stderr] Checking unarray v0.1.4 [INFO] [stderr] Checking ndarray v0.16.1 [INFO] [stderr] Checking brotli v8.0.1 [INFO] [stderr] Checking env_filter v0.1.3 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [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 tokio-macros v2.5.0 [INFO] [stderr] Compiling tracing-attributes v0.1.30 [INFO] [stderr] Compiling bytemuck_derive v1.9.3 [INFO] [stderr] Compiling async-trait v0.1.88 [INFO] [stderr] Compiling thiserror-impl v2.0.12 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking zerofrom v0.1.6 [INFO] [stderr] Checking yoke v0.8.0 [INFO] [stderr] Checking zerovec v0.11.2 [INFO] [stderr] Checking zerotrie v0.2.2 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Checking rustls-webpki v0.103.3 [INFO] [stderr] Checking bytemuck v1.23.1 [INFO] [stderr] Compiling strum_macros v0.26.4 [INFO] [stderr] Compiling async-stream-impl v0.3.6 [INFO] [stderr] Checking tinystr v0.8.1 [INFO] [stderr] Checking potential_utf v0.1.2 [INFO] [stderr] Checking icu_collections v2.0.0 [INFO] [stderr] Checking icu_locale_core v2.0.0 [INFO] [stderr] Compiling recursive-proc-macro-impl v0.1.1 [INFO] [stderr] Checking async-stream v0.3.6 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Checking safe_arch v0.7.4 [INFO] [stderr] Checking recursive v0.1.1 [INFO] [stderr] Checking env_logger v0.11.8 [INFO] [stderr] Checking wide v0.7.33 [INFO] [stderr] Checking icu_provider v2.0.0 [INFO] [stderr] Checking icu_properties v2.0.1 [INFO] [stderr] Checking icu_normalizer v2.0.0 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Checking polars-parquet-format v0.1.0 [INFO] [stderr] Checking zstd v0.13.3 [INFO] [stderr] Checking simba v0.9.0 [INFO] [stderr] Checking idna_adapter v1.2.1 [INFO] [stderr] Checking idna v1.0.3 [INFO] [stderr] Checking url v2.5.4 [INFO] [stderr] Checking mockall v0.13.1 [INFO] [stderr] Checking bytes v1.10.1 [INFO] [stderr] Checking hashbrown v0.15.4 [INFO] [stderr] Checking bitflags v2.9.1 [INFO] [stderr] Checking chrono v0.4.41 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking quick-xml v0.37.5 [INFO] [stderr] Checking compact_str v0.8.1 [INFO] [stderr] Checking rmp-serde v1.3.0 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Checking raw-cpuid v11.5.0 [INFO] [stderr] Checking rustix v0.38.44 [INFO] [stderr] Checking deranged v0.4.0 [INFO] [stderr] Checking tokio v1.46.1 [INFO] [stderr] Checking http v1.3.1 [INFO] [stderr] Checking arrow-buffer v55.2.0 [INFO] [stderr] Compiling serde-xml-rs v0.5.1 [INFO] [stderr] Checking csv v1.3.1 [INFO] [stderr] Checking crossterm v0.28.1 [INFO] [stderr] Checking indexmap v2.10.0 [INFO] [stderr] Checking planus v1.1.1 [INFO] [stderr] Checking now v0.1.3 [INFO] [stderr] Checking arrow-data v55.2.0 [INFO] [stderr] Compiling time-tz v2.0.0 [INFO] [stderr] Checking comfy-table v7.1.4 [INFO] [stderr] Checking time v0.3.41 [INFO] [stderr] Checking http-body v1.0.1 [INFO] [stderr] Checking http-body-util v0.1.3 [INFO] [stderr] Checking polars-arrow-format v0.2.0 [INFO] [stderr] Checking arrow-array v55.2.0 [INFO] [stderr] Checking fs4 v0.13.1 [INFO] [stderr] Checking tempfile v3.20.0 [INFO] [stderr] Checking rusty-fork v0.3.0 [INFO] [stderr] Checking proptest v1.7.0 [INFO] [stderr] Checking nalgebra v0.33.2 [INFO] [stderr] Checking arrow-select v55.2.0 [INFO] [stderr] Checking arrow-ipc v55.2.0 [INFO] [stderr] Checking arrow-row v55.2.0 [INFO] [stderr] Checking arrow-arith v55.2.0 [INFO] [stderr] Checking lz4 v1.28.1 [INFO] [stderr] Checking arrow-cast v55.2.0 [INFO] [stderr] Checking arrow-string v55.2.0 [INFO] [stderr] Checking arrow-ord v55.2.0 [INFO] [stderr] Checking arrow-json v55.2.0 [INFO] [stderr] Checking arrow-csv v55.2.0 [INFO] [stderr] Checking parquet v55.2.0 [INFO] [stderr] Checking arrow v55.2.0 [INFO] [stderr] Checking tokio-util v0.7.15 [INFO] [stderr] Checking tokio-rustls v0.26.2 [INFO] [stderr] Checking tower v0.5.2 [INFO] [stderr] Checking tower-http v0.6.6 [INFO] [stderr] Checking h2 v0.4.11 [INFO] [stderr] Checking ibapi v1.2.2 [INFO] [stderr] Checking hyper v1.6.0 [INFO] [stderr] Checking statrs v0.18.0 [INFO] [stderr] Checking hyper-util v0.1.15 [INFO] [stderr] Checking hyper-rustls v0.27.7 [INFO] [stderr] Checking reqwest v0.12.22 [INFO] [stderr] Checking object_store v0.12.2 [INFO] [stderr] Checking polars-error v0.49.1 [INFO] [stderr] Checking polars-row v0.49.1 [INFO] [stderr] Checking polars-parquet v0.49.1 [INFO] [stderr] Checking polars-time v0.49.1 [INFO] [stderr] Checking polars-io v0.49.1 [INFO] [stderr] Checking polars-expr v0.49.1 [INFO] [stderr] Checking polars-mem-engine v0.49.1 [INFO] [stderr] Checking algotrading v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `info` [INFO] [stdout] --> src/momentum.rs:13:18 [INFO] [stdout] | [INFO] [stdout] 13 | use log::{debug, info, warn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `VolatilityRegime` [INFO] [stdout] --> src/signals/bollinger.rs:7:82 [INFO] [stdout] | [INFO] [stdout] 7 | BollingerCalculator, BollingerMetrics, BollingerSignal, BollingerSignalType, VolatilityRegime, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `info` [INFO] [stdout] --> src/momentum.rs:13:18 [INFO] [stdout] | [INFO] [stdout] 13 | use log::{debug, info, warn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `lookback_periods` is never read [INFO] [stdout] --> src/carry.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 50 | pub struct CarryStrategy { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 51 | lookback_periods: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `calculate_position_hint` is never used [INFO] [stdout] --> src/signals/bollinger.rs:265:8 [INFO] [stdout] | [INFO] [stdout] 227 | impl BollingerSignalGenerator { [INFO] [stdout] | ----------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 265 | fn calculate_position_hint(&self, signal: &BollingerSignal, carver_strength: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `lookback_periods` and `volatility_threshold` are never read [INFO] [stdout] --> src/signals/carry.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct CarrySignalGenerator { [INFO] [stdout] | -------------------- fields in this struct [INFO] [stdout] 15 | lookback_periods: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 16 | volatility_threshold: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `calculate_position_hint` is never used [INFO] [stdout] --> src/signals/momentum.rs:228:8 [INFO] [stdout] | [INFO] [stdout] 201 | impl MomentumSignalGenerator { [INFO] [stdout] | ---------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 228 | fn calculate_position_hint(&self, signal: &MomentumSignal, carver_strength: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MarketImpactModel` [INFO] [stdout] --> tests/transaction_cost_tests.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | MarketImpactModel, TransactionCostCalculator, TransactionCostConfig, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `algotrading::portfolio::Portfolio` [INFO] [stdout] --> tests/risk_budgeting_inertia_tests.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use algotrading::portfolio::Portfolio; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `algotrading::position_inertia::PositionInertiaCalculator` [INFO] [stdout] --> tests/risk_budgeting_inertia_tests.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use algotrading::position_inertia::PositionInertiaCalculator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ERCAllocation` and `RiskBudgeter` [INFO] [stdout] --> tests/risk_budgeting_inertia_tests.rs:3:35 [INFO] [stdout] | [INFO] [stdout] 3 | use algotrading::risk_budgeting::{ERCAllocation, RiskBudgeter}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `algotrading::security_types::SecurityType` [INFO] [stdout] --> tests/risk_budgeting_inertia_tests.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use algotrading::security_types::SecurityType; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `algotrading::transaction_cost::TransactionCostCalculator` [INFO] [stdout] --> tests/risk_budgeting_inertia_tests.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use algotrading::transaction_cost::TransactionCostCalculator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Position` [INFO] [stdout] --> tests/trading_integration_tests.rs:3:41 [INFO] [stdout] | [INFO] [stdout] 3 | use algotrading::portfolio::{Portfolio, Position}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `algotrading::portfolio::Portfolio` [INFO] [stdout] --> tests/position_inertia_tests.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use algotrading::portfolio::Portfolio; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `algotrading::security_types::SecurityType` [INFO] [stdout] --> tests/position_inertia_tests.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use algotrading::security_types::SecurityType; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `algotrading::transaction_cost::TransactionCostCalculator` [INFO] [stdout] --> tests/position_inertia_tests.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use algotrading::transaction_cost::TransactionCostCalculator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> tests/position_inertia_tests.rs:288:13 [INFO] [stdout] | [INFO] [stdout] 288 | let mut config = InertiaConfig { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `info` [INFO] [stdout] --> src/momentum.rs:13:18 [INFO] [stdout] | [INFO] [stdout] 13 | use log::{debug, info, warn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `VolatilityRegime` [INFO] [stdout] --> src/signals/bollinger.rs:7:82 [INFO] [stdout] | [INFO] [stdout] 7 | BollingerCalculator, BollingerMetrics, BollingerSignal, BollingerSignalType, VolatilityRegime, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `filter_result` [INFO] [stdout] --> tests/trading_integration_tests.rs:243:32 [INFO] [stdout] | [INFO] [stdout] 243 | let (filtered_signals, filter_result) = integration_layer [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_filter_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `info` [INFO] [stdout] --> src/momentum.rs:13:18 [INFO] [stdout] | [INFO] [stdout] 13 | use log::{debug, info, warn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `lookback_periods` is never read [INFO] [stdout] --> src/carry.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 50 | pub struct CarryStrategy { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 51 | lookback_periods: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `calculate_position_hint` is never used [INFO] [stdout] --> src/signals/bollinger.rs:265:8 [INFO] [stdout] | [INFO] [stdout] 227 | impl BollingerSignalGenerator { [INFO] [stdout] | ----------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 265 | fn calculate_position_hint(&self, signal: &BollingerSignal, carver_strength: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `calculate_position_hint` is never used [INFO] [stdout] --> src/signals/momentum.rs:228:8 [INFO] [stdout] | [INFO] [stdout] 201 | impl MomentumSignalGenerator { [INFO] [stdout] | ---------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 228 | fn calculate_position_hint(&self, signal: &MomentumSignal, carver_strength: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `middle_line` is never read [INFO] [stdout] --> src/bollinger.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct BollingerBands { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 6 | pub middle_line: f64, // Simple moving average [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BollingerBands` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `symbol` and `timeframe` are never read [INFO] [stdout] --> src/bollinger.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct BollingerSignal { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 16 | pub symbol: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 17 | pub timeframe: TimeFrame, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BollingerSignal` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `dominant_signal` is never read [INFO] [stdout] --> src/bollinger.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct BollingerMetrics { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 37 | pub dominant_signal: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BollingerMetrics` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `with_settings` is never used [INFO] [stdout] --> src/bollinger.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 61 | impl BollingerCalculator { [INFO] [stdout] | ------------------------ associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn with_settings(period: usize, std_multiplier: f64, squeeze_threshold: f64) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `symbol`, `timeframe`, `lookback_high`, `lookback_low`, and `volatility_normalized` are never read [INFO] [stdout] --> src/breakout.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct BreakoutSignal { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 6 | pub symbol: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 7 | pub timeframe: TimeFrame, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 12 | pub lookback_high: f64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 13 | pub lookback_low: f64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 14 | pub volatility_normalized: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BreakoutSignal` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `strongest_signal` is never read [INFO] [stdout] --> src/breakout.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct BreakoutMetrics { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 29 | pub strongest_signal: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BreakoutMetrics` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `lookback_periods` is never read [INFO] [stdout] --> src/breakout.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct BreakoutCalculator { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 40 | pub lookback_periods: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BreakoutCalculator` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `with_settings` is never used [INFO] [stdout] --> src/breakout.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 49 | impl BreakoutCalculator { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn with_settings( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `CarrySignalType` is never used [INFO] [stdout] --> src/carry.rs:8:10 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum CarrySignalType { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `InterestRateDifferential` is never constructed [INFO] [stdout] --> src/carry.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct InterestRateDifferential { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CarrySignal` is never constructed [INFO] [stdout] --> src/carry.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct CarrySignal { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MultiTimeframeCarry` is never constructed [INFO] [stdout] --> src/carry.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 41 | pub struct MultiTimeframeCarry { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CarryStrategy` is never constructed [INFO] [stdout] --> src/carry.rs:50:12 [INFO] [stdout] | [INFO] [stdout] 50 | pub struct CarryStrategy { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `calculate_carry_signal`, `calculate_multi_timeframe_carry`, `carry_to_signal_strength`, `calculate_carry_percentiles`, and `determine_signal_type` are never used [INFO] [stdout] --> src/carry.rs:59:12 [INFO] [stdout] | [INFO] [stdout] 57 | impl CarryStrategy { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 58 | /// Create new carry strategy with Carver parameters [INFO] [stdout] 59 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn calculate_carry_signal( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 153 | pub fn calculate_multi_timeframe_carry( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 203 | pub fn carry_to_signal_strength( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | pub fn calculate_carry_percentiles( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 252 | pub fn determine_signal_type(&self, differential: f64, volatility: f64) -> CarrySignalType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `load` is never used [INFO] [stdout] --> src/config.rs:237:12 [INFO] [stdout] | [INFO] [stdout] 236 | impl TradingConfig { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 237 | pub fn load() -> Result { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/connection.rs:47:18 [INFO] [stdout] | [INFO] [stdout] 28 | impl TwsClient { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 47 | pub async fn connect(&mut self) -> Result<()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub async fn request_market_data(&self, symbol: &str, req_id: i32) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 277 | pub async fn place_enhanced_order(&self, params: OrderParams) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 309 | pub async fn place_limit_order( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 338 | pub async fn place_stop_loss_order( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 367 | pub async fn place_take_profit_order( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 398 | pub async fn place_bracket_order( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 626 | pub async fn unsubscribe_realtime_data(&self, req_id: i32) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `account` and `contract` are never read [INFO] [stdout] --> src/connection.rs:765:9 [INFO] [stdout] | [INFO] [stdout] 764 | pub struct AccountPosition { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 765 | pub account: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 769 | pub contract: Contract, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AccountPosition` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ContractMonth` is never used [INFO] [stdout] --> src/futures_utils.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum ContractMonth { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `code`, `from_month`, and `to_month` are never used [INFO] [stdout] --> src/futures_utils.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl ContractMonth { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 22 | /// Get the month code for CME contracts [INFO] [stdout] 23 | pub fn code(&self) -> char { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn from_month(month: u32) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 60 | pub fn to_month(self) -> u32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MarginInfo` is never constructed [INFO] [stdout] --> src/margin.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct MarginInfo { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `margin_utilization_after` and `excess_liquidity_after` are never read [INFO] [stdout] --> src/margin.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct MarginValidation { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 21 | pub margin_utilization_after: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 22 | pub excess_liquidity_after: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MarginValidation` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_max_position_size` is never used [INFO] [stdout] --> src/margin.rs:290:8 [INFO] [stdout] | [INFO] [stdout] 290 | pub fn calculate_max_position_size( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_portfolio_margin_stats` is never used [INFO] [stdout] --> src/margin.rs:326:8 [INFO] [stdout] | [INFO] [stdout] 326 | pub fn calculate_portfolio_margin_stats( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `timeframe` is never read [INFO] [stdout] --> src/market_data.rs:106:9 [INFO] [stdout] | [INFO] [stdout] 99 | pub struct EnhancedMomentumMetrics { [INFO] [stdout] | ----------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 106 | pub timeframe: TimeFrame, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EnhancedMomentumMetrics` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `symbol` and `weighted_score` are never read [INFO] [stdout] --> src/market_data.rs:111:9 [INFO] [stdout] | [INFO] [stdout] 110 | pub struct MultiTimeframeMomentum { [INFO] [stdout] | ---------------------- fields in this struct [INFO] [stdout] 111 | pub symbol: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub weighted_score: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MultiTimeframeMomentum` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `bid_price`, `ask_price`, and `timestamp` are never read [INFO] [stdout] --> src/market_data.rs:121:9 [INFO] [stdout] | [INFO] [stdout] 118 | pub struct MarketDataUpdate { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 121 | pub bid_price: f64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 122 | pub ask_price: f64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 123 | pub volume: i64, [INFO] [stdout] 124 | pub timestamp: DateTime, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MarketDataUpdate` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `bid_price`, `ask_price`, and `security_info` are never read [INFO] [stdout] --> src/market_data.rs:131:9 [INFO] [stdout] | [INFO] [stdout] 128 | pub struct MarketData { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 131 | pub bid_price: f64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 132 | pub ask_price: f64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 135 | pub security_info: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MarketData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `symbol` is never read [INFO] [stdout] --> src/market_data.rs:140:9 [INFO] [stdout] | [INFO] [stdout] 139 | pub struct PriceHistory { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] 140 | pub symbol: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PriceHistory` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `OrderType` is never used [INFO] [stdout] --> src/order_types.rs:8:10 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum OrderType { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `TimeInForce` is never used [INFO] [stdout] --> src/order_types.rs:19:10 [INFO] [stdout] | [INFO] [stdout] 19 | pub enum TimeInForce { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OrderParams` is never constructed [INFO] [stdout] --> src/order_types.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct OrderParams { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `stop_order`, `stop_limit_order`, `trailing_stop_order`, `bracket_order`, and `from_params` are never used [INFO] [stdout] --> src/order_types.rs:83:12 [INFO] [stdout] | [INFO] [stdout] 58 | impl EnhancedOrderBuilder { [INFO] [stdout] | ------------------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 83 | pub fn stop_order(action: OrderAction, quantity: f64, stop_price: f64) -> Order { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn stop_limit_order( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn trailing_stop_order( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn bracket_order( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub fn from_params(params: OrderParams) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RiskOrders` is never constructed [INFO] [stdout] --> src/order_types.rs:239:12 [INFO] [stdout] | [INFO] [stdout] 239 | pub struct RiskOrders; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `stop_loss_for_position`, `take_profit_for_position`, and `trailing_stop_for_position` are never used [INFO] [stdout] --> src/order_types.rs:243:12 [INFO] [stdout] | [INFO] [stdout] 241 | impl RiskOrders { [INFO] [stdout] | --------------- associated functions in this implementation [INFO] [stdout] 242 | /// Create a stop loss order for an existing position [INFO] [stdout] 243 | pub fn stop_loss_for_position( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 268 | pub fn take_profit_for_position( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 295 | pub fn trailing_stop_for_position( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `stop_price` and `timestamp` are never read [INFO] [stdout] --> src/orders.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct Order { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 29 | pub stop_price: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 30 | pub status: OrderStatus, [INFO] [stdout] 31 | pub timestamp: DateTime, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Order` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Filled`, `PartiallyFilled`, and `Cancelled` are never constructed [INFO] [stdout] --> src/orders.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 36 | pub enum OrderStatus { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 39 | Filled, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 40 | PartiallyFilled, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 41 | Cancelled, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OrderStatus` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_pending_orders`, `get_order`, and `cancel_order` are never used [INFO] [stdout] --> src/orders.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 56 | impl OrderManager { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn get_pending_orders(&self) -> Vec<&Order> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | pub fn get_order(&self, order_id: i32) -> Option<&Order> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn cancel_order(&mut self, order_id: i32) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `symbol` and `realized_pnl` are never read [INFO] [stdout] --> src/portfolio.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Position { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 8 | pub symbol: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 13 | pub realized_pnl: f64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Position` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `total_realized_pnl` and `timestamp` are never read [INFO] [stdout] --> src/portfolio.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct PortfolioStats { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 26 | pub total_realized_pnl: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 27 | pub positions_count: usize, [INFO] [stdout] 28 | pub timestamp: DateTime, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PortfolioStats` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `update_position` is never used [INFO] [stdout] --> src/portfolio.rs:61:12 [INFO] [stdout] | [INFO] [stdout] 43 | impl Portfolio { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn update_position(&mut self, symbol: &str, quantity: f64, price: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CostBenefitAnalysis` is never constructed [INFO] [stdout] --> src/position_inertia.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct CostBenefitAnalysis { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `analyze_portfolio_rebalancing` and `calculate_cost_benefit_analysis` are never used [INFO] [stdout] --> src/position_inertia.rs:148:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl PositionInertiaCalculator { [INFO] [stdout] | ------------------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 148 | pub fn analyze_portfolio_rebalancing( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 168 | pub fn calculate_cost_benefit_analysis( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `remove_position`, `get_positioned_symbols`, and `clear_positions` are never used [INFO] [stdout] --> src/position_manager.rs:68:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl PositionManager { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 68 | pub fn remove_position(&mut self, symbol: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn get_positioned_symbols(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn clear_positions(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `max_position_value` and `available_capital` are never read [INFO] [stdout] --> src/risk.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct RiskMetrics { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 10 | pub portfolio_value: f64, [INFO] [stdout] 11 | pub max_position_value: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 12 | pub current_exposure: f64, [INFO] [stdout] 13 | pub available_capital: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RiskMetrics` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `symbol` and `risk_amount` are never read [INFO] [stdout] --> src/risk.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct PositionRisk { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 20 | pub symbol: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | pub risk_amount: f64, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PositionRisk` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `HoldPosition` is never constructed [INFO] [stdout] --> src/risk.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub enum RiskAction { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 47 | HoldPosition, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RiskAction` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `calculate_max_position_size`, `update_stop_loss`, and `update_take_profit` are never used [INFO] [stdout] --> src/risk.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 64 | impl RiskManager { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn calculate_max_position_size( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 360 | pub fn update_stop_loss(&mut self, symbol: String, stop_loss_price: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 365 | pub fn update_take_profit(&mut self, symbol: String, take_profit_price: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `volatility` is never read [INFO] [stdout] --> src/risk_budgeting.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct RiskContribution { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 28 | pub volatility: f64, // Individual instrument volatility [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RiskContribution` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `target_portfolio_volatility`, `diversification_ratio`, `concentration_score`, `largest_risk_contributor`, and `risk_budget_violations` are never read [INFO] [stdout] --> src/risk_budgeting.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 36 | pub struct RiskAttribution { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 37 | pub total_portfolio_volatility: f64, [INFO] [stdout] 38 | pub target_portfolio_volatility: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 39 | pub risk_contributions: Vec, [INFO] [stdout] 40 | pub diversification_ratio: f64, // Actual vs theoretical portfolio volatility [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 41 | pub concentration_score: f64, // Measure of concentration risk (0-1) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 42 | pub largest_risk_contributor: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 43 | pub risk_budget_violations: Vec, // Positions exceeding risk budget [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RiskAttribution` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `risk_contribution_current` and `risk_contribution_target` are never read [INFO] [stdout] --> src/risk_budgeting.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 48 | pub struct ERCAllocation { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 53 | pub risk_contribution_current: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 54 | pub risk_contribution_target: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ERCAllocation` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `average_correlation`, `max_correlation`, and `correlation_clusters` are never read [INFO] [stdout] --> src/risk_budgeting.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 59 | pub struct CorrelationRisk { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 60 | pub average_correlation: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 61 | pub max_correlation: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 62 | pub correlation_clusters: Vec>, // Groups of highly correlated assets [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CorrelationRisk` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `update_correlation`, `update_volatility`, and `generate_rebalancing_recommendations` are never used [INFO] [stdout] --> src/risk_budgeting.rs:78:12 [INFO] [stdout] | [INFO] [stdout] 66 | impl RiskBudgeter { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 78 | pub fn update_correlation( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | pub fn update_volatility(&mut self, symbol: &str, volatility: f64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 506 | pub fn generate_rebalancing_recommendations( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ERCInertiaDecision` is never used [INFO] [stdout] --> src/risk_budgeting_inertia.rs:5:10 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum ERCInertiaDecision { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ERCInertiaDecisionInfo` is never constructed [INFO] [stdout] --> src/risk_budgeting_inertia.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct ERCInertiaDecisionInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RiskBudgetingInertiaCalculator` is never constructed [INFO] [stdout] --> src/risk_budgeting_inertia.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct RiskBudgetingInertiaCalculator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `calculate_erc_with_inertia`, `calculate_erc_with_correlation_risk`, and `calculate_erc_with_volatility_adjustment` are never used [INFO] [stdout] --> src/risk_budgeting_inertia.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 33 | impl RiskBudgetingInertiaCalculator { [INFO] [stdout] | ----------------------------------- associated items in this implementation [INFO] [stdout] 34 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn calculate_erc_with_inertia( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | pub fn calculate_erc_with_correlation_risk( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn calculate_erc_with_volatility_adjustment( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_contract_value` and `get_forex_description` are never used [INFO] [stdout] --> src/security_types.rs:96:12 [INFO] [stdout] | [INFO] [stdout] 36 | impl SecurityInfo { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 96 | pub fn get_contract_value(&self, price: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 130 | pub fn get_forex_description(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BollingerSignalGenerator` is never constructed [INFO] [stdout] --> src/signals/bollinger.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct BollingerSignalGenerator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `with_calculator` are never used [INFO] [stdout] --> src/signals/bollinger.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl BollingerSignalGenerator { [INFO] [stdout] | ----------------------------- associated functions in this implementation [INFO] [stdout] 21 | /// Create new bollinger signal generator with default settings [INFO] [stdout] 22 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn with_calculator(calculator: BollingerCalculator) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `validate_signal`, `calculate_position_hint`, and `assess_signal_quality` are never used [INFO] [stdout] --> src/signals/bollinger.rs:229:8 [INFO] [stdout] | [INFO] [stdout] 227 | impl BollingerSignalGenerator { [INFO] [stdout] | ----------------------------- methods in this implementation [INFO] [stdout] 228 | /// Validate signal data for consistency and reasonable values [INFO] [stdout] 229 | fn validate_signal(&self, signal: &BollingerSignal) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 265 | fn calculate_position_hint(&self, signal: &BollingerSignal, carver_strength: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 289 | fn assess_signal_quality( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BreakoutSignalGenerator` is never constructed [INFO] [stdout] --> src/signals/breakout.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct BreakoutSignalGenerator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `with_calculator` are never used [INFO] [stdout] --> src/signals/breakout.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl BreakoutSignalGenerator { [INFO] [stdout] | ---------------------------- associated functions in this implementation [INFO] [stdout] 19 | /// Create new breakout signal generator with default settings [INFO] [stdout] 20 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn with_calculator(calculator: BreakoutCalculator) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `assess_signal_quality` is never used [INFO] [stdout] --> src/signals/breakout.rs:107:8 [INFO] [stdout] | [INFO] [stdout] 105 | impl BreakoutSignalGenerator { [INFO] [stdout] | ---------------------------- method in this implementation [INFO] [stdout] 106 | /// Assess signal quality based on strength and breakout characteristics [INFO] [stdout] 107 | fn assess_signal_quality( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CarrySignalGenerator` is never constructed [INFO] [stdout] --> src/signals/carry.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct CarrySignalGenerator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `default_forex`, `calculate_raw_carry_signal`, and `get_interest_rates` are never used [INFO] [stdout] --> src/signals/carry.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl CarrySignalGenerator { [INFO] [stdout] | ------------------------- associated items in this implementation [INFO] [stdout] 22 | /// Create new carry signal generator [INFO] [stdout] 23 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn default_forex() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | fn calculate_raw_carry_signal( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | fn get_interest_rates(&self, symbol: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `create_default_signal` is never used [INFO] [stdout] --> src/signals/carry.rs:269:8 [INFO] [stdout] | [INFO] [stdout] 267 | impl CarrySignalGenerator { [INFO] [stdout] | ------------------------- method in this implementation [INFO] [stdout] 268 | /// Create a default signal for missing timeframes [INFO] [stdout] 269 | fn create_default_signal(&self, symbol: &str, timeframe: TimeFrame) -> CarrySignal { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `calculate_all_signals`, `update_weights`, `config`, and `extract_signal_from_metrics` are never used [INFO] [stdout] --> src/signals/coordinator.rs:128:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl SignalCoordinator { [INFO] [stdout] | ---------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 128 | pub fn calculate_all_signals( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn update_weights(&mut self, new_weights: SignalWeights) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 182 | pub fn config(&self) -> &CoordinatorConfig { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 311 | fn extract_signal_from_metrics(&self, _metrics: T, signal_type: SignalType) -> SignalCore { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CoordinatorBuilder` is never constructed [INFO] [stdout] --> src/signals/coordinator.rs:333:12 [INFO] [stdout] | [INFO] [stdout] 333 | pub struct CoordinatorBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_weights`, `with_consensus_threshold`, `with_quality_threshold`, `with_cross_validation`, and `build` are never used [INFO] [stdout] --> src/signals/coordinator.rs:339:12 [INFO] [stdout] | [INFO] [stdout] 337 | impl CoordinatorBuilder { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 338 | /// Create new coordinator builder [INFO] [stdout] 339 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 346 | pub fn with_weights(mut self, weights: SignalWeights) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 352 | pub fn with_consensus_threshold(mut self, threshold: f64) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 358 | pub fn with_quality_threshold(mut self, threshold: f64) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 364 | pub fn with_cross_validation(mut self, enabled: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 370 | pub fn build(self) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_actionable` and `direction` are never used [INFO] [stdout] --> src/signals/core.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 40 | impl SignalCore { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn is_actionable(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | pub fn direction(&self) -> i8 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MultiTimeframeCore` is never constructed [INFO] [stdout] --> src/signals/core.rs:81:12 [INFO] [stdout] | [INFO] [stdout] 81 | pub struct MultiTimeframeCore { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `get_signal`, `has_strong_consensus`, and `active_timeframes` are never used [INFO] [stdout] --> src/signals/core.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 89 | / impl MultiTimeframeCore [INFO] [stdout] 90 | | where [INFO] [stdout] 91 | | T: Clone, [INFO] [stdout] | |_____________- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn get_signal(&self, timeframe: &TimeFrame) -> Option<&T> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn has_strong_consensus(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | pub fn active_timeframes(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `empty`, `has_actionable_signals`, and `max_signal_strength` are never used [INFO] [stdout] --> src/signals/core.rs:140:12 [INFO] [stdout] | [INFO] [stdout] 138 | impl CombinedSignals { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 139 | /// Create empty combined signals [INFO] [stdout] 140 | pub fn empty() -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 153 | pub fn has_actionable_signals(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 166 | pub fn max_signal_strength(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `SignalGenerator` is never used [INFO] [stdout] --> src/signals/core.rs:182:11 [INFO] [stdout] | [INFO] [stdout] 182 | pub trait SignalGenerator { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `normalize` is never used [INFO] [stdout] --> src/signals/core.rs:272:12 [INFO] [stdout] | [INFO] [stdout] 258 | impl SignalWeights { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 272 | pub fn normalize(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SignalExample` is never constructed [INFO] [stdout] --> src/signals/example.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct SignalExample; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `run_basic_example`, `analyze_signal_types`, and `advanced_coordination_example` are never used [INFO] [stdout] --> src/signals/example.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl SignalExample { [INFO] [stdout] | ------------------ associated functions in this implementation [INFO] [stdout] 14 | /// Demonstrate basic signal generation and coordination [INFO] [stdout] 15 | pub fn run_basic_example(market_data: &MarketDataHandler) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn analyze_signal_types(market_data: &MarketDataHandler, symbols: &[&str]) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 138 | pub fn advanced_coordination_example() -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MomentumSignal` is never constructed [INFO] [stdout] --> src/signals/momentum.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct MomentumSignal { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MomentumMetrics` is never constructed [INFO] [stdout] --> src/signals/momentum.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct MomentumMetrics { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MomentumSignalGenerator` is never constructed [INFO] [stdout] --> src/signals/momentum.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 37 | pub struct MomentumSignalGenerator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `with_lookback` are never used [INFO] [stdout] --> src/signals/momentum.rs:43:12 [INFO] [stdout] | [INFO] [stdout] 41 | impl MomentumSignalGenerator { [INFO] [stdout] | ---------------------------- associated functions in this implementation [INFO] [stdout] 42 | /// Create new momentum signal generator with default settings [INFO] [stdout] 43 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn with_lookback(lookback_period: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `validate_signal`, `calculate_position_hint`, `calculate_carver_signal_strength`, and `assess_signal_quality` are never used [INFO] [stdout] --> src/signals/momentum.rs:203:8 [INFO] [stdout] | [INFO] [stdout] 201 | impl MomentumSignalGenerator { [INFO] [stdout] | ---------------------------- methods in this implementation [INFO] [stdout] 202 | /// Validate momentum signal data for consistency [INFO] [stdout] 203 | fn validate_signal(&self, signal: &MomentumSignal) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | fn calculate_position_hint(&self, signal: &MomentumSignal, carver_strength: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 283 | fn calculate_carver_signal_strength(&self, signal: &MomentumSignal) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 375 | fn assess_signal_quality( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated functions are never used [INFO] [stdout] --> src/signals/utils.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl SignalUtils { [INFO] [stdout] | ---------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn calculate_volatility(prices: &[f64], annualized: bool) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | pub fn calculate_simple_volatility(prices: &[f64], annualized: bool) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | pub fn calculate_percentile_rank(current_value: f64, historical_values: &[f64]) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn calculate_consensus_score(signal_strengths: &[f64]) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 224 | pub fn calculate_quality_multiplier( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 265 | pub fn calculate_regime_adjustment(current_volatility: f64, average_volatility: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 292 | pub fn calculate_composite_signal( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 323 | pub fn default_timeframe_weights() -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 340 | pub fn calculate_signal_sharpe(signal_strength: f64, volatility: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 357 | pub fn validate_signal_data(signal_strength: f64, percentile_rank: f64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sharpe_ratio` is never used [INFO] [stdout] --> src/stats.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn sharpe_ratio(returns: &[f64], risk_free_rate: f64, periods_per_year: f64) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sortino_ratio` is never used [INFO] [stdout] --> src/stats.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn sortino_ratio(returns: &[f64], risk_free_rate: f64, periods_per_year: f64) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `max_drawdown` is never used [INFO] [stdout] --> src/stats.rs:64:8 [INFO] [stdout] | [INFO] [stdout] 64 | pub fn max_drawdown(values: &[f64]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `win_rate` is never used [INFO] [stdout] --> src/stats.rs:86:8 [INFO] [stdout] | [INFO] [stdout] 86 | pub fn win_rate(returns: &[f64]) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `profit_factor` is never used [INFO] [stdout] --> src/stats.rs:96:8 [INFO] [stdout] | [INFO] [stdout] 96 | pub fn profit_factor(returns: &[f64]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `t_test_returns` is never used [INFO] [stdout] --> src/stats.rs:108:8 [INFO] [stdout] | [INFO] [stdout] 108 | pub fn t_test_returns(returns: &[f64], confidence_level: f64) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TTestResult` is never constructed [INFO] [stdout] --> src/stats.rs:144:12 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct TTestResult { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `information_ratio` is never used [INFO] [stdout] --> src/stats.rs:154:8 [INFO] [stdout] | [INFO] [stdout] 154 | pub fn information_ratio(returns: &[f64], benchmark_returns: &[f64]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `rolling_correlation` is never used [INFO] [stdout] --> src/stats.rs:183:8 [INFO] [stdout] | [INFO] [stdout] 183 | pub fn rolling_correlation(series1: &[f64], series2: &[f64], window: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PortfolioStats` is never constructed [INFO] [stdout] --> src/stats.rs:226:12 [INFO] [stdout] | [INFO] [stdout] 226 | pub struct PortfolioStats { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `calculate` is never used [INFO] [stdout] --> src/stats.rs:239:12 [INFO] [stdout] | [INFO] [stdout] 238 | impl PortfolioStats { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 239 | pub fn calculate(returns: &[f64], risk_free_rate: f64, periods_per_year: f64) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `validate_order_cost`, `update_spread_for_symbol`, and `get_inertia_config` are never used [INFO] [stdout] --> src/trading_integration.rs:291:18 [INFO] [stdout] | [INFO] [stdout] 30 | impl TradingIntegrationLayer { [INFO] [stdout] | ---------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 291 | pub async fn validate_order_cost( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 324 | pub async fn update_spread_for_symbol(&self, symbol: &str, spread: f64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 333 | pub async fn get_inertia_config(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MarketImpactModel` is never constructed [INFO] [stdout] --> src/transaction_cost.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct MarketImpactModel { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `calculate_round_trip_cost` is never used [INFO] [stdout] --> src/transaction_cost.rs:107:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl TransactionCostCalculator { [INFO] [stdout] | ------------------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn calculate_round_trip_cost( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_all_volatilities` and `has_sufficient_data` are never used [INFO] [stdout] --> src/volatility.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl VolatilityCalculator { [INFO] [stdout] | ------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn get_all_volatilities(&self) -> &HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 144 | pub fn has_sufficient_data(&self, symbol: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `risk_config` is never read [INFO] [stdout] --> src/volatility.rs:161:9 [INFO] [stdout] | [INFO] [stdout] 155 | pub struct VolatilityTargeter { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 161 | pub risk_config: RiskConfig, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VolatilityTargeter` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `calculate_idm`, `calculate_fdm`, `get_portfolio_volatility`, and `is_volatility_on_target` are never used [INFO] [stdout] --> src/volatility.rs:228:12 [INFO] [stdout] | [INFO] [stdout] 164 | impl VolatilityTargeter { [INFO] [stdout] | ----------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 228 | pub fn calculate_idm(&self, num_instruments: usize) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | pub fn calculate_fdm(&self, num_signals: usize) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 248 | pub fn get_portfolio_volatility(&self, positions: &HashMap) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 269 | pub fn is_volatility_on_target(&self, positions: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `lookback_high` and `lookback_low` are never read [INFO] [stdout] --> src/breakout.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct BreakoutSignal { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 12 | pub lookback_high: f64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 13 | pub lookback_low: f64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BreakoutSignal` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `lookback_periods` is never read [INFO] [stdout] --> src/carry.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 50 | pub struct CarryStrategy { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 51 | lookback_periods: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `load` is never used [INFO] [stdout] --> src/config.rs:237:12 [INFO] [stdout] | [INFO] [stdout] 236 | impl TradingConfig { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 237 | pub fn load() -> Result { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/connection.rs:47:18 [INFO] [stdout] | [INFO] [stdout] 28 | impl TwsClient { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 47 | pub async fn connect(&mut self) -> Result<()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub async fn request_market_data(&self, symbol: &str, req_id: i32) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 277 | pub async fn place_enhanced_order(&self, params: OrderParams) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 309 | pub async fn place_limit_order( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 338 | pub async fn place_stop_loss_order( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 367 | pub async fn place_take_profit_order( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 398 | pub async fn place_bracket_order( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `account` and `contract` are never read [INFO] [stdout] --> src/connection.rs:765:9 [INFO] [stdout] | [INFO] [stdout] 764 | pub struct AccountPosition { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 765 | pub account: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 769 | pub contract: Contract, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AccountPosition` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MarginInfo` is never constructed [INFO] [stdout] --> src/margin.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct MarginInfo { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `excess_liquidity_after` is never read [INFO] [stdout] --> src/margin.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct MarginValidation { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 22 | pub excess_liquidity_after: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MarginValidation` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_max_position_size` is never used [INFO] [stdout] --> src/margin.rs:290:8 [INFO] [stdout] | [INFO] [stdout] 290 | pub fn calculate_max_position_size( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_portfolio_margin_stats` is never used [INFO] [stdout] --> src/margin.rs:326:8 [INFO] [stdout] | [INFO] [stdout] 326 | pub fn calculate_portfolio_margin_stats( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `timeframe` is never read [INFO] [stdout] --> src/market_data.rs:106:9 [INFO] [stdout] | [INFO] [stdout] 99 | pub struct EnhancedMomentumMetrics { [INFO] [stdout] | ----------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 106 | pub timeframe: TimeFrame, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EnhancedMomentumMetrics` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `symbol` and `weighted_score` are never read [INFO] [stdout] --> src/market_data.rs:111:9 [INFO] [stdout] | [INFO] [stdout] 110 | pub struct MultiTimeframeMomentum { [INFO] [stdout] | ---------------------- fields in this struct [INFO] [stdout] 111 | pub symbol: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub weighted_score: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MultiTimeframeMomentum` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `bid_price`, `ask_price`, and `timestamp` are never read [INFO] [stdout] --> src/market_data.rs:121:9 [INFO] [stdout] | [INFO] [stdout] 118 | pub struct MarketDataUpdate { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 121 | pub bid_price: f64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 122 | pub ask_price: f64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 123 | pub volume: i64, [INFO] [stdout] 124 | pub timestamp: DateTime, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MarketDataUpdate` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `bid_price`, `ask_price`, and `security_info` are never read [INFO] [stdout] --> src/market_data.rs:131:9 [INFO] [stdout] | [INFO] [stdout] 128 | pub struct MarketData { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 131 | pub bid_price: f64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 132 | pub ask_price: f64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 135 | pub security_info: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MarketData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `symbol` is never read [INFO] [stdout] --> src/market_data.rs:140:9 [INFO] [stdout] | [INFO] [stdout] 139 | pub struct PriceHistory { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] 140 | pub symbol: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PriceHistory` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `stop_limit_order`, `trailing_stop_order`, and `from_params` are never used [INFO] [stdout] --> src/order_types.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 58 | impl EnhancedOrderBuilder { [INFO] [stdout] | ------------------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn stop_limit_order( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn trailing_stop_order( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub fn from_params(params: OrderParams) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `trailing_stop_for_position` is never used [INFO] [stdout] --> src/order_types.rs:295:12 [INFO] [stdout] | [INFO] [stdout] 241 | impl RiskOrders { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 295 | pub fn trailing_stop_for_position( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `stop_price` and `timestamp` are never read [INFO] [stdout] --> src/orders.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct Order { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 29 | pub stop_price: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 30 | pub status: OrderStatus, [INFO] [stdout] 31 | pub timestamp: DateTime, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Order` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Filled`, `PartiallyFilled`, and `Cancelled` are never constructed [INFO] [stdout] --> src/orders.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 36 | pub enum OrderStatus { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 39 | Filled, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 40 | PartiallyFilled, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 41 | Cancelled, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OrderStatus` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_pending_orders`, `get_order`, and `cancel_order` are never used [INFO] [stdout] --> src/orders.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 56 | impl OrderManager { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn get_pending_orders(&self) -> Vec<&Order> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | pub fn get_order(&self, order_id: i32) -> Option<&Order> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn cancel_order(&mut self, order_id: i32) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `symbol` is never read [INFO] [stdout] --> src/portfolio.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Position { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 8 | pub symbol: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Position` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `total_realized_pnl` and `timestamp` are never read [INFO] [stdout] --> src/portfolio.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct PortfolioStats { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 26 | pub total_realized_pnl: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 27 | pub positions_count: usize, [INFO] [stdout] 28 | pub timestamp: DateTime, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PortfolioStats` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CostBenefitAnalysis` is never constructed [INFO] [stdout] --> src/position_inertia.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct CostBenefitAnalysis { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `analyze_portfolio_rebalancing` and `calculate_cost_benefit_analysis` are never used [INFO] [stdout] --> src/position_inertia.rs:148:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl PositionInertiaCalculator { [INFO] [stdout] | ------------------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 148 | pub fn analyze_portfolio_rebalancing( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 168 | pub fn calculate_cost_benefit_analysis( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `remove_position`, `get_positioned_symbols`, and `clear_positions` are never used [INFO] [stdout] --> src/position_manager.rs:68:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl PositionManager { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 68 | pub fn remove_position(&mut self, symbol: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn get_positioned_symbols(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn clear_positions(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `max_position_value` and `available_capital` are never read [INFO] [stdout] --> src/risk.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct RiskMetrics { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 10 | pub portfolio_value: f64, [INFO] [stdout] 11 | pub max_position_value: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 12 | pub current_exposure: f64, [INFO] [stdout] 13 | pub available_capital: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RiskMetrics` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `symbol` and `risk_amount` are never read [INFO] [stdout] --> src/risk.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct PositionRisk { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 20 | pub symbol: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | pub risk_amount: f64, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PositionRisk` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `HoldPosition` is never constructed [INFO] [stdout] --> src/risk.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub enum RiskAction { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 47 | HoldPosition, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RiskAction` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `calculate_max_position_size`, `update_stop_loss`, and `update_take_profit` are never used [INFO] [stdout] --> src/risk.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 64 | impl RiskManager { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn calculate_max_position_size( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 360 | pub fn update_stop_loss(&mut self, symbol: String, stop_loss_price: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 365 | pub fn update_take_profit(&mut self, symbol: String, take_profit_price: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `volatility` is never read [INFO] [stdout] --> src/risk_budgeting.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct RiskContribution { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 28 | pub volatility: f64, // Individual instrument volatility [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RiskContribution` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `target_portfolio_volatility`, `diversification_ratio`, `concentration_score`, `largest_risk_contributor`, and `risk_budget_violations` are never read [INFO] [stdout] --> src/risk_budgeting.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 36 | pub struct RiskAttribution { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 37 | pub total_portfolio_volatility: f64, [INFO] [stdout] 38 | pub target_portfolio_volatility: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 39 | pub risk_contributions: Vec, [INFO] [stdout] 40 | pub diversification_ratio: f64, // Actual vs theoretical portfolio volatility [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 41 | pub concentration_score: f64, // Measure of concentration risk (0-1) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 42 | pub largest_risk_contributor: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 43 | pub risk_budget_violations: Vec, // Positions exceeding risk budget [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RiskAttribution` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ERCInertiaDecision` is never used [INFO] [stdout] --> src/risk_budgeting_inertia.rs:5:10 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum ERCInertiaDecision { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ERCInertiaDecisionInfo` is never constructed [INFO] [stdout] --> src/risk_budgeting_inertia.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct ERCInertiaDecisionInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RiskBudgetingInertiaCalculator` is never constructed [INFO] [stdout] --> src/risk_budgeting_inertia.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct RiskBudgetingInertiaCalculator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `calculate_erc_with_inertia`, `calculate_erc_with_correlation_risk`, and `calculate_erc_with_volatility_adjustment` are never used [INFO] [stdout] --> src/risk_budgeting_inertia.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 33 | impl RiskBudgetingInertiaCalculator { [INFO] [stdout] | ----------------------------------- associated items in this implementation [INFO] [stdout] 34 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn calculate_erc_with_inertia( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | pub fn calculate_erc_with_correlation_risk( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn calculate_erc_with_volatility_adjustment( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_contract_value` and `get_forex_description` are never used [INFO] [stdout] --> src/security_types.rs:96:12 [INFO] [stdout] | [INFO] [stdout] 36 | impl SecurityInfo { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 96 | pub fn get_contract_value(&self, price: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 130 | pub fn get_forex_description(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `calculate_position_hint` is never used [INFO] [stdout] --> src/signals/bollinger.rs:265:8 [INFO] [stdout] | [INFO] [stdout] 227 | impl BollingerSignalGenerator { [INFO] [stdout] | ----------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 265 | fn calculate_position_hint(&self, signal: &BollingerSignal, carver_strength: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `calculate_all_signals`, `update_weights`, and `extract_signal_from_metrics` are never used [INFO] [stdout] --> src/signals/coordinator.rs:128:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl SignalCoordinator { [INFO] [stdout] | ---------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 128 | pub fn calculate_all_signals( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn update_weights(&mut self, new_weights: SignalWeights) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 311 | fn extract_signal_from_metrics(&self, _metrics: T, signal_type: SignalType) -> SignalCore { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MultiTimeframeCore` is never constructed [INFO] [stdout] --> src/signals/core.rs:81:12 [INFO] [stdout] | [INFO] [stdout] 81 | pub struct MultiTimeframeCore { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `get_signal`, `has_strong_consensus`, and `active_timeframes` are never used [INFO] [stdout] --> src/signals/core.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 89 | / impl MultiTimeframeCore [INFO] [stdout] 90 | | where [INFO] [stdout] 91 | | T: Clone, [INFO] [stdout] | |_____________- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn get_signal(&self, timeframe: &TimeFrame) -> Option<&T> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn has_strong_consensus(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | pub fn active_timeframes(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `empty` and `max_signal_strength` are never used [INFO] [stdout] --> src/signals/core.rs:140:12 [INFO] [stdout] | [INFO] [stdout] 138 | impl CombinedSignals { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 139 | /// Create empty combined signals [INFO] [stdout] 140 | pub fn empty() -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 166 | pub fn max_signal_strength(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `validate_signal` is never used [INFO] [stdout] --> src/signals/core.rs:224:8 [INFO] [stdout] | [INFO] [stdout] 182 | pub trait SignalGenerator { [INFO] [stdout] | --------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 224 | fn validate_signal(&self, signal: &Self::Signal) -> SignalQuality { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `normalize` is never used [INFO] [stdout] --> src/signals/core.rs:272:12 [INFO] [stdout] | [INFO] [stdout] 258 | impl SignalWeights { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 272 | pub fn normalize(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `run_basic_example` is never used [INFO] [stdout] --> src/signals/example.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl SignalExample { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 14 | /// Demonstrate basic signal generation and coordination [INFO] [stdout] 15 | pub fn run_basic_example(market_data: &MarketDataHandler) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `multi_timeframe` is never read [INFO] [stdout] --> src/signals/momentum.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct MomentumMetrics { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 32 | pub multi_timeframe: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MomentumMetrics` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `calculate_position_hint` is never used [INFO] [stdout] --> src/signals/momentum.rs:228:8 [INFO] [stdout] | [INFO] [stdout] 201 | impl MomentumSignalGenerator { [INFO] [stdout] | ---------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 228 | fn calculate_position_hint(&self, signal: &MomentumSignal, carver_strength: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `calculate_simple_volatility`, `calculate_consensus_score`, `calculate_signal_sharpe`, and `validate_signal_data` are never used [INFO] [stdout] --> src/signals/utils.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl SignalUtils { [INFO] [stdout] | ---------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 64 | pub fn calculate_simple_volatility(prices: &[f64], annualized: bool) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn calculate_consensus_score(signal_strengths: &[f64]) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 340 | pub fn calculate_signal_sharpe(signal_strength: f64, volatility: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 357 | pub fn validate_signal_data(signal_strength: f64, percentile_rank: f64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sortino_ratio` is never used [INFO] [stdout] --> src/stats.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn sortino_ratio(returns: &[f64], risk_free_rate: f64, periods_per_year: f64) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `profit_factor` is never used [INFO] [stdout] --> src/stats.rs:96:8 [INFO] [stdout] | [INFO] [stdout] 96 | pub fn profit_factor(returns: &[f64]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `t_statistic`, `mean`, `std_error`, and `confidence_level` are never read [INFO] [stdout] --> src/stats.rs:145:9 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct TTestResult { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 145 | pub t_statistic: f64, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 148 | pub mean: f64, [INFO] [stdout] | ^^^^ [INFO] [stdout] 149 | pub std_error: f64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 150 | pub confidence_level: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TTestResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `information_ratio` is never used [INFO] [stdout] --> src/stats.rs:154:8 [INFO] [stdout] | [INFO] [stdout] 154 | pub fn information_ratio(returns: &[f64], benchmark_returns: &[f64]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `rolling_correlation` is never used [INFO] [stdout] --> src/stats.rs:183:8 [INFO] [stdout] | [INFO] [stdout] 183 | pub fn rolling_correlation(series1: &[f64], series2: &[f64], window: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PortfolioStats` is never constructed [INFO] [stdout] --> src/stats.rs:226:12 [INFO] [stdout] | [INFO] [stdout] 226 | pub struct PortfolioStats { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `calculate` is never used [INFO] [stdout] --> src/stats.rs:239:12 [INFO] [stdout] | [INFO] [stdout] 238 | impl PortfolioStats { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 239 | pub fn calculate(returns: &[f64], risk_free_rate: f64, periods_per_year: f64) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `validate_order_cost`, `update_spread_for_symbol`, and `get_inertia_config` are never used [INFO] [stdout] --> src/trading_integration.rs:291:18 [INFO] [stdout] | [INFO] [stdout] 30 | impl TradingIntegrationLayer { [INFO] [stdout] | ---------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 291 | pub async fn validate_order_cost( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 324 | pub async fn update_spread_for_symbol(&self, symbol: &str, spread: f64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 333 | pub async fn get_inertia_config(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MarketImpactModel` is never constructed [INFO] [stdout] --> src/transaction_cost.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct MarketImpactModel { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `calculate_round_trip_cost` is never used [INFO] [stdout] --> src/transaction_cost.rs:107:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl TransactionCostCalculator { [INFO] [stdout] | ------------------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn calculate_round_trip_cost( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_all_volatilities` is never used [INFO] [stdout] --> src/volatility.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl VolatilityCalculator { [INFO] [stdout] | ------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn get_all_volatilities(&self) -> &HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `risk_config` is never read [INFO] [stdout] --> src/volatility.rs:161:9 [INFO] [stdout] | [INFO] [stdout] 155 | pub struct VolatilityTargeter { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 161 | pub risk_config: RiskConfig, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VolatilityTargeter` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `calculate_idm`, `calculate_fdm`, `get_portfolio_volatility`, and `is_volatility_on_target` are never used [INFO] [stdout] --> src/volatility.rs:228:12 [INFO] [stdout] | [INFO] [stdout] 164 | impl VolatilityTargeter { [INFO] [stdout] | ----------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 228 | pub fn calculate_idm(&self, num_instruments: usize) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | pub fn calculate_fdm(&self, num_signals: usize) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 248 | pub fn get_portfolio_volatility(&self, positions: &HashMap) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 269 | pub fn is_volatility_on_target(&self, positions: &HashMap) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 57s [INFO] running `Command { std: "docker" "inspect" "b8e0efa72da87bc10c1de4209a52eb4efdc8bf0d3891d3a2ee673c9cf66df095", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b8e0efa72da87bc10c1de4209a52eb4efdc8bf0d3891d3a2ee673c9cf66df095", kill_on_drop: false }` [INFO] [stdout] b8e0efa72da87bc10c1de4209a52eb4efdc8bf0d3891d3a2ee673c9cf66df095