[MT4指标]【求助】在指标上加上警报程序就卡死?
#property indicator_separate_window
#property indicator_buffers 4
#property indicator_color1 Black
#property indicator_color2 Red
#property indicator_color3 Black
#property indicator_color4 Red
extern bool EmailON=false;
extern int FastEMA = 12;
extern int SlowEMA = 26;
extern int SignalSMA = 9;
double g_ibuf_88;
double g_ibuf_92;
double g_ibuf_96;
double g_ibuf_100;
int init() {
SetIndexStyle(0, DRAW_HISTOGRAM);
SetIndexStyle(1, DRAW_LINE);
SetIndexDrawBegin(1, SignalSMA);
IndicatorDigits(Digits + 1);
SetIndexBuffer(0, g_ibuf_88);
SetIndexBuffer(1, g_ibuf_92);
SetIndexBuffer(2, g_ibuf_96);
SetIndexBuffer(3, g_ibuf_100);
SetIndexStyle(2, DRAW_ARROW);
SetIndexStyle(3, DRAW_ARROW);
SetIndexArrow(2, 233);
SetIndexArrow(3, 234);
IndicatorShortName("MACD(" + FastEMA + "," + SlowEMA + "," + SignalSMA + ")");
SetIndexLabel(0, "MACD");
SetIndexLabel(1, "Signal");
return (0);
}
int start() {
int li_4 = IndicatorCounted();
if (li_4 > 0) li_4--;
int li_0 = Bars - li_4;
for (int li_8 = 0; li_8 < li_0; li_8++) g_ibuf_88[li_8] = iMA(NULL, 0, FastEMA, 0, MODE_EMA, PRICE_CLOSE, li_8) - iMA(NULL, 0, SlowEMA, 0, MODE_EMA, PRICE_CLOSE, li_8);
for (li_8 = 0; li_8 < li_0; li_8++) g_ibuf_92[li_8] = iMAOnArray(g_ibuf_88, Bars, SignalSMA, 0, MODE_SMA, li_8);
for (li_8 = 0; li_8 < li_0; li_8++) {
if (g_ibuf_88[li_8 + 1] < 0.0 && g_ibuf_88[li_8] > 0.0) g_ibuf_96[li_8] = g_ibuf_88[li_8];
Alert(Symbol()+"MACD 上穿0轴");
if (g_ibuf_88[li_8 + 1] > 0.0 && g_ibuf_88[li_8] < 0.0) g_ibuf_100[li_8] = g_ibuf_88[li_8];
Alert(Symbol()+"MACD 下穿0轴");
}
return (0);
}请问,如题,加载上去就不断提示直至卡死,如何改写才让它只提示一次呢?谢谢!!!