チャート上にチャートオブジェクト(OBJ_CHART)を配置し、従来のチャートとして利用したいと思いませんか?実は、それが可能なんです。
必要なのは、OBJ_CHARTオブジェクトのハンドルだけです。チャート操作を利用することで、インジケーターを追加したり(ChartIndicatorAdd()やChartIndicatorDelete())、チャートの期間やシンボルを設定することができます。

EA_OBJPROP_CHART_IDエキスパートアドバイザーは、以下のアクションを実行します:
- クライアントターミナルの標準パッケージに含まれるPriceChannelインジケーターを追加します(terminal_data_folder\MQL5\Indicators\Examplesに位置しています);
- サブウィンドウを作成します(Subwindow.mq5をterminal_data_folder\MQL5\Indicatorsにコピー);
- チャートシンボルを持つOBJ_CHART型のオブジェクトをサブウィンドウに作成しますが、D1およびH4の時間足を使用します;
- OBJ_CHART型の各オブジェクトに対して、デフォルトパラメーターのPrice_Channelインジケーターを追加し、背景色を変更します。
チャートから削除すると、作成したすべてのインジケーターが削除されます:
//+------------------------------------------------------------------+//| Expert deinitialization function |//+------------------------------------------------------------------+voidOnDeinit(constint reason) { //--- オブジェクトを削除// ObjectDelete(0,D1);// ObjectDelete(0,H4);//--- サブウィンドウを削除 ChartIndicatorDelete(0,subwindow_ID,"Subwindow"); //--- メインウィンドウからPriceChannelインジケーターを削除//--- デフォルトパラメーターの短い名前は"Price Channel(22)"です ChartIndicatorDelete(0,0,"Price Channel(22)"); }

コメント 0