zoukankan      html  css  js  c++  java
  • 量化投资_EasyLanguage/PowerLanguage教学课程__【第一篇基础】__【第十三章文本绘制】

    第十三章:文本绘制

    第一节:介绍

      首先到这里我们发现,很多的绘制函数都是采用XX_New的方式进行绘制的,正如前面的Arw_New绘制箭头、TL_New绘制趋势线,另外还有对应这些绘图的Set方法和Get方法,进行相关属性设置和相关设置值的获取。

     

    第二节:基本文本绘制函数

    2.1 Text_New

    # 语法

    语法 
    Text_New(BarDate,BarTime,PriceValue,”Text”)
    
    参数
    BarDate——数值表达式,显示文字的 K 线日期;日期格式为YYYMMdd
    BarTime——数值表达式,显示文字的 K 线时间;时间格式为HHmm
    PriceValue——数值表达式,显示文字的垂直位置
    Text——字符串,显示需要的文本内容

    # 示例

    当连续三根 K 线的开盘价都持续升高,则在 K 线最高价位置标注”UpT”:
    If Open>Open[1] And Open[1]>Open[2] Then
    Value1=Text_New(Date,Time,High,"UpT");
    print(date," ",time," ",currentbar," ",value1);
    //返回值:

    1200901.00 1400.00 1.00 1.00
    1200901.00 1500.00 2.00 1.00
    1200901.00 2200.00 3.00 1.00
    1200901.00 2300.00 4.00 1.00
    1200902.00 1000.00 5.00 1.00
    1200902.00 1100.00 6.00 1.00
    1200902.00 1130.00 7.00 2.00
    1200902.00 1400.00 8.00 2.00
    1200902.00 1500.00 9.00 2.00
    1200902.00 2200.00 10.00 3.00

    ...略

    # 说明

      在图表上指定位置标注一个特定的文字。返回文字的编号ObjectID。通过返回值我们可以看到,这里标注文字编号第一个出现的位置,如果没有出现新的文字编号,后面的每一个bar节点都与前面的编号相同。

    2.2 Text_New_s

    # 语法

    语法 
    Text_New_s(BarDate,BarTime_s,PriceValue,”Text”)
    
    参数
    BarDate——数值表达式,显示文字的 K 线日期;日期格式为YYYMMdd
    BarTime_s——数值表达式,显示文字的 K 线时间;时间格式为 HHmmss
    PriceValue——数值表达式,显示文字的垂直位置
    Text——字符串,显示需要的文本内容

    # 示例

    当连续三根 K 线的开盘价都持续升高,则在 K 线最高价位置标注”UpT”:
    If Open>Open[1] And Open[1]>Open[2] Then
    Value1=Text_New_s(Date,Time_s,High,"UpT");

    # 说明

      在图表上指定位置标注一个特定的文字。返回文字的编号 ObjectID。

    2.2 Text_New_self

    # 语法

    语法 
    Text_New_self(BarDate,BarTime,PriceValue,”Text”)
    
    参数
    BarDate——数值表达式,显示文字的 K 线日期;日期格式为YYYMMdd
    BarTime——数值表达式,显示文字的 K 线时间;时间格式为HHmm
    PriceValue——数值表达式,显示文字的垂直位置
    Text——字符串,显示需要的文本内容
    
    注意 测试写在信号中,文字会标在主图上。写在指标中,需要设定以子图数据计算,才可以标记在子图上。

    # 示例

    当连续三根 K 线的开盘价都持续升高,则在子图 K 线最高价位置标注”UpT”:
    If Open>Open[1] And Open[1]>Open[2] Then
    Value1=Text_New_self(Date,Time,High,"UpT");

    # 说明

      在指标子图上指定位置标注一个特定的文字。返回文字的编 号 ObjectID。

    2.3 Text_New_self_s

    # 语法

    语法 
    Text_New_self_s(BarDate,BarTime_s,PriceValue,”Text”)
    
    参数
    BarDate——数值表达式,显示文字的 K 线日期;日期格式为YYYMMdd
    BarTime_s——数值表达式,显示文字的 K 线时间;时间格式为 HHmmss
    PriceValue——数值表达式,显示文字的垂直位置
    Text——字符串,显示需要的文本内容
    
    注意 
    测试写在信号中,文字会标在主图上。写在指标中,需要设定以子图数据计算,才可以标记在子图上。

    # 示例

    当连续三根 K 线的开盘价都持续升高,则在子图 K 线最高价位置标注”UpT”:
    If Open>Open[1] And Open[1]>Open[2] Then
    Value1=Text_New_self_s(Date,Time_s,High,"UpT"); 

    # 说明

      在指标子图上指定位置标注一个特定的文字。返回文字的编 号 ObjectID。

    第三节:文本绘制的设定函数

    3.1 Text_SetAttribute

    # 语法

    语法 Text_SetAttribute(ObjectID, Attribute, LogicalExpression)
    参数
    ObjectID——整数类型,指定文本的 ID 号。
    Attribute——可设定的文本属性,有 5 个值:
    0 — 加框
    1 — 加粗
    2 — 斜体
    3 — 删除线
    4 — 下划线
    LogicalExpression——布尔值,True=启用,False=取消。
    注意 当使用 Text_New 的时候,会产生一组 ObjectID。

    # 示例

    3 号文本设定为粗体:
    Value1=Text_SetAttribute(3,1,True);

    # 说明

      设定指定编号的文本的属性。返回 0 则设定成功;返回-2 为 无效的文本编号。 

    3.2 Text_SetBGColor

    # 语法

    语法 Text_SetBGColor(OBjectID,BGColor)
    参数
    ObjectID——整数类型,指定文本的 ID 号。
    BGColor——指定颜色的表达式。颜色可以是 RGB 色码或传统
    色码或者 17 种基本颜色。
    注意 当使用 Text_New 的时候,会产生一组 ObjectID。

    # 示例

    设定 3 号文本的背景颜色为蓝色(基本颜色参数):
    Value1= Text_SetBGColor(3,Blue);
    设定 3 号文本的背景颜色为橙色(RGB 色码参数):
    Value1= Text_SetBGColor(3,2138336);
    设定 3 号文本的背景颜色为绿色(传统色码参数):
    [LegacyColorValue=True];
    Value1= Text_SetBGColor(3,4);

    # 说明

      设定文本的背景颜色。返回 0 则设定成功;返回-2 为无效的 文本编号。

    3.3 Text_SetBorder

    # 语法

    语法 Text_SetBorder(ObjectID,LogicalExpression)
    参数
    ObjectID——整数类型,指定文本的 ID 号。
    LogicalExpression——布尔值,True=增加边框,False=移除边框。
    注意 当使用 Text_New 的时候,会产生一组 ObjectID。

    # 示例

    增加编号为 3 的文本的边框:
    Value1= Text_SetBorder(3,True);
    
    移除编号为 3 的文本的边框:
    Value1= Text_SetBorder(3,False);

    # 说明

      增加或移除指定编号的文本的边框。返回 0 则设定成功;返 回-2 为无效的文本编号。  

    3.4 Text_SetColor

    # 语法

    语法 Text_SetColor(OBjectID,TextColor)
    参数
    ObjectID——整数类型,指定文本的 ID 号。
    TextColor——指定颜色的表达式。颜色可以是 RGB 色码或传
    统色码或者 17 种基本颜色。
    注意 当使用 Text_New 的时候,会产生一组 ObjectID。

    # 示例

    设定 3 号文本的文字颜色为蓝色(基本颜色参数):
    Value1= Text_ SetColor(3,Blue);
    设定 3 号文本的文字颜色为橙色(RGB 色码参数):
    Value1= Text_ SetColor(3,2138336);
    设定 3 号文本的文字颜色为绿色(传统色码参数):
    [LegacyColorValue=True];
    Value1= Text_ SetColor(3,4);

    # 说明

      设定指定编号的文本的文字颜色。返回 0 则设定成功;返回 -2 为无效的文本编号。

    3.5 Text_SetFontName

    # 语法

    语法 Text_GetFontName(ObjectID,”FontName”)
    参数
    ObjectID——整数类型,指定文本的 ID 号。
    FontName——字符串表达式,Windows 字型资料夹内的字型
    名称。
    注意 当使用 Text_New 的时候,会产生一组 ObjectID。

    # 示例

    将编号为 3 的文本字体设定为 Verdana:
    Value1= Text_GetFontName(3,"Verdana");

    # 说明

      设定指定编号的文本的字体类型。返回-2 为无效的文本编号。 字型文件夹中的任意字型都可以使用。在 windows XP 系统中 可以在控制面板中进入字型文件夹。

    3.6 Text_SetLocation

    # 语法

    语法 Text_SetLocation(ObjectID,BarDate,BarTime,PriceValue)
    参数
    ObjectID——整数类型,指定文本的 ID 号。
    BarDate——数值表达式,显示文字的 K 线日期;日期格式为
    YYYMMdd
    BarTime——数值表达式,显示文字的 K 线时间;时间格式为
    HHmm
    PriceValue——数值表达式,显示文字的垂直位置
    注意 当使用 Text_New 的时候,会产生一组 ObjectID。

    # 示例

    将编号为 3 的文本字移动到目前 K 线的上方
    Value1=Text_SetLocation(3,Date,Time,High);

    # 说明

     调整指定编号的文本的显示位置。返回 0 则调整成功;返回-2 为无效的文本编号。 

    3.7 Text_SetLocation_s

    # 语法

    语法 Text_SetLocation_s(ObjectID,BarDate,BarTime_s,PriceValue)
    参数
    ObjectID——整数类型,指定文本的 ID 号。
    BarDate——数值表达式,显示文字的 K 线日期;日期格式为
    YYYMMdd
    BarTime_s——数值表达式,显示文字的 K 线时间;时间格式
    为 HHmmss
    PriceValue——数值表达式,显示文字的垂直位置
    注意 当使用 Text_New_s 的时候,会产生一组 ObjectID。

    # 示例

    将编号为 3 的文本字移动到目前 K 线的上方:
    Value1=Text_SetLocation_s(3,Date,Time_s,High);

    # 说明

      调整指定编号的文本的。

    3.8 Text_SetSize

    # 语法

    语法 Text_SetSize(ObjectID,FontSize)
    参数 ObjectID——整数类型,指定文本的 ID 号。
    FontSize——为指定文本的大小。
    注意 当使用 Text_New 的时候,会产生一组 ObjectID。

    # 示例

    3 号文本的字体大小设定为 16:
    Value1=Text_SetSize(3,16);

    # 说明

      设定指定编号的文本的字形大小。返回 0 则设定成功;返回-2 为无效的文本编号。

    3.9 Text_SetString

    # 语法

    语法 Text_SetString(ObjectID,”Text”)
    参数 ObjectID——整数类型,指定文本的 ID 号。
    Text——为要显示的文字。
    注意 当使用 Text_New 的时候,会产生一组 ObjectID。

    # 示例

    3 号文本的文字内容更换为”New Text”:
    Value1= Text_SetString(3,"New Text");

    # 说明

      替换指定文本 ID 编号显示的文字。返回 0 则替换成功;返回 -2 为无效的文本编号。

    3.10 Text_SetStyle

    # 语法

    语法 Text_SetStyle(ObjectID,HorizPl,VertPl)
    参数
    ObjectID——整数类型,指定文本的 ID 号。
    HorizPl——整数类型,指定文本的水平对齐方式:
    0 — 文字左侧对齐 K 线
    1 — 文字右侧对齐 K 线
    2 — 文字中央对齐 K 线
    VertPl——整数类型,指定文本的垂直对齐方式:
    0 — 文字上缘对齐价格
    1 — 文字下缘对齐价格
    2 — 文字中央对齐价格
    注意 当使用 Text_New 的时候,会产生一组 ObjectID。

    # 示例

    3 号文本设定为水平置中,垂直置中:
    Value1=Text_SetStyle(3,2,2);

    # 说明

      设定指定文本编号和 K 线的对齐方式。返回 0 则设定成功; 返回-2 为无效的文本编号。

    第四节:文本绘制的Get函数

    4.1 MC_Text_GetActive

    # 语法

    语法 MC_Text_GetActive

    # 示例

    将当前选中的文本的文本 ID 号赋给变量 Value1:
    Value1= MC_Text_GetActive;

    # 说明

      返回一个数值,表示当前选中的文本的文本 ID 号,如果没有 当前选定的文本,则返回值为-1。

    4.2 Text_GetActive

    # 语法

    语法 Text_GetActive
    注意
    当使用 Text_New 的时候,会产生一组 ObjectID。
    测试得知:当图表上任何文本都未被选中时,Text_GetActive会返回最新的 ID 号,或者返回上一次被选中的 ID 编号。

    # 示例

    指定一个值赋给 Value1,表明当前选中的文本对象的对象 ID号:
    Value2=text_new(date,time,high,text(entryprice));
    Value1=Text_GetActive;

    # 说明

      返回一个数值,表示当前选中的文本的文本 ID 号,如果没有 当前选定的文本,则返回值为-1。

    4.3 Text_GetAttribute

    # 语法

    语法 Text_GetAttribute(ObjectID,Attribute)
    参数
    ObjectID——整数类型,指定文本的 ID 号。
    Attribute——有 5 个值:
    0 — 加框
    1 — 加粗
    2 — 斜体
    3 — 删除线
    4 — 下划线
    注意 当使用 Text_New 的时候,会产生一组 ObjectID。

    # 示例

    设定一个逻辑值的变量 Bold,存储 ID 号为 3 的“加粗”文本属性是否设定成功:
    Variable:Bold(False);
    Bold=Text_GetAttribute(3,1);

    # 说明

      返回一个逻辑值,表示指定的 ID 号的文本属性的设置。若文 本属性设置成功则返回 True,若文本属性未设置或指定 ID 无 效则返回 False。

    4.4 Text_GetBGColor

    # 语法

    语法 Text_GetBGColor(ObjectID)
    参数 ObjectID——整数类型,指定文本的 ID 号。
    注意 当使用 Text_New 的时候,会产生一组 ObjectID。

    # 示例

    将 ID 号为 3 的文本的背景颜色的 RGB 色码赋给变量 Value1:
    Value1=Text_ GetBGColor(3);
    
    将 ID 号为 3 的文本的背景颜色的传统色码赋给变量 Value1:
    [LegacyColorValue=True];
    Value1=Text_ GetBGColor(3);

    # 说明

      返回一个 RGB 色码或传统的色码,该值对应于一个指定文本 对象的背景颜色。如果 ID 号无效,则返回值为-2

    4.5 Text_GetBorder

    # 语法

    语法 Text_GetBorder(ObjectID)
    参数 ObjectID——整数类型,指定文本的 ID 号。
    注意 当使用 Text_New 的时候,会产生一组 ObjectID。

    # 示例

    设定一个逻辑值的变量 Border,存储 ID 号为 3 的“加框”文本属性是否设定成功:
    Variable: Border(False);
    Border=Text_GetAttribute(3);

    # 说明

      返回一个逻辑值,如果对应文本编号的文本有加边框,则返 回 True,若没有加边框,则返回 False。

    4.6 Text_GetColor

    # 语法

    语法 Text_GetColor(ObjectID)
    参数 ObjectID——整数类型,指定文本的 ID 号。
    注意 当使用 Text_New 的时候,会产生一组 ObjectID。

    # 示例

    将 ID 号为 3 的文本的颜色的 RGB 色码赋给变量 Value1:
    Value1=Text_GetColor(3);
    
    将 ID 号为 3 的文本的颜色的传统色码赋给变量 Value1:
    [LegacyColorValue=True];
    Value1=Text_ GetColor(3);

    # 说明

      返回一个 RGB 色码或传统的色码,该值对应于一个指定文本 对象的颜色。如果 ID 号无效,则返回值为-2

    4.7 Text_GetDate

    # 语法

    语法 Text_GetDate(ObjectID)
    参数 ObjectID——整数类型,指定文本的 ID 号。
    注意 当使用 Text_New 的时候,会产生一组 ObjectID。

    # 示例

    将 ID 号为 3 的文本的日期赋给变量 Value1:
    Value1=Text_GetDate(3);

    # 说明

      返回指定文本编号的日期值,YYYMMdd 格式 如果指定文本的 ID 号无效,则返回-2 YYY 是 1900 年以来的年数 MM 是月份 DD 是日期

    4.8 Text_GetFirst

    # 语法

    语法 Text_GetFirst(Origin)
    参数
    Origin——数值表达式,表示指定文本最先新增的类型:
    1 — 目前公式所新增的文字
    2 — 非目前公式或使用者手动新增的文字
    3 — 任何公式或使用者手动新增的文字
    4 — 目前公式或使用者手动新增的文字
    5 — 非目前公式新增的文字
    6 — 任何公式新增的文字
    7 — 使用者手动新增的文字
    注意 如果最新的(最先增加的)文本已被删除,则下一个最新的(第二增加的)文本会作为最新的文本。

    # 示例

    将目前公式所新增的文字的 ID 赋给变量 Value1:
    Value1=Text_GetFirst(1);

    # 说明

      获取指定条件下最先新增在图表上的文本编号。若返回-2,则 为无效的文本编号。

    4.9 Text_GetFontName

    # 语法

    语法 Text_GetFontName(ObjectID)
    参数 ObjectID——整数类型,指定文本的 ID 号。

    # 示例

    将编号为 3 的文本字体名称存入变量”strings”:
    Var:Strings("");
    Strings =Text_GetFontName(3);

    # 说明

      获取指定文本编号的字体类型。若返回-2,则为无效的文本编号。

    4.10 Text_GetHStyle

    # 语法

    语法 Text_GetHStyle(ObjectID)
    参数 ObjectID——整数类型,指定文本的 ID 号。
    返回
    0 — 文字左侧对齐 K 线
    1 — 文字右侧对齐 K 线
    2 — 文字中央对齐 K 线

    # 示例

    返回值将编号为 3 的文本的水平对齐方式赋给变量 Value1:
    Value1=text_GetHStyle(3);

    # 说明

      获取指定文本编号的水平对齐方式。返回-2 为无效的文本编 号。

    4.11 Text_GetNext

    # 语法

    语法 Text_GetNext(ObjectID, Origin)
    参数
    ObjectID——整数类型,指定文本的 ID 号。
    Origin——数值表达式,表示指定文本最先新增的类型:
    1 — 目前公式所新增的文字
    2 — 非目前公式或使用者手动新增的文字
    3 — 任何公式或使用者手动新增的文字
    4 — 目前公式或使用者手动新增的文字
    5 — 非目前公式新增的文字
    6 — 任何公式新增的文字
    7 — 使用者手动新增的文字
    注意 当使用 Text_New 的时候,会产生一组 ObjectID。

    # 示例

    将编号 3 的文本之后的第一个目前公式新增的文字编号赋给变量 Value1:
    Value1=Text_GetNext(3,1);

    # 说明

      获取指定文本编号之后新增的文字编号。返回-2 为无效的文 本编号。

    4.12 Text_GetSize

    # 语法

    语法 Text_SetSize(ObjectID)
    参数 ObjectID——整数类型,指定文本的 ID 号。
    注意 当使用 Text_New 的时候,会产生一组 ObjectID。

    # 示例

    3 号文本的字体大小赋给变量 Value1:
    Value1=Text_SetSize(3);

    # 说明

      获取指定文本编号的字形大小。返回-2 为无效的文本 ID 编号。

    4.13 Text_GetString

    # 语法

    语法 Text_GetString(ObjectID)
    参数 ObjectID——整数类型,指定文本的 ID 号。
    注意 当使用 Text_New 的时候,会产生一组 ObjectID

    # 示例

    3 号文本的文字内容赋给变量 Value1:
    Value1= Text_ GetString (3);

    # 说明

      获取指定文本编号显示的文字。

    4.14 Text_GetTime

    # 语法

    语法 Text_GetTime(ObjectID)
    参数 ObjectID——整数类型,指定文本的 ID 号。
    注意 当使用 Text_New 的时候,会产生一组 ObjectID。

    # 示例

    将编号为 3 的文本的时间存入变量 Value1:
    Value1=Text_GetTime(3);

    # 说明

      获取指定文本编号的时间,HHmm 格式,精确到分。返回-2为无效的文本编号。

    4.15 Text_GetTime_s

    # 语法

    语法 Text_GetTime_s(ObjectID)
    参数 ObjectID——整数类型,指定文本的 ID 号。
    注意 当使用 Text_New_s 的时候,会产生一组 ObjectID。

    # 示例

    将编号为 3 的文本的时间存入变量 Value1:
    Value1=Text_GetTime_s(3);

    # 说明

      获取指定文本编号的时间,HHmmss 格式,精确到秒。返回 -2 为无效的文本编号。

    4.16 Text_GetValue

    # 语法

    语法 Text_GetValue(ObjectID)
    参数 ObjectID——整数类型,指定文本的 ID 号。
    注意 当使用 Text_New 的时候,会产生一组 ObjectID。

    # 示例

    将编号对应的文字垂直位置存入变量 Value1:
    Value1= Text_GetValue(3);

    # 说明

      获取指定文本编号所对应文字的垂直价格。返回值-2 为无效 的文本编号。

    4.17 Text_GetVStyle

    # 语法

    语法 Text_GetVStyle(ObjectID)
    参数 ObjectID——整数类型,指定文本的 ID 号。
    返回
    0 — 文字上缘对齐价格
    1 — 文字下缘对齐价格
    2 — 文字中央对齐价格

    # 示例

    将编号对应的文字对齐方式存入变量 Value1:
    Value1=Text_GetVStyle(3);

    # 说明

      获取指定文本编号所对应文字的“垂直对齐方式”。返回-2为无效的 ID 编号。

    第五节:删除文本绘制

    5.1 Text_Delete

    # 语法

    语法 Text_Delete(ObjectID)
    参数 ObjectID——整数类型,指定文本的 ID 号。
    注意
    *当使用 Text_New 的时候,会产生一组 ObjectID。
    *可以直接用 Text_Delete(ObjectID)这个语法把它从 K 线图上删
    掉。

    # 示例

    K线上写出”test”字样,在符合某个condition的时候删掉:
    Value2=Text_new(date,time,high,"test");
    If condition1 then
    Text_Delete(value2);

    # 说明

      删除 K 线图上的指定 ID 号的文字;文字删除成功将返回 0, 如果指定 ID 无效则返回-2。

    =================================================

    之前的文章感谢大家的转载,希望转载时请注明出处,本人转自其它网站的图表一并感谢,谢谢~!

    https://www.cnblogs.com/noah0532/

  • 相关阅读:
    牛客挑战赛48E速度即转发【带修莫队,分块】
    P3180[HAOI2016]地图【圆方树,莫队,分块】
    Jetty 教程
    Leetcode 238. Product of Array Except Self
    WebService [Debug] undefined element declaration 's:schema'
    WebService [Debug] java.net.BindException: Can't assign requested address
    SQL Server 四种排序, ROW_NUMBER() /RANK() /DENSE_RANK() /ntile() over()
    Leetcode 110 判断二叉树是否为平衡二叉树
    WebService 使用JDK开发WebService
    WebService [Debug] javax.xml.ws.WebServiceException: Undefined port type
  • 原文地址:https://www.cnblogs.com/noah0532/p/13693832.html
Copyright © 2011-2022 走看看