您现在的位置:程序化交易>> 期货公式>> (MC)multicharts>> MC知识>>正文内容

求帮忙编写(或修改)tsma函数 [MC]

  • MC用户求助:

    input: pricevalue(numericseries),len(numericsimple);

    variables: 

            var0( 0 ), 

            var1( 0 ), 

            var2( 0 ), 

            var3( 0 ), 

            var4( 1 / 6 ), 

            var5( 0 ),

            LRSlope(0),

            LRIntercept(0) ;

    if len > 1 then 

            begin

            var2 = len * ( len - 1 ) * .5 ;

            var3 = len * ( len - 1 ) * ( 2 * len - 1 ) * var4 ;

            var5 = Square( var2 ) - len * var3 ;

            var0 = 0;

            for Value1 = 0 to len - 1 

                    begin

                    var0 = var0 + Value1 * pricevalue[Value1] ;

                    end ;

            var1 = Summation( pricevalue, len ) ;

            LRSlope = -( len * var0 - var2 * var1) / var5 ;  //前面增加了一个负号

            LRIntercept = ( var1 - LRSlope * var2 ) / len ;

            TSMA_ = LRIntercept+LRSlope ;

            end

    else if len=1 then TSMA_=pricevalue

    else

            TSMA_ = -1 ;

    以上是更改之后的代码,对此有以下几点说明:

    一、更改之后,从文华和MC的图表上看,是完全一样的,但是这两个函数计算的值并不完全一致,有1个点左右的差异。

    二、关于斜率的方向,这点MC和文华是不一样,斜率的方向并不是绝对的。

    三、MC的代码是开放的,也就是您可以准确的看到MC函数的内部逻辑;而文华的函数是封闭的,它有一个函数的类似伪代码的说明,但内部是如何并不知道,而且文华并不能将函数的计算结果输出进行分析,所以我没有办法去文华函数的正确性。

    四、文华和MC的数据也有一定的差异,5分钟数据螺纹1801,以收盘价为例,每一天都有一个值不相等,相差1到3个点;最高价、最低价、开盘价及tick数据并没有测试。

     

  • MC回复讨论一:

    黑线为wh中绘制的

    红线为mc中绘制的

     

     

     

  • MC回复讨论二:

    input: pricevalue(numericseries),len(numericsimple);

    variables: 

            var0( 0 ), 

            var1( 0 ), 

            var2( 0 ), 

            var3( 0 ), 

            var4( 1 / 6 ), 

            var5( 0 ),

            LRSlope(0),

            LRIntercept(0) ;

    if len > 1 then 

            begin

            var2 = len * ( len - 1 ) * .5 ;

            var3 = len * ( len - 1 ) * ( 2 * len - 1 ) * var4 ;

            var5 = Square( var2 ) - len * var3 ;

            var0 = 0;

            for Value1 = 0 to len - 1 

                    begin

                    var0 = var0 + Value1 * pricevalue[Value1] ;

                    end ;

            var1 = Summation( pricevalue, len ) ;

            LRSlope = -( len * var0 - var2 * var1) / var5 ;  //前面增加了一个负号

            LRIntercept = ( var1 - LRSlope * var2 ) / len ;

            TSMA_ = LRIntercept+LRSlope ;

            end

    else if len=1 then TSMA_=pricevalue

    else

            TSMA_ = -1 ;

    以上是更改之后的代码,对此有以下几点说明:

    一、更改之后,从文华和MC的图表上看,是完全一样的,但是这两个函数计算的值并不完全一致,有1个点左右的差异。

    二、关于斜率的方向,这点MC和文华是不一样,斜率的方向并不是绝对的。

    三、MC的代码是开放的,也就是您可以准确的看到MC函数的内部逻辑;而文华的函数是封闭的,它有一个函数的类似伪代码的说明,但内部是如何并不知道,而且文华并不能将函数的计算结果输出进行分析,所以我没有办法去文华函数的正确性。

    四、文华和MC的数据也有一定的差异,5分钟数据螺纹1801,以收盘价为例,每一天都有一个值不相等,相差1到3个点;最高价、最低价、开盘价及tick数据并没有测试。

 

有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友

可联系技术人员 QQ: 511411198  点击这里给我发消息进行 有偿 编写!不贵!点击查看价格!


【字体: 】【打印文章】【查看评论

相关文章

    没有相关内容