FX取引ルール確立のために

取引方針が定まらぬ臆病者の外国為替証拠金取引の行方。 取引ルールの柱にテクニカルな売買サインを導入中。システム開発状況を全て公開。

スポンサーサイト

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

普通の平均足インジケータ

値動きが通常の平均足と同じの始値終値インジケータを作りました。
1つのチャートに異なる時間の平均足の始値終値を表示できます。
以前作ったインジケータは、2時間足の場合なら時刻に関係なく常に2時間分の値動きから計算した平均足の始値終値を示していました。
今回のは通常の平均足と同じで、ある時刻を起点にした値動きから計算しています。

使い方:
1 barminuteは使うチャートの時間足を分単位で入力します。5分足チャートなら5です。
2 heikinashiは表示したい平均足の時間を分単位で入力します。2時間足なら120です。
3 NYclose_timeはグラフを表示し始める時刻を入力します。朝の6時なら6です。

注意:
1 プログラム中のheikinashi/barminuteは1期間のバーの本数になります。
  これが整数になるようにheikinashiとbarminuteを入力します。
2 dealbook360は日本時間の9時を起点にしています。
  通常の平均足と比較する時は、NYclose_timeを9にしないと結果が一致しない場合があります。

CTLは続きを読むを参照してください。

他のブロガーはこちらから

検証にはGFTのdealbook360を使っています
自前の検証をお勧めします
口座開設はこちらから
FX

{ チャ-トの時間足よりも長い期間の平均足の始値終値のラインを描画する }
{ 通常の平均足と同じ計算方法で始値は期間中固定される }

indicator ind_heikinashi_interval ;
input barminute =5 , heikinashi = 30, NYclose_time =6 ;
draw open_line("open",solid_line,red), close_line("close",solid_line,green) ;
vars i(number), j(number),k(number),high_int(series), low_int(series),
interval(number), count(number), Vopen(number) ;

begin
 
interval := heikinashi/barminute ; { 時間足の期間のバ-の本数 }
if interval < 1 then return ;

{ チャ-トの始めのバ-から1日分のバ-の間。はじめてのNYクロ-ズ時刻だけを探すためです }
for i := front(close) to front(close)+1440/barminute-1 do begin
    { NYクロ-ズの時刻から始めます }
if hour(timestamp[i])= NYclose_time and minute(timestamp[i]) = 0 then begin
       { 平均足の終値を計算し描画します }
count := 1 ;
for k := i to back(close) do begin
high_int[k] := movmax(high, k, count);
low_int[k] := movmin(low , k, count);
close_line[k] := (open[k+1-count]+close[k]+high_int[k]+low_int[k])/4 ;

count := count + 1 ; { 期間内のバ-本数を数えます }
if count = 1+interval then count := 1 ; { 時間足期間のバ-本数分の計算が終わるとリセットします }
Vopen := close_line[i+interval-1] ; { 始値の計算のための初期値 }
end;
    { 平均足の始値を計算して描画します }
count := 0 ;
for j := i to back(close) do begin
open_line[j] := Vopen ;  { 描画します。期間内は一定の始値になります }
count := count+1 ;   { 期間内のバ-本数を数えます }
         { 期間内の最後のバ-の時の次の期間の始値を計算します }
if count = interval then begin  
Vopen := (open_line[j]+close_line[j])/2 ;
count := 0 ; { バ-本数をリセットします }
end;
end;
end;
end;
end.

スポンサーサイト

コメント

管理人のみ閲覧できます

このコメントは管理人のみ閲覧できます

  • 2009/05/17(日) 08:17:30 |
  • |
  • #
  • [ 編集]

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバックURLはこちら
http://fxrun.blog55.fc2.com/tb.php/736-a3bd5d45
この記事にトラックバックする(FC2ブログユーザー)

FC2Ad

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