12 KiB
Builtin - 图形 / 图形对象
graphGroup(graph1, graph_n, prop_m, value_m)
用于生成图形组合,可以指定任意多个单个图形作为参数生成一个图形组合,在其后面还可以指定图形组合的共有属性。
| 参数 | 类型 | 说明 |
|---|---|---|
graph1 |
tgraph | TGraph 图形1 |
graph_n |
tgraph | TGraph 图形N |
prop_m |
string | string 可选参数,TGraphGroup属性名称 |
value_m |
any 可选参数,TGraphGroup属性值 |
返回:tgraphgroup
示例
vol_data := nDay2(gfVol() , vol() , gfColor() , ifThen ( close()> open() , clRed() , clGreen() ) );
mavol := nDay2('MA5', ma ( vol() , 5 ) );
vol_graph := graph(gtBar(), 'VOLGraph', vol_data);
mavol_graph := graph(gtLine(), 'MA5Graph', mavol, gfColor(), clBlue());
return graphGroup(vol_graph, mavol_graph, gfMinValue(), 0);
// 输出:
// Execute script error at Line:3
// function:__main__:line 3:instruction:usercall: 执行函数 graph 出错。
// function:__main__:line 3:instruction:usercall: function execute error
// 输出:说明:GraphGroup包含了两个TGraph图形,一个是VOLGraph成交量图形,另一个是MAVOLGraph成交量的5日均线的折线图形。这两个图形具有的共有属性是gfMinValue(),就是最小值为0。gfColor在VolData中作为了数据字段,用来指示每一个数据点的颜色。因此柱子会根据开盘和收盘的差异来决定色彩的显示。而在MAVOLGraph又作为了图形的属性,因此MAVOLGraph在显示的时候会呈现出蓝色。gfMinValue在返回的图形组合里作为了图形组合的属性,因此决定了图形会用0来作为最小的值来显示,而不会用区间内的最小成交量作为最小值显示。
// 另外,我们可以注意到,作为gtLine类型的MAVOLGraph并不含有特殊的值来指定折线的点的位置,在没有特定的数据字段的时候,系统会使用第一个存在的数据字段当成默认的gfValue来显示。
gfMinValue():设定最小值。一般的,图形会用查找视图内最小最小值用于显示,同时,为了特殊显示,也可以指定其显示的最大最小值,通常成交量的图是用0作为最小值的。
encodeGraph(_type, name, data, prop)
返回根据指定的类型、名称、数据以及属性数组生成的图形。
| 参数 | 类型 | 说明 |
|---|---|---|
_type |
integer | |
name |
string | |
data |
array | |
prop |
array |
返回:tgraph
示例
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());
// 输出:
// Execute script error at Line:17
// function:__main__:line 17:instruction:array: 执行函数 encodeGraph 出错。
// function:__main__:line 17:instruction:array: function execute error
gfColor()
颜色(数据字段或TGraph的属性),可以修饰单个数据点或者整个图形的颜色。
返回:string
gfFill()
填充状况(数据字段),用于设定柱线、K线、圆圈图等填充情况。
返回:string
gfFlag()
标示(数据字段),标示内容见图形标示函数
返回:string
gfZero()
零轴(TGraphgroup的属性字段),TGraphGroup的属性,用于标示中间值,特别用于MACD类的图形
返回:string
gfMaxValue()
设定显示的最大值(TGraphGroup的属性字段),TGraphGroup的属性。一般的,图形会用查找视图内最小最小值用于显示,同时,为了特殊显示,也可以指定其显示的最大最小值,例如成交量的图是用0作为最小值的。
返回:string
gfMinValue()
设定显示的最小值(TGraphGroup的属性字段),TGraphGroup的属性。一般的,图形会用查找视图内最小最小值用于显示,同时,为了特殊显示,也可以指定其显示的最大最小值,例如成交量的图是用0作为最小值的。
返回:string
gfLtp()
流通盘(TGraphGroup的属性字段),TGraphGroup的属性,用于换手率的计算,暂时未使用,将来扩展用。
返回:string
gfTitleCaption()
图形的标题文字,TGraphGroup的属性。
返回:string
gfLeftTitleCaption()
图形辅助标题文字。
返回:string
gfCoordinate()
图形的坐标系模式。设置为0为普通坐标,1为对数坐标,2为百分比坐标。
返回:string
gfValue()
值(数据字段),可指定折线,柱线,细柱线,圆圈图的值
返回:string
gfClose()
收盘(数据字段),一般用于K线,美国线,宝塔线
返回:string
gfOpen()
开盘(数据字段),用于K线,宝塔线,美国线
返回:string
gfHigh()
最高(数据字段),用于K线,宝塔线,美国线
返回:string
gfLow()
最低(数据字段),用于K线,宝塔线,美国线
返回:string
gfTowerLow()
宝塔线中的低值(数据字段),宝塔线也可以不需要使用此三个字段,该三个字段的内容可以被自动根据gfClose,gfOpen,gfHigh,gfLow计算出来
返回:string
gfTowerHigh()
宝塔线中的高值(数据字段),宝塔线也可以不需要使用此三个字段,该三个字段的内容可以被自动根据gfClose,gfOpen,gfHigh,gfLow计算出来
返回:string
gfTowerMid()
宝塔线中的中值(数据字段),宝塔线也可以不需要使用此三个字段,该三个字段的内容可以被自动根据gfClose,gfOpen,gfHigh,gfLow计算出来
返回:string
gfVol()
成交量(数据字段),也可用于指定柱线,细柱线的值
返回:string
gfAmount()
成交金额(数据字段),也可用于指定柱线,细柱线的值
返回:string
gfTime()
时间坐标(数据字段),用于X坐标轴的显示
返回:string
gfRateFlag()
除权标示(数据字段),指示是否为除权日
返回:string
flSolid()
实心填充。
返回:integer
flClear()
空心体。
返回:integer
flHorizontal()
横线填充
返回:integer
flVertical()
竖线填充
返回:integer
flFDiagonal()
正斜线填充
返回:integer
flBDiagonal()
反斜线填充
返回:integer
flCross()
交叉线填充
返回:integer
flDiagCross()
交叉斜线填充
返回:integer
gtLine()
折线类型
返回:integer
gtKLine()
K线类型
返回:integer
gtTower()
宝塔线类型
返回:integer
gtAmerican()
美国线类型
返回:integer
gtBar()
柱线类型
返回:integer
gtSingleBar()
细柱线类型
返回:integer
gtCircle()
圆圈图类型
返回:integer
fgNone()
无标识
返回:integer
fgUp()
上
返回:integer
fgDown()
下
返回:integer
fgLeft()
左
返回:integer
fgRight()
右
返回:integer
fgLeftUp()
左上
返回:integer
fgLeftDown()
左下
返回:integer
fgRightUp()
右上
返回:integer
fgRightDown()
右下
返回:integer
graph(_type, graph_name, data, prop1, prop1_value, prop2, prop2_value, ..., prop_n, prop_n_value)
用于生成单个图形。单个图形的含义是一条折线、K线或成交量柱壮图。函数的具体的功能是:用指定的数据Data生成一个类型为Type的图形,并且用后面指定的属性参数PropN和PropNValue为图形指定修饰属性。注意,如果横坐标要显示出数据,需要把横坐标设置列名为'time'
| 参数 | 类型 | 说明 |
|---|---|---|
_type |
integer | |
graph_name |
string | |
data |
tablearray | |
prop1 |
string | |
prop1_value |
any | |
prop2 |
string | |
prop2_value |
any | |
... |
||
prop_n |
string | |
prop_n_value |
any |
返回:tgraph
示例
范例一:
// 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);
// 输出:
// Execute script error at Line:19
// function:__main__:line 19:instruction:usercall: 执行函数 graph 出错。
// function:__main__:line 19:instruction:usercall: function execute error
范例二:
// 折线图
setSysParam(pn_stock(), 'SZ000002');
setSysParam(pn_date(), intToDate(20140117));
setSysParam(pn_nday(), 250);
g_data1 := nDay2(gfClose(), close());
g_data2 := nDay2('MA5', ma(close(), 5));
g_data3 := 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);
// 输出:
// Execute script error at Line:8
// function:__main__:line 8:instruction:usercall: 执行函数 graph 出错。
// function:__main__:line 8:instruction:usercall: function execute error
gfBias_Eval(l1)
乘离率绘图教学函数。返回指定股票在截止日N(默认180)个序列的L1乘离率图形,与系统参数(股票,周期,时间,复权相关)
| 参数 | 类型 | 说明 |
|---|---|---|
l1 |
any | 整数 |
返回:any
mergeGraph(g1, g2, g3, gn)
将运行结果为图像的多个参数图像叠加,返回叠加后的图形组合。
| 参数 | 类型 | 说明 |
|---|---|---|
g1 |
graph | 图形1,一般是由graph函数返回的图形 |
g2 |
graph | 图形2,一般是由graph函数返回的图形 |
g3 |
graph | 图形3,一般是由graph函数返回的图形 |
gn |
graph | 图形n,一般是由graph函数返回的图形 |
返回:graph
示例
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);
// 返回:
getColorByIndex(index)
依据Index值,获得颜色数组内的指定颜色整数代号。
| 参数 | 类型 | 说明 |
|---|---|---|
index |
integer | 整数,颜色索引号 |
返回:integer
示例
return getColorByIndex(1);
// 返回:16711680