1

以下是所有 Javascript EFS,它是 javascript,但适用于股票和交易软件。

因此,在以下示例中:high() 只是 1 分钟柱中的最高价格。所有柱线每分钟处理一次最高价和最低价(该分钟的价格)。

好的,我已经弄清楚如何使用循环。但是,我很难访问我创建的循环中的值,例如

var Source2 = high();
 var vValue2   = Source2.getValue(15);

for (h = -15; h < 0; h++)       {  
     vValue2 = Math.max(vValue2, Source2.getValue(-h)); 

 if (vValue2 == Source2.getValue(-h))        { 
        barIndex2 = getCurrentBarIndex()-h; 
       }
}

现在让我们假设这一切都很好,它会返回我的值(在这种情况下,从入口点向前看的最高 15 个柱)。但是,我现在希望为循环处理创造条件(全部用于回测目的),例如:

  • 我想返回 (vValue2 +1) 例如,“vValue2”已作为最高价(15 个柱)返回,现在我想知道“vValue2 +1 柱”的值,即使这不是最高柱。
  • 有没有办法让循环只在满足多个条件时才返回值,例如:i。如果此返回值的柱 ('h' +1) 的 LOW 小于 ('h') && ('h' 的 LOW +2)、('h'+3)、('h'+4),所有的 High 都小于 ('h')。

基本上我想添加多个 IF 条件来启动循环?还是我应该在循环返回其值后添加 IF 条件???

  • 我不确定我需要的东西是否可能,或者我是否必须使用一个又一个循环来获得所需的结果。
4

1 回答 1

1

您可以在for循环中使用多个条件,如下所示:

for (h = -15; (h < 0 && something == somethingElse); h++)

您也可以break使用这样的方法退出循环:

for (h = -15; h < 0; h++)       { 
    if(blah == 1)break;  // breaks out of loop completely
}
于 2012-09-25T14:33:02.960 回答