記事"プライスヒストグラム(マーケット特性)とMQL5への導入"についてのディスカッション - ページ 2

 

2010.03.09 21:12:54 プライスヒストグラム (#DD,MN1) アクセス可能な履歴はありません PERIOD_D1

 
gen5s:

素晴らしいカウンセラー!そうですね...

この問題は251ビルドから発生し、新しいビルドではログにはロードされていると表示されるものの、全く反映されなくなりました。

何かを変更する必要があるかもしれません、別のディレクトリに移動?

ご指摘ありがとうございます。修正しました。アップデートを待つ。

追記

最大/最小配列の検索にエラーがあり、それを修正した後、EAコードにバグが現れました。

ClassPriceHistogram.mqhの188,189,205行目のWHOLE_ARRAYを 0に修正する必要があります。

 
bcsunwww:

2010.03.09 21:12:54 プライスヒストグラム (#DD,MN1) アクセス可能な履歴がありません PERIOD_D1

メッセージありがとうございます。修正しましたので、アップデートをお待ちください。
 
mql5:

ご指摘ありがとうございます。修正しました。アップデートをお待ちください。

追記

最大/最小配列の検索にエラーがあり、それを修正した後、Expert Advisorのコードにバグが現れました。

ClassPriceHistogram.mqhの188,189,205行目のWHOLE_ARRAYを 0に修正する必要があります。

エラーを探すのに疲れていたので、(WHOLE_ARRAY)を提案していただきありがとうございます。
 
vdv2001:
ヒント(WHOLE_ARRAY)をありがとう。
残念ながら、エキスパートのコードのエラーはこれだけではありません。ソースコードを見つけて修正するようにします。
 

PriceHistogram.mq5がチャート上で動作しない。メタエディタのエラーメッセージは添付ファイルにあります。

ファイル:
 

含まれるファイルClassPriceHistogramA.mqhを置き換えた:

  • 価格データのコピー試行回数を減らした AMOUNT_OF_ATTEMPTS=2;
  • CopyXXX()関数の実行が失敗したときにメッセージを出力するPrintErrorOnCopyFunction()関数を追加。
    //+------------------------------------------------------------------+
    //| コピーに失敗したときにメッセージを表示する。
    //+------------------------------------------------------------------+
    void PrintErrorOnCopyFunction(string func_name,string symbol,ENUM_TIMEFRAMES tf,int err_code)
      {
       Print(func_name,「価格データのコピーに失敗しました。,err_code);
       Print("シンボル・ピリオドによる最初のデート"+
             symbol+" "+TimeframeToString(tf)+
             「今のところ+
             (datetime)SeriesInfoInteger(symbol,tf,SERIES_FIRSTDATE));
       Print("サーバー上の記号による史上初のデート=",
             (datetime)SeriesInfoInteger(symbol,tf,SERIES_SERVER_FIRSTDATE));
       Print("シンボルデータの同期=",
             (bool)SeriesInfoInteger(symbol,tf,SERIES_SYNCRONIZED));
       int bars=Bars(symbol,tf);
       int max_bars_in_chart=TerminalInfoInteger(TERMINAL_MAXBARS);
       Print("対応するシンボルの期間別履歴のバー数 = ",bars,
             "   max_bars_in_chart =",max_bars_in_chart);
       datetime firstbar[];
       int copied=CopyTime(symbol,tf,bars-1,1,firstbar);
       if(copied<0)
         {
          Print("最初に空いているバーの開店時間がある",firstbar[0]);
          Comment("チャート上のバーの最大数 "の値を増やす必要があるかもしれません。);
         }
       else Print("最も古いバーの開店時間取得に失敗");
       ResetLastError();
      }
CopyXXX() 操作の前に利用可能な履歴をチェックし、チャート上のバーの数を
TerminalInfoInteger(TERMINAL_MAXBARS);
を使用してチャート上のバーの数を分析し、データへのアクセスの組織化の 例のように、(それが理にかなっているのであれば)データの入れ替えを試みます。
 

これで完璧に機能するようになりました。更新されたファイルをダウンロードしてください。

この記事のソースコードの完全なドキュメントが利用可能になりました:価格ヒストグラム(マーケットプロファイル)とMQL5での実装

このドキュメントはDoxygenによって作成されました。

詳細はMQL5コードの自動生成ドキュメントを ご覧ください。

The Price Histogram (Market Profile) and its implementation in MQL5
The Price Histogram (Market Profile) and its implementation in MQL5
  • 2010.01.28
  • Dmitry
  • www.mql5.com
The Market Profile was developed by trully brilliant thinker Peter Steidlmayer. He suggested to use the alternative representation of information about "horizontal" and "vertical" market movements that leads to completely different set of models. He assumed that there is an underlying pulse of the market or a fundamental pattern called the cycle of equilibrium and disequilibrium. In this article I will consider Price Histogram - a simplified model of Market Profile, and will describe its implementation in MQL5.
 

これですべてが機能するようになりました。更新されたファイルをダウンロードしてください。

Market_Profile_Help.rarの ソースコードにドキュメントを追加しました。


ドキュメントはDoxygenプログラムの助けを借りて作成されました。

詳細はMQL5プログラムのドキュメントの自動作成に あります。

 
Automated-Trading писал(а) # :

これですべてが機能するようになりました。更新されたファイルをダウンロードしてください。

動作せず、最初のバーのタイミングを処理できず、コンパイル時に警告が出ます。"「数値」から「文字列」への暗黙の変換 ClassPriceHistogram.mqh 404 10"

ビルド256 ログを添付します。