设为首页收藏本站

 找回密码
 注册
查看: 1786|回复: 2

请教一个跨周期函数(小周期是1小时,大周期是日线) [复制链接]

Rank: 1

精华
0
UID
195796
积分
34
帖子
15
主题
3
阅读权限
10
注册时间
2014-10-23
最后登录
2023-6-1
发表于 2018-3-1 13:14:07 |显示全部楼层
本帖最后由 guairen 于 2018-3-1 14:35 编辑

请教一个跨周期函数(小周期是1小时,大周期是日线)
  1. mtBarCnt = MtBar(TimeFrame,BarsBack,refCurBar,refOpen,refHigh,refLow,refClose,refVol,refOpenInt);//使用论坛推荐的跨周期函数
  2. mtClose = refClose;
  3. 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根小时线,所以前一日的收盘价都是相同的,但是
  1. mtBarCnt = MtBar(TimeFrame,BarsBack,refCurBar,refOpen,refHigh,refLow,refClose,refVol,refOpenInt);//使用论坛推荐的跨周期函数
  2. mtClose = refClose;
  3. SumLongLen = MtSummation(mtClose,mtBarCnt,LongLength);//使用论坛推荐的跨周期求和函数
  4. 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,。。。),请问是什么原理?还是因为用户函数的机制是这样?

Rank: 1

精华
0
UID
192993
积分
16
帖子
10
主题
6
阅读权限
10
注册时间
2014-8-27
最后登录
2023-1-3
发表于 2018-3-1 15:12:39 |显示全部楼层
这个有点复杂

使用道具 举报

Rank: 1

精华
0
UID
195796
积分
34
帖子
15
主题
3
阅读权限
10
注册时间
2014-10-23
最后登录
2023-6-1
发表于 2018-3-2 07:03:24 |显示全部楼层
@小米
换一个问法,用户函数是如何传递参数的(当这个参数为序列变量时)

使用道具 举报

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

bottom

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

GMT+8, 2024-3-29 05:57

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部