17197fed91
Maps ctx.now() (epoch-ns UTC) to a Frankfurt session bar index: emits bars_since_open:i64 = (local wall-clock minutes past the 09:00 open) / period_minutes, in tz-aware DST-correct local time. So local 09:45 reads 3 in both CEST (UTC+2) and CET (UTC+1) — the close-instant convention (spec 0050 §4.1). Trigger is an f64 Any input (value ignored, wired from close15) so the node fires once per completed bar. Open/tz/period are baked structural config, not scalar params (a timezone is not a scalar, C11). Admits chrono/chrono-tz to aura-std — vetted DST math, never hand-rolled (per-case dep policy). Last node; build-step 7 of milestone 'Strategy node vocabulary I'. closes #90
48 lines
1.4 KiB
Rust
48 lines
1.4 KiB
Rust
//! `aura-std` — the standard node library shipped with the engine.
|
|
//!
|
|
//! The universal, batteries-included building blocks every project gets for
|
|
//! free: common indicators (SMA, ATR, RSI, …), resamplers, the `SessionNode`,
|
|
//! standard combinators, and broker nodes (the sim-optimal broker + realistic
|
|
//! broker profiles). Depends only on `aura-core` (the shared contract).
|
|
//!
|
|
//! This is the top tier of the three-tier node-reuse model (contract C16):
|
|
//!
|
|
//! - `aura-std` — universal blocks, here, ship with the engine;
|
|
//! - shared node crates — cross-project-reusable blocks, in their own repos,
|
|
//! pulled in as cargo git dependencies;
|
|
//! - project-local `nodes/` — experimental, project-specific blocks.
|
|
//!
|
|
//! The first block lands with the walking skeleton: [`Sma`], the simple moving
|
|
//! average — a worked producer node proving the `aura-core` `Node` contract.
|
|
|
|
mod add;
|
|
mod and;
|
|
mod delay;
|
|
mod ema;
|
|
mod eqconst;
|
|
mod exposure;
|
|
mod gt;
|
|
mod latch;
|
|
mod lincomb;
|
|
mod recorder;
|
|
mod resample;
|
|
mod session;
|
|
mod sim_broker;
|
|
mod sma;
|
|
mod sub;
|
|
pub use add::Add;
|
|
pub use and::And;
|
|
pub use delay::Delay;
|
|
pub use ema::Ema;
|
|
pub use eqconst::EqConst;
|
|
pub use exposure::Exposure;
|
|
pub use gt::Gt;
|
|
pub use latch::Latch;
|
|
pub use lincomb::LinComb;
|
|
pub use recorder::Recorder;
|
|
pub use resample::Resample;
|
|
pub use session::Session;
|
|
pub use sim_broker::SimBroker;
|
|
pub use sma::Sma;
|
|
pub use sub::Sub;
|