def KD(security_list, check_date, N=9, M1=3, M2=3, unit='1d', include_now=True, fq_ref_date=None):
    '''
    计算公式：
        RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
        K:SMA(RSV,M1,1);
        D:SMA(K,M2,1);
        RSV赋值:(收盘价-N日内最低价的最低值)/(N日内最高价的最高值-N日内最低价的最低值)*100
        输出K:RSV的M1日[1日权重]移动平均
        输出D:K的M2日[1日权重]移动平均
    输入：
        security_list:股票列表
        check_date：要查询数据的日期
        N：统计的天数 N
        M1：统计的天数 M1
        M2：统计的天数 M2
    输出：
        K和D 的值。
    输出结果类型：
        字典(dict)：键(key)为股票代码，值(value)为数据。
    '''
    func_name = sys._getframe().f_code.co_name
    check_date = to_date_str(check_date)
    fq_ref_date = to_date_str(fq_ref_date)
    return JQDataClient.instance().get_technical_analysis(**locals())
计算公式：
RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:SMA(RSV,M1,1);
D:SMA(K,M2,1);
RSV赋值:(收盘价-N日内最低价的最低值)/(N日内最高价的最高值-N日内最低价的最低值)*100
输出K:RSV的M1日[1日权重]移动平均
输出D:K的M2日[1日权重]移动平均
输入：
security_list:股票列表
check_date：要查询数据的日期
N：统计的天数 N
M1：统计的天数 M1
M2：统计的天数 M2
输出：
K和D 的值。
输出结果类型：
字典(dict)：键(key)为股票代码，值(value)为数据。
jqdatasdk/technical_analysis.py