0

C# の初心者で、ninjatrader でプログラミングしていて、次のことを実行する単純な関数を開発する必要があります。

  1. 株式の高値が以前の価格よりも高いかどうかを確認する必要があります。通常、これはインデックス作成で行われます。High[0] > High[1] など (ゼロが現在の価格であるため)。
  2. 現在の価格がそれよりも高い場合は、High[0] > High[1] の場合、変数 = High[0] のように、インデックス付き変数 (私が推測している配列) に設定する必要があります。
  3. 次の評価と私が立ち往生している場所は、現在の高値が配列内の各要素よりも大きいかどうかをどのように評価するかです。価格が上昇しているということです。
  4. 価格が上昇しなくなったら、関数の出力は配列内の最高価格である必要があります。

  5. 助けてくれる人に感謝します!

ベン

4

3 に答える 3

2

3)

if (High.All(x => currentHighPrice > x)) { ... }

4)

var highest = High.Max();

ただし、どちらのオプションもLINQを使用します。それがオプションでない場合は、for/foreachループを使用してください。

于 2011-01-25T20:56:17.607 に答える
1

あなたの説明は不完全または間違っていると思いますが、現在、配列内の Higest (Max) 値を求めているだけです。

簡単な解決策:

using System.Linq;


 var data = new decimal[10];

 decimal m = data.Max();
于 2011-01-25T20:53:35.330 に答える
0

foreachループを実行し、各アイテムの値が現在の値よりも低いかどうかを確認します

于 2011-01-25T20:55:54.880 に答える