欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件交易策略发布专区 → 线性或者指数趋势预测统计函数在金字塔中的应用

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有12745人关注过本帖树形打印复制链接

主题:线性或者指数趋势预测统计函数在金字塔中的应用

帅哥哟,离线,有人找我吗?
王锋
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
线性或者指数趋势预测统计函数在金字塔中的应用  发帖心情 Post By:2012/12/7 11:01:48 [只看该作者]

金字塔在2.95版升级后,新增4个趋势预测统计函数,分别是

 

LINEST   返回线性趋势的系数

LOGEST 返回指数趋势的系数

TREND   返回沿线性趋势的值

GROWTH 根据指数趋势返回值

 

LINEST

使用最小二乘法对已知数据进行最佳直线拟合,并返回描述此直线的数据。
直线的公式为:
y = mx + b or
y = m1x1 + m2x2 + ... + b(如果有多个区域的 x 值)
式中,因变量 y 是自变量 x 的函数值。M 值是与每个 x 值相对应的系数,b 为常量。注意 y、x 和 m 可以是向量。金字塔函数中已将x做为{1,2,3...}数组默认是处理
语法
LINEST(known_y's,N,const)
Known_y's     是关系表达式 y = mx + b 中已知的 y 值集合。
N       为数组或序列数据统计数量
Const     为一逻辑值,用于指定是否将常量 b 强制设为 0。
  如果 const 为 TRUE 或省略,b 将按正常计算。
  如果 const 为 FALSE,b 将被设为 0,并同时调整 m 值使 y = mx。
例如我们有一组数组A值为{3100,4500,4400,5400,7500,8100}, 执行LINEST(A,6,FALSE);后将返回1461.538;
执行LINEST(HIGH,6,FALSE);则表示计算最近6周期的最高价的线性趋势的系数.

 

公式举例如下:

VARIABLE: A[6]=0;

A[1]:=3100;
A[2]:=4500;
A[3]:=4400;
A[4]:=5400;
A[5]:=7500;
A[6]:=8100;

 

OUT:LINEST(A,6,FALSE);

 

 

LOGEST

在回归分析中,计算最符合数据的指数回归拟合曲线,并返回描述该曲线的数值数据.
此曲线的公式为:
y = b*m^x 或
y = (b*(m1^x1)*(m2^x2)*_)(如果有多个 x 值)
其中因变量 y 是自变量 x 的函数值。m 值是各指数 x 的底,而 b 值是常量值。注意:公式中的 y、x 和 m 均可以是向量.金字塔函数中已将x做为{1,2,3...}数组默认是处理
语法
LOGEST(known_y's,n,const)
Known_y's     满足指数回归拟合曲线 y=b*m^x 的一组已知的 y 值。
n       数组或序列数据的周期数
Const         为一逻辑值,用于指定是否将常数 b 强制设为 1。
  如果 const 为 TRUE 或省略,b 将按正常计算。
  如果 const 为 FALSE,则常量 b 将设为 1,而 m 的值满足公式 y=m^x。
例如我们有一组数组B值为{33100,47300,69000,102000,150000,220000}, 执行LOGEST(B,6,FALSE);后将返回1.463;
执行LOGEST(HIGH,6,FALSE);则表示计算最近6周期的最高价的指数趋势的系数.

 

TREND

返回一条线性回归拟合线的值。即找到适合已知数组 known_y's 的直线(用最小二乘法),并返回指定数组 new_x's 在直线上对应的 y 值。
语法
TREND(known_y's,new_x's,n,const);
Known_y's 是关系表达式 y = mx + b 中已知的 y 值集合。
New_x's   返回计算完毕最近几个趋势预测值数组,该参数必须为VARIABLE定义的数组变量,此时系统将重置该数组大小并填充计算完毕后的数据
n          数组或序列数据周期个数
Const     为一逻辑值,用于指定是否将常量 b 强制设为 0。
  如果 const 为 TRUE 或省略,b 将按正常计算。
  如果 const 为 FALSE,b 将被设为 0(零),m 将被调整以使 y = mx。
该函数返回趋势预测最近一个数值,其他后续预测值将在new_x's给予返回.有关对数据进行直线拟合的详细信息,请参阅 LINEST 函数。
例如我们有一组数组B值为{133890,135000,135790,137300,138130,139100,139900,141120,141890,143230,144000,145290}, 执行TREND(B,D,12,TRUE);后将返回 133953.3333;
执行TREND(HIGH,D,12,TRUE);则表示计算最近12周期的最高价的沿线性趋势的值,并将未来几个周期的预测值存放于数组D中.

举例:

//求收盘价最近12周期的直线预测值

RUNMODE:1;

VARIABLE: D[]=0;//建立一个空数组,函数调用返回后会自动扩充并填充该数组

OUT:GROWTH(CLOSE,D,12,TRUE);

 

//下面代码输出计算完毕后的未来几个周期的预测值

S:=UBOUND(D);

FOR I=1 TO S DO
BEGIN
   MSGOUT(1,NUMTOSTR(D[I],3));
END

 

GROWTH

根据现有的数据预测指数增长值。根据现有的 x 值和 y 值,GROWTH 函数返回一组新的 x 值对应的 y 值。
语法
GROWTH(known_y's,new_x's,n,const)
Known_y's  满足指数回归拟合曲线 y=b*m^x 的一组已知的 y 值。
New_x's   返回计算完毕最近几个趋势预测值数组,该参数必须为VARIABLE定义的数组变量,此时系统将重置该数组大小并填充计算完毕后的数据
n          数组或序列数据周期个数
Const     为一逻辑值,用于指定是否将常数 b 强制设为 1。
  如果 const 为 TRUE 或省略,b 将按正常计算。
  如果 const 为 FALSE,b 将设为 1,m 值将被调整以满足 y = m^x。
例如我们有一组数组B值为{33100,47300,69000,102000,150000,220000}, 执行GROWTH(B,D,6,TRUE);后将返回32618.20377;
执行GROWTH(HIGH,D,6,TRUE);则表示计算最近6周期的最高价的预测指数增长值.并将未来几个周期的预测值存放于数组D中.



金字塔—专业程序化软件提供商

金字塔-技术部

-----------------------------------------------------------------------------------------------------

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
shy508
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:86 积分:427 威望:0 精华:0 注册:2010/5/5 10:39:30
  发帖心情 Post By:2012/12/8 11:37:02 [只看该作者]

图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
bbking
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小飞侠 帖子:1609 积分:4924 威望:0 精华:0 注册:2010/10/28 14:02:46
  发帖心情 Post By:2012/12/10 15:28:53 [只看该作者]

以后最好在版本更新的置顶帖里给出本帖的链接

详细介绍一下新增函数...


 回到顶部
帅哥哟,离线,有人找我吗?
c100010222
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:标准版用户 帖子:61 积分:0 威望:0 精华:0 注册:2015/10/27 16:49:34
  发帖心情 Post By:2015/11/30 12:59:23 [只看该作者]

学习


 回到顶部