设为首页收藏本站

 找回密码
 注册
楼主: zihonggu
打印 上一主题 下一主题

我从零开始学习TradeBlazer的过程 [复制链接]

Rank: 9Rank: 9Rank: 9

精华
0
UID
1003
积分
19790
帖子
490
主题
38
阅读权限
150
注册时间
2007-12-30
最后登录
2020-2-26
31#
发表于 2009-5-21 15:48:36 |只看该作者
  
下定决心,不怕牺牲,排除万难,去争取胜利。

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
371
积分
854
帖子
66
主题
11
阅读权限
60
注册时间
2007-9-18
最后登录
2019-3-31
32#
发表于 2009-5-21 21:18:07 |只看该作者
依样画葫芦写指标(我才入门不好意思)
Params   


Vars      
    NumericSeries QS;
    NumericSeries PJ;
Begin
        QS=SMA(((CLOSE-MIN(LOW,28))/(MAX(HIGH,28)-MIN(LOW,28))*100),3,1);//MIN求最小值
               
                PlotNumeric("QS",QS);
        PlotNumeric("PJ",AverageFC(QS,5));
        PlotNumeric("80",80,IIF(QS>=0,BLUE,GREEN));
        PlotNumeric("20",20,IIF(QS>=0,BLUE,GREEN));
        PlotNumeric("90",90,IIF(QS>=0,BLUE,GREEN));
        PlotNumeric("10",10,IIF(QS>=0,BLUE,GREEN));
End

请高手帮我看看 为什么两条指标线 QS 和 PJ  不能正常显示? 先谢过了
呵呵 在灰太狼朋友的帮助下搞出来了。 问题在这儿呢:
我估计应该是这个
QS=SMA(((CLOSE-MIN(LOW,low[28]))/(MAX(HIGH,high[28])-MIN(LOW,low[28]))*100),3,1);//MIN求最小值

[ 本帖最后由 zihonggu 于 2009-5-21 22:17 编辑 ]
附件: 你需要登录才可以下载或查看附件。没有帐号?注册
下定决心,不怕牺牲,排除万难,去争取胜利。

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
371
积分
854
帖子
66
主题
11
阅读权限
60
注册时间
2007-9-18
最后登录
2019-3-31
33#
发表于 2009-5-21 23:25:01 |只看该作者

原来还要正确地书写函数的大小写

Params    ///(发音: [ 'p?r?s ]帕软姆s) 意为:保存公式参数信息
     Numeric Length(30);  //声明参数(numeric length (发音[nju:'merik l e?θ 尼马瑞k懒胡])  
                                   // 常量在编译时便确定它的值,length 是一个常量,lengthr 的值30一旦确定后在数据运行过程中就不在变动了。


Vars        /*  发音[va:]  定义变量,变量表示存储位置*/
    NumericSeries QS;//QS  是变量
    NumericSeries PJ;//PJ  是变量
Begin
         QS=SMA(((Close-MIN(Low,Low[30]))/(MAX(High,High[30])-MIN(Low,Low[30]))*100),3,1);// 求出QS的值,并将值赋给QS
         //MIN(发音: [ main]卖嗯)求最小值 ,MAX(音[玛克丝)求最大值
               
        PlotNumeric("QS",QS);//画趋势线
        PlotNumeric("PJ",AverageFC(QS,5));//画五周期的平均线
        PlotNumeric("80",80,IIF(QS>=0,Blue,Green));
        PlotNumeric("20",20,IIF(QS>=0,Blue,Green));
        PlotNumeric("90",90,IIF(QS>=0,Blue,Green));
        PlotNumeric("10",10,IIF(QS>=0,Blue,Green));
End

学习笔记:1.要正确书写函数的大小写
               2.注释有三种方法

[ 本帖最后由 zihonggu 于 2009-5-24 10:21 编辑 ]
下定决心,不怕牺牲,排除万难,去争取胜利。

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
371
积分
854
帖子
66
主题
11
阅读权限
60
注册时间
2007-9-18
最后登录
2019-3-31
34#
发表于 2009-5-23 11:18:36 |只看该作者
今天学习IF 这个语句。 我不懂外语(50后人:生于困难时期,长于文革年代,成年上山下乡,老年改革下岗,髦年退而不休,如今学习惶惶),更没学过C 语言,所以我就只好以我自已另类方式,来阅读学习和理解这C语言和基于C语言语法的 TradeBlazer  (发音[treid 'bleiz?]  锤d泪热a)语言了。呵呵.......汗啊!

关于IF语句
If语句是一个条件语句,当特定的条件满足后执行一部分操作。(我理解为 如果满足条件就这样(为真),否则如果不满足就另样(为假)IF 也可写成IIF,作用就是在公式语中作真假判断,也就是布尔类型)

语法如下:
If (Condition) //condition (发音[k?n?di??n] 恳'得信) 意为条件,条件指约,条件转移。

{
  TradeBlazer公式语句;
}
TradeBlazer公式语句是一些语句的组合,如果TradeBlazer公式语句是单条,您可以省略{},二条或者二条以上的语句必须使用{}。
学习教材:http://www.tradeblazer.net/forum/thread-242-1-1.html

看别人的编写句理解:
if(aa9>100)
      {
      //如果满足条件 aa9>100
                aa10=aa9-100; //就返回到:aa10=aa9-100;
        }
Else //否则 (else  发音[els] adv.其他, 另外)      
     {  
                aa10=0;// 就返回到:aa10=0;
          }
   If(aa12-aa13>0)
        {
        //如果满足条件 aa12-aa13>0 ,从aa12到aa13画红色柱
       PlotNumeric("high",aa12);
       PlotNumeric("Low",aa13);
       PlotNumeric("Close",aa12);
       PlotNumeric("Open",aa13);
          }
      Else
      {
       //否则 不满足条件 aa12-aa13  ,从aa12到aa13画绿色柱
        PlotNumeric("high",aa13);
        PlotNumeric("Low",aa12);
        PlotNumeric("Open",aa13);
        PlotNumeric("Close",aa12);
        }

[ 本帖最后由 zihonggu 于 2009-5-23 23:22 编辑 ]
下定决心,不怕牺牲,排除万难,去争取胜利。

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
371
积分
854
帖子
66
主题
11
阅读权限
60
注册时间
2007-9-18
最后登录
2019-3-31
35#
发表于 2009-5-23 19:52:50 |只看该作者
通过这几天的学习,稍微能看懂最简单的TB指标了。找到论坛上的一个TB指标,试着应其要求改为文华格式,呵呵,居然文华的指标图与TB中显示的一样,心里感到好高兴啊。 此举使我对自己学习 TradeBlazer 增强了信心,以后我一定要更加努力地去学习,争取早一天从文华实盘转向 TB 实盘。(因为我知道电脑自动化系统交易是今后大方向,这个方面目前TB功能最强)
http://www.tradeblazer.net/forum/thread-4733-1-1.html
下定决心,不怕牺牲,排除万难,去争取胜利。

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
371
积分
854
帖子
66
主题
11
阅读权限
60
注册时间
2007-9-18
最后登录
2019-3-31
36#
发表于 2009-5-23 23:39:52 |只看该作者
我虽然没学过C语言,但是必须了解点C语言的书写格式(C语言的语法),才能正确书写TB语法和正确编写TB格式.。
方法:在读学TB代码中学点C语言

      C#代码由一系列语句组成,每个语句都用一个分号来结束。因为空格被忽略,所以一行可以有多个语句,但从可读性的角度来看,通常在分号的后面加上回车符,这样就不能在一行上放置多个语句了。但一句代码放在多个行上是可以的(也比较常见)。

  C#是一个块结构的语言,所有的语句都是代码块的一部分。这些块用花括号来界定("{" 和 "}"),代码块可以包含任意多行语句,或者根本不包含语句。注意花括号字符不需要附带分号。....... 原来 IF 这个函数写布尔数据,进行真假赋值必须用花括号括起来哟。

      C#注释  注释有三种方法    ///                //                 /*  */
      
     C#代码是区分大小写的。与其他语言不同,必须使用正确的大小写形式输入代码,因为简单地用大写字母代替小写字母会中断项目的编译。

[ 本帖最后由 zihonggu 于 2009-5-23 23:48 编辑 ]
下定决心,不怕牺牲,排除万难,去争取胜利。

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
371
积分
854
帖子
66
主题
11
阅读权限
60
注册时间
2007-9-18
最后登录
2019-3-31
37#
发表于 2009-5-24 22:46:56 |只看该作者
今天找到一个学习方法:每天读TradeBlazer 软件帮助中的公式基础:
今天学了:Bar 数据。 TB中的 K线就叫Bar  一根K线就是一个Bar  Bar数据是序列数据。

以下列出所有的Bar数据系统函数:
函数名          简写        描述  
Date             D           当前Bar的日期。  (date  [deit]   n.(注明的)日期, 日子, 年份)
Time            T            当前Bar的时间。  (time  [taim]  n.时间)
Open           O            当前Bar的开盘价。 (open  [əupən] adj.开着的; 开放的, 公开的)
High             H            当前Bar的最高价,Tick时为当时的委卖价。 (high [拼音:hai 海] adj.高)
Low              L            当前Bar的最低价,Tick时为当时的委买价。 (low  [ləu] adj.低的, 矮的)
Close            C             当前Bar的收盘价。 (close  [kləuz]  vt. & vi.(使)关, 关闭)
Vol               V             当前Bar的成交量。
OpenInt        无            当前Bar的持仓量。
CurrentBar    无            当前Bar的索引值,从0开始计数。 current  [kʌrənt] (汉音:卡润t巴)adj.现在的, 现行的
BarStatus      无           当前Bar的状态值,0表示为第一个Bar,1表示为中间的普通Bar,2表示最后一个Bar。
                                 status  [steitəs] 状况状态   BarStatus (汉音:’吧’舍铁死)

回溯。即对数据的向前引用
     比如,获取上一个Bar的收盘价:Close[1],获取10天前的成交量:Vol[10]。

If (Close > Close[1]) //当前收盘价大于上一个bar
{
    Buy(1,Close); // 系统执行执行一个指令:按照当前收盘价多头开仓买入1手     buy  [bai](汉音:罢)vt. & vi.购买, 购得
}


If(BarStatus()==2) //当K线状态是最后一根时
{
    //调用行情数据函数:行情函数是Q_XXXX  函数, 即tick 数据
}

[ 本帖最后由 zihonggu 于 2009-5-24 23:43 编辑 ]
下定决心,不怕牺牲,排除万难,去争取胜利。

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
371
积分
854
帖子
66
主题
11
阅读权限
60
注册时间
2007-9-18
最后登录
2019-3-31
38#
发表于 2009-5-25 08:34:49 |只看该作者

复习PlotNUmeric 函数

PlotNumeric表示输出一个数值型组成的数组;公式中“”内所引用的是字符串的常量,内容文字即在图表中所输出的技术指标的名称

关于PlotNumeric的使用
函数原形:
    Numeric PlotNumeric(String Name,Numeric Number,Integer Color=-1,Integer BarsBack=0)
   函数原形意为: 显示数值型指标画线(名称,数值,颜色,回溯)
参数:
    Name 输出值的名称,不区分大小写;
    Number 输出的数值;
    Color 输出值的显示颜色,默认表示使用属性设置框中的颜色;
    BarsBack 从当前Bar向前回溯的Bar数,默认值为当前Bar。

另类方式学单词:
BarsBack        自组词组 (汉音:’巴阿兹’贝爱克) 从当前Bar向前回溯的Bar数,默认值为当前Bar       
bars  ([bɑ:z] 汉音: 巴阿兹 )         
back  ([bæk] 汉音:贝爱克)

[ 本帖最后由 zihonggu 于 2009-5-28 13:24 编辑 ]
下定决心,不怕牺牲,排除万难,去争取胜利。

使用道具 举报

Rank: 6Rank: 6

精华
2
UID
390
积分
2142
帖子
286
主题
45
阅读权限
70
注册时间
2007-9-21
最后登录
2019-4-1
39#
发表于 2009-5-25 08:37:27 |只看该作者
严重支持!
此贴必火!

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
371
积分
854
帖子
66
主题
11
阅读权限
60
注册时间
2007-9-18
最后登录
2019-3-31
40#
发表于 2009-5-25 09:00:32 |只看该作者
逻辑操作符
逻辑运算符常常用于比较两个True/False的表达式,共有三个逻辑操作符:AND(&&),OR(||),NOT(!)。   
           
        表达式1 AND 表达式2    and  (并且)    可用符号 && 表示
        表达式1 OR 表达式2      or    (或者)    可用符号 ||   表示
        NOT表达式1                not   (非)      可用符号  !  表示

           1  &&   2                      只有1和2的条件都真才反回真
           1  ||    2                      只有1和2的条件都假才反回假
           1   !                           这个条件非真则反回假,非假则反回真
http://www.tradeblazer.net/forum/thread-242-1-1.html
下定决心,不怕牺牲,排除万难,去争取胜利。

使用道具 举报

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

bottom

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

GMT+8, 2024-5-2 18:59

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部