def JAX(security_list, check_date, timeperiod=30, unit='1d', include_now=True, fq_ref_date=None):
    '''
    计算公式：
        AA:=ABS((2*CLOSE+HIGH+LOW)/4-MA(CLOSE,N))/MA(CLOSE,N);
        济安线:DMA((2*CLOSE+LOW+HIGH)/4,AA)
        CC:=(CLOSE/济安线);
        MA1:=MA(CC*(2*CLOSE+HIGH+LOW)/4,3);
        MAAA:=((MA1-济安线)/济安线)/3;
        TMP:=MA1-MAAA*MA1;
        J:IF(TMP<=济安线,济安线,DRAWNULL)
        A:TMP
        X:IF(TMP<=济安线,TMP,DRAWNULL)
        AA赋值:(2*收盘价+最高价+最低价)/4-收盘价的timeperiod日简单移动平均的绝对值/收盘价的timeperiod日简单移动平均
        输出济安线:以AA为权重(2*收盘价+最低价+最高价)/4的动态移动平均
        CC赋值:(收盘价/济安线)
        MA1赋值:CC*(2*收盘价+最高价+最低价)/4的3日简单移动平均
        MAAA赋值:((MA1-济安线)/济安线)/3
        TMP赋值:MA1-MAAA*MA1
        输出J:如果TMP<=济安线,返回济安线,否则返回无效数
        输出A:TMP
        输出X:如果TMP<=济安线,返回TMP,否则返回无效数
    输入：
        security_list:股票列表
        check_date：要查询数据的日期
        timeperiod：统计的天数
    输出：
        JAX J A X 的值。
    输出结果类型：
        字典(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())
计算公式：
AA:=ABS((2*CLOSE+HIGH+LOW)/4-MA(CLOSE,N))/MA(CLOSE,N);
济安线:DMA((2*CLOSE+LOW+HIGH)/4,AA)
CC:=(CLOSE/济安线);
MA1:=MA(CC*(2*CLOSE+HIGH+LOW)/4,3);
MAAA:=((MA1-济安线)/济安线)/3;
TMP:=MA1-MAAA*MA1;
J:IF(TMP<=济安线,济安线,DRAWNULL)
A:TMP
X:IF(TMP<=济安线,TMP,DRAWNULL)
AA赋值:(2*收盘价+最高价+最低价)/4-收盘价的timeperiod日简单移动平均的绝对值/收盘价的timeperiod日简单移动平均
输出济安线:以AA为权重(2*收盘价+最低价+最高价)/4的动态移动平均
CC赋值:(收盘价/济安线)
MA1赋值:CC*(2*收盘价+最高价+最低价)/4的3日简单移动平均
MAAA赋值:((MA1-济安线)/济安线)/3
TMP赋值:MA1-MAAA*MA1
输出J:如果TMP<=济安线,返回济安线,否则返回无效数
输出A:TMP
输出X:如果TMP<=济安线,返回TMP,否则返回无效数
输入：
security_list:股票列表
check_date：要查询数据的日期
timeperiod：统计的天数
输出：
JAX J A X 的值。
输出结果类型：
字典(dict)：键(key)为股票代码，值(value)为数据
jqdatasdk/technical_analysis.py