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/

  • 相关阅读:
    二分练习题4 查找最接近的元素 题解
    二分练习题5 二分法求函数的零点 题解
    二分练习题3 查找小于x的最大元素 题解
    二分练习题2 查找大于等于x的最小元素 题解
    二分练习题1 查找元素 题解
    code forces 1176 D. Recover it!
    code forces 1173 B. Nauuo and Chess
    code forces 1173 C. Nauuo and Cards
    吴恩达深度学习课程笔记-15
    吴恩达深度学习课程笔记-14
  • 原文地址:https://www.cnblogs.com/noah0532/p/13693832.html
Copyright © 2011-2022 走看看