设为首页收藏本站

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

TBquant 公式如何 转换到 TB旗舰版? 只有序列变量和参数或数 [复制链接]

Rank: 1

精华
0
UID
295218
积分
13
帖子
9
主题
2
阅读权限
10
注册时间
2020-8-30
最后登录
2020-12-10
跳转到指定楼层
1#
发表于 2020-10-5 10:43:45 |只看该作者 |倒序浏览
本帖最后由 yjlh20 于 2020-10-5 10:46 编辑

Params
        Numeric bollingerLengths(50);        // 布林通道参数
        Numeric Offset(1.25);                        // 布林通道参数
        Numeric rocCalcLength(30);                // 过滤器参数
        Numeric liqLength(50);                        // 自适应出场均线参数
        Numeric Lots(0);                                // 交易手数                               
Vars
        Series<Numeric> MidLine(0);                // 布林通道中轨
        Numeric Band(0);
        Series<Numeric> upBand(0);                // 布林通道上轨
       
        Series<Numeric> rocCalc(0);                // 过滤器
        Series<Numeric> liqDays(50);                // 自适应出场均线的参数
        Series<Numeric> liqPoint(0);                // 自适应的出场均线
Events
        OnBar(ArrayRef<Integer> indexs)
        {
               
               
                // 布林通道中轨
                MidLine = AverageFC(Close,bollingerLengths);
                Band = StandardDev(Close,bollingerLengths,2);
                // 布林通道上轨
                upBand = MidLine + Offset*Band;
                // 画线
                PlotNumeric("MidLine",MidLine);
                PlotNumeric("upBand",upBand);
               
                // 进场过滤器
                rocCalc = Close - Close[rocCalcLength - 1];
               
                // 满足过滤条件,并且价格突破布林通道上轨,开多单
                If(MarketPosition != 1 And rocCalc[1] > 0 And High >= upBand[1]) Buy(Lots,Max(Open,upBand[1]));
               
                // 自适应出场均线
                If(MarketPosition == 0)
                {
                        liqDays = liqLength;
                }Else
                {
                        liqDays = liqDays - 1;
                        liqDays = Max(liqDays,10);
                }
                liqPoint = Average(Close,liqDays);
               
                // 画线
                PlotNumeric("liqPoint",liqPoint);
                // 持有多单时,自适应出场均线低于布林通道上轨,并且价格下破自适应出场均线,平多单
                If(MarketPosition == 1 And BarsSinceEntry >= 1 And liqPoint[1] < upBand[1] And Low <= liqPoint[1]) Sell(0,Min(Open,liqPoint[1]));
        }       

例如 这个布林强盗多的TBquant 公式转换到 TB旗舰版 以后红色部分就会提示

只有序列变量和参数或数组才能 使用回溯值     错误号  L0008


谢谢

Rank: 4

精华
0
UID
110114
积分
380
帖子
314
主题
16
阅读权限
50
注册时间
2012-4-20
最后登录
2021-12-29
2#
发表于 2020-10-5 13:40:38 |只看该作者
没用过TBQuant。你把变量声明Series<Numeric>改写成NumericSeries试试?Begin下第一行屏蔽//OnBar(ArrayRef<Integer> indexs)

使用道具 举报

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

bottom

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

GMT+8, 2024-5-17 13:26

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部