Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共2 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:计算一条MA不能实现的移动平均线,代码中遇到的问题

1楼
国王归来 发表于:2011/7/4 10:25:33

用VBS计算了一条均线,其计算法则用MA(C,N)函数无法实现。以5日均线为例,每天5日均线值=(上日该5日均线值*4+当日收盘价)/5;我的VBS代码是

Function CU_MA3(Formula,A)
    '系统会在逐周期模式解释公式时的每个周期都会调用此函数一遍,因此设计时应该注重程序的执行效率,不要重复的执行一些没必要的代码
    '得到K线数据对象
 Set History = Formula.ParentGrid.GetHistoryData()
 '若当前周期尚未到计算周期,不参与计算
 DataCount = 0
 FOR I=0 TO A-1
 DataCount = DataCount + history.close(I)
 NEXT
 DIM JUNJIA
 JUNJIA=DataCount/A
    for i = A to 100
     '计算均价
     JUNJIA=(JUNJIA*(A-1)+ history.close(i))/A
    next
 CU_MA3 = JUNJIA

End Function

公式内容是

A:CU_MA3(N);

在K线中可以计算出一条直线,只有一个值不是曲线。

 

另外我的公式只计算了100个周期的收盘价,怎么写才可以计算到最后一个k线周期?

 

求教,谢谢。

 

2楼
admin 发表于:2011/7/4 16:54:49

大致看了一下,你的自定义函数是在逐周期模式下工作的,你是不是在序列模式下调用了

共2 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.02539 s, 2 queries.