以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  宇哥请老师帮忙改一下模型  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=87050)

--  作者:lixiaoyu
--  发布时间:2015/11/6 17:46:51
--  宇哥请老师帮忙改一下模型
 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;
AF=Acceleration;
HighValue=High;
}Else If(MarketPosition==1 And BarsSinceEntry>0)
{
If(High>HighValue)  HighValue=High;
If(HighValue>HighValue[1] And AF<0.2)
{
    AF=AF+Min(Acceleration,0.2-AF);
}
StopPrice=StopPrice+AF*(HighValue-StopPrice);
}
//在图标上画出跟踪止损价
PlotNumeric("StopPrice",StopPrice);
//向下突破跟踪止损价多头出场
If(MarketPosition==1 And BarsSinceEntry>0 And Low<=StopPrice[1] And Vol > 0)
{
    Sell(0,Min(Open,StopPrice[1]));
}
End
请老师 帮改成 金字塔的指标

--  作者:jinzhe
--  发布时间:2015/11/9 9:33:05
--  
暂时在这个函数上卡住了,请问AvgTrueRange这个函数是什么意思?
--  作者:lixiaoyu
--  发布时间:2015/11/22 22:33:17
--  
ATR的平均值
--  作者:jinzhe
--  发布时间:2015/11/23 9:05:40
--  
还是具体解释一下整段话