策略代码编译通过但是加载运行后没有开平仓信号

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

// 简称: TripleMA_ATR_Strategy

// 名称: 三周期均线+ATR过滤策略

// 类别: 公式应用

// 类型: 内建应用

// 输出:

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

Params

   Numeric MA_Period(60);          // 均线周期

   Numeric ATR_Period(14);         // ATR周期

   Numeric StopLossPct(1);         // 止损百分比(1%)

   Numeric TrailMultiplier(2.0);   // ATR移动止盈倍数

   Numeric ATR_Filter(1.5);        // ATR波动过滤阈值

   

Vars

   //----- 多周期数据声明 -----

   Series<Numeric> MA_H1;           // 1小时均线

   Series<Numeric> MA_M15;          // 15分钟均线

   Series<Numeric> MA_M3;           // 3分钟均线

   

   //----- 过滤指标 -----

   Series<Numeric> ATR_Val;         // ATR值

   

   //----- 交易信号 -----

   Numeric BuyPrice;              // 入场价格

   Numeric TrailStop;             // 跟踪止损价

   Series<Numeric> HighSinceEntry;  // 入场后最高价

   Series<Bool> SignalFlag;         // 信号触发标志(新增调试标志)


Events

   OnBar(ArrayRef<Integer> indexs)

   {

       //====== 多周期数据调用 ======

       // 确保主图周期为3分钟,并加载1小时、15分钟数据

       MA_H1 = AverageFC(CloseD(1), MA_Period);  // 1小时均线

       MA_M15 = AverageFC(CloseD(2), MA_Period); // 15分钟均线

       MA_M3 = AverageFC(Close, MA_Period);      // 3分钟均线

       

       //====== 指标计算 ======

       ATR_Val = AvgTrueRange(ATR_Period);      // ATR计算

       

       //====== 信号生成 ======

       Bool MA_Bull =

           MA_H1[0] > MA_H1[1] &&   // 1小时均线上涨

           MA_M15[0] > MA_M15[1] && // 15分钟均线上涨

           MA_M3[0] > MA_M3[1];     // 3分钟均线上涨

       

       //====== 交易逻辑 ======

       If(MarketPosition == 0 && MA_Bull && ATR_Val > ATR_Filter && BarStatus == 2)

       {

           Buy(1, Open);

           BuyPrice = Open;

           TrailStop = BuyPrice * (1 - StopLossPct * 0.01);  // 初始止损

           HighSinceEntry = High;  // 初始化入场后最高价

           SignalFlag = True;      // 标记信号已触发

           Commentary("三周期多头入场 [价格=" + Text(Open) +

                     ", ATR=" + Text(ATR_Val) +

                     ", MA_H1=" + Text(MA_H1[0]) + "]");

       }

       

       //====== 移动止盈 ======

       If(MarketPosition == 1)

       {

           // 动态更新入场后最高价

           If(High > HighSinceEntry)

           {

               HighSinceEntry = High;

               Commentary("更新最高价: " + Text(HighSinceEntry));

           }

           

           // 计算跟踪止损价:最高价回撤 TrailMultiplier×ATR

           TrailStop = Max(TrailStop, HighSinceEntry - TrailMultiplier * ATR_Val);

           

     


求助 编译没有错误但是代码没有执行sell
代码逻辑看似没有问题,但是没有开仓执行,怎么查找问题
请问我这个代码如何修改可以编译通过?
策略优化能否通过代码来实现?
策略可以运行,但是没有回测数据
修改参数默认值后重新编译程序值运行却没有更新
升级后无法运行
开仓后没有信号
策略运行问题
为什么K线图出现信号,策略运行里没有信号,也不报警,日志也没有开仓信息。

没有开平信号说明你的开平条件有问题,自己计算一下数值设置的对不对