设为首页收藏本站

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

请老师帮忙把 公式例题翻译一下 [复制链接]

Rank: 1

精华
0
UID
221778
积分
3
帖子
2
主题
1
阅读权限
10
注册时间
2015-10-21
最后登录
2016-4-6
跳转到指定楼层
1#
发表于 2015-11-6 14:45:18 |只看该作者 |倒序浏览
Params
    Numeric  Length(10);    //用于计算ATR和新高价的Bar数
        Numeric  Trigger(0.79);        //用于计算多头进场价的驱动系数
        Numeric  Acceleration(0.05);        //抛物线的加速系数
        Numeric  FirstBarMultp(5);                //用于计算在进场Bar设置止损价的系数
       
Vars
        NumericSeries  ATR;
        NumericSeries  StopPrice;        //跟踪止损价
        NumericSeries  HighValue;        //多头进场之后的盈利峰值价
        NumericSeries  AF;                        //跟踪Acceleration
        BoolSeries  Condition1(False);       
        Numeric StopATR;
Begin

        // 集合竞价和小节休息过滤
        If(!CallAuctionFilter()) Return;

        //初始设置
        ATR=AvgTrueRange(Length);
        Condition1=High>Highest(High[1],Length);
       
        //上一根Bar创新高后且当前Bar最高价突破上一根Bar收盘价加上ATR的一定倍数多头入场
        If(Condition1[1])
        {
            If(High>=Close[1]+ATR[1]*Trigger And Vol > 0)
                {
                    Buy(0,Max(Open,Close[1]+ATR[1]*Trigger));
                }
        }
       
        //记录盈利峰值价和跟踪止损价
        StopATR = Average(TrueRange,3);
        If(MarketPosition==1 And BarsSinceEntry==0)
        {
            StopPrice=Low-StopATR*FirstBarMultp;    这句话中low用的是当根K线的最低价吗 是不是应该用上一根K线的最低价格
                AF=Acceleration;                        AF是 定义 等于0.05吗
                HighValue=High;                      这句话定义了 highvalue 就是 high吗
        }Else If(MarketPosition==1 And BarsSinceEntry>0)
        {
                If(High>HighValue)  HighValue=High;       这里面 为什么 high 又大于highvalue
                If(HighValue>HighValue[1] And AF<0.2)
                {
                    AF=AF+Min(Acceleration,0.2-AF);
                }
                StopPrice=StopPrice+AF*(HighValue-StopPrice);    stopprice在这里 为什么可以在等号
        }
       
        //在图标上画出跟踪止损价
        PlotNumeric("StopPrice",StopPrice);
       
        //向下突破跟踪止损价多头出场
        If(MarketPosition==1 And BarsSinceEntry>0 And Low<=StopPrice[1] And Vol > 0)
        {
            Sell(0,Min(Open,StopPrice[1]));
        }
       
End

Rank: 3Rank: 3

精华
0
UID
121070
积分
133
帖子
88
主题
35
阅读权限
40
注册时间
2013-7-8
最后登录
2023-8-18
2#
发表于 2016-7-26 10:05:01 |只看该作者
我也正在看这个公式,所以交流一下:
1.Low不是当根K线最低价,而是开仓那根K线的最低价,只要开仓bar不平仓,感觉对交易没有影响;
2.这里AF是等于0.05了,但感觉AF和Acceleration之间是有关系的,但这个策略里没交待;
3.HighValue是记录开仓后的最高值的,但这里仅是初始化一个初值,意义不大;
4.记录最大值;
5.由于最大值变化,更新StopPrice的值。

使用道具 举报

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

bottom

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

GMT+8, 2024-5-22 21:31

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部