5个版本

0.3.0 2023年10月31日
0.2.4 2023年10月3日
0.2.3 2023年9月12日
0.2.1 2023年9月3日
0.2.0 2023年8月29日

#74 in 财经

36 每月下载量

MIT 许可证

130KB
2K SLoC

Donate with Bitcoin! Donate with Ethereum! Donate with BNB!
crates.io version crates.io downloads

TATK, 技术分析工具包

本crate的目标是分析数据和提供用于准确分析的工具。有几个其他出色的crate实现了类似的算法,但它们没有满足我的个人需求或在其计算中存在一些小错误。

[dependencies]
tatk = { git = "https://github.com/ohkthx/tatk-rs" }

功能

  • 动量 / 移动平均
    • 简单移动平均(SMA)
    • 指数移动平均(EMA)
    • 双指数移动平均(DEMA)
    • 麦金利动态指标(MD)
    • 累积成交量(OBV)
    • 变化率(ROC)
  • 振荡器
    • 相对强弱指数(RSI)
    • 移动平均收敛和发散(MACD)
    • 布林带(BBands)
    • 真实范围(TR)
    • 平均真实范围(ATR)
  • 其他
    • 线性回归(LineReg)
    • 方差(Var(X))
    • 标准差(SD/STDEV)
    • 交叉(Cross),检查两条线是否出现金叉或死叉。
  • 宏,特性和推导

文档

大部分文档可以通过点击以下链接访问:docs.rs。该文档是自动生成的,也可以从crates.io访问。

特性

以下特性要么被crate在指标中使用,要么由用户定义以提供额外功能。

  • 指标
    • Stats - 指标的基本统计信息,如:总和、平均值、方差和标准差。
    • Period - 指标数据的窗口周期。
    • Next - 向指标添加新的数据点以重新计算值。
  • 用户定义
    • AsValue - 可以传递给Indicators Next的替代值。
    • Open - 数据类型的开盘值。
    • Close - 数据类型的收盘值。
    • Low - 数据类型的最小值。
    • High - 数据类型的最大值。
    • Volume - 数据类型的总成交量。
  • 其他
    • Hl2 - 最高值和最低值的平均值,需要定义HighLow
    • Hlc3 - 最高值、最低值和收盘值的平均值,需要定义HighLowClose
    • Ohlc4 - Open、最高、最低和收盘值的平均值,需要定义 OpenHighLowClose

示例

以下示例可以使用以下命令运行: cargo run --example short_id

  • 简单移动平均(SMA)sma.rs
  • 指数移动平均(EMA)ema.rs
  • 双指数移动平均(DEMA)dema.rs
  • 移动平均收敛发散(MACD)macd.rs
  • 相对强弱指标(RSI)rsi.rs
  • 布林带(BBands)bbands.rs
  • 真实范围平均值(ATR)atr.rs
  • 麦金利动态指标(MD)md.rs
  • 平衡量(OBV)obv.rs
  • 变动率(ROC)roc.rs
  • 线性回归(LineReg)linereg.rs
  • 特质(Traits)user_traits.rs

感谢建议!

以下提供钱包地址,或点击上方的徽章!

Ethereum (ETH): 0x7d75f6a9c021fcc70691fec73368198823fb0f60
Bitcoin (BTC):  bc1q75w3cgutug8qdxw3jlmqnkjlv9alt3jr7ftha0
Binance (BNB):  0x7d75f6a9c021fcc70691fec73368198823fb0f60

依赖关系

~295–750KB
~18K SLoC