程序化交易系统主观辅助交易策略编写和演示 及文华tb单个品种指数合成方法

程序化交易系统主观辅助交易策略编写和演示

def tick_zhishu(ls):
    """
    从数据库中读取合约后,合成约指数最新价,用于合成指数合约k线,采用持仓量加权
    :param ls: 本合约有持仓持仓量的所有合约列表,
    :return: 指数化后的最新价,成交量和,持仓量和
    """
    chicanglianghe = 0  # 持仓量之和
    chengjiaolianghe = 0  # 成交量之和
    jcsj = []  # 临时变量用于储存每个合约的最新价
    ccl = []  # 临时变量用于存放每个合约的持仓量
    for ss in ls:  # 循环所有合约
        try:
            lsbl = DuquRedis_HQ(ss)  # 获取当前合约的tick数据
            chicanglianghe += float(lsbl['OpenInterest'])  # 所有合约持仓量之和
            chengjiaolianghe += float(lsbl['Volume'])  # 所有合约成交量之和
            jcsj.append(float(lsbl['LastPrice']))  # 保存当前合约最新价
            ccl.append(float(lsbl['OpenInterest']))  # 保存当前合约持仓量
        except:
            # print(ss, '没有此合约数据,请订阅')
            pass
    # shijian = DuquRedis_hangqing(ls[0])['UpdateTime']  # 获取主力合约时间
    # 指数算法公式:sum(每个品种价格*持仓量/所有合约总持仓量)
    zuixinjia = round((np.array(jcsj)*np.array(ccl)/chicanglianghe).sum(), 1)  # 计算指数最新价

    # print(zuixinjia)

    return chicanglianghe, chengjiaolianghe, zuixinjia

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值