また基本に戻りましょう:
EMA(エクスポネンシャル移動平均線)は比較的シンプルな指標ですが、バージョンごとのコード実行時間に大きな差はないはずです(EMAはループが含まれていないため)。それでも、再利用しやすく、実行速度も速いコードがまだ不足しているようです。このバージョンは、そのニーズを少し満たすものです。
ちなみに、OnCalculate()の代替モードを使っています。このモードでは:
int OnCalculate( constint rates_total, // price[] 配列のサイズ constint prev_calculated, // 前回呼び出し時の処理済みバーの数 constint begin, // price[] 配列の有効データの開始インデックス constdouble& price[] // 計算用の値の配列 );
この方法では、実行時間がさらに短縮され、速くなります(関数を通じて選択した価格を取得するのには時間がかかりますが、あまり大きくはないものの、そうでないバージョンと比較すると気づくことができます)。ですが、柔軟性のために「標準」モードを使用しています。また、単色バージョンにすることでさらに速くなりますが、それでは面白くありませんよね :)



コメント 0