设为首页收藏本站

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

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

Rank: 5Rank: 5

精华
0
UID
371
积分
854
帖子
66
主题
11
阅读权限
60
注册时间
2007-9-18
最后登录
2019-3-31
51#
发表于 2009-5-31 14:38:13 |只看该作者
学习写交易指令
第一阶段的学习 我只能模仿,今天将TB软件系统自带的 卡夫曼自适应均线指标 改写成交易指令
//------------------------------------------------------------------------
// 简称: zx05
// 名称: 调整移动平均线
// 类别: 交易指令
// 类型: 其他
// 输出:
//------------------------------------------------------------------------
Params
        Numeric EffRatioLength(10);//比率参数周期
        Numeric FastAvgLength(2);  //快线参数
        Numeric SlowAvgLength(30); //慢线参数
         Numeric Lots(1);           /*Numeric entryLots; // 开仓数量   
                                            entry  ([ 'entri]汉音:恩垂)n.进入,入口处;lots ([l?t]汉音:罗吃)n..许多 大量; EntryLots (汉音:恩垂罗吃)开仓数量*/

Vars
        NumericSeries AMAValue;    //变量名 (阿妈'V阿牛) AMA:均线类型的变量
        NumericSeries MyProfit;    //profit  (['profit]汉音:坡肥它)n.利润, 收益, 赢利 ; MyProfit  我的利润
   
Begin
        AMAValue=AdaptiveMovAvg(Close,EffRatioLength,FastAvgLength,SlowAvgLength);        /*用户函数AdaptiveMovAvg (价,比率,整型快速周期,整型慢速周期)适应的平均线*/

        If(CrossOver(Low,AMAValue))   //条件判断(最低价上穿卡夫曼自适应平均线)
                     
        Buy(Lots,C);    //以盘中最新价平空开多仓 (在当根Bar没走完时 我对C价的理解就是最新价,不知在TB中理解对否?)         
        
        If(CrossUnder(AMAValue,High)) //条件判断(最高价下穿卡夫曼自适应平均线)
                        
        SellShort(lots,C);   //以盘中最新价平多开空仓
     
        MyProfit = AvgEntryPrice*0.1*ContractUnit*BigPointValue;   //开仓均价回落10% 乘 合约标的数量 乘 合约一个整数点的价值 等于利润
   
         SetPercentTrailing(MyProfit ,0.2,True);  //追踪止赢  利润回落20%止赢


End



//------------------------------------------------------------------------
// 编译版本        GS2004.06.12
// 用户版本        2009/05/31 00:06
// 版权所有        zihonggu
// 更改声明        TradeBlazer Software保留对TradeBlazer平台
//                        每一版本的TrabeBlazer公式修改和重写的权利
//------------------------------------------------------------------------
学习笔记   函数  AvgEntryPrice  开仓均价
                       ContractUnit   合约标的数量
                       BigPointValue   一个整数点的价值
                      SetPercentTrailing    产生一个平仓止赢和操作

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

使用道具 举报

Rank: 5Rank: 5

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

问一个问题:

MyProfit = AvgEntryPrice*0.1*ContractUnit*BigPointValue;   //开仓均价回落10% 乘 合约标的数量 乘 合约一个整数点的价值 等于利润
   
SetPercentTrailing(MyProfit ,0.2,True);  //追踪止赢  利润回落20%止赢

第一句: 我的利润=(赋值)的表达式中  是直接写   AvgEntryPrice    ContractUnit     BigPointValue 这三个函数吗? 还是填进去实际的数字如 14790 (价)     5(一手合约为5吨)   5(行情跳一点为5元币)?

第二句  懂到的, 就是“ 我的利润回落 ” 当这个条件为真时, 系统就执行一个平仓止赢的操作。

希望坛中老大帮我解答第一句的问题。这句是我在论坛上抄的写法,没懂 代不代入实际的数字?

谢谢 !谢谢!! 谢谢!!!
下定决心,不怕牺牲,排除万难,去争取胜利。

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
53#
发表于 2009-5-31 15:50:48 |只看该作者

回复 #55 zihonggu 的帖子

1、直接写函数名就可以了。

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
371
积分
854
帖子
66
主题
11
阅读权限
60
注册时间
2007-9-18
最后登录
2019-3-31
54#
发表于 2009-5-31 23:17:59 |只看该作者
谢谢 nopain 管理 员老大   你的工作真辛苦! 你还觉得不苦不烦, 老大人品真好!
下定决心,不怕牺牲,排除万难,去争取胜利。

使用道具 举报

Rank: 5Rank: 5

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

复习变量

Vars   //声明(告诉)程序中存在的可以用的变量
声明变量的语法:  变量类型+空格+变量名+分号

NumericSeries   Blm; //声明序列变量名Blm

变量名必须以字母开头。
变量名只能由字母,数字和下划线组成,而不能包含空格,标点符号,运算符等其它符号。如:NumericSeries  Blm_1 ;
变量名不能与系统中的关键字(保留字)名称相同。如: NumericSeries if@for; if@for用作变量名就是错的。
变量名不能与系统中的库函数名称相同。

要点:变量名在系统限制范围内是可以随便取名的。但不能用系统中的关键字(保留字)
http://www.tradeblazer.net/product/language3.html

    NumericSeries MyVal1(0);     //定义数值型序列变量MyVal1,默认值为0;NumericSeries  (发音[nju:'merik 'siəri:z] 尼马瑞k舍瑞z),
    Numeric       MyVal2(0);     //定义数值型变量MyVal2,默认值为0;Numeric (发音[nju:'merik  尼马瑞k),
    Bool          MyVal3(False); //定义布尔型变量MyVal3,默认值为False;  Bool (汉音:布尔)
   String        MyVal4("Test");//定义字符串变量MyVal4,默认值为Test。  String (汉单:死准)

序列变量定义有三种类型:
    NumericSeries           MyNumSVal(0);
    BoolSeries          MyBoolVal(False);
    StringSeries          MyStrVal("");
为了运算速度和少占内存:强烈建议只将需要进行回溯的变量定义为序列变量。

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

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
6925
积分
903
帖子
175
主题
25
阅读权限
60
注册时间
2010-2-9
最后登录
2012-5-3
56#
发表于 2010-3-9 09:30:09 |只看该作者

回复 57# zihonggu 的帖子

怎么没有了呢?继续啊

使用道具 举报

Rank: 2

精华
0
UID
14443
积分
107
帖子
22
主题
3
阅读权限
30
注册时间
2010-7-16
最后登录
2012-11-8
57#
发表于 2010-7-22 11:31:47 |只看该作者
真不错,坚持,以后跟你学了

使用道具 举报

Rank: 4

精华
0
UID
14998
积分
400
帖子
65
主题
10
阅读权限
50
注册时间
2010-7-31
最后登录
2011-5-26
58#
发表于 2010-8-12 15:53:25 |只看该作者
楼主的精神值得学习
丰富

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
9631
积分
900
帖子
11
主题
5
阅读权限
60
注册时间
2010-5-4
最后登录
2010-11-10
59#
发表于 2010-8-14 15:04:00 |只看该作者
你要是看NBA的话,BLAZER应该能认出来啊、、。。NBA 里不是有个Portland blazer队(波特兰开拓者队)

使用道具 举报

Rank: 2

精华
0
UID
15234
积分
73
帖子
10
主题
6
阅读权限
30
注册时间
2010-8-16
最后登录
2010-8-25
60#
发表于 2010-8-18 12:49:04 |只看该作者
问一下这一句:MyProfit = AvgEntryPrice*0.1*ContractUnit*BigPointValue;   //开仓均价回落10% 乘 合约标的数量 乘 合约一个整数点的价值 等于利润
我想计算一下开仓后未平仓之前最大的盈利是多少,怎么算!你上一句,我没看懂 谢谢解答

使用道具 举报

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

bottom

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

GMT+8, 2024-5-23 13:16

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部