В процессе загрузки ресурсов... загрузка...

Встроенная функция_Cross Анализ и инструкции по использованию

Автор:Изобретатели количественного измерения - мечты, Создано: 2017-10-11 19:50:44, Обновлено: 2021-11-05 16:15:56

Встроенная функция_Cross Анализ и инструкции по использованию

Функция _Cross в паре глобальных функций в API-документации используется для расчета пересечения двух показателей

  • Функция ### реализует код, похожий на следующий:

В частности, в Китае, в Китае и Китае.arr1Показатели, которые мы используем для определения скоростных линий.arr2В этом случае, если вы хотите, чтобы вы были в курсе, что вы делаете, вы должны быть в курсе.

  可知,此时```arr1```上穿```arr2```已经n个周期,此时就是快线上穿慢线代表金叉。
  同样```_Cross```函数如果返回负数,即为死叉。
  
  如果定义```arr1```为慢线指标数组,```arr2```为快线指标数组,则相反。
  ```_Cross```函数返回的值为正数代表死叉。
  ```_Cross```函数返回的值为负数代表金叉。

// возвращает количество циклов, положительные числа - это количество недель, отрицательные - это количество недель, 0 - это текущая цена $.Cross = function ((arr1, arr2) { // число параметров 2 и, как видно из названия параметров, оба параметра должны быть типами матриц, а матрицы должны быть типами // Это как если бы в системе координат с индексными значениями матрицы на оси X и значениями показателей на оси Y, функция должна определять пересечение двух линий. if (arr1.length!== arr2.length) { // Сначала нужно определить, равны ли длины двух сравниваемых матриц. throw array length not equal; // Если неравномерно выбросить ошибку, не может быть определено совпадение для неравномерных показателей {y:bi} var n = 0; // объявленная переменная n используется для записи перекрестного состояния, начальная 0, не пересеченная for (var i = arr1.length-1; i >= 0; i) { // проходит по массиву arr1, проходит по порядку прохождения от последнего элемента вперед if (typeof ((arr1[i])!== number の typeof ((arr2[i])!== number) { // когда любой из матриц arr1 или arr2 имеет нецифровой тип ((т.е. недействительный показатель), выпрыгивает из цикла break; // выйти из цикла {y:bi} if (arr1[i] < arr2[i]) { // Если arr1 меньше arr2, то n {\displaystyle n} записывает относительное состояние arr1,arr2 в начале, и в самом начале n самостоятельно корректируется в зависимости от относительной величины arr1 [i],arr2 [i], когда возникает другое относительное значение arr1 [i],arr2 [i], противоположное состоянию n, то происходит пересечение двух линий. if (n > 0) { "Я не хочу, чтобы ты был здесь". {y:bi} "Нет, нет, нет. } else if (arr1[i] > arr2[i]) { // n++ если arr1 больше arr2 Если (n < 0) { "Я не хочу, чтобы ты был здесь". {y:bi} n++; } else { // arr1[i] == arr2[i], и сразу выходит "Я не хочу, чтобы ты был здесь". {y:bi} {y:bi} return n; // возвращает значение n, которое представляет собой количество циклов, которые были пересечены, 0 равно значение показателя };


- #### 我们模拟一组数据传入该参数看看结果如何

var arr1 = [1,2,3,4,5,6,8,8,9] // показатель скорости var arr2 = [2,3,4,5,6,7,7,7] // показатель медленной линии function main (() { Log ((_Cross ((arr1, arr2)): О, _Cross ((arr1, arr2)) Log ((_Cross ((arr2, arr1)): О, _Cross ((arr2, arr1)) {y:bi} `

内置函数_Cross分析及使用说明

Вы можете увидеть, что результат 3, 3, 3 ≠ 3.

内置函数_Cross分析及使用说明

На рисунке видно, что пересечение происходит перед тремя столбами K.


Больше информации

АльфаСтратегия00XЕсли нет перекрестка, мы должны вернуть 0, верно?

А вот и салат.А что, если мы вернемся обратно?

Изобретатели количественного измерения - мечтыХорошо, давайте подумаем об этом.

АльфаСтратегия00XСпасибо за ответ! Я имею в виду, возвращение 0 вполне разумно, верно?

Изобретатели количественного измерения - мечты`` var arr1 = [1,2,3,4,5,6,8,8,9] // показатель скорости var arr2 = [2, 3, 4, 5, 6, 7, 7, 7] // показатель медленной линии function main (() { Log (("_Cross ((arr1, arr2) ": ", _Cross ((arr1, arr2)) Log (("_Cross ((arr2, arr1) ": ", _Cross ((arr2, arr1)) {y:bi} `` Вы можете использовать эту настройку для набора непересекающихся матриц и запустить их. Тест не возвращает 0.

Изобретатели количественного измерения - мечтыТолько последнее скрещивание, просмотр анализа исходного кода.