移動平均線の描画

Pocket

今回はチャートに移動平均線を描画するプログラムをEasyLanguageで開発します。PriceSeriesProviderクラスを使用して終値のチャートと移動平均線のチャートを書きます。


コードを書く量は最低限にするので、オブジェクトを配置してプロパティで各パラメータを指定していきます。EasyLanguageプログラム開発を起動してインジケーターを新規作成してください。(名前:$moving_average)

ツールボックス(左側)のPriceSeriesProviderオブジェクトをダブルクリックして配置します。PriceSeriesProvider1を選択状態にしてプロパティ(右側)をクリックして以下のように設定します。

  • common – Load – true
  • filters – Symbol – “symbol”
  • filters – Interval – General – IntervalType – Daily
  • filters – Range – from – Years – 1

以下のコードを書いてF3を押して検証してください。

前に記事にしたPriceSeriesProvider(GUI編)では、LoadProvider()というメソッドが最初に呼ばれていたと思います。今回はこのメソッドを呼ぶかわりにプロパティでLoadプロパティをtrueに設定して自動でロードしています。TradeStation側で何かチャートを開いて分析テクニックを挿入してください。”symbol”という銘柄の指定は現在有効になっている銘柄という意味なので、チャートで出ている銘柄を同じ株価を取得します。チャート表示後、足を日足に合わせれば同じようなチャートになるはずです。デフォルトはおそらくローソク足なので見た目は少し違うと思います。

終値チャートの表示

ではこのチャートに移動平均線を足します。コードの前に変数宣言を後ろに移動平均線を描画するコードを追加します。

F3で検証すると、チャートに青い線が追加されたと思います。正しく反映されない場合は分析テクニックを削除して再度挿入してください。

移動平均線の表示

コードを簡単に説明すると、最初の変数は移動平均線を描画する関数に渡している変数でここでは10日移動平均線を使っています。移動平均値を求めるには過去10日分の終値が必要なので、if文で10日分あるか確認してから描画しています。最初に定義した変数は”var”ではなく、”input”で始まっています。これは、外部から変更できる入力パラメータであることを意味します。TradeStation側の分析テクニックの設定で変更可能なので変更してみましょう。

チャートを右クリック → 分析テクニックの設定(N)… → 設定(F) … → 入力タブのMovAvgLenの値を100に設定してOK
パラメータでの足数の設定

OKを押して閉じると、青い移動平均線が慣らされて直線に近くなると思います。

足数変更後のチャート

もう少し入力パラメータについてみていきましょう。現在銘柄コードは”symbol”でカレントの銘柄コードを指していますが、これを入力パラメータに変更します。プロパティを開いて”filters – Symbol”のところにカーソルを合わせて上にある黄色い”I”のアイコンをクリックします。

銘柄コードのパラメータ化

プロパティの入力を作成しますか?という問い合わせが表示されるので”はい”をクリックすると以下のコードが先頭に追加されます。

このまま実行すると銘柄コードがなくてエラーになるので、以下のように変更します。

では、検証(F3)してチャートに割り当ててください。日立のチャートが表示されたと思います。さきほどの移動平均線の足数同様、設定で銘柄コードを変更できるようになりました。

今回のプログラムはここからダウンロードできます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です