2012-09-25 57 views
1

以下是JavaScript的所有JavaScript EFS,但適用於股票和交易軟件。參考JAVASCRIPT中的循環中的值

因此,在下面的例子: 高()是簡單地價格的高在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)有一個低於('h')的低電平的LOW('h'+1),返回15個條的第一個最高電平(可以說'h')&('h '+2),('h'+ 3),('h'+ 4),都高於('h')。

基本上我想添加多個IF條件以開始一個循環??或者我應該在循環返回值之後添加IF條件?

  • 我不知道我需要的東西是否可能,或者我必須在循環後使用循環來獲得所需的結果。

回答

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 
} 
+0

所以我可以參考值h + 1作爲條件?所以像這樣的東西可以工作:(h = -15;(h <0 &&(h + 1(low) user1697573

+0

條件部分每次循環運行時都會對for循環進行評估,我不確定你的'low'函數在做什麼,但這裏是一個例子,說明你可以在'for'中使用多個條件http://jsfiddle.net/ 4Sn6q / – davehale23