请教关于代码编写中数据引用的二个问题
各位老师好, 在策略编写中遇到二个问题特来求助。 基础策略包含以下四步:(1)行情预定 预定1100根bar。【问题1】请教,布置策略时要在tb里边设置K线数,除了设置外,可否在init{}里边预定行情数据?有此一问是为了保证交易信号的连续性,担心在没有预定的情况下,运行软件时间之前没有行情数据导致没有交易信号。(2)指标初始化 1.给每根K线设立两个指标值,一个指标值为该K线的时间,一个为结构类型(顶元素值为“1”,底元素值为“-1)。 2.取(1)中预定K线的前1100根K线为顶,指标值为(前1100bar时间,1)(3)指标迭代 1.若当前K线、前一根K线、前二根K线的最高价满足 H[2]<=H[1] and H[1]>=H,那么前一根K线为顶元素,指标值记为(前1bar时间,1) .若当前K线、前一根K线、前二根K线的最低价满足 L[2]>=L[1] and L[1]<=L,那么前一根K线类型为底元素,指标值记为(前1bar时间,-1) 2.取前1根K线的结构类型,如果与上一个结构类型取值不为0的元素的结构类型相同: 若同为顶元素则,最高价更高的顶元素指标值记为(bar时间,1),最高价不更高的顶元素指标值记为(bar时间,0);若同为底元素则,最低价更低的底元素指标值记为(bar时间,-1),最低价不更低的底元素指标值记为(bar时间,0) 3.取前1根K线的结构类型,如果与上一个结构类型取值不为0的元素的结构类型不同: 如果”前1根K线与上一个结构类型取值不为0的元素相隔K线数大于等于2根“并且”前1根K线的最高价最低价区间与上一个结构类型取值不为0的元素的最高价最低价区间不重叠(仅可重叠一个价位)“那么前1根K线的指标值记为(前1bar时间,1)或(前1bar时间,-1)。(4)根据(2)(3)步骤寻找的顶底元素进行相关计算。【问题2】步骤(2)(3)(4)涉及到将顶底元素对应K线的时间和类型的指标,进行存储、添加、删除(或者修改)、引用等操作,特别是步骤(3)中小2项,有可能会援引前一元素的Bar数据还可能删除或者修改它的指标值,这样的存储、添加、删除(或者修改)、引用等操作可以如何设计呢?思路一,指标值存成series类型。请问引用和修改等操作该如何完成?引用到上一个元素的位置还能再次修改它的bar上指标的值吗?思路二,指标值存成二维数组,一列存时间,一列存结构类型的值(或者分类)。请问二位数组是否可以像Python一样进行切片和赋值?