前回の続きです。

 

VLine[i] についてですが、

チャート上で右クリックして

「表示中のライン等」を選択してみてください。

 

 

すると

 

 

こんなのが表示されるはずです。

この右側の列が区切り線のオブジェクト名になります。

VLine[2]から始まってVLine[30]まであります。

 

 

この一番右側のがVLine[2]です。

そして左にひとつずれるたびに

VLine[3] VLine[4] VLine[5] ・・・という風にひとつずつ数字が増えていきます。

なんで[1]から始まってないのか?

繰り返し処理でiの初期値を2にしたからです。

[1]から始まるようにも、もちろんできますが

コードが増えるのでやめときました。

 

さて

 

例えば、i=3の場合

つまり、このVLine[3]をクリックしたら

 

 

このRectangleの四本値に水平線を移動したいわけです。

 

ObjectMove("High",0,0,iHigh(NULL,TimeFrame,i-1));

 

ObjectMoveはオブジェクトを移動させる関数です。

この場合は"High"つまり高値の水平線を

iHigh(NULL,TimeFrame,i-1)座標に移動させます。

i=3なら

iHigh(NULL,TimeFrame,2) です。

 

この数字の意味は前に説明しました。

Monthlyモードだったら

今月が0

先月が1

先々月が2。

だから

 

iHigh(NULL,TimeFrame,2)

これは先々月の高値という意味です。

 

意味が理解できたらコピペして他のラインのObjectMoveを追加します。

 

 

これでOKです。

 

今回追加したコード全体は

 

 

このようになります。

 

 

先々月の高値でサポートされてる状態だとわかりますね。