c - 为什么我的 MQL5 函数会收到此错误消息?
问题描述
我有这个错误信息:
',' - 意外令牌 testo.mq5 37 33
'信号' - 一些操作员预期 testo.mq5 37 25
'0' - 分号预期 testo.mq5 37 35
')' - 意外令牌 testo.mq5 37 36
表达式没有效果 testo.mq5 37 35
'1' - 一些操作员预期 testo.mq5 40 29
'1' - 一些操作员预期 testo.mq5 41 23
',' - 意外令牌 testo.mq5 42 31
'macd' - 一些操作员预期 testo.mq5 42 25
'1' - 分号预期 testo.mq5 42 33
')' - 意外令牌 testo.mq5 42 34
表达式没有效果 testo.mq5 42 33
',' - 意外令牌 testo.mq5 43 35
'信号' - 一些操作员预期 testo.mq5 43 27
'1' - 分号预期 testo.mq5 43 37
')' - 意外令牌 testo.mq5 43 38
我有以下功能:1:
double macd(const string mode, const int index)
{
double macdArray[];
ArraySetAsSeries(macdArray, true);
int macdDef =iMACD(_Symbol,_Period,12,26,9,PRICE_CLOSE);
if(mode == "macd")
{
CopyBuffer(macdDef,0,0,10,macdArray);
}
if(mode == "signal")
{
CopyBuffer(macdDef,1,0,10,macdArray);
}
if(mode != "macd"||mode != "signal")
{
macdArray[index] = NULL;
}
return macdArray[index];
}
2:
double sar(const int index)
{
double sarArray[];
ArraySetAsSeries(sarArray, true);
int sarDef = iSAR(_Symbol,_Period,0.02,0.2);
CopyBuffer(sarDef,0,0,10,sarArray);
return sarArray[index];
}
3:
double ema200(const int index)
{
double ema200Array[];
ArraySetAsSeries(ema200Array, true);
int ema200Def = iMA(_Symbol,_Period,200,0,MODE_EMA,PRICE_CLOSE);
CopyBuffer(ema200Def,0,0,10,ema200Array);
return ema200Array[index];
}
我在脚本的开头调用了一次函数,如下所示:
double ema200 = ema200(0);
double sar = sar(0);
double macd = macd("macd", 0);
double signal = macd("signal", 0);
double ema200_1 = ema200(1);
double sar_1 = sar(1);
double macd_1 = macd("macd", 1);
double signal_1 = macd("signal", 1);
那么为什么我会得到我的错误?
提前感谢您的任何答案。
解决方案
推荐阅读
- arrays - 无法循环遍历 laravel 集合数组
- sql - Pivot SQL - 标头包含 DISTINCT 和 DatePart(数据转换)字段
- html - 如何使文本框彼此居中对齐?
- r - 如何将 R 文本变量插入到保持正常格式的 Latex 表达式中
- node.js - 重新加载后无法触发消息
- python - imageio.ffmpeg.download() 需要不同的imageio安装,imageio不会安装不同的版本
- c# - 为什么我的 EF Core DbContext 不受 DI 约束?
- wordpress - 如果用户不是帖子的作者,则重定向到 URL
- asp.net-core - 由于应用程序尝试访问数据库而导致使用 EF 工具出现问题
- ios - 使用 Firebase 创建用户时,用户变量为零