[package]
name = "finance-solution"
version = "0.4.1"
authors = ["Shan Newton <shan.alexander2020@gmail.com>", "David Thureson <David.G.Thureson@gmail.com>"]
edition = "2021"
rust-version = "1.70"
license = "MIT"
description = "Finance math: TVM, cashflow, amortization, equity path metrics, technical analysis (SMA/EMA/WMA/HMA/MACD/BB/Keltner/Donchian/Stoch/VWAP/RVOL/RSI/ATR/LinReg), and options (BSM, Black76, GK, CRR American) with Result-only APIs, solutions, tables, and incremental state."
repository = "https://github.com/shan-alexander/finance-solution"
documentation = "https://docs.rs/finance-solution"
readme = "README.md"
keywords = ["finance", "tvm", "options", "quant", "black-scholes"]
categories = ["finance", "mathematics"]
exclude = [
"target/*",
"roadmap_to_v0.1.md",
"rust_design_patterns.md",
"rust_design_patterns_tldr.md",
"examples/data/*",
]
[dependencies]
float-cmp = "0.10"
log = "0.4"
num-format = "0.4"
itertools = "0.15"
[dev-dependencies]
criterion = "0.8"
proptest = "1.6"
[lints.clippy]
doc_lazy_continuation = "allow"
inconsistent_digit_grouping = "allow"
needless_range_loop = "allow"
match_like_matches_macro = "allow"
too_many_arguments = "allow"
clone_on_copy = "allow"
legacy_numeric_constants = "allow"
init_numbered_fields = "allow"
needless_borrow = "allow"
manual_range_contains = "allow"
assign_op_pattern = "allow"
map_clone = "allow"
len_zero = "allow"
neg_multiply = "allow"
unnecessary_cast = "allow"
useless_format = "allow"
useless_borrows_in_formatting = "allow"
approx_constant = "allow"
excessive_precision = "allow"
bool_assert_comparison = "allow"
collapsible_if = "allow"
useless_vec = "allow"
single_match = "allow"
manual_memcpy = "allow"
derivable_impls = "allow"
field_reassign_with_default = "allow"
redundant_field_names = "allow"
ptr_arg = "allow"
should_implement_trait = "allow"
new_without_default = "allow"
module_inception = "allow"
type_complexity = "allow"
result_large_err = "allow"
[[bench]]
name = "suite"
harness = false
[[example]]
name = "common_word_problems"
path = "examples/common_word_problems.rs"
[[example]]
name = "amortization_table_demo"
path = "examples/amortization_table_demo.rs"
[[example]]
name = "ta_indicators"
path = "examples/ta_indicators.rs"
[[example]]
name = "bsm_option"
path = "examples/bsm_option.rs"
[[example]]
name = "real_bars_ta_bsm"
path = "examples/real_bars_ta_bsm.rs"
[[example]]
name = "closed_form_options"
path = "examples/closed_form_options.rs"
[[example]]
name = "crr_american"
path = "examples/crr_american.rs"
[[example]]
name = "ta_rsi_atr"
path = "examples/ta_rsi_atr.rs"