1 Star 4 Fork 13

王布衣/pandas

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
barslast.go 742 Bytes
一键复制 编辑 原始数据 按行查看 历史
package formula
import (
"gitee.com/quant1x/pandas/stat"
)
// BARSLAST 上一次条件成立到当前的周期, BARSLAST(C/REF(C,1)>=1.1) 上一次涨停到今天的天数
//
// 为了测试SMA,BARSLAST必须要先实现, 给SMA提供序列换参数, 以便验证, python那边还没实现
func BARSLAST(S stat.Series) stat.Series {
ns := BARSLAST2(S)
return stat.NewSeries[stat.DType](ns...)
}
func BARSLAST2(S stat.Series) []stat.DType {
fs := S.DTypes()
as := stat.Repeat[stat.DType](1, S.Len())
bs := stat.Repeat[stat.DType](0, S.Len())
x := stat.Where(fs, as, bs)
M := []stat.DType{0}
M = append(M, x...)
for i := 1; i < len(M); i++ {
if int(M[i]) != 0 {
M[i] = 0
} else {
M[i] = M[i-1] + 1
}
}
return M[1:]
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/quant1x/pandas.git
git@gitee.com:quant1x/pandas.git
quant1x
pandas
pandas
v0.9.20

搜索帮助