求修正..32行Then变量没有被声明.需要修正

32行Then变量没有被声明.需要修正//------------------------------------------------------------------------

// 简称: MACDPillar_TB_Final

// 名称: MACD立柱策略(最终修正版)

// 类别: 策略应用

// 类型: 用户应用

//------------------------------------------------------------------------

Params

   Numeric FastLength(12);        // 快线周期

   Numeric SlowLength(26);        // 慢线周期  

   Numeric SignalLength(9);       // 信号线周期

   Numeric MarkOffset(3);         // 标记偏移系数

   

Vars

   Numeric MACDValue(0);          // MACD值

   Numeric AvgMACD(0);            // 信号线

   Numeric MACDDiff(0);           // MACD柱状图

   Bool BuyCondition(False);      // 买入条件

   Bool SellCondition(False);     // 卖出条件

   Numeric BuyMarkPos(0);         // 买入标记位置

   Numeric SellMarkPos(0);        // 卖出标记位置

   Numeric TextOffset(0);         // 文本偏移量

   Numeric i(0);                  // 循环计数器(备用)


Begin

   // MACD指标计算

   MACDValue = XAverage(Close, FastLength) - XAverage(Close, SlowLength);

   AvgMACD = XAverage(MACDValue, SignalLength);

   MACDDiff = MACDValue - AvgMACD;

   

   // 确保有足够历史数据

   If (CurrentBar > SlowLength + SignalLength + 5) Then  // Then是关键字,不需要声明

   Begin

       // 买入条件:5>4<3<2<1形态

       BuyCondition = (MACDDiff > MACDDiff[1]) And

                     (MACDDiff[1] < MACDDiff[2]) And

                     (MACDDiff[2] < MACDDiff[3]) And

                     (MACDDiff[3] < MACDDiff[4]);

       

       // 卖出条件:连续2根递减

       SellCondition = (MACDDiff < MACDDiff[1]) And

                      (MACDDiff[1] < MACDDiff[2]);

       

       // 交易执行模块

       If (MarketPosition <> 1 And BuyCondition) Then  // Then是关键字

       Begin

           Buy(1, Open);

           

           // 计算标记位置

           BuyMarkPos = Low - MarkOffset * MinMove * PriceScale;

           TextOffset = (MarkOffset + 2) * MinMove * PriceScale;

           

           // 绘制买入信号

           PlotNumeric("Buy", BuyMarkPos, 0, RGB(255,255,0));

           PlotText("B@"+Text(Open,2), CurrentBar, Low - TextOffset, 0, RGB(255,255,0));

       End;

       

       If (MarketPosition = 1 And SellCondition) Then  // Then是关键字

       Begin

           Sell(0, Open);

           

           // 计算卖出标记位置

           SellMarkPos = High + MarkOffset * MinMove * PriceScale;

           

           // 绘制卖出信号

           PlotNumeric("Sell", SellMarkPos, 0, RGB(0,255,255));

           PlotText("S@"+Text(Open,2), CurrentBar, High + TextOffset, 0, RGB(0,255,255));

       End;

   End;

End

//------------------------------------------------------------------------

// 编译版本    TB5.0

// 版权所有    TradeBlazer

//--------------------------------

Then的变量没有被声明
Then变量没有被声明
求高手修正程序
函数没有被声明
MACD函数,Capital变量,HHV函数没有被声明,怎样处理?
修正
ATR函数没有被声明
软件报错:PlotBar函数没有被声明 (疑似Bug)
setbaseperiod函数没有被声明
帮忙修正一下

这种字段是谁教你的

Ai写的.要怎么修改