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

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

スポンサーサイト

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

時刻間の高値安値ラインインジケータ(改良版)

時刻間の高値安値ラインインジケータを改良します。

昔アジアブレイクインジケータを作った時は、朝の6時または7時から夕方までの時間帯の高値安値を表示させることで始めました。
前回の改善では、トレードのバイエーションを増やすために時刻を自由に設定できるようにしたつもりでした。
ところがNYブレイクというのを試してみようと思い、インジケータを動かしてみると上手く表示できませんでした。
例えば22時から翌朝の7時までといった感じです。

これは高値安値設定の期間の条件を「スタート時刻より大きく、エンド時刻より小さい」とう単純な条件にしていたことによります。

そこで0時をまたいでもきちんと表示できるように改善しました。
ポイントは、スタート時刻の数字とエンド時刻の数字の大きさ比較で場合分けするところにあります。

以下にソースコードを掲載します。

/////////////////////////////////////////////
//指定した時刻間の高値安値ラインを表示する
//0時をまたぐ時刻間に対応

indicator ind_time_HL_all;
input start_time = 13, end_time=18 ;
draw time_high("time high",dot_line,green), time_low("time low",dot_line,red);
vars old(number), new(number), i(number), j(number), k(number),
current_high(number), current_low(number);
begin
old := front(close);
new := back(close);
if new < old then return;

current_high := close[old];
current_low := close[old];
j := old;

for i := old to new do begin
if hour(timestamp[i]) = start_time and minute(timestamp[i]) = 0 then begin
//過日のラインを引く
for k := j to i-1 do begin
if i > 0 then begin
time_high[k] := current_high;
time_low[k] := current_low;
end;
end;
//初期設定
current_high := close[i];
current_low := close[i];
j := i;{ jは期間の初めのインデックス }
end;

//指定期間内の高値安値更新
if start_time < end_time then begin { ここが変更点です }
   if hour(timestamp[i]) >= start_time and hour(timestamp[i])< end_time then begin
if high[i] > current_high then current_high := high[i];
if low[i] < current_low then current_low := low[i];
   end;
end else begin { ここが変更点です }
   if (hour(timestamp[i]) <= 23 and hour(timestamp[i]) >= start_time) or
(hour(timestamp[i])< end_time) then begin
if high[i] > current_high then current_high := high[i];
if low[i] < current_low then current_low := low[i];
   end;
end;
end;
//本日のラインを引く
for k := j to new do begin
time_high[k] := current_high;
time_low[k] := current_low;
end;
end.
//////////////////////////////////////
参考になったらクリックよろしく 人気blogランキング
    
検証にはGFTのdealbook360を使っています
GFT

これまでの開発システムソースコード:
モジュール目次

システム売買ルール

自前の検証をお勧めします
口座開設はこちらから
サザインベストメント
スポンサーサイト

コメント

コメントの投稿


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

トラックバック

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

FC2Ad

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