docs.rs failed to build oxi-talib-0.1.1
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
oxi-talib
oxi-talib is a Rust library for candlestick pattern recognition.
Key Features
- API: The interface uses standard Rust types (
Vec,Result,Option). - Configurability: The parameters of the recognition algorithms can be modified.
- Safety: The public API is 100% safe. All
unsafecode required for C library interaction is encapsulated.
Installation
1. System Dependencies
The library depends on the C library TA-Lib, which must be installed on the system.
Linux / macOS Build from source:
&&
Other Systems:
Install the equivalent packages (e.g., base-devel and clang on Arch Linux, "Build Tools for Visual Studio" and LLVM on Windows, or Xcode Command Line Tools on macOS).
2. Dependency in Cargo.toml
[]
= "0.1.0"
Example Usage
use ;
Advanced Usage
Implementing the Candle Trait
To work with your own data structures, you need to implement the Candle trait.
use ;
let my_data: = // ...
let signals = cdl.pattern;
Configuration
Recognition parameters can be changed via the configure function. It should be called once at application startup in a single-threaded context.
use configure;
use Settings;
// Executed once in the main function.
let mut settings = default;
settings.body_doji_factor = 0.2; // Example of changing a parameter
configure.expect;
// All subsequent calls to `cdl()` will use these settings.
Roadmap
-
Stage 1:
TA-LibAPI Coverage- Add all remaining candlestick patterns (
CDL). - Implement a module for technical indicators (SMA, EMA, RSI, MACD, etc.).
- Add all remaining candlestick patterns (
-
Stage 2: Native Rust Implementation
- Gradually replace C function calls with equivalent Rust implementations. The goal is to eliminate the dependency on the system's C library.
-
Stage 3: Advanced Analysis
- Implement a
Quality(shape correctness) andStrength(contextual significance) scoring system after transitioning to a native implementation.
- Implement a