無料でロボットをダウンロードする方法を見る
Facebook上で私たちを見つけてください。
私たちのファンページに参加してください
興味深いスクリプト?
それではリンクにそれを投稿してください。-
他の人にそれを評価してもらいます
記事を気に入りましたか?MetaTrader 5ターミナルの中でそれを試してみてください。
ライブラリ

GetExtremums - MetaTrader 5のためのライブラリ

ビュー:
954
評価:
(28)
パブリッシュ済み:
2016.07.08 10:35
アップデート済み:
2016.11.22 07:34
\MQL5\Include\
このコードに基づいたロボットまたはインジケーターが必要なら、フリーランスでご注文ください フリーランスに移動

GetExtremums() 関数は履歴の一定期間での極値を識別するために設計されています。探索アルゴリズムはFastZZ指標で使用されるものと同様で、パラメータは価格変動の最小値の1つだけで極値を識別します。

int GetExtremums(double range,      // 価格変動の最小値
                 MqlRates &rates[], // 履歴相場の配列
                 dextremum &ge[],  // 返された極値の配列
                 int total=0)      // すべての極値のための必要な極値の数またはゼロ
パラメータ:
  •     double range - 極値を識別するために必要な最低限の価格変動;
  •     MqlRates &rates[] - 相場の配列
  •     dextremum &ge[] - 識別された極値を順番に格納する配列で時間的に最も近い極地が最初の要素(0インデックス)に格納されます
  •     int total - 発見される極値の合計数の制限すべての極値はデフォルト(total==0)によって検索されます。
戻り値:
  •     極値の配列の要素数。

以下の構造体は極値を説明するために使用されます。

struct dextremum         // 極値を説明
{
   int        type;      //1 - 天井 -1 - 底
   datetime   time;
   double      value;
};


GetExtremums()の使用例。

#include <GetExtremums.mqh>
//----
void OnStart()
{
   MqlRates rt[];
   dextremum zz[];
   CopyRates(_Symbol,_Period,TimeCurrent(),100,rt);
   // 最初のバリアント - 10極値の取得
   int cnt=GetExtremums(100*_Point,rt,zz,10);
   for(int i=0; i<cnt; i++)
        Print(i,") ",zz[i].time," >> ",zz[i].type==1?"Peek":"Trough","=",zz[i].value);
   // 2番目のバリアント - 全極値の取得 
   cnt=GetExtremums(100*_Point,rt,zz);
   Print("Found ",cnt," extremums");
}
//----

MetaQuotes Ltdによってロシア語から翻訳されました。
元のコード: https://www.mql5.com/ru/code/1052

New Highs-New Lows指数 New Highs-New Lows指数

New Highs-New Lows指数は、所定の期間中に新安値に達した通貨ペアの数と新高値に達した通貨ペアの数の差として計算されます。

IncGUI_BitPic IncGUI_BitPic

画素描画用のグラフィカルコントロール。

gpfTCPivotStop gpfTCPivotStop

毎日のピボットサポートに基づいたエキスパートアドバイザー。

gpfTCPivotLimit gpfTCPivotLimit

ピボット指標の支持/抵抗レベルからのバウンスに基づいた取引システムの操作