チャートに任意の文字を表示!TextLabelクラスのサンプルコード

チャートの任意位置に文字を表示できるクラスです。

概要

指定した座標に文字を表示できます。トレステ上部メニュー「ドローイング」などから「テキスト」を追加するのと似たような事がプログラムから可能になります。

チャート上に固定されたスクロールしても動かない文字を表示させることもできますし、指定した足に固定されスクロールすれば足と一緒にスクロールされるような文字を表示させることもできます。

3種類の座標クラス(DTPoint, BNPoint, XYPoint)のうちどれを使うかによってスクロール時の挙動が変わってきますので、違いを確認できるサンプルコードを紹介します。(座標クラスの扱いは、他の描画系クラスでも同様です)

EasyLanguageサンプルコード

インジケーターを新規作成して以下のコードを貼り付け、チャートに設定ください。3種類の文字が表示されます。

using elsystem;
using elsystem.drawingobjects;
using elsystem.drawing;

Vars:
    TextLabel oTL_DT( NULL ),
    TextLabel oTL_BN( NULL ),
    TextLabel oTL_XY( NULL );
 
Once ( LastBarOnChartEx ) Begin
     
    //---------------------------------------------------
    // 1. 座標をDTPointで指定する方法
    //    X : チャート足の日時
    //    Y : チャート足の価格
    // 
    // (例) 最終足から2本前の足の安値付近に「注目」と表示させる
    //---------------------------------------------------
    
    oTL_DT = TextLabel.Create(
        DTPoint.Create( BarDateTime[2], Low[2] ),
        "注目"
    );
    oTL_DT.Font = Font.Create( "メイリオ", 14 );
    oTL_DT.Color = Color.Cyan;
    oTL_DT.HStyle = HorizontalStyle.Center;
    oTL_DT.VStyle = VerticalStyle.Top;
    
    DrawingObjects.Add( oTL_DT );
    
    //---------------------------------------------------
    // 2. 座標をBNPointで指定する方法
    //    X : チャート足のバー番号
    //    Y : チャート足の価格
    // 
    // (例) 最終足から10本前の足の高値付近に「?」と表示させる
    //---------------------------------------------------
    
    oTL_BN = TextLabel.Create(
        BNPoint.Create( (MaxBarsBack+CurrentBar-1)-10, High[10] ),
        "?"
    );
    oTL_BN.Font = Font.Create( "メイリオ", 14 );
    oTL_BN.Color = Color.Magenta;
    oTL_BN.HStyle = HorizontalStyle.Center;
    oTL_BN.VStyle = VerticalStyle.Bottom;
    
    DrawingObjects.Add( oTL_BN );
     
    //---------------------------------------------------
    // (3) 座標をXYPointで指定する方法
    //  - X : チャート左上を0としたX軸座標
    //  - Y : チャート左上を0としたY軸座標
    // 
    // (例) [ X:10 / Y:20 ] の座標に「固定テキスト」と表示させる
    //---------------------------------------------------
    
    oTL_XY = TextLabel.Create(
        XYPoint.Create( 10, 20 ),
        "固定テキスト"
    );
    oTL_XY.Font = Font.Create( "メイリオ", 14 );
    oTL_XY.Color = Color.Green;
    oTL_XY.HStyle = HorizontalStyle.Left;
    oTL_XY.VStyle = VerticalStyle.Top;
    
    DrawingObjects.Add( oTL_XY );
     
End;

{ ** Copyright © Trade Tech All Rights Reserved ** }

表示例

本クラスの使いどころ

チャートの任意位置に文字を表示させることができれば、インジケーターやショウミーの可読性もアップします。

自作のプログラムとうまく組み合わせて利用してみてください。

クラス一覧ページに戻る