網友回復:
回復 1# qdczy
Params
Numeric Length(26);
Numeric Offset(2);
Vars
NumericSeries UpLine; //上軌
NumericSeries DownLine; //下軌
Numeric MidLine; //中間線
Numeric Band;
BoolSeries Condition1;
BoolSeries Condition2;
BoolSeries Condition3;
BoolSeries Condition4;
NumericSeries WW;
Numeric MA1;
NumericSeries MA2;
Begin
MidLine = AverageFC(Close,Length);//布林中軌:26日均線
Band = StandardDev(Close,Length,2); //收盤價在26日內的標準差
UpLine = MidLine + Offset * Band;//上軌
DownLine = MidLine - Offset * Band; //下軌
PlotNumeric("UpLine",UpLine);
PlotNumeric("DownLine",DownLine);
PlotNumeric("MidLine",MidLine);
WW=UpLine-DownLine; //布林帶寬
MA1=AverageFC(CLOSE,22); //22日均線
MA2=AverageFC(CLOSE,99); //99日均線
PlotNumeric("MA1",MA1);
PlotNumeric("MA2",MA2);
Condition1 = CrossOver(MA1,MA2);
Condition2 = CrossUnder(MA1,MA2);
Condition3 = MA2+0.13>MA2[1];
Condition4 = MA2-0.13<MA2[1];
//買開條件:22日均線上叉99日均線、收盤價小于布林上軌、布林帶寬小于31、99日均線+0.13大于前一周期99日均線
if (Condition1[1]&&C<UpLine[1]&&WW[1]<31&&Condition3[1])
{
Buy(1,Open);
}
if(Condition2[1])
Sell(0,Open);
//賣開條件:99日均線上叉22日均線、收盤價大于布林下軌、布林帶寬小于31、99日均線-0.13小于前一周期99日均線
if (Condition2[1]&&C>DownLine&&WW[1]<31&&Condition4[1])
{
SellShort(1,Open);
}
if(Condition1[1])
BuyToCover(0,Open); |