设为首页收藏本站

 找回密码
 注册
楼主: 追涨杀跌
打印 上一主题 下一主题

跨周期数据转换函数以及跨周期技术指标调用的实现 [复制链接]

Rank: 3Rank: 3

精华
0
UID
117185
积分
220
帖子
68
主题
10
阅读权限
40
注册时间
2013-3-21
最后登录
2015-6-2
182#
发表于 2013-4-3 21:29:52 |只看该作者
FIERY 发表于 2012-11-6 10:38
追涨杀跌老师,我试着做的MtAMA,在调用时发现日线的AMA和其它周期里显示的AMA值不同,您帮我看一下哪里出 ...

你没搞清楚如何调用大周期的数据。这是你想要的MtAMA。
  1. //------------------------------------------------------------------------
  2. // 简称: MtAdaptiveMovAvg
  3. // 名称: 求大周期的卡夫曼自适应移动平均
  4. // 类别: 用户函数  
  5. // 类型: 内建函数
  6. // 输出: 数值型
  7. //------------------------------------------------------------------------

  8. Params
  9.         Numeric TimeFrame(1440);        // 目标时间周期参数,参数说明参见MtBar
  10.         Numeric BarsBack(1);         // 目标时间周期BAR偏移参数,说明见MtBar函数
  11.         Numeric EffRatioLength(10);
  12.         Numeric FastAvgLength(2);
  13.         Numeric SlowAvgLength(30);
  14.         NumericRef oAMAValue;       
  15. Vars
  16.     NumericSeries mtBarCnt;
  17.         NumericSeries mtClose;
  18.         NumericSeries mtCurBar;
  19.         Numeric refCurBar;
  20.         Numeric refOpen;
  21.         Numeric refHigh;
  22.         Numeric refLow;
  23.         Numeric refClose;
  24.         Numeric refVol;
  25.         Numeric refOpenInt;                 
  26.         Numeric NetChg(0);
  27.         Numeric TotChg(0);
  28.         Numeric EffRatio(0);
  29.         Numeric ScaledSFSqr(0);
  30.         Numeric SFDiff;
  31.         Numeric j;
  32.         Numeric i;
  33.         NumericSeries AMAValue;
  34.        
  35. Begin

  36.     mtBarCnt = MtBar(TimeFrame,BarsBack,refCurBar,refOpen,refHigh,refLow,refClose,refVol,refOpenInt);
  37.         mtCurBar = refCurBar;
  38.         mtClose = refClose;
  39.        
  40.         j = MtRef(mtBarCnt,EffRatioLength);
  41.         i = MtRef(mtBarCnt,1);
  42.         NetChg = Abs( mtClose - mtClose[j] );
  43.         TotChg = MtSummation(Abs( mtClose -mtClose[i] ),mtBarCnt,EffRatioLength);
  44.                
  45.         if (MtCurBar == 0 || AMAValue[mtBarCnt] == InvalidNumeric)
  46.         {
  47.                 AMAValue = mtClose;
  48.         }Else
  49.         {
  50.                 EffRatio = IIF(TotChg > 0, NetChg / TotChg, 0);
  51.                 SFDiff = 2 / ( FastAvgLength + 1 ) - 2 / ( SlowAvgLength + 1 );               
  52.                 ScaledSFSqr = Sqr( 2 / ( SlowAvgLength + 1 ) + EffRatio * SFDiff );               
  53.                 AMAValue = AMAValue[1] + ScaledSFSqr * ( mtClose - AMAValue[1] );
  54.         }
  55.         oAMAValue = AMAValue;
  56.         Return mtBarCnt;
  57. End

  58. //------------------------------------------------------------------------
  59. // 编译版本        GS2010.12.08
  60. // 版权所有        TradeBlazer Software 2003-2010
  61. // 更改声明        TradeBlazer Software保留对TradeBlazer平
  62. //                        台每一版本的TradeBlazer公式修改和重写的权利
  63. //------------------------------------------------------------------------
复制代码

使用道具 举报

Rank: 1

精华
0
UID
116362
积分
11
帖子
1
主题
0
阅读权限
10
注册时间
2013-3-7
最后登录
2013-3-27
181#
发表于 2013-3-26 15:19:13 |只看该作者

使用道具 举报

Rank: 1

精华
0
UID
116571
积分
20
帖子
4
主题
0
阅读权限
10
注册时间
2013-3-8
最后登录
2017-10-22
180#
发表于 2013-3-14 10:44:44 |只看该作者
追涨杀跌 发表于 2011-6-8 17:51
现在可以举个例子来说明,怎么用上面的几个函数来做交易策略了。假如我们的策略如下:
1、我们以日线的均线 ...

慢慢学习中 谢谢

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
6249
积分
227
帖子
81
主题
30
阅读权限
40
注册时间
2009-12-23
最后登录
2021-1-15
179#
发表于 2013-3-13 15:19:46 |只看该作者
追涨杀跌 老师好久没有来这里了,呼唤~~

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
87709
积分
222
帖子
112
主题
27
阅读权限
40
注册时间
2011-12-20
最后登录
2015-7-23
178#
发表于 2013-3-12 12:30:40 |只看该作者
追涨杀跌 发表于 2011-6-8 17:51
现在可以举个例子来说明,怎么用上面的几个函数来做交易策略了。假如我们的策略如下:
1、我们以日线的均线 ...

太好了,不过我想问一下,这个直接用的话,是可以应用于任何小周期对大周期的调用么?还是只能是1分钟调用其他周期?我建好用户函数后,直接引用用户函数,能实现3分钟调用5分钟数据么?因为3分钟K线和5分钟的k线不能很好对应,这样调用准确么?

使用道具 举报

Rank: 2

精华
0
UID
113294
积分
100
帖子
63
主题
12
阅读权限
30
注册时间
2012-11-3
最后登录
2023-9-11
177#
发表于 2013-3-11 09:12:14 |只看该作者

使用道具 举报

Rank: 1

精华
0
UID
114410
积分
29
帖子
7
主题
2
阅读权限
10
注册时间
2012-12-26
最后登录
2013-4-16
176#
发表于 2013-3-7 16:41:13 |只看该作者
老师,你好,我根据你写的小周期数据换成大周期数据测试了下,编译不通过啊。
  Return barCnt;

显示 Return 语句的返回类型与公式定义的返回类型值类型不符。
请教下,是什么问题啊。
函数的返回值类型为数值型,在模板选择时,选“数值型”

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
5940
积分
1179
帖子
285
主题
28
阅读权限
60
注册时间
2009-11-21
最后登录
2015-1-19
175#
发表于 2013-2-27 15:29:50 |只看该作者
好帖。 顶

使用道具 举报

Rank: 2

精华
0
UID
1085
积分
116
帖子
25
主题
2
阅读权限
30
注册时间
2008-1-17
最后登录
2020-7-1
174#
发表于 2013-1-30 23:02:37 |只看该作者
留个脚印

使用道具 举报

Rank: 2

精华
0
UID
111878
积分
96
帖子
46
主题
12
阅读权限
30
注册时间
2012-8-4
最后登录
2013-3-22
173#
发表于 2013-1-18 16:07:34 |只看该作者
贴图附上

使用道具 举报

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

bottom

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

GMT+8, 2024-5-18 07:43

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部