現状

 

このように

Rectangleの第二座標は現在の足の位置になってます。

でもローソク足と被ると若干見難いですよね?

ということで今回は

 

座標を未来にシフトさせてみましょう。

 

まず、シフト量を決めるパラメーターを用意します。

「ローソク足何本分シフトさせるか」ということです。

名前は何でもいいですがFutureとすると

 

extern int Future = 3 ;

 

これでパラメーターを宣言します。

シフト量は必ず整数なのでextern intを使います。

ここで設定した数値がデフォルトになるので好みの量をどうぞ。

 

 

こんな感じ。

 

未来座標ですが

 

このTime[0]というのは、その中身は「何時何分何秒」というものではなく

1970年1月1日00:00からの秒数

なんです。

だから未来へシフトさせるということは

さらに何秒分かをプラスさせてやればいいんです。

そのためには、まず

 

現在表示してるチャートの時間軸を取得する必要があります。

 

これは関数があらかじめ用意されています。

 

Period()

 

これ。

「()」の中には何も入りません。

 

これで現在表示してる時間軸の定数が返されます。

時間軸の定数は以前説明しましたよね?

5分足だったら5

週足だったら10080

「分」で返されます。

座標は「秒」なので60倍します。

つまり

 

Time[0]+Period()*60

 

これでローソク足一本分、シフトします。

好きな本数分だけシフトさせるために

用意したパラメーターをかけます。

 

Time[0]+Period()*60*Future

 

これでOKです。

 

こんな感じですね。

 

 

 

さらにパラメーターが増えました。

 

 

このようにローソク足3本分シフトします。

 

シフトする必要がないなら「0」にすればいいです。