一维数组的使用问题

目的:通过比较14个上涨/下跌周期内的成交量加权价格与当前价格的差值,判断潜在价格方向

使用四个一维数组,分别存放:收盘价大于前一收盘价的 价格upPrices、成交量upVolumes,收盘价小于前一收盘价的 价格downPrices、成交量downVolumes。每个数组的初始化的大小是周期14。

新产生的数据用ArrayPushBack推入数组。(想象的推入是后面进入的数据将第一个数据顶走,保持数组在14的大小)

实际写作中产生的问题,有如下三中尝试以及得出的不合适的结果:

1、如果设定数组的变量类型为:array<numeric> ,则数组永远只有当前一个价格(或在上涨数组中,或在下跌数组中)

2、如果使用global类型数组,则数组会无限扩展,大小不受限制,且初始化的时候设定的值一直存在。

3、如果使用series< array<numeric>>定义数组,则在会提示使用数组运算函数的行:函数实现的参数列表和预声明的参数列表不符合。


想请老师指点,这个问题到底在哪?该如何尝试解决?以及认识盲区需要补充的知识方向。


数组使用问题
数组使用
在OnBar中 使用数组的问题
关于二维数组的使用
数组问题
关于数组的语句问题
因子权重问题or数组权重问题
序列型数组存储问题
请教数组问题
函数的使用问题

这是数据结构的问题。

你必须搞清楚不同数据结构,重置的时机在什么时候

局部变量是当前大括号结束就会重置清空

全局变量不会清空

序列变量第一个方括号指的是回溯索引,不是元素索引

这些都在零基础课程里关于数据结构里有讲过

https://www.bilibili.com/video/BV1ZG411f7bt/?spm_id_from=333.999.0.0

建议把这个系列都过一遍

找了的问题,基本已解决。

不过,还遇到一个问题:

变量数组如果定义成series< array<numeric>>,无法使用一维数组相乘的函数:na1mul ,

编译会报错:函数实现的参数列表和预声明的参数列表不符合。

将series< array<numeric>>赋值给单独定义的array<numeric>后,就可以使用na1mul进行乘法运算了。

这是不是我对na1mul函数的理解有偏差?