Skip to content

Standard Performance: Rust

Competitors: Tulip Indicators (C) and TA-Lib (C)

Indicator Rust (ns) C Tulip (ns) TA-Lib (ns) Speedup vs C Speedup vs TA-Lib
ad 4,799 5,156 5,135 1.07x 1.07x
adaptivemsw 524,568 N/A N/A --- ---
adosc 5,657 9,368 8,873 1.66x 1.57x
adx 10,729 16,607 38,508 1.55x 3.59x
adxr 14,956 17,999 39,689 1.20x 2.65x
ao 5,427 4,899 N/A 0.90x ---
apo 4,872 9,038 10,772 1.86x 2.21x
aroon 18,771 81,785 43,139 4.36x 2.30x
aroonosc 19,553 81,958 40,258 4.19x 2.06x
atr 4,825 11,015 27,256 2.28x 5.65x
avgprice 1,433 2,046 2,279 1.43x 1.59x
bbands 6,574 9,014 21,149 1.37x 3.22x
bop 2,440 2,853 5,129 1.17x 2.10x
ccfisher 227,893 N/A N/A --- ---
cci 78,473 74,698 112,143 0.95x 1.43x
chaikinmf 7,201 N/A N/A --- ---
chandelierexit 18,411 N/A N/A --- ---
cmo 6,284 24,420 N/A 3.89x ---
cvi 5,211 14,619 N/A 2.81x ---
cybercycle 16,656 N/A N/A --- ---
dema 6,336 6,786 22,652 1.07x 3.58x
di 17,080 10,544 57,271 0.62x 3.35x
dm 9,943 6,998 N/A 0.70x ---
donchianchannel 13,219 57,871 N/A 4.38x ---
dpo 2,701 2,813 N/A 1.04x ---
dx 9,426 7,077 N/A 0.75x ---
ef 3,909 N/A N/A --- ---
elderray 6,065 15,432 N/A 2.54x ---
ema 4,790 11,042 10,987 2.31x 2.29x
emv 2,449 5,131 N/A 2.10x ---
fisher 48,839 134,821 N/A 2.76x ---
fosc 8,128 9,797 N/A 1.21x ---
highpass 4,816 N/A N/A --- ---
hilberttransform 14,314 N/A 203,912 --- 14.25x
hma 9,349 9,809 N/A 1.05x ---
homodynediscriminator 216,975 N/A 204,995 --- 0.94x
ichimoku 69,547 N/A N/A --- ---
instantaneoustrendline 222,460 N/A 245,511 --- 1.10x
kama 7,436 8,759 11,091 1.18x 1.49x
keltnerchannel 6,863 N/A N/A --- ---
kvo 9,015 9,330 N/A 1.03x ---
linreg 6,623 9,340 N/A 1.41x ---
macd 6,331 13,977 35,882 2.21x 5.67x
mama 219,845 N/A 224,906 --- 1.02x
marketfi 2,443 2,821 N/A 1.15x ---
mass 6,534 12,280 N/A 1.88x ---
max 5,203 30,519 14,631 5.87x 2.81x
md 13,911 14,891 N/A 1.07x ---
medprice 872 1,503 1,543 1.72x 1.77x
mfi 7,987 12,335 18,074 1.54x 2.26x
min 7,022 56,685 28,260 8.07x 4.02x
mom 897 1,472 1,348 1.64x 1.50x
msw 129,417 1,458,770 N/A 11.27x ---
natr 4,954 10,986 27,257 2.22x 5.50x
nvi 2,678 4,506 N/A 1.68x ---
obv 3,513 3,472 3,614 0.99x 1.03x
ppo 5,062 9,670 14,685 1.91x 2.90x
psar 8,748 9,067 8,340 1.04x 0.95x
pvi 2,544 11,431 N/A 4.49x ---
qstick 2,571 3,045 N/A 1.18x ---
roc 2,437 2,754 5,101 1.13x 2.09x
rocr 2,448 2,761 5,095 1.13x 2.08x
roofingfilter 10,739 N/A N/A --- ---
rsi 4,992 N/A N/A --- ---
sma 2,445 2,600 4,790 1.06x 1.96x
smaenvelope 7,375 N/A N/A --- ---
stddev 3,655 10,487 N/A 2.87x ---
stoch 21,788 49,822 52,194 2.29x 2.40x
stochrsi 21,401 44,735 N/A 2.09x ---
supersmoother 10,278 N/A N/A --- ---
supertrend 14,580 N/A N/A --- ---
tema 6,489 6,824 32,378 1.05x 4.99x
tr 1,501 2,162 3,922 1.44x 2.61x
trendmode 223,848 N/A N/A --- ---
trima 5,592 7,128 7,094 1.27x 1.27x
trix 6,197 11,021 N/A 1.78x ---
trvi 6,100 N/A N/A --- ---
tsf 6,574 8,599 N/A 1.31x ---
typprice 1,036 1,802 N/A 1.74x ---
ultosc 16,784 18,274 N/A 1.09x ---
vhf 13,633 39,248 N/A 2.88x ---
vidya 12,127 19,167 N/A 1.58x ---
volatility 9,075 17,976 N/A 1.98x ---
vortex 7,862 N/A N/A --- ---
vosc 3,964 5,078 N/A 1.28x ---
vwap 3,451 N/A N/A --- ---
vwma 3,459 5,087 N/A 1.47x ---
wad 3,845 5,057 N/A 1.32x ---
wcprice 1,062 1,786 N/A 1.68x ---
wilders 4,749 10,959 N/A 2.31x ---
willr 16,465 38,561 41,914 2.34x 2.55x
wma 6,394 8,692 5,079 1.36x 0.79x
zlema 5,955 8,580 N/A 1.44x ---
Notable results

Rust beats C Tulip on 65 of 71 indicators (92%). Rust beats TA-Lib on 36 of 39 indicators (92%).

Category Indicator Speedup vs C Speedup vs TA-Lib
Largest wins vs C Tulip msw 11.27x ---
Largest wins vs C Tulip min 8.07x ---
Largest wins vs C Tulip max 5.87x ---
Largest wins vs C Tulip pvi 4.49x ---
Largest wins vs C Tulip donchianchannel 4.38x ---
Largest wins vs TA-Lib hilberttransform --- 14.25x
Largest wins vs TA-Lib macd --- 5.67x
Largest wins vs TA-Lib atr --- 5.65x
Largest wins vs TA-Lib natr --- 5.50x
Largest wins vs TA-Lib tema --- 4.99x
Rust slower than C Tulip di 0.62x ---
Rust slower than C Tulip dm 0.70x ---
Rust slower than C Tulip dx 0.75x ---
Rust slower than C Tulip ao 0.90x ---
Rust slower than C Tulip cci 0.95x ---
Rust slower than C Tulip obv 0.99x ---
Rust slower than TA-Lib wma --- 0.79x
Rust slower than TA-Lib homodynediscriminator --- 0.94x
Rust slower than TA-Lib psar --- 0.95x

Competitors: RustTa (19 indicators) and kand v0.2 (33 indicators) — both pure-Rust, TA-Lib–inspired libraries.

Note: kand uses NaN-padded full-length outputs (processing all n bars), while tulip_rs outputs only the valid computed bars. Both perform comparable per-call validation.

Indicator Rust (ns) RustTa (ns) Speedup vs RustTa Kand (ns) Speedup vs Kand
ad 4,799 N/A --- 5,122 1.07x
adaptivemsw 524,568 N/A --- N/A ---
adosc 5,657 N/A --- 24,475 4.33x
adx 10,729 N/A --- 75,368 7.02x
adxr 14,956 N/A --- 77,179 5.16x
ao 5,427 N/A --- N/A ---
apo 4,872 N/A --- N/A ---
aroon 18,771 N/A --- 374,882 19.97x
aroonosc 19,553 N/A --- 376,160 19.24x
atr 4,825 9,668 2.00x 22,797 4.72x
avgprice 1,433 N/A --- N/A ---
bbands 6,574 8,588 1.31x 22,698 3.45x
bop 2,440 N/A --- 2,868 1.18x
ccfisher 227,893 N/A --- N/A ---
cci 78,473 74,530 0.95x 71,130 0.91x
chaikinmf 7,201 N/A --- N/A ---
chandelierexit 18,411 43,934 2.39x N/A ---
cmo 6,284 N/A --- N/A ---
cvi 5,211 N/A --- N/A ---
cybercycle 16,656 N/A --- N/A ---
dema 6,336 N/A --- 23,734 3.75x
di 17,080 N/A --- 24,927 1.46x
dm 9,943 N/A --- 22,777 2.29x
donchianchannel 13,219 N/A --- N/A ---
dpo 2,701 N/A --- N/A ---
dx 9,426 N/A --- 52,370 5.56x
ef 3,909 26,496 6.78x N/A ---
elderray 6,065 N/A --- N/A ---
ema 4,790 8,306 1.73x 8,637 1.80x
emv 2,449 N/A --- N/A ---
fisher 48,839 N/A --- N/A ---
fosc 8,128 N/A --- N/A ---
highpass 4,816 N/A --- N/A ---
hilberttransform 14,314 N/A --- N/A ---
hma 9,349 N/A --- N/A ---
homodynediscriminator 216,975 N/A --- N/A ---
ichimoku 69,547 N/A --- N/A ---
instantaneoustrendline 222,460 N/A --- N/A ---
kama 7,436 N/A --- N/A ---
keltnerchannel 6,863 12,904 1.88x N/A ---
kvo 9,015 N/A --- N/A ---
linreg 6,623 N/A --- N/A ---
macd 6,331 8,312 1.31x 29,485 4.66x
mama 219,845 N/A --- N/A ---
marketfi 2,443 N/A --- N/A ---
mass 6,534 N/A --- N/A ---
max 5,203 14,210 2.73x N/A ---
md 13,911 36,889 2.65x N/A ---
medprice 872 N/A --- 1,500 1.72x
mfi 7,987 23,839 2.98x 288,370 36.10x
min 7,022 25,409 3.62x N/A ---
mom 897 N/A --- 1,407 1.57x
msw 129,417 N/A --- N/A ---
natr 4,954 N/A --- 25,717 5.19x
nvi 2,678 N/A --- N/A ---
obv 3,513 5,500 1.57x 3,763 1.07x
ppo 5,062 8,305 1.64x N/A ---
psar 8,748 N/A --- 18,264 2.09x
pvi 2,544 N/A --- N/A ---
qstick 2,571 N/A --- N/A ---
roc 2,437 3,069 1.26x 2,809 1.15x
rocr 2,448 N/A --- 2,725 1.11x
roofingfilter 10,739 N/A --- N/A ---
rsi 4,992 N/A --- N/A ---
sma 2,445 4,558 1.86x 4,832 1.98x
smaenvelope 7,375 N/A --- N/A ---
stddev 3,655 8,439 2.31x N/A ---
stoch 21,788 49,105 2.25x 723,779 33.22x
stochrsi 21,401 N/A --- N/A ---
supersmoother 10,278 N/A --- N/A ---
supertrend 14,580 N/A --- 46,626 3.20x
tema 6,489 N/A --- 26,916 4.15x
tr 1,501 7,841 5.22x N/A ---
trendmode 223,848 N/A --- N/A ---
trima 5,592 N/A --- 10,320 1.85x
trix 6,197 N/A --- N/A ---
trvi 6,100 N/A --- N/A ---
tsf 6,574 N/A --- N/A ---
typprice 1,036 N/A --- 2,667 2.57x
ultosc 16,784 N/A --- N/A ---
vhf 13,633 N/A --- N/A ---
vidya 12,127 N/A --- N/A ---
volatility 9,075 N/A --- N/A ---
vortex 7,862 N/A --- N/A ---
vosc 3,964 N/A --- N/A ---
vwap 3,451 N/A --- 9,608 2.78x
vwma 3,459 N/A --- N/A ---
wad 3,845 N/A --- N/A ---
wcprice 1,062 N/A --- 1,649 1.55x
wilders 4,749 N/A --- N/A ---
willr 16,465 N/A --- 349,642 21.24x
wma 6,394 N/A --- N/A ---
zlema 5,955 N/A --- N/A ---
Notable results

Rust beats RustTa on 18 of 19 compared indicators. Rust beats Kand on 32 of 33 compared indicators.

Category Indicator Speedup vs RustTa Speedup vs Kand
Largest wins vs RustTa ef 6.78x ---
Largest wins vs RustTa tr 5.22x ---
Largest wins vs RustTa min 3.62x ---
Largest wins vs RustTa mfi 2.98x 36.10x
Largest wins vs RustTa max 2.73x ---
Largest wins vs Kand mfi 2.98x 36.10x
Largest wins vs Kand stoch 2.25x 33.22x
Largest wins vs Kand willr --- 21.24x
Largest wins vs Kand aroon --- 19.97x
Largest wins vs Kand aroonosc --- 19.24x
RustTa faster cci 0.95x 0.91x
Kand faster cci 0.95x 0.91x