SetLevelStyle 関数
この関数は、サブウィンドウにプロットされるインジケータの水平レベル線 (補助線) のスタイル、線幅、色を設定します。
データ型と構成・戻り値
void SetLevelStyle(①, ②, ③);
戻り値は無し。
引数 [3]
SetLevelStyle関数は 3個の引数で構成されます。
番 号 | 引数名 | データ型 | 単位 | 初期値 | 説明 |
---|---|---|---|---|---|
① | draw_style | int | - | - | レベル線のスタイル。ENUM_LINE_STYLE 列挙値から選択。「EMPTY」の時は幅を変更しません。 |
② | line_width | int | - | - | レベル線の幅。1 (細) ~5 (太) で設定。「EMPTY」の時は幅を変更しません。 |
③ | clr | color | - | - | レベル線の色。「CLR_NONE」の時は色を変更しません。 |
※引数①のスタイルの設定は、引数②の線幅が 1の時のみ有効です。
使用例
SetLevelStyle関数によるレベル線の設定
SetLevelStyle関数を使って、サブウィンドウに表示される水平レベル線 (補助線) のスタイルと線幅、色を設定します。
次のコードはインジケータ用のコードです。インジケータ用コードの作成方法についてはこちらを参考にしてください。
コード
// SetLevelStyle関数によるインジケータのプロパティ値の設定
#property strict
#property indicator_separate_window // サブウィンドウに表示
int OnInit()
{
// インジケータint型のプロパティ
IndicatorSetInteger(INDICATOR_LEVELS, 3); // インジケータレベルの数
IndicatorSetInteger(INDICATOR_LEVELCOLOR, clrYellow); // レベルラインの色
IndicatorSetInteger(INDICATOR_LEVELSTYLE, 2); // レベルラインのスタイル
IndicatorSetInteger(INDICATOR_LEVELWIDTH, 1); // レベルラインの太さ(pixel単位設定)
IndicatorSetInteger(INDICATOR_HEIGHT, 150); // インジケータウィンドウの固定高さ(pixel単位設定)
// インジケータdouble型のプロパティ
IndicatorSetDouble(INDICATOR_MAXIMUM, 110.0); // インジケータウィンドウの最大値
IndicatorSetDouble(INDICATOR_MINIMUM, 0.0); // インジケータウィンドウの最小値
IndicatorSetDouble(INDICATOR_LEVELVALUE, 0, 25.0); // レベル値の設定
IndicatorSetDouble(INDICATOR_LEVELVALUE, 1, 50.0); // レベル値の設定
IndicatorSetDouble(INDICATOR_LEVELVALUE, 2, 75.0); // レベル値の設定
// インジケータstring型のプロパティ
IndicatorSetString(INDICATOR_SHORTNAME, "テスト"); // インジケータの略称名
IndicatorSetString(INDICATOR_LEVELTEXT, 0, "レベル1(index=0)"); // レベルの説明
IndicatorSetString(INDICATOR_LEVELTEXT, 1, "レベル2(index=1)"); // レベルの説明
IndicatorSetString(INDICATOR_LEVELTEXT, 2, "レベル3(index=2)"); // レベルの説明
SetLevelStyle(STYLE_DASH, 1, clrRed);
return(INIT_SUCCEEDED);
}
int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
return(rates_total);
}
インジケータ用コードをコンパイルして実行する方法はこちらを参考にしてください。(デモ口座でお試しください)
結果
SetLevelStyle関数が無い時の状態
SetLevelStyle関数が有る時の状態