tsl-devkit/docs/tsl/syntax_book/function/tsl/graphics.md

11 KiB
Raw Blame History

图形函数

内容
  • 作图函数
  • 图形类型函数
  • 图形字段函数
  • 图形标示函数
  • 图形填充设置函数
  • 颜色函数
  • 颜色变换函数
作图函数
内容
  • Graph
  • GraphGroup
  • MergeGraph
  • EncodeGraphGroup
  • DecodeGraphGroup
  • DecodeGraph
  • EncodeGraph
  • FastLine_Web
  • BarLine_Web
  • PieLine_Web
  • GetColorByIndex
Graph

用途:作图函数相关函数。 参数arg1arg2arg3按示例顺序传入。 返回:处理后的结果值。

范例

范例一:

// K线图
setsysparam(pn_stock(), 'SZ000002');
setsysparam(pn_date(), inttodate(20140117));
setsysparam(pn_nday(), 250);
t1 := NDay2(gfopen(), Open() ,
gfclose(), close(),
gfhigh(), high(),
gflow(), low(),
gftime(), datetimetostr(sp_time()),
// KLine颜色
gfColor(), IfThen3(Close(), Open(),
ClRed() ,//涨颜色
clYellow() ,//平颜色
ClLime()//跌颜色
),
gffill(), ifThen3(Close(), Open(), flClear(), flSolid(), flSolid())
);
t2 := NDay2('MA10', Ma(Close(), 10));
g1 := Graph(gtKline(), 'KLine', t1);
g2 := Graph(gtline(), 'MA10', t2);
return graphgroup(g1, g2);

范例二:

// 折线图
setsysparam(pn_stock(), 'SZ000002');
setsysparam(pn_date(), inttodate(20140117));
setsysparam(pn_nday(), 250);
GData1 := Nday2(gfclose(), close());
GData2 := Nday2('MA5', MA(close(), 5));
GData3 := Nday2('MA20', MA(close(), 20));
g1 := Graph( gtLine(), gfclose(), Gdata1, gfColor() , clBlue());
g2 := Graph( gtLine(), "MA5", Gdata2, gfColor() , clGreen());
g3 := Graph( gtLine(), "MA20", Gdata3, gfColor() , clRed());
return graphgroup(g1, g2, g3);

参考GraphGroup DecodeGraphGroup EncodeGraphGroup DecodeGraph EncodeGraph

GraphGroup

用途:作图函数相关函数。 参数arg1arg2arg3arg4按示例顺序传入。 返回:处理后的结果值。

范例

VolData := Nday2(GfVol() , Vol() , gfColor() , ifthen ( Close() > Open() , ClRed() , ClGreen() ) );
MAVOL := Nday2('MA5', MA ( Vol() , 5 ) );
VOLGraph := Graph(gtBar(), 'VOLGraph', VolData);
MAVOLGraph := Graph(gtLine(), 'MA5Graph', MAVOL, gfColor(), clBlue());
return GraphGroup(VOLGraph, MAVOLGraph, gfMinValue(), 0);

结果说明GraphGroup包含了两个TGraph图形一个是VOLGraph成交量图形另一个是MAVOLGraph成交量的5日均线的折线图形。这两个图形具有的共有属性是gfMinValue()就是最小值为0。gfColor在VolData中作为了数据字段用来指示每一个数据点的颜色。因此柱子会根据开盘和收盘的差异来决定色彩的显示。而在MAVOLGraph又作为了图形的属性因此MAVOLGraph在显示的时候会呈现出蓝色。gfMinValue在返回的图形组合里作为了图形组合的属性因此决定了图形会用0来作为最小的值来显示而不会用区间内的最小成交量作为最小值显示。

另外我们可以注意到作为gtLine类型的MAVOLGraph并不含有特殊的值来指定折线的点的位置在没有特定的数据字段的时候系统会使用第一个存在的数据字段当成默认的gfValue来显示。

gfMinValue()设定最小值。一般的图形会用查找视图内最小最小值用于显示同时为了特殊显示也可以指定其显示的最大最小值通常成交量的图是用0作为最小值的。参考Graph DecodeGraphGroup EncodeGraphGroup DecodeGraph EncodeGraph

MergeGraph

用途:作图函数相关函数。 参数arg1arg2arg3arg4按示例顺序传入。 返回:处理后的结果值。

范例

setsysparam(pn_stock(), 'SZ000063');
setsysparam(pn_date(), 20190301T);
setsysparam(pn_nday(), 100);
t1 := NDay2(gfopen(), Open() ,
gfclose(), close(),
gfhigh(), high(),
gflow(), low(),
gftime(), datetimetostr(sp_time()),
// KLine颜色
gfColor(), IfThen3(Close(), Open(),
ClRed() ,//涨颜色
clYellow() ,//平颜色
ClLime()//跌颜色
),
gffill(), ifThen3(Close(), Open(), flClear(), flSolid(), flSolid())
);
t2 := NDay2('MA5', Ma(Close(), 5)); // 5日均线
t3 := NDay2('MA10', Ma(Close(), 10)); // 10日均线
t4 := NDay2('MA20', Ma(Close(), 20)); // 20日均线
g1 := graph(gtKline(), 'KLine', t1);
g2 := graph(gtline(), 'MA5', t2);
g3 := graph(gtline(), 'MA10', t3);
g4 := graph(gtline(), 'MA20', t4);
return MergeGraph(g1, g2, g3, g4);

返回:

EncodeGraphGroup

用途:作图函数相关函数。 参数arg1arg2按示例顺序传入。 返回:处理后的结果值。

范例

// 取万科A 截止至2014年1月17日的250个交易日的K线数据与10日移动平均数据的图形组合
setsysparam(pn_stock(), 'SZ000002');
setsysparam(pn_date(), inttodate(20140117));
setsysparam(pn_nday(), 250);
t1 := NDay2(gfopen(), Open() ,
gfclose(), close(),
gfhigh(), high(),
gflow(), low(),
gftime(), datetimetostr(sp_time()),
// KLine颜色
gfColor(), IfThen3(Close(), Open(),
ClRed() ,//涨颜色
clYellow() ,//平颜色
Clblue()//跌颜色
),
gffill(), ifThen3(Close(), Open(), flClear(), flSolid(), flSolid())
);
t2 := NDay2('MA10', Ma(Close(), 10));
g1 := graph(gtKline(), 'KLine', t1);
g2 := graph(gtline(), 'MA10', t2);
return EncodeGraphGroup(array(g1, g2), array());

参考Graph GraphGroup DecodeGraphGroup DecodeGraph EncodeGraph

DecodeGraphGroup

用途:作图函数相关函数。 参数arg1arg2arg3按示例顺序传入。 返回:处理后的结果值。

范例

VolData := Nday2(GfVol() , Vol() , gfColor() , ifthen ( Close() > Open() , ClRed() , ClGreen() ) );
MAVOL := Nday2('MA5', MA ( Vol() , 5 ) );
VOLGraph := Graph(gtBar(), 'VOLGraph', VolData);
MAVOLGraph := Graph(gtLine(), 'MA5Graph', MAVOL, gfColor(), clBlue());
DATAARR := GraphGroup(VOLGraph, MAVOLGraph, gfMinValue(), 0);
DecodeGraphGroup(DATAARR, x, y);
return x; // 返回分解后的柱状图

参考Graph GraphGroup EncodeGraphGroup DecodeGraph EncodeGraph

DecodeGraph

用途:作图函数相关函数。 参数arg1arg2arg3arg4arg5按示例顺序传入。 返回:处理后的结果值。

范例

setsysparam(pn_stock(), 'SZ000002');
setsysparam(pn_date(), inttodate(20140117));
setsysparam(pn_nday(), 250);
t1 := NDay2(gfopen(), Open() ,
gfclose(), close(),
gfhigh(), high(),
gflow(), low(),
gftime(), datetimetostr(sp_time()),
// KLine颜色
gfColor(), IfThen3(Close(), Open(),
ClRed() ,//涨颜色
clYellow() ,//平颜色
Clblue()//跌颜色
),
gffill(), ifThen3(Close(), Open(), flClear(), flSolid(), flSolid())
);
g1 := graph(gtKline(), 'KLine', t1);
DecodeGraph(g1, ty, na, da, pr);
return array(ty, na, da, pr);

参考Graph GraphGroup DecodeGraphGroup EncodeGraphGroup EncodeGraph

EncodeGraph

用途:作图函数相关函数。 参数arg1arg2arg3arg4按示例顺序传入。 返回:处理后的结果值。

范例

setsysparam(pn_stock(), 'SZ000002');
setsysparam(pn_date(), inttodate(20140117));
setsysparam(pn_nday(), 250);
t1 := NDay2(gfopen(), Open() ,
gfclose(), close(),
gfhigh(), high(),
gflow(), low(),
gftime(), datetimetostr(sp_time()),
// KLine颜色
gfColor(), IfThen3(Close(), Open(),
ClRed() ,//涨颜色
clYellow() ,//平颜色
Clblue()//跌颜色
),
gffill(), ifThen3(Close(), Open(), flClear(), flSolid(), flSolid())
);
return EncodeGraph(gtkline(), 'KLine', t1, array());

参考Graph GraphGroup DecodeGraphGroup EncodeGraphGroup DecodeGraph

FastLine_Web
  • Graph
  • GraphGroup
  • MergeGraph
  • EncodeGraphGroup
  • DecodeGraphGroup
  • DecodeGraph
  • EncodeGraph
  • FastLine_Web
  • BarLine_Web
  • PieLine_Web
  • GetColorByIndex
BarLine_Web
PieLine_Web
GetColorByIndex

用途:作图函数相关函数。 参数arg1按示例顺序传入。 返回:整数。

范例

return GetColorByIndex(1);
// 返回16711680
图形类型函数
内容
  • gtLine
  • gtKLine
  • gtTower
  • gtAmerican
  • gtBar
  • gtSingleBar
  • gtCircle
gtLine
gtKLine
gtTower
gtAmerican
gtBar
gtSingleBar
gtCircle
图形字段函数

这类函数用于描述数据点的特性或者描述整个图形的属性

内容
  • gfValue
  • gfClose
  • gfOpen
  • gfHigh
  • gfLow
  • gfTowerLow
  • gfTowerHigh
  • gfTowerMid
  • gfVol
  • gfAmount
  • gfTime
  • gfColor
  • gfFill
  • gfFlag
  • gfRateFlag
  • gfZero
  • gfMaxValue
  • gfMinValue
  • gfLTP
  • gfTitleCaption
  • gfLeftTitleCaption
  • gfCoordinate
gfValue
gfClose
gfOpen
gfHigh
gfLow
gfTowerLow
gfTowerHigh
gfTowerMid
gfVol
gfAmount
gfTime
gfColor

参考颜色函数

gfFill

参考图形填充设置函数

gfFlag

参考图形标示函数

gfRateFlag
gfZero

参考TGraphGroup

gfMaxValue

参考TGraphGroup

gfMinValue

参考TGraphGroup

gfLTP

参考TGraphGroup

gfTitleCaption

参考TGraphGroup

gfLeftTitleCaption

参考TGraphGroup

gfCoordinate

参考TGraphGroup

图形标示函数

用于为图形做出一定标示,例如买入点或卖出点,取值为整数。

内容
  • fgNone
  • fgUp
  • fgDown
  • fgLeft
  • fgRight
  • fgLeftUp
  • fgLeftDown
  • fgRightUp
  • fgRightDown
fgNone
fgUp
fgDown
fgLeft
fgRight
fgLeftUp
fgLeftDown
fgRightUp
fgRightDown
图形填充设置函数

用于设定图形是否填充以及如何填充,取值为整数。

参考gfFill

内容
  • flSolid
  • flClear
  • flHorizontal
  • flVertical
  • flFDiagonal
  • flBDiagonal
  • flCross
  • flDiagCross
flSolid

参考gfFill flClear flHorizontal flVertical flFDiagonal flBDiagonal flCross flDiagCross

flClear

参考gfFill flSolid flHorizontal flVertical flFDiagonal flBDiagonal flCross flDiagCross

flHorizontal

参考gfFill flSolid flClear flVertical flFDiagonal flBDiagonal flCross flDiagCross

flVertical

参考gfFill flSolid flClear flHorizontal flFDiagonal flBDiagonal flCross flDiagCross

flFDiagonal

参考gfFill flSolid flClear flHorizontal flVertical flBDiagonal flCross flDiagCross

flBDiagonal

参考gfFill flSolid flClear flHorizontal flVertical flFDiagonal flCross flDiagCross

flCross

参考gfFill flSolid flClear flHorizontal flVertical flFDiagonal flBDiagonal flDiagCross

flDiagCross

参考gfFill flSolid flClear flHorizontal flVertical flFDiagonal flBDiagonal flCross

颜色函数
内容
  • clBlack
  • clMaroon
  • clGreen
  • clOlive
  • clNavy
  • clPurple
  • clTeal
  • clGray
  • clSilver
  • clRed
  • clLime
  • clYellow
  • clBlue
  • clFuchsia
  • clAqua
  • clLtGray
  • clDkGray
  • clWhite
  • clMoneyGreen
  • clSkyBlue
  • clCream
  • clMedGray
clBlack
clMaroon
clGreen
clOlive
clNavy
clPurple
clTeal
clGray
clSilver
clRed
clLime
clYellow
clBlue
clFuchsia
clAqua
clLtGray
clDkGray
clWhite
clMoneyGreen
clSkyBlue
clCream
clMedGray
颜色变换函数
内容
  • GetCValue
  • GetMValue
  • GetYValue
  • GetKValue
  • CMYK
  • RGB
  • Rgbbgr
  • PaletteRGB
  • PaletteIndex
  • GetRValue
  • GetGValue
  • GetBValue
GetCValue
GetMValue
GetYValue
GetKValue
CMYK
RGB
Rgbbgr
PaletteRGB
PaletteIndex
GetRValue
GetGValue
GetBValue