- 精华
- 0
- 在线时间
- 299 小时
- UID
- 195796
- 积分
- 34
- 帖子
- 15
- 阅读权限
- 10
- 注册时间
- 2014-10-23
- 最后登录
- 2023-6-1
- 精华
- 0
- UID
- 195796
- 积分
- 34
- 帖子
- 15
- 主题
- 3
- 阅读权限
- 10
- 注册时间
- 2014-10-23
- 最后登录
- 2023-6-1
|
本帖最后由 guairen 于 2018-3-1 14:35 编辑
请教一个跨周期函数(小周期是1小时,大周期是日线)- mtBarCnt = MtBar(TimeFrame,BarsBack,refCurBar,refOpen,refHigh,refLow,refClose,refVol,refOpenInt);//使用论坛推荐的跨周期函数
- mtClose = refClose;
- FileAppend("D:\\1.txt", Text(mtClose));
复制代码 以上代码输出结果是:
3676.630000
3676.630000
3676.630000
3676.630000
3676.630000
3469.070000
3469.070000
3469.070000
3469.070000
3469.070000
。。。
这个结果是正常的,一天内有5根小时线,所以前一日的收盘价都是相同的,但是- mtBarCnt = MtBar(TimeFrame,BarsBack,refCurBar,refOpen,refHigh,refLow,refClose,refVol,refOpenInt);//使用论坛推荐的跨周期函数
- mtClose = refClose;
- SumLongLen = MtSummation(mtClose,mtBarCnt,LongLength);//使用论坛推荐的跨周期求和函数
- FileAppend("D:\\1.txt", Text(mtClose)+" "+Text(SumLongLen));
复制代码 当LongLength取2时,以上代码输出结果是:
3676.630000 7353.260000
3676.630000 7353.260000
3676.630000 7353.260000
3676.630000 7353.260000
3676.630000 7353.260000
3469.070000 7145.700000
3469.070000 7145.700000
3469.070000 7145.700000
3469.070000 7145.700000
3469.070000 7145.700000
3479.090000 6948.160000
3479.090000 6948.160000
3479.090000 6948.160000
3479.090000 6948.160000
3479.090000 6948.160000
。。。
问题是:其中的“MtSummation(mtClose,mtBarCnt,LongLength);”是否传递了相同的mtClose数据(如:3676.630000,3676.630000,3676.630000,3676.630000,3676.630000,3469.070000,3469.070000,3469.070000,3469.070000,3469.070000,。。。)进去求和呢?
TB的计算结果是:相同的数据只传递了一次(如:3676.630000,3469.070000,。。。),请问是什么原理?还是因为用户函数的机制是这样? |
|