スポンサーサイト





上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

タグ :

Return to page top

  • Comments (Close): -
  • TrackBack (Close): -

移動平均を算出





インジケータの作成方法を理解したところで、代表的なテクニカル指標の移動平均線でも描画しようと思うのですが、その前提として移動平均を算出する関数について学びます。

チャート上の移動平均にマウスポインタを当てると移動平均の値が表示されます。「Value:1.3767」というのがそれです。

20110203_1

これをプログラムを組むことでComment()関数によりチャート上に表示してみたいと思います。



移動平均を返す関数は、iMA() です。

double iMA(string symbol, int timeframe, int period, int ma_shift, int ma_method, int applied_price, int shift)



移動平均は小数型(double)の値を返します。かっこ()内の引数は7つもあります。


string symbol は通貨ペア、int timeframe は時間軸で、現在表示しているチャートの通貨ペアと時間軸を利用するときに NULLと0を指定すればいいのは、iBars()関数と同じです。

int period : 期間です。今回は20に設定します。

int ma_shift : ずらし幅です。数値分だけラインが右にずれます。

ma_shift が0の場合。通常の移動平均線です。

20110203_3


ma_shift を50に設定しました。違いが分かりますか?

20110203_5


int ma_method : どの方式の移動平均を使うかです(参考 : 移動平均線の表示)。

方式名称(英語)名称(日本語)
MODE_SMASimple moving average単純移動平均
MODE_EMAExponential moving average指数移動平均
MODE_SMMASmoothed moving average平滑移動平均
MODE_LWMALinear weighted moving average線形加重移動平均



int applied_price : 適用価格です。これも「移動平均線の表示」の記事で一度出てきました。

適用価格説明
PRICE_CLOSE終値
PRICE_OPEN始値
PRICE_HIGH高値
PRICE_LOW安値
PRICE_MEDIAN中央値(高値+安値)÷2
PRICE_TYPICAL代表値(高値+安値+終値)÷3
PRICE_WEIGHTED加重終値(高値+安値+終値+終値)÷4



int shift : 何本目のバーにおける移動平均を計算するかです。直近の移動平均は0です。

iMA() の説明が終わったところで、SampleIndicatorファイルに実際にコードを書いてみます。


int start()
{
int counted_bars=IndicatorCounted();

Comment(iMA(NULL,0,20,0,MODE_EMA,PRICE_CLOSE,0));

return(0);
}


実行結果
20110203_2
スポンサーサイト

タグ :

Return to page top

Comments:

Comment Form
Only inform the site author.

Trackback+Pingback:

TrackBack URL for this entry
http://metatradermania.blog24.fc2.com/tb.php/30-2a18f013
Listed below are links to weblogs that reference
from ど素人のMetaTrader入門
Bookmark
検索フォーム
RSSリンクの表示
QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。