1pub mod alma;
2pub mod buff_averages;
3pub mod corrected_moving_average;
4pub mod cwma;
5pub mod dema;
6pub mod dma;
7pub mod edcf;
8pub mod ehlers_ecema;
9pub mod ehlers_itrend;
10pub mod ehlers_kama;
11pub mod ehlers_pma;
12pub mod ehlers_undersampled_double_moving_average;
13pub mod ehma;
14pub mod elastic_volume_weighted_moving_average;
15pub mod ema;
16pub mod ema_deviation_corrected_t3;
17pub mod epma;
18pub mod frama;
19pub mod fwma;
20pub mod gaussian;
21pub mod highpass;
22pub mod highpass_2_pole;
23pub mod hma;
24pub mod hwma;
25pub mod jma;
26pub mod jsa;
27pub mod kama;
28pub mod linreg;
29pub mod logarithmic_moving_average;
30pub mod ma;
31pub mod ma_batch;
32pub mod ma_stream;
33pub mod maaq;
34pub mod mama;
35pub mod mwdx;
36pub mod n_order_ema;
37pub mod nama;
38pub mod nma;
39pub mod param_schema;
40pub mod pwma;
41pub mod reflex;
42pub mod registry;
43pub mod sama;
44pub mod sgf;
45pub mod sinwma;
46pub mod sma;
47pub mod smma;
48pub mod sqwma;
49pub mod srwma;
50pub mod supersmoother;
51pub mod supersmoother_3_pole;
52pub mod swma;
53pub mod tema;
54pub mod tilson;
55pub mod tradjema;
56pub mod trendflex;
57pub mod trima;
58pub mod uma;
59pub mod volatility_adjusted_ma;
60pub mod volume_adjusted_ma;
61pub mod vpwma;
62pub mod vwap;
63pub mod vwma;
64pub mod wave_smoother;
65pub mod wilders;
66pub mod wma;
67pub mod zlema;
68
69#[cfg(not(all(target_arch = "wasm32", feature = "wasm")))]
70pub use corrected_moving_average::corrected_moving_average_into;
71pub use corrected_moving_average::{
72 corrected_moving_average, corrected_moving_average_batch_par_slice,
73 corrected_moving_average_batch_slice, corrected_moving_average_batch_with_kernel,
74 corrected_moving_average_into_slice, corrected_moving_average_with_kernel,
75 expand_grid_corrected_moving_average, CorrectedMovingAverageBatchBuilder,
76 CorrectedMovingAverageBatchOutput, CorrectedMovingAverageBatchRange,
77 CorrectedMovingAverageBuilder, CorrectedMovingAverageData, CorrectedMovingAverageError,
78 CorrectedMovingAverageInput, CorrectedMovingAverageOutput, CorrectedMovingAverageParams,
79 CorrectedMovingAverageStream,
80};
81pub use cwma::{cwma, CwmaInput, CwmaOutput, CwmaParams};
82pub use dma::{
83 dma, dma_batch_with_kernel, dma_into_slice, dma_with_kernel, DmaBatchBuilder, DmaBatchOutput,
84 DmaBatchRange, DmaBuilder, DmaData, DmaError, DmaInput, DmaOutput, DmaParams, DmaStream,
85};
86
87pub use edcf::{edcf, EdcfInput, EdcfOutput, EdcfParams};
88pub use ehlers_kama::{ehlers_kama, EhlersKamaInput, EhlersKamaOutput, EhlersKamaParams};
89pub use ehlers_pma::{
90 ehlers_pma, expand_grid as expand_grid_ehlers_pma, EhlersPmaBatchRange, EhlersPmaInput,
91 EhlersPmaOutput, EhlersPmaParams,
92};
93pub use ehlers_undersampled_double_moving_average::{
94 ehlers_undersampled_double_moving_average,
95 expand_grid_ehlers_undersampled_double_moving_average,
96 EhlersUndersampledDoubleMovingAverageBatchRange, EhlersUndersampledDoubleMovingAverageInput,
97 EhlersUndersampledDoubleMovingAverageOutput, EhlersUndersampledDoubleMovingAverageParams,
98};
99pub use elastic_volume_weighted_moving_average::{
100 elastic_volume_weighted_moving_average, expand_grid_elastic_volume_weighted_moving_average,
101 ElasticVolumeWeightedMovingAverageBatchRange, ElasticVolumeWeightedMovingAverageInput,
102 ElasticVolumeWeightedMovingAverageOutput, ElasticVolumeWeightedMovingAverageParams,
103};
104#[cfg(not(all(target_arch = "wasm32", feature = "wasm")))]
105pub use logarithmic_moving_average::logarithmic_moving_average_into;
106pub use logarithmic_moving_average::{
107 expand_grid_logarithmic_moving_average, logarithmic_moving_average,
108 logarithmic_moving_average_batch_par_slice, logarithmic_moving_average_batch_slice,
109 logarithmic_moving_average_batch_with_kernel, logarithmic_moving_average_into_slice,
110 logarithmic_moving_average_with_kernel, LogarithmicMovingAverageBatchBuilder,
111 LogarithmicMovingAverageBatchOutput, LogarithmicMovingAverageBatchRange,
112 LogarithmicMovingAverageBuilder, LogarithmicMovingAverageData, LogarithmicMovingAverageError,
113 LogarithmicMovingAverageInput, LogarithmicMovingAverageOutput, LogarithmicMovingAverageParams,
114 LogarithmicMovingAverageStream,
115};
116pub use uma::{uma, UmaInput, UmaOutput, UmaParams};
117pub use volatility_adjusted_ma::{
118 vama as volatility_adjusted_ma, VamaInput as VolatilityAdjustedMaInput,
119 VamaOutput as VolatilityAdjustedMaOutput, VamaParams as VolatilityAdjustedMaParams,
120};
121pub use volume_adjusted_ma::{
122 VolumeAdjustedMa as volume_adjusted_ma, VolumeAdjustedMaInput, VolumeAdjustedMaOutput,
123 VolumeAdjustedMaParams,
124};
125
126pub use ehma::{
127 ehma, ehma_batch_inner_into, ehma_batch_par_slice, ehma_batch_slice, ehma_batch_with_kernel,
128 ehma_batch_with_kernel_slice, ehma_into_slice, ehma_with_kernel, EhmaBatchBuilder,
129 EhmaBatchOutput, EhmaBatchRange, EhmaBuilder, EhmaData, EhmaError, EhmaInput, EhmaOutput,
130 EhmaParams, EhmaStream,
131};
132
133pub use nama::{
134 nama, nama_batch_with_kernel, nama_into_slice, nama_with_kernel, NamaBatchBuilder,
135 NamaBatchOutput, NamaBatchRange, NamaBuilder, NamaData, NamaError, NamaInput, NamaOutput,
136 NamaParams, NamaStream,
137};
138
139pub use n_order_ema::{
140 expand_grid_n_order_ema, n_order_ema, n_order_ema_batch_from_input_with_kernel,
141 n_order_ema_batch_with_kernel, n_order_ema_into_slice, n_order_ema_with_kernel,
142 NOrderEmaBatchBuilder, NOrderEmaBatchOutput, NOrderEmaBatchRange, NOrderEmaBuilder,
143 NOrderEmaData, NOrderEmaError, NOrderEmaIirStyle, NOrderEmaInput, NOrderEmaOutput,
144 NOrderEmaParams, NOrderEmaStream, NOrderEmaStyle,
145};
146
147#[cfg(not(all(target_arch = "wasm32", feature = "wasm")))]
148pub use n_order_ema::n_order_ema_into;
149
150pub use sama::{
151 sama, sama_batch_par_slice, sama_batch_slice, sama_batch_with_kernel, sama_into_slice,
152 sama_with_kernel, SamaBatchBuilder, SamaBatchOutput, SamaBatchRange, SamaBuilder, SamaData,
153 SamaError, SamaInput, SamaOutput, SamaParams, SamaStream,
154};
155
156pub use sgf::{
157 expand_grid as expand_grid_sgf, sgf, sgf_batch_into_slice, sgf_batch_par_slice,
158 sgf_batch_slice, sgf_batch_with_kernel, sgf_into_slice, sgf_with_kernel, SgfBatchBuilder,
159 SgfBatchOutput, SgfBatchRange, SgfBuilder, SgfData, SgfError, SgfInput, SgfOutput, SgfParams,
160 SgfStream,
161};
162
163#[cfg(feature = "python")]
164pub use dma::{dma_batch_py, dma_py, DmaStreamPy};
165
166#[cfg(feature = "python")]
167pub use ehma::{ehma_batch_py, ehma_py, EhmaStreamPy};
168
169#[cfg(feature = "python")]
170pub use corrected_moving_average::{
171 corrected_moving_average_batch_py, corrected_moving_average_py, CorrectedMovingAverageStreamPy,
172};
173
174#[cfg(feature = "python")]
175pub use nama::{nama_batch_py, nama_py, NamaStreamPy};
176
177#[cfg(feature = "python")]
178pub use n_order_ema::{
179 n_order_ema_batch_py, n_order_ema_py, register_n_order_ema_module, NOrderEmaStreamPy,
180};
181
182#[cfg(feature = "python")]
183pub use sama::{sama_batch_py, sama_py, SamaStreamPy};
184
185#[cfg(feature = "python")]
186pub use sgf::{sgf_batch_py, sgf_py, SgfStreamPy};
187
188#[cfg(all(target_arch = "wasm32", feature = "wasm"))]
189pub use corrected_moving_average::{
190 corrected_moving_average_alloc, corrected_moving_average_batch_into,
191 corrected_moving_average_batch_js, corrected_moving_average_free,
192 corrected_moving_average_into, corrected_moving_average_js,
193};
194
195#[cfg(all(target_arch = "wasm32", feature = "wasm"))]
196pub use nama::{nama_alloc, nama_batch_unified_js, nama_free, nama_into, nama_js};
197
198#[cfg(all(target_arch = "wasm32", feature = "wasm"))]
199pub use n_order_ema::{
200 n_order_ema_alloc, n_order_ema_batch_into, n_order_ema_batch_js, n_order_ema_free,
201 n_order_ema_into, n_order_ema_js,
202};