设为首页收藏本站

 找回密码
 注册
查看: 4699|回复: 9
打印 上一主题 下一主题

请释疑!关于线性回归函数的算法问题。 [复制链接]

初级大户

自由之身

Rank: 5Rank: 5

精华
0
UID
755
积分
1337
帖子
263
主题
71
阅读权限
60
注册时间
2007-11-14
最后登录
2019-12-1
跳转到指定楼层
1#
发表于 2011-2-19 20:10:42 |只看该作者 |倒序浏览
感觉跟统计学中的公式算法有些不同,我没有完全搞明白,麻烦nopain或版主,管理员给我简单的三个字“有问题”或者是“没问题”。拜托!我经常要使用这个函数。

初级大户

自由之身

Rank: 5Rank: 5

精华
0
UID
755
积分
1337
帖子
263
主题
71
阅读权限
60
注册时间
2007-11-14
最后登录
2019-12-1
2#
发表于 2011-2-19 21:04:39 |只看该作者
这是全部代码:
Params
        NumericSeries Price(1);
        Numeric Length(10);
        Numeric TgtBar(0);
        NumericRef LRSlope;
        NumericRef LRAngle;
        NumericRef LRIntercept;
        NumericRef LRValue;
Vars
        Numeric SumXY(0);
        Numeric SumY;
        Numeric SumX;
        Numeric SumXSqr;
        Numeric Divisor;
        Numeric i;
Begin
        if (Length > 1)
        {
                SumX = Length * ( Length - 1 ) * 1/2;
                SumXSqr = Length * ( Length - 1 ) * ( 2 * Length - 1 ) * 1/6 ;       
                Divisor = Sqr( SumX ) - Length * SumXSqr ;                       
                SumY = Summation( Price, Length ) ;
                for i = 0 to Length - 1
                {
                        SumXY = SumXY + i * Price[i] ;
                }
               
                LRSlope = ( Length * SumXY - SumX * SumY) / Divisor ;
                LRAngle = Atan ( LRSlope ) ;
                LRIntercept = ( SumY - LRSlope * SumX ) / Length ;
                LRValue = LRIntercept + (Length - 1 - TgtBar)*LRSlope;
                Return True;
        }Else
        {
                Return False;
        }
End


这一句:        SumX = Length * ( Length - 1 ) * 1/2;
是否应该这样写:SumX = ( Length + 1 )* Length *1/2;

使用道具 举报

初级大户

自由之身

Rank: 5Rank: 5

精华
0
UID
755
积分
1337
帖子
263
主题
71
阅读权限
60
注册时间
2007-11-14
最后登录
2019-12-1
3#
发表于 2011-2-19 21:10:07 |只看该作者
例如:x=1,2,3,4,5.
   sumx=1+2+3+4+5=15;
简化算法:
   sumx=(5+1)*(5/2)=6*2.5=15.

使用道具 举报

初级大户

自由之身

Rank: 5Rank: 5

精华
0
UID
755
积分
1337
帖子
263
主题
71
阅读权限
60
注册时间
2007-11-14
最后登录
2019-12-1
4#
发表于 2011-2-19 21:12:32 |只看该作者
请好心人给予我信心!

使用道具 举报

Rank: 4

精华
0
UID
7215
积分
476
帖子
81
主题
41
阅读权限
50
注册时间
2010-3-10
最后登录
2012-12-2
5#
发表于 2011-2-24 22:20:29 |只看该作者
大哥。。。这个不是线性回归吧。。。是时间序列预测。。。

使用道具 举报

初级大户

自由之身

Rank: 5Rank: 5

精华
0
UID
755
积分
1337
帖子
263
主题
71
阅读权限
60
注册时间
2007-11-14
最后登录
2019-12-1
6#
发表于 2011-3-7 10:57:17 |只看该作者
什么时间预测,时间就是线性回归,相关分析里的自变量X。价格是因变量。这个公式是tb自带的回归分析函数。

使用道具 举报

初级大户

自由之身

Rank: 5Rank: 5

精华
0
UID
755
积分
1337
帖子
263
主题
71
阅读权限
60
注册时间
2007-11-14
最后登录
2019-12-1
7#
发表于 2011-3-15 19:34:57 |只看该作者

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
5525
积分
1473
帖子
429
主题
93
阅读权限
60
注册时间
2009-9-22
最后登录
2022-5-23
8#
发表于 2011-3-15 20:54:34 |只看该作者
这个是标准的线性回归算法,最主要的是两个参数:
NumericSeries Price(1); //用于回归计算的数组,例如用Close
Numeric Length(10);     //指定数组的长度,例如5表明用5个数据来进行回归计算

Numeric TgtBar(0); //这个参数只是为了计算LRValue的值,就是用此回归算法预测目标Bar的价格值。0就是下一个Bar的值
NumericRef LRSlope; //就是线性回归线的斜率
NumericRef LRAngle; //直线的角度
NumericRef LRIntercept; // 增长的百分比
上善若水,无欲则刚

使用道具 举报

Rank: 7Rank: 7Rank: 7

精华
0
UID
101507
积分
3699
帖子
194
主题
25
阅读权限
80
注册时间
2012-3-1
最后登录
2016-6-4
9#
发表于 2012-4-10 11:33:19 |只看该作者
····················

使用道具 举报

Rank: 1

精华
0
UID
195983
积分
21
帖子
14
主题
4
阅读权限
10
注册时间
2014-10-27
最后登录
2015-8-7
10#
发表于 2015-5-30 11:27:37 |只看该作者
线性回归中tgtbar如果是0是否意味着有未来函数,我怎么感觉大于0还是有未来函数?

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

bottom

静态版|手机版|联系我们|交易开拓者 ( 粤ICP备07044698   

GMT+8, 2024-5-19 01:47

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部