设为首页收藏本站

 找回密码
 注册
查看: 7205|回复: 24
打印 上一主题 下一主题

请教nopain,帮帮忙好吗? [复制链接]

Rank: 3Rank: 3

精华
0
UID
4284
积分
174
帖子
36
主题
2
阅读权限
40
注册时间
2009-5-2
最后登录
2013-3-16
跳转到指定楼层
1#
发表于 2009-6-21 22:07:09 |只看该作者 |倒序浏览
V:=SUM(IF(CLOSE>REF(CLOSE,1),VOL,IF(CLOSE<REF(CLOSE,1),-VOL,0)),0);
VH:=REF(HHV(V,30),1);
VL:=REF(LLV(V,30),1);
CROSS(V,VH),BPK;
CROSS(VL,V),SPK;

很简单的文华代码,自己做TB是老做不好,不晓得怎么搞,直接发上来求助了。
谢谢先!

[ 本帖最后由 深蓝魔力 于 2009-7-11 09:38 编辑 ]

Rank: 3Rank: 3

精华
0
UID
4284
积分
174
帖子
36
主题
2
阅读权限
40
注册时间
2009-5-2
最后登录
2013-3-16
2#
发表于 2009-6-21 23:14:18 |只看该作者
Params
        Numeric obv(0);
        Numeric Length(30);
Vars
        NumericSeries OBVValue;
                NumericSeries lowestobvvalue(1);
Begin
    If(CurrentBar == 0)
        {
                OBVValue = 0;
        }Else
        {
                If(Close>Close[1])
                {
                        OBVValue = OBVValue[1]+Vol;
                }Else If(Close<Close[1])
                {
                        OBVValue = OBVValue[1]-Vol;
                }Else
                {
                        OBVValue = OBVValue[1];
                }
        }
                         If(OBVValue < LowestOBVValue[1])  //      
        {
                Sell;                                // Sell不用参数时会自动平掉所有仓位,详细的Sell函数调用请参见帮助文件
        }
End   
前面是移植的OBV的公式。后面偶想在OBV创30周期新低开空都没法实现。
怎么改呢?

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
4284
积分
174
帖子
36
主题
2
阅读权限
40
注册时间
2009-5-2
最后登录
2013-3-16
3#
发表于 2009-6-22 13:29:08 |只看该作者
Params        // 宣告参数定义
        Numeric Length(12);        
                Numeric Lots(1);               
       
Begin      
        If(CrossOver(close,highd(length)))
                {
                Buy(1,Close);      
        }
        If(CrossUnder(close,LowD(length)))
        {
                Sell;                             
        }
End

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
4284
积分
174
帖子
36
主题
2
阅读权限
40
注册时间
2009-5-2
最后登录
2013-3-16
4#
发表于 2009-6-22 16:45:48 |只看该作者
难得看到自己编的TB发出了买卖的开仓指令。

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
4284
积分
174
帖子
36
主题
2
阅读权限
40
注册时间
2009-5-2
最后登录
2013-3-16
5#
发表于 2009-7-5 07:36:12 |只看该作者
到今天才鼓捣出个完整的交易指令,效果有待考证。
感谢论坛上公布了原码的朋友。偶的系统就是在大家的基础上学习的。

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
4284
积分
174
帖子
36
主题
2
阅读权限
40
注册时间
2009-5-2
最后登录
2013-3-16
6#
发表于 2009-7-6 22:11:22 |只看该作者
obv[x]是错误的,不能回朔
晕。

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
4284
积分
174
帖子
36
主题
2
阅读权限
40
注册时间
2009-5-2
最后登录
2013-3-16
7#
发表于 2009-7-7 17:33:00 |只看该作者
用户函数中有Obv,怎么用?在用户手册中也查不到。

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
1384
积分
1102
帖子
212
主题
40
阅读权限
60
注册时间
2008-3-28
最后登录
2019-4-26
8#
发表于 2009-7-8 05:42:23 |只看该作者
Vars
NumericSeries OBVValue;
。。。。
If(CurrentBar == 0)
        {
                OBVValue = 0;
        }Else
        {
                If(Close>Close[1])
                {
                        OBVValue = OBVValue[1]+Vol;
                }Else If(Close<Close[1])
                {
                        OBVValue = OBVValue[1]-Vol;
                }Else
                {
                        OBVValue = OBVValue[1];
                }
        }
。。。。
然后就可以用OBVValue[X]来回溯了

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
4284
积分
174
帖子
36
主题
2
阅读权限
40
注册时间
2009-5-2
最后登录
2013-3-16
9#
发表于 2009-7-9 12:29:59 |只看该作者
谢谢楼上的兄弟,偶赶紧整理一下。

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
4284
积分
174
帖子
36
主题
2
阅读权限
40
注册时间
2009-5-2
最后登录
2013-3-16
10#
发表于 2009-7-9 21:00:26 |只看该作者
用户函数的回溯和系统函数原理基本一致,但考虑到系统的执行速度和效率等因素,目前,TradeBlazer公式不支持对用户函数的回溯,如果您想要获取用户函数的回溯值,建议您将函数返回值赋值给一个序列变量,通过对序列变量的回溯来达到相同的目的。

使用道具 举报

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

bottom

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

GMT+8, 2024-5-23 18:20

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部