nautechsystems/nautilus_trader · error
invalid {field} precision: {e}
Error message
invalid {field} precision: {e} What it means
Error "invalid {field} precision: {e}" thrown in nautechsystems/nautilus_trader.
Source
Thrown at crates/adapters/binance/src/futures/http/models.rs:1756
raw.filter(|price| !price.is_empty())
.map(|price| parse_positive_price_at_precision(price, price_precision, "avg_price"))
.transpose()
.map(|price| price.flatten().map(|price| price.as_decimal()))
}
fn parse_positive_price_at_precision(
raw: &str,
precision: u8,
field: &str,
) -> anyhow::Result<Option<Price>> {
let decimal = parse_required_decimal(raw, field)?;
if decimal <= Decimal::ZERO {
return Ok(None);
}
Price::from_decimal_dp(decimal, precision)
.map(Some)
.map_err(|e| anyhow::anyhow!("invalid {field} precision: {e}"))
}
fn parse_callback_rate_basis_points(raw: &str) -> anyhow::Result<Option<Decimal>> {
let rate = parse_required_decimal(raw, "callback_rate")?;
if rate <= Decimal::ZERO {
return Ok(None);
}
rate.checked_mul(Decimal::from(100))
.map(Some)
.ok_or_else(|| anyhow::anyhow!("invalid callback_rate='{raw}': multiplication overflow"))
}
fn parse_working_type(working_type: Option<BinanceWorkingType>) -> TriggerType {
match working_type {
Some(BinanceWorkingType::ContractPrice) => TriggerType::LastPrice,
Some(BinanceWorkingType::MarkPrice) => TriggerType::MarkPrice,
Some(BinanceWorkingType::Unknown) | None => TriggerType::Default,View on GitHub (pinned to a4b06ed870)
When it happens
Trigger: Thrown at crates/adapters/binance/src/futures/http/models.rs:1756 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of nautechsystems/nautilus_trader@a4b06ed870 (2026-08-16).
Data as JSON: /api/errors/9eed19af5be93beb.
Report an issue: GitHub.