「Pivot Star」は、現在のピボットポイントを描画するシンプルなインジケーターです。過去のデータは表示せず、クリーンで使いやすい設計になっています。
標準、フィボナッチ、カマリラ、ウッディーズ、デマークのピボット計算方法から選択可能です。
計算は選択した期間の前のバーに基づいて行います。
double xOpen=iOpen(0, inpPeriod, 1);
double xClose= iClose(0, inpPeriod, 1);
double xHigh = iHigh(0, inpPeriod, 1);
double xClose= iClose(0, inpPeriod, 1);
double xHigh = iHigh(0, inpPeriod, 1);
double xLow= iLow(0, inpPeriod, 1);
デフォルト設定はH1で、スキャルピングに最適です。


input int xShift = 3; // X軸シフト
input int xLen = 25; // 線の長さ
input int xLen = 25; // 線の長さ
- xShiftはピボットラインを最初のバーに対して位置づけます(正の数は右にシフト)。
- xLenは線の長さを設定します(理論的にはバー数によって)。
さらに、前日の高値と安値の2本の追加ラインが描画されます。
各ラインはお好みに合わせて設定可能です:色、スタイル、太さ(色を「なし」に設定するとラインが無効になります)。

太いラインが前日の高値/安値です。D1よりも低い時間枠でのみ描画されます。

カマリラピボットにはL3、L4、L5、H3、H4、H5のラインが含まれます。他のポイントは必要ないため省略されています。
表示している時間枠がインジケーターの設定期間より大きい場合、ラインは描画されません。それ以外の場合は、視界を妨げるだけです。
//--- ラインを描画
if(inpPeriod>=Period())
{
if(Period()<=1440)
{
DrawLevel("Yesterdays High", xYH, StyleYH, WidthYH, LevelYH);
DrawLevel("Yesterdays Low", xYL, StyleYL, WidthYL, LevelYL);
}
DrawLevel("R3", xR3, StyleR3, WidthR3, LevelR3);
DrawLevel("R2", xR2, StyleR2, WidthR2, LevelR2);
DrawLevel("R1", xR1, StyleR1, WidthR1, LevelR1);
DrawLevel("PP", xPP, StylePP, WidthPP, LevelPP);
DrawLevel("S1", xS1, StyleS1, WidthS1, LevelS1);
DrawLevel("S2", xS2, StyleS2, WidthS2, LevelS2);
DrawLevel("S3", xS3, StyleS3, WidthS3, LevelS3);
}
if(inpPeriod>=Period())
{
if(Period()<=1440)
{
DrawLevel("Yesterdays High", xYH, StyleYH, WidthYH, LevelYH);
DrawLevel("Yesterdays Low", xYL, StyleYL, WidthYL, LevelYL);
}
DrawLevel("R3", xR3, StyleR3, WidthR3, LevelR3);
DrawLevel("R2", xR2, StyleR2, WidthR2, LevelR2);
DrawLevel("R1", xR1, StyleR1, WidthR1, LevelR1);
DrawLevel("PP", xPP, StylePP, WidthPP, LevelPP);
DrawLevel("S1", xS1, StyleS1, WidthS1, LevelS1);
DrawLevel("S2", xS2, StyleS2, WidthS2, LevelS2);
DrawLevel("S3", xS3, StyleS3, WidthS3, LevelS3);
}
最新情報(2017年6月5日更新):
いくつかの変更を行い、前日の高値/安値を表示するオプションが追加されました。また、異なる時間枠ごとにインジケーターを複数使用できるようにコードを修正しました(例:デイリーピボット用、ウィークリーピボット用など)。