VeighNa量化社区
你的开源社区量化交易平台
Member
avatar
加入于:
帖子: 17
声望: 0

运行CincoStrategy,发现boll_up和boll_down的值始终相等的,加入am.std函数测试发现返回值始终是0。
am.boll调用std函数,但是只传入2个参数,std函数原型里面有3个参数。

def boll(
self,
n: int,
dev: float,
array: bool = False
) -> Union[
Tuple[np.ndarray, np.ndarray],
Tuple[float, float]
]:
"""
Bollinger Channel.
"""
mid = self.sma(n, array)
std = self.std(n,array)

    up = mid + std * dev
    down = mid - std * dev

    return up, down

def std(self, n: int, nbdev: int = 1, array: bool = False) -> Union[float, np.ndarray]:
    """
    Standard deviation.
    """
    result = talib.STDDEV(self.close, n, nbdev)
    if array:
        return result
    return result[-1]
Administrator
avatar
加入于:
帖子: 4500
声望: 320

请升级到最新版即可

© 2015-2022 上海韦纳软件科技有限公司
备案服务号:沪ICP备18006526号

沪公网安备 31011502017034号

【用户协议】
【隐私政策】
【免责条款】