個人的にタイムフレームの数値を毎回調べている気がするので、リスト化してしまえば間違いがなくなるし時短にもなるし、メリットしかないと思うのでMT4の入力パラメータをリスト化する方法のメモを残しておきます。

例えばこんな入力パラメータのインジケーターがあったとした場合、週足っていくつだっけ?ってなるんですよね。

これの内部構造はこうなっています。

extern int   TimeFrame=240;

これをリストボックス化するにはこう実装します。

enum TimeFrames
{
  Current=0,
  M1=1,
  M5=5,
  M15=15,
  M30=30,
  H1=60,
  H4=240,
  D1=1440,
  W1=10080,
  MN1=43200,
};
extern TimeFrames TimeFrame = H4;
//extern int   TimeFrame=240;

すると出来上がるものはこうなります。※extern部分はinputに置き換えても問題ありません。

今お使いのインジケーターでリスト化したい思う人はぜひ一度お試しください。

修正のポイントは最終行の変数名を既存と同じにすることです。名前を変えてしまうとエラーとなってしまいますので、最小限で修正を済ませたい場合は同じ変数名を利用してください。

サンプルの場合ですとTimeFrameが変数名です。