mm_maths
v1.2.0
Published
这是一个可以将数学公式推导变形,并转成js和计算的模块。
Maintainers
Readme
mm_maths
这是一个可以将数学公式推导变形,并转成js和计算的模块。
安装
npm install mm_maths基本使用
1. 初始化模块
const Maths = require('mm_maths');
// 创建实例并指定模块路径
const maths = new Maths(__dirname);2. 载入公式
// 载入基础数学公式
maths.update(__dirname, "base");
// 也可以分别载入不同类型的公式
maths.load_identities(__dirname, "base"); // 载入恒等式
maths.load_convert(__dirname, "base"); // 载入转换函数
maths.load_symbol(__dirname, "base"); // 载入符号处理函数
maths.load_math(__dirname, "base"); // 载入计算函数3. 设置常量和变量
// 设置常量
const consts = {
a: 10,
b: 3
};
maths.set_const(consts);
// 设置变量
const vars = {
ma5: "MA(CLOSE, 5)", // 可以设置公式作为变量
price: null
};
maths.set_var(vars);4. 公式转换和计算
// 转换公式
const expression = "y = abc * ab * 3c * 2";
const express = maths.convertTo(expression);
console.log('转换后的公式:', express);
// 运行代码
const result = maths.run_code("return " + express);
console.log('计算结果:', result);API 说明
主要类
Maths
数学公式计算的主类,提供公式转换、计算等功能。
构造函数参数:
dir{String} 模块路径,默认为 __dirname
主要方法
update(path, type)
更新并载入指定类型的所有公式。
path{String} 检索路径type{String} 公式类型,如 "base"(基础数学)、"stock"(股票)
set_const(constant)
设置常量。
constant{Object} 常量集合,如{ a: 10, b: 15 }
set_var(vars)
设置变量。
vars{Object} 变量集合,如{ ma5: "MA(CLOSE, 5)", price: null }
convertTo(express)
转换公式。
express{String} 要转换的表达式- 返回 {String} 转换后的表达式
run_code(express)
运行代码。
express{String} 要执行的表达式- 返回 {Object} 执行结果
支持的公式类型
- 基础数学 (base)
- 四则运算
- 指数运算
- 对数运算
- 三角函数
- 数组运算 (array)
- 求和
- 平均值
- 最大/最小值
- 中位数
- 股票技术指标 (stock)
- MA (移动平均线)
- MACD
- RSI
- BBANDS (布林带)
注意事项
- 在使用前请确保已正确载入所需的公式类型
- 设置常量和变量时注意避免名称冲突
- 公式转换时注意检查语法正确性
许可证
ISC License
