1 Star 0 Fork 5

王布衣/ta-lib

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
ci.go 944 Bytes
一键复制 编辑 原始数据 按行查看 历史
王布衣 提交于 2024-02-19 10:58 +08:00 . 调整series函数
package sample
import (
"gitee.com/quant1x/num"
"gitee.com/quant1x/pandas"
. "gitee.com/quant1x/pandas/formula"
)
// ConfidenceInterval 置信区间(Confidence Interval, CI)
//
// df必须要用一个字段为N, 作为时间序列
func ConfidenceInterval(df pandas.DataFrame, argv ...int) pandas.DataFrame {
var (
LEN = df.Nrow()
CLOSE = df.ColAsNDArray("close")
HIGH = df.ColAsNDArray("high")
LOW = df.ColAsNDArray("low")
N = df.ColAsNDArray("N").DTypes()
CI = 0.9500 // 95%的置信区间
)
if len(argv) > 0 {
__n := argv[0]
N = num.Repeat[num.DType](num.DType(__n), LEN)
}
mid := MA(CLOSE, N)
variance := STD(CLOSE, N)
Z := num.ConfidenceIntervalToZscore(CI)
sd := variance.Mul(Z)
UP := mid.Add(sd)
LOWER := mid.Sub(sd)
B := LOW.Gt(LOWER).And(HIGH.Lt(UP))
df = pandas.NewDataFrame(df.Col("date"))
ob := pandas.NewSeriesWithType(pandas.SERIES_TYPE_BOOL, "cib", B)
df = df.Join(ob)
return df
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/quant1x/ta-lib.git
git@gitee.com:quant1x/ta-lib.git
quant1x
ta-lib
ta-lib
v0.9.0

搜索帮助