check_signals_acc
- czsc.check_signals_acc(bars: List[RawBar], signals_config: List[dict], delta_days: int = 5, **kwargs) None [source]
输入基础周期K线和想要验证的信号,输出信号识别结果的快照
函数执行逻辑:
函数首先获取基础周期K线的base_freq,并检查输入的K线数据bars是否按时间升序排列。如果bars的长度小于600,函数直接返回。
然后,函数调用generate_czsc_signals方法,生成Czsc信号,并将结果保存在df中。
函数提取出df中所有的信号列s_cols,并打印每一列的值的数量。然后,函数将所有的信号添加到signals列表中。
函数将bars分为两部分,bars_left和bars_right,并获取信号配置signals_config中的所有freqs。
函数创建一个BarGenerator对象bg,并使用bars_left中的K线数据来初始化它。
函数创建一个CzscSignals对象ct,并将bg和信号配置signals_config作为参数传入。
函数创建一个字典last_dt,用于存储每一个信号最后一次出现的时间。
函数遍历bars_right中的每一根K线,对于每一根K线,函数调用ct.update_signals(bar)来更新信号。
对于每一个信号,如果当前K线的时间与该信号最后一次出现的时间的差值大于delta_days,并且该信号与当前的信号匹配, 函数将创建一个HTML文件,保存信号识别结果的快照,并更新该信号最后一次出现的时间。
- Parameters:
bars – 原始K线
signals_config – 需要验证的信号列表
delta_days – 两次相同信号之间的间隔天数
- Returns:
None