我想在软件里增加新的公式即LON指标,我让deepseek写了以下代码:
Params
Numeric ShortPeriod(10); // 短期EMA周期
Numeric LongPeriod(20); // 长期EMA周期
Numeric SignalPeriod(9); // 信号线周期
Vars
Numeric shortEMA; // 短期EMA值
Numeric longEMA; // 长期EMA值
Numeric DIFF; // 差值线
Numeric DEA; // 信号线
Numeric MACD; // 柱状图
Begin
// 计算双EMA差值
shortEMA = EMA(Close, ShortPeriod);
longEMA = EMA(Close, LongPeriod);
DIFF = shortEMA - longEMA;
// 计算信号线
DEA = EMA(DIFF, SignalPeriod);
// 计算柱状图
MACD = DIFF - DEA;
// 绘制指标线
PlotNumeric("DIFF", DIFF); // 主图显示差值线
PlotNumeric("DEA", DEA); // 显示信号线
PlotNumeric("MACD", MACD, 0, Diff > DEA ? Red : Green); // 彩色柱状图
// 返回最后一条K线的数值
Return GetLastValue(DIFF), GetLastValue(DEA), GetLastValue(MACD);
End
但在编译的时候显示4处错误,如下所示:
错误 EMA函数没有被声明 1037 20 EStrategyType_UserFunction wzwb999 lon 用户
错误 EMA函数没有被声明 1037 21 EStrategyType_UserFunction wzwb999 lon 用户
错误 EMA函数没有被声明 1037 23 EStrategyType_UserFunction wzwb999 lon 用户
错误 无法识别的字符串? 1002 28 EStrategyType_UserFunction wzwb999 lon 用户
请帮忙修改一下可以吗?谢谢
ai写得改不了,这根本乱七八糟
不要用ai做自己不懂的工作。
😂
后面我让deepseek帮我修订,具体如下:
Params
Numeric ShortPeriod(10); // 短期EMA周期
Numeric LongPeriod(20); // 长期EMA周期
Numeric SignalPeriod(9); // 信号线周期
Vars
Numeric shortEMA; // 短期EMA值
Numeric longEMA; // 长期EMA值
Numeric DIFF; // 差值线
Numeric DEA; // 信号线
Numeric MACD; // 柱状图
Numeric ColorMACD; // 动态颜色值
Begin
// 计算双EMA差值
shortEMA = XAverage(Close, ShortPeriod);
longEMA = XAverage(Close, LongPeriod);
DIFF = shortEMA - longEMA;
// 计算信号线
DEA = XAverage(DIFF, SignalPeriod);
// 计算柱状图
MACD = DIFF - DEA;
// 动态颜色赋值(使用IIF函数)
ColorMACD = IIF(DIFF > DEA, Red, Green);
// 绘制指标线(修正参数顺序)
PlotNumeric("DIFF", DIFF);
PlotNumeric("DEA", DEA);
PlotNumeric("MACD", MACD, 0, ColorMACD);
Return GetLastValue(DIFF), GetLastValue(DEA), GetLastValue(MACD);
End
又说我的Return GetLastValue(DIFF), GetLastValue(DEA), GetLastValue(MACD);中GetLastValue函数未被声明,求助老师帮忙